diff --git a/Release/cmake/cpprest_find_openssl.cmake b/Release/cmake/cpprest_find_openssl.cmake index 0b49a7e..ed5c24b 100644 --- a/Release/cmake/cpprest_find_openssl.cmake +++ b/Release/cmake/cpprest_find_openssl.cmake @@ -1,80 +1,7 @@ function(cpprest_find_openssl) - if(TARGET cpprestsdk_openssl_internal) - return() - endif() - - if(IOS) - set(IOS_SOURCE_DIR "${PROJECT_SOURCE_DIR}/../Build_iOS") - - set(OPENSSL_INCLUDE_DIR "${IOS_SOURCE_DIR}/openssl/include" CACHE INTERNAL "") - set(OPENSSL_LIBRARIES - "${IOS_SOURCE_DIR}/openssl/lib/libcrypto.a" - "${IOS_SOURCE_DIR}/openssl/lib/libssl.a" - CACHE INTERNAL "" - ) - set(_SSL_LEAK_SUPPRESS_AVAILABLE ON CACHE INTERNAL "") - elseif(ANDROID) - if(ARM) - set(OPENSSL_INCLUDE_DIR "${CMAKE_BINARY_DIR}/../openssl/armeabi-v7a/include" CACHE INTERNAL "") - set(OPENSSL_LIBRARIES - "${CMAKE_BINARY_DIR}/../openssl/armeabi-v7a/lib/libssl.a" - "${CMAKE_BINARY_DIR}/../openssl/armeabi-v7a/lib/libcrypto.a" - CACHE INTERNAL "" - ) - else() - set(OPENSSL_INCLUDE_DIR "${CMAKE_BINARY_DIR}/../openssl/x86/include" CACHE INTERNAL "") - set(OPENSSL_LIBRARIES - "${CMAKE_BINARY_DIR}/../openssl/x86/lib/libssl.a" - "${CMAKE_BINARY_DIR}/../openssl/x86/lib/libcrypto.a" - CACHE INTERNAL "" - ) - endif() - set(_SSL_LEAK_SUPPRESS_AVAILABLE ON CACHE INTERNAL "") - else() - if(APPLE) - if(NOT DEFINED OPENSSL_ROOT_DIR) - # Prefer a homebrew version of OpenSSL over the one in /usr/lib - file(GLOB OPENSSL_ROOT_DIR /usr/local/Cellar/openssl*/*) - # Prefer the latest (make the latest one first) - list(REVERSE OPENSSL_ROOT_DIR) - list(GET OPENSSL_ROOT_DIR 0 OPENSSL_ROOT_DIR) - endif() - # This should prevent linking against the system provided 0.9.8y - message(STATUS "OPENSSL_ROOT_DIR = ${OPENSSL_ROOT_DIR}") - set(_OPENSSL_VERSION "") - endif() - if(UNIX) - find_package(PkgConfig) - pkg_search_module(OPENSSL openssl) - endif() - if(OPENSSL_FOUND) - target_link_libraries(cpprest PRIVATE ${OPENSSL_LDFLAGS}) - else() - find_package(OpenSSL 1.0.0 REQUIRED) - endif() - - INCLUDE(CheckCXXSourceCompiles) - set(CMAKE_REQUIRED_INCLUDES "${OPENSSL_INCLUDE_DIR}") - set(CMAKE_REQUIRED_LIBRARIES "${OPENSSL_LIBRARIES}") - CHECK_CXX_SOURCE_COMPILES(" - #include - int main() - { - ::SSL_COMP_free_compression_methods(); - } - " _SSL_LEAK_SUPPRESS_AVAILABLE) - endif() - - add_library(cpprestsdk_openssl_internal INTERFACE) - if(TARGET OpenSSL::SSL) - target_link_libraries(cpprestsdk_openssl_internal INTERFACE OpenSSL::SSL) - else() - target_link_libraries(cpprestsdk_openssl_internal INTERFACE "$") - target_include_directories(cpprestsdk_openssl_internal INTERFACE "$") - endif() - - if (NOT _SSL_LEAK_SUPPRESS_AVAILABLE) - # libressl doesn't ship with the cleanup method being used in ws_client_wspp - target_compile_definitions(cpprestsdk_openssl_internal INTERFACE -DCPPREST_NO_SSL_LEAK_SUPPRESS) - endif() + if(NOT TARGET cpprestsdk_openssl_internal) + add_library(cpprestsdk_openssl_internal INTERFACE) + find_package(OpenSSL REQUIRED) + target_link_libraries(cpprestsdk_openssl_internal INTERFACE "OpenSSL::SSL") + endif() endfunction() diff --git a/Release/cmake/cpprest_find_websocketpp.cmake b/Release/cmake/cpprest_find_websocketpp.cmake index 94ea81a..f83a777 100644 --- a/Release/cmake/cpprest_find_websocketpp.cmake +++ b/Release/cmake/cpprest_find_websocketpp.cmake @@ -1,26 +1,6 @@ function(cpprest_find_websocketpp) - if(TARGET cpprestsdk_websocketpp_internal) - return() - endif() - - find_package(WEBSOCKETPP CONFIG QUIET) - if(WEBSOCKETPP_FOUND) - message("-- Found websocketpp version " ${WEBSOCKETPP_VERSION} " on system") - set(WEBSOCKETPP_INCLUDE_DIR ${WEBSOCKETPP_INCLUDE_DIR} CACHE INTERNAL "") - elseif(EXISTS ${PROJECT_SOURCE_DIR}/libs/websocketpp/CMakeLists.txt) - message("-- websocketpp not found, using the embedded version") - set(WEBSOCKETPP_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/libs/websocketpp CACHE INTERNAL "") - else() - message(FATAL_ERROR "-- websocketpp not found and embedded version not present; try `git submodule update --init` and run CMake again") - endif() - - cpprest_find_boost() - cpprest_find_openssl() - - add_library(cpprestsdk_websocketpp_internal INTERFACE) - target_include_directories(cpprestsdk_websocketpp_internal INTERFACE "$") - target_link_libraries(cpprestsdk_websocketpp_internal - INTERFACE - cpprestsdk_boost_internal - cpprestsdk_openssl_internal - ) + if(NOT TARGET cpprestsdk_websocketpp_internal) + add_library(cpprestsdk_websocketpp_internal INTERFACE) + find_package(websocketpp REQUIRED) + target_link_libraries(cpprestsdk_websocketpp_internal INTERFACE "websocketpp::websocketpp") + endif() endfunction()