mirror of
https://github.com/apple/foundationdb.git
synced 2025-05-23 15:36:56 +08:00
Don't config TLS if OpenSSL is missing OPENSSL_INIT_NO_ATEXIT
This commit is contained in:
parent
cd95c8e191
commit
fee9a5117f
@ -9,4 +9,4 @@ set(SRCS
|
|||||||
FDBLibTLSVerify.h)
|
FDBLibTLSVerify.h)
|
||||||
|
|
||||||
add_library(FDBLibTLS STATIC ${SRCS})
|
add_library(FDBLibTLS STATIC ${SRCS})
|
||||||
target_link_libraries(FDBLibTLS PUBLIC LibreSSL boost_target PRIVATE flow)
|
target_link_libraries(FDBLibTLS PUBLIC OpenSSL::SSL boost_target PRIVATE flow)
|
||||||
|
@ -12,25 +12,28 @@ endif()
|
|||||||
# SSL
|
# SSL
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
set(DISABLE_TLS OFF CACHE BOOL "Don't try to find LibreSSL and always build without TLS support")
|
set(DISABLE_TLS OFF CACHE BOOL "Don't try to find OpenSSL and always build without TLS support")
|
||||||
if(DISABLE_TLS)
|
if(DISABLE_TLS)
|
||||||
set(WITH_TLS OFF)
|
set(WITH_TLS OFF)
|
||||||
else()
|
else()
|
||||||
set(OPENSSL_USE_STATIC_LIBS TRUE)
|
set(OPENSSL_USE_STATIC_LIBS TRUE)
|
||||||
find_package(OpenSSL)
|
find_package(OpenSSL)
|
||||||
if(NOT OPENSSL_FOUND)
|
if(OPENSSL_FOUND)
|
||||||
set(LIBRESSL_USE_STATIC_LIBS TRUE)
|
set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
|
||||||
find_package(LibreSSL)
|
CHECK_CXX_SOURCE_COMPILES(
|
||||||
if (LIBRESSL_FOUND)
|
"#include <openssl/crypto.h>
|
||||||
add_library(OpenSSL::SSL ALIAS LibreSSL)
|
int main() { (void) OPENSSL_INIT_NO_ATEXIT; }" OPENSSL_HAS_NO_ATEXIT)
|
||||||
endif()
|
if(OPENSSL_HAS_NO_ATEXIT)
|
||||||
endif()
|
set(WITH_TLS ON)
|
||||||
if(OPENSSL_FOUND OR LIBRESSL_FOUND)
|
add_compile_options(-DHAVE_OPENSSL)
|
||||||
set(WITH_TLS ON)
|
else()
|
||||||
add_compile_options(-DHAVE_OPENSSL)
|
message(STATUS "An OpenSSL version was found, but it doesn't support OPENSSL_INIT_NO_ATEXIT - Will compile without TLS Support")
|
||||||
|
message(STATUS "You can set OPENSSL_ROOT_DIR to help cmake find it")
|
||||||
|
set(WITH_TLS OFF)
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
message(STATUS "Neither OpenSSL nor LibreSSL were found - Will compile without TLS Support")
|
message(STATUS "OpenSSL was not found - Will compile without TLS Support")
|
||||||
message(STATUS "You can set OPENSSL_ROOT_DIR or LibreSSL_ROOT to the LibreSSL install directory to help cmake find it")
|
message(STATUS "You can set OPENSSL_ROOT_DIR to help cmake find it")
|
||||||
set(WITH_TLS OFF)
|
set(WITH_TLS OFF)
|
||||||
endif()
|
endif()
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user