summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kde-apps/yakuake/files/yakuake-22.04.3-without_x11.patch78
-rw-r--r--kde-apps/yakuake/yakuake-22.04.3.ebuild4
2 files changed, 81 insertions, 1 deletions
diff --git a/kde-apps/yakuake/files/yakuake-22.04.3-without_x11.patch b/kde-apps/yakuake/files/yakuake-22.04.3-without_x11.patch
new file mode 100644
index 000000000000..5daf29c35da4
--- /dev/null
+++ b/kde-apps/yakuake/files/yakuake-22.04.3-without_x11.patch
@@ -0,0 +1,78 @@
+From 68bee7bce59bed1def66518bc254ecf7ae8985c5 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sat, 27 Nov 2021 14:49:51 +0100
+Subject: [PATCH] Add CMake option to build WITHOUT_X11
+
+We want to be able to build without X11 support even if some of the used
+libraries may not work w/o X11 themselves yet or need to be built with
+X11 support for other reverse dependencies.
+
+HAVE_X11 already exists and is set automagically so far, but using
+-DCMAKE_DISABLE_FIND_PACKAGE_X11 will break if any dependencies list X11
+as required in their cmake config.
+
+Introducing this option means there is no behavior change by default,
+cmake will just skip finding X11 or adding unwanted features if the
+option is enabled.
+
+* backported to release/22.04
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ CMakeLists.txt | 22 ++++++++++++----------
+ app/CMakeLists.txt | 6 +++---
+ 2 files changed, 15 insertions(+), 13 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 14f6842..0ec65b9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,16 +51,18 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED
+ )
+
+ if(NOT APPLE)
+- find_package(X11)
+- set(HAVE_X11 ${X11_FOUND})
+-
+- if(X11_FOUND)
+- find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED X11Extras)
+- endif(X11_FOUND)
+-
+- find_package(KF5Wayland ${KF5_MIN_VERSION} CONFIG)
+- set(HAVE_KWAYLAND ${KF5Wayland_FOUND})
+-endif(NOT APPLE)
++ option(WITHOUT_X11 "Build without X11 integration (skips finding X11)" OFF)
++ if(NOT WITHOUT_X11)
++ find_package(X11)
++ set(HAVE_X11 ${X11_FOUND})
++ if(X11_FOUND)
++ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED X11Extras)
++ endif()
++ endif()
++
++ find_package(KF5Wayland ${KF5_MIN_VERSION} CONFIG)
++ set(HAVE_KWAYLAND ${KF5Wayland_FOUND})
++endif()
+
+ add_subdirectory(app)
+ add_subdirectory(data)
+diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
+index 69aedcd..994d36f 100644
+--- a/app/CMakeLists.txt
++++ b/app/CMakeLists.txt
+@@ -63,9 +63,9 @@ target_link_libraries(yakuake
+ KF5::WidgetsAddons
+ KF5::WindowSystem)
+
+-if(X11_FOUND)
+- target_link_libraries(yakuake Qt5::X11Extras ${X11_X11_LIB})
+-endif(X11_FOUND)
++if(HAVE_X11)
++ target_link_libraries(yakuake Qt5::X11Extras)
++endif()
+
+ if(KF5Wayland_FOUND)
+ target_link_libraries(yakuake KF5::WaylandClient)
+--
+2.35.1
+
diff --git a/kde-apps/yakuake/yakuake-22.04.3.ebuild b/kde-apps/yakuake/yakuake-22.04.3.ebuild
index 0db7a4d76d4b..556269d0a620 100644
--- a/kde-apps/yakuake/yakuake-22.04.3.ebuild
+++ b/kde-apps/yakuake/yakuake-22.04.3.ebuild
@@ -48,10 +48,12 @@ DEPEND="
"
RDEPEND="${DEPEND}"
+PATCHES=( "${FILESDIR}/${P}-without_x11.patch" )
+
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package absolute-position KF5Wayland)
- $(cmake_use_find_package X X11)
+ -DWITHOUT_X11=$(usex !X)
)
ecm_src_configure