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> |