ukui-biometric-auth/pam-biometric/CMakeLists.txt

50 lines
1.7 KiB
CMake

project(pam_biometric)
find_path(PAM_INCLUDE_DIR security/pam_modules.h)
find_library(PAM_LIB NAMES pam)
if(NOT PAM_INCLUDE_DIR OR NOT PAM_LIB)
message(FATAL_ERROR "pam_modules.h not found")
endif()
set(SCRIPTS_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/bin)
configure_file(
${PROJECT_SOURCE_DIR}/data/org.freedesktop.plicykit.pkexec.bioctl-helper.policy.in
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.bioctl-helper.policy
)
configure_file(
${PROJECT_SOURCE_DIR}/data/org.freedesktop.plicykit.pkexec.biodrvctl.policy.in
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.biodrvctl.policy
)
configure_file(
${PROJECT_SOURCE_DIR}/data/org.freedesktop.plicykit.pkexec.biorestart.policy.in
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.biorestart.policy
)
set(pam_SRCS
pam_biometric.c
logger.c
)
include_directories(
../common
${PAM_INCLUDE_DIR}
)
add_library(pam_biometric SHARED ${pam_SRCS})
target_link_libraries(pam_biometric ${PAM_LIB})
#去除lib前缀
set_target_properties(pam_biometric PROPERTIES PREFIX "")
install(TARGETS pam_biometric DESTINATION /lib/security)
install(FILES pam-configs/pam-biometric DESTINATION /usr/share/pam-configs)
install(FILES data/ukui-biometric.conf DESTINATION /etc/biometric-auth)
install(FILES
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.bioctl-helper.policy
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.biodrvctl.policy
${PROJECT_BINARY_DIR}/data/org.freedesktop.plicykit.pkexec.biorestart.policy
DESTINATION /usr/share/polkit-1/actions
)
install(FILES utils/bioctl utils/bioctl-helper utils/biodrvctl utils/biorestart DESTINATION bin PERMISSIONS ${CONDOR_SCRIPT_PERMS})