commit:     6001b74155bc5040fa30615d21f39b8b6d025d21
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 30 22:54:46 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 30 22:54:46 2023 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=6001b741

kde-plasma/libkworkspace: Fist attempt at a standalone-build patch

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/libkworkspace-5.90.0-standalone.patch    | 104 +++++++++++++++++++++
 kde-plasma/libkworkspace/libkworkspace-9999.ebuild |   7 +-
 2 files changed, 109 insertions(+), 2 deletions(-)

diff --git 
a/kde-plasma/libkworkspace/files/libkworkspace-5.90.0-standalone.patch 
b/kde-plasma/libkworkspace/files/libkworkspace-5.90.0-standalone.patch
new file mode 100644
index 0000000000..5ce29c118a
--- /dev/null
+++ b/kde-plasma/libkworkspace/files/libkworkspace-5.90.0-standalone.patch
@@ -0,0 +1,104 @@
+From a3c528c0d5c4305c44076141150ded3e89db6bc2 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <ast...@gentoo.org>
+Date: Mon, 21 Feb 2022 12:24:56 +0100
+Subject: [PATCH] libkworkspace: Allow standalone build
+
+Signed-off-by: Andreas Sturmlechner <ast...@gentoo.org>
+---
+ CMakeLists.txt | 67 ++++++++++++++++++++++++++++++++++++
+ 2 files changed, 72 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f1b66b8709..62f48ef99a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,3 +1,57 @@
++project(libkworkspace)
++
++if(${CMAKE_SOURCE_DIR} STREQUAL ${libkworkspace_SOURCE_DIR})
++    set(PROJECT_VERSION "5.90.0")
++    set(PROJECT_VERSION_MAJOR 6)
++
++    cmake_minimum_required(VERSION 3.16)
++
++    set(QT_MIN_VERSION "6.5.0")
++    set(KF6_MIN_VERSION "5.240.0")
++    find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core DBus 
WaylandClient)
++    find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
++    set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
++
++    include(KDEInstallDirs)
++    include(KDECMakeSettings)
++    include(KDECompilerSettings NO_POLICY_SCOPE)
++    include(ECMMarkNonGuiExecutable)
++    include(CMakePackageConfigHelpers)
++    include(WriteBasicConfigVersionFile)
++    include(CheckIncludeFiles)
++    include(FeatureSummary)
++    include(ECMQtDeclareLoggingCategory)
++    include(KDEPackageAppTemplates)
++    include(ECMMarkAsTest)
++    include(GenerateExportHeader)
++
++    find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS Config CoreAddons 
I18n Package Service WindowSystem)
++    find_package(Plasma ${PROJECT_VERSION} REQUIRED)
++    find_package(KWinDBusInterface CONFIG REQUIRED)
++    find_package(KScreenLocker 5.13.80 REQUIRED)
++    find_package(ScreenSaverDBusInterface CONFIG REQUIRED)
++    find_package(PlasmaWaylandProtocols 1.6 REQUIRED)
++
++    find_package(X11)
++    set_package_properties(X11 PROPERTIES DESCRIPTION "X11 libraries"
++                URL "http://www.x.org";
++                TYPE OPTIONAL
++                PURPOSE "Required for X11 support")
++
++    if(X11_FOUND)
++        find_package(XCB MODULE REQUIRED COMPONENTS XCB RANDR IMAGE)
++        set(HAVE_X11 1)
++    endif()
++
++    if(BUILD_TESTING)
++        find_package(Qt6Test ${QT_MIN_VERSION} CONFIG REQUIRED)
++    endif()
++
++    check_include_files(unistd.h HAVE_UNISTD_H)
++
++    configure_file(../config-workspace.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/config-workspace.h)
++    configure_file(../config-X11.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/config-X11.h)
++endif()
+ 
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-outputorder.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/config-outputorder.h)
+ 
+@@ -23,11 +77,19 @@ set(kworkspace_LIB_SRCS kdisplaymanager.cpp
+ add_definitions(-DTRANSLATION_DOMAIN=\"libkworkspace\")
+ 
+ qt_add_dbus_interface(kworkspace_LIB_SRCS 
${KSCREENLOCKER_DBUS_INTERFACES_DIR}/kf6_org.freedesktop.ScreenSaver.xml 
screenlocker_interface )
++if(${CMAKE_SOURCE_DIR} STREQUAL ${libkworkspace_SOURCE_DIR})
++qt_add_dbus_interface(kworkspace_LIB_SRCS 
../ksmserver/org.kde.LogoutPrompt.xml logoutprompt_interface)
++qt_add_dbus_interface(kworkspace_LIB_SRCS 
../startkde/plasma-session/org.kde.Startup.xml startup_interface)
++qt_add_dbus_interface(kworkspace_LIB_SRCS 
../startkde/plasma-shutdown/org.kde.Shutdown.xml shutdown_interface)
++set(ksmserver_xml ../ksmserver/org.kde.KSMServerInterface.xml)
++else()
+ qt_add_dbus_interface(kworkspace_LIB_SRCS 
${plasma-workspace_SOURCE_DIR}/ksmserver/org.kde.LogoutPrompt.xml 
logoutprompt_interface)
+ qt_add_dbus_interface(kworkspace_LIB_SRCS 
${plasma-workspace_SOURCE_DIR}/startkde/plasma-session/org.kde.Startup.xml 
startup_interface)
+ qt_add_dbus_interface(kworkspace_LIB_SRCS 
${plasma-workspace_SOURCE_DIR}/startkde/plasma-shutdown/org.kde.Shutdown.xml 
shutdown_interface)
+ 
+ set(ksmserver_xml 
${plasma-workspace_SOURCE_DIR}/ksmserver/org.kde.KSMServerInterface.xml)
++endif()
++
+ qt_add_dbus_interface( kworkspace_LIB_SRCS ${ksmserver_xml} 
ksmserver_interface )
+ 
+ add_library(kworkspace ${kworkspace_LIB_SRCS})
+@@ -108,3 +170,8 @@ install(EXPORT libkworkspaceLibraryTargets
+ if(BUILD_TESTING)
+     add_subdirectory(tests)
+ endif()
++
++if ("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
++    install( FILES sessionmanagementbackend.h DESTINATION 
${KDE_INSTALL_INCLUDEDIR}/kworkspace6 COMPONENT Devel )
++    feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
++endif()
+-- 
+2.43.0
+

diff --git a/kde-plasma/libkworkspace/libkworkspace-9999.ebuild 
b/kde-plasma/libkworkspace/libkworkspace-9999.ebuild
index eb77e27c96..71f89dbae7 100644
--- a/kde-plasma/libkworkspace/libkworkspace-9999.ebuild
+++ b/kde-plasma/libkworkspace/libkworkspace-9999.ebuild
@@ -20,9 +20,12 @@ IUSE=""
 
 RDEPEND="
        >=dev-qt/qtbase-${QTMIN}:6[dbus,gui]
+       >=dev-qt/qtwayland-${QTMIN}:6
        >=kde-frameworks/kconfig-${KFMIN}:6
        >=kde-frameworks/kcoreaddons-${KFMIN}:6
        >=kde-frameworks/ki18n-${KFMIN}:6
+       >=kde-frameworks/kpackage-${KFMIN}:6
+       >=kde-frameworks/kservice-${KFMIN}:6
        >=kde-frameworks/kwindowsystem-${KFMIN}:6
        >=kde-plasma/kscreenlocker-${PVCUT}:6
        x11-libs/libICE
@@ -40,8 +43,8 @@ src_prepare() {
        rm -rf po/*/docs || die
        cp -a ../po ./ || die
 
-       eapply "${FILESDIR}/${PN}-5.27.9-standalone.patch"
-       sed -e "/set/s/GENTOO_PV/$(ver_cut 1-3)/" -i CMakeLists.txt || die
+       eapply "${FILESDIR}/${PN}-5.90.0-standalone.patch"
+#      sed -e "/set/s/GENTOO_PV/$(ver_cut 1-3)/" -i CMakeLists.txt || die
        cat >> CMakeLists.txt <<- _EOF_ || die
                ki18n_install(po)
        _EOF_

Reply via email to