cmake_minimum_required(VERSION 2.8.3) project(PAM_NETWORK_MANAGER C) set(CMAKE_MODULE_PATH ${PAM_NETWORK_MANAGER_SOURCE_DIR}) find_package(PAM REQUIRED) find_package(libnm_glib REQUIRED) set(PAM_MODULE_DIR "${CMAKE_INSTALL_PREFIX}/lib/security" CACHE STRING "PAM module directory") set(PAM_NETWORK_MANAGER_HELPER_DIR "${CMAKE_INSTALL_PREFIX}/lib/security/pam_network_manager" CACHE STRING "pam_network_manager_helper install directory") set(CONNECTION_TIMEOUT "10" CACHE STRING "Connection timeout") set(CONNECTION_ID "" CACHE STRING "Connection ID") set(CONNECTION_UUID "" CACHE STRING "Connection UUID") set(CONNECTION_SSID "" CACHE STRING "Connection SSID") set(CONNECTION_AUTH_ALG "open" CACHE STRING "Connection authentication algorithm") set(CONNECTION_KEY_MGMT "wpa-eap" CACHE STRING "Connection key management method") set(CONNECTION_EAP "ttls" CACHE STRING "Connection EAP method") set(CONNECTION_PHASE2_AUTHEAP "mschapv2" CACHE STRING "Connection EAP phase2 authentication method") include_directories(${CMAKE_CURRENT_BINARY_DIR} ${PAM_INCLUDE_DIR} ${LIBNM_GLIB_INCLUDE_DIRS}) link_directories(${LIBNM_GLIB_LIBRARY_DIRS}) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h) add_executable(pam_network_manager_helper pam_network_manager_helper.c) set_property(TARGET pam_network_manager_helper PROPERTY COMPILE_DEFINITIONS "_DEFAULT_SOURCE;_BSD_SOURCE") set_property(TARGET pam_network_manager_helper PROPERTY COMPILE_FLAGS "-std=c99 -Wall ${LIBNM_GLIB_CFLAGS_OTHER}") set_property(TARGET pam_network_manager_helper PROPERTY LINK_FLAGS "${LIBNM_GLIB_LDFLAGS_OTHER}") target_link_libraries(pam_network_manager_helper ${LIBNM_GLIB_LIBRARIES}) add_executable(pam_network_manager_test pam_network_manager.c) set_property(TARGET pam_network_manager_test PROPERTY COMPILE_DEFINITIONS "_DEFAULT_SOURCE;_BSD_SOURCE;TEST") set_property(TARGET pam_network_manager_test PROPERTY COMPILE_FLAGS "-std=c99 -Wall") add_library(pam_network_manager MODULE pam_network_manager.c) set_property(TARGET pam_network_manager PROPERTY COMPILE_DEFINITIONS "_DEFAULT_SOURCE;_BSD_SOURCE") set_property(TARGET pam_network_manager PROPERTY COMPILE_FLAGS "-std=c99 -Wall") set_property(TARGET pam_network_manager PROPERTY PREFIX "") install(TARGETS pam_network_manager pam_network_manager_helper RUNTIME DESTINATION "${PAM_NETWORK_MANAGER_HELPER_DIR}" LIBRARY DESTINATION "${PAM_MODULE_DIR}" )