From 8554dc504c762caa904b0f2ed5e6f61cb22e38f1 Mon Sep 17 00:00:00 2001 From: Ilya Shipitsin Date: Sun, 8 Aug 2021 11:57:20 +0500 Subject: [PATCH] add build time check for EVP_PKEY_get_raw_public_key() presense in OpenSSL lib --- src/Mayaqua/CMakeLists.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Mayaqua/CMakeLists.txt b/src/Mayaqua/CMakeLists.txt index 6bca56de..ce7aadac 100644 --- a/src/Mayaqua/CMakeLists.txt +++ b/src/Mayaqua/CMakeLists.txt @@ -1,3 +1,5 @@ +include(CheckFunctionExists) + file(GLOB SOURCES_MAYAQUA "*.c" "Crypto/*.c") file(GLOB HEADERS_MAYAQUA "*.h" "Crypto/*.h") @@ -30,6 +32,18 @@ target_link_libraries(mayaqua ZLIB::ZLIB ) +set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) +set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY}) + +check_function_exists(EVP_PKEY_get_raw_public_key HAVE_OPENSSL_EVP_PKEY) + +unset(CMAKE_REQUIRED_INCLUDES) +unset(CMAKE_REQUIRED_LIBRARIES) + +if(NOT HAVE_OPENSSL_EVP_PKEY) + message(FATAL_ERROR "required EVP_PKEY_get_raw_public_key() is not found in OpenSSL library") +endif() + if(WIN32) set_target_properties(mayaqua PROPERTIES