From 0d20182b220d28c793e710bb0c0e431dade3022d Mon Sep 17 00:00:00 2001 From: Alan Antonuk Date: Fri, 25 May 2012 11:14:43 -0400 Subject: Adding support for SSL to CMake build system --- CMakeLists.txt | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 55d56e1..a9447be 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -202,6 +202,7 @@ endif (REGENERATE_AMQP_FRAMING) find_package(POPT) find_package(XmlTo) +find_package(OpenSSL 1.0.0) if (POPT_FOUND AND XmlTo_FOUND) set(DO_DOCS ON) @@ -214,6 +215,30 @@ option(BUILD_EXAMPLES "Build Examples" ON) option(BUILD_TOOLS "Build Tools (requires POPT Library)" ${POPT_FOUND}) option(BUILD_TOOLS_DOCS "Build man pages for Tools (requires xmlto)" ${DO_DOCS}) option(BUILD_TESTS "Build tests (run tests with make test)" ON) +option(ENABLE_SSL_SUPPORT "Enable SSL support" ON) + +set(SSL_ENGINE "OpenSSL" CACHE STRING "SSL Backend to use, valid options: OpenSSL, cyaSSL, GnuTLS, PolarSSL") +mark_as_advanced(SSL_ENGINE) + +if (ENABLE_SSL_SUPPORT) + if (SSL_ENGINE STREQUAL "OpenSSL") + if (NOT OPENSSL_FOUND) + message(FATAL_ERROR "Cannot find OpenSSL package, install openssl-dev package") + endif() + + elseif (SSL_ENGINE STREQUAL "cyaSSL") + find_package(cyaSSL REQUIRED) + + elseif (SSL_ENGINE STREQUAL "GnuTLS") + find_package(GnuTLS REQUIRED) + + elseif (SSL_ENGINE STREQUAL "PolarSSL") + find_package(PolarSSL REQUIRED) + + else() + message(FATAL_ERROR "Unsupported SSL_ENGINE ${SSL_ENGINE}, valid engines: OpenSSL, cyaSSL, GnuTLS, or PolarSSL") + endif() +endif() if (NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) message(FATAL_ERROR "One or both of BUILD_SHARED_LIBS or BUILD_STATIC_LIBS must be set to ON to build") -- cgit v1.2.1