summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kde-plasma/plasma-desktop/files/plasma-desktop-5.90.0-override-include-dirs.patch84
-rw-r--r--kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild24
2 files changed, 102 insertions, 6 deletions
diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-5.90.0-override-include-dirs.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-5.90.0-override-include-dirs.patch
new file mode 100644
index 00000000000..2a99b99ac4e
--- /dev/null
+++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.90.0-override-include-dirs.patch
@@ -0,0 +1,84 @@
+From fc3c2a00c5a2543fea4780fcffa709d3b1b76d7c Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Mon, 6 Apr 2020 00:41:07 +0200
+Subject: [PATCH] Replace input drivers pkg_check_modules calls with manual
+ targets
+
+All they need is one header each, allow include dir overrides.
+
+Evdev - evdev-properties.h
+XorgLibinput - libinput-properties.h
+XorgServer - xserver-properties.h
+---
+ CMakeLists.txt | 8 +-------
+ config-gentoo.cmake | 22 ++++++++++++++++++++++
+ kcms/touchpad/backends/x11.cmake | 2 +-
+ 3 files changed, 24 insertions(+), 8 deletions(-)
+ create mode 100644 config-gentoo.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b8868a130..ea950b050 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -224,16 +224,10 @@ set_package_properties(XCB PROPERTIES TYPE REQUIRED)
+ add_feature_info("XCB-XKB" XCB_XKB_FOUND "Required for building kcm/keyboard")
+ add_feature_info("libxft" X11_Xft_FOUND "X FreeType interface library required for font installation")
+
+-pkg_check_modules(XORGLIBINPUT xorg-libinput IMPORTED_TARGET)
+-pkg_check_modules(EVDEV xorg-evdev>=2.8.99.1 IMPORTED_TARGET)
+-pkg_check_modules(XORGSERVER xorg-server IMPORTED_TARGET)
++include(config-gentoo.cmake)
+
+ ecm_find_qmlmodule(org.kde.pipewire 0.1)
+
+-if(XORGLIBINPUT_FOUND)
+- set(HAVE_XORGLIBINPUT 1)
+-endif()
+-
+ include(ConfigureChecks.cmake)
+
+ find_package(PackageKitQt6)
+diff --git a/config-gentoo.cmake b/config-gentoo.cmake
+new file mode 100644
+index 000000000..0d7353c27
+--- /dev/null
++++ b/config-gentoo.cmake
+@@ -0,0 +1,22 @@
++if(BUILD_KCM_MOUSE_X11)
++ add_library(PkgConfig::XORGLIBINPUT INTERFACE IMPORTED)
++ set_property(TARGET PkgConfig::XORGLIBINPUT PROPERTY
++ INTERFACE_INCLUDE_DIRECTORIES "${XORGLIBINPUT_INCLUDE_DIRS}"
++ )
++
++ add_library(PkgConfig::EVDEV INTERFACE IMPORTED)
++ set_property(TARGET PkgConfig::EVDEV PROPERTY
++ INTERFACE_INCLUDE_DIRECTORIES "${EVDEV_INCLUDE_DIRS}"
++ )
++endif()
++
++if(BUILD_KCM_TOUCHPAD_X11)
++ add_library(PkgConfig::XORGSERVER INTERFACE IMPORTED)
++ set_property(TARGET PkgConfig::XORGSERVER PROPERTY
++ INTERFACE_INCLUDE_DIRECTORIES "${XORGSERVER_INCLUDE_DIRS}"
++ )
++endif()
++
++if(BUILD_KCM_MOUSE_X11 OR BUILD_KCM_TOUCHPAD_X11)
++ set(HAVE_XORGLIBINPUT 1)
++endif()
+diff --git a/kcms/touchpad/backends/x11.cmake b/kcms/touchpad/backends/x11.cmake
+index 88bf0c676..33be94c49 100644
+--- a/kcms/touchpad/backends/x11.cmake
++++ b/kcms/touchpad/backends/x11.cmake
+@@ -10,7 +10,7 @@ SET(backend_SRCS
+ backends/x11/xrecordkeyboardmonitor.cpp
+ )
+
+-if (XORGLIBINPUT_FOUND)
++if (HAVE_XORGLIBINPUT)
+
+ SET(backend_SRCS
+ ${backend_SRCS}
+--
+2.43.0
+
diff --git a/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild
index 938a970cd81..223a9e75e4f 100644
--- a/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild
+++ b/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild
@@ -11,11 +11,13 @@ QTMIN=6.6.0
inherit ecm plasma.kde.org optfeature
DESCRIPTION="KDE Plasma desktop"
+XORGHDRS="${PN}-override-include-dirs-3"
+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" # +kaccounts
+IUSE="ibus scim screencast sdl +semantic-desktop X" # +kaccounts
RESTRICT="test" # missing selenium-webdriver-at-spi
@@ -70,12 +72,13 @@ COMMON_DEPEND="
>=kde-plasma/plasma5support-${PVCUT}:6
media-libs/libcanberra
x11-libs/libX11
- x11-libs/libXcursor
- x11-libs/libXfixes
x11-libs/libXi
- x11-libs/libxcb
- x11-libs/libxkbcommon
- x11-libs/libxkbfile
+ X? (
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ x11-libs/libxkbcommon
+ x11-libs/libxkbfile
+ )
ibus? (
app-i18n/ibus
dev-libs/glib:2
@@ -119,6 +122,10 @@ BDEPEND="
virtual/pkgconfig
"
+PATCHES=(
+ "${FILESDIR}/${PN}-5.90.0-override-include-dirs.patch" # downstream patch
+)
+
src_prepare() {
ecm_src_prepare
@@ -136,11 +143,16 @@ src_prepare() {
src_configure() {
local mycmakeargs=(
-DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt6=ON # not packaged
+ -DEVDEV_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
$(cmake_use_find_package ibus GLIB2)
# $(cmake_use_find_package kaccounts AccountsQt6)
# $(cmake_use_find_package kaccounts KAccounts)
$(cmake_use_find_package sdl SDL2)
$(cmake_use_find_package semantic-desktop KF6Baloo)
+ -DBUILD_KCM_MOUSE_X11=$(usex X)
+ -DBUILD_KCM_TOUCHPAD_X11=$(usex X)
)
ecm_src_configure