]> granicus.if.org Git - curl/commitdiff
cmake: link curl to the OpenSSL targets instead of lib absolute paths
authorJohn Butterfield <johnb003@gmail.com>
Tue, 17 Jul 2018 08:13:18 +0000 (01:13 -0700)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 8 Aug 2018 07:35:27 +0000 (09:35 +0200)
Reviewed-by: Jakub Zakrzewski
Reviewed-by: Sergei Nikulov
Closes #2753

CMake/curl-config.cmake.in [moved from CMake/curl-config.cmake with 93% similarity]
CMakeLists.txt
Makefile.am

similarity index 93%
rename from CMake/curl-config.cmake
rename to CMake/curl-config.cmake.in
index 10045c6b76ee3f097db55a5ab4b513b5193ac489..73e04c606efb76271defeca176f00e23ff727533 100644 (file)
@@ -9,6 +9,11 @@ if(NOT CURL_FIND_COMPONENTS)
   endif()
 endif()
 
+include(CMakeFindDependencyMacro)
+if(CURL_FIND_REQUIRED_libcurl)
+    find_dependency(OpenSSL "@OPENSSL_VERSION_MAJOR@")
+endif()
+
 set(_curl_missing_components)
 foreach(_comp ${CURL_FIND_COMPONENTS})
   if(EXISTS "${_DIR}/${_comp}-target.cmake")
index cafe983f4bb447612ffb21ab7539fec2640a3219..fa2fc094ecb4d4342de32b7ffc3b444cb206e40e 100644 (file)
@@ -352,8 +352,8 @@ if(CMAKE_USE_OPENSSL)
   set(USE_OPENSSL ON)
   set(HAVE_LIBCRYPTO ON)
   set(HAVE_LIBSSL ON)
-  list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES})
-  include_directories(${OPENSSL_INCLUDE_DIR})
+  list(APPEND CURL_LIBS OpenSSL::SSL OpenSSL::Crypto)
+
   set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
   check_include_file("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
   check_include_file("openssl/err.h"    HAVE_OPENSSL_ERR_H)
@@ -1308,9 +1308,9 @@ write_basic_package_version_file(
     COMPATIBILITY SameMajorVersion
 )
 
-configure_file(CMake/curl-config.cmake
+configure_file(CMake/curl-config.cmake.in
         "${PROJECT_BINARY_DIR}/curl-config.cmake"
-        COPYONLY
+        @ONLY
 )
 
 install(
index bf6bfa987aa016efd440d0a923219a48b36fc475..959eeb5314a0e65b19b47343df4f93846f2c7a7a 100644 (file)
@@ -31,7 +31,7 @@ CMAKE_DIST = CMakeLists.txt CMake/CMakeConfigurableFile.in      \
  CMake/CurlSymbolHiding.cmake CMake/FindCARES.cmake             \
  CMake/FindLibSSH2.cmake CMake/FindNGHTTP2.cmake                \
  CMake/FindMbedTLS.cmake CMake/cmake_uninstall.cmake.in         \
- CMake/curl-config.cmake
+ CMake/curl-config.cmake.in
 
 VC6_LIBTMPL = projects/Windows/VC6/lib/libcurl.tmpl
 VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp.dist