X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=CMakeLists.txt;h=c59f76dee518659bad58d260636d1ba0eed93cea;hb=898e1028c5e2d7d987c564b176e82b346c435b15;hp=6e81c3c12906a2bd8cd14367e9455b155c32a73c;hpb=8299f488088878d38ccf7ba9bbccc4743e48bd13;p=umurmur.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e81c3c..c59f76d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,10 +8,12 @@ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true) option(USE_POLARSSL_TESTCERT "Link to the PolarSSL test certificate and key." OFF) option(USE_POLARSSL_HAVEGE "Use the PolarSSL HAVEGE random generator key." OFF) +option(USE_SHAREDMEMORY_API "Compile with Sharedmemory API support" OFF) + if(USE_POLARSSL_TESTCERT OR USE_POLARSSL_HAVEGE) - if(SSL MATCHES "openssl") + if(SSL MATCHES "openssl" OR SSL MATCHES "gnutls") message(FATAL_ERROR "Selecting USE_POLARSSL_TESTCERT or USE_POLARSSL_HAVEGE implies SSL=polarssl") - endif(SSL MATCHES "openssl") + endif(SSL MATCHES "openssl" OR SSL MATCHES "gnutls") endif(USE_POLARSSL_TESTCERT OR USE_POLARSSL_HAVEGE) find_package(Libconfig REQUIRED) @@ -19,14 +21,18 @@ find_package(ProtobufC REQUIRED) include(CheckFunctionExists) include(CheckLibraryExists) -if(SSL MATCHES "openssl") +if("${SSL}" STREQUAL "") + set(SSL "polarssl") +endif("${SSL}" STREQUAL "") + +if("${SSL}" STREQUAL "openssl") find_package(OpenSSL REQUIRED) if(OPENSSL_FOUND) set(SSLIMP_LIBRARIES ${OPENSSL_LIBRARIES}) set(SSLIMP_INCLUDE_DIR ${OPENSSL_INCLUDE_DIR}) set(SSLIMP_LIBRARY_DIR ${OPENSSL_LIB_DIR}) endif(OPENSSL_FOUND) -else(SSL MATCHES "openssl") +elseif("${SSL}" STREQUAL "polarssl") find_package(PolarSSL REQUIRED) if(POLARSSL_FOUND) set(USE_POLARSSL ON) @@ -34,7 +40,19 @@ else(SSL MATCHES "openssl") set(SSLIMP_INCLUDE_DIR ${POLARSSL_INCLUDE_DIR}) set(SSLIMP_LIBRARY_DIR ${POLARSSL_LIB_DIR}) endif(POLARSSL_FOUND) -endif(SSL MATCHES "openssl") +elseif("${SSL}" STREQUAL "gnutls") + find_package(GnuTLS REQUIRED) + if(GNUTLS_FOUND) + set(USE_GNUTLS ON) + set(SSLIMP_LIBRARIES ${GNUTLS_LIBRARIES}) + set(SSLIMP_INCLUDE_DIR ${GNUTLS_INCLUDE_DIR}) + set(SSLIMP_LIBRARY_DIR ${GNUTLS_LIB_DIR}) + endif(GNUTLS_FOUND) + find_package(Nettle REQUIRED) + if(NETTLE_FOUND) + set(CRYPTO_LIBRARIES "${NETTLE_LIBRARIES}") + endif(NETTLE_FOUND) +endif("${SSL}" STREQUAL "openssl") check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME_RT) @@ -43,7 +61,7 @@ if(NOT HAVE_CLOCK_GETTIME_RT) if(NOT HAVE_CLOCK_GETTIME) check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME) if(NOT HAVE_CLOCK_GET_TIME) - message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time!") + message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time()!") endif() endif() else() @@ -67,4 +85,5 @@ if(NOT OLD_CONFIG_FILE) endif(NOT OLD_CONFIG_FILE) add_definitions(${SSLIMP_CFLAGS}) -target_link_libraries(umurmurd ${LIBCONFIG_LIBRARIES} ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${LIBRT}) + +target_link_libraries(umurmurd ${LIBCONFIG_LIBRARIES} ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${LIBRT} ${CRYPTO_LIBRARIES})