aboutsummaryrefslogtreecommitdiff
path: root/modules/FindOpenSSL.cmake
diff options
context:
space:
mode:
authorChristian Ehrlicher <ch.ehrlicher@gmx.de>2007-09-24 10:53:59 +0000
committerChristian Ehrlicher <ch.ehrlicher@gmx.de>2007-09-24 10:53:59 +0000
commit0e93aecc9d6e8736fa9b2bf0b9a8c6adc30e6337 (patch)
tree29b6d12bd7c97ba9a9e60bc6758a143f7d9bb416 /modules/FindOpenSSL.cmake
parentf835d46e735a731e38cfcfa39a91a97851123ad6 (diff)
downloadextra-cmake-modules-0e93aecc9d6e8736fa9b2bf0b9a8c6adc30e6337.tar.gz
extra-cmake-modules-0e93aecc9d6e8736fa9b2bf0b9a8c6adc30e6337.tar.bz2
switch to new macro FIND_LIBRARY_EX() to avoid code duplication
svn path=/trunk/KDE/kdelibs/; revision=716254
Diffstat (limited to 'modules/FindOpenSSL.cmake')
-rw-r--r--modules/FindOpenSSL.cmake170
1 files changed, 62 insertions, 108 deletions
diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake
index 4c2a3f7d..44cfa50f 100644
--- a/modules/FindOpenSSL.cmake
+++ b/modules/FindOpenSSL.cmake
@@ -1,108 +1,62 @@
-# - Try to find the OpenSSL encryption library
-# Once done this will define
-#
-# OPENSSL_FOUND - system has the OpenSSL library
-# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
-# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
-# OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows
-# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-# on win32 we additional need to link to libeay32.lib
-MACRO(OPENSSL_ADD_LIB_EAY_LIBS)
- IF(MSVC)
- # /MD and /MDd are the standard values - if somone wants to use
- # others, the libnames have to change here too
- # use also eay and libeay32 in debug as fallback for openssl < 0.9.8b
-
- FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd eay libeay libeay32)
- FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD eay libeay libeay32)
-
- IF(MSVC_IDE)
- IF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE)
- SET(OPENSSL_EAY_LIBRARIES optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG})
- ELSE(LIB_EAY_DEBUG AND LIB_EAY_RELEASE)
- MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl (libeay)")
- ENDIF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE)
- ELSE(MSVC_IDE)
- STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER)
- IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_DEBUG})
- ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_RELEASE})
- ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- ENDIF(MSVC_IDE)
- MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE)
- ELSE(MSVC)
- FIND_LIBRARY(OPENSSL_EAY_LIBRARIES NAMES eay libeay libeay32 )
- ENDIF(MSVC)
-ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS)
-
-IF(OPENSSL_LIBRARIES)
- SET(OpenSSL_FIND_QUIETLY TRUE)
-ENDIF(OPENSSL_LIBRARIES)
-
-IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
- SET(LIB_FOUND 1)
-ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
-
-FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h )
-
-IF(WIN32 AND MSVC)
- # /MD and /MDd are the standard values - if somone wants to use
- # others, the libnames have to change here too
- # use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b
-
- FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ssl ssleay32)
- FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32)
-
- IF(MSVC_IDE)
- IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
- SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG})
- ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
- MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl")
- ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
- ELSE(MSVC_IDE)
- STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER)
- IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG})
- ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE})
- ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
- ENDIF(MSVC_IDE)
- MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE)
-ELSE(WIN32 AND MSVC)
-
- FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD )
-
-ENDIF(WIN32 AND MSVC)
-
-IF(WIN32)
- OPENSSL_ADD_LIB_EAY_LIBS()
- IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
- SET(OPENSSL_FOUND TRUE)
- ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
- SET(OPENSSL_FOUND FALSE)
- ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
-ELSE(WIN32)
- IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
- SET(OPENSSL_FOUND TRUE)
- ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
- SET(OPENSSL_FOUND FALSE)
- ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
-ENDIF(WIN32)
-
-IF (OPENSSL_FOUND)
- IF (NOT OpenSSL_FIND_QUIETLY)
- MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}")
- ENDIF (NOT OpenSSL_FIND_QUIETLY)
-ELSE (OPENSSL_FOUND)
- IF (OpenSSL_FIND_REQUIRED)
- MESSAGE(FATAL_ERROR "Could NOT find OpenSSL")
- ENDIF (OpenSSL_FIND_REQUIRED)
-ENDIF (OPENSSL_FOUND)
-
-MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES)
-
+# - Try to find the OpenSSL encryption library
+# Once done this will define
+#
+# OPENSSL_FOUND - system has the OpenSSL library
+# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
+# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
+# OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows
+# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
+#
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+
+include(FindLibraryEx)
+
+# on win32 we additional need to link to libeay32.lib
+MACRO(OPENSSL_ADD_LIB_EAY_LIBS)
+ FIND_LIBRARY_EX(OPENSSL_EAY_LIBRARIES
+ WIN32_DEBUG_POSTFIX d
+ NAMES eay libeay libeay32 libeay32MD)
+ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS)
+
+IF(OPENSSL_LIBRARIES)
+ SET(OpenSSL_FIND_QUIETLY TRUE)
+ENDIF(OPENSSL_LIBRARIES)
+
+IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
+ SET(LIB_FOUND 1)
+ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)
+
+FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h )
+
+FIND_LIBRARY_EX(OPENSSL_LIBRARIES
+ WIN32_DEBUG_POSTFIX d
+ NAMES ssl ssleay ssleay32 ssleay32MD)
+
+IF(WIN32)
+ OPENSSL_ADD_LIB_EAY_LIBS()
+ IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
+ SET(OPENSSL_FOUND TRUE)
+ ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
+ SET(OPENSSL_FOUND FALSE)
+ ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES)
+ELSE(WIN32)
+ IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
+ SET(OPENSSL_FOUND TRUE)
+ ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
+ SET(OPENSSL_FOUND FALSE)
+ ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)
+ENDIF(WIN32)
+
+IF (OPENSSL_FOUND)
+ IF (NOT OpenSSL_FIND_QUIETLY)
+ MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}")
+ ENDIF (NOT OpenSSL_FIND_QUIETLY)
+ELSE (OPENSSL_FOUND)
+ IF (OpenSSL_FIND_REQUIRED)
+ MESSAGE(FATAL_ERROR "Could NOT find OpenSSL")
+ ENDIF (OpenSSL_FIND_REQUIRED)
+ENDIF (OPENSSL_FOUND)
+
+MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES)
+