Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/kde:master commit in: kde-apps/ktouch/, kde-apps/ktouch/files/
Date: Mon, 01 Aug 2022 08:06:21
Message-Id: 1659340789.ff785331a7f8722f2ebdb9fc7cdc734ad8943b13.asturm@gentoo
1 commit: ff785331a7f8722f2ebdb9fc7cdc734ad8943b13
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Nov 29 08:15:31 2021 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Mon Aug 1 07:59:49 2022 +0000
6 URL: https://gitweb.gentoo.org/proj/kde.git/commit/?id=ff785331
7
8 kde-apps/ktouch: Fix build with USE -X
9
10 Add IUSE metadata description
11
12 Upstream commit d290b2a51d5aa4694ec746ce5cc9456977efde71
13
14 Bug: https://bugs.gentoo.org/813450
15 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
16
17 .../ktouch/files/ktouch-22.04.3-without_x11.patch | 97 ++++++++++++++++++++++
18 kde-apps/ktouch/ktouch-22.07.80.ebuild | 5 +-
19 kde-apps/ktouch/ktouch-22.08.49.9999.ebuild | 5 +-
20 kde-apps/ktouch/ktouch-9999.ebuild | 3 +-
21 kde-apps/ktouch/metadata.xml | 3 +
22 5 files changed, 107 insertions(+), 6 deletions(-)
23
24 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
25 new file mode 100644
26 index 0000000000..dbfc2d9498
27 --- /dev/null
28 +++ b/kde-apps/ktouch/files/ktouch-22.04.3-without_x11.patch
29 @@ -0,0 +1,97 @@
30 +From d290b2a51d5aa4694ec746ce5cc9456977efde71 Mon Sep 17 00:00:00 2001
31 +From: Andreas Sturmlechner <asturm@g.o>
32 +Date: Sun, 31 Jul 2022 16:17:30 +0200
33 +Subject: [PATCH] Add CMake option to build WITHOUT_X11
34 +
35 +We want to be able to build without X11 support even if some of the used
36 +libraries may not work w/o X11 themselves yet or need to be built with
37 +X11 support for other reverse dependencies.
38 +
39 +KTOUCH_BUILD_WITH_X11 already exists and is set automagically so far,
40 +but using -DCMAKE_DISABLE_FIND_PACKAGE_X11 will break if any
41 +dependencies list X11 as required in their cmake config.
42 +
43 +Introducing this option means there is no behavior change by default,
44 +cmake will just skip finding X11 or adding unwanted features if the
45 +option is enabled.
46 +
47 +- Move the checks to root CMakeLists.txt
48 +- Move finding Qt5X11Extras behind "NOT WITHOUT_X11" too
49 +- x11_helper is conditional on KTOUCH_BUILD_WITH_X11
50 +
51 +Signed-off-by: Andreas Sturmlechner <asturm@g.o>
52 +---
53 + CMakeLists.txt | 18 +++++++++++++++---
54 + src/CMakeLists.txt | 13 +------------
55 + 2 files changed, 16 insertions(+), 15 deletions(-)
56 +
57 +diff --git a/CMakeLists.txt b/CMakeLists.txt
58 +index 9ec74a5..a05231b 100644
59 +--- a/CMakeLists.txt
60 ++++ b/CMakeLists.txt
61 +@@ -39,9 +39,6 @@ find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} REQUIRED COMPONENTS
62 + Xml
63 + XmlPatterns
64 + )
65 +-if (QT_MAJOR_VERSION STREQUAL "5")
66 +-find_package(Qt5X11Extras)
67 +-endif()
68 + find_package(Qt${QT_MAJOR_VERSION} CONFIG QUIET OPTIONAL_COMPONENTS QuickCompiler)
69 +
70 + find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
71 +@@ -62,6 +59,21 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
72 +
73 +
74 + option(COMPILE_QML "Precompile QML code" OFF)
75 ++option(WITHOUT_X11 "Build without X11 Keyboard Layout Detection (skips finding X11)" OFF)
76 ++
77 ++if (NOT WITHOUT_X11)
78 ++ find_package(X11)
79 ++ find_package(XCB OPTIONAL_COMPONENTS XCB XKB)
80 ++ if (QT_MAJOR_VERSION STREQUAL "5")
81 ++ find_package(Qt5X11Extras ${QT_MIN_VERSION} CONFIG)
82 ++ endif()
83 ++
84 ++ if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND)
85 ++ set(KTOUCH_BUILD_WITH_X11 TRUE)
86 ++ endif()
87 ++
88 ++ add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb")
89 ++endif()
90 +
91 + # enable QML debugging for debug builds
92 + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_QML_DEBUG")
93 +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
94 +index cb6f3f5..9dd2a5f 100644
95 +--- a/src/CMakeLists.txt
96 ++++ b/src/CMakeLists.txt
97 +@@ -4,15 +4,6 @@ ecm_setup_version(${RELEASE_SERVICE_VERSION}
98 + PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KTouchConfigVersion.cmake"
99 + )
100 +
101 +-find_package(X11)
102 +-find_package(XCB OPTIONAL_COMPONENTS XCB XKB)
103 +-
104 +-if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND)
105 +- set(KTOUCH_BUILD_WITH_X11 TRUE)
106 +-endif()
107 +-
108 +-add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb")
109 +-
110 + ecm_optional_add_subdirectory(schemata)
111 +
112 + # set include directories
113 +@@ -137,9 +128,7 @@ set(ktouch_SRCS
114 + undocommands/coursecommands.cpp
115 + undocommands/coursecommands.h
116 + undocommands/keyboardlayoutcommands.cpp
117 +- undocommands/keyboardlayoutcommands.h
118 +- x11_helper.cpp
119 +- x11_helper.h)
120 ++ undocommands/keyboardlayoutcommands.h)
121 +
122 + qt_add_resources(ktouch_imgs_SRCS images/images.qrc)
123 +
124 +--
125 +GitLab
126 +
127
128 diff --git a/kde-apps/ktouch/ktouch-22.07.80.ebuild b/kde-apps/ktouch/ktouch-22.07.80.ebuild
129 index c443f79e4b..bb4128c70c 100644
130 --- a/kde-apps/ktouch/ktouch-22.07.80.ebuild
131 +++ b/kde-apps/ktouch/ktouch-22.07.80.ebuild
132 @@ -54,11 +54,12 @@ RDEPEND="${COMMON_DEPEND}
133 >=kde-apps/kqtquickcharts-${PVCUT}:5
134 "
135
136 +PATCHES=( "${FILESDIR}/${PN}-22.04.3-without_x11.patch" )
137 +
138 src_configure() {
139 local mycmakeargs=(
140 -DCOMPILE_QML=OFF
141 - $(cmake_use_find_package X X11)
142 - $(cmake_use_find_package X Qt5X11Extras)
143 + -DWITHOUT_X11=$(usex !X)
144 )
145 ecm_src_configure
146 }
147
148 diff --git a/kde-apps/ktouch/ktouch-22.08.49.9999.ebuild b/kde-apps/ktouch/ktouch-22.08.49.9999.ebuild
149 index f77fc49426..ee3251fe42 100644
150 --- a/kde-apps/ktouch/ktouch-22.08.49.9999.ebuild
151 +++ b/kde-apps/ktouch/ktouch-22.08.49.9999.ebuild
152 @@ -54,11 +54,12 @@ RDEPEND="${COMMON_DEPEND}
153 >=kde-apps/kqtquickcharts-${PVCUT}:5
154 "
155
156 +PATCHES=( "${FILESDIR}/${PN}-22.04.3-without_x11.patch" )
157 +
158 src_configure() {
159 local mycmakeargs=(
160 -DCOMPILE_QML=OFF
161 - $(cmake_use_find_package X X11)
162 - $(cmake_use_find_package X Qt5X11Extras)
163 + -DWITHOUT_X11=$(usex !X)
164 )
165 ecm_src_configure
166 }
167
168 diff --git a/kde-apps/ktouch/ktouch-9999.ebuild b/kde-apps/ktouch/ktouch-9999.ebuild
169 index f77fc49426..93c6bad8de 100644
170 --- a/kde-apps/ktouch/ktouch-9999.ebuild
171 +++ b/kde-apps/ktouch/ktouch-9999.ebuild
172 @@ -57,8 +57,7 @@ RDEPEND="${COMMON_DEPEND}
173 src_configure() {
174 local mycmakeargs=(
175 -DCOMPILE_QML=OFF
176 - $(cmake_use_find_package X X11)
177 - $(cmake_use_find_package X Qt5X11Extras)
178 + -DWITHOUT_X11=$(usex !X)
179 )
180 ecm_src_configure
181 }
182
183 diff --git a/kde-apps/ktouch/metadata.xml b/kde-apps/ktouch/metadata.xml
184 index d925f24397..6e812b0dfa 100644
185 --- a/kde-apps/ktouch/metadata.xml
186 +++ b/kde-apps/ktouch/metadata.xml
187 @@ -8,4 +8,7 @@
188 <upstream>
189 <bugs-to>https://bugs.kde.org/</bugs-to>
190 </upstream>
191 + <use>
192 + <flag name="X">Enable support for X11 Keyboard Layout Detection</flag>
193 + </use>
194 </pkgmetadata>