1 |
commit: c1656b6dcec27a716caf2b516e03c9d3fc2558c6 |
2 |
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Jan 1 16:56:05 2021 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jan 2 01:22:31 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c1656b6d |
7 |
|
8 |
dev-qt/qtgui: Drop bogus xcb-util build dep |
9 |
|
10 |
See also: https://bugreports.qt.io/browse/QTBUG-88688 |
11 |
|
12 |
Package-Manager: Portage-3.0.12, Repoman-3.0.2 |
13 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
14 |
|
15 |
.../files/qtgui-5.15.2-bogus-xcb-util-dep.patch | 72 ++++++++ |
16 |
dev-qt/qtgui/qtgui-5.15.2-r1.ebuild | 188 +++++++++++++++++++++ |
17 |
2 files changed, 260 insertions(+) |
18 |
|
19 |
diff --git a/dev-qt/qtgui/files/qtgui-5.15.2-bogus-xcb-util-dep.patch b/dev-qt/qtgui/files/qtgui-5.15.2-bogus-xcb-util-dep.patch |
20 |
new file mode 100644 |
21 |
index 00000000000..b7f65483fb1 |
22 |
--- /dev/null |
23 |
+++ b/dev-qt/qtgui/files/qtgui-5.15.2-bogus-xcb-util-dep.patch |
24 |
@@ -0,0 +1,72 @@ |
25 |
+From 61b07d75f96d4dfb07b485b2a9bd7aed099df987 Mon Sep 17 00:00:00 2001 |
26 |
+From: Liang Qi <liang.qi@××.io> |
27 |
+Date: Tue, 1 Dec 2020 08:43:28 +0100 |
28 |
+Subject: [PATCH] Revert "xcb: add xcb-util dependency for xcb-image" |
29 |
+MIME-Version: 1.0 |
30 |
+Content-Type: text/plain; charset=utf8 |
31 |
+Content-Transfer-Encoding: 8bit |
32 |
+ |
33 |
+This reverts commit adc42bebcac764ca8de78578e3a4ac39b621bd09. |
34 |
+ |
35 |
+adc42beb is wrong, the bug is for static build of qt with static |
36 |
+xcb. It adds the explicit dependency of xcb-util 0.3.9, which is |
37 |
+not available on Debian yet. |
38 |
+ |
39 |
+Task-number: QTBUG-86287 |
40 |
+Fixes: QTBUG-88688 |
41 |
+Change-Id: Iffc821f49bdfcad3f2556951d3677c35a7682266 |
42 |
+Reviewed-by: Thiago Macieira <thiago.macieira@×××××.com> |
43 |
+Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@××.io> |
44 |
+(adapted from commit 92a57e0b016f811876ec1d62328ca8edfe452a3a) |
45 |
+--- |
46 |
+ src/gui/configure.json | 14 ++------------ |
47 |
+ 1 file changed, 2 insertions(+), 12 deletions(-) |
48 |
+ |
49 |
+diff --git a/src/gui/configure.json b/src/gui/configure.json |
50 |
+index c8c4864eca6..1f08795c57b 100644 |
51 |
+--- a/src/gui/configure.json |
52 |
++++ b/src/gui/configure.json |
53 |
+@@ -601,15 +601,6 @@ |
54 |
+ ], |
55 |
+ "use": "xcb" |
56 |
+ }, |
57 |
+- "xcb_util": { |
58 |
+- "label": "XCB Util >= 0.3.9", |
59 |
+- "headers": "xcb/xcb_util.h", |
60 |
+- "sources": [ |
61 |
+- { "type": "pkgConfig", "args": "xcb-util >= 0.3.9" }, |
62 |
+- "-lxcb-util" |
63 |
+- ], |
64 |
+- "use": "xcb" |
65 |
+- }, |
66 |
+ "xcb_image": { |
67 |
+ "label": "XCB Image >= 0.3.9", |
68 |
+ "headers": "xcb/xcb_image.h", |
69 |
+@@ -617,7 +608,7 @@ |
70 |
+ { "type": "pkgConfig", "args": "xcb-image >= 0.3.9" }, |
71 |
+ "-lxcb-image" |
72 |
+ ], |
73 |
+- "use": "xcb_shm xcb_util xcb" |
74 |
++ "use": "xcb_shm xcb" |
75 |
+ }, |
76 |
+ "xcb_keysyms": { |
77 |
+ "label": "XCB Keysyms >= 0.3.9", |
78 |
+@@ -1065,7 +1056,6 @@ |
79 |
+ "tail": "#undef explicit", |
80 |
+ "include": [ |
81 |
+ "xcb/xcb.h", |
82 |
+- "xcb/xcb_util.h", |
83 |
+ "xcb/xcb_image.h", |
84 |
+ "xcb/xcb_keysyms.h", |
85 |
+ "xcb/randr.h", |
86 |
+@@ -1097,7 +1087,7 @@ |
87 |
+ "xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof(nullptr, 0, 0, 0, 0, 0, 0, 0, 0);" |
88 |
+ ] |
89 |
+ }, |
90 |
+- "use": "xcb_icccm xcb_util xcb_image xcb_keysyms xcb_randr xcb_render xcb_renderutil xcb_shape xcb_shm xcb_sync xcb_xfixes xcb_xinerama xcb_xkb xcb" |
91 |
++ "use": "xcb_icccm xcb_image xcb_keysyms xcb_randr xcb_render xcb_renderutil xcb_shape xcb_shm xcb_sync xcb_xfixes xcb_xinerama xcb_xkb xcb" |
92 |
+ }, |
93 |
+ "x11prefix": { |
94 |
+ "label": "X11 prefix", |
95 |
+-- |
96 |
+2.16.3 |
97 |
|
98 |
diff --git a/dev-qt/qtgui/qtgui-5.15.2-r1.ebuild b/dev-qt/qtgui/qtgui-5.15.2-r1.ebuild |
99 |
new file mode 100644 |
100 |
index 00000000000..13063686d1c |
101 |
--- /dev/null |
102 |
+++ b/dev-qt/qtgui/qtgui-5.15.2-r1.ebuild |
103 |
@@ -0,0 +1,188 @@ |
104 |
+# Copyright 1999-2021 Gentoo Authors |
105 |
+# Distributed under the terms of the GNU General Public License v2 |
106 |
+ |
107 |
+EAPI=7 |
108 |
+ |
109 |
+QT5_MODULE="qtbase" |
110 |
+inherit qt5-build |
111 |
+ |
112 |
+DESCRIPTION="The GUI module and platform plugins for the Qt5 framework" |
113 |
+SLOT=5/$(ver_cut 1-3) # bug 707658 |
114 |
+ |
115 |
+if [[ ${QT5_BUILD_TYPE} == release ]]; then |
116 |
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86" |
117 |
+fi |
118 |
+ |
119 |
+# TODO: linuxfb |
120 |
+ |
121 |
+IUSE="accessibility dbus egl eglfs evdev +gif gles2-only ibus jpeg |
122 |
+ +libinput +png tslib tuio +udev vnc vulkan wayland +X" |
123 |
+REQUIRED_USE=" |
124 |
+ || ( eglfs X ) |
125 |
+ accessibility? ( dbus X ) |
126 |
+ eglfs? ( egl ) |
127 |
+ ibus? ( dbus ) |
128 |
+ libinput? ( udev ) |
129 |
+ X? ( gles2-only? ( egl ) ) |
130 |
+" |
131 |
+ |
132 |
+COMMON_DEPEND=" |
133 |
+ dev-libs/glib:2 |
134 |
+ ~dev-qt/qtcore-${PV}:5= |
135 |
+ dev-util/gtk-update-icon-cache |
136 |
+ media-libs/fontconfig |
137 |
+ >=media-libs/freetype-2.6.1:2 |
138 |
+ >=media-libs/harfbuzz-1.6.0:= |
139 |
+ sys-libs/zlib:= |
140 |
+ dbus? ( ~dev-qt/qtdbus-${PV} ) |
141 |
+ egl? ( media-libs/mesa[egl] ) |
142 |
+ eglfs? ( |
143 |
+ media-libs/mesa[gbm] |
144 |
+ x11-libs/libdrm |
145 |
+ ) |
146 |
+ evdev? ( sys-libs/mtdev ) |
147 |
+ gles2-only? ( media-libs/mesa[gles2] ) |
148 |
+ !gles2-only? ( virtual/opengl ) |
149 |
+ jpeg? ( virtual/jpeg:0 ) |
150 |
+ libinput? ( |
151 |
+ dev-libs/libinput:= |
152 |
+ >=x11-libs/libxkbcommon-0.5.0 |
153 |
+ ) |
154 |
+ png? ( media-libs/libpng:0= ) |
155 |
+ tslib? ( >=x11-libs/tslib-1.21 ) |
156 |
+ tuio? ( ~dev-qt/qtnetwork-${PV} ) |
157 |
+ udev? ( virtual/libudev:= ) |
158 |
+ vnc? ( ~dev-qt/qtnetwork-${PV} ) |
159 |
+ vulkan? ( dev-util/vulkan-headers ) |
160 |
+ X? ( |
161 |
+ x11-libs/libICE |
162 |
+ x11-libs/libSM |
163 |
+ x11-libs/libX11 |
164 |
+ >=x11-libs/libxcb-1.12:=[xkb] |
165 |
+ >=x11-libs/libxkbcommon-0.5.0[X] |
166 |
+ x11-libs/xcb-util-image |
167 |
+ x11-libs/xcb-util-keysyms |
168 |
+ x11-libs/xcb-util-renderutil |
169 |
+ x11-libs/xcb-util-wm |
170 |
+ ) |
171 |
+" |
172 |
+DEPEND="${COMMON_DEPEND} |
173 |
+ evdev? ( sys-kernel/linux-headers ) |
174 |
+ udev? ( sys-kernel/linux-headers ) |
175 |
+" |
176 |
+RDEPEND="${COMMON_DEPEND} |
177 |
+ dev-qt/qtchooser |
178 |
+" |
179 |
+PDEPEND=" |
180 |
+ ibus? ( app-i18n/ibus ) |
181 |
+ wayland? ( ~dev-qt/qtwayland-${PV} ) |
182 |
+" |
183 |
+ |
184 |
+QT5_TARGET_SUBDIRS=( |
185 |
+ src/tools/qvkgen |
186 |
+ src/gui |
187 |
+ src/openglextensions |
188 |
+ src/platformheaders |
189 |
+ src/platformsupport |
190 |
+ src/plugins/generic |
191 |
+ src/plugins/imageformats |
192 |
+ src/plugins/platforms |
193 |
+ src/plugins/platforminputcontexts |
194 |
+) |
195 |
+ |
196 |
+QT5_GENTOO_CONFIG=( |
197 |
+ accessibility:accessibility-atspi-bridge |
198 |
+ egl:egl: |
199 |
+ eglfs:eglfs: |
200 |
+ eglfs:eglfs_egldevice: |
201 |
+ eglfs:eglfs_gbm: |
202 |
+ evdev:evdev: |
203 |
+ evdev:mtdev: |
204 |
+ :fontconfig: |
205 |
+ :system-freetype:FREETYPE |
206 |
+ !:no-freetype: |
207 |
+ !gif:no-gif: |
208 |
+ gles2-only::OPENGL_ES |
209 |
+ gles2-only:opengles2:OPENGL_ES_2 |
210 |
+ !:no-gui: |
211 |
+ :system-harfbuzz: |
212 |
+ !:no-harfbuzz: |
213 |
+ jpeg:system-jpeg:IMAGEFORMAT_JPEG |
214 |
+ !jpeg:no-jpeg: |
215 |
+ libinput |
216 |
+ libinput:xkbcommon: |
217 |
+ :opengl |
218 |
+ png:png: |
219 |
+ png:system-png:IMAGEFORMAT_PNG |
220 |
+ !png:no-png: |
221 |
+ tslib:tslib: |
222 |
+ udev:libudev: |
223 |
+ vulkan:vulkan: |
224 |
+ X:xcb: |
225 |
+ X:xcb-glx: |
226 |
+ X:xcb-plugin: |
227 |
+ X:xcb-render: |
228 |
+ X:xcb-sm: |
229 |
+ X:xcb-xlib: |
230 |
+ X:xcb-xinput: |
231 |
+) |
232 |
+ |
233 |
+QT5_GENTOO_PRIVATE_CONFIG=( |
234 |
+ :gui |
235 |
+) |
236 |
+ |
237 |
+PATCHES=( |
238 |
+ "${FILESDIR}/qt-5.12-gcc-avx2.patch" # bug 672946 |
239 |
+ "${FILESDIR}/${PN}-5.14.1-cmake-macro-backward-compat.patch" # bug 703306 |
240 |
+ "${FILESDIR}/${P}-bogus-xcb-util-dep.patch" # QTBUG-86287, QTBUG-88688 |
241 |
+) |
242 |
+ |
243 |
+src_prepare() { |
244 |
+ # don't add -O3 to CXXFLAGS, bug 549140 |
245 |
+ sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/gui/gui.pro || die |
246 |
+ |
247 |
+ # egl_x11 is activated when both egl and X are enabled |
248 |
+ use egl && QT5_GENTOO_CONFIG+=(X:egl_x11:) || QT5_GENTOO_CONFIG+=(egl:egl_x11:) |
249 |
+ |
250 |
+ qt_use_disable_config dbus dbus \ |
251 |
+ src/platformsupport/themes/genericunix/genericunix.pri |
252 |
+ |
253 |
+ qt_use_disable_config tuio tuiotouch src/plugins/generic/generic.pro |
254 |
+ |
255 |
+ qt_use_disable_mod ibus dbus \ |
256 |
+ src/plugins/platforminputcontexts/platforminputcontexts.pro |
257 |
+ |
258 |
+ use vnc || sed -i -e '/SUBDIRS += vnc/d' \ |
259 |
+ src/plugins/platforms/platforms.pro || die |
260 |
+ |
261 |
+ qt5-build_src_prepare |
262 |
+} |
263 |
+ |
264 |
+src_configure() { |
265 |
+ local myconf=( |
266 |
+ $(usex dbus -dbus-linked '') |
267 |
+ $(qt_use egl) |
268 |
+ $(qt_use eglfs) |
269 |
+ $(usex eglfs '-gbm -kms' '') |
270 |
+ $(qt_use evdev) |
271 |
+ $(qt_use evdev mtdev) |
272 |
+ -fontconfig |
273 |
+ -system-freetype |
274 |
+ $(usex gif '' -no-gif) |
275 |
+ -gui |
276 |
+ -system-harfbuzz |
277 |
+ $(qt_use jpeg libjpeg system) |
278 |
+ $(qt_use libinput) |
279 |
+ -opengl $(usex gles2-only es2 desktop) |
280 |
+ $(qt_use png libpng system) |
281 |
+ $(qt_use tslib) |
282 |
+ $(qt_use udev libudev) |
283 |
+ $(qt_use vulkan) |
284 |
+ $(qt_use X xcb) |
285 |
+ $(usex X '-xcb-xlib' '') |
286 |
+ ) |
287 |
+ if use libinput || use X; then |
288 |
+ myconf+=( -xkbcommon ) |
289 |
+ fi |
290 |
+ qt5-build_src_configure |
291 |
+} |