@@ -11,35 +11,40 @@ if (SLEEF_BUILD_STATIC_TEST_BINS)
1111 set (CMAKE_EXE_LINKER_FLAGS "-static" )
1212endif ()
1313
14- set (OPENSSL_EXTRA_LIBRARIES "" CACHE STRING "Extra libraries for openssl" )
15- if (NOT CMAKE_CROSSCOMPILING AND NOT SLEEF_FORCE_FIND_PACKAGE_SSL)
16- if (SLEEF_BUILD_STATIC_TEST_BINS)
17- set (OPENSSL_USE_STATIC_LIBS TRUE )
18- endif ()
19- find_package (OpenSSL )
20- if (OPENSSL_FOUND)
21- set (SLEEF_OPENSSL_FOUND TRUE )
22- set (SLEEF_OPENSSL_LIBRARIES ${OPENSSL_LIBRARIES} )
23- # Work around for tester3 sig segv, when linking versions of openssl (1.1.1) statically.
24- # This is a known issue https://github.com/openssl/openssl/issues/13872.
14+ if (NOT SLEEF_DISABLE_SSL)
15+ set (OPENSSL_EXTRA_LIBRARIES "" CACHE STRING "Extra libraries for openssl" )
16+ if (NOT CMAKE_CROSSCOMPILING AND NOT SLEEF_FORCE_FIND_PACKAGE_SSL)
2517 if (SLEEF_BUILD_STATIC_TEST_BINS)
26- string (REGEX REPLACE
27- "-lpthread" "-Wl,--whole-archive -lpthread -Wl,--no-whole-archive"
28- SLEEF_OPENSSL_LIBRARIES "${OPENSSL_LIBRARIES} " )
18+ set (OPENSSL_USE_STATIC_LIBS TRUE )
19+ endif ()
20+ find_package (OpenSSL )
21+ if (OPENSSL_FOUND)
22+ set (SLEEF_OPENSSL_FOUND TRUE )
23+ set (SLEEF_OPENSSL_LIBRARIES ${OPENSSL_LIBRARIES} )
24+ # Work around for tester3 sig segv, when linking versions of openssl (1.1.1) statically.
25+ # This is a known issue https://github.com/openssl/openssl/issues/13872.
26+ if (SLEEF_BUILD_STATIC_TEST_BINS)
27+ string (REGEX REPLACE
28+ "-lpthread" "-Wl,--whole-archive -lpthread -Wl,--no-whole-archive"
29+ SLEEF_OPENSSL_LIBRARIES "${OPENSSL_LIBRARIES} " )
30+ endif ()
31+ set (SLEEF_OPENSSL_VERSION ${OPENSSL_VERSION} )
32+ set (SLEEF_OPENSSL_LIBRARIES ${SLEEF_OPENSSL_LIBRARIES} ${OPENSSL_EXTRA_LIBRARIES} )
33+ set (SLEEF_OPENSSL_INCLUDE_DIR ${OPENSSL_INCLUDE_DIR} )
34+ endif ()
35+ else ()
36+ # find_package cannot find OpenSSL when cross-compiling
37+ find_library (LIBSSL ssl )
38+ find_library (LIBCRYPTO crypto )
39+ if (LIBSSL AND LIBCRYPTO)
40+ set (SLEEF_OPENSSL_FOUND TRUE )
41+ set (SLEEF_OPENSSL_LIBRARIES ${LIBSSL} ${LIBCRYPTO} ${OPENSSL_EXTRA_LIBRARIES} )
42+ set (SLEEF_OPENSSL_VERSION ${LIBSSL} )
2943 endif ()
30- set (SLEEF_OPENSSL_VERSION ${OPENSSL_VERSION} )
31- set (SLEEF_OPENSSL_LIBRARIES ${SLEEF_OPENSSL_LIBRARIES} ${OPENSSL_EXTRA_LIBRARIES} )
32- set (SLEEF_OPENSSL_INCLUDE_DIR ${OPENSSL_INCLUDE_DIR} )
3344 endif ()
3445else ()
35- # find_package cannot find OpenSSL when cross-compiling
36- find_library (LIBSSL ssl )
37- find_library (LIBCRYPTO crypto )
38- if (LIBSSL AND LIBCRYPTO)
39- set (SLEEF_OPENSSL_FOUND TRUE )
40- set (SLEEF_OPENSSL_LIBRARIES ${LIBSSL} ${LIBCRYPTO} ${OPENSSL_EXTRA_LIBRARIES} )
41- set (SLEEF_OPENSSL_VERSION ${LIBSSL} )
42- endif ()
46+ set (SLEEF_OPENSSL_FOUND FALSE )
47+ message (STATUS "Detection of OpenSSL is skipped since SLEEF_DISABLE_SSL is specified" )
4348endif ()
4449
4550if (SLEEF_ENFORCE_TESTER3 AND NOT SLEEF_OPENSSL_FOUND)
@@ -79,10 +84,6 @@ if (SLEEF_DISABLE_MPFR)
7984 set (LIB_MPFR "" )
8085endif ()
8186
82- if (SLEEF_DISABLE_SSL)
83- set (SLEEF_OPENSSL_FOUND FALSE )
84- endif ()
85-
8687# Include submodules
8788
8889set (SLEEF_SUBMODULE_INSTALL_DIR "${CMAKE_BINARY_DIR} /submodules" )
0 commit comments