updated README
[umurmur.git] / CMakeLists.txt
index 0a8669c494ac7ba56ea271f0e973366457eb4a9f..7c5809e5a23b2dca993a6f74f9cd80629af8e6b7 100644 (file)
@@ -5,6 +5,15 @@ project(umurmurd C)
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
 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)
+
+if(USE_POLARSSL_TESTCERT OR USE_POLARSSL_HAVEGE)
+  if(SSL MATCHES "openssl")
+    message(FATAL_ERROR "Selecting USE_POLARSSL_TESTCERT or USE_POLARSSL_HAVEGE implies SSL=polarssl")
+  endif(SSL MATCHES "openssl")
+endif(USE_POLARSSL_TESTCERT OR USE_POLARSSL_HAVEGE)
+
 find_package(Libconfig REQUIRED)
 find_package(ProtobufC REQUIRED)
 include(CheckFunctionExists)
@@ -37,7 +46,7 @@ if(NOT HAVE_CLOCK_GETTIME)
       message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time!")
     endif()
   else()
-    set(LIBRARIES ${LIBRARIES} rt)
+    set(LIBRT rt)
   endif()
 endif()
 
@@ -46,11 +55,16 @@ add_subdirectory(src)
 
 configure_file(src/config.h.in ${CMAKE_SOURCE_DIR}/src/config.h)
 
-include_directories(${LIBCONFIG_INCLUDE_DIR} ${PROTOBUFC_INCLUDE_DIR} ${SSLIMP_INCLUDE_DIR}) 
+include_directories(${LIBCONFIG_INCLUDE_DIR} ${PROTOBUFC_INCLUDE_DIR} ${SSLIMP_INCLUDE_DIR})
 link_directories(${LIBCONFIG_LIB_DIR} ${PROTOBUFC_LIB_DIR} ${SSLIMP_LIB_DIR})
 
 add_executable(umurmurd ${SOURCE})
-install(TARGETS umurmurd RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
+install(TARGETS umurmurd RUNTIME DESTINATION "bin")
+
+find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS ${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "etc")
+if(NOT OLD_CONFIG_FILE)
+  install(FILES "umurmur.conf.example" DESTINATION "etc" RENAME "umurmur.conf")
+endif(NOT OLD_CONFIG_FILE)
 
 add_definitions(${SSLIMP_CFLAGS})
-target_link_libraries(umurmurd ${LIBCONFIG_LIBRARIES} ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES})
+target_link_libraries(umurmurd ${LIBCONFIG_LIBRARIES} ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${LIBRT})