summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-libs/webkit-gtk/Manifest2
-rw-r--r--net-libs/webkit-gtk/files/2.26.3-fix-gtk-doc.patch27
-rw-r--r--net-libs/webkit-gtk/files/2.28.2-fix-ppc64-JSC.patch59
-rw-r--r--net-libs/webkit-gtk/files/2.28.2-fix-yelp-desktopless-build.patch53
-rw-r--r--net-libs/webkit-gtk/files/2.28.2-use-gst-audiointerleave.patch55
-rw-r--r--net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch31
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-2.28.4-r10.ebuild (renamed from net-libs/webkit-gtk/webkit-gtk-2.28.2-r10.ebuild)28
7 files changed, 48 insertions, 207 deletions
diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
index 8ad1ff0e..e700873e 100644
--- a/net-libs/webkit-gtk/Manifest
+++ b/net-libs/webkit-gtk/Manifest
@@ -1 +1 @@
-DIST webkitgtk-2.28.2.tar.xz 21427772 BLAKE2B 0749ffac526ae90ffb8af3fbf8f9ce87db80f229b96e2daa435f9bd6e6e985bbb8c33011976213b2e4ce286c9f1d38f0b85279507cdc9c52b95fbeb32c9f676c SHA512 c7c0c55b1ebc61c0ec9cd9af96a12058a96ba9b011330b12c7c2776685736e0edf604f5eee639637cb50b2967d77c2db4dea15050a575fd34a1f6f0a8b8c56f8
+DIST webkitgtk-2.28.4.tar.xz 21424908 BLAKE2B 5ca9206c3c7d0a00bc76487ae8fe79e6c5b94a86f23300f196b3edbd5e3f1ea68768ef4465b32fa694a7b6a4a2b274dfb9dba4a20b8329f9138970f1a82eb7e6 SHA512 227cd4066235180521a32a83d3a906212adf4f234f15a1fff4ac86b48e39c431f1e0cb4a56f62924015099a0c8909a73a21a56f8dc71a16c53ac65de4a5773a1
diff --git a/net-libs/webkit-gtk/files/2.26.3-fix-gtk-doc.patch b/net-libs/webkit-gtk/files/2.26.3-fix-gtk-doc.patch
deleted file mode 100644
index 85328be1..00000000
--- a/net-libs/webkit-gtk/files/2.26.3-fix-gtk-doc.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Upstream commit 41455af5d76a726f195838846b61e1693a2da99c is supposed to fix this,
-but it looks like it's not enough with older perl-based gtk-doc.
-Keep this extra patch only until we can't depend on a newer gtk-doc version, which
-should be retested whether this patch is unnecessary then.
-
-Upstream extra reference for the above reference commit:
-git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245027 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp b/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
-index 023b14c33f4..657b1febf5d 100644
---- a/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
-+++ b/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
-@@ -1505,7 +1505,7 @@ static void webkit_settings_class_init(WebKitSettingsClass* klass)
- * WebKitSettings:enable-media:
- *
- * Enable or disable support for media playback on pages. This setting is enabled by
-- * default. Disabling it means `<audio>`, `<track>` and `<video>` elements will have
-+ * default. Disabling it means audio, track and video elements will have
- * playback support disabled.
- *
- * Since: 2.26
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.2-fix-ppc64-JSC.patch b/net-libs/webkit-gtk/files/2.28.2-fix-ppc64-JSC.patch
deleted file mode 100644
index 96e4d7d0..00000000
--- a/net-libs/webkit-gtk/files/2.28.2-fix-ppc64-JSC.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 46c7d3ea88dd77223f25c48ce4a8688db71c489b Mon Sep 17 00:00:00 2001
-From: "commit-queue@webkit.org"
- <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Thu, 7 May 2020 19:30:28 +0000
-Subject: [PATCH] REGRESSION(r251875): Crash in JSC::StructureIDTable::get on
- ppc64le: gcSafeMemcpy broken on JSVALUE64 platforms other than x86_64 and
- aarch64 https://bugs.webkit.org/show_bug.cgi?id=210685
-
-Patch by Daniel Kolesa <daniel@octaforge.org> on 2020-05-07
-Reviewed by Michael Catanzaro.
-
-Fix gcSafeMemcpy on non-x86_64/aarch64 64-bit architectures.
-
-We were hitting an incorrect x86_64 assertion on values larger than
-mediumCutoff on JSVALUE64 architectures other than x86_64 and aarch64,
-as the control flow is wrong.
-
-* heap/GCMemoryOperations.h:
-(JSC::gcSafeMemcpy):
-
-git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Source/JavaScriptCore/heap/GCMemoryOperations.h | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/Source/JavaScriptCore/heap/GCMemoryOperations.h b/Source/JavaScriptCore/heap/GCMemoryOperations.h
-index f2b9e385bc9..ff66071db20 100644
---- a/Source/JavaScriptCore/heap/GCMemoryOperations.h
-+++ b/Source/JavaScriptCore/heap/GCMemoryOperations.h
-@@ -53,7 +53,7 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
- bitwise_cast<volatile uint64_t*>(dst)[i] = bitwise_cast<volatile uint64_t*>(src)[i];
- };
-
--#if COMPILER(GCC_COMPATIBLE) && USE(JSVALUE64)
-+#if COMPILER(GCC_COMPATIBLE) && (CPU(X86_64) || CPU(ARM64))
- if (bytes <= smallCutoff)
- slowPathForwardMemcpy();
- else if (isARM64() || bytes <= mediumCutoff) {
-@@ -121,8 +121,6 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
- :
- : "d0", "d1", "memory"
- );
--#else
-- slowPathForwardMemcpy();
- #endif // CPU(X86_64)
- } else {
- RELEASE_ASSERT(isX86_64());
-@@ -139,7 +137,7 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
- }
- #else
- slowPathForwardMemcpy();
--#endif // COMPILER(GCC_COMPATIBLE)
-+#endif // COMPILER(GCC_COMPATIBLE) && (CPU(X86_64) || CPU(ARM64))
- #else
- memcpy(dst, src, bytes);
- #endif // USE(JSVALUE64)
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.2-fix-yelp-desktopless-build.patch b/net-libs/webkit-gtk/files/2.28.2-fix-yelp-desktopless-build.patch
deleted file mode 100644
index fdf9d7d4..00000000
--- a/net-libs/webkit-gtk/files/2.28.2-fix-yelp-desktopless-build.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 9cd4011a12bf658aad3776251792bacdc894643a Mon Sep 17 00:00:00 2001
-From: "berto@igalia.com"
- <berto@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Mon, 27 Apr 2020 11:52:10 +0000
-Subject: [PATCH] [GTK] [2.28.0] The Yelp build crashes if DISPLAY is not set
- https://bugs.webkit.org/show_bug.cgi?id=209431
-
-Reviewed by Carlos Garcia Campos.
-
-Don't create a PlatformDisplayLibWPE as a fallback when using
-Wayland or X11.
-
-* platform/graphics/PlatformDisplay.cpp:
-(WebCore::PlatformDisplay::createPlatformDisplay):
-
-git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260750 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Source/WebCore/platform/graphics/PlatformDisplay.cpp | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/Source/WebCore/platform/graphics/PlatformDisplay.cpp b/Source/WebCore/platform/graphics/PlatformDisplay.cpp
-index 8bb47ca2b77..f9547b3af69 100644
---- a/Source/WebCore/platform/graphics/PlatformDisplay.cpp
-+++ b/Source/WebCore/platform/graphics/PlatformDisplay.cpp
-@@ -98,12 +98,6 @@ std::unique_ptr<PlatformDisplay> PlatformDisplay::createPlatformDisplay()
- }
- #endif // PLATFORM(GTK)
-
--#if USE(WPE_RENDERER)
-- return PlatformDisplayLibWPE::create();
--#elif PLATFORM(WIN)
-- return PlatformDisplayWin::create();
--#endif
--
- #if PLATFORM(WAYLAND)
- if (auto platformDisplay = PlatformDisplayWayland::create())
- return platformDisplay;
-@@ -121,6 +115,12 @@ std::unique_ptr<PlatformDisplay> PlatformDisplay::createPlatformDisplay()
- return PlatformDisplayX11::create(nullptr);
- #endif
-
-+#if USE(WPE_RENDERER)
-+ return PlatformDisplayLibWPE::create();
-+#elif PLATFORM(WIN)
-+ return PlatformDisplayWin::create();
-+#endif
-+
- RELEASE_ASSERT_NOT_REACHED();
- }
-
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.2-use-gst-audiointerleave.patch b/net-libs/webkit-gtk/files/2.28.2-use-gst-audiointerleave.patch
deleted file mode 100644
index f4bc7291..00000000
--- a/net-libs/webkit-gtk/files/2.28.2-use-gst-audiointerleave.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 43686247013a1230d47b46d637f928eb47c99609 Mon Sep 17 00:00:00 2001
-From: "commit-queue@webkit.org"
- <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Wed, 29 Apr 2020 08:14:06 +0000
-Subject: [PATCH] [GStreamer] Switch to audiointerleave
- https://bugs.webkit.org/show_bug.cgi?id=211124
-
-Patch by Philippe Normand <pnormand@igalia.com> on 2020-04-29
-Reviewed by Xabier Rodriguez-Calvar.
-
-The audiointerleave element is a drop-in replacement of
-interleave. It should behave a bit better in live.
-
-No new tests, existing webaudio tests cover this change.
-
-* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
-(webKitWebAudioSrcConstructed):
-(webKitWebAudioSrcChangeState):
-
-git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260886 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- .../audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp b/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
-index 2f937f677cc..ea134b7b1b2 100644
---- a/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
-+++ b/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
-@@ -211,10 +211,10 @@ static void webKitWebAudioSrcConstructed(GObject* object)
- ASSERT(priv->provider);
- ASSERT(priv->sampleRate);
-
-- priv->interleave = gst_element_factory_make("interleave", nullptr);
-+ priv->interleave = gst_element_factory_make("audiointerleave", nullptr);
-
- if (!priv->interleave) {
-- GST_ERROR_OBJECT(src, "Failed to create interleave");
-+ GST_ERROR_OBJECT(src, "Failed to create audiointerleave");
- return;
- }
-
-@@ -398,8 +398,8 @@ static GstStateChangeReturn webKitWebAudioSrcChangeState(GstElement* element, Gs
- switch (transition) {
- case GST_STATE_CHANGE_NULL_TO_READY:
- if (!src->priv->interleave) {
-- gst_element_post_message(element, gst_missing_element_message_new(element, "interleave"));
-- GST_ELEMENT_ERROR(src, CORE, MISSING_PLUGIN, (nullptr), ("no interleave"));
-+ gst_element_post_message(element, gst_missing_element_message_new(element, "audiointerleave"));
-+ GST_ELEMENT_ERROR(src, CORE, MISSING_PLUGIN, (nullptr), ("no audiointerleave"));
- return GST_STATE_CHANGE_FAILURE;
- }
- src->priv->numberOfSamples = 0;
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch b/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch
new file mode 100644
index 00000000..d7bc379d
--- /dev/null
+++ b/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch
@@ -0,0 +1,31 @@
+From f6b0ae5334eb9de1858b5f3b0edc2f7245087cab Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Sat, 11 Jul 2020 15:28:05 +0300
+Subject: [PATCH] Try to fix another apparent non-unified build error
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Source/WebCore/rendering/svg/RenderSVGResourceClipper.h:70:42: required from here
+/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/unique_ptr.h:79:16: error: invalid application of ‘sizeof’ to incomplete type ‘WebCore::ImageBuffer’
+ 79 | static_assert(sizeof(_Tp)>0,
+ | ^~~~~~~~~~~
+---
+ Source/WebCore/rendering/svg/RenderSVGResourceClipper.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
+index 55d9e34df61..12a7a83cc61 100644
+--- a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
++++ b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
+@@ -19,6 +19,7 @@
+
+ #pragma once
+
++#include "ImageBuffer.h"
+ #include "RenderSVGResourceContainer.h"
+ #include "SVGClipPathElement.h"
+ #include "SVGUnitTypes.h"
+--
+2.20.1
+
diff --git a/net-libs/webkit-gtk/webkit-gtk-2.28.2-r10.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.28.4-r10.ebuild
index 390b29c1..27ed996c 100644
--- a/net-libs/webkit-gtk/webkit-gtk-2.28.2-r10.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-2.28.4-r10.ebuild
@@ -4,9 +4,10 @@
EAPI=6
CMAKE_MAKEFILE_GENERATOR="ninja"
PYTHON_COMPAT=( python{3_6,3_7} )
+USE_RUBY="ruby24 ruby25 ruby26 ruby27"
CMAKE_MIN_VERSION=3.10
-inherit check-reqs cmake-utils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs virtualx
+inherit check-reqs cmake-utils flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
MY_P="webkitgtk-${PV}"
DESCRIPTION="Open source web browser engine"
@@ -15,7 +16,7 @@ SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
LICENSE="LGPL-2+ BSD"
SLOT="4/37" # soname version of libwebkit2gtk-4.0
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~sparc x86"
IUSE="aqua +egl +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build libnotify +opengl seccomp spell wayland +X"
@@ -67,7 +68,7 @@ RDEPEND="
spell? ( >=app-text/enchant-0.22:2 )
gstreamer? (
>=media-libs/gstreamer-1.14:1.0
- >=media-libs/gst-plugins-base-1.14:1.0[egl?,opengl?,X]
+ >=media-libs/gst-plugins-base-1.14:1.0[egl?,opengl?,X?]
gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
>=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
>=media-libs/gst-plugins-bad-1.14:1.0 )
@@ -104,10 +105,10 @@ unset wpe_depend
# Need real bison, not yacc
DEPEND="${RDEPEND}
${PYTHON_DEPS}
+ ${RUBY_DEPS}
>=app-accessibility/at-spi2-core-2.5.3
dev-util/glib-utils
>=dev-util/gperf-3.0.1
- dev-lang/ruby:2.5
>=sys-devel/bison-2.4.3
|| ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
sys-devel/gettext
@@ -118,7 +119,7 @@ DEPEND="${RDEPEND}
virtual/perl-Carp
virtual/perl-JSON-PP
- gtk-doc? ( >=dev-util/gtk-doc-1.10 )
+ gtk-doc? ( >=dev-util/gtk-doc-1.32 )
geolocation? ( dev-util/gdbus-codegen )
"
# test? (
@@ -166,12 +167,9 @@ pkg_setup() {
src_prepare() {
eapply "${FILESDIR}/${PN}-2.24.4-eglmesaext-include.patch" # bug 699054 # https://bugs.webkit.org/show_bug.cgi?id=204108
- eapply "${FILESDIR}"/2.26.3-fix-gtk-doc.patch # bug 704550 - retest without it once we can depend on >=gtk-doc-1.32
- eapply "${FILESDIR}"/${PV}-fix-yelp-desktopless-build.patch
- eapply "${FILESDIR}"/${PV}-use-gst-audiointerleave.patch
- eapply "${FILESDIR}"/${PV}-fix-ppc64-JSC.patch
- eapply "${FILESDIR}"/${PV}-opengl-without-X-fixes.patch
- eapply "${FILESDIR}"/${PV}-non-jumbo-fix.patch
+ eapply "${FILESDIR}"/2.28.2-opengl-without-X-fixes.patch
+ eapply "${FILESDIR}"/2.28.2-non-jumbo-fix.patch
+ eapply "${FILESDIR}"/2.28.4-non-jumbo-fix2.patch
cmake-utils_src_prepare
gnome2_src_prepare
}
@@ -205,7 +203,13 @@ src_configure() {
# fi
# Ruby situation is a bit complicated. See bug 513888
- ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ruby25)"
+ local rubyimpl
+ local ruby_interpreter=""
+ for rubyimpl in ${USE_RUBY}; do
+ if has_version --host-root "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
+ ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
+ fi
+ done
# This will rarely occur. Only a couple of corner cases could lead us to
# that failure. See bug 513888
[[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"