summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2020-05-07 21:38:13 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2020-05-07 21:56:44 +0200
commit030a7a33700436a2febb9bfa382a4db519362975 (patch)
tree7f6bacc5a5b11d5f7abee07647614b85e3c71a81 /kde-plasma/plasma-desktop
parentapp-portage/layman: arm64 stable (bug #720934) (diff)
downloadgentoo-030a7a33700436a2febb9bfa382a4db519362975.tar.gz
gentoo-030a7a33700436a2febb9bfa382a4db519362975.tar.bz2
gentoo-030a7a33700436a2febb9bfa382a4db519362975.zip
kde-plasma/plasma-desktop: Add FindXorgServer.cmake module
Update override-include-dirs.patch to cover the new module. Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-plasma/plasma-desktop')
-rw-r--r--kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-findxorgserver.patch130
-rw-r--r--kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-override-include-dirs.patch (renamed from kde-plasma/plasma-desktop/files/plasma-desktop-5.18.4.1-override-include-dirs.patch)35
-rw-r--r--kde-plasma/plasma-desktop/plasma-desktop-5.18.5.ebuild4
3 files changed, 162 insertions, 7 deletions
diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-findxorgserver.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-findxorgserver.patch
new file mode 100644
index 000000000000..115d52423fbf
--- /dev/null
+++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-findxorgserver.patch
@@ -0,0 +1,130 @@
+From 82e7a6b68d81ca2be0fdc3fc13cd5ca5f5e03e81 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 7 May 2020 16:18:13 +0200
+Subject: [PATCH] Add FindXorgServer.cmake and use it for touchpad KCM
+
+Summary:
+x11 backend of the touchpad KCM uses xserver-properties.h that is part of
+xorg-server package. As XORG_INCLUDE_DIRS seems to be empty, so far, it was
+relying on Synaptics_INCLUDE_DIRS implicitly and worked only if the header
+happened to be in the same directory as Synaptics' which is the case most of
+the time.
+
+FindXorgServer.cmake is just a copy of FindXorgLibinput, adapted accordingly.
+
+Test Plan:
+Pointed Synaptics_INCLUDE_DIRS somewhere else than /usr/include/xorg and build
+succeeded.
+
+Reviewers: #plasma, zzag
+
+Reviewed By: #plasma, zzag
+
+Subscribers: broulik, plasma-devel
+
+Tags: #plasma
+
+Differential Revision: https://phabricator.kde.org/D29514
+---
+ CMakeLists.txt | 4 +++
+ cmake/modules/FindXorgServer.cmake | 45 ++++++++++++++++++++++++++++++
+ kcms/CMakeLists.txt | 2 +-
+ kcms/touchpad/src/backends/x11.cmake | 2 +-
+ 4 files changed, 51 insertions(+), 2 deletions(-)
+ create mode 100644 cmake/modules/FindXorgServer.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fbdd95433..64e8bbd60 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -133,6 +133,10 @@ find_package(Synaptics)
+ set_package_properties(Synaptics PROPERTIES TYPE OPTIONAL)
+ add_feature_info("Synaptics" SYNAPTICS_FOUND "Synaptics libraries needed for touchpad KCM")
+
++find_package(XorgServer)
++set_package_properties(XorgServer PROPERTIES TYPE OPTIONAL)
++add_feature_info("XorgServer" XORGSERVER_FOUND "XServer header needed for touchpad KCM (X11 backend)")
++
+ find_package(XorgLibinput)
+ set_package_properties(XorgLibinput PROPERTIES TYPE OPTIONAL)
+ add_feature_info("XorgLibinput" XORGLIBINPUT_FOUND "Libinput driver headers needed for mouse and touchpad KCM")
+diff --git a/cmake/modules/FindXorgServer.cmake b/cmake/modules/FindXorgServer.cmake
+new file mode 100644
+index 000000000..5248c6d25
+--- /dev/null
++++ b/cmake/modules/FindXorgServer.cmake
+@@ -0,0 +1,45 @@
++# - Find xorg-server's headers.
++# This module defines the following variables:
++#
++# XORGSERVER_FOUND - true if xserver was found
++# XORGSERVER_INCLUDE_DIRS - include path for xserver
++# There are no libraries, just a header file
++#
++# Copyright (c) 2020 Andreas Sturmlechner <asturm@gentoo.org>
++#
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions
++# are met:
++# 1. Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++# 2. Redistributions in binary form must reproduce the above copyright
++# notice, this list of conditions and the following disclaimer in the
++# documentation and/or other materials provided with the distribution.
++# 3. Neither the name of the University nor the names of its contributors
++# may be used to endorse or promote products derived from this software
++# without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
++# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
++# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++# SUCH DAMAGE.
++
++find_package(PkgConfig)
++pkg_check_modules(PC_XORGSERVER xorg-server)
++
++find_path(XORGSERVER_INCLUDE_DIRS
++ NAMES xserver-properties.h
++ HINTS ${PC_XORGSERVER_INCLUDE_DIRS} ${PC_XORGSERVER_INCLUDEDIR}
++)
++
++include(FindPackageHandleStandardArgs)
++find_package_handle_standard_args(XORGSERVER REQUIRED_VARS XORGSERVER_INCLUDE_DIRS)
++
++mark_as_advanced(XORGSERVER_INCLUDE_DIRS)
+diff --git a/kcms/CMakeLists.txt b/kcms/CMakeLists.txt
+index 7ab966e8e..ce730f537 100644
+--- a/kcms/CMakeLists.txt
++++ b/kcms/CMakeLists.txt
+@@ -58,7 +58,7 @@ if(X11_Xcursor_FOUND)
+ add_subdirectory(cursortheme)
+ endif()
+
+-if (SYNAPTICS_FOUND AND X11_Xinput_FOUND)
++if (XORGSERVER_FOUND AND SYNAPTICS_FOUND AND X11_Xinput_FOUND)
+ add_subdirectory(touchpad)
+ endif()
+
+diff --git a/kcms/touchpad/src/backends/x11.cmake b/kcms/touchpad/src/backends/x11.cmake
+index 9248eff7c..8a584e939 100644
+--- a/kcms/touchpad/src/backends/x11.cmake
++++ b/kcms/touchpad/src/backends/x11.cmake
+@@ -11,7 +11,7 @@ endif()
+ include_directories(${X11_Xinput_INCLUDE_PATH}
+ ${X11_X11_INCLUDE_PATH}
+ ${Synaptics_INCLUDE_DIRS}
+- ${XORG_INCLUDE_DIRS}
++ ${XORGSERVER_INCLUDE_DIRS}
+ )
+
+ SET(backend_SRCS
+--
+2.26.2
+
diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.4.1-override-include-dirs.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-override-include-dirs.patch
index 3118913e08de..ffbf2b644292 100644
--- a/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.4.1-override-include-dirs.patch
+++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.5-override-include-dirs.patch
@@ -1,19 +1,19 @@
-From b11915786a97f55074b7bfe4eec6f3c5cc08ae78 Mon Sep 17 00:00:00 2001
+From 6971b5eac2088d263527b2b4a85bb08b1a2dc792 Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Mon, 6 Apr 2020 00:41:07 +0200
-Subject: [PATCH 1/2] cmake modules: Allow include dir overrides for various
- input drivers
+Subject: [PATCH] cmake modules: Allow include dir overrides for various input
+ drivers
FindEvdev - evdev-properties.h
FindSynaptics - synaptics-properties.h
FindXorgLibinput - libinput-properties.h
-
-Hint: Dependency for touchpad (Synaptics): xserver-properties.h (xorg-server)
+FindXorgServer - xserver-properties.h
---
cmake/modules/FindEvdev.cmake | 4 ++++
cmake/modules/FindSynaptics.cmake | 4 ++++
cmake/modules/FindXorgLibinput.cmake | 4 ++++
- 3 files changed, 12 insertions(+)
+ cmake/modules/FindXorgServer.cmake | 4 ++++
+ 4 files changed, 16 insertions(+)
diff --git a/cmake/modules/FindEvdev.cmake b/cmake/modules/FindEvdev.cmake
index 153128a90..c19c31a96 100644
@@ -81,5 +81,28 @@ index 1550751ae..5b7af5e79 100644
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(XorgLibinput REQUIRED_VARS XORGLIBINPUT_INCLUDE_DIRS)
+diff --git a/cmake/modules/FindXorgServer.cmake b/cmake/modules/FindXorgServer.cmake
+index 5248c6d25..9de16dba0 100644
+--- a/cmake/modules/FindXorgServer.cmake
++++ b/cmake/modules/FindXorgServer.cmake
+@@ -31,6 +31,8 @@
+ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ # SUCH DAMAGE.
+
++if(NOT XORGSERVER_INCLUDE_DIRS)
++
+ find_package(PkgConfig)
+ pkg_check_modules(PC_XORGSERVER xorg-server)
+
+@@ -39,6 +41,8 @@ find_path(XORGSERVER_INCLUDE_DIRS
+ HINTS ${PC_XORGSERVER_INCLUDE_DIRS} ${PC_XORGSERVER_INCLUDEDIR}
+ )
+
++endif()
++
+ include(FindPackageHandleStandardArgs)
+ find_package_handle_standard_args(XORGSERVER REQUIRED_VARS XORGSERVER_INCLUDE_DIRS)
+
--
2.26.2
+
diff --git a/kde-plasma/plasma-desktop/plasma-desktop-5.18.5.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-5.18.5.ebuild
index bd37d0f65a0a..2560f8c7928d 100644
--- a/kde-plasma/plasma-desktop/plasma-desktop-5.18.5.ebuild
+++ b/kde-plasma/plasma-desktop/plasma-desktop-5.18.5.ebuild
@@ -127,8 +127,9 @@ RDEPEND="${COMMON_DEPEND}
"
PATCHES=(
- "${FILESDIR}/${PN}-5.18.4.1-override-include-dirs.patch" # downstream patch
"${FILESDIR}/${PN}-5.18.4.1-synaptics-header.patch" # in Plasma/5.19
+ "${FILESDIR}/${P}-findxorgserver.patch" # in Plasma/5.19
+ "${FILESDIR}/${P}-override-include-dirs.patch" # downstream patch
)
src_unpack() {
@@ -149,6 +150,7 @@ src_configure() {
$(cmake_use_find_package fontconfig Fontconfig)
-DEvdev_INCLUDE_DIRS="${WORKDIR}"/include
-DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}"/include
+ -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}"/include
-DSynaptics_INCLUDE_DIRS="${WORKDIR}"/include
$(cmake_use_find_package ibus IBus)
$(cmake_use_find_package scim SCIM)