diff --git a/CMakeLists.txt b/CMakeLists.txt index 2615758..3cbc04c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,9 +23,8 @@ set (project_VERSION "${project_VERSION}.${project_VERSION_PATCH}") set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) # Dependencies -find_package (PkgConfig REQUIRED) -pkg_check_modules (ncursesw REQUIRED ncursesw) find_package (LibEV REQUIRED) +find_package (Ncursesw REQUIRED) if (USE_SYSTEM_TERMO) find_package (Termo REQUIRED) @@ -41,22 +40,20 @@ else (USE_SYSTEM_TERMO) set (Termo_LIBRARIES termo-static) endif (USE_SYSTEM_TERMO) -include_directories (${ncursesw_INCLUDE_DIRS} - ${LIBEV_INCLUDE_DIRS} ${Termo_INCLUDE_DIRS}) +set (project_libraries ${LIBEV_LIBRARIES} ${Termo_LIBRARIES} + ${NCURSESW_LIBRARIES}) +include_directories (${LIBEV_INCLUDE_DIRS} ${Termo_INCLUDE_DIRS} + ${NCURSESW_INCLUDE_DIRS}) # Configuration include (CheckFunctionExists) -set (CMAKE_REQUIRED_LIBRARIES ${ncursesw_LIBRARIES}) +set (CMAKE_REQUIRED_LIBRARIES ${project_libraries}) CHECK_FUNCTION_EXISTS ("resizeterm" HAVE_RESIZETERM) # Project source files set (project_sources ${PROJECT_NAME}.c) set (project_headers ${PROJECT_BINARY_DIR}/config.h) -# Project libraries -set (project_libraries - ${ncursesw_LIBRARIES} ${LIBEV_LIBRARIES} ${Termo_LIBRARIES}) - # Generate a configuration file configure_file (${PROJECT_SOURCE_DIR}/config.h.in ${PROJECT_BINARY_DIR}/config.h) include_directories (${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR}) diff --git a/cmake/FindLibEV.cmake b/cmake/FindLibEV.cmake index cdc67dc..e8a1fda 100644 --- a/cmake/FindLibEV.cmake +++ b/cmake/FindLibEV.cmake @@ -5,14 +5,16 @@ # Some distributions do add it, though find_package (PkgConfig REQUIRED) -pkg_check_modules (LIBEV libev) +pkg_check_modules (LIBEV QUIET libev) +set (required_vars LIBEV_LIBRARIES) if (NOT LIBEV_FOUND) find_path (LIBEV_INCLUDE_DIRS ev.h) find_library (LIBEV_LIBRARIES NAMES ev) - - if (LIBEV_INCLUDE_DIRS AND LIBEV_LIBRARIES) - set (LIBEV_FOUND TRUE) - endif (LIBEV_INCLUDE_DIRS AND LIBEV_LIBRARIES) + list (APPEND required_vars LIBEV_INCLUDE_DIRS) endif (NOT LIBEV_FOUND) +include (FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS (LIBEV DEFAULT_MSG ${required_vars}) + +mark_as_advanced (LIBEV_LIBRARIES LIBEV_INCLUDE_DIRS) diff --git a/cmake/FindNcursesw.cmake b/cmake/FindNcursesw.cmake new file mode 100644 index 0000000..88c1d01 --- /dev/null +++ b/cmake/FindNcursesw.cmake @@ -0,0 +1,17 @@ +# Public Domain + +find_package (PkgConfig REQUIRED) +pkg_check_modules (NCURSESW QUIET ncursesw) + +# OpenBSD doesn't provide a pkg-config file +set (required_vars NCURSESW_LIBRARIES) +if (NOT NCURSESW_FOUND) + find_library (NCURSESW_LIBRARIES NAMES ncursesw) + find_path (NCURSESW_INCLUDE_DIRS ncurses.h) + list (APPEND required_vars NCURSESW_INCLUDE_DIRS) +endif (NOT NCURSESW_FOUND) + +include (FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS (NCURSESW DEFAULT_MSG ${required_vars}) + +mark_as_advanced (NCURSESW_LIBRARIES NCURSESW_INCLUDE_DIRS) diff --git a/termo b/termo index bc0a71f..783b744 160000 --- a/termo +++ b/termo @@ -1 +1 @@ -Subproject commit bc0a71f082296cad0ca590889ead558b70fb39d9 +Subproject commit 783b744e8baeb606dd8925547ec0318df3c75237