diff --git a/CMakeLists.txt b/CMakeLists.txt index 32aba0c..fc06bb6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,10 +37,11 @@ string (REPLACE "-" "+" project_version_safe "${project_version}") set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/liberty/cmake) include (AddThreads) -find_package (Curses) find_package (PkgConfig REQUIRED) -pkg_check_modules (dependencies REQUIRED libssl libcrypto libffi) -pkg_check_modules (ncursesw ncursesw) +pkg_check_modules (libssl REQUIRED libssl libcrypto) +list (APPEND project_libraries ${libssl_LIBRARIES}) +include_directories (${libssl_INCLUDE_DIRS}) +link_directories (${libssl_LIBRARY_DIRS}) if ("${CMAKE_SYSTEM_NAME}" MATCHES "BSD") include_directories (/usr/local/include) @@ -50,24 +51,6 @@ if ("${CMAKE_SYSTEM_NAME}" MATCHES "BSD") add_definitions (-D__BSD_VISIBLE=1 -D_BSD_SOURCE=1) endif ("${CMAKE_SYSTEM_NAME}" MATCHES "BSD") -list (APPEND project_libraries ${dependencies_LIBRARIES}) -include_directories (${dependencies_INCLUDE_DIRS}) -link_directories (${dependencies_LIBRARY_DIRS}) - -# FIXME: other Lua versions may be acceptable, don't know yet -pkg_search_module (lua lua53 lua5.3 lua-5.3 lua>=5.3) -option (WITH_LUA "Enable experimental support for Lua plugins" ${lua_FOUND}) - -if (WITH_LUA) - if (NOT lua_FOUND) - message (FATAL_ERROR "Lua library not found") - endif (NOT lua_FOUND) - - list (APPEND project_libraries ${lua_LIBRARIES}) - include_directories (${lua_INCLUDE_DIRS}) - link_directories (${lua_LIBRARY_DIRS}) -endif (WITH_LUA) - # -lrt is only for glibc < 2.17 # -liconv may or may not be a part of libc foreach (extra iconv rt) @@ -77,11 +60,33 @@ foreach (extra iconv rt) endif (extra_lib_${extra}) endforeach (extra) +# Dependencies for degesch +pkg_check_modules (libffi REQUIRED libffi) +list (APPEND degesch_libraries ${libffi_LIBRARIES}) +include_directories (${libffi_INCLUDE_DIRS}) +link_directories (${libffi_LIBRARY_DIRS}) + +# FIXME: other Lua versions may be acceptable, don't know yet +pkg_search_module (lua lua53 lua5.3 lua-5.3 lua>=5.3) +option (WITH_LUA "Enable experimental support for Lua plugins" ${lua_FOUND}) + +if (WITH_LUA) + if (NOT lua_FOUND) + message (FATAL_ERROR "Lua library not found") + endif (NOT lua_FOUND) + + list (APPEND degesch_libraries ${lua_LIBRARIES}) + include_directories (${lua_INCLUDE_DIRS}) + link_directories (${lua_LIBRARY_DIRS}) +endif (WITH_LUA) + +find_package (Curses) +pkg_check_modules (ncursesw ncursesw) if (ncursesw_FOUND) - list (APPEND project_libraries ${ncursesw_LIBRARIES}) + list (APPEND degesch_libraries ${ncursesw_LIBRARIES}) include_directories (${ncursesw_INCLUDE_DIRS}) elseif (CURSES_FOUND) - list (APPEND project_libraries ${CURSES_LIBRARY}) + list (APPEND degesch_libraries ${CURSES_LIBRARY}) include_directories (${CURSES_INCLUDE_DIR}) else (CURSES_FOUND) message (SEND_ERROR "Curses not found") @@ -93,13 +98,13 @@ elseif (WANT_READLINE) # OpenBSD's default readline is too old if ("${CMAKE_SYSTEM_NAME}" MATCHES "OpenBSD") include_directories (/usr/local/include/ereadline) - list (APPEND project_libraries ereadline) + list (APPEND degesch_libraries ereadline) else ("${CMAKE_SYSTEM_NAME}" MATCHES "OpenBSD") - list (APPEND project_libraries readline) + list (APPEND degesch_libraries readline) endif ("${CMAKE_SYSTEM_NAME}" MATCHES "OpenBSD") elseif (WANT_LIBEDIT) pkg_check_modules (libedit REQUIRED libedit) - list (APPEND project_libraries ${libedit_LIBRARIES}) + list (APPEND degesch_libraries ${libedit_LIBRARIES}) include_directories (${libedit_INCLUDE_DIRS}) endif ((WANT_READLINE AND WANT_LIBEDIT) OR (NOT WANT_READLINE AND NOT WANT_LIBEDIT)) @@ -133,7 +138,7 @@ add_threads (zyklonb) add_executable (degesch degesch.c kike-replies.c ${common_sources} ${common_headers}) -target_link_libraries (degesch ${project_libraries}) +target_link_libraries (degesch ${project_libraries} ${degesch_libraries}) add_threads (degesch) add_executable (kike kike.c kike-replies.c ${common_sources} ${common_headers})