init
This commit is contained in:
81
CMakeLists.txt
Normal file
81
CMakeLists.txt
Normal file
@@ -0,0 +1,81 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(xembed-sni-proxy)
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
|
||||
find_package(Qt6 6.8 CONFIG REQUIRED COMPONENTS DBus)
|
||||
find_package(ECM REQUIRED NO_MODULE)
|
||||
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
||||
include(ECMQtDeclareLoggingCategory)
|
||||
include(KDEInstallDirs)
|
||||
include(ECMConfiguredInstall)
|
||||
|
||||
find_package(KF6 6.6 REQUIRED COMPONENTS
|
||||
WindowSystem)
|
||||
|
||||
find_package(XCB
|
||||
REQUIRED COMPONENTS
|
||||
XCB
|
||||
XFIXES
|
||||
DAMAGE
|
||||
COMPOSITE
|
||||
RANDR
|
||||
SHM
|
||||
UTIL
|
||||
IMAGE
|
||||
)
|
||||
|
||||
set(XCB_LIBS
|
||||
XCB::XCB
|
||||
XCB::XFIXES
|
||||
XCB::DAMAGE
|
||||
XCB::COMPOSITE
|
||||
XCB::RANDR
|
||||
XCB::SHM
|
||||
XCB::UTIL
|
||||
XCB::IMAGE
|
||||
)
|
||||
|
||||
set(XEMBED_SNI_PROXY_SOURCES
|
||||
main.cpp
|
||||
fdoselectionmanager.cpp fdoselectionmanager.h
|
||||
snidbus.cpp snidbus.h
|
||||
sniproxy.cpp
|
||||
xtestsender.cpp xtestsender.h
|
||||
)
|
||||
|
||||
qt_add_dbus_adaptor(XEMBED_SNI_PROXY_SOURCES org.kde.StatusNotifierItem.xml
|
||||
sniproxy.h SNIProxy)
|
||||
|
||||
set(statusnotifierwatcher_xml org.kde.StatusNotifierWatcher.xml)
|
||||
qt_add_dbus_interface(XEMBED_SNI_PROXY_SOURCES ${statusnotifierwatcher_xml} statusnotifierwatcher_interface)
|
||||
|
||||
ecm_qt_declare_logging_category(XEMBED_SNI_PROXY_SOURCES HEADER debug.h
|
||||
IDENTIFIER SNIPROXY
|
||||
CATEGORY_NAME kde.xembedsniproxy
|
||||
DEFAULT_SEVERITY Info
|
||||
DESCRIPTION "xembed sni proxy"
|
||||
EXPORT PLASMAWORKSPACE
|
||||
)
|
||||
|
||||
add_executable(xembedsniproxy ${XEMBED_SNI_PROXY_SOURCES})
|
||||
set_property(TARGET xembedsniproxy PROPERTY AUTOMOC ON)
|
||||
|
||||
|
||||
set_package_properties(XCB PROPERTIES TYPE REQUIRED)
|
||||
|
||||
|
||||
target_link_libraries(xembedsniproxy
|
||||
Qt::Core
|
||||
Qt::DBus
|
||||
KF6::WindowSystem
|
||||
${XCB_LIBS}
|
||||
X11::Xtst
|
||||
)
|
||||
|
||||
install(TARGETS xembedsniproxy ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
|
||||
install(FILES xembedsniproxy.desktop DESTINATION ${KDE_INSTALL_AUTOSTARTDIR})
|
||||
|
||||
ecm_install_configured_files(INPUT plasma-xembedsniproxy.service.in @ONLY DESTINATION ${KDE_INSTALL_SYSTEMDUSERUNITDIR})
|
||||
Reference in New Issue
Block a user