+# - Try to find the OpenSSL encryption library\r
+# Once done this will define\r
+#\r
+# OPENSSL_FOUND - system has the OpenSSL library\r
+# OPENSSL_INCLUDE_DIR - the OpenSSL include directory\r
+# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL\r
+\r
+if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)\r
+\r
+ # in cache already\r
+ SET(OPENSSL_FOUND TRUE)\r
+\r
+else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)\r
+\r
+ FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h\r
+ /usr/include/\r
+ /usr/local/include/\r
+ $ENV{ProgramFiles}/OpenSSL/include/\r
+ $ENV{SystemDrive}/OpenSSL/include/\r
+ )\r
+\r
+ if(WIN32 AND MSVC)\r
+ # /MD and /MDd are the standard values - if somone wants to use\r
+ # others, the libnames have to change here too\r
+ # see http://www.openssl.org/support/faq.html#PROG2 for their meaning\r
+\r
+ FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd\r
+ PATHS\r
+ $ENV{ProgramFiles}/OpenSSL/lib/VC/\r
+ $ENV{SystemDrive}/OpenSSL/lib/VC/\r
+ )\r
+ FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD\r
+ PATHS\r
+ $ENV{ProgramFiles}/OpenSSL/lib/VC/\r
+ $ENV{SystemDrive}/OpenSSL/lib/VC/\r
+ )\r
+ FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd\r
+ PATHS\r
+ $ENV{ProgramFiles}/OpenSSL/lib/VC/\r
+ $ENV{SystemDrive}/OpenSSL/lib/VC/\r
+ )\r
+ FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD\r
+ PATHS\r
+ $ENV{ProgramFiles}/OpenSSL/lib/VC/\r
+ $ENV{SystemDrive}/OpenSSL/lib/VC/\r
+ )\r
+\r
+ IF(MSVC_IDE)\r
+ IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)\r
+ SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} ${LIB_EAY_RELEASE} debug ${SSL_EAY_DEBUG} ${LIB_EAY_DEBUG})\r
+ ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)\r
+ MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl")\r
+ ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE)\r
+ ELSE(MSVC_IDE)\r
+ STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER)\r
+ IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)\r
+ SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG} ${LIB_EAY_DEBUG})\r
+ ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)\r
+ SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE} ${LIB_EAY_RELEASE})\r
+ ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)\r
+ ENDIF(MSVC_IDE)\r
+ MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE LIB_EAY_DEBUG LIB_EAY_RELEASE)\r
+ else(WIN32 AND MSVC)\r
+\r
+ FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD libeay32 libeay32MD\r
+ PATHS\r
+ /usr/lib\r
+ /usr/local/lib\r
+ )\r
+ FIND_LIBRARY(CRYPTO_LIBRARIES crypto\r
+ PATHS\r
+ /usr/lib\r
+ /usr/local/lib\r
+ )\r
+\r
+ endif(WIN32 AND MSVC)\r
+\r
+ if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)\r
+ set(OPENSSL_FOUND TRUE)\r
+ endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)\r
+\r
+ if (CRYPTO_LIBRARIES)\r
+ set(CRYPTO_FOUND TRUE)\r
+ message(STATUS "Found libcrypto: ${CRYPTO_LIBRARIES}")\r
+ endif (CRYPTO_LIBRARIES)\r
+\r
+ if (OPENSSL_FOUND)\r
+ if (NOT OpenSSL_FIND_QUIETLY)\r
+ message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}")\r
+ endif (NOT OpenSSL_FIND_QUIETLY)\r
+ else (OPENSSL_FOUND)\r
+ if (OpenSSL_FIND_REQUIRED)\r
+ message(FATAL_ERROR "Could NOT find OpenSSL")\r
+ endif (OpenSSL_FIND_REQUIRED)\r
+ endif (OPENSSL_FOUND)\r
+\r
+ MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES)\r
+\r
+endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES)\r
+\r