Gentoo Archives: gentoo-commits

From: Jory Pratt <anarchy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/musl:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
Date: Tue, 23 Feb 2021 15:23:15
Message-Id: 1614093699.4d9280a2a53f65cab4f96ec88c716e6d1836a012.anarchy@gentoo
1 commit: 4d9280a2a53f65cab4f96ec88c716e6d1836a012
2 Author: Petr Vaněk <arkamar <AT> atlas <DOT> cz>
3 AuthorDate: Mon Feb 22 21:48:41 2021 +0000
4 Commit: Jory Pratt <anarchy <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 23 15:21:39 2021 +0000
6 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=4d9280a2
7
8 net-libs/webkit-gtk: security cleanup
9
10 Closes: https://github.com/gentoo/musl/pull/380
11
12 Package-Manager: Portage-3.0.13, Repoman-3.0.2
13 Signed-off-by: Petr Vaněk <arkamar <AT> atlas.cz>
14 Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org>
15
16 net-libs/webkit-gtk/Manifest | 2 -
17 net-libs/webkit-gtk/files/2.30.3-icu68.patch | 179 ----------------
18 net-libs/webkit-gtk/webkit-gtk-2.30.3.ebuild | 306 --------------------------
19 net-libs/webkit-gtk/webkit-gtk-2.30.4.ebuild | 309 ---------------------------
20 4 files changed, 796 deletions(-)
21
22 diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
23 index e4f447d..58a92b6 100644
24 --- a/net-libs/webkit-gtk/Manifest
25 +++ b/net-libs/webkit-gtk/Manifest
26 @@ -1,3 +1 @@
27 -DIST webkitgtk-2.30.3.tar.xz 22311704 BLAKE2B d5a8ba1fe7fbbcd3d8504ad98650ec685a41ddaa43e1392172cf7840100157a283e4ccf4cf62f2f581deffd8d860cf61b43fe59178b02306efb88c8e1a803520 SHA512 cbb8298bdb791eb60a214c36ec9ced398fc5c07f580d60d001483ca3f616a309394013239affd16f6eefd8c2fb178bbf5b566ab4480fe3349e1856c80ec78ddf
28 -DIST webkitgtk-2.30.4.tar.xz 22310784 BLAKE2B 648f03c929212b57f3197b0540e002dca5b277c44e9e73612b20ac1861747585aeb835ce25e98d5073d67a5ab5fc7c13985d280e6e658ac22619233db911ae97 SHA512 dff9e3bd17de8481d940a48b0697458a0c1c71a987f4d50ee7bc46b0203ed6802a9ec82c3a21ea9b7211ab900fa75b89b2a05b0ca6aed319ad66ec317d02c571
29 DIST webkitgtk-2.30.5.tar.xz 22311832 BLAKE2B b00e889d59883e62bcf179df8a766e20a7cd7ee2db462c4eb4279686aac5ea1cad7903189b14031088ab23b8dfd89c1f09f90e2deb5d208281d55c262cc0cb3c SHA512 406fc767a806bb2af446c73e7079720a4d82d592a95a20f30f468c31cdc2efd25e082a5ecfbe00c27f62236e1e56a729c48191451d130188419967975378235d
30
31 diff --git a/net-libs/webkit-gtk/files/2.30.3-icu68.patch b/net-libs/webkit-gtk/files/2.30.3-icu68.patch
32 deleted file mode 100644
33 index 33116fe..0000000
34 --- a/net-libs/webkit-gtk/files/2.30.3-icu68.patch
35 +++ /dev/null
36 @@ -1,179 +0,0 @@
37 -From a5f1691b5b885dd228018740803075e7b6059e4b Mon Sep 17 00:00:00 2001
38 -From: "stephan.szabo@××××.com"
39 - <stephan.szabo@××××.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
40 -Date: Tue, 3 Nov 2020 20:06:15 +0000
41 -Subject: [PATCH] [WinCairo/PlayStation] ICU 68.1 no longer exposes FALSE and
42 - TRUE macros by default https://bugs.webkit.org/show_bug.cgi?id=218522
43 -
44 -Reviewed by Don Olmstead.
45 -
46 -Source/WebCore:
47 -
48 -* platform/text/TextCodecICU.cpp: Replace use of TRUE with true
49 -
50 -Source/WebKit:
51 -
52 -* UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp: Replace FALSE with false
53 -
54 -Source/WTF:
55 -
56 -Replace uses of FALSE and TRUE with false and true.
57 -
58 -* wtf/text/icu/UTextProvider.h:
59 -* wtf/text/icu/UTextProviderLatin1.cpp:
60 -* wtf/text/icu/UTextProviderUTF16.cpp:
61 -
62 -
63 -git-svn-id: https://svn.webkit.org/repository/webkit/trunk@269325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
64 ----
65 - Source/WTF/wtf/text/icu/UTextProvider.h | 8 ++++----
66 - Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp | 14 +++++++-------
67 - Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp | 4 ++--
68 - Source/WebCore/platform/text/TextCodecICU.cpp | 2 +-
69 - .../DrawingAreaProxyCoordinatedGraphics.cpp | 2 +-
70 - 6 files changed, 15 insertions(+), 15 deletions(-)
71 -
72 -diff --git a/Source/WTF/wtf/text/icu/UTextProvider.h b/Source/WTF/wtf/text/icu/UTextProvider.h
73 -index c8f28d6ed3da..3c6fbeab6a5c 100644
74 ---- a/Source/WTF/wtf/text/icu/UTextProvider.h
75 -+++ b/Source/WTF/wtf/text/icu/UTextProvider.h
76 -@@ -79,12 +79,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text, int64_t nativeIndex, int
77 - // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
78 - ASSERT(offset < std::numeric_limits<int32_t>::max());
79 - text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
80 -- isAccessible = TRUE;
81 -+ isAccessible = true;
82 - return true;
83 - }
84 - if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) {
85 - text->chunkOffset = text->chunkLength;
86 -- isAccessible = FALSE;
87 -+ isAccessible = false;
88 - return true;
89 - }
90 - } else {
91 -@@ -93,12 +93,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text, int64_t nativeIndex, int
92 - // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
93 - ASSERT(offset < std::numeric_limits<int32_t>::max());
94 - text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
95 -- isAccessible = TRUE;
96 -+ isAccessible = true;
97 - return true;
98 - }
99 - if (nativeIndex <= 0 && !text->chunkNativeStart) {
100 - text->chunkOffset = 0;
101 -- isAccessible = FALSE;
102 -+ isAccessible = false;
103 - return true;
104 - }
105 - }
106 -diff --git a/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp b/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
107 -index 0a646b7f390d..49980f95ba79 100644
108 ---- a/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
109 -+++ b/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
110 -@@ -100,23 +100,23 @@ static UBool uTextLatin1Access(UText* uText, int64_t index, UBool forward)
111 - if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) {
112 - // Already inside the buffer. Set the new offset.
113 - uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
114 -- return TRUE;
115 -+ return true;
116 - }
117 - if (index >= length && uText->chunkNativeLimit == length) {
118 - // Off the end of the buffer, but we can't get it.
119 - uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
120 -- return FALSE;
121 -+ return false;
122 - }
123 - } else {
124 - if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) {
125 - // Already inside the buffer. Set the new offset.
126 - uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
127 -- return TRUE;
128 -+ return true;
129 - }
130 - if (!index && !uText->chunkNativeStart) {
131 - // Already at the beginning; can't go any farther.
132 - uText->chunkOffset = 0;
133 -- return FALSE;
134 -+ return false;
135 - }
136 - }
137 -
138 -@@ -144,7 +144,7 @@ static UBool uTextLatin1Access(UText* uText, int64_t index, UBool forward)
139 -
140 - uText->nativeIndexingLimit = uText->chunkLength;
141 -
142 -- return TRUE;
143 -+ return true;
144 - }
145 -
146 - static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status)
147 -@@ -337,7 +337,7 @@ static int64_t uTextLatin1ContextAwareNativeLength(UText* text)
148 - static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
149 - {
150 - if (!text->context)
151 -- return FALSE;
152 -+ return false;
153 - int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text);
154 - UBool isAccessible;
155 - if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
156 -@@ -357,7 +357,7 @@ static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBo
157 - ASSERT(newContext == UTextProviderContext::PriorContext);
158 - textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
159 - }
160 -- return TRUE;
161 -+ return true;
162 - }
163 -
164 - static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
165 -diff --git a/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp b/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
166 -index 69c8d091bd62..9c3fa709200a 100644
167 ---- a/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
168 -+++ b/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
169 -@@ -126,7 +126,7 @@ static inline int64_t uTextUTF16ContextAwareNativeLength(UText* text)
170 - static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
171 - {
172 - if (!text->context)
173 -- return FALSE;
174 -+ return false;
175 - int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text);
176 - UBool isAccessible;
177 - if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
178 -@@ -146,7 +146,7 @@ static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBoo
179 - ASSERT(newContext == UTextProviderContext::PriorContext);
180 - textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
181 - }
182 -- return TRUE;
183 -+ return true;
184 - }
185 -
186 - static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
187 -diff --git a/Source/WebCore/platform/text/TextCodecICU.cpp b/Source/WebCore/platform/text/TextCodecICU.cpp
188 -index 19b41eb7125f..2f7d1930b8d7 100644
189 ---- a/Source/WebCore/platform/text/TextCodecICU.cpp
190 -+++ b/Source/WebCore/platform/text/TextCodecICU.cpp
191 -@@ -194,7 +194,7 @@ void TextCodecICU::createICUConverter() const
192 - UErrorCode error = U_ZERO_ERROR;
193 - m_converter = ICUConverterPtr { ucnv_open(m_canonicalConverterName, &error), ucnv_close };
194 - if (m_converter)
195 -- ucnv_setFallback(m_converter.get(), TRUE);
196 -+ ucnv_setFallback(m_converter.get(), true);
197 - }
198 -
199 - int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& error)
200 -diff --git a/Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp b/Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
201 -index 61e3f6050d7f..5a51b9ec1d68 100644
202 ---- a/Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
203 -+++ b/Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
204 -@@ -402,7 +402,7 @@ DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::~DrawingMonitor()
205 - int DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::webViewDrawCallback(DrawingAreaProxyCoordinatedGraphics::DrawingMonitor* monitor)
206 - {
207 - monitor->didDraw();
208 -- return FALSE;
209 -+ return false;
210 - }
211 -
212 - void DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::start(WTF::Function<void(CallbackBase::Error)>&& callback)
213 ---
214 -2.20.1
215 -
216
217 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.30.3.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.30.3.ebuild
218 deleted file mode 100644
219 index 2b35697..0000000
220 --- a/net-libs/webkit-gtk/webkit-gtk-2.30.3.ebuild
221 +++ /dev/null
222 @@ -1,306 +0,0 @@
223 -# Copyright 1999-2020 Gentoo Authors
224 -# Distributed under the terms of the GNU General Public License v2
225 -
226 -EAPI=6
227 -CMAKE_MAKEFILE_GENERATOR="ninja"
228 -PYTHON_COMPAT=( python3_{6..8} )
229 -USE_RUBY="ruby24 ruby25 ruby26 ruby27"
230 -CMAKE_MIN_VERSION=3.10
231 -
232 -inherit check-reqs cmake-utils flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
233 -
234 -MY_P="webkitgtk-${PV}"
235 -DESCRIPTION="Open source web browser engine"
236 -HOMEPAGE="https://www.webkitgtk.org"
237 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
238 -
239 -LICENSE="LGPL-2+ BSD"
240 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
241 -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
242 -
243 -IUSE="aqua +egl gamepad +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build libnotify +opengl seccomp spell systemd wayland +X"
244 -
245 -# gstreamer with opengl/gles2 needs egl
246 -REQUIRED_USE="
247 - gles2-only? ( egl !opengl )
248 - gstreamer? ( opengl? ( egl ) )
249 - wayland? ( egl )
250 - || ( aqua wayland X )
251 -"
252 -
253 -# Tests fail to link for inexplicable reasons
254 -# https://bugs.webkit.org/show_bug.cgi?id=148210
255 -RESTRICT="test"
256 -
257 -# Aqua support in gtk3 is untested
258 -# Dependencies found at Source/cmake/OptionsGTK.cmake
259 -# Various compile-time optionals for gtk+-3.22.0 - ensure it
260 -# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
261 -# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
262 -wpe_depend="
263 - >=gui-libs/libwpe-1.5.0:1.0
264 - >=gui-libs/wpebackend-fdo-1.7.0:1.0
265 -"
266 -# 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
267 -RDEPEND="
268 - >=x11-libs/cairo-1.16.0:=[X?]
269 - >=media-libs/fontconfig-2.13.0:1.0
270 - >=media-libs/freetype-2.9.0:2
271 - >=dev-libs/libgcrypt-1.7.0:0=
272 - >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
273 - >=media-libs/harfbuzz-1.4.2:=[icu(+)]
274 - >=dev-libs/icu-60.2:=
275 - virtual/jpeg:0=
276 - >=net-libs/libsoup-2.54:2.4[introspection?]
277 - >=dev-libs/libxml2-2.8.0:2
278 - >=media-libs/libpng-1.4:0=
279 - dev-db/sqlite:3=
280 - sys-libs/zlib:0
281 - >=dev-libs/atk-2.16.0
282 - media-libs/libwebp:=
283 -
284 - >=dev-libs/glib-2.44.0:2
285 - >=dev-libs/libxslt-1.1.7
286 - media-libs/woff2
287 - gnome-keyring? ( app-crypt/libsecret )
288 - introspection? ( >=dev-libs/gobject-introspection-1.32.0:= )
289 - dev-libs/libtasn1:=
290 - spell? ( >=app-text/enchant-0.22:2 )
291 - gstreamer? (
292 - >=media-libs/gstreamer-1.14:1.0
293 - >=media-libs/gst-plugins-base-1.14:1.0[egl?,opengl?,X?]
294 - gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
295 - >=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
296 - >=media-libs/gst-plugins-bad-1.14:1.0 )
297 -
298 - X? (
299 - x11-libs/libX11
300 - x11-libs/libXcomposite
301 - x11-libs/libXdamage
302 - x11-libs/libXrender
303 - x11-libs/libXt )
304 -
305 - libnotify? ( x11-libs/libnotify )
306 - dev-libs/hyphen
307 - jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
308 -
309 - egl? ( media-libs/mesa[egl] )
310 - gles2-only? ( media-libs/mesa[gles2] )
311 - opengl? ( virtual/opengl )
312 - wayland? (
313 - dev-libs/wayland
314 - >=dev-libs/wayland-protocols-1.12
315 - opengl? ( ${wpe_depend} )
316 - gles2-only? ( ${wpe_depend} )
317 - )
318 -
319 - seccomp? (
320 - >=sys-apps/bubblewrap-0.3.1
321 - sys-libs/libseccomp
322 - sys-apps/xdg-dbus-proxy
323 - )
324 -
325 - systemd? ( sys-apps/systemd:= )
326 - gamepad? ( >=dev-libs/libmanette-0.2.4 )
327 -"
328 -unset wpe_depend
329 -# paxctl needed for bug #407085
330 -# Need real bison, not yacc
331 -DEPEND="${RDEPEND}
332 - ${PYTHON_DEPS}
333 - ${RUBY_DEPS}
334 - >=app-accessibility/at-spi2-core-2.5.3
335 - dev-util/glib-utils
336 - >=dev-util/gperf-3.0.1
337 - >=sys-devel/bison-2.4.3
338 - || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
339 - sys-devel/gettext
340 - virtual/pkgconfig
341 -
342 - >=dev-lang/perl-5.10
343 - virtual/perl-Data-Dumper
344 - virtual/perl-Carp
345 - virtual/perl-JSON-PP
346 -
347 - gtk-doc? ( >=dev-util/gtk-doc-1.32 )
348 - geolocation? ( dev-util/gdbus-codegen )
349 -"
350 -# test? (
351 -# dev-python/pygobject:3[python_targets_python2_7]
352 -# x11-themes/hicolor-icon-theme
353 -# jit? ( sys-apps/paxctl ) )
354 -RDEPEND="${RDEPEND}
355 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
356 -"
357 -
358 -S="${WORKDIR}/${MY_P}"
359 -
360 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
361 -
362 -pkg_pretend() {
363 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
364 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
365 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
366 - check-reqs_pkg_pretend
367 - fi
368 -
369 - if ! test-flag-CXX -std=c++17 ; then
370 - die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
371 - fi
372 - fi
373 -
374 - if ! use opengl && ! use gles2-only; then
375 - ewarn
376 - ewarn "You are disabling OpenGL usage (USE=opengl or USE=gles2-only) completely."
377 - ewarn "This is an unsupported configuration meant for very specific embedded"
378 - ewarn "use cases, where there truly is no GL possible (and even that use case"
379 - ewarn "is very unlikely to come by). If you have GL (even software-only), you"
380 - ewarn "really really should be enabling OpenGL!"
381 - ewarn
382 - fi
383 -}
384 -
385 -pkg_setup() {
386 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
387 - check-reqs_pkg_setup
388 - fi
389 -
390 - python-any-r1_pkg_setup
391 -}
392 -
393 -src_prepare() {
394 - eapply "${FILESDIR}"/${PV}-icu68.patch
395 - eapply "${FILESDIR}"/${PN}-2.24.4-eglmesaext-include.patch # bug 699054 # https://bugs.webkit.org/show_bug.cgi?id=204108
396 - eapply "${FILESDIR}"/2.28.2-opengl-without-X-fixes.patch
397 - eapply "${FILESDIR}"/2.28.2-non-jumbo-fix.patch
398 - eapply "${FILESDIR}"/2.28.4-non-jumbo-fix2.patch
399 - eapply "${FILESDIR}"/${PV}-fix-noGL-build.patch
400 - if use elibc_musl ; then
401 - # Taken from https://git.alpinelinux.org/aports/tree/community/webkit2gtk/musl-fixes.patch?id=be463923b10a7268117c27c7e5515fc32457918c
402 - eapply "${FILESDIR}/${PN}-2.28.1-musl.patch"
403 - eapply "${FILESDIR}/${PN}-2.28.4-lower-stack-usage.patch"
404 - fi
405 - cmake-utils_src_prepare
406 - gnome2_src_prepare
407 -}
408 -
409 -src_configure() {
410 - # Respect CC, otherwise fails on prefix #395875
411 - tc-export CC
412 -
413 - # It does not compile on alpha without this in LDFLAGS
414 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
415 - use alpha && append-ldflags "-Wl,--no-relax"
416 -
417 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
418 - use ia64 && append-ldflags "-Wl,--no-as-needed"
419 -
420 - # Sigbuses on SPARC with mcpu and co., bug #???
421 - use sparc && filter-flags "-mvis"
422 -
423 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
424 - use ppc64 && append-flags "-mminimal-toc"
425 -
426 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
427 - # --no-keep-memory doesn't work on ia64, bug #502492
428 - if ! use ia64; then
429 - append-ldflags "-Wl,--no-keep-memory"
430 - fi
431 -
432 - # We try to use gold when possible for this package
433 -# if ! tc-ld-is-gold ; then
434 -# append-ldflags "-Wl,--reduce-memory-overheads"
435 -# fi
436 -
437 - # Ruby situation is a bit complicated. See bug 513888
438 - local rubyimpl
439 - local ruby_interpreter=""
440 - for rubyimpl in ${USE_RUBY}; do
441 - if has_version --host-root "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
442 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
443 - fi
444 - done
445 - # This will rarely occur. Only a couple of corner cases could lead us to
446 - # that failure. See bug 513888
447 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
448 -
449 - # TODO: Check Web Audio support
450 - # should somehow let user select between them?
451 - #
452 - # opengl needs to be explicetly handled, bug #576634
453 -
454 - local use_wpe_renderer=OFF
455 - local opengl_enabled
456 - if use opengl || use gles2-only; then
457 - opengl_enabled=ON
458 - use wayland && use_wpe_renderer=ON
459 - else
460 - opengl_enabled=OFF
461 - fi
462 -
463 - local mycmakeargs=(
464 - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
465 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
466 - -DENABLE_API_TESTS=$(usex test)
467 - -DENABLE_GTKDOC=$(usex gtk-doc)
468 - -DENABLE_GEOLOCATION=$(usex geolocation) # Runtime optional (talks over dbus service)
469 - $(cmake-utils_use_find_package gles2-only OpenGLES2)
470 - -DENABLE_GLES2=$(usex gles2-only)
471 - -DENABLE_VIDEO=$(usex gstreamer)
472 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
473 - -DENABLE_INTROSPECTION=$(usex introspection)
474 - -DUSE_LIBNOTIFY=$(usex libnotify)
475 - -DUSE_LIBSECRET=$(usex gnome-keyring)
476 - -DUSE_OPENJPEG=$(usex jpeg2k)
477 - -DUSE_WOFF2=ON
478 - -DENABLE_SPELLCHECK=$(usex spell)
479 - -DUSE_SYSTEMD=$(usex systemd) # Whether to enable journald logging
480 - -DENABLE_GAMEPAD=$(usex gamepad)
481 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
482 - -DUSE_WPE_RENDERER=${use_wpe_renderer} # WPE renderer is used to implement accelerated compositing under wayland
483 - $(cmake-utils_use_find_package egl EGL)
484 - $(cmake-utils_use_find_package opengl OpenGL)
485 - -DENABLE_X11_TARGET=$(usex X)
486 - -DENABLE_GRAPHICS_CONTEXT_GL=${opengl_enabled}
487 - -DENABLE_WEBGL=${opengl_enabled}
488 - -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
489 - -DBWRAP_EXECUTABLE="${EPREFIX}"/usr/bin/bwrap # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
490 - -DCMAKE_BUILD_TYPE=Release
491 - -DPORT=GTK
492 - ${ruby_interpreter}
493 - )
494 -
495 - if use elibc_musl ; then
496 - mycmakeargs+=( -DENABLE_SAMPLING_PROFILER=OFF )
497 - fi
498 -
499 - # Allow it to use GOLD when possible as it has all the magic to
500 - # detect when to use it and using gold for this concrete package has
501 - # multiple advantages and is also the upstream default, bug #585788
502 -# if tc-ld-is-gold ; then
503 -# mycmakeargs+=( -DUSE_LD_GOLD=ON )
504 -# else
505 -# mycmakeargs+=( -DUSE_LD_GOLD=OFF )
506 -# fi
507 -
508 - WK_USE_CCACHE=NO cmake-utils_src_configure
509 -}
510 -
511 -src_compile() {
512 - cmake-utils_src_compile
513 -}
514 -
515 -src_test() {
516 - # Prevents test failures on PaX systems
517 - pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
518 -
519 - cmake-utils_src_test
520 -}
521 -
522 -src_install() {
523 - cmake-utils_src_install
524 -
525 - # Prevents crashes on PaX systems, bug #522808
526 - pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/jsc" "${ED}usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
527 - pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
528 -}
529
530 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.30.4.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.30.4.ebuild
531 deleted file mode 100644
532 index af9a17e..0000000
533 --- a/net-libs/webkit-gtk/webkit-gtk-2.30.4.ebuild
534 +++ /dev/null
535 @@ -1,309 +0,0 @@
536 -# Copyright 1999-2020 Gentoo Authors
537 -# Distributed under the terms of the GNU General Public License v2
538 -
539 -EAPI=7
540 -PYTHON_COMPAT=( python3_{6..8} )
541 -USE_RUBY="ruby24 ruby25 ruby26 ruby27"
542 -
543 -inherit check-reqs cmake flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
544 -
545 -MY_P="webkitgtk-${PV}"
546 -DESCRIPTION="Open source web browser engine"
547 -HOMEPAGE="https://www.webkitgtk.org"
548 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
549 -
550 -LICENSE="LGPL-2+ BSD"
551 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
552 -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
553 -
554 -IUSE="aqua +egl examples gamepad +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build libnotify +opengl seccomp spell systemd wayland +X"
555 -
556 -# gstreamer with opengl/gles2 needs egl
557 -REQUIRED_USE="
558 - gles2-only? ( egl !opengl )
559 - gstreamer? ( opengl? ( egl ) )
560 - wayland? ( egl )
561 - || ( aqua wayland X )
562 -"
563 -
564 -# Tests fail to link for inexplicable reasons
565 -# https://bugs.webkit.org/show_bug.cgi?id=148210
566 -RESTRICT="test"
567 -
568 -# Aqua support in gtk3 is untested
569 -# Dependencies found at Source/cmake/OptionsGTK.cmake
570 -# Various compile-time optionals for gtk+-3.22.0 - ensure it
571 -# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
572 -# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
573 -wpe_depend="
574 - >=gui-libs/libwpe-1.5.0:1.0
575 - >=gui-libs/wpebackend-fdo-1.7.0:1.0
576 -"
577 -# 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
578 -RDEPEND="
579 - >=x11-libs/cairo-1.16.0:=[X?]
580 - >=media-libs/fontconfig-2.13.0:1.0
581 - >=media-libs/freetype-2.9.0:2
582 - >=dev-libs/libgcrypt-1.7.0:0=
583 - >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
584 - >=media-libs/harfbuzz-1.4.2:=[icu(+)]
585 - >=dev-libs/icu-60.2:=
586 - virtual/jpeg:0=
587 - >=net-libs/libsoup-2.54:2.4[introspection?]
588 - >=dev-libs/libxml2-2.8.0:2
589 - >=media-libs/libpng-1.4:0=
590 - dev-db/sqlite:3=
591 - sys-libs/zlib:0
592 - >=dev-libs/atk-2.16.0
593 - media-libs/libwebp:=
594 -
595 - >=dev-libs/glib-2.44.0:2
596 - >=dev-libs/libxslt-1.1.7
597 - media-libs/woff2
598 - gnome-keyring? ( app-crypt/libsecret )
599 - introspection? ( >=dev-libs/gobject-introspection-1.32.0:= )
600 - dev-libs/libtasn1:=
601 - spell? ( >=app-text/enchant-0.22:2 )
602 - gstreamer? (
603 - >=media-libs/gstreamer-1.14:1.0
604 - >=media-libs/gst-plugins-base-1.14:1.0[egl?,opengl?,X?]
605 - gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
606 - >=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
607 - >=media-libs/gst-plugins-bad-1.14:1.0 )
608 -
609 - X? (
610 - x11-libs/libX11
611 - x11-libs/libXcomposite
612 - x11-libs/libXdamage
613 - x11-libs/libXrender
614 - x11-libs/libXt )
615 -
616 - libnotify? ( x11-libs/libnotify )
617 - dev-libs/hyphen
618 - jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
619 -
620 - egl? ( media-libs/mesa[egl] )
621 - gles2-only? ( media-libs/mesa[gles2] )
622 - opengl? ( virtual/opengl )
623 - wayland? (
624 - dev-libs/wayland
625 - >=dev-libs/wayland-protocols-1.12
626 - opengl? ( ${wpe_depend} )
627 - gles2-only? ( ${wpe_depend} )
628 - )
629 -
630 - seccomp? (
631 - >=sys-apps/bubblewrap-0.3.1
632 - sys-libs/libseccomp
633 - sys-apps/xdg-dbus-proxy
634 - )
635 -
636 - systemd? ( sys-apps/systemd:= )
637 - gamepad? ( >=dev-libs/libmanette-0.2.4 )
638 -"
639 -unset wpe_depend
640 -DEPEND="${RDEPEND}"
641 -# paxctl needed for bug #407085
642 -# Need real bison, not yacc
643 -BDEPEND="
644 - ${PYTHON_DEPS}
645 - ${RUBY_DEPS}
646 - >=app-accessibility/at-spi2-core-2.5.3
647 - dev-util/glib-utils
648 - >=dev-util/gperf-3.0.1
649 - >=sys-devel/bison-2.4.3
650 - || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
651 - sys-devel/gettext
652 - virtual/pkgconfig
653 -
654 - >=dev-lang/perl-5.10
655 - virtual/perl-Data-Dumper
656 - virtual/perl-Carp
657 - virtual/perl-JSON-PP
658 -
659 - gtk-doc? ( >=dev-util/gtk-doc-1.32 )
660 - geolocation? ( dev-util/gdbus-codegen )
661 - >=dev-util/cmake-3.10
662 -"
663 -# test? (
664 -# dev-python/pygobject:3[python_targets_python2_7]
665 -# x11-themes/hicolor-icon-theme
666 -# jit? ( sys-apps/paxctl ) )
667 -RDEPEND="${RDEPEND}
668 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
669 -"
670 -
671 -S="${WORKDIR}/${MY_P}"
672 -
673 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
674 -
675 -pkg_pretend() {
676 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
677 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
678 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
679 - check-reqs_pkg_pretend
680 - fi
681 -
682 - if ! test-flag-CXX -std=c++17 ; then
683 - die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
684 - fi
685 - fi
686 -
687 - if ! use opengl && ! use gles2-only; then
688 - ewarn
689 - ewarn "You are disabling OpenGL usage (USE=opengl or USE=gles2-only) completely."
690 - ewarn "This is an unsupported configuration meant for very specific embedded"
691 - ewarn "use cases, where there truly is no GL possible (and even that use case"
692 - ewarn "is very unlikely to come by). If you have GL (even software-only), you"
693 - ewarn "really really should be enabling OpenGL!"
694 - ewarn
695 - fi
696 -}
697 -
698 -pkg_setup() {
699 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
700 - check-reqs_pkg_setup
701 - fi
702 -
703 - python-any-r1_pkg_setup
704 -}
705 -
706 -src_prepare() {
707 - eapply "${FILESDIR}"/${PN}-2.24.4-eglmesaext-include.patch # bug 699054 # https://bugs.webkit.org/show_bug.cgi?id=204108
708 - eapply "${FILESDIR}"/2.28.2-opengl-without-X-fixes.patch
709 - eapply "${FILESDIR}"/2.28.2-non-jumbo-fix.patch
710 - eapply "${FILESDIR}"/2.28.4-non-jumbo-fix2.patch
711 - eapply "${FILESDIR}"/2.30.3-fix-noGL-build.patch
712 - if use elibc_musl ; then
713 - # Taken from https://git.alpinelinux.org/aports/tree/community/webkit2gtk/musl-fixes.patch?id=be463923b10a7268117c27c7e5515fc32457918c
714 - eapply "${FILESDIR}/${PN}-2.28.1-musl.patch"
715 - eapply "${FILESDIR}/${PN}-2.28.4-lower-stack-usage.patch"
716 - fi
717 - cmake_src_prepare
718 - gnome2_src_prepare
719 -}
720 -
721 -src_configure() {
722 - # Respect CC, otherwise fails on prefix #395875
723 - tc-export CC
724 -
725 - # It does not compile on alpha without this in LDFLAGS
726 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
727 - use alpha && append-ldflags "-Wl,--no-relax"
728 -
729 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
730 - use ia64 && append-ldflags "-Wl,--no-as-needed"
731 -
732 - # Sigbuses on SPARC with mcpu and co., bug #???
733 - use sparc && filter-flags "-mvis"
734 -
735 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
736 - use ppc64 && append-flags "-mminimal-toc"
737 -
738 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
739 - # --no-keep-memory doesn't work on ia64, bug #502492
740 - if ! use ia64; then
741 - append-ldflags "-Wl,--no-keep-memory"
742 - fi
743 -
744 - # We try to use gold when possible for this package
745 -# if ! tc-ld-is-gold ; then
746 -# append-ldflags "-Wl,--reduce-memory-overheads"
747 -# fi
748 -
749 - # Ruby situation is a bit complicated. See bug 513888
750 - local rubyimpl
751 - local ruby_interpreter=""
752 - for rubyimpl in ${USE_RUBY}; do
753 - if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
754 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
755 - fi
756 - done
757 - # This will rarely occur. Only a couple of corner cases could lead us to
758 - # that failure. See bug 513888
759 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
760 -
761 - # TODO: Check Web Audio support
762 - # should somehow let user select between them?
763 - #
764 - # opengl needs to be explicetly handled, bug #576634
765 -
766 - local use_wpe_renderer=OFF
767 - local opengl_enabled
768 - if use opengl || use gles2-only; then
769 - opengl_enabled=ON
770 - use wayland && use_wpe_renderer=ON
771 - else
772 - opengl_enabled=OFF
773 - fi
774 -
775 - local mycmakeargs=(
776 - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
777 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
778 - -DENABLE_API_TESTS=$(usex test)
779 - -DENABLE_GTKDOC=$(usex gtk-doc)
780 - -DENABLE_GEOLOCATION=$(usex geolocation) # Runtime optional (talks over dbus service)
781 - $(cmake_use_find_package gles2-only OpenGLES2)
782 - -DENABLE_GLES2=$(usex gles2-only)
783 - -DENABLE_MINIBROWSER=$(usex examples)
784 - -DENABLE_VIDEO=$(usex gstreamer)
785 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
786 - -DENABLE_INTROSPECTION=$(usex introspection)
787 - -DUSE_LIBNOTIFY=$(usex libnotify)
788 - -DUSE_LIBSECRET=$(usex gnome-keyring)
789 - -DUSE_OPENJPEG=$(usex jpeg2k)
790 - -DUSE_WOFF2=ON
791 - -DENABLE_SPELLCHECK=$(usex spell)
792 - -DUSE_SYSTEMD=$(usex systemd) # Whether to enable journald logging
793 - -DENABLE_GAMEPAD=$(usex gamepad)
794 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
795 - -DUSE_WPE_RENDERER=${use_wpe_renderer} # WPE renderer is used to implement accelerated compositing under wayland
796 - $(cmake_use_find_package egl EGL)
797 - $(cmake_use_find_package opengl OpenGL)
798 - -DENABLE_X11_TARGET=$(usex X)
799 - -DENABLE_GRAPHICS_CONTEXT_GL=${opengl_enabled}
800 - -DENABLE_WEBGL=${opengl_enabled}
801 - -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
802 - -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
803 - -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
804 - -DPORT=GTK
805 - ${ruby_interpreter}
806 - )
807 -
808 - if use elibc_musl ; then
809 - mycmakeargs+=( -DENABLE_SAMPLING_PROFILER=OFF )
810 - fi
811 -
812 - # Allow it to use GOLD when possible as it has all the magic to
813 - # detect when to use it and using gold for this concrete package has
814 - # multiple advantages and is also the upstream default, bug #585788
815 -# if tc-ld-is-gold ; then
816 -# mycmakeargs+=( -DUSE_LD_GOLD=ON )
817 -# else
818 -# mycmakeargs+=( -DUSE_LD_GOLD=OFF )
819 -# fi
820 -
821 - # https://bugs.gentoo.org/761238
822 - append-cppflags -DNDEBUG
823 -
824 - WK_USE_CCACHE=NO cmake_src_configure
825 -}
826 -
827 -src_compile() {
828 - cmake_src_compile
829 -}
830 -
831 -src_test() {
832 - # Prevents test failures on PaX systems
833 - pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
834 -
835 - cmake_src_test
836 -}
837 -
838 -src_install() {
839 - cmake_src_install
840 -
841 - # Prevents crashes on PaX systems, bug #522808
842 - pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/jsc" "${ED}/usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
843 - pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
844 -}