commit:     6a1f72d0da6ec265e1d37382014356851e35347c
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 17 19:57:42 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Nov 17 20:04:03 2024 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=6a1f72d0

kde-plasma/plasma-desktop: Backport IUSE input_devices_wacom to 6.2

Bug: https://bugs.gentoo.org/942817
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../plasma-desktop-6.2.3-tablet-kcm-optional.patch | 94 ++++++++++++++++++++++
 .../plasma-desktop-6.2.49.9999.ebuild              | 14 ++--
 2 files changed, 103 insertions(+), 5 deletions(-)

diff --git 
a/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch
 
b/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch
new file mode 100644
index 0000000000..e7f549a324
--- /dev/null
+++ 
b/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch
@@ -0,0 +1,94 @@
+From 999deeefddc9482e9e360643578442b958a9c2ef Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Mon, 4 Nov 2024 23:15:19 +0100
+Subject: [PATCH] cmake: Add BUILD_KCM_TABLET option to conditionalise Wayland
+ deps
+
+Follow-up to 240ca31717ebed55e43ffaf6ac906dea07e9f4c6
+
+Signed-off-by: Andreas Sturmlechner <[email protected]>
+(cherry picked from commit 8f0e9b4d625024469b4fbd0468e767e45b464872)
+---
+ CMakeLists.txt      | 31 +++++++++++++++++++------------
+ kcms/CMakeLists.txt |  5 ++++-
+ 2 files changed, 23 insertions(+), 13 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6f764d1ef4..a76dd3ff2f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -40,6 +40,7 @@ option(BUILD_KCM_MOUSE_KWIN_WAYLAND "Build the Mouse KCM's 
KWin+Wayland backend"
+ option(BUILD_KCM_MOUSE_X11 "Build the Mouse KCM's X11 backend" ON)
+ option(BUILD_KCM_TOUCHPAD_KWIN_WAYLAND "Build the Touchpad KCM's KWin+Wayland 
backend" ON)
+ option(BUILD_KCM_TOUCHPAD_X11 "Build the Touchpad KCM's X11 backend" ON)
++option(BUILD_KCM_TABLET "Build the Tablet KCM" ON)
+ 
+ find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
+     Quick
+@@ -51,7 +52,10 @@ find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED 
COMPONENTS
+     Core5Compat
+     Sql # kcms/activities
+ )
+-find_package(Qt6 ${QT_MIN_VERSION} CONFIG OPTIONAL_COMPONENTS WaylandClient)
++
++if(BUILD_KCM_TABLET)
++    find_package(Qt6WaylandClient ${QT_MIN_VERSION} CONFIG REQUIRED)
++endif()
+ 
+ find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS
+     Auth
+@@ -139,17 +143,20 @@ set_package_properties(KF6QQC2DesktopStyle PROPERTIES
+     TYPE RUNTIME
+ )
+ 
+-find_package(WaylandProtocols 1.25)
+-set_package_properties(WaylandProtocols PROPERTIES
+-    TYPE REQUIRED
+-    PURPOSE "Collection of Wayland protocols that add functionality not 
available in the Wayland core protocol"
+-    URL "https://gitlab.freedesktop.org/wayland/wayland-protocols/";
+-)
+-find_package(Wayland 1.2)
+-set_package_properties(Wayland PROPERTIES
+-    TYPE REQUIRED
+-    PURPOSE "Required for building Tablet input KCM"
+-)
++if(BUILD_KCM_TABLET)
++    find_package(WaylandProtocols 1.25)
++    set_package_properties(WaylandProtocols PROPERTIES
++        TYPE REQUIRED
++        PURPOSE "Collection of Wayland protocols that add functionality not 
available in the Wayland core protocol"
++        URL "https://gitlab.freedesktop.org/wayland/wayland-protocols/";
++    )
++    find_package(Wayland 1.2)
++    set_package_properties(Wayland PROPERTIES
++        TYPE REQUIRED
++        PURPOSE "Required for building Tablet input KCM"
++    )
++    pkg_check_modules(LIBWACOM libwacom REQUIRED IMPORTED_TARGET)
++endif()
+ 
+ find_package(SDL2 2.0.16)
+ set_package_properties(SDL2 PROPERTIES
+diff --git a/kcms/CMakeLists.txt b/kcms/CMakeLists.txt
+index 5b204a7c19..cea880c139 100644
+--- a/kcms/CMakeLists.txt
++++ b/kcms/CMakeLists.txt
+@@ -26,7 +26,6 @@ add_subdirectory(kded)
+ add_subdirectory(runners)
+ add_subdirectory(spellchecking)
+ add_subdirectory(qtquicksettings)
+-add_subdirectory(tablet)
+ add_subdirectory(touchscreen)
+ 
+ add_subdirectory(workspaceoptions)
+@@ -42,3 +41,7 @@ endif()
+ if (BUILD_KCM_TOUCHPAD_KWIN_WAYLAND OR BUILD_KCM_TOUCHPAD_X11)
+     add_subdirectory(touchpad)
+ endif()
++
++if(BUILD_KCM_TABLET)
++    add_subdirectory(tablet)
++endif()
+-- 
+2.47.0
+

diff --git a/kde-plasma/plasma-desktop/plasma-desktop-6.2.49.9999.ebuild 
b/kde-plasma/plasma-desktop/plasma-desktop-6.2.49.9999.ebuild
index 32d6bf5c86..57f1f715d5 100644
--- a/kde-plasma/plasma-desktop/plasma-desktop-6.2.49.9999.ebuild
+++ b/kde-plasma/plasma-desktop/plasma-desktop-6.2.49.9999.ebuild
@@ -17,7 +17,7 @@ SRC_URI+=" 
https://dev.gentoo.org/~asturm/distfiles/${XORGHDRS}.tar.xz";
 LICENSE="GPL-2" # TODO: CHECK
 SLOT="6"
 KEYWORDS=""
-IUSE="ibus scim screencast sdl +semantic-desktop webengine"
+IUSE="ibus input_devices_wacom scim screencast sdl +semantic-desktop webengine"
 
 RESTRICT="test" # missing selenium-webdriver-at-spi
 
@@ -25,12 +25,10 @@ RESTRICT="test" # missing selenium-webdriver-at-spi
 # kde-frameworks/kwindowsystem[X]: Uses KX11Extras
 COMMON_DEPEND="
        dev-libs/icu:=
-       dev-libs/wayland
        >=dev-qt/qt5compat-${QTMIN}:6[qml]
        >=dev-qt/qtbase-${QTMIN}:6=[concurrent,dbus,gui,network,sql,widgets,xml]
        >=dev-qt/qtdeclarative-${QTMIN}:6
        >=dev-qt/qtsvg-${QTMIN}:6
-       >=dev-qt/qtwayland-${QTMIN}:6
        >=kde-frameworks/attica-${KFMIN}:6
        >=kde-frameworks/karchive-${KFMIN}:6
        >=kde-frameworks/kauth-${KFMIN}:6
@@ -84,6 +82,10 @@ COMMON_DEPEND="
                dev-libs/glib:2
                x11-libs/xcb-util-keysyms
        )
+       input_devices_wacom? (
+               dev-libs/wayland
+               >=dev-qt/qtwayland-${QTMIN}:6
+       )
        scim? ( app-i18n/scim )
        sdl? ( media-libs/libsdl2[joystick] )
        semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:6 )
@@ -93,9 +95,9 @@ COMMON_DEPEND="
        )
 "
 DEPEND="${COMMON_DEPEND}
-       >=dev-libs/wayland-protocols-1.25
        dev-libs/boost
        x11-base/xorg-proto
+       input_devices_wacom? ( >=dev-libs/wayland-protocols-1.25 )
        test? (
                >=kde-frameworks/qqc2-desktop-style-${KFMIN}:6
                >=kde-plasma/kactivitymanagerd-${PVCUT}:6
@@ -119,13 +121,14 @@ RDEPEND="${COMMON_DEPEND}
 "
 BDEPEND="
        dev-util/intltool
-       dev-util/wayland-scanner
        >=kde-frameworks/kcmutils-${KFMIN}:6
        virtual/pkgconfig
+       input_devices_wacom? ( dev-util/wayland-scanner )
 "
 
 PATCHES=(
        "${FILESDIR}/${PN}-6.1.80-override-include-dirs.patch" # downstream 
patch
+       "${FILESDIR}/${PN}-6.2.3-tablet-kcm-optional.patch" # bug 942817
 )
 
 src_prepare() {
@@ -150,6 +153,7 @@ src_configure() {
                -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
                -DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt6=ON # not packaged
                $(cmake_use_find_package ibus GLIB2)
+               -DBUILD_KCM_TABLET=$(usex input_devices_wacom)
                $(cmake_use_find_package sdl SDL2)
                $(cmake_use_find_package semantic-desktop KF6Baloo)
                $(cmake_use_find_package webengine AccountsQt6)

Reply via email to