commit:     d0b7e3ec2f89f77780354cd607642b9895ca19ac
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 12 17:22:34 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Jul 12 17:33:35 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0b7e3ec

kde-apps/konsole: Re-add IUSE X, add missing USEdep, drop obsolete patch

Amends (rather fixes) commit 6663a2bf1415d295444b5500d6911ee6e6f15727.

Upstream commit c5f2315c9df05ca069de25ab741d9fc38a6de21a

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

 kde-apps/konsole/files/konsole-24.05.2-cmake.patch | 135 +++++++++++++++++++++
 kde-apps/konsole/konsole-24.05.2-r1.ebuild         |  67 ++++++++++
 2 files changed, 202 insertions(+)

diff --git a/kde-apps/konsole/files/konsole-24.05.2-cmake.patch 
b/kde-apps/konsole/files/konsole-24.05.2-cmake.patch
new file mode 100644
index 000000000000..dbedc87de729
--- /dev/null
+++ b/kde-apps/konsole/files/konsole-24.05.2-cmake.patch
@@ -0,0 +1,135 @@
+From c5f2315c9df05ca069de25ab741d9fc38a6de21a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Sun, 7 Jul 2024 23:27:32 +0200
+Subject: [PATCH] Drop faux X11 dependency and switch WITHOUT_X11 option to
+ WITH_X11
+
+X11 is nowhere needed in the codebase. Follow-up to 
2f116f9fb2438a6e66b6702b3cc2ace9d0205f96
+
+Signed-off-by: Andreas Sturmlechner <[email protected]>
+---
+ CMakeLists.txt             | 7 +------
+ src/MainWindow.cpp         | 8 ++++----
+ src/WindowSystemInfo.cpp   | 4 ++--
+ src/config-konsole.h.cmake | 2 +-
+ src/main.cpp               | 4 ++--
+ 5 files changed, 10 insertions(+), 15 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 80292afd1b..4746aae72a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -105,12 +105,7 @@ set_package_properties(KF6DocTools PROPERTIES DESCRIPTION
+ find_package(ICU 61.0 COMPONENTS uc i18n REQUIRED)
+ 
+ if(UNIX AND NOT APPLE AND NOT ANDROID AND NOT HAIKU)
+-    option(WITHOUT_X11 "Build without X11 integration (skips finding X11)" 
OFF)
+-    if(NOT WITHOUT_X11)
+-        find_package(X11)
+-        set_package_properties(X11 PROPERTIES TYPE OPTIONAL)
+-        set(HAVE_X11 ${X11_FOUND})
+-    endif()
++    option(WITH_X11 "Build with X11 integration" ON)
+ endif()
+ 
+ # Check for function GETPWUID
+diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp
+index c034288df4..1631053572 100644
+--- a/src/MainWindow.cpp
++++ b/src/MainWindow.cpp
+@@ -35,7 +35,7 @@
+ #include <KWindowSystem>
+ #include <KXMLGUIFactory>
+ 
+-#if HAVE_X11
++#if WITH_X11
+ #include <KX11Extras>
+ #endif
+ 
+@@ -156,7 +156,7 @@ void MainWindow::activationRequest(const QString 
&xdgActivationToken)
+     KWindowSystem::setCurrentXdgActivationToken(xdgActivationToken);
+ 
+     if (KWindowSystem::isPlatformX11()) {
+-#if HAVE_X11
++#if WITH_X11
+         KX11Extras::forceActiveWindow(winId());
+ #endif
+     } else {
+@@ -713,7 +713,7 @@ bool MainWindow::queryClose()
+     // NOTE: Some, if not all, of the below KWindowSystem calls are only
+     //       implemented under x11 (KDE4.8 kdelibs/kdeui/windowmanagement).
+ 
+-#if HAVE_X11
++#if WITH_X11
+     // make sure the window is shown on current desktop and is not minimized
+     KX11Extras::setOnDesktop(winId(), KX11Extras::currentDesktop());
+ #endif
+@@ -1022,7 +1022,7 @@ void MainWindow::setRemoveWindowTitleBarAndFrame(bool 
frameless)
+         }
+ 
+         if (KWindowSystem::isPlatformX11()) {
+-#if HAVE_X11
++#if WITH_X11
+             const auto oldGeometry = saveGeometry();
+             // This happens for every Konsole window. It depends on
+             // the fact that every window is processed in single thread
+diff --git a/src/WindowSystemInfo.cpp b/src/WindowSystemInfo.cpp
+index d6cad5f68b..28cc3bd6cd 100644
+--- a/src/WindowSystemInfo.cpp
++++ b/src/WindowSystemInfo.cpp
+@@ -11,7 +11,7 @@
+ 
+ #include <QtGlobal>
+ 
+-#if HAVE_X11
++#if WITH_X11
+ #include <KWindowSystem>
+ #include <KX11Extras>
+ #endif
+@@ -22,7 +22,7 @@ bool WindowSystemInfo::HAVE_TRANSPARENCY = false;
+ 
+ bool WindowSystemInfo::compositingActive()
+ {
+-#if HAVE_X11
++#if WITH_X11
+     return !KWindowSystem::isPlatformX11() || KX11Extras::compositingActive();
+ #else
+     return true;
+diff --git a/src/config-konsole.h.cmake b/src/config-konsole.h.cmake
+index fd8f35822c..a1702d8ed9 100644
+--- a/src/config-konsole.h.cmake
++++ b/src/config-konsole.h.cmake
+@@ -3,7 +3,7 @@
+ /* Defined if on DragonFly BSD */
+ #cmakedefine01 HAVE_OS_DRAGONFLYBSD
+ 
+-#cmakedefine01 HAVE_X11
++#cmakedefine01 WITH_X11
+ 
+ #cmakedefine01 HAVE_DBUS
+ 
+diff --git a/src/main.cpp b/src/main.cpp
+index c9b8b12978..2207db1d7c 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -286,7 +286,7 @@ bool shouldUseNewProcess(int argc, char *argv[])
+     QStringList qtProblematicOptions;
+     qtProblematicOptions << QStringLiteral("--session") << 
QStringLiteral("--name") << QStringLiteral("--reverse") << 
QStringLiteral("--stylesheet")
+                          << QStringLiteral("--graphicssystem");
+-#if HAVE_X11
++#if WITH_X11
+     qtProblematicOptions << QStringLiteral("--display") << 
QStringLiteral("--visual");
+ #endif
+     for (const QString &option : std::as_const(qtProblematicOptions)) {
+@@ -298,7 +298,7 @@ bool shouldUseNewProcess(int argc, char *argv[])
+     // take KDE options into consideration
+     QStringList kdeProblematicOptions;
+     kdeProblematicOptions << QStringLiteral("--config") << 
QStringLiteral("--style");
+-#if HAVE_X11
++#if WITH_X11
+     kdeProblematicOptions << QStringLiteral("--waitforwm");
+ #endif
+ 
+-- 
+GitLab
+

diff --git a/kde-apps/konsole/konsole-24.05.2-r1.ebuild 
b/kde-apps/konsole/konsole-24.05.2-r1.ebuild
new file mode 100644
index 000000000000..f9039c642964
--- /dev/null
+++ b/kde-apps/konsole/konsole-24.05.2-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="optional"
+ECM_TEST="true"
+KFMIN=6.3.0
+QTMIN=6.6.2
+inherit ecm gear.kde.org
+
+DESCRIPTION="KDE's terminal emulator"
+HOMEPAGE="https://apps.kde.org/konsole/ https://konsole.kde.org";
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="6"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+IUSE="X"
+
+DEPEND="
+       dev-libs/icu:=
+       >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,network,widgets,xml]
+       >=dev-qt/qt5compat-${QTMIN}:6
+       >=dev-qt/qtmultimedia-${QTMIN}:6
+       >=kde-frameworks/kbookmarks-${KFMIN}:6
+       >=kde-frameworks/kconfig-${KFMIN}:6
+       >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+       >=kde-frameworks/kcoreaddons-${KFMIN}:6
+       >=kde-frameworks/kcrash-${KFMIN}:6
+       >=kde-frameworks/kdbusaddons-${KFMIN}:6
+       >=kde-frameworks/kglobalaccel-${KFMIN}:6
+       >=kde-frameworks/kguiaddons-${KFMIN}:6
+       >=kde-frameworks/ki18n-${KFMIN}:6
+       >=kde-frameworks/kiconthemes-${KFMIN}:6
+       >=kde-frameworks/kio-${KFMIN}:6
+       >=kde-frameworks/kjobwidgets-${KFMIN}:6
+       >=kde-frameworks/knewstuff-${KFMIN}:6
+       >=kde-frameworks/knotifications-${KFMIN}:6
+       >=kde-frameworks/knotifyconfig-${KFMIN}:6
+       >=kde-frameworks/kparts-${KFMIN}:6
+       >=kde-frameworks/kpty-${KFMIN}:6
+       >=kde-frameworks/kservice-${KFMIN}:6
+       >=kde-frameworks/ktextwidgets-${KFMIN}:6
+       >=kde-frameworks/kwidgetsaddons-${KFMIN}:6
+       >=kde-frameworks/kwindowsystem-${KFMIN}:6[X?]
+       >=kde-frameworks/kxmlgui-${KFMIN}:6
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-cmake.patch" ) # fixed in 24.08
+
+src_configure() {
+       local mycmakeargs=(
+               -DWITH_X11=$(usex X)
+       )
+       ecm_src_configure
+}
+
+src_test() {
+       # DBusTest: drkonqi process interferes. bug 702690
+       # TerminalInterfaceTest: unbelievably flaky, bug 862594 and bug 662756
+       local myctestargs=(
+               -E "(DBusTest|TerminalInterfaceTest)"
+       )
+
+       ecm_src_test
+}

Reply via email to