summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorAlan Antonuk <aega@med.umich.edu>2012-05-25 11:14:43 -0400
committerAlan Antonuk <alan.antonuk@gmail.com>2013-04-09 15:31:54 -0700
commit0d20182b220d28c793e710bb0c0e431dade3022d (patch)
treee3365c5fda1578709ea0812979a55489c2235dc8 /CMakeLists.txt
parentf371e0ae2697031a42cfd573079c9261bc731091 (diff)
downloadrabbitmq-c-github-ask-0d20182b220d28c793e710bb0c0e431dade3022d.tar.gz
Adding support for SSL to CMake build system
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt25
1 files changed, 25 insertions, 0 deletions
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")