commit: f431f03a9373c22aace77d9f15fba456f46505a9 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sun Apr 5 22:55:11 2020 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Wed Apr 8 15:50:01 2020 +0000 URL: https://gitweb.gentoo.org/proj/kde.git/commit/?id=f431f03a
kde-plasma/plasma-desktop: Pull evdev/libinput headers, drop USE mouse Add patch to FindEvdev and FindXorgLibinput to override include dirs. This makes it possible to get rid of both xf86-input-libinput but more importantly xf86-input-evdev dependencies only to build Mouse KCM. Package-Manager: Portage-2.3.97, Repoman-2.3.22 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> ...ma-desktop-5.18.4.1-override-include-dirs.patch | 58 ++++++++++++++++++++++ kde-plasma/plasma-desktop/metadata.xml | 1 - .../plasma-desktop-5.18.49.9999.ebuild | 32 +++++++++--- .../plasma-desktop/plasma-desktop-9999.ebuild | 32 +++++++++--- 4 files changed, 108 insertions(+), 15 deletions(-) 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.4.1-override-include-dirs.patch new file mode 100644 index 0000000000..54b8419e98 --- /dev/null +++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.18.4.1-override-include-dirs.patch @@ -0,0 +1,58 @@ +From d44a6c8a732c3f82092f3fa3044000f1f8b3a0ec Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner <[email protected]> +Date: Mon, 6 Apr 2020 00:41:07 +0200 +Subject: [PATCH] cmake modules: Allow include dir overrides in FindEvdev, + FindXorgLibinput + +--- + cmake/modules/FindEvdev.cmake | 4 ++++ + cmake/modules/FindXorgLibinput.cmake | 4 ++++ + 2 files changed, 8 insertions(+) + +diff --git a/cmake/modules/FindEvdev.cmake b/cmake/modules/FindEvdev.cmake +index 153128a90..c19c31a96 100644 +--- a/cmake/modules/FindEvdev.cmake ++++ b/cmake/modules/FindEvdev.cmake +@@ -31,6 +31,8 @@ + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + ++if(NOT Evdev_INCLUDE_DIRS) ++ + find_package(PkgConfig) + pkg_check_modules(PC_EVDEV xorg-evdev>=2.8.99.1) + +@@ -39,6 +41,8 @@ find_path(Evdev_INCLUDE_DIRS + HINTS ${PC_EVDEV_INCLUDE_DIRS} ${PC_EVDEV_INCLUDEDIR} + ) + ++endif() ++ + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(Evdev REQUIRED_VARS Evdev_INCLUDE_DIRS) + +diff --git a/cmake/modules/FindXorgLibinput.cmake b/cmake/modules/FindXorgLibinput.cmake +index 1550751ae..5b7af5e79 100644 +--- a/cmake/modules/FindXorgLibinput.cmake ++++ b/cmake/modules/FindXorgLibinput.cmake +@@ -31,6 +31,8 @@ + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + ++if(NOT XORGLIBINPUT_INCLUDE_DIRS) ++ + find_package(PkgConfig) + pkg_check_modules(PC_XORGLIBINPUT xorg-libinput) + +@@ -39,6 +41,8 @@ find_path(XORGLIBINPUT_INCLUDE_DIRS + HINTS ${PC_XORGLIBINPUT_INCLUDE_DIRS} ${PC_XORGLIBINPUT_INCLUDEDIR} + ) + ++endif() ++ + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(XorgLibinput REQUIRED_VARS XORGLIBINPUT_INCLUDE_DIRS) + +-- +2.26.0 + diff --git a/kde-plasma/plasma-desktop/metadata.xml b/kde-plasma/plasma-desktop/metadata.xml index 9b61884e37..ad05be8124 100644 --- a/kde-plasma/plasma-desktop/metadata.xml +++ b/kde-plasma/plasma-desktop/metadata.xml @@ -8,7 +8,6 @@ <use> <flag name="emoji">Build emojipicker applet using <pkg>app-i18n/ibus</pkg> and <pkg>media-fonts/noto-emoji</pkg></flag> <flag name="ibus">Use ibus input method via <pkg>app-i18n/ibus</pkg></flag> - <flag name="mouse">Enable mouse KCM</flag> <flag name="scim">Enable applets that use <pkg>app-i18n/scim</pkg></flag> <flag name="touchpad">Enable touchpad KCM</flag> </use> diff --git a/kde-plasma/plasma-desktop/plasma-desktop-5.18.49.9999.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-5.18.49.9999.ebuild index 0f09b8a685..7d850cd93e 100644 --- a/kde-plasma/plasma-desktop/plasma-desktop-5.18.49.9999.ebuild +++ b/kde-plasma/plasma-desktop/plasma-desktop-5.18.49.9999.ebuild @@ -13,10 +13,19 @@ inherit ecm kde.org DESCRIPTION="KDE Plasma desktop" +# Avoid pulling in xf86-input-{evdev,libinput} DEPEND just for 1 header +SHA_EVDEV="425ed601" +SHA_LIBINPUT="e52daf20" +XORG_URI="https://gitlab.freedesktop.org/xorg/driver/PKG/-/raw" +SRC_URI+=" + ${XORG_URI/PKG/xf86-input-evdev}/${SHA_EVDEV}/include/evdev-properties.h -> evdev-properties.h-${SHA_EVDEV} + ${XORG_URI/PKG/xf86-input-libinput}/${SHA_LIBINPUT}/include/libinput-properties.h -> libinput-properties.h-${SHA_LIBINPUT} +" + LICENSE="GPL-2" # TODO: CHECK SLOT="5" KEYWORDS="" -IUSE="emoji +fontconfig ibus +mouse scim +semantic-desktop touchpad" +IUSE="emoji +fontconfig ibus scim +semantic-desktop touchpad" COMMON_DEPEND=" >=dev-qt/qtconcurrent-${QTMIN}:5 @@ -104,10 +113,6 @@ DEPEND="${COMMON_DEPEND} dev-libs/boost x11-base/xorg-proto fontconfig? ( x11-libs/libXrender ) - mouse? ( - x11-drivers/xf86-input-evdev - x11-drivers/xf86-input-libinput - ) " RDEPEND="${COMMON_DEPEND} >=dev-qt/qtgraphicaleffects-${QTMIN}:5 @@ -122,6 +127,19 @@ RDEPEND="${COMMON_DEPEND} !<kde-plasma/kdeplasma-addons-5.15.80 " +PATCHES=( + "${FILESDIR}/${PN}-5.18.4.1-override-include-dirs.patch" # downstream patch +) + +src_unpack() { + kde.org_src_unpack + mkdir "${WORKDIR}/include" || die "Failed to prepare evdev/libinput dir" + cp "${DISTDIR}"/evdev-properties.h-${SHA_EVDEV} \ + "${WORKDIR}"/include/evdev-properties.h || die "Failed to copy evdev" + cp "${DISTDIR}"/libinput-properties.h-${SHA_LIBINPUT} \ + "${WORKDIR}"/include/libinput-properties.h || die "Failed to copy libinput" +} + src_prepare() { ecm_src_prepare @@ -134,8 +152,8 @@ src_prepare() { src_configure() { local mycmakeargs=( $(cmake_use_find_package fontconfig Fontconfig) - $(cmake_use_find_package mouse Evdev) - $(cmake_use_find_package mouse XorgLibinput) + -DEvdev_INCLUDE_DIRS="${WORKDIR}"/include + -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}"/include $(cmake_use_find_package scim SCIM) $(cmake_use_find_package semantic-desktop KF5Baloo) $(cmake_use_find_package touchpad Synaptics) diff --git a/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild index 718317a06d..ec6504cb73 100644 --- a/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild +++ b/kde-plasma/plasma-desktop/plasma-desktop-9999.ebuild @@ -13,10 +13,19 @@ inherit ecm kde.org DESCRIPTION="KDE Plasma desktop" +# Avoid pulling in xf86-input-{evdev,libinput} DEPEND just for 1 header +SHA_EVDEV="425ed601" +SHA_LIBINPUT="e52daf20" +XORG_URI="https://gitlab.freedesktop.org/xorg/driver/PKG/-/raw" +SRC_URI+=" + ${XORG_URI/PKG/xf86-input-evdev}/${SHA_EVDEV}/include/evdev-properties.h -> evdev-properties.h-${SHA_EVDEV} + ${XORG_URI/PKG/xf86-input-libinput}/${SHA_LIBINPUT}/include/libinput-properties.h -> libinput-properties.h-${SHA_LIBINPUT} +" + LICENSE="GPL-2" # TODO: CHECK SLOT="5" KEYWORDS="" -IUSE="emoji +fontconfig ibus +mouse scim +semantic-desktop touchpad" +IUSE="emoji +fontconfig ibus scim +semantic-desktop touchpad" COMMON_DEPEND=" >=dev-qt/qtconcurrent-${QTMIN}:5 @@ -104,10 +113,6 @@ DEPEND="${COMMON_DEPEND} dev-libs/boost x11-base/xorg-proto fontconfig? ( x11-libs/libXrender ) - mouse? ( - x11-drivers/xf86-input-evdev - x11-drivers/xf86-input-libinput - ) " RDEPEND="${COMMON_DEPEND} >=dev-qt/qtgraphicaleffects-${QTMIN}:5 @@ -122,6 +127,19 @@ RDEPEND="${COMMON_DEPEND} !<kde-plasma/kdeplasma-addons-5.15.80 " +PATCHES=( + "${FILESDIR}/${PN}-5.18.4.1-override-include-dirs.patch" # downstream patch +) + +src_unpack() { + kde.org_src_unpack + mkdir "${WORKDIR}/include" || die "Failed to prepare evdev/libinput dir" + cp "${DISTDIR}"/evdev-properties.h-${SHA_EVDEV} \ + "${WORKDIR}"/include/evdev-properties.h || die "Failed to copy evdev" + cp "${DISTDIR}"/libinput-properties.h-${SHA_LIBINPUT} \ + "${WORKDIR}"/include/libinput-properties.h || die "Failed to copy libinput" +} + src_prepare() { ecm_src_prepare @@ -134,8 +152,8 @@ src_prepare() { src_configure() { local mycmakeargs=( $(cmake_use_find_package fontconfig Fontconfig) - $(cmake_use_find_package mouse Evdev) - $(cmake_use_find_package mouse XorgLibinput) + -DEvdev_INCLUDE_DIRS="${WORKDIR}"/include + -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}"/include $(cmake_use_find_package scim SCIM) $(cmake_use_find_package semantic-desktop KF5Baloo) $(cmake_use_find_package touchpad Synaptics)
