- Add 3 DEF files to export functions from Windows DLLs
- Add gettimeofday to crypto/crypto.def (*1)
- Remove gai_strerrorA from tls/tls.def (*1)
- Fix CMakeLists.txt to use DEF files as PRIVATE
- Change DLL import library file name since it duplicates with static library
- Ignore compiler warning C4267, and Edit CMAKE_C_FLAGS not to overwrite it (*1)
- Add USE_SHARED option to build openssl.exe with shared libraries (*1)
(*1) recommended by @mcnameej
- add cmake build options as configure provides
* -DENABLE_ASM (default ON)
* -DENABLE_EXTRATESTS (default OFF)
* -DENABLE_NC (default OFF)
* -DOPENSSLDIR (default ${CMAKE_INSTALL_PREFIX}/etc/ssl)
- add biotest and pidwraptest if ENABLE_EXTRATESTS is ON
- add compiler flag `-fno-common` if CMAKE_SYSTEM_NAME is Darwin
to prevent link error Undefined symbols "_OPENSSL_ia32cap_P"
- modify structure of CMakeLists.txt under apps/
* move apps/CMakeLists.txt to apps/openssl/ since this is for openssl build
* create new apps/nc/CMakeLists.txt for nc build
* modify apps/CMakeLists.txt just add_subdirectory()
- add checking and compile of arc4random_uniform()
- add installing man files, openssl.1 and nc.1
VS2013 has trouble with relative include paths for apps/openssl, so move
certhash_win/apps_win.c back to apps/openssl.
gmtime_r on mingw64 fails with negative time_t, override
gmtime_s fails all of the time unit tests, override
SHUT_RD/WR are defined in newer mingw64 headers, check before overriding
The build system incorrectly set include directives in AM_CFLAGS which
causes them to be placed after the configured CPPFLAGS. Thus, if
a user or packaging system sets CPPFLAGS to a location that has
libressl or openssl headers installed, they will be used instead
of the bundled versions. This corrects that issue by setting up
the variables correctly.
https://github.com/libressl-portable/portable/issues/150
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
This moves the compatibility include files from include to
include/compat so we can use the awful MS C compiler
<../include/> trick to emulate the GNU #include_next extension.
This also removes a few old compat files we do not need anymore.