|
|
@@ -169,27 +169,42 @@ IF(NOT CURL_SPECIAL_LIBZ)
|
|
|
CHECK_LIBRARY_EXISTS_CONCAT("z" inflateEnd HAVE_LIBZ)
|
|
|
ENDIF(NOT CURL_SPECIAL_LIBZ)
|
|
|
|
|
|
-OPTION(CMAKE_USE_OPENSSL "Use OpenSSL code." OFF)
|
|
|
+OPTION(CMAKE_USE_OPENSSL "Use OpenSSL code with curl." OFF)
|
|
|
MARK_AS_ADVANCED(CMAKE_USE_OPENSSL)
|
|
|
IF(CMAKE_USE_OPENSSL)
|
|
|
SET(USE_SSLEAY TRUE)
|
|
|
SET(USE_OPENSSL TRUE)
|
|
|
- IF(WIN32)
|
|
|
- FIND_PATH(SSLINCLUDE openssl/crypto.h
|
|
|
- PATHS c:/hoffman/Tools/openssl_w32vc6-0.9.8g/inc32)
|
|
|
- INCLUDE_DIRECTORIES(${SSLINCLUDE})
|
|
|
- FIND_LIBRARY(LIBEAY NAMES libeay32)
|
|
|
- FIND_LIBRARY(SSLEAY NAMES ssleay32)
|
|
|
- SET(CURL_LIBS ${CURL_LIBS} ${LIBEAY} ${SSLEAY} )
|
|
|
- ELSE(WIN32)
|
|
|
- CHECK_LIBRARY_EXISTS_CONCAT("crypto" CRYPTO_lock HAVE_LIBCRYPTO)
|
|
|
- CHECK_LIBRARY_EXISTS_CONCAT("ssl" SSL_connect HAVE_LIBSSL)
|
|
|
- ENDIF(WIN32)
|
|
|
+ FIND_PACKAGE(OpenSSL REQUIRED)
|
|
|
+ INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
|
|
|
+ SET(CURL_LIBS ${CURL_LIBS} ${OPENSSL_LIBRARIES})
|
|
|
SET(CURL_CA_BUNDLE "" CACHE FILEPATH "Path to SSL CA Certificate Bundle")
|
|
|
MARK_AS_ADVANCED(CURL_CA_BUNDLE)
|
|
|
IF(CURL_CA_BUNDLE)
|
|
|
ADD_DEFINITIONS(-DCURL_CA_BUNDLE="${CURL_CA_BUNDLE}")
|
|
|
ENDIF(CURL_CA_BUNDLE)
|
|
|
+ # for windows we want to install OPENSSL_LIBRARIES dlls
|
|
|
+ # and also copy them into the build tree so that testing
|
|
|
+ # can find them.
|
|
|
+ IF(WIN32)
|
|
|
+ FIND_FILE(CMAKE_EAY_DLL NAME libeay32.dll HINTS ${OPENSSL_INCLUDE_DIR}/..)
|
|
|
+ FIND_FILE(CMAKE_SSL_DLL NAME ssleay32.dll HINTS ${OPENSSL_INCLUDE_DIR}/..)
|
|
|
+ MARK_AS_ADVANCED(CMAKE_EAY_DLL CMAKE_SSL_DLL)
|
|
|
+ IF(CMAKE_SSL_DLL AND CMAKE_EAY_DLL)
|
|
|
+ SET(CMAKE_CURL_SSL_DLLS ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/libeay32.dll
|
|
|
+ ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/ssleay32.dll)
|
|
|
+ ADD_CUSTOM_COMMAND(OUTPUT
|
|
|
+ ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/libeay32.dll
|
|
|
+ DEPENDS ${CMAKE_EAY_DLL}
|
|
|
+ COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_EAY_DLL}
|
|
|
+ ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/libeay32.dll)
|
|
|
+ ADD_CUSTOM_COMMAND(OUTPUT
|
|
|
+ ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/ssleay32.dll
|
|
|
+ DEPENDS ${CMAKE_SSL_DLL}
|
|
|
+ COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SSL_DLL}
|
|
|
+ ${CMake_BIN_DIR}/${CMAKE_CFG_INTDIR}/ssleay32.dll)
|
|
|
+ INSTALL(PROGRAMS ${CMAKE_EAY_DLL} ${CMAKE_SSL_DLL} DESTINATION bin)
|
|
|
+ ENDIF()
|
|
|
+ ENDIF()
|
|
|
ENDIF(CMAKE_USE_OPENSSL)
|
|
|
|
|
|
# Check for idn
|
|
|
@@ -698,8 +713,7 @@ ENDFOREACH()
|
|
|
CONFIGURE_FILE(${LIBCURL_SOURCE_DIR}/config.h.in
|
|
|
${LIBCURL_BINARY_DIR}/config.h)
|
|
|
|
|
|
-
|
|
|
-ADD_LIBRARY(cmcurl ${LIBRARY_TYPE} ${libCurl_SRCS})
|
|
|
+ADD_LIBRARY(cmcurl ${LIBRARY_TYPE} ${libCurl_SRCS} ${CMAKE_CURL_SSL_DLLS})
|
|
|
TARGET_LINK_LIBRARIES(cmcurl ${CURL_LIBS})
|
|
|
IF(CMAKE_BUILD_CURL_SHARED)
|
|
|
SET_TARGET_PROPERTIES(cmcurl PROPERTIES DEFINE_SYMBOL BUILDING_LIBCURL
|