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)