Can't use BUILD_RUNTIME=OFF as that turns off a dependency of kwinepel9
parent
9a2495e334
commit
411f29416e
@ -0,0 +1,113 @@
|
||||
From b0595dd3ca6b812223af8695a87480f54d094523 Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Fella <nicolas.fella@gmx.de>
|
||||
Date: Mon, 9 Oct 2023 20:22:03 +0200
|
||||
Subject: [PATCH] Add build option for KF6 coinstallability
|
||||
|
||||
When shipping both KF5 and KF6 one wants to disable installing some runtime components
|
||||
|
||||
We have the BUILD_RUNTIME option, but that disables too much, i.e. the KGlobalAccelPrivate library that is needed to build KWin
|
||||
|
||||
Add another option for the coinstallability build
|
||||
---
|
||||
CMakeLists.txt | 2 ++
|
||||
src/runtime/CMakeLists.txt | 60 ++++++++++++++++++++------------------
|
||||
2 files changed, 34 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 69171686..37772501 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -32,6 +32,8 @@ set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprec
|
||||
option(BUILD_RUNTIME "Build the kglobalacceld runtime" ON)
|
||||
add_feature_info(BUILD_RUNTIME ${BUILD_RUNTIME} "The kglobalacceld runtime")
|
||||
|
||||
+option(KF6_COMPAT_BUILD "Don't build runtime components that conflict with KF6" OFF)
|
||||
+
|
||||
option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
|
||||
add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
|
||||
|
||||
diff --git a/src/runtime/CMakeLists.txt b/src/runtime/CMakeLists.txt
|
||||
index 5562d0c9..8a2447ca 100644
|
||||
--- a/src/runtime/CMakeLists.txt
|
||||
+++ b/src/runtime/CMakeLists.txt
|
||||
@@ -52,26 +52,45 @@ if(XCB_XCB_FOUND)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
-add_executable(kglobalaccel5 main.cpp logging.cpp)
|
||||
-ecm_mark_nongui_executable(kglobalaccel5)
|
||||
+if (NOT KF6_COMPAT_BUILD)
|
||||
+ add_executable(kglobalaccel5 main.cpp logging.cpp)
|
||||
+ ecm_mark_nongui_executable(kglobalaccel5)
|
||||
|
||||
-target_include_directories(kglobalaccel5 PRIVATE ${CMAKE_BINARY_DIR})
|
||||
+ target_include_directories(kglobalaccel5 PRIVATE ${CMAKE_BINARY_DIR})
|
||||
|
||||
-target_link_libraries(kglobalaccel5
|
||||
- KF5GlobalAccelPrivate
|
||||
- KF5::DBusAddons # KDBusService
|
||||
- KF5::Crash
|
||||
+ target_link_libraries(kglobalaccel5
|
||||
+ KF5GlobalAccelPrivate
|
||||
+ KF5::DBusAddons # KDBusService
|
||||
+ KF5::Crash
|
||||
+ )
|
||||
+
|
||||
+ add_subdirectory(plugins)
|
||||
+
|
||||
+ if(NOT EXCLUDE_DEPRECATED_BEFORE_AND_AT STREQUAL "CURRENT" AND EXCLUDE_DEPRECATED_BEFORE_AND_AT VERSION_LESS 5.102.0)
|
||||
+ install( FILES kglobalaccel.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} RENAME kglobalaccel5.desktop)
|
||||
+ endif()
|
||||
+
|
||||
+ install( TARGETS kglobalaccel5 ${KF_INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+
|
||||
+
|
||||
+ # D-Bus activation service file, and associated systemd service
|
||||
+ include (ECMGenerateDBusServiceFile)
|
||||
+ include (ECMConfiguredInstall)
|
||||
+ ecm_generate_dbus_service_file(
|
||||
+ NAME org.kde.kglobalaccel
|
||||
+ EXECUTABLE "${KDE_INSTALL_FULL_BINDIR}/kglobalaccel5"
|
||||
+ SYSTEMD_SERVICE plasma-kglobalaccel.service
|
||||
+ DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR}
|
||||
)
|
||||
|
||||
-add_subdirectory(plugins)
|
||||
+ ecm_install_configured_files(
|
||||
+ INPUT plasma-kglobalaccel.service.in
|
||||
+ DESTINATION ${KDE_INSTALL_SYSTEMDUSERUNITDIR}
|
||||
+ )
|
||||
+endif()
|
||||
|
||||
# Install application and configuration
|
||||
install(TARGETS KF5GlobalAccelPrivate EXPORT KF5GlobalAccelTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)
|
||||
-install( TARGETS kglobalaccel5 ${KF_INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
-
|
||||
-if(NOT EXCLUDE_DEPRECATED_BEFORE_AND_AT STREQUAL "CURRENT" AND EXCLUDE_DEPRECATED_BEFORE_AND_AT VERSION_LESS 5.102.0)
|
||||
- install( FILES kglobalaccel.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} RENAME kglobalaccel5.desktop)
|
||||
-endif()
|
||||
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/kf5globalaccelprivate_export.h
|
||||
@@ -79,18 +98,3 @@ install(FILES
|
||||
kglobalaccel_interface.h
|
||||
DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KGlobalAccel/private COMPONENT Devel
|
||||
)
|
||||
-
|
||||
-# D-Bus activation service file, and associated systemd service
|
||||
-include (ECMGenerateDBusServiceFile)
|
||||
-include (ECMConfiguredInstall)
|
||||
-ecm_generate_dbus_service_file(
|
||||
- NAME org.kde.kglobalaccel
|
||||
- EXECUTABLE "${KDE_INSTALL_FULL_BINDIR}/kglobalaccel5"
|
||||
- SYSTEMD_SERVICE plasma-kglobalaccel.service
|
||||
- DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR}
|
||||
-)
|
||||
-
|
||||
-ecm_install_configured_files(
|
||||
- INPUT plasma-kglobalaccel.service.in
|
||||
- DESTINATION ${KDE_INSTALL_SYSTEMDUSERUNITDIR}
|
||||
-)
|
||||
--
|
||||
GitLab
|
||||
|
Loading…
Reference in new issue