Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] webkit2gtk: update to 2.38.0.
@ 2022-09-27  6:04 oreo639
  2022-09-27  6:19 ` [PR PATCH] [Updated] " oreo639
                   ` (72 more replies)
  0 siblings, 73 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27  6:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1577 bytes --]

There is a new pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used at the same time.
Ideally the other packages would eventually be no longer necessary.

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**|**briefly**|**NO**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 14653 bytes --]

From 2277cb211ee4fbaabaebb4658418ddf8ba1e93d3 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   8 +-
 .../webkit2gtk/patches/be-typedarray.patch    |  60 ++++----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 139 ++++++++++++++++--
 5 files changed, 172 insertions(+), 55 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index c962f0ab7622..9e0f20adcfde 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -538,8 +538,12 @@ libsoup-3.0.so.0 libsoup3-3.0.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
-libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
-libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.0.so.37 webkit2gtk40-2.38.0_1
+libjavascriptcoregtk-4.0.so.18 webkit2gtk40-2.38.0_1
+libwebkit2gtk-4.1.so.0 webkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 webkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 webkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 webkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..31e96ea59842 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,6 +1,6 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
@@ -8,7 +8,7 @@ build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
  -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON -DENABLE_WEBDRIVER=OFF
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +20,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
-short_desc="GTK+3 port of the WebKit2 browser engine"
+depends="webkit2gtk40"
+short_desc="GTK port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -62,7 +63,8 @@ export CCACHE_SLOPPINESS=time_macros,include_file_mtime
 if [ "$build_option_bubblewrap" ]; then
 	hostmakedepends+=" bubblewrap xdg-dbus-proxy"
 	makedepends+=" libseccomp-devel"
-	depends+=" bubblewrap xdg-dbus-proxy"
+	_all_depends="bubblewrap xdg-dbus-proxy"
+	depends+=" ${_all_depends}"
 fi
 
 if [ "$build_option_lto" -a -z "$build_option_clang" ]; then
@@ -132,21 +134,132 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-41
+	pushd webkit2gtk-41
+		configure_args=${configure_args//-DUSE_SOUP2=ON/}
+		configure_args=${configure_args//-DENABLE_WEBDRIVER=OFF/}
+		do_configure
+	popd
+	mkdir -p webkit2gtk-50
+	pushd webkit2gtk-50
+		configure_args+=" -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF"
+		do_configure
+	popd
+}
+
+pre_build() {
+	export NINJA_STATUS="[1/3][%f/%t] "
+}
+
+post_build() {
+	export NINJA_STATUS="[2/3][%f/%t] "
+	pushd webkit2gtk-41
+		do_build
+	popd
+	export NINJA_STATUS="[3/3][%f/%t] "
+	pushd webkit2gtk-50
+		do_build
+	popd
+}
+
 post_install() {
+	pushd webkit2gtk-41
+		do_install
+	popd
+	pushd webkit2gtk-50
+		do_install
+	popd
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
 }
 
 webkit2gtk-devel_package() {
+	build_style=meta
+	depends="webkit2gtk40-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files (transitional package)"
+}
+
+webkit2gtk40_package() {
+	depends="${_all_depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup2)"
+	pkg_install() {
+		vmove usr/lib/webkit2gtk-4.0
+		vmove usr/libexec/webkit2gtk-4.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.0.typelib"
+		fi
+		vmove "usr/lib/*-4.0.so.*"
+	}
+}
+
+webkit2gtk40-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
-	short_desc+=" - development files"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup2) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk41_package() {
+	depends="${_all_depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+webkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+webkit2gtk50_package() {
+	depends="${_all_depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+webkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
@ 2022-09-27  6:19 ` oreo639
  2022-09-27 12:18 ` [PR REVIEW] " ahesford
                   ` (71 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27  6:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1656 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used at the same time.
Ideally the other packages would eventually be no longer necessary.

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 16538 bytes --]

From e2cdf59ed306848497e1e0281ca525b081d42b3c Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   8 +-
 .../webkit2gtk/patches/be-typedarray.patch    |  60 ++++----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 139 ++++++++++++++++--
 srcpkgs/webkit2gtk40                          |   1 +
 srcpkgs/webkit2gtk40-devel                    |   1 +
 srcpkgs/webkit2gtk41                          |   1 +
 srcpkgs/webkit2gtk41-devel                    |   1 +
 srcpkgs/webkit2gtk50                          |   1 +
 srcpkgs/webkit2gtk50-devel                    |   1 +
 11 files changed, 178 insertions(+), 55 deletions(-)
 create mode 120000 srcpkgs/webkit2gtk40
 create mode 120000 srcpkgs/webkit2gtk40-devel
 create mode 120000 srcpkgs/webkit2gtk41
 create mode 120000 srcpkgs/webkit2gtk41-devel
 create mode 120000 srcpkgs/webkit2gtk50
 create mode 120000 srcpkgs/webkit2gtk50-devel

diff --git a/common/shlibs b/common/shlibs
index c962f0ab7622..9e0f20adcfde 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -538,8 +538,12 @@ libsoup-3.0.so.0 libsoup3-3.0.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
-libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
-libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.0.so.37 webkit2gtk40-2.38.0_1
+libjavascriptcoregtk-4.0.so.18 webkit2gtk40-2.38.0_1
+libwebkit2gtk-4.1.so.0 webkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 webkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 webkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 webkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..31e96ea59842 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,6 +1,6 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
@@ -8,7 +8,7 @@ build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
  -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON -DENABLE_WEBDRIVER=OFF
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +20,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
-short_desc="GTK+3 port of the WebKit2 browser engine"
+depends="webkit2gtk40"
+short_desc="GTK port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -62,7 +63,8 @@ export CCACHE_SLOPPINESS=time_macros,include_file_mtime
 if [ "$build_option_bubblewrap" ]; then
 	hostmakedepends+=" bubblewrap xdg-dbus-proxy"
 	makedepends+=" libseccomp-devel"
-	depends+=" bubblewrap xdg-dbus-proxy"
+	_all_depends="bubblewrap xdg-dbus-proxy"
+	depends+=" ${_all_depends}"
 fi
 
 if [ "$build_option_lto" -a -z "$build_option_clang" ]; then
@@ -132,21 +134,132 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-41
+	pushd webkit2gtk-41
+		configure_args=${configure_args//-DUSE_SOUP2=ON/}
+		configure_args=${configure_args//-DENABLE_WEBDRIVER=OFF/}
+		do_configure
+	popd
+	mkdir -p webkit2gtk-50
+	pushd webkit2gtk-50
+		configure_args+=" -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF"
+		do_configure
+	popd
+}
+
+pre_build() {
+	export NINJA_STATUS="[1/3][%f/%t] "
+}
+
+post_build() {
+	export NINJA_STATUS="[2/3][%f/%t] "
+	pushd webkit2gtk-41
+		do_build
+	popd
+	export NINJA_STATUS="[3/3][%f/%t] "
+	pushd webkit2gtk-50
+		do_build
+	popd
+}
+
 post_install() {
+	pushd webkit2gtk-41
+		do_install
+	popd
+	pushd webkit2gtk-50
+		do_install
+	popd
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
 }
 
 webkit2gtk-devel_package() {
+	build_style=meta
+	depends="webkit2gtk40-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files (transitional package)"
+}
+
+webkit2gtk40_package() {
+	depends="${_all_depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup2)"
+	pkg_install() {
+		vmove usr/lib/webkit2gtk-4.0
+		vmove usr/libexec/webkit2gtk-4.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.0.typelib"
+		fi
+		vmove "usr/lib/*-4.0.so.*"
+	}
+}
+
+webkit2gtk40-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
-	short_desc+=" - development files"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup2) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk41_package() {
+	depends="${_all_depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+webkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+webkit2gtk50_package() {
+	depends="${_all_depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+webkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel ${sourcepkg}>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }
diff --git a/srcpkgs/webkit2gtk40 b/srcpkgs/webkit2gtk40
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk40
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk40-devel b/srcpkgs/webkit2gtk40-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk40-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk41 b/srcpkgs/webkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk41-devel b/srcpkgs/webkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk50 b/srcpkgs/webkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk50-devel b/srcpkgs/webkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
  2022-09-27  6:19 ` [PR PATCH] [Updated] " oreo639
  2022-09-27 12:18 ` [PR REVIEW] " ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (69 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 807 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981147791

Comment:
```suggestion
	mkdir -p webkit2gtk-40 webkit2gtk-50
	(
		cd webkit2gtk-40 && \
		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
		do_configure
	)
	
	(
		cd webkit2gtk-50 && \
		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
		do_configure
	)
```
Temporarily manipulating state like working directory or the value of a variable is undesirable and prone to error. Use subshells instead.

Also, because I modified the default args, it seems the default `do_build` run will produce `webkit2gtk41`, so I've swapped `webkit2gtk-41` for `webkit2gtk-40` here. You'll have to double-check my work.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (2 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (68 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 322 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981149253

Comment:
Can this be moved to a top-level export to avoid another function? Or just leave it off; while the 2/3 and 3/3 prefixes are useful later, lack of a prefix can just imply 1/3.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (5 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (65 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 545 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981158993

Comment:
This should just be in the standard `webkit2gtk` package. (I choose this one both because I modified the default configure args to produce, I believe, v4.1; and also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`. If you think one of the other two should be the "preferred" or "default" version, leave that one in the main `webkit2gtk` package.)

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (6 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (64 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 284 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981143927

Comment:
```suggestion
 -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
```
It's better to add to variables later rather than try to strip them out.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
  2022-09-27  6:19 ` [PR PATCH] [Updated] " oreo639
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (70 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 280 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981160674

Comment:
As above, this should probably be `libwebkit2gtk50` because its primary function is shipping a library (and its supporting content).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (3 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (67 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 268 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981161523

Comment:
This should probably be libwebkit2gtk40 because its primary function is shipping a library (and its supporting content).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (4 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (66 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 329 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981142685

Comment:
```suggestion
 -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON
```
For 2/3 of the builds, `USE_SOUP2` is off. Leave it out of the default configure args to simplify modifications later.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (7 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 12:18 ` ahesford
                   ` (63 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 290 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981150983

Comment:
```suggestion
	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
```

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (8 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 12:18 ` ahesford
  2022-09-27 16:38 ` oreo639
                   ` (62 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 239 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981152452

Comment:
```suggestion
	(cd webkit2gtk-40 && do_install)
	(cd webkit2gtk-50 && do_install)
	
```

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (9 preceding siblings ...)
  2022-09-27 12:18 ` ahesford
@ 2022-09-27 16:38 ` oreo639
  2022-09-27 16:38 ` oreo639
                   ` (61 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 466 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981473574

Comment:
All of their primary function is shipping a library, `WebDriver` is an language-agnostic api that allows you to control a browser, from say, a python script (i.e. for testing purposes):
https://developer.mozilla.org/en-US/docs/Web/WebDriver

So I don't see the need for the distinction. Feel free to disagree though.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (10 preceding siblings ...)
  2022-09-27 16:38 ` oreo639
@ 2022-09-27 16:38 ` oreo639
  2022-09-27 16:39 ` oreo639
                   ` (60 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 174 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981474083

Comment:
See comment at webkit2gtk50

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (11 preceding siblings ...)
  2022-09-27 16:38 ` oreo639
@ 2022-09-27 16:39 ` oreo639
  2022-09-27 16:39 ` oreo639
                   ` (59 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 166 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981474368

Comment:
Thanks for the tip.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (12 preceding siblings ...)
  2022-09-27 16:39 ` oreo639
@ 2022-09-27 16:39 ` oreo639
  2022-09-27 16:39 ` oreo639
                   ` (58 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 155 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981474904

Comment:
Alright.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (13 preceding siblings ...)
  2022-09-27 16:39 ` oreo639
@ 2022-09-27 16:39 ` oreo639
  2022-09-27 16:45 ` [PR REVIEW] " ahesford
                   ` (57 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 459 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1259771599

Comment:
> It is not standard practice to split the `-devel` package by functionality.

We do this with python2 vs python3 packages. We also do this with libportal.
This would also allow us to split the packages (i.e. if we get tired of building one of them constantly and decide we can afford to update it less frequently)

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (14 preceding siblings ...)
  2022-09-27 16:39 ` oreo639
@ 2022-09-27 16:45 ` ahesford
  2022-09-27 16:45 ` oreo639
                   ` (56 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 16:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 535 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981480823

Comment:
The point is that we tend to name library-specific subpackages with `lib` prefixes. If there were a compelling reason to split out the (v4.1 in my modified structure) library from the main package, that should be `libwebkit2gtk41` as well. However, because there's no value in making `webkit2gtk` an empty package that just pulls in the (default) library, just keep that as `webkit2gtk`.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (15 preceding siblings ...)
  2022-09-27 16:45 ` [PR REVIEW] " ahesford
@ 2022-09-27 16:45 ` oreo639
  2022-09-27 16:46 ` oreo639
                   ` (55 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 891 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981481074

Comment:
webkit2gtk40 is depended on by the webkit2gtk package in order to avoid having to rebuild all packages depending on webkit2gtk-4.0.
Currently the webkit2gtk package contains common files depended on by all subpackages (i.e. the locale files), although it might be better to have a webkit2gtk-common?
Imo, it's better to leave them separated, then we can decide which one is 

> also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`

That executable is meant to be used by say, C# or python applications for accessing the contents of webpages. (i.e. for testing purposes)
https://developer.mozilla.org/en-US/docs/Web/WebDriver

Similar to geckodriver (they both implement the same api).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (16 preceding siblings ...)
  2022-09-27 16:45 ` oreo639
@ 2022-09-27 16:46 ` oreo639
  2022-09-27 16:46 ` ahesford
                   ` (54 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 912 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981481074

Comment:
webkit2gtk40 is depended on by the webkit2gtk package in order to avoid having to rebuild all packages depending on webkit2gtk-4.0.
Currently the webkit2gtk package contains common files depended on by all subpackages (i.e. the locale files), although it might be better to have a webkit2gtk-common?
Imo, it's better to leave them separated, then we can decide which one is best to make default.

> also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`

That executable is meant to be used by say, C# or python applications for accessing the contents of webpages. (i.e. for testing purposes)
https://developer.mozilla.org/en-US/docs/Web/WebDriver

Similar to geckodriver (they both implement the same api).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (17 preceding siblings ...)
  2022-09-27 16:46 ` oreo639
@ 2022-09-27 16:46 ` ahesford
  2022-09-27 16:47 ` [PR REVIEW] " oreo639
                   ` (53 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 16:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 276 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1259779291

Comment:
Save the devel split for when it's needed, don't complicate the package structure in anticipation of something that may never happen.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (18 preceding siblings ...)
  2022-09-27 16:46 ` ahesford
@ 2022-09-27 16:47 ` oreo639
  2022-09-27 16:47 ` oreo639
                   ` (52 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 946 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981481074

Comment:
webkit2gtk40 is depended on by the webkit2gtk package in order to avoid having to rebuild all packages depending on webkit2gtk-4.0.
Currently the webkit2gtk package contains common files depended on by all subpackages (i.e. the locale files), although it might be better to have a webkit2gtk-common?
Imo, it's better to leave them separated, then we can decide which one is best to make the default once things start moving over.

> also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`

That executable is meant to be used by say, C# or python applications for accessing the contents of webpages. (i.e. for testing purposes)
https://developer.mozilla.org/en-US/docs/Web/WebDriver

Similar to geckodriver (they both implement the same api).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (19 preceding siblings ...)
  2022-09-27 16:47 ` [PR REVIEW] " oreo639
@ 2022-09-27 16:47 ` oreo639
  2022-09-27 16:48 ` oreo639
                   ` (51 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981481074

Comment:
webkit2gtk40 is depended on by the webkit2gtk package in order to avoid having to rebuild all packages depending on webkit2gtk-4.0.
Currently the webkit2gtk package contains common files depended on by all subpackages (i.e. the locale files), although it might be better to have a webkit2gtk-common?
Imo, it's better to leave them separated, then we can decide which one is best to make the default once at least after things start moving over.

> also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`

That executable is meant to be used by say, C# or python applications for accessing the contents of webpages. (i.e. for testing purposes)
https://developer.mozilla.org/en-US/docs/Web/WebDriver

Similar to geckodriver (they both implement the same api).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (20 preceding siblings ...)
  2022-09-27 16:47 ` oreo639
@ 2022-09-27 16:48 ` oreo639
  2022-09-27 16:52 ` oreo639
                   ` (50 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 920 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981481074

Comment:
webkit2gtk40 is depended on by the webkit2gtk package in order to avoid having to rebuild all packages depending on webkit2gtk-4.0.
Currently the webkit2gtk package contains common files depended on by all subpackages (i.e. the locale files), although it might be better to have a webkit2gtk-common?
Imo, it's better to leave them separated, then we can make one the default once things have moved over.

> also because this seems to be the only subpackage that ships an executable in `usr/bin/WebKitWebDriver`

That executable is meant to be used by say, C# or python applications for accessing the contents of webpages. (i.e. for testing purposes)
https://developer.mozilla.org/en-US/docs/Web/WebDriver

Similar to geckodriver (they both implement the same api).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (21 preceding siblings ...)
  2022-09-27 16:48 ` oreo639
@ 2022-09-27 16:52 ` oreo639
  2022-09-27 16:52 ` [PR REVIEW] " ahesford
                   ` (49 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 486 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1259771599

Comment:
> It is not standard practice to split the `-devel` package by functionality.

We do this with python2 vs python3 packages. We also do this with libportal, wxwigets, and libdbusmenu.
This would also allow us to split the packages (i.e. if we get tired of building one of them constantly and decide we can afford to update it less frequently)

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (22 preceding siblings ...)
  2022-09-27 16:52 ` oreo639
@ 2022-09-27 16:52 ` ahesford
  2022-09-27 16:54 ` oreo639
                   ` (48 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 16:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 408 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981488614

Comment:
In light of that, the common stuff should definitely be moved into a common subpackage that each `lib*` package can depend on. The `webkit2gtk` package itself should could either contain whatever the "default" version is (if a sensible default can be defined).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (23 preceding siblings ...)
  2022-09-27 16:52 ` [PR REVIEW] " ahesford
@ 2022-09-27 16:54 ` oreo639
  2022-09-27 16:54 ` oreo639
                   ` (47 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 210 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981490159

Comment:
Is it okay to be a metapackage pointing to the default package?

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (24 preceding siblings ...)
  2022-09-27 16:54 ` oreo639
@ 2022-09-27 16:54 ` oreo639
  2022-09-27 17:15 ` ahesford
                   ` (46 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 16:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 210 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r981490159

Comment:
Is it okay to be a metapackage pointing to the default package?

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (25 preceding siblings ...)
  2022-09-27 16:54 ` oreo639
@ 2022-09-27 17:15 ` ahesford
  2022-09-27 21:24 ` [PR PATCH] [Updated] " oreo639
                   ` (45 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-09-27 17:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 299 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1259811175

Comment:
Actually, you're right; we shouldn't let the `webkit2gtk-devel` package pull in both gtk4 and gtk3. Please disregard my request to merge all devel packages.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (26 preceding siblings ...)
  2022-09-27 17:15 ` ahesford
@ 2022-09-27 21:24 ` oreo639
  2022-09-27 21:31 ` oreo639
                   ` (44 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 21:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 15137 bytes --]

From 564d4650d548088c8393dcd637705fd8faa0b33e Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 109 ++++++++++++++++--
 10 files changed, 147 insertions(+), 51 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common

diff --git a/common/shlibs b/common/shlibs
index c962f0ab7622..d1d2bdd2403c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -540,6 +540,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..7d7754b0c147 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +19,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40 && \
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50 && \
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc+="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel webkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel webkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (27 preceding siblings ...)
  2022-09-27 21:24 ` [PR PATCH] [Updated] " oreo639
@ 2022-09-27 21:31 ` oreo639
  2022-09-27 22:10 ` oreo639
                   ` (43 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 21:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 15141 bytes --]

From a8510091f711923ac990aeff8425ed509c93ac4e Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 109 ++++++++++++++++--
 10 files changed, 147 insertions(+), 51 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common

diff --git a/common/shlibs b/common/shlibs
index c962f0ab7622..d1d2bdd2403c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -540,6 +540,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..7d7754b0c147 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +19,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40 && \
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50 && \
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc+="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel webkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel webkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (28 preceding siblings ...)
  2022-09-27 21:31 ` oreo639
@ 2022-09-27 22:10 ` oreo639
  2022-09-28  6:52 ` oreo639
                   ` (42 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-27 22:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 15147 bytes --]

From 644aa6bed712baabb4134226ec68e7048805b7e5 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 109 ++++++++++++++++--
 10 files changed, 147 insertions(+), 51 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common

diff --git a/common/shlibs b/common/shlibs
index c962f0ab7622..d1d2bdd2403c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -540,6 +540,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..ba02b128b1d1 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +19,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40 && \
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50 && \
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc+="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel libwebkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel libwebkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (29 preceding siblings ...)
  2022-09-27 22:10 ` oreo639
@ 2022-09-28  6:52 ` oreo639
  2022-09-28  6:52 ` oreo639
                   ` (41 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-28  6:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 515 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1260465980

Comment:
One blocker is that running webkit2gtk in sandbox mode results in the web processes being unable to connect to dbus, this seems to be an issue on other non-systemd distros, not sure what the cause it.
We were able to ignore it, however the next release of epiphany will make it a hard error.

I don't run into that issue on flatpak though (i.e. the epiphany 43 flatpak).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (30 preceding siblings ...)
  2022-09-28  6:52 ` oreo639
@ 2022-09-28  6:52 ` oreo639
  2022-09-28  6:52 ` oreo639
                   ` (40 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-28  6:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 528 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1260465980

Comment:
One blocker is that running webkit2gtk in sandbox mode results in the web processes being unable to connect to dbus, this seems to be an issue on other non-systemd distros, not sure what the cause of it is though.
We were able to ignore it, however the next release of epiphany will make it a hard error.

I don't run into that issue on flatpak though (i.e. the epiphany 43 flatpak).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (31 preceding siblings ...)
  2022-09-28  6:52 ` oreo639
@ 2022-09-28  6:52 ` oreo639
  2022-09-28  6:53 ` oreo639
                   ` (39 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-28  6:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 540 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1260465980

Comment:
One blocker is that running webkit2gtk in sandbox mode results in the web processes being unable to connect to dbus, this seems to be an issue on other non-systemd distros, not sure what the cause of it is though.
We were able to ignore it in the past, however the next release of epiphany will make it a hard error.

I don't run into that issue on flatpak though (i.e. the epiphany 43 flatpak).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (32 preceding siblings ...)
  2022-09-28  6:52 ` oreo639
@ 2022-09-28  6:53 ` oreo639
  2022-09-28 20:45 ` oreo639
                   ` (38 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-28  6:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 551 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1260465980

Comment:
One blocker is that running webkit2gtk in sandbox mode results in the web processes being unable to connect to dbus, this seems to be an issue on other non-systemd distros, not sure what the cause of it is though.
We were able to ignore it in the past, however the next release of epiphany will make it a hard error.

I don't run into that issue on flatpak though (i.e. the epiphany 43 flatpak on flathub).

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (33 preceding siblings ...)
  2022-09-28  6:53 ` oreo639
@ 2022-09-28 20:45 ` oreo639
  2022-10-01 16:59 ` paper42
                   ` (37 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-09-28 20:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 657 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1260465980

Comment:
One blocker is that running webkit2gtk in sandbox mode results in the web processes being unable to connect to dbus, this seems to be an issue on other non-systemd distros, not sure what the cause of it is though.
We were able to ignore it in the past, however the next release of epiphany will make it a hard error.

I don't run into that issue on flatpak though (i.e. the epiphany 43 flatpak on flathub).

Edit: the issue has been identified https://gitlab.gnome.org/GNOME/epiphany/-/issues/1852#note_1562896

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (34 preceding siblings ...)
  2022-09-28 20:45 ` oreo639
@ 2022-10-01 16:59 ` paper42
  2022-10-01 18:29 ` oreo639
                   ` (36 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-01 16:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 416 bytes --]

New comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264419447

Comment:
> We were able to ignore it in the past, however the next release of epiphany will make it a hard error.

If this is an error only with epiphany 43, then we don't have to fix it in this PR. This PR is holding quite a bit of updates, so it would be nice to get this merged.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (35 preceding siblings ...)
  2022-10-01 16:59 ` paper42
@ 2022-10-01 18:29 ` oreo639
  2022-10-01 18:30 ` oreo639
                   ` (35 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 741 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the dbus default configuration uses tmpdir which defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (36 preceding siblings ...)
  2022-10-01 18:29 ` oreo639
@ 2022-10-01 18:30 ` oreo639
  2022-10-01 18:30 ` oreo639
                   ` (34 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 779 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the dbus default configuration uses tmpdir which defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (37 preceding siblings ...)
  2022-10-01 18:30 ` oreo639
@ 2022-10-01 18:30 ` oreo639
  2022-10-01 18:35 ` oreo639
                   ` (33 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 779 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the default dbus configuration uses tmpdir which defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (38 preceding siblings ...)
  2022-10-01 18:30 ` oreo639
@ 2022-10-01 18:35 ` oreo639
  2022-10-01 18:40 ` oreo639
                   ` (32 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 829 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the default dbus configuration uses tmpdir which defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

https://bugs.webkit.org/show_bug.cgi?id=245843

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (39 preceding siblings ...)
  2022-10-01 18:35 ` oreo639
@ 2022-10-01 18:40 ` oreo639
  2022-10-01 18:46 ` oreo639
                   ` (31 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 885 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the default dbus configuration uses tmpdir which defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

https://bugs.webkit.org/show_bug.cgi?id=245843

There still isn't a solution upstream unfortunately.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (40 preceding siblings ...)
  2022-10-01 18:40 ` oreo639
@ 2022-10-01 18:46 ` oreo639
  2022-10-01 18:47 ` oreo639
                   ` (30 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 908 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the default dbus configuration uses tmpdir which on Linux (but not BSD) defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containerss which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

https://bugs.webkit.org/show_bug.cgi?id=245843

There still isn't a solution upstream unfortunately.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (41 preceding siblings ...)
  2022-10-01 18:46 ` oreo639
@ 2022-10-01 18:47 ` oreo639
  2022-10-01 18:57 ` ahesford
                   ` (29 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 907 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264446947

Comment:
> If this is an error only with epiphany 43, then we don't have to fix it in this PR.

TL;DR: webkit2gtk fails to connect to dbus since it disables networking in containers and the default dbus configuration uses tmpdir which on Linux (but not BSD) defaults to abstract sockets (although there is a PR in dbus to change that). It doesn't affect distros using the systemd user init because that overrides the settings to use the filesystem instead of abstract sockets.
(This doesn't affect flatpak because flatpak creates its own socket path and uses it in the containers which webkit2gtk is supposed to do but doesn't)

This doesn't just affect epiphany.

https://bugs.webkit.org/show_bug.cgi?id=245843

There still isn't a solution upstream unfortunately.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (42 preceding siblings ...)
  2022-10-01 18:47 ` oreo639
@ 2022-10-01 18:57 ` ahesford
  2022-10-01 18:59 ` oreo639
                   ` (28 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-10-01 18:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 211 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452011

Comment:
Can't the socket issue be fixed with a configuration change in dbus?

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (43 preceding siblings ...)
  2022-10-01 18:57 ` ahesford
@ 2022-10-01 18:59 ` oreo639
  2022-10-01 19:00 ` oreo639
                   ` (27 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 18:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 216 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
Yes, although if the configuration doesn't update it will still be broken.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (44 preceding siblings ...)
  2022-10-01 18:59 ` oreo639
@ 2022-10-01 19:00 ` oreo639
  2022-10-01 19:00 ` oreo639
                   ` (26 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:00 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 262 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
Yes, although if the configuration doesn't update it will still be broken.
The file is `/usr/share/dbus-1/session.conf`

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (45 preceding siblings ...)
  2022-10-01 19:00 ` oreo639
@ 2022-10-01 19:00 ` oreo639
  2022-10-01 19:01 ` oreo639
                   ` (25 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:00 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 266 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (46 preceding siblings ...)
  2022-10-01 19:00 ` oreo639
@ 2022-10-01 19:01 ` oreo639
  2022-10-01 19:02 ` oreo639
                   ` (24 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 337 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`
You can change `tmpdir=` to `dir=` and that would also fix the issue.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (47 preceding siblings ...)
  2022-10-01 19:01 ` oreo639
@ 2022-10-01 19:02 ` oreo639
  2022-10-01 19:02 ` oreo639
                   ` (23 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 344 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`
You can change `tmpdir=` to `dir=` and that would also workaround the issue.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (48 preceding siblings ...)
  2022-10-01 19:02 ` oreo639
@ 2022-10-01 19:02 ` oreo639
  2022-10-01 19:08 ` ahesford
                   ` (22 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 337 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`
You can change `tmpdir=` to `dir=` and that would also fix the issue.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (49 preceding siblings ...)
  2022-10-01 19:02 ` oreo639
@ 2022-10-01 19:08 ` ahesford
  2022-10-01 19:19 ` oreo639
                   ` (21 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-10-01 19:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 797 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264456439

Comment:
In that case, I think we resolve this problem by adding an INSTALL.msg to the relevant webkit2gtk package(s) noting that sandboxed applications may require this configuration change and leave it at that. (If you want to provide more details, *e.g.* examples, install a README.voidlinux and have the INSTALL.msg refer to it.)

We don't need to anticipate and resolve any upstream changes that will break without configuration updates; that's the job of the user. (It would be nice if we could mark some updates as "manual intervention required" to force some critical notices to receive user attention, but alas, XBPS provides us no suitable mechanism.)

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (50 preceding siblings ...)
  2022-10-01 19:08 ` ahesford
@ 2022-10-01 19:19 ` oreo639
  2022-10-01 19:35 ` oreo639
                   ` (20 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 394 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`
You can change `tmpdir=` to `dir=` and that would also fix the issue.

Edit: Nvm that didn't work, maybe I missed something.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (51 preceding siblings ...)
  2022-10-01 19:19 ` oreo639
@ 2022-10-01 19:35 ` oreo639
  2022-10-02  1:16 ` oreo639
                   ` (19 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-01 19:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 420 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes.
The file is `/usr/share/dbus-1/session.conf`
You can change `tmpdir=` to `dir=` and that would also fix the issue.

Edit: Nvm that doesn't work either since `/tmp` isn't visible to the container.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (52 preceding siblings ...)
  2022-10-01 19:35 ` oreo639
@ 2022-10-02  1:16 ` oreo639
  2022-10-02  1:22 ` oreo639
                   ` (18 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-02  1:16 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 434 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Yes. You can workaround it by using `path=/run`, but that isn't a good solution, since as stated here: https://bugs.webkit.org/show_bug.cgi?id=245843 it's supposed to pass the session address created by xdg-dbus-proxy.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (53 preceding siblings ...)
  2022-10-02  1:16 ` oreo639
@ 2022-10-02  1:22 ` oreo639
  2022-10-02 10:54 ` [PR PATCH] [Updated] " oreo639
                   ` (17 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-02  1:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 235 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264452354

Comment:
> Can't the socket issue be fixed with a configuration change in dbus?

Didn't work for me.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (54 preceding siblings ...)
  2022-10-02  1:22 ` oreo639
@ 2022-10-02 10:54 ` oreo639
  2022-10-02 10:55 ` oreo639
                   ` (16 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-02 10:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 16247 bytes --]

From 11d5fe2da72d1137fd2c21c2573f4acd55caf220 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 .../webkit2gtk/patches/fix-dbus-proxy.patch   |  15 +++
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 109 ++++++++++++++++--
 11 files changed, 162 insertions(+), 51 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common
 create mode 100644 srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch

diff --git a/common/shlibs b/common/shlibs
index 987cff25f146..20d5859e7ae0 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -540,6 +540,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch b/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch
new file mode 100644
index 000000000000..0c9e28a486fe
--- /dev/null
+++ b/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch
@@ -0,0 +1,15 @@
+--- a/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
++++ b/SSource/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
+@@ -206,9 +206,10 @@ static void bindDBusSession(Vector<CStri
+ {
+     static std::unique_ptr<XDGDBusProxy> proxy = makeUnique<XDGDBusProxy>(XDGDBusProxy::Type::SessionBus, allowPortals);
+ 
+-    if (!proxy->proxyPath().isNull() && !proxy->path().isNull()) {
++    if (!proxy->proxyPath().isNull()) {
+         args.appendVector(Vector<CString>({
+-            "--bind", proxy->proxyPath(), proxy->path(),
++            "--bind", proxy->proxyPath(), "/run/webkitgtk/bus",
++            "--setenv", "DBUS_SESSION_BUS_ADDRESS", "unix:path=/run/webkitgtk/bus",
+         }));
+     }
+ }
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..ba02b128b1d1 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -20,23 +19,24 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
 hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
 distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40 && \
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50 && \
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc+="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel libwebkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel libwebkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (55 preceding siblings ...)
  2022-10-02 10:54 ` [PR PATCH] [Updated] " oreo639
@ 2022-10-02 10:55 ` oreo639
  2022-10-05 21:20 ` [PR REVIEW] " paper42
                   ` (15 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-02 10:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 174 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1264612617

Comment:
Alright, it should be fixed now.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (59 preceding siblings ...)
  2022-10-05 21:20 ` paper42
@ 2022-10-05 21:20 ` paper42
  2022-10-05 21:20 ` paper42
                   ` (11 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 241 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988362061

Comment:
```suggestion
		cd webkit2gtk-50
```
or is there a reason why we should use `&&` @ahesford?

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (60 preceding siblings ...)
  2022-10-05 21:20 ` paper42
@ 2022-10-05 21:20 ` paper42
  2022-10-05 22:23 ` ahesford
                   ` (10 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 238 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988362539

Comment:
```suggestion
distfiles="https://webkitgtk.org//releases/webkitgtk-${version}.tar.xz"
```

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (58 preceding siblings ...)
  2022-10-05 21:20 ` paper42
@ 2022-10-05 21:20 ` paper42
  2022-10-05 21:20 ` paper42
                   ` (12 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 335 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988360969

Comment:
I am not sure if this is safe, are you sure this will always use $depends from the main package? Either way, it's only webkit2gtk-common, so I think it might make sense to just write that.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (56 preceding siblings ...)
  2022-10-02 10:55 ` oreo639
@ 2022-10-05 21:20 ` paper42
  2022-10-05 21:20 ` paper42
                   ` (14 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 166 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988362793

Comment:
Can we use python3?

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (57 preceding siblings ...)
  2022-10-05 21:20 ` [PR REVIEW] " paper42
@ 2022-10-05 21:20 ` paper42
  2022-10-05 21:20 ` paper42
                   ` (13 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 234 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988359708

Comment:
```suggestion
	short_desc="GTK port of the WebKit2 browser engine - common files"
```

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (61 preceding siblings ...)
  2022-10-05 21:20 ` paper42
@ 2022-10-05 22:23 ` ahesford
  2022-10-05 22:27 ` paper42
                   ` (9 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: ahesford @ 2022-10-05 22:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 252 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988401505

Comment:
Not really, I'm just in the habit of using `&&` in these constructs to fail fast and avoid side effects.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (62 preceding siblings ...)
  2022-10-05 22:23 ` ahesford
@ 2022-10-05 22:27 ` paper42
  2022-10-08  2:38 ` oreo639
                   ` (8 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-05 22:27 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 264 bytes --]

New review comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r988403693

Comment:
any error in the template should stop the build. If the subshell inherits that property, I think && could be removed.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (63 preceding siblings ...)
  2022-10-05 22:27 ` paper42
@ 2022-10-08  2:38 ` oreo639
  2022-10-08  2:38 ` oreo639
                   ` (7 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-08  2:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 190 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r990576499

Comment:
It also needs bubblewrap and xdg-dbus-proxy

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR REVIEW] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (64 preceding siblings ...)
  2022-10-08  2:38 ` oreo639
@ 2022-10-08  2:38 ` oreo639
  2022-10-08  2:49 ` [PR PATCH] [Updated] " oreo639
                   ` (6 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-08  2:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 229 bytes --]

New review comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#discussion_r990576499

Comment:
It also needs bubblewrap and xdg-dbus-proxy if `$build_option_bubblewrap` is true.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (65 preceding siblings ...)
  2022-10-08  2:38 ` oreo639
@ 2022-10-08  2:49 ` oreo639
  2022-10-21  0:29 ` paper42
                   ` (5 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-08  2:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 16445 bytes --]

From 83ad9cc50baf0c5f06e5a7d1b373d1fcc021d02c Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 .../webkit2gtk/patches/fix-dbus-proxy.patch   |  15 +++
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 113 ++++++++++++++++--
 11 files changed, 164 insertions(+), 53 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common
 create mode 100644 srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch

diff --git a/common/shlibs b/common/shlibs
index 57ab76436664..f4ab762929b4 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -540,6 +540,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch b/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch
new file mode 100644
index 000000000000..0c9e28a486fe
--- /dev/null
+++ b/srcpkgs/webkit2gtk/patches/fix-dbus-proxy.patch
@@ -0,0 +1,15 @@
+--- a/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
++++ b/SSource/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
+@@ -206,9 +206,10 @@ static void bindDBusSession(Vector<CStri
+ {
+     static std::unique_ptr<XDGDBusProxy> proxy = makeUnique<XDGDBusProxy>(XDGDBusProxy::Type::SessionBus, allowPortals);
+ 
+-    if (!proxy->proxyPath().isNull() && !proxy->path().isNull()) {
++    if (!proxy->proxyPath().isNull()) {
+         args.appendVector(Vector<CString>({
+-            "--bind", proxy->proxyPath(), proxy->path(),
++            "--bind", proxy->proxyPath(), "/run/webkitgtk/bus",
++            "--setenv", "DBUS_SESSION_BUS_ADDRESS", "unix:path=/run/webkitgtk/bus",
+         }));
+     }
+ }
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..eab38e756eb3 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.0
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -19,24 +18,25 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DENABLE_BUBBLEWRAP_SANDBOX=$(vopt_if bubblewrap ON OFF)"
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
-hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+hostmakedepends="perl python3 pkg-config gperf flex ruby gettext glib-devel
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
-distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+distfiles="https://webkitgtk.org/releases/webkitgtk-${version}.tar.xz"
+checksum=f9ce6375a3b6e1329b0b609f46921e2627dc7ad6224b37b967ab2ea643bc0fbd
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel libwebkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel libwebkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (66 preceding siblings ...)
  2022-10-08  2:49 ` [PR PATCH] [Updated] " oreo639
@ 2022-10-21  0:29 ` paper42
  2022-10-21  4:55 ` [PR PATCH] [Updated] " oreo639
                   ` (4 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-21  0:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 160 bytes --]

New comment by paper42 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1286308787

Comment:
2.38.1 is released

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (67 preceding siblings ...)
  2022-10-21  0:29 ` paper42
@ 2022-10-21  4:55 ` oreo639
  2022-10-21  4:56 ` oreo639
                   ` (3 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-21  4:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 15345 bytes --]

From e4090ecbdbd88cc02150099e6189301e4cdb2dd3 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.0.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 113 ++++++++++++++++--
 10 files changed, 149 insertions(+), 53 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common

diff --git a/common/shlibs b/common/shlibs
index ecab4d8f7ecc..9712cbc1262f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -541,6 +541,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..1e3231804b0e 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.1
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -19,24 +18,25 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DENABLE_BUBBLEWRAP_SANDBOX=$(vopt_if bubblewrap ON OFF)"
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
-hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+hostmakedepends="perl python3 pkg-config gperf flex ruby gettext glib-devel
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
-distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+distfiles="https://webkitgtk.org/releases/webkitgtk-${version}.tar.xz"
+checksum=02e195b3fb9e057743b3364ee7f1eec13f71614226849544c07c32a73b8f1848
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel libwebkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel libwebkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (68 preceding siblings ...)
  2022-10-21  4:55 ` [PR PATCH] [Updated] " oreo639
@ 2022-10-21  4:56 ` oreo639
  2022-10-21  4:57 ` [PR PATCH] [Updated] " oreo639
                   ` (2 subsequent siblings)
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-21  4:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 212 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1286460330

Comment:
> 2.38.1 is released

Thanks. I tested it and it seems to work fine.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Updated] webkit2gtk: update to 2.38.0.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (69 preceding siblings ...)
  2022-10-21  4:56 ` oreo639
@ 2022-10-21  4:57 ` oreo639
  2022-10-21  5:08 ` webkit2gtk: update to 2.38.1 oreo639
  2022-10-21  9:48 ` [PR PATCH] [Merged]: " paper42
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-21  4:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages webkit2gtk
https://github.com/void-linux/void-packages/pull/39488

webkit2gtk: update to 2.38.0.
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/39488.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-webkit2gtk-39488.patch --]
[-- Type: text/x-diff, Size: 15345 bytes --]

From 65bddd74a40ac0d415edfb21e137ec4b5cbd3e2a Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 26 Sep 2022 23:00:57 -0700
Subject: [PATCH] webkit2gtk: update to 2.38.1.

This splits webkit2gtk into 3 packages:
+ webkit2gtk: GTK+3 and libsoup2
+ libwebkit2gtk41: GTK+3 and libsoup3
+ libwebkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be
used at the same time.
Ideally the other packages would eventually be no longer necessary.
---
 common/shlibs                                 |   4 +
 srcpkgs/libwebkit2gtk41                       |   1 +
 srcpkgs/libwebkit2gtk41-devel                 |   1 +
 srcpkgs/libwebkit2gtk50                       |   1 +
 srcpkgs/libwebkit2gtk50-devel                 |   1 +
 srcpkgs/webkit2gtk-common                     |   1 +
 .../webkit2gtk/patches/be-typedarray.patch    |  60 +++++-----
 srcpkgs/webkit2gtk/patches/fix_armv6l.patch   |  12 +-
 srcpkgs/webkit2gtk/patches/reproducible.patch |   8 +-
 srcpkgs/webkit2gtk/template                   | 113 ++++++++++++++++--
 10 files changed, 149 insertions(+), 53 deletions(-)
 create mode 120000 srcpkgs/libwebkit2gtk41
 create mode 120000 srcpkgs/libwebkit2gtk41-devel
 create mode 120000 srcpkgs/libwebkit2gtk50
 create mode 120000 srcpkgs/libwebkit2gtk50-devel
 create mode 120000 srcpkgs/webkit2gtk-common

diff --git a/common/shlibs b/common/shlibs
index ecab4d8f7ecc..9712cbc1262f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -541,6 +541,10 @@ libgnome-panel.so.0 gnome-panel-3.37.1_1
 libuninum.so.5 libuninum-2.7_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1
+libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1
+libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
+libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1
 libgimp-2.0.so.0 libgimp-2.10.0_1
 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1
 libgimpui-2.0.so.0 libgimp-2.10.0_1
diff --git a/srcpkgs/libwebkit2gtk41 b/srcpkgs/libwebkit2gtk41
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk41-devel b/srcpkgs/libwebkit2gtk41-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk41-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50 b/srcpkgs/libwebkit2gtk50
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/libwebkit2gtk50-devel b/srcpkgs/libwebkit2gtk50-devel
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/libwebkit2gtk50-devel
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk-common b/srcpkgs/webkit2gtk-common
new file mode 120000
index 000000000000..8ae98428991b
--- /dev/null
+++ b/srcpkgs/webkit2gtk-common
@@ -0,0 +1 @@
+webkit2gtk
\ No newline at end of file
diff --git a/srcpkgs/webkit2gtk/patches/be-typedarray.patch b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
index f21c8fb57e45..fe93c2761305 100644
--- a/srcpkgs/webkit2gtk/patches/be-typedarray.patch
+++ b/srcpkgs/webkit2gtk/patches/be-typedarray.patch
@@ -165,42 +165,42 @@ diff --git a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunct
 index df0435f6..3017563c 100644
 --- a/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
 +++ b/Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h
-@@ -213,9 +213,36 @@ ALWAYS_INLINE EncodedJSValue genericTypedArrayViewProtoFuncIncludes(VM& vm, JSGl
-     scope.assertNoExceptionExceptTermination();
+@@ -351,9 +351,36 @@ ALWAYS_INLINE EncodedJSValue genericType
      RELEASE_ASSERT(!thisObject->isDetached());
  
--    if (std::isnan(static_cast<double>(*targetOption))) {
-+    double targetOptionLittleEndianAsDouble;
+     if constexpr (ViewClass::Adaptor::isFloat) {
+-        if (std::isnan(static_cast<double>(*targetOption))) {
++        double targetOptionLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+    switch (ViewClass::TypedArrayStorageType) {
-+    case TypeFloat32:
-+    case TypeFloat64:
-+        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
-+    default:
-+        // typed array views are commonly expected to be little endian views of the underlying data
-+        targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
-+    }
++        switch (ViewClass::TypedArrayStorageType) {
++        case TypeFloat32:
++        case TypeFloat64:
++            targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        default:
++            // typed array views are commonly expected to be little endian views of the underlying data
++            targetOptionLittleEndianAsDouble = static_cast<double>(flipBytes(*targetOption));
++        }
 +#else
-+    targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
++        targetOptionLittleEndianAsDouble = static_cast<double>(*targetOption);
 +#endif
 +
-+    if (std::isnan(targetOptionLittleEndianAsDouble)) {
-         for (; index < length; ++index) {
--            if (std::isnan(static_cast<double>(array[index])))
-+            double arrayElementLittleEndianAsDouble;
++        if (std::isnan(targetOptionLittleEndianAsDouble)) {
+             for (; index < length; ++index) {
+-                if (std::isnan(static_cast<double>(array[index])))
++                double arrayElementLittleEndianAsDouble;
 +#if CPU(BIG_ENDIAN)
-+            switch (ViewClass::TypedArrayStorageType) {
-+            case TypeFloat32:
-+            case TypeFloat64:
-+                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
-+            default:
-+                // typed array views are commonly expected to be little endian views of the underlying data
-+                arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
-+            }
++                switch (ViewClass::TypedArrayStorageType) {
++                case TypeFloat32:
++                case TypeFloat64:
++                    arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                default:
++                    // typed array views are commonly expected to be little endian views of the underlying data
++                    arrayElementLittleEndianAsDouble = static_cast<double>(flipBytes(array[index]));
++                }
 +#else
-+            arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
++                arrayElementLittleEndianAsDouble = static_cast<double>(array[index]);
 +#endif
-+            if (std::isnan(arrayElementLittleEndianAsDouble))
-                 return JSValue::encode(jsBoolean(true));
-         }
-     } else {
++                if (std::isnan(arrayElementLittleEndianAsDouble))
+                     return JSValue::encode(jsBoolean(true));
+             }
+             return JSValue::encode(jsBoolean(false));
diff --git a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
index 859aa9343694..fdaf19991924 100644
--- a/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
+++ b/srcpkgs/webkit2gtk/patches/fix_armv6l.patch
@@ -4,9 +4,9 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 
 --- a/Source/JavaScriptCore/offlineasm/arm.rb	2015-07-22 14:37:57.000000000 +0200
 +++ b/Source/JavaScriptCore/offlineasm/arm.rb	2015-08-08 00:31:21.011824644 +0200
-@@ -546,8 +546,16 @@
-                 $asm.puts "mov #{armFlippedOperands(operands)}"
-             end
+@@ -756,8 +756,16 @@ class Instruction
+             armMoveImmediate(operands[0].value >> 32, operands[1])
+             armMoveImmediate(operands[0].value & 0xffffffff, operands[2])
          when "mvlbl"
 +            if isARMv7 or isARMv7Traditional
                  $asm.puts "movw #{operands[1].armOperand}, \#:lower16:#{operands[0].value}"
@@ -18,6 +18,6 @@ and https://bugs.webkit.org/show_bug.cgi?id=141288
 +                $asm.puts ".equ #{const_label}, (#{operands[0].value})"
 +                $asm.puts "ldr  #{operands[1].armOperand}, =#{const_label}"
 +            end
-         when "nop"
-             $asm.puts "nop"
-         when "bieq", "bpeq", "bbeq"
+         when "sxb2i"
+             $asm.puts "sxtb #{armFlippedOperands(operands)}"
+         when "sxh2i"
diff --git a/srcpkgs/webkit2gtk/patches/reproducible.patch b/srcpkgs/webkit2gtk/patches/reproducible.patch
index 4d0776c16840..2f3a555cbcfd 100644
--- a/srcpkgs/webkit2gtk/patches/reproducible.patch
+++ b/srcpkgs/webkit2gtk/patches/reproducible.patch
@@ -21,10 +21,10 @@ diff --git a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/Source/WebCore
 index be5a5d51..becb2b2f 100644
 --- a/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
 +++ b/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
-@@ -3163,7 +3163,7 @@ sub GenerateHeader
-     if (%structureFlags) {
-         push(@headerContent, "public:\n");
-         push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+@@ -3217,7 +3217,7 @@ sub GenerateHeader
+         } else {
+             push(@headerContent, "    static constexpr unsigned StructureFlags = Base::StructureFlags");
+         }
 -        foreach my $structureFlag (sort (keys %structureFlags)) {
 +        foreach my $structureFlag (sort (sort keys %structureFlags)) {
              push(@headerContent, " | " . $structureFlag);
diff --git a/srcpkgs/webkit2gtk/template b/srcpkgs/webkit2gtk/template
index 618dc43ed4ee..1e3231804b0e 100644
--- a/srcpkgs/webkit2gtk/template
+++ b/srcpkgs/webkit2gtk/template
@@ -1,14 +1,13 @@
 # Template file for 'webkit2gtk'
 pkgname=webkit2gtk
-version=2.36.7
+version=2.38.1
 revision=1
 wrksrc="webkitgtk-${version}"
 build_style=cmake
 build_helper="gir"
 configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc -DCMAKE_SKIP_RPATH=ON
- -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_SOUP2=ON
- -DENABLE_GTKDOC=OFF -DUSE_WPE_RENDERER=ON
+ -DENABLE_JOURNALD_LOG=OFF -DUSE_WOFF2=ON -DUSE_WPE_RENDERER=ON
  -DENABLE_MINIBROWSER=$(vopt_if minibrowser ON OFF)
  -DENABLE_JIT=$(vopt_if jit ON OFF)
  -DENABLE_C_LOOP=$(vopt_if jit OFF ON)
@@ -19,24 +18,25 @@ configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
  -DENABLE_BUBBLEWRAP_SANDBOX=$(vopt_if bubblewrap ON OFF)"
 # Don't remove which from hostmakedepends
 # Otherwise, they invoke /usr/bin/ccache /usr/lib/ccache/bin/$CC
-hostmakedepends="perl python pkg-config gperf flex ruby gettext glib-devel
- geoclue2 libharfbuzz which libpsl
+hostmakedepends="perl python3 pkg-config gperf flex ruby gettext glib-devel
+ geoclue2 libharfbuzz which libpsl gi-docgen
  $(vopt_if wayland 'wayland-devel libxml2-devel')"
 makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
  harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
- libsoup-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
- dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
+ libsoup-devel libsoup3-devel libxslt-devel gnutls-devel icu-devel enchant2-devel
+ dbus-glib-devel libwebp-devel gtk+3-devel gtk4-devel libgudev-devel
  libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
  woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
  qt5-devel libmanette-devel libwpe-devel wpebackend-fdo-devel
  libgcrypt-devel libnuspell-devel libpsl-devel $(vopt_if x11 libXt-devel)
  $(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
+depends="webkit2gtk-common"
 short_desc="GTK+3 port of the WebKit2 browser engine"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later, BSD-2-Clause"
 homepage="https://webkitgtk.org/"
-distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
-checksum=0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743
+distfiles="https://webkitgtk.org/releases/webkitgtk-${version}.tar.xz"
+checksum=02e195b3fb9e057743b3364ee7f1eec13f71614226849544c07c32a73b8f1848
 make_check=no
 
 build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser
@@ -132,7 +132,30 @@ pre_configure() {
 	esac
 }
 
+post_configure() {
+	mkdir -p webkit2gtk-40 webkit2gtk-50
+	(
+		cd webkit2gtk-40
+		configure_args="${configure_args} -DUSE_SOUP2=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+
+	(
+		cd webkit2gtk-50
+		configure_args="${configure_args} -DUSE_GTK4=ON -DENABLE_WEBDRIVER=OFF" \
+		do_configure
+	)
+}
+
+post_build() {
+	(cd webkit2gtk-40 && NINJA_STATUS="[2/3][%f/%t] " do_build)
+	(cd webkit2gtk-50 && NINJA_STATUS="[3/3][%f/%t] " do_build)
+}
+
 post_install() {
+	(cd webkit2gtk-40 && do_install)
+	(cd webkit2gtk-50 && do_install)
+
 	vlicense Source/WebCore/LICENSE-APPLE
 	vlicense Source/WebCore/LICENSE-LGPL-2.1
 	vlicense Source/WebCore/LICENSE-LGPL-2
@@ -142,11 +165,75 @@ webkit2gtk-devel_package() {
 	depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
-		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/include/webkitgtk-4.0
+		vmove "usr/lib/pkgconfig/*-4.0.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.0.gir"
+			vmove "usr/share/gtk-doc/html/*-4.0"
+		fi
+		vmove "usr/lib/*-4.0.so"
+	}
+}
+
+webkit2gtk-common_package() {
+	short_desc="GTK port of the WebKit2 browser engine - common files"
+	pkg_install() {
+		vmove usr/share/locale/
+		vmove usr/share/licenses/
+	}
+}
+
+libwebkit2gtk41_package() {
+	depends="${depends}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3)"
+	pkg_install() {
+		vmove usr/bin/WebKitWebDriver
+		vmove usr/libexec/webkit2gtk-4.1
+		vmove usr/lib/webkit2gtk-4.1
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-4.1.typelib"
+		fi
+		vmove "usr/lib/*-4.1.so.*"
+	}
+}
+
+libwebkit2gtk41-devel_package() {
+	depends="gtk+3-devel libsoup3-devel libwebkit2gtk41>=${version}_${revision}"
+	short_desc="GTK+3 port of the WebKit2 browser engine (soup3) - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-4.1
+		vmove "usr/lib/pkgconfig/*-4.1.pc"
+		if [ "$build_option_gir" ]; then
+			vmove "usr/share/gir-1.0/*-4.1.gir"
+			vmove "usr/share/gtk-doc/html/*-4.1"
+		fi
+		vmove "usr/lib/*-4.1.so"
+	}
+}
+
+libwebkit2gtk50_package() {
+	depends="${depends}"
+	short_desc="GTK4 port of the WebKit2 browser engine"
+	pkg_install() {
+		vmove usr/libexec/webkit2gtk-5.0
+		vmove usr/lib/webkit2gtk-5.0
+		if [ "$build_option_gir" ]; then
+			vmove "usr/lib/girepository-1.0/*-5.0.typelib"
+		fi
+		vmove "usr/lib/*-5.0.so.*"
+	}
+}
+
+libwebkit2gtk50-devel_package() {
+	depends="gtk4-devel libsoup3-devel libwebkit2gtk50>=${version}_${revision}"
+	short_desc="GTK4 port of the WebKit2 browser engine - development files"
+	pkg_install() {
+		vmove usr/include/webkitgtk-5.0
+		vmove "usr/lib/pkgconfig/*-5.0.pc"
 		if [ "$build_option_gir" ]; then
-			vmove usr/share/gir-1.0
+			vmove "usr/share/gir-1.0/*-5.0.gir"
+			vmove "usr/share/gtk-doc/html/*-5.0"
 		fi
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/*-5.0.so"
 	}
 }

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: webkit2gtk: update to 2.38.1.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (70 preceding siblings ...)
  2022-10-21  4:57 ` [PR PATCH] [Updated] " oreo639
@ 2022-10-21  5:08 ` oreo639
  2022-10-21  9:48 ` [PR PATCH] [Merged]: " paper42
  72 siblings, 0 replies; 74+ messages in thread
From: oreo639 @ 2022-10-21  5:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 219 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/39488#issuecomment-1286460330

Comment:
> 2.38.1 is released

Thanks. I tested it and it seems to work fine afaict.

^ permalink raw reply	[flat|nested] 74+ messages in thread

* Re: [PR PATCH] [Merged]: webkit2gtk: update to 2.38.1.
  2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
                   ` (71 preceding siblings ...)
  2022-10-21  5:08 ` webkit2gtk: update to 2.38.1 oreo639
@ 2022-10-21  9:48 ` paper42
  72 siblings, 0 replies; 74+ messages in thread
From: paper42 @ 2022-10-21  9:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1556 bytes --]

There's a merged pull request on the void-packages repository

webkit2gtk: update to 2.38.1.
https://github.com/void-linux/void-packages/pull/39488

Description:
[ci skip]

This splits webkit2gtk into 3 packages:
+ webkit2gtk40: GTK+3 and libsoup2
+ webkit2gtk41: GTK+3 and libsoup3
+ webkit2gtk50: GTK4 and libsoup3

This is necessary since libsoup2 and libsoup3 cannot be used by an application at the same time.
Ideally in the future, the packages using webkit2gtk40 would be moved to webkit2gtk41 or 50 (or be dropped).

I tested this PR with epiphany 42 and it seems to work (and it compiles sucessfully).

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 74+ messages in thread

end of thread, other threads:[~2022-10-21  9:48 UTC | newest]

Thread overview: 74+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-27  6:04 [PR PATCH] webkit2gtk: update to 2.38.0 oreo639
2022-09-27  6:19 ` [PR PATCH] [Updated] " oreo639
2022-09-27 12:18 ` [PR REVIEW] " ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 12:18 ` ahesford
2022-09-27 16:38 ` oreo639
2022-09-27 16:38 ` oreo639
2022-09-27 16:39 ` oreo639
2022-09-27 16:39 ` oreo639
2022-09-27 16:39 ` oreo639
2022-09-27 16:45 ` [PR REVIEW] " ahesford
2022-09-27 16:45 ` oreo639
2022-09-27 16:46 ` oreo639
2022-09-27 16:46 ` ahesford
2022-09-27 16:47 ` [PR REVIEW] " oreo639
2022-09-27 16:47 ` oreo639
2022-09-27 16:48 ` oreo639
2022-09-27 16:52 ` oreo639
2022-09-27 16:52 ` [PR REVIEW] " ahesford
2022-09-27 16:54 ` oreo639
2022-09-27 16:54 ` oreo639
2022-09-27 17:15 ` ahesford
2022-09-27 21:24 ` [PR PATCH] [Updated] " oreo639
2022-09-27 21:31 ` oreo639
2022-09-27 22:10 ` oreo639
2022-09-28  6:52 ` oreo639
2022-09-28  6:52 ` oreo639
2022-09-28  6:52 ` oreo639
2022-09-28  6:53 ` oreo639
2022-09-28 20:45 ` oreo639
2022-10-01 16:59 ` paper42
2022-10-01 18:29 ` oreo639
2022-10-01 18:30 ` oreo639
2022-10-01 18:30 ` oreo639
2022-10-01 18:35 ` oreo639
2022-10-01 18:40 ` oreo639
2022-10-01 18:46 ` oreo639
2022-10-01 18:47 ` oreo639
2022-10-01 18:57 ` ahesford
2022-10-01 18:59 ` oreo639
2022-10-01 19:00 ` oreo639
2022-10-01 19:00 ` oreo639
2022-10-01 19:01 ` oreo639
2022-10-01 19:02 ` oreo639
2022-10-01 19:02 ` oreo639
2022-10-01 19:08 ` ahesford
2022-10-01 19:19 ` oreo639
2022-10-01 19:35 ` oreo639
2022-10-02  1:16 ` oreo639
2022-10-02  1:22 ` oreo639
2022-10-02 10:54 ` [PR PATCH] [Updated] " oreo639
2022-10-02 10:55 ` oreo639
2022-10-05 21:20 ` [PR REVIEW] " paper42
2022-10-05 21:20 ` paper42
2022-10-05 21:20 ` paper42
2022-10-05 21:20 ` paper42
2022-10-05 21:20 ` paper42
2022-10-05 22:23 ` ahesford
2022-10-05 22:27 ` paper42
2022-10-08  2:38 ` oreo639
2022-10-08  2:38 ` oreo639
2022-10-08  2:49 ` [PR PATCH] [Updated] " oreo639
2022-10-21  0:29 ` paper42
2022-10-21  4:55 ` [PR PATCH] [Updated] " oreo639
2022-10-21  4:56 ` oreo639
2022-10-21  4:57 ` [PR PATCH] [Updated] " oreo639
2022-10-21  5:08 ` webkit2gtk: update to 2.38.1 oreo639
2022-10-21  9:48 ` [PR PATCH] [Merged]: " paper42

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).