diff --git a/conanfile.txt b/conanfile.txt index 6d20935..7a4c6fe 100644 --- a/conanfile.txt +++ b/conanfile.txt @@ -1,5 +1,6 @@ [requires] cunit/2.1-3@bincrafters/stable +OpenSSL/1.1.1a@conan/stable [generators] cmake diff --git a/src/cmake/modules/FindOpenSSL.cmake b/src/cmake/modules/FindOpenSSL.cmake index 402bd72..92c39bc 100644 --- a/src/cmake/modules/FindOpenSSL.cmake +++ b/src/cmake/modules/FindOpenSSL.cmake @@ -10,8 +10,8 @@ # SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause # if(TARGET CONAN_PKG::OpenSSL) - add_library(OpenSSL INTERFACE IMPORTED) #ALIAS CONAN_PKG::OpenSSL) - target_link_libraries(OpenSSL INTERFACE CONAN_PKG::OpenSSL) + add_library(OpenSSL::SSL INTERFACE IMPORTED) + target_link_libraries(OpenSSL::SSL INTERFACE CONAN_PKG::OpenSSL) set(OPENSSL_FOUND TRUE) else() # Loop over a list of possible module paths (without the current directory). diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 88993b5..a307c08 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -33,10 +33,18 @@ endif() add_definitions(-DDDSI_INCLUDE_NETWORK_PARTITIONS -DDDSI_INCLUDE_SSM) -find_package(OpenSSL) -if(OPENSSL_FOUND) - add_definitions(-DDDSI_INCLUDE_SSL) - target_link_libraries(ddsc PRIVATE OpenSSL) +option(DDSC_ENABLE_OPENSSL "Enable openssl support" ON) +if(DDSC_ENABLE_OPENSSL) + find_package(OpenSSL) + if(OPENSSL_FOUND) + add_definitions(-DDDSI_INCLUDE_SSL) + target_link_libraries(ddsc PRIVATE OpenSSL::SSL) + if(CMAKE_GENERATOR MATCHES "Visual Studio") + set_target_properties(ddsc PROPERTIES LINK_FLAGS "/ignore:4099") + endif() + else() + message(FATAL_ERROR "To build without openssl support, set DDSC_ENABLE_OPENSSL to OFF") + endif() endif() include(ddsi/CMakeLists.txt)