Warning, /plasma/plasma-integration/qt5/src/platformtheme/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 find_package(X11) 0002 set_package_properties(X11 PROPERTIES DESCRIPTION "Required for updating the Cursor theme on X11" 0003 URL "https://www.x.org" 0004 TYPE REQUIRED 0005 ) 0006 set(HAVE_X11 ${X11_FOUND}) 0007 if(HAVE_X11) 0008 find_package(Qt5 ${QT5_MIN_VERSION} CONFIG REQUIRED X11Extras) 0009 0010 find_package(XCB COMPONENTS XCB) 0011 set_package_properties(XCB PROPERTIES TYPE REQUIRED) 0012 endif() 0013 0014 configure_file(config-platformtheme.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-platformtheme.h ) 0015 0016 # qdbusmenubar uses them 0017 remove_definitions(-DQT_NO_SIGNALS_SLOTS_KEYWORDS) 0018 0019 set(platformtheme_SRCS 0020 kdeplatformtheme.cpp kdeplatformtheme.h 0021 kfontsettingsdata.cpp kfontsettingsdata.h 0022 khintssettings.cpp khintssettings.h 0023 kdeplatformfiledialoghelper.cpp kdeplatformfiledialoghelper.h 0024 kdeplatformfiledialogbase.cpp 0025 kdeplatformsystemtrayicon.cpp kdeplatformsystemtrayicon.h 0026 kfiletreeview.cpp 0027 kdirselectdialog.cpp 0028 kwaylandintegration.cpp kwaylandintegration.h 0029 x11integration.cpp x11integration.h 0030 main.cpp 0031 qxdgdesktopportalfiledialog.cpp 0032 qtquickrenderersettings.cpp 0033 ) 0034 list(APPEND platformtheme_SRCS qdbusmenubar.cpp) # fork of Qt's qdbusmenubar with some added setters for our convenience 0035 0036 qt5_add_dbus_interface(platformtheme_SRCS org.kde.StatusNotifierWatcher.xml statusnotifierwatcher_interface) 0037 kconfig_add_kcfg_files(platformtheme_SRCS renderersettings.kcfgc) 0038 add_library(KDEPlasmaPlatformTheme5 MODULE) 0039 ecm_add_qtwayland_client_protocol(platformtheme_SRCS 0040 PROTOCOL ${PLASMA_WAYLAND_PROTOCOLS_DIR}/appmenu.xml 0041 BASENAME appmenu 0042 ) 0043 0044 ecm_add_qtwayland_client_protocol(platformtheme_SRCS 0045 PROTOCOL ${PLASMA_WAYLAND_PROTOCOLS_DIR}/server-decoration-palette.xml 0046 BASENAME server-decoration-palette 0047 ) 0048 target_sources(KDEPlasmaPlatformTheme5 PRIVATE ${platformtheme_SRCS}) 0049 0050 target_link_libraries(KDEPlasmaPlatformTheme5 0051 PRIVATE 0052 Qt5::GuiPrivate 0053 Qt5::DBus 0054 Qt5::QuickControls2 0055 KF5::ConfigCore 0056 KF5::IconThemes 0057 KF5::KIOFileWidgets # KFileFilterCombo, KDirSortFilterProxyModel, KRecentDirs 0058 KF5::KIOWidgets 0059 KF5::KIOGui 0060 KF5::XmlGui 0061 KF5::I18n 0062 KF5::Notifications 0063 KF5::WindowSystem 0064 KF5::GuiAddons 0065 XCB::XCB 0066 ${QT5PLATFORMSUPPORT_LIBS} 0067 Qt5::WaylandClient 0068 Qt5::GuiPrivate 0069 Wayland::Client 0070 KF5::WaylandClient 0071 ) 0072 target_link_libraries(KDEPlasmaPlatformTheme5 PRIVATE Qt5::X11Extras) 0073 target_link_libraries(KDEPlasmaPlatformTheme5 PRIVATE KF5::ConfigWidgets) 0074 0075 if(HAVE_X11) 0076 target_link_libraries(KDEPlasmaPlatformTheme5 PRIVATE ${X11_Xcursor_LIB} ${XCB_XCB_LIBRARY}) 0077 endif() 0078 0079 set_target_properties(KDEPlasmaPlatformTheme5 PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/platformthemes/") 0080 install(TARGETS KDEPlasmaPlatformTheme5 DESTINATION ${KDE_INSTALL_QTPLUGINDIR}/platformthemes)