remove_definitions(-DTRANSLATION_DOMAIN=\"kscreenlocker\") add_definitions(-DTRANSLATION_DOMAIN=\"kscreenlocker_greet\") include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/../ ) set(kscreenlocker_authenticator_SRCS pamauthenticators.cpp pamauthenticators.h pamauthenticator.cpp pamauthenticator.h ) ecm_qt_declare_logging_category(kscreenlocker_authenticator_SRCS HEADER kscreenlocker_greet_logging.h IDENTIFIER KSCREENLOCKER_GREET CATEGORY_NAME kscreenlocker_greet DEFAULT_SEVERITY Info DESCRIPTION "KScreenLocker (greeter)" EXPORT KSCREENLOCKER ) set(kscreenlocker_greet_SRCS greeterapp.cpp main.cpp powermanagement.cpp noaccessnetworkaccessmanagerfactory.cpp greeterapp.h powermanagement.h noaccessnetworkaccessmanagerfactory.h ) add_library(kscreenlocker_authenticator OBJECT ${kscreenlocker_authenticator_SRCS}) target_link_libraries(kscreenlocker_authenticator Qt::Core ${PAM_LIBRARIES} ) qt_add_resources(kscreenlocker_greet_SRCS fallbacktheme.qrc) ecm_add_wayland_client_protocol(kscreenlocker_greet_SRCS PROTOCOL ../protocols/ksld.xml BASENAME ksld ) add_executable(kscreenlocker_greet ${kscreenlocker_greet_SRCS}) target_link_libraries(kscreenlocker_greet settings kscreenlocker_authenticator KF6::Package KF6::Crash KF6::I18n KF6::ConfigGui KF6::KIOCore KF6::WindowSystem Plasma::PlasmaQuick Qt::Quick Qt::Qml Qt::GuiPrivate X11::X11 Wayland::Client LayerShellQt::Interface KF6::ScreenDpms ) # KSCREENLOCKER_PAM_SERVICE, if defined, will already have been # enclosed in double quotes by the define_pam_service macro. if (NOT DEFINED KSCREENLOCKER_PAM_PASSWORD_SERVICE) set(KSCREENLOCKER_PAM_PASSWORD_SERVICE "\"kde\"") endif() if (NOT DEFINED KSCREENLOCKER_PAM_FINGERPRINT_SERVICE) set(KSCREENLOCKER_PAM_FINGERPRINT_SERVICE "\"kde-fingerprint\"") endif() if (NOT DEFINED KSCREENLOCKER_PAM_SMARTCARD_SERVICE) set(KSCREENLOCKER_PAM_SMARTCARD_SERVICE "\"kde-smartcard\"") endif() target_compile_definitions(kscreenlocker_greet PRIVATE KCHECKPASS_BIN="kcheckpass" KSCREENLOCKER_PAM_SERVICE=${KSCREENLOCKER_PAM_SERVICE} KSCREENLOCKER_PAM_FINGERPRINT_SERVICE=${KSCREENLOCKER_PAM_FINGERPRINT_SERVICE} KSCREENLOCKER_PAM_SMARTCARD_SERVICE=${KSCREENLOCKER_PAM_SMARTCARD_SERVICE} ) install(TARGETS kscreenlocker_greet DESTINATION ${KDE_INSTALL_LIBEXECDIR}) install(DIRECTORY themes/org.kde.passworddialog DESTINATION ${KDE_INSTALL_DATADIR}/ksmserver/screenlocker) add_subdirectory(autotests)