|
|
|
|
@ -4,9 +4,19 @@ add_definitions(-DTRANSLATION_DOMAIN=\"kscreenlocker\") |
|
|
|
|
# adjusting CMAKE_C_FLAGS to get wayland protocols to compile |
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu90") |
|
|
|
|
|
|
|
|
|
include(ECMSetupVersion) |
|
|
|
|
include(ECMGenerateHeaders) |
|
|
|
|
|
|
|
|
|
ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX KSCREENLOCKER |
|
|
|
|
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kscreenlocker_version.h" |
|
|
|
|
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KScreenLockerConfigVersion.cmake" |
|
|
|
|
SOVERSION 5) |
|
|
|
|
|
|
|
|
|
configure_file(config-kscreenlocker.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kscreenlocker.h) |
|
|
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR}) |
|
|
|
|
|
|
|
|
|
set(KSLD_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}/KScreenLocker") |
|
|
|
|
|
|
|
|
|
add_subdirectory(kcheckpass) |
|
|
|
|
add_subdirectory(greeter) |
|
|
|
|
add_subdirectory(kcm) |
|
|
|
|
@ -35,9 +45,9 @@ ecm_add_wayland_server_protocol(ksld_SRCS |
|
|
|
|
BASENAME ksld |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
add_library(ksld SHARED ${ksld_SRCS}) |
|
|
|
|
add_library(KScreenLocker SHARED ${ksld_SRCS}) |
|
|
|
|
|
|
|
|
|
target_link_libraries(ksld |
|
|
|
|
target_link_libraries(KScreenLocker |
|
|
|
|
PUBLIC |
|
|
|
|
Qt5::Core |
|
|
|
|
Qt5::X11Extras |
|
|
|
|
@ -59,28 +69,59 @@ PRIVATE |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
if (X11_Xinput_FOUND) |
|
|
|
|
target_link_libraries(ksld PRIVATE ${X11_Xinput_LIB}) |
|
|
|
|
target_link_libraries(KScreenLocker PRIVATE ${X11_Xinput_LIB}) |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
target_include_directories(KScreenLocker INTERFACE "$<INSTALL_INTERFACE:${KSLD_INCLUDEDIR}>") |
|
|
|
|
|
|
|
|
|
# Needed to compile on Arm target. |
|
|
|
|
set_target_properties(ksld PROPERTIES COMPILE_FLAGS "-fPIC") |
|
|
|
|
set_target_properties(KScreenLocker PROPERTIES COMPILE_FLAGS "-fPIC") |
|
|
|
|
|
|
|
|
|
generate_export_header(ksld |
|
|
|
|
BASE_NAME ksld |
|
|
|
|
EXPORT_MACRO_NAME KSLD_EXPORT |
|
|
|
|
add_library(PW::KScreenLocker ALIAS KScreenLocker) |
|
|
|
|
|
|
|
|
|
generate_export_header(KScreenLocker |
|
|
|
|
BASE_NAME KScreenLocker |
|
|
|
|
EXPORT_MACRO_NAME KSCREENLOCKER_EXPORT |
|
|
|
|
EXPORT_FILE_NAME KScreenLocker/kscreenlocker_export.h |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/ScreenSaverDBusInterface") |
|
|
|
|
ecm_configure_package_config_file(ScreenSaverDBusInterfaceConfig.cmake.in |
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/ScreenSaverDBusInterfaceConfig.cmake |
|
|
|
|
PATH_VARS KDE_INSTALL_DBUSINTERFACEDIR |
|
|
|
|
INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}) |
|
|
|
|
INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/ScreenSaverDBusInterface") |
|
|
|
|
|
|
|
|
|
set_target_properties(KScreenLocker PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR}) |
|
|
|
|
|
|
|
|
|
set_target_properties(ksld PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR}) |
|
|
|
|
install(TARGETS ksld ${INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY) |
|
|
|
|
install(FILES |
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/ScreenSaverDBusInterfaceConfig.cmake |
|
|
|
|
DESTINATION ${CMAKECONFIG_INSTALL_DIR}) |
|
|
|
|
DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/ScreenSaverDBusInterface") |
|
|
|
|
|
|
|
|
|
ecm_configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/KScreenLockerConfig.cmake.in" |
|
|
|
|
"${CMAKE_CURRENT_BINARY_DIR}/KScreenLockerConfig.cmake" |
|
|
|
|
INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/KScreenLocker") |
|
|
|
|
|
|
|
|
|
install(TARGETS KScreenLocker EXPORT KScreenLockerTargets ${INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY) |
|
|
|
|
install(EXPORT KScreenLockerTargets DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/KScreenLocker" FILE KScreenLockerTargets.cmake NAMESPACE PW::) |
|
|
|
|
|
|
|
|
|
ecm_generate_headers(KScreenLocker_CamelCase_HEADERS |
|
|
|
|
HEADER_NAMES |
|
|
|
|
KsldApp |
|
|
|
|
REQUIRED_HEADERS KScreenLocker_HEADERS) |
|
|
|
|
|
|
|
|
|
install( |
|
|
|
|
FILES |
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/KScreenLocker/kscreenlocker_export.h |
|
|
|
|
${KScreenLocker_CamelCase_HEADERS} |
|
|
|
|
${KScreenLocker_HEADERS} |
|
|
|
|
DESTINATION |
|
|
|
|
${KSLD_INCLUDEDIR}/KScreenLocker |
|
|
|
|
COMPONENT Devel) |
|
|
|
|
|
|
|
|
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KScreenLockerConfig.cmake" |
|
|
|
|
"${CMAKE_CURRENT_BINARY_DIR}/KScreenLockerConfigVersion.cmake" |
|
|
|
|
DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/KScreenLocker" |
|
|
|
|
COMPONENT Devel) |
|
|
|
|
|
|
|
|
|
install(FILES kscreenlocker.notifyrc DESTINATION ${KDE_INSTALL_KNOTIFY5RCDIR} RENAME ksmserver.notifyrc) |
|
|
|
|
install(FILES ${screensaver_dbusXML} |
|
|
|
|
DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR} |
|
|
|
|
@ -91,6 +132,5 @@ install(FILES updaters/kscreenlocker.upd DESTINATION ${KDE_INSTALL_DATADIR}/kc |
|
|
|
|
install(PROGRAMS updaters/ksreenlocker_5_3_separate_autologin.pl |
|
|
|
|
DESTINATION ${KDE_INSTALL_DATADIR}/kconf_update) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
add_subdirectory(autotests) |
|
|
|
|
add_subdirectory(tests) |
|
|
|
|
|