diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2021-11-28 15:40:55 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2022-08-06 09:44:06 +0200 |
commit | 0ae6c63bcf85cdf1a3446f76f76c2f28209a176b (patch) | |
tree | 24c99c00e2f7d65a9741f8b3a13764693c29f59d /kde-apps/ktouch | |
parent | kde-apps/kruler: Fix build with USE -X (diff) | |
download | gentoo-0ae6c63bcf85cdf1a3446f76f76c2f28209a176b.tar.gz gentoo-0ae6c63bcf85cdf1a3446f76f76c2f28209a176b.tar.bz2 gentoo-0ae6c63bcf85cdf1a3446f76f76c2f28209a176b.zip |
kde-apps/ktouch: Fix build with USE -X
Add IUSE metadata description
Upstream commit d290b2a51d5aa4694ec746ce5cc9456977efde71
Bug: https://bugs.gentoo.org/813450
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-apps/ktouch')
-rw-r--r-- | kde-apps/ktouch/files/ktouch-22.04.3-without_x11.patch | 95 | ||||
-rw-r--r-- | kde-apps/ktouch/ktouch-22.04.3.ebuild | 5 | ||||
-rw-r--r-- | kde-apps/ktouch/metadata.xml | 3 |
3 files changed, 101 insertions, 2 deletions
diff --git a/kde-apps/ktouch/files/ktouch-22.04.3-without_x11.patch b/kde-apps/ktouch/files/ktouch-22.04.3-without_x11.patch new file mode 100644 index 000000000000..2278011d6e20 --- /dev/null +++ b/kde-apps/ktouch/files/ktouch-22.04.3-without_x11.patch @@ -0,0 +1,95 @@ +From f94d8b2bcdb738354f73efabbbe4fcf5bb623bf7 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner <asturm@gentoo.org> +Date: Sun, 31 Jul 2022 16:17:30 +0200 +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. + +KTOUCH_BUILD_WITH_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. + +- Move the checks to root CMakeLists.txt +- Move finding Qt5X11Extras behind "NOT WITHOUT_X11" too +- x11_helper is conditional on KTOUCH_BUILD_WITH_X11 + +* backported to release/22.04 + +Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> +--- + CMakeLists.txt | 14 +++++++++++++- + src/CMakeLists.txt | 13 +------------ + 2 files changed, 14 insertions(+), 13 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ae5dfb8..55753cd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -40,7 +40,6 @@ find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS + XmlPatterns + ) + +-find_package(Qt5X11Extras) + find_package(Qt5 CONFIG QUIET OPTIONAL_COMPONENTS QuickCompiler) + + find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS +@@ -61,6 +60,19 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS + + + option(COMPILE_QML "Precompile QML code" OFF) ++option(WITHOUT_X11 "Build without X11 Keyboard Layout Detection (skips finding X11)" OFF) ++ ++if (NOT WITHOUT_X11) ++ find_package(X11) ++ find_package(XCB OPTIONAL_COMPONENTS XCB XKB) ++ find_package(Qt5X11Extras ${QT_MIN_VERSION} CONFIG) ++ ++ if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND) ++ set(KTOUCH_BUILD_WITH_X11 TRUE) ++ endif() ++ ++ add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb") ++endif() + + # enable QML debugging for debug builds + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_QML_DEBUG") +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index e158d7c..b352184 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -4,15 +4,6 @@ ecm_setup_version(${RELEASE_SERVICE_VERSION} + PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KTouchConfigVersion.cmake" + ) + +-find_package(X11) +-find_package(XCB OPTIONAL_COMPONENTS XCB XKB) +- +-if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND) +- set(KTOUCH_BUILD_WITH_X11 TRUE) +-endif() +- +-add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb") +- + ecm_optional_add_subdirectory(schemata) + + # set include directories +@@ -142,9 +133,7 @@ set(ktouch_SRCS + undocommands/coursecommands.cpp + undocommands/coursecommands.h + undocommands/keyboardlayoutcommands.cpp +- undocommands/keyboardlayoutcommands.h +- x11_helper.cpp +- x11_helper.h) ++ undocommands/keyboardlayoutcommands.h) + + qt_add_resources(ktouch_imgs_SRCS images/images.qrc) + +-- +2.35.1 + diff --git a/kde-apps/ktouch/ktouch-22.04.3.ebuild b/kde-apps/ktouch/ktouch-22.04.3.ebuild index 1437028afa44..5e61ab78de92 100644 --- a/kde-apps/ktouch/ktouch-22.04.3.ebuild +++ b/kde-apps/ktouch/ktouch-22.04.3.ebuild @@ -54,11 +54,12 @@ RDEPEND="${COMMON_DEPEND} >=kde-apps/kqtquickcharts-${PVCUT}:5 " +PATCHES=( "${FILESDIR}/${P}-without_x11.patch" ) + src_configure() { local mycmakeargs=( -DCOMPILE_QML=OFF - $(cmake_use_find_package X X11) - $(cmake_use_find_package X Qt5X11Extras) + -DWITHOUT_X11=$(usex !X) ) ecm_src_configure } diff --git a/kde-apps/ktouch/metadata.xml b/kde-apps/ktouch/metadata.xml index d925f2439758..6e812b0dfadd 100644 --- a/kde-apps/ktouch/metadata.xml +++ b/kde-apps/ktouch/metadata.xml @@ -8,4 +8,7 @@ <upstream> <bugs-to>https://bugs.kde.org/</bugs-to> </upstream> + <use> + <flag name="X">Enable support for X11 Keyboard Layout Detection</flag> + </use> </pkgmetadata> |