summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Antonuk <aega@med.umich.edu>2012-05-01 13:26:39 -0400
committerAlan Antonuk <aega@med.umich.edu>2012-05-01 13:26:39 -0400
commita9906a1a99ba07171366ea480c6e2fe80dda7ecb (patch)
tree808fe26ad9c4307bd986b662c48e6edf5de28e0b
parentd09d5b468af72e6e5cd8f96af3f00987b873c1c3 (diff)
downloadrabbitmq-c-github-ask-a9906a1a99ba07171366ea480c6e2fe80dda7ecb.tar.gz
Adding OpenSSL support to CMake build system
-rw-r--r--CMakeLists.txt8
-rw-r--r--examples/CMakeLists.txt10
-rw-r--r--librabbitmq/CMakeLists.txt4
3 files changed, 22 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7601431..45bde6d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -65,6 +65,14 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
find_package(POPT)
+option(ENABLE_SSL_SUPPORT "Enable support for connecting to a broker using SSL/TLS" OFF)
+
+if (ENABLE_SSL_SUPPORT)
+ find_package(OpenSSL REQUIRED)
+ include_directories(${OPENSSL_INCLUDE_DIR})
+ add_definitions(-DWITH_OPENSSL)
+endif (ENABLE_SSL_SUPPORT)
+
add_subdirectory(librabbitmq)
add_subdirectory(examples)
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index d5ea525..0f0d04f 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -35,3 +35,13 @@ target_link_libraries(amqp_bind rabbitmq)
add_executable(amqp_listenq amqp_listenq.c ${COMMON_SRCS})
target_link_libraries(amqp_listenq rabbitmq)
+
+if (ENABLE_SSL_SUPPORT)
+ configure_file(client.pem ${CMAKE_CURRENT_BINARY_DIR}/client.pem COPYONLY)
+
+ add_executable(amqp_ssl_producer amqp_ssl_producer.c ${COMMON_SRCS})
+ target_link_libraries(amqp_ssl_producer rabbitmq)
+
+ add_executable(amqp_ssl_consumer amqp_ssl_consumer.c ${COMMON_SRCS})
+ target_link_libraries(amqp_ssl_consumer rabbitmq)
+endif (ENABLE_SSL_SUPPORT)
diff --git a/librabbitmq/CMakeLists.txt b/librabbitmq/CMakeLists.txt
index 99804a8..277279d 100644
--- a/librabbitmq/CMakeLists.txt
+++ b/librabbitmq/CMakeLists.txt
@@ -85,6 +85,10 @@ if(WIN32)
target_link_libraries(rabbitmq ws2_32)
endif(WIN32)
+if (ENABLE_SSL_SUPPORT)
+ target_link_libraries(rabbitmq ${OPENSSL_LIBRARIES})
+endif(ENABLE_SSL_SUPPORT)
+
install(TARGETS rabbitmq
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib