Skip to content

Commit

Permalink
kde-plasma/plasma-desktop: Backport IUSE input_devices_wacom to 6.2
Browse files Browse the repository at this point in the history
Bug: https://bugs.gentoo.org/942817
Signed-off-by: Andreas Sturmlechner <[email protected]>
  • Loading branch information
a17r committed Nov 17, 2024
1 parent e2693d2 commit 6a1f72d
Show file tree
Hide file tree
Showing 2 changed files with 103 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -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

14 changes: 9 additions & 5 deletions kde-plasma/plasma-desktop/plasma-desktop-6.2.49.9999.ebuild
Original file line number Diff line number Diff line change
Expand Up @@ -17,20 +17,18 @@ 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

# slot op: Uses Qt6::GuiPrivate for qtx11extras_p.h
# 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
Expand Down Expand Up @@ -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 )
Expand All @@ -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
Expand All @@ -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() {
Expand All @@ -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)
Expand Down

0 comments on commit 6a1f72d

Please sign in to comment.