Warning, /plasma/plasma-desktop/kcms/keyboard/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_definitions(-DTRANSLATION_DOMAIN=\"kcmkeyboard\") 0002 0003 add_subdirectory(tastenbrett) 0004 0005 option(HAVE_XINPUT "X11 XInput" OFF) 0006 option(HAVE_UDEV "UDev" OFF) 0007 0008 if (X11_Xinput_FOUND) 0009 set(HAVE_XINPUT ON) 0010 elseif (UDEV_FOUND) 0011 set(HAVE_UDEV ON) 0012 else() 0013 message(STATUS "X11 XInput and UDev is not found, either is required to keep layouts with keyboard hotplugging") 0014 endif() 0015 0016 ### kded daemon ### 0017 0018 set( kded_keyboard_SRCS 0019 ${CMAKE_CURRENT_BINARY_DIR}/debug.cpp 0020 keyboard_daemon.cpp 0021 layout_memory.cpp 0022 layout_memory_persister.cpp 0023 udev_helper.cpp 0024 x11_helper.cpp 0025 xinput_helper.cpp 0026 xkb_helper.cpp 0027 keyboard_config.cpp 0028 keyboard_hardware.cpp 0029 bindings.cpp 0030 flags.cpp 0031 xkb_rules.cpp 0032 layoutnames.cpp 0033 ) 0034 0035 kconfig_add_kcfg_files(kded_keyboard_SRCS keyboardsettings.kcfgc) 0036 0037 include_directories(${CMAKE_CURRENT_BINARY_DIR}) 0038 0039 kcoreaddons_add_plugin(kded_keyboard SOURCES ${kded_keyboard_SRCS} INSTALL_NAMESPACE kf6/kded) 0040 set_target_properties(kded_keyboard PROPERTIES OUTPUT_NAME keyboard) 0041 0042 target_link_libraries(kded_keyboard 0043 Qt::Concurrent 0044 Qt::Widgets 0045 Qt::Xml 0046 KF6::ConfigCore 0047 KF6::CoreAddons 0048 KF6::KCMUtils 0049 KF6::DBusAddons 0050 KF6::GlobalAccel 0051 KF6::I18n 0052 KF6::Notifications 0053 KF6::WindowSystem 0054 Plasma::Plasma 0055 KF6::XmlGui 0056 KF6::GuiAddons 0057 XCB::XCB 0058 XCB::XKB 0059 X11::X11 0060 X11::xkbfile 0061 ) 0062 target_link_libraries(kded_keyboard Qt::GuiPrivate) 0063 0064 if (HAVE_XINPUT) 0065 target_link_libraries(kded_keyboard X11::Xi) 0066 endif() 0067 0068 if (HAVE_UDEV) 0069 target_link_libraries(kded_keyboard UDev::UDev) 0070 endif() 0071 0072 ### kcm keyboard ### 0073 0074 set(kcm_keyboard_PART_SRCS 0075 kcm_keyboard.cpp 0076 kcm_keyboard_widget.cpp 0077 kcm_view_models.cpp 0078 kcm_add_layout_dialog.cpp 0079 keyboard_config.cpp 0080 keyboardsettingsdata.cpp 0081 x11_helper.cpp 0082 xkb_helper.cpp 0083 xkb_rules.cpp 0084 flags.cpp 0085 iso_codes.cpp 0086 kcmmisc.cpp 0087 bindings.cpp 0088 tastenbrett.cpp) 0089 0090 ecm_qt_declare_logging_category(kcm_keyboard_PART_SRCS 0091 HEADER debug.h 0092 IDENTIFIER KCM_KEYBOARD 0093 CATEGORY_NAME org.kde.kcm_keyboard 0094 DEFAULT_SEVERITY Warning 0095 DESCRIPTION "KCM and KDED for keyboard layouts" 0096 EXPORT kcm_keyboard) 0097 ecm_qt_install_logging_categories( 0098 EXPORT kcm_keyboard 0099 DESTINATION "${KDE_INSTALL_LOGGINGCATEGORIESDIR}" 0100 ) 0101 0102 kconfig_add_kcfg_files(kcm_keyboard_PART_SRCS workspace_options.kcfgc keyboardsettings.kcfgc keyboardmiscsettings.kcfgc) 0103 0104 ki18n_wrap_ui(kcm_keyboard_PART_SRCS kcm_keyboard.ui kcm_add_layout_dialog.ui kcmmiscwidget.ui) 0105 0106 add_library(kcm_keyboard_static STATIC ${kcm_keyboard_PART_SRCS}) 0107 0108 set_property(TARGET kcm_keyboard_static PROPERTY POSITION_INDEPENDENT_CODE ON) 0109 0110 target_link_libraries(kcm_keyboard_static 0111 Qt::Concurrent 0112 Qt::Widgets 0113 Qt::Xml 0114 Qt::GuiPrivate 0115 KF6::KCMUtils 0116 KF6::GlobalAccel 0117 KF6::I18n 0118 KF6::WindowSystem 0119 Plasma::Plasma 0120 KF6::XmlGui 0121 KF6::GuiAddons 0122 XCB::XCB 0123 XCB::XKB 0124 X11::X11 0125 X11::xkbfile 0126 ) 0127 0128 kcoreaddons_add_plugin(kcm_keyboard SOURCES kcmmain.cpp INSTALL_NAMESPACE "plasma/kcms/systemsettings") 0129 kcmutils_generate_desktop_file(kcm_keyboard) 0130 0131 target_link_libraries(kcm_keyboard kcm_keyboard_static) 0132 0133 configure_file(config-keyboard.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-keyboard.h) 0134 0135 # Unit tests 0136 if(BUILD_TESTING) 0137 add_subdirectory( tests ) 0138 endif() 0139 0140 add_dependencies(kcm_keyboard tastenbrett) 0141 0142 add_subdirectory(qml)