Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/webkit-gtk/, net-libs/webkit-gtk/files/
Date: Fri, 13 May 2022 12:27:57
Message-Id: 1652444747.8412706635b0aad1ab6affda4f37fdcc0d139d10.mattst88@gentoo
1 commit: 8412706635b0aad1ab6affda4f37fdcc0d139d10
2 Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
3 AuthorDate: Fri May 13 12:24:29 2022 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Fri May 13 12:25:47 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84127066
7
8 net-libs/webkit-gtk: Drop old versions
9
10 Bug: https://bugs.gentoo.org/837305
11 Bug: https://bugs.gentoo.org/839984
12 Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
13
14 net-libs/webkit-gtk/Manifest | 2 -
15 net-libs/webkit-gtk/files/2.34.3-jumbo-fix.patch | 70 ------
16 .../webkit-gtk/files/2.34.3-non-jumbo-fix.patch | 31 ---
17 net-libs/webkit-gtk/webkit-gtk-2.34.6.ebuild | 272 ---------------------
18 net-libs/webkit-gtk/webkit-gtk-2.36.0-r1.ebuild | 250 -------------------
19 5 files changed, 625 deletions(-)
20
21 diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
22 index 756881a72c9c..c249cb878e29 100644
23 --- a/net-libs/webkit-gtk/Manifest
24 +++ b/net-libs/webkit-gtk/Manifest
25 @@ -1,3 +1 @@
26 -DIST webkitgtk-2.34.6.tar.xz 24393340 BLAKE2B 7ab93a81f6c74ff712ddb057cbba758978b978323098071e9e35e3aa8efab4c747b8375e10a302185a82b0e89d822c89d199d2d4092c4acd9a423c1f6696c2ab SHA512 57ab25af027ae39820622743c258f3e6d0af86376f2a4c3a8ede560ca6652c98c49056c716aace56291264c18164cb60395be9779a9d12455e6a0f7d2c197343
27 -DIST webkitgtk-2.36.0.tar.xz 26900828 BLAKE2B d965c9a0f3ff03d55baba840af7fe0cb3288eaa982f1444aa14a499542d89766815954b9e62b5d39d9536074d59e42d1c0798c5e1d88974f070c239ef1d8eae5 SHA512 0926a792da295b8efa8c0fb80fbb0cb27c43bb86011317d076fbe5eef347f2bc02e8afc4c75699a5c6a14363f4abcbfa2d941fdddd6646a63c7679e2380080da
28 DIST webkitgtk-2.36.1.tar.xz 27149816 BLAKE2B 8136caed8779c23f872d2d540f3ca934e0e718699c575c893f44c63dac0f5fd59a93ad6cd299531a544719d6b5715c8d33fac3c3288983bcef51a47a2d75db59 SHA512 c0574bd8924df89c1a82905a8c0c09b4be49f75639db659b38fc3123922128a22fa6f4cf099f08ef7742ecefbbde765177a77e00fd641db3a5eb509586e96ae4
29
30 diff --git a/net-libs/webkit-gtk/files/2.34.3-jumbo-fix.patch b/net-libs/webkit-gtk/files/2.34.3-jumbo-fix.patch
31 deleted file mode 100644
32 index 97c5c0c8e4b6..000000000000
33 --- a/net-libs/webkit-gtk/files/2.34.3-jumbo-fix.patch
34 +++ /dev/null
35 @@ -1,70 +0,0 @@
36 -From b60c2e4d1770660280d97cae9e82f3040ab97229 Mon Sep 17 00:00:00 2001
37 -From: "philn@××××××.org"
38 - <philn@××××××.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
39 -Date: Sat, 11 Sep 2021 11:34:42 +0000
40 -Subject: [PATCH] [GLIB] MediaSession is not enabled
41 - https://bugs.webkit.org/show_bug.cgi?id=217991 <rdar://problem/70740119>
42 -
43 -leio: Extracted to include only the side-effect of fixing unity builds on
44 -some machine configurations.
45 -Thanks-To gen2dev
46 ----
47 - Source/WebCore/platform/PlatformScreen.h | 6 ++++++
48 - Source/WebCore/platform/graphics/ImageFrame.h | 6 ++++++
49 - Source/WebCore/platform/graphics/ImageOrientation.h | 6 ++++++
50 - 3 files changed, 18 insertions(+)
51 -
52 -diff --git a/Source/WebCore/platform/PlatformScreen.h b/Source/WebCore/platform/PlatformScreen.h
53 -index d3f12a6538b8..d47d193e8bee 100644
54 ---- a/Source/WebCore/platform/PlatformScreen.h
55 -+++ b/Source/WebCore/platform/PlatformScreen.h
56 -@@ -48,6 +48,12 @@ OBJC_CLASS UIScreen;
57 - typedef struct CGColorSpace *CGColorSpaceRef;
58 - #endif
59 -
60 -+// X11 headers define a bunch of macros with common terms, interfering with WebCore and WTF enum values.
61 -+// As a workaround, we explicitly undef them here.
62 -+#if defined(None)
63 -+#undef None
64 -+#endif
65 -+
66 - namespace WebCore {
67 -
68 - class DestinationColorSpace;
69 -diff --git a/Source/WebCore/platform/graphics/ImageFrame.h b/Source/WebCore/platform/graphics/ImageFrame.h
70 -index 9843aac40eb4..92e1d4486c5f 100644
71 ---- a/Source/WebCore/platform/graphics/ImageFrame.h
72 -+++ b/Source/WebCore/platform/graphics/ImageFrame.h
73 -@@ -33,6 +33,12 @@
74 - #include "NativeImage.h"
75 - #include <wtf/Seconds.h>
76 -
77 -+// X11 headers define a bunch of macros with common terms, interfering with WebCore and WTF enum values.
78 -+// As a workaround, we explicitly undef them here.
79 -+#if defined(None)
80 -+#undef None
81 -+#endif
82 -+
83 - namespace WebCore {
84 -
85 - class ImageFrame {
86 -diff --git a/Source/WebCore/platform/graphics/ImageOrientation.h b/Source/WebCore/platform/graphics/ImageOrientation.h
87 -index d990a3dc555f..5de271e52352 100644
88 ---- a/Source/WebCore/platform/graphics/ImageOrientation.h
89 -+++ b/Source/WebCore/platform/graphics/ImageOrientation.h
90 -@@ -30,6 +30,12 @@
91 - #include "FloatSize.h"
92 - #include <wtf/EnumTraits.h>
93 -
94 -+// X11 headers define a bunch of macros with common terms, interfering with WebCore and WTF enum values.
95 -+// As a workaround, we explicitly undef them here.
96 -+#if defined(None)
97 -+#undef None
98 -+#endif
99 -+
100 - namespace WebCore {
101 -
102 - struct ImageOrientation {
103 ---
104 -2.32.0
105 -
106
107 diff --git a/net-libs/webkit-gtk/files/2.34.3-non-jumbo-fix.patch b/net-libs/webkit-gtk/files/2.34.3-non-jumbo-fix.patch
108 deleted file mode 100644
109 index 74790d9f6cef..000000000000
110 --- a/net-libs/webkit-gtk/files/2.34.3-non-jumbo-fix.patch
111 +++ /dev/null
112 @@ -1,31 +0,0 @@
113 -From f8efe9f2d128a897c0b2a054bf05200cb842d9b2 Mon Sep 17 00:00:00 2001
114 -From: "don.olmstead@××××.com"
115 - <don.olmstead@××××.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
116 -Date: Sun, 3 Oct 2021 23:00:17 +0000
117 -Subject: [PATCH] Non-unified build fixes, early October 2021 edition
118 - https://bugs.webkit.org/show_bug.cgi?id=231143
119 -
120 -Unreviewed non-unified build fixes.
121 ----
122 -leio: Trimmed to what's relevant to webkitgtk-2.34 branch
123 -gyakovlev: removed TextTrackClient.h include addition
124 -
125 - Source/WebCore/inspector/agents/InspectorCanvasAgent.h | 2 ++
126 - 1 files changed, 2 insertions(+)
127 -
128 -diff --git a/Source/WebCore/inspector/agents/InspectorCanvasAgent.h b/Source/WebCore/inspector/agents/InspectorCanvasAgent.h
129 -index 7f1012aa2a24..4c7c23995276 100644
130 ---- a/Source/WebCore/inspector/agents/InspectorCanvasAgent.h
131 -+++ b/Source/WebCore/inspector/agents/InspectorCanvasAgent.h
132 -@@ -44,6 +44,8 @@ class InjectedScriptManager;
133 - namespace WebCore {
134 -
135 - class CanvasRenderingContext;
136 -+class Frame;
137 -+
138 - #if ENABLE(WEBGL)
139 - class InspectorShaderProgram;
140 - class WebGLProgram;
141 ---
142 -2.32.0
143 -
144
145 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.34.6.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.34.6.ebuild
146 deleted file mode 100644
147 index 6c420cdeac2f..000000000000
148 --- a/net-libs/webkit-gtk/webkit-gtk-2.34.6.ebuild
149 +++ /dev/null
150 @@ -1,272 +0,0 @@
151 -# Copyright 1999-2022 Gentoo Authors
152 -# Distributed under the terms of the GNU General Public License v2
153 -
154 -EAPI=7
155 -PYTHON_REQ_USE="xml(+)"
156 -PYTHON_COMPAT=( python3_{8..10} )
157 -USE_RUBY="ruby26 ruby27 ruby30"
158 -
159 -inherit check-reqs cmake flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
160 -
161 -MY_P="webkitgtk-${PV}"
162 -DESCRIPTION="Open source web browser engine"
163 -HOMEPAGE="https://www.webkitgtk.org"
164 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
165 -
166 -LICENSE="LGPL-2+ BSD"
167 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
168 -KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86"
169 -
170 -IUSE="aqua avif +egl examples gamepad +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build lcms libnotify seccomp spell systemd wayland +X"
171 -
172 -# gstreamer with opengl/gles2 needs egl
173 -REQUIRED_USE="
174 - gles2-only? ( egl )
175 - gstreamer? ( egl )
176 - wayland? ( egl )
177 - || ( aqua wayland X )
178 -"
179 -
180 -# Tests fail to link for inexplicable reasons
181 -# https://bugs.webkit.org/show_bug.cgi?id=148210
182 -RESTRICT="test"
183 -
184 -# Aqua support in gtk3 is untested
185 -# Dependencies found at Source/cmake/OptionsGTK.cmake
186 -# Various compile-time optionals for gtk+-3.22.0 - ensure it
187 -# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
188 -# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
189 -# TODO: gst-plugins-base[X] is only needed when build configuration ends up with GLX set, but that's a bit automagic too to fix
190 -RDEPEND="
191 - >=x11-libs/cairo-1.16.0:=[X?]
192 - >=media-libs/fontconfig-2.13.0:1.0
193 - >=media-libs/freetype-2.9.0:2
194 - >=dev-libs/libgcrypt-1.7.0:0=
195 - >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
196 - >=media-libs/harfbuzz-1.4.2:=[icu(+)]
197 - >=dev-libs/icu-61.2:=
198 - virtual/jpeg:0=
199 - >=net-libs/libsoup-2.54:2.4[introspection?]
200 - >=dev-libs/libxml2-2.8.0:2
201 - >=media-libs/libpng-1.4:0=
202 - dev-db/sqlite:3=
203 - sys-libs/zlib:0
204 - >=dev-libs/atk-2.16.0
205 - media-libs/libwebp:=
206 -
207 - >=dev-libs/glib-2.67.1:2
208 - >=dev-libs/libxslt-1.1.7
209 - media-libs/woff2
210 - gnome-keyring? ( app-crypt/libsecret )
211 - introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
212 - dev-libs/libtasn1:=
213 - spell? ( >=app-text/enchant-0.22:2 )
214 - gstreamer? (
215 - >=media-libs/gstreamer-1.14:1.0
216 - >=media-libs/gst-plugins-base-1.14:1.0[egl?,X?]
217 - gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
218 - !gles2-only? ( media-libs/gst-plugins-base:1.0[opengl] )
219 - >=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
220 - >=media-libs/gst-plugins-bad-1.14:1.0 )
221 -
222 - X? (
223 - x11-libs/libX11
224 - x11-libs/libXcomposite
225 - x11-libs/libXdamage
226 - x11-libs/libXrender
227 - x11-libs/libXt )
228 -
229 - libnotify? ( x11-libs/libnotify )
230 - dev-libs/hyphen
231 - jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
232 - avif? ( >=media-libs/libavif-0.9.0:= )
233 - lcms? ( media-libs/lcms:2 )
234 -
235 - egl? ( media-libs/mesa[egl(+)] )
236 - gles2-only? ( media-libs/mesa[gles2] )
237 - !gles2-only? ( virtual/opengl )
238 - wayland? (
239 - dev-libs/wayland
240 - >=dev-libs/wayland-protocols-1.12
241 - >=gui-libs/libwpe-1.5.0:1.0
242 - >=gui-libs/wpebackend-fdo-1.7.0:1.0
243 - )
244 -
245 - seccomp? (
246 - >=sys-apps/bubblewrap-0.3.1
247 - sys-libs/libseccomp
248 - sys-apps/xdg-dbus-proxy
249 - )
250 -
251 - systemd? ( sys-apps/systemd:= )
252 - gamepad? ( >=dev-libs/libmanette-0.2.4 )
253 -"
254 -DEPEND="${RDEPEND}"
255 -# paxctl needed for bug #407085
256 -# Need real bison, not yacc
257 -BDEPEND="
258 - ${PYTHON_DEPS}
259 - ${RUBY_DEPS}
260 - >=app-accessibility/at-spi2-core-2.5.3
261 - dev-util/glib-utils
262 - >=dev-util/gperf-3.0.1
263 - >=sys-devel/bison-2.4.3
264 - || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
265 - sys-devel/gettext
266 - virtual/pkgconfig
267 -
268 - >=dev-lang/perl-5.10
269 - virtual/perl-Data-Dumper
270 - virtual/perl-Carp
271 - virtual/perl-JSON-PP
272 -
273 - gtk-doc? ( >=dev-util/gtk-doc-1.32 )
274 - geolocation? ( dev-util/gdbus-codegen )
275 - >=dev-util/cmake-3.10
276 -"
277 -# test? (
278 -# dev-python/pygobject:3[python_targets_python2_7]
279 -# x11-themes/hicolor-icon-theme
280 -# jit? ( sys-apps/paxctl ) )
281 -RDEPEND="${RDEPEND}
282 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
283 -"
284 -
285 -S="${WORKDIR}/${MY_P}"
286 -
287 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
288 -
289 -pkg_pretend() {
290 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
291 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
292 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
293 - check-reqs_pkg_pretend
294 - fi
295 -
296 - if ! test-flag-CXX -std=c++17 ; then
297 - die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
298 - fi
299 - fi
300 -}
301 -
302 -pkg_setup() {
303 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
304 - check-reqs_pkg_setup
305 - fi
306 -
307 - python-any-r1_pkg_setup
308 -}
309 -
310 -src_prepare() {
311 - eapply "${FILESDIR}"/2.34.3-non-jumbo-fix.patch
312 - eapply "${FILESDIR}"/2.34.3-jumbo-fix.patch # bug 830638
313 - cmake_src_prepare
314 - gnome2_src_prepare
315 -}
316 -
317 -src_configure() {
318 - # Respect CC, otherwise fails on prefix #395875
319 - tc-export CC
320 -
321 - # It does not compile on alpha without this in LDFLAGS
322 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
323 - use alpha && append-ldflags "-Wl,--no-relax"
324 -
325 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
326 - use ia64 && append-ldflags "-Wl,--no-as-needed"
327 -
328 - # Sigbuses on SPARC with mcpu and co., bug #???
329 - use sparc && filter-flags "-mvis"
330 -
331 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
332 - use ppc64 && append-flags "-mminimal-toc"
333 -
334 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
335 - # --no-keep-memory doesn't work on ia64, bug #502492
336 - if ! use ia64; then
337 - append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory")
338 - fi
339 -
340 - # Ruby situation is a bit complicated. See bug 513888
341 - local rubyimpl
342 - local ruby_interpreter=""
343 - for rubyimpl in ${USE_RUBY}; do
344 - if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
345 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
346 - fi
347 - done
348 - # This will rarely occur. Only a couple of corner cases could lead us to
349 - # that failure. See bug 513888
350 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
351 -
352 - # TODO: Check Web Audio support
353 - # should somehow let user select between them?
354 -
355 - local mycmakeargs=(
356 - ${ruby_interpreter}
357 - $(cmake_use_find_package gles2-only OpenGLES2)
358 - $(cmake_use_find_package egl EGL)
359 - $(cmake_use_find_package !gles2-only OpenGL)
360 - -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
361 - -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
362 - -DPORT=GTK
363 - # Source/cmake/WebKitFeatures.cmake
364 - -DENABLE_API_TESTS=$(usex test)
365 - -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
366 - -DENABLE_GAMEPAD=$(usex gamepad)
367 - -DENABLE_GEOLOCATION=$(usex geolocation) # Runtime optional (talks over dbus service)
368 - -DENABLE_MINIBROWSER=$(usex examples)
369 - -DENABLE_SPELLCHECK=$(usex spell)
370 - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
371 - -DENABLE_VIDEO=$(usex gstreamer)
372 - -DENABLE_WEBGL=ON
373 - # Supported only under ANGLE and default off PRIVATE option still@2.34.1, see
374 - # https://bugs.webkit.org/show_bug.cgi?id=225563
375 - # https://bugs.webkit.org/show_bug.cgi?id=224888
376 - -DENABLE_WEBGL2=OFF
377 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
378 - # Source/cmake/OptionsGTK.cmake
379 - -DENABLE_GLES2=$(usex gles2-only)
380 - -DENABLE_GTKDOC=$(usex gtk-doc)
381 - -DENABLE_INTROSPECTION=$(usex introspection)
382 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
383 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
384 - -DENABLE_X11_TARGET=$(usex X)
385 - -DUSE_AVIF=$(usex avif)
386 - -DUSE_GTK4=OFF
387 - -DUSE_LCMS=$(usex lcms)
388 - -DUSE_LIBHYPHEN=ON
389 - -DUSE_LIBNOTIFY=$(usex libnotify)
390 - -DUSE_LIBSECRET=$(usex gnome-keyring)
391 - -DUSE_OPENGL_OR_ES=ON
392 - -DUSE_OPENJPEG=$(usex jpeg2k)
393 - -DUSE_SOUP2=ON
394 - -DUSE_SYSTEMD=$(usex systemd) # Whether to enable journald logging
395 - -DUSE_WOFF2=ON
396 - -DUSE_WPE_RENDERER=$(usex wayland) # WPE renderer is used to implement accelerated compositing under wayland
397 - )
398 -
399 - # https://bugs.gentoo.org/761238
400 - append-cppflags -DNDEBUG
401 -
402 - WK_USE_CCACHE=NO cmake_src_configure
403 -}
404 -
405 -src_compile() {
406 - cmake_src_compile
407 -}
408 -
409 -src_test() {
410 - # Prevents test failures on PaX systems
411 - pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
412 -
413 - cmake_src_test
414 -}
415 -
416 -src_install() {
417 - cmake_src_install
418 -
419 - # Prevents crashes on PaX systems, bug #522808
420 - pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/jsc" "${ED}/usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
421 - pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
422 -}
423
424 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.36.0-r1.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.36.0-r1.ebuild
425 deleted file mode 100644
426 index d7f285d8177b..000000000000
427 --- a/net-libs/webkit-gtk/webkit-gtk-2.36.0-r1.ebuild
428 +++ /dev/null
429 @@ -1,250 +0,0 @@
430 -# Copyright 1999-2022 Gentoo Authors
431 -# Distributed under the terms of the GNU General Public License v2
432 -
433 -EAPI=7
434 -PYTHON_REQ_USE="xml(+)"
435 -PYTHON_COMPAT=( python3_{8..10} )
436 -USE_RUBY="ruby27 ruby30 ruby31"
437 -
438 -inherit check-reqs flag-o-matic gnome2 python-any-r1 ruby-single toolchain-funcs cmake
439 -
440 -MY_P="webkitgtk-${PV}"
441 -DESCRIPTION="Open source web browser engine"
442 -HOMEPAGE="https://www.webkitgtk.org"
443 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
444 -
445 -LICENSE="LGPL-2+ BSD"
446 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
447 -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
448 -
449 -IUSE="aqua avif +egl examples gamepad +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build lcms libnotify seccomp spell systemd test wayland X"
450 -
451 -# gstreamer with opengl/gles2 needs egl
452 -REQUIRED_USE="
453 - gles2-only? ( egl )
454 - gstreamer? ( egl )
455 - wayland? ( egl )
456 - || ( aqua wayland X )
457 -"
458 -
459 -# Tests fail to link for inexplicable reasons
460 -# https://bugs.webkit.org/show_bug.cgi?id=148210
461 -RESTRICT="test"
462 -
463 -# Dependencies found at Source/cmake/OptionsGTK.cmake
464 -# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
465 -# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
466 -# TODO: gst-plugins-base[X] is only needed when build configuration ends up with GLX set, but that's a bit automagic too to fix
467 -RDEPEND="
468 - >=x11-libs/cairo-1.16.0:=[X?]
469 - >=media-libs/fontconfig-2.13.0:1.0
470 - >=media-libs/freetype-2.9.0:2
471 - >=dev-libs/libgcrypt-1.7.0:0=
472 - >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
473 - >=media-libs/harfbuzz-1.4.2:=[icu(+)]
474 - >=dev-libs/icu-61.2:=
475 - virtual/jpeg:0=
476 - >=net-libs/libsoup-2.54:2.4[introspection?]
477 - >=dev-libs/libxml2-2.8.0:2
478 - >=media-libs/libpng-1.4:0=
479 - dev-db/sqlite:3=
480 - sys-libs/zlib:0
481 - >=dev-libs/atk-2.16.0
482 - media-libs/libwebp:=
483 -
484 - >=dev-libs/glib-2.67.1:2
485 - >=dev-libs/libxslt-1.1.7
486 - media-libs/woff2
487 - gnome-keyring? ( app-crypt/libsecret )
488 - introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
489 - dev-libs/libtasn1:=
490 - spell? ( >=app-text/enchant-0.22:2 )
491 - gstreamer? (
492 - >=media-libs/gstreamer-1.14:1.0
493 - >=media-libs/gst-plugins-base-1.14:1.0[egl?,X?]
494 - gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
495 - !gles2-only? ( media-libs/gst-plugins-base:1.0[opengl] )
496 - >=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
497 - >=media-libs/gst-plugins-bad-1.14:1.0
498 - )
499 -
500 - X? (
501 - x11-libs/libX11
502 - x11-libs/libXcomposite
503 - x11-libs/libXdamage
504 - x11-libs/libXrender
505 - x11-libs/libXt
506 - )
507 -
508 - libnotify? ( x11-libs/libnotify )
509 - dev-libs/hyphen
510 - jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
511 - avif? ( >=media-libs/libavif-0.9.0:= )
512 - lcms? ( media-libs/lcms:2 )
513 -
514 - egl? ( media-libs/mesa[egl(+)] )
515 - gles2-only? ( media-libs/mesa[gles2] )
516 - !gles2-only? ( virtual/opengl )
517 - wayland? (
518 - dev-libs/wayland
519 - >=dev-libs/wayland-protocols-1.12
520 - >=gui-libs/libwpe-1.5.0:1.0
521 - >=gui-libs/wpebackend-fdo-1.7.0:1.0
522 - )
523 -
524 - seccomp? (
525 - >=sys-apps/bubblewrap-0.3.1
526 - sys-libs/libseccomp
527 - sys-apps/xdg-dbus-proxy
528 - )
529 -
530 - systemd? ( sys-apps/systemd:= )
531 - gamepad? ( >=dev-libs/libmanette-0.2.4 )
532 -"
533 -DEPEND="${RDEPEND}"
534 -# Need real bison, not yacc
535 -BDEPEND="
536 - ${PYTHON_DEPS}
537 - ${RUBY_DEPS}
538 - >=app-accessibility/at-spi2-core-2.5.3
539 - dev-util/glib-utils
540 - >=dev-util/gperf-3.0.1
541 - >=sys-devel/bison-2.4.3
542 - || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
543 - sys-devel/gettext
544 - virtual/pkgconfig
545 -
546 - >=dev-lang/perl-5.10
547 - virtual/perl-Data-Dumper
548 - virtual/perl-Carp
549 - virtual/perl-JSON-PP
550 -
551 - gtk-doc? ( >=dev-util/gtk-doc-1.32 )
552 - geolocation? ( dev-util/gdbus-codegen )
553 - >=dev-util/cmake-3.10
554 -"
555 -# test? (
556 -# dev-python/pygobject:3[python_targets_python2_7]
557 -# x11-themes/hicolor-icon-theme
558 -# )
559 -RDEPEND="${RDEPEND}
560 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
561 -"
562 -
563 -S="${WORKDIR}/${MY_P}"
564 -
565 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
566 -
567 -pkg_pretend() {
568 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
569 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
570 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
571 - check-reqs_pkg_pretend
572 - fi
573 -
574 - if ! test-flag-CXX -std=c++17 ; then
575 - die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
576 - fi
577 - fi
578 -}
579 -
580 -pkg_setup() {
581 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
582 - check-reqs_pkg_setup
583 - fi
584 -
585 - python-any-r1_pkg_setup
586 -}
587 -
588 -src_prepare() {
589 - cmake_src_prepare
590 - gnome2_src_prepare
591 -}
592 -
593 -src_configure() {
594 - # Respect CC, otherwise fails on prefix #395875
595 - tc-export CC
596 -
597 - # It does not compile on alpha without this in LDFLAGS
598 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
599 - use alpha && append-ldflags "-Wl,--no-relax"
600 -
601 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
602 - use ia64 && append-ldflags "-Wl,--no-as-needed"
603 -
604 - # Sigbuses on SPARC with mcpu and co., bug #???
605 - use sparc && filter-flags "-mvis"
606 -
607 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
608 - use ppc64 && append-flags "-mminimal-toc"
609 -
610 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
611 - # --no-keep-memory doesn't work on ia64, bug #502492
612 - if ! use ia64; then
613 - append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory")
614 - fi
615 -
616 - # Ruby situation is a bit complicated. See bug 513888
617 - local rubyimpl
618 - local ruby_interpreter=""
619 - for rubyimpl in ${USE_RUBY}; do
620 - if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
621 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
622 - fi
623 - done
624 - # This will rarely occur. Only a couple of corner cases could lead us to
625 - # that failure. See bug 513888
626 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
627 -
628 - # TODO: Check Web Audio support
629 - # should somehow let user select between them?
630 -
631 - local mycmakeargs=(
632 - ${ruby_interpreter}
633 - $(cmake_use_find_package gles2-only OpenGLES2)
634 - $(cmake_use_find_package egl EGL)
635 - $(cmake_use_find_package !gles2-only OpenGL)
636 - -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
637 - -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
638 - -DPORT=GTK
639 - # Source/cmake/WebKitFeatures.cmake
640 - -DENABLE_API_TESTS=$(usex test)
641 - -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
642 - -DENABLE_GAMEPAD=$(usex gamepad)
643 - -DENABLE_GEOLOCATION=$(usex geolocation) # Runtime optional (talks over dbus service)
644 - -DENABLE_MINIBROWSER=$(usex examples)
645 - -DENABLE_SPELLCHECK=$(usex spell)
646 - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
647 - -DENABLE_VIDEO=$(usex gstreamer)
648 - -DENABLE_WEBGL=ON
649 - # Supported only under ANGLE
650 - -DENABLE_WEBGL2=OFF
651 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
652 - # Source/cmake/OptionsGTK.cmake
653 - -DENABLE_GLES2=$(usex gles2-only)
654 - -DENABLE_GTKDOC=$(usex gtk-doc)
655 - -DENABLE_INTROSPECTION=$(usex introspection)
656 - -DENABLE_JOURNALD_LOG=$(usex systemd)
657 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
658 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
659 - -DENABLE_X11_TARGET=$(usex X)
660 - -DUSE_ANGLE_WEBGL=OFF
661 - -DUSE_AVIF=$(usex avif)
662 - -DUSE_GTK4=OFF
663 - -DUSE_JPEGXL=OFF
664 - -DUSE_LCMS=$(usex lcms)
665 - -DUSE_LIBHYPHEN=ON
666 - -DUSE_LIBNOTIFY=$(usex libnotify)
667 - -DUSE_LIBSECRET=$(usex gnome-keyring)
668 - -DUSE_OPENGL_OR_ES=ON
669 - -DUSE_OPENJPEG=$(usex jpeg2k)
670 - -DUSE_SOUP2=ON
671 - -DUSE_WOFF2=ON
672 - -DUSE_WPE_RENDERER=$(usex wayland) # WPE renderer is used to implement accelerated compositing under wayland
673 - )
674 -
675 - # https://bugs.gentoo.org/761238
676 - append-cppflags -DNDEBUG
677 -
678 - WK_USE_CCACHE=NO cmake_src_configure
679 -}