git: f8a4d9463348 - main - www/webkit2-gtk4: New port

From: Neel Chauhan <nc_at_FreeBSD.org>
Date: Wed, 29 Jun 2022 22:09:27 UTC
The branch main has been updated by nc:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f8a4d9463348a76c609c641ab64c4ae76bdb8098

commit f8a4d9463348a76c609c641ab64c4ae76bdb8098
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2022-06-29 20:44:19 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2022-06-29 22:09:17 +0000

    www/webkit2-gtk4: New port
---
 www/Makefile                                       |   1 +
 www/webkit2-gtk4/Makefile                          | 113 ++++++++
 www/webkit2-gtk4/distinfo                          |   3 +
 .../files/patch-Source-cmake-OptionsCommon.cmake   |  11 +
 ...ource_JavaScriptCore_assembler_ARM64Assembler.h |  11 +
 ...ource_JavaScriptCore_assembler_ARMv7Assembler.h |  11 +
 ...urce_JavaScriptCore_jit_ExecutableAllocator.cpp |  11 +
 .../files/patch-Source_JavaScriptCore_jsc.cpp      |  12 +
 ...patch-Source_JavaScriptCore_offlineasm_arm64.rb |  11 +
 ...rce_JavaScriptCore_runtime_NativeExecutable.cpp |  10 +
 .../files/patch-Source_WTF_wtf_PlatformCPU.h       |  18 ++
 .../files/patch-Source_WTF_wtf_RAMSize.cpp         |  34 +++
 ...urce_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp |  11 +
 .../patch-Source_WebCore_platform_PlatformScreen.h |  15 ++
 ...orm_graphics_cpu_arm_filters_FELightingNEON.cpp |  20 ++
 .../patch-Source_WebCore_platform_network_DNS.h    |  10 +
 ...atch-Source_WebCore_platform_text_TextCodec.cpp |  11 +
 .../files/patch-Source_WebDriver_PlatformGTK.cmake |  21 ++
 .../files/patch-Source_bmalloc_bmalloc_BPlatform.h |  10 +
 .../files/patch-Source_cmake_WebKitCommon.cmake    |  17 ++
 www/webkit2-gtk4/files/patch-revert-11ccaf183fad   | 193 ++++++++++++++
 www/webkit2-gtk4/pkg-descr                         |  12 +
 www/webkit2-gtk4/pkg-plist                         | 287 +++++++++++++++++++++
 23 files changed, 853 insertions(+)

diff --git a/www/Makefile b/www/Makefile
index 801b934f19ef..41c28338fd8c 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -2357,6 +2357,7 @@
     SUBDIR += webhook
     SUBDIR += webinject
     SUBDIR += webkit2-gtk3
+    SUBDIR += webkit2-gtk4
     SUBDIR += weblint++
     SUBDIR += webpy
     SUBDIR += webresolve
diff --git a/www/webkit2-gtk4/Makefile b/www/webkit2-gtk4/Makefile
new file mode 100644
index 000000000000..1cc71e5b8c58
--- /dev/null
+++ b/www/webkit2-gtk4/Makefile
@@ -0,0 +1,113 @@
+PORTNAME=	webkit
+DISTVERSION=	2.34.6
+CATEGORIES=	www
+MASTER_SITES=	https://webkitgtk.org/releases/
+PKGNAMESUFFIX=	2-gtk4
+DISTNAME=	${PORTNAME}gtk-${PORTVERSION}
+DIST_SUBDIR=	gnome
+
+MAINTAINER=	gnome@FreeBSD.org
+COMMENT=	Opensource browser engine using the GTK+ 4 toolkit
+
+LICENSE=	BSD2CLAUSE GPLv2
+LICENSE_COMB=	dual
+
+BUILD_DEPENDS=	${LOCALBASE}/bin/ar:devel/binutils
+LIB_DEPENDS=	libenchant-2.so:textproc/enchant2 \
+		libfontconfig.so:x11-fonts/fontconfig \
+		libfreetype.so:print/freetype2 \
+		libfribidi.so:converters/fribidi \
+		libgcrypt.so:security/libgcrypt \
+		libharfbuzz-icu.so:print/harfbuzz-icu \
+		libharfbuzz.so:print/harfbuzz \
+		libhyphen.so:textproc/hyphen \
+		libicutu.so:devel/icu \
+		libnotify.so:devel/libnotify \
+		libopenjp2.so:graphics/openjpeg \
+		libpng.so:graphics/png \
+		libsecret-1.so:security/libsecret \
+		libsoup-3.0.so:devel/libsoup3 \
+		libtasn1.so:security/libtasn1 \
+		libwebp.so:graphics/webp \
+		libwoff2dec.so:devel/woff2
+
+PORTSCOUT=	limitw:1,even
+
+USES=		bison cmake compiler:c++14-lang cpe gettext gl gnome gperf jpeg \
+		localbase:ldflags perl5 pkgconfig python:build sqlite tar:xz \
+		xorg
+USE_GNOME=	cairo gdkpixbuf2 gtk40 libxml2 libxslt introspection:build
+USE_GL=		egl gl glesv2
+USE_LDCONFIG=	yes
+USE_PERL5=	build
+USE_RUBY=	yes
+RUBY_NO_RUN_DEPENDS=	yes
+USE_XORG=	ice x11 xcomposite xdamage xext xrender xt
+
+CPE_VENDOR=	webkitgtk
+CPE_PRODUCT=	webkitgtk
+
+BINARY_ALIAS=		python=${PYTHON_CMD}
+CXXFLAGS+=		-DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32
+CXXFLAGS_powerpc=	-DENABLE_YARR_JIT=0
+CXXFLAGS_powerpc64=	-DENABLE_YARR_JIT=0
+CMAKE_ARGS=		-DPORT=GTK
+CMAKE_OFF=		${CMAKE_OFF_${ARCH}:U} ENABLE_GAMEPAD ENABLE_GLES2 \
+			USE_LD_GOLD USE_SYSTEMD
+CMAKE_ON=		ENABLE_MINIBROWSER USE_GTK4 USE_SYSTEM_MALLOC
+CMAKE_OFF_armv6=	ENABLE_JIT
+CMAKE_OFF_armv7=	ENABLE_JIT
+CMAKE_OFF_powerpc=	ENABLE_JIT
+CMAKE_OFF_powerpc64=	ENABLE_JIT
+INSTALL_TARGET=		install
+
+OPTIONS_DEFINE=		DEBUG GEOIP GSTREAMER WAYLAND
+OPTIONS_DEFAULT=	GEOIP GSTREAMER WAYLAND
+OPTIONS_SUB=		yes
+
+# Building WebKit with debugging symbols requires ar and ld with
+# support for thin archives.  Also see
+# https://bugs.webkit.org/show_bug.cgi?id=140384
+DEBUG_CMAKE_ON=	-DCMAKE_AR=${LOCALBASE}/bin/ar \
+		-DCMAKE_LINKER=${LOCALBASE}/bin/ld \
+		-DCMAKE_RANLIB=${LOCALBASE}/bin/ranlib
+DEBUG_CXXFLAGS=	-B${LOCALBASE}/bin
+
+DEBUG_CMAKE_OFF=	-DCMAKE_AR=/usr/bin/ar \
+			-DCMAKE_LINKER=/usr/bin/ld \
+			-DCMAKE_RANLIB=/usr/bin/ranlib
+DEBUG_CXXFLAGS_OFF=	-B/usr/bin
+DEBUG_CFLAGS_OFF=	-DNDEBUG
+
+GEOIP_CMAKE_BOOL=	ENABLE_GEOLOCATION
+GEOIP_BUILD_DEPENDS=	geoclue>=2.4.3:net/geoclue
+GEOIP_RUN_DEPENDS=	geoclue>=2.4.3:net/geoclue
+
+GSTREAMER_USES=		gstreamer
+GSTREAMER_USE=		GSTREAMER=bad,gl
+GSTREAMER_CMAKE_BOOL=	ENABLE_VIDEO ENABLE_WEB_AUDIO
+
+WAYLAND_CMAKE_BOOL=	ENABLE_WAYLAND_TARGET
+WAYLAND_BUILD_DEPENDS=	wayland-protocols>=1.12:graphics/wayland-protocols
+WAYLAND_LIB_DEPENDS=	libwayland-egl.so:graphics/wayland \
+			libwpe-1.0.so:www/libwpe \
+			libWPEBackend-fdo-1.0.so:www/wpebackend-fdo
+
+pre-configure:
+# .if !exists() evaluates too early before cairo has a chance to be installed
+	@if ! pkg-config --exists cairo-egl; then \
+		${ECHO_MSG} "${PKGNAME}: Needs cairo with OPENGL support enabled."; \
+		${FALSE}; \
+	fi
+
+post-install:
+	@${RLN} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-5.0/jsc \
+		${STAGEDIR}${PREFIX}/bin/jsc-5
+	@${RLN} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-5.0/MiniBrowser \
+		${STAGEDIR}${PREFIX}/bin/MiniBrowser-5
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-5.0/injected-bundle/*.so
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-5.0/*
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver-5
+
+.include <bsd.port.mk>
diff --git a/www/webkit2-gtk4/distinfo b/www/webkit2-gtk4/distinfo
new file mode 100644
index 000000000000..a2fe649c6c45
--- /dev/null
+++ b/www/webkit2-gtk4/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1646438253
+SHA256 (gnome/webkitgtk-2.34.6.tar.xz) = 6bc8fd034aad0432a2459ce4fc7ee25ad65a4924c618bf8d93b52b0c1a84c1f6
+SIZE (gnome/webkitgtk-2.34.6.tar.xz) = 24393340
diff --git a/www/webkit2-gtk4/files/patch-Source-cmake-OptionsCommon.cmake b/www/webkit2-gtk4/files/patch-Source-cmake-OptionsCommon.cmake
new file mode 100644
index 000000000000..f830b5c9116a
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source-cmake-OptionsCommon.cmake
@@ -0,0 +1,11 @@
+--- Source/cmake/OptionsCommon.cmake.orig	2021-09-22 23:05:58 UTC
++++ Source/cmake/OptionsCommon.cmake
+@@ -144,7 +144,7 @@ WEBKIT_CHECK_HAVE_FUNCTION(HAVE_VASPRINTF vasprintf)
+ # Check for symbols
+ WEBKIT_CHECK_HAVE_SYMBOL(HAVE_REGEX_H regexec regex.h)
+ if (NOT (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin"))
+-    WEBKIT_CHECK_HAVE_SYMBOL(HAVE_PTHREAD_MAIN_NP pthread_main_np pthread_np.h)
++	#WEBKIT_CHECK_HAVE_SYMBOL(HAVE_PTHREAD_MAIN_NP pthread_main_np pthread_np.h)
+ endif ()
+ WEBKIT_CHECK_HAVE_SYMBOL(HAVE_TIMINGSAFE_BCMP timingsafe_bcmp string.h)
+ # Windows has signal.h but is missing symbols that are used in calls to signal.
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h
new file mode 100644
index 000000000000..181df653d2f1
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h
@@ -0,0 +1,11 @@
+--- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/assembler/ARM64Assembler.h
+@@ -2950,6 +2950,8 @@ class ARM64Assembler { (public)
+     {
+ #if OS(DARWIN)
+         sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
++#elif OS(FREEBSD) || OS(NETBSD)
++        __clear_cache(code, reinterpret_cast<char*>(code) + size);
+ #elif OS(FUCHSIA)
+         zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN);
+ #elif OS(LINUX)
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARMv7Assembler.h b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARMv7Assembler.h
new file mode 100644
index 000000000000..42294c5de4bc
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_assembler_ARMv7Assembler.h
@@ -0,0 +1,11 @@
+--- Source/JavaScriptCore/assembler/ARMv7Assembler.h.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/assembler/ARMv7Assembler.h
+@@ -2402,6 +2402,8 @@ class ARMv7Assembler { (public)
+     {
+ #if OS(DARWIN)
+         sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
++#elif OS(FREEBSD) || OS(NETBSD)
++        __clear_cache(code, reinterpret_cast<char*>(code) + size);
+ #elif OS(LINUX)
+         size_t page = pageSize();
+         uintptr_t current = reinterpret_cast<uintptr_t>(code);
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp
new file mode 100644
index 000000000000..4682641a2130
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp
@@ -0,0 +1,11 @@
+--- Source/JavaScriptCore/jit/ExecutableAllocator.cpp.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/jit/ExecutableAllocator.cpp
+@@ -95,7 +95,7 @@ namespace JSC {
+ 
+ using namespace WTF;
+ 
+-#if defined(FIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB) && FIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB > 0
++#if defined(FIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB) && FIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB > 0 && !defined(__aarch64__)
+ static constexpr size_t fixedExecutableMemoryPoolSize = FIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB * MB;
+ #elif CPU(ARM)
+ static constexpr size_t fixedExecutableMemoryPoolSize = 16 * MB;
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jsc.cpp b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jsc.cpp
new file mode 100644
index 000000000000..5ed01ccd90af
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_jsc.cpp
@@ -0,0 +1,12 @@
+--- Source/JavaScriptCore/jsc.cpp.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/jsc.cpp
+@@ -100,6 +100,9 @@
+ #else
+ #include <unistd.h>
+ #endif
++#if PLATFORM(GTK)
++#include <locale.h>
++#endif
+ 
+ #if PLATFORM(COCOA)
+ #include <crt_externs.h>
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_offlineasm_arm64.rb b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_offlineasm_arm64.rb
new file mode 100644
index 000000000000..6dc60845f9aa
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_offlineasm_arm64.rb
@@ -0,0 +1,11 @@
+--- Source/JavaScriptCore/offlineasm/arm64.rb.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/offlineasm/arm64.rb
+@@ -1127,7 +1127,7 @@ class Instruction
+             $asm.puts "ldr #{operands[1].arm64Operand(:quad)}, [#{operands[1].arm64Operand(:quad)}, #{operands[0].asmLabel}@GOTPAGEOFF]"
+ 
+             # On Linux, use ELF GOT relocation specifiers.
+-            $asm.putStr("#elif OS(LINUX)")
++            $asm.putStr("#elif OS(LINUX) || OS(FREEBSD)")
+             $asm.puts "adrp #{operands[1].arm64Operand(:quad)}, :got:#{operands[0].asmLabel}"
+             $asm.puts "ldr #{operands[1].arm64Operand(:quad)}, [#{operands[1].arm64Operand(:quad)}, :got_lo12:#{operands[0].asmLabel}]"
+ 
diff --git a/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_runtime_NativeExecutable.cpp b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_runtime_NativeExecutable.cpp
new file mode 100644
index 000000000000..47a726b426cb
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_JavaScriptCore_runtime_NativeExecutable.cpp
@@ -0,0 +1,10 @@
+--- Source/JavaScriptCore/runtime/NativeExecutable.cpp.orig	2021-09-22 23:05:58 UTC
++++ Source/JavaScriptCore/runtime/NativeExecutable.cpp
+@@ -24,6 +24,7 @@
+  */
+ 
+ #include "config.h"
++#include "ExecutableBaseInlines.h"
+ #include "NativeExecutable.h"
+ 
+ #include "ExecutableBaseInlines.h"
diff --git a/www/webkit2-gtk4/files/patch-Source_WTF_wtf_PlatformCPU.h b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_PlatformCPU.h
new file mode 100644
index 000000000000..2a9b4c87a99b
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_PlatformCPU.h
@@ -0,0 +1,18 @@
+--- Source/WTF/wtf/PlatformCPU.h.orig	2020-08-12 09:17:54 UTC
++++ Source/WTF/wtf/PlatformCPU.h
+@@ -155,6 +155,7 @@
+ #elif defined(__ARM_ARCH_6__) \
+     || defined(__ARM_ARCH_6J__) \
+     || defined(__ARM_ARCH_6K__) \
++    || defined(__ARM_ARCH_6KZ__) \
+     || defined(__ARM_ARCH_6Z__) \
+     || defined(__ARM_ARCH_6ZK__) \
+     || defined(__ARM_ARCH_6T2__) \
+@@ -196,6 +197,7 @@
+ 
+ #elif defined(__ARM_ARCH_6J__) \
+     || defined(__ARM_ARCH_6K__) \
++    || defined(__ARM_ARCH_6KZ__) \
+     || defined(__ARM_ARCH_6Z__) \
+     || defined(__ARM_ARCH_6ZK__) \
+     || defined(__ARM_ARCH_6M__)
diff --git a/www/webkit2-gtk4/files/patch-Source_WTF_wtf_RAMSize.cpp b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_RAMSize.cpp
new file mode 100644
index 000000000000..8c6b00de1d48
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_RAMSize.cpp
@@ -0,0 +1,34 @@
+--- Source/WTF/wtf/RAMSize.cpp.orig	2021-09-22 23:29:42 UTC
++++ Source/WTF/wtf/RAMSize.cpp
+@@ -35,6 +35,8 @@
+ #include <sys/sysinfo.h>
+ #elif OS(UNIX)
+ #include <unistd.h>
++#include <sys/types.h>
++#include <sys/sysctl.h>
+ #endif // OS(LINUX) || OS(UNIX)
+ #else
+ #include <bmalloc/bmalloc.h>
+@@ -56,14 +58,18 @@ static size_t computeRAMSize()
+         return ramSizeGuess;
+     return status.ullTotalPhys;
+ #elif USE(SYSTEM_MALLOC)
+-#if OS(LINUX) || OS(FREEBSD)
++#if OS(LINUX)
+     struct sysinfo si;
+     sysinfo(&si);
+     return si.totalram * si.mem_unit;
+ #elif OS(UNIX)
+-    long pages = sysconf(_SC_PHYS_PAGES);
+-    long pageSize = sysconf(_SC_PAGE_SIZE);
+-    return pages * pageSize;
++    size_t physmem, len;
++    int mib[2] = { CTL_HW, HW_PHYSMEM };
++    if (sysctl(mib, 2, &physmem, &len, NULL, 0) == 0
++	&& len == sizeof(physmem))
++	return physmem;
++    else
++	return 512 * MB; // guess
+ #else
+ #error "Missing a platform specific way of determining the available RAM"
+ #endif // OS(LINUX) || OS(FREEBSD) || OS(UNIX)
diff --git a/www/webkit2-gtk4/files/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp
new file mode 100644
index 000000000000..a4e820ab8dbd
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp
@@ -0,0 +1,11 @@
+--- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig	2021-09-22 23:05:58 UTC
++++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
+@@ -28,7 +28,7 @@
+ #include "config.h"
+ #include <wtf/MemoryPressureHandler.h>
+ 
+-#include <malloc.h>
++#include <stdlib.h>
+ #include <unistd.h>
+ #include <wtf/Logging.h>
+ #include <wtf/MainThread.h>
diff --git a/www/webkit2-gtk4/files/patch-Source_WebCore_platform_PlatformScreen.h b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_PlatformScreen.h
new file mode 100644
index 000000000000..d5a4da093b36
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_PlatformScreen.h
@@ -0,0 +1,15 @@
+--- Source/WebCore/platform/PlatformScreen.h.orig	2021-10-21 08:52:09 UTC
++++ Source/WebCore/platform/PlatformScreen.h
+@@ -48,6 +48,12 @@ OBJC_CLASS UIScreen;
+ typedef struct CGColorSpace *CGColorSpaceRef;
+ #endif
+ 
++// X11 headers define a bunch of macros with common terms, interfering with WebCore and WTF enum values.
++// As a workaround, we explicitly undef them here.
++#if defined(None)
++#undef None
++#endif
++
+ namespace WebCore {
+ 
+ class DestinationColorSpace;
diff --git a/www/webkit2-gtk4/files/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp
new file mode 100644
index 000000000000..bdc88e12cb04
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp
@@ -0,0 +1,20 @@
+--- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig	2018-05-07 07:58:18 UTC
++++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
+@@ -35,7 +35,7 @@ namespace WebCore {
+ //   ALPHAX_Q ALPHAY_Q REMAPX_D REMAPY_D
+ 
+ 
+-static alignas(16) short s_FELightingConstantsForNeon[] = {
++alignas(16) static short s_FELightingConstantsForNeon[] = {
+     // Alpha coefficients.
+     -2, 1, 0, -1, 2, 1, 0, -1,
+     0, -1, -2, -1, 0, 1, 2, 1,
+@@ -403,7 +403,7 @@ TOSTRING(neonDrawLighting) ":" NL
+     "vmin.f32 " TMP2_D0 ", " TMP2_D0 ", " CONST_ONE_HI_D NL
+     "vmul.f32 " TMP3_Q ", " COLOR_Q ", " TMP2_D0 "[1]" NL
+     "vcvt.u32.f32 " TMP3_Q ", " TMP3_Q NL
+-    "vmov.u32 r2, r3, " TMP3_S0 ", " TMP3_S1 NL
++    "vmov r2, r3, " TMP3_S0 ", " TMP3_S1 NL
+     // The color values are stored in-place.
+     "strb r2, [" PIXELS_R ", #-11]" NL
+     "strb r3, [" PIXELS_R ", #-10]" NL
diff --git a/www/webkit2-gtk4/files/patch-Source_WebCore_platform_network_DNS.h b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_network_DNS.h
new file mode 100644
index 000000000000..ee10afd21da1
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_network_DNS.h
@@ -0,0 +1,10 @@
+--- Source/WebCore/platform/network/DNS.h.orig	2021-09-22 23:05:58 UTC
++++ Source/WebCore/platform/network/DNS.h
+@@ -33,6 +33,7 @@
+ #include <winsock2.h>
+ #include <ws2tcpip.h>
+ #else
++#include <sys/socket.h>
+ #include <netinet/in.h>
+ #endif
+ 
diff --git a/www/webkit2-gtk4/files/patch-Source_WebCore_platform_text_TextCodec.cpp b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_text_TextCodec.cpp
new file mode 100644
index 000000000000..a9ecd20741e2
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WebCore_platform_text_TextCodec.cpp
@@ -0,0 +1,11 @@
+--- Source/WebCore/platform/text/TextCodec.cpp.orig	2019-02-16 10:10:59 UTC
++++ Source/WebCore/platform/text/TextCodec.cpp
+@@ -24,6 +24,8 @@
+  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+  */
+ 
++#include <stdio.h>
++
+ #include "config.h"
+ #include "TextCodec.h"
+ 
diff --git a/www/webkit2-gtk4/files/patch-Source_WebDriver_PlatformGTK.cmake b/www/webkit2-gtk4/files/patch-Source_WebDriver_PlatformGTK.cmake
new file mode 100644
index 000000000000..d67f86c2bec3
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_WebDriver_PlatformGTK.cmake
@@ -0,0 +1,21 @@
+--- Source/WebDriver/PlatformGTK.cmake.orig	2021-09-16 12:43:07 UTC
++++ Source/WebDriver/PlatformGTK.cmake
+@@ -1,10 +1,11 @@
+-set(WebDriver_OUTPUT_NAME WebKitWebDriver)
++set(WebDriver_OUTPUT_NAME WebKitWebDriver-5)
+ 
+ add_definitions(-DLIBEXECDIR="${CMAKE_INSTALL_FULL_LIBEXECDIR}")
+ 
+ list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES
+     "${GLIB_INCLUDE_DIRS}"
+     "${LIBSOUP_INCLUDE_DIRS}"
++    "${ICU_INCLUDE_DIRS}"
+ )
+ 
+ list(APPEND WebDriver_SOURCES
+@@ -18,4 +19,5 @@ list(APPEND WebDriver_LIBRARIES
+ 
+ list(APPEND WebDriver_LIBRARIES
+     ${LIBSOUP_LIBRARIES}
++    ${ICU_LIBRARIES}
+ )
diff --git a/www/webkit2-gtk4/files/patch-Source_bmalloc_bmalloc_BPlatform.h b/www/webkit2-gtk4/files/patch-Source_bmalloc_bmalloc_BPlatform.h
new file mode 100644
index 000000000000..bf77aefc2750
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_bmalloc_bmalloc_BPlatform.h
@@ -0,0 +1,10 @@
+--- Source/bmalloc/bmalloc/BPlatform.h.orig	2021-09-22 23:05:58 UTC
++++ Source/bmalloc/bmalloc/BPlatform.h
+@@ -163,6 +163,7 @@
+ #elif defined(__ARM_ARCH_6__) \
+ || defined(__ARM_ARCH_6J__) \
+ || defined(__ARM_ARCH_6K__) \
++|| defined(__ARM_ARCH_6KZ__) \
+ || defined(__ARM_ARCH_6Z__) \
+ || defined(__ARM_ARCH_6ZK__) \
+ || defined(__ARM_ARCH_6T2__) \
diff --git a/www/webkit2-gtk4/files/patch-Source_cmake_WebKitCommon.cmake b/www/webkit2-gtk4/files/patch-Source_cmake_WebKitCommon.cmake
new file mode 100644
index 000000000000..c7ed8a9b638b
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-Source_cmake_WebKitCommon.cmake
@@ -0,0 +1,17 @@
+--- Source/cmake/WebKitCommon.cmake.orig	2021-09-17 09:07:45 UTC
++++ Source/cmake/WebKitCommon.cmake
+@@ -106,11 +106,11 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
+         endif ()
+     elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(i[3-6]86|x86)")
+         set(WTF_CPU_X86 1)
+-    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc")
++    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(ppc|powerpc)")
+         set(WTF_CPU_PPC 1)
+-    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64")
++    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(ppc64|powerpc64)")
+         set(WTF_CPU_PPC64 1)
+-    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
++    elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(ppc64le|powerpc64le)")
+         set(WTF_CPU_PPC64LE 1)
+     elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^riscv64")
+         set(WTF_CPU_RISCV64 1)
diff --git a/www/webkit2-gtk4/files/patch-revert-11ccaf183fad b/www/webkit2-gtk4/files/patch-revert-11ccaf183fad
new file mode 100644
index 000000000000..9d9d791aaee4
--- /dev/null
+++ b/www/webkit2-gtk4/files/patch-revert-11ccaf183fad
@@ -0,0 +1,193 @@
+Regressed by: https://github.com/WebKit/WebKit/commit/11ccaf183fad
+
+GStreamer.cpp.o -c /wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/p
+latform/graphics/gstreamer/MediaSampleGStreamer.cpp
+/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/gs
+treamer/MediaSampleGStreamer.cpp:220:12: error: call to implicitly-deleted copy constructor o
+f 'WebCore::PlatformSample'
+    return sample;
+           ^~~~~~
+/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/MediaSample
+.h:57:7: note: copy constructor of 'PlatformSample' is implicitly deleted because field 'samp
+le' has a deleted copy constructor
+    } sample;
+      ^
+/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/MediaSample
+.h:56:66: note: copy constructor of '' is implicitly deleted because variant field 'byteRange
+Sample' has a non-trivial copy constructor
+        std::pair<MTPluginByteSourceRef, CMFormatDescriptionRef> byteRangeSample;
+                                                                 ^
+1 error generated.
+
+--- Source/WTF/wtf/PlatformHave.h.orig	2021-10-21 08:52:08 UTC
++++ Source/WTF/wtf/PlatformHave.h
+@@ -909,6 +909,12 @@
+ #endif
+ #endif
+ 
++#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 110300
++#if !defined(HAVE_MT_PLUGIN_SAMPLE_CURSOR_PLAYABLE_HORIZON)
++#define HAVE_MT_PLUGIN_SAMPLE_CURSOR_PLAYABLE_HORIZON 1
++#endif
++#endif
++
+ #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 110200) \
+     || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 140400)
+ #define HAVE_AVCONTENTKEYREQUEST_PENDING_PROTECTION_STATUS 1
+--- Source/WebCore/page/RuntimeEnabledFeatures.h.orig	2021-10-21 08:52:09 UTC
++++ Source/WebCore/page/RuntimeEnabledFeatures.h
+@@ -243,6 +243,11 @@ class RuntimeEnabledFeatures { (public)
+     void setDisableMediaExperiencePIDInheritance(bool isDisabled) { m_disableMediaExperiencePIDInheritance = isDisabled; }
+     bool disableMediaExperiencePIDInheritance() const { return m_disableMediaExperiencePIDInheritance; }
+ #endif
++    
++#if HAVE(MT_PLUGIN_FORMAT_READER)
++    void setWebMFormatReaderEnabled(bool isEnabled) { m_webMFormatReaderEnabled = isEnabled; }
++    bool webMFormatReaderEnabled() const { return m_webMFormatReaderEnabled; }
++#endif
+ 
+ #if ENABLE(VORBIS)
+     WEBCORE_EXPORT void setVorbisDecoderEnabled(bool isEnabled);
+@@ -372,6 +377,10 @@ class RuntimeEnabledFeatures { (public)
+ #endif
+ 
+ #if ENABLE(WEBM_FORMAT_READER)
++    bool m_webMFormatReaderEnabled { false };
++#endif
++
++#if HAVE(MT_PLUGIN_FORMAT_READER)
+     bool m_webMFormatReaderEnabled { false };
+ #endif
+ 
+--- Source/WebCore/platform/MediaSample.h.orig	2021-10-21 08:52:09 UTC
++++ Source/WebCore/platform/MediaSample.h
+@@ -34,8 +34,6 @@ typedef struct _GstSample GstSample;
+ 
+ typedef struct opaqueCMSampleBuffer *CMSampleBufferRef;
+ typedef struct _GstSample GstSample;
+-typedef struct OpaqueMTPluginByteSource *MTPluginByteSourceRef;
+-typedef const struct opaqueCMFormatDescription *CMFormatDescriptionRef;
+ 
+ namespace WebCore {
+ 
+@@ -47,13 +45,11 @@ struct PlatformSample {
+         MockSampleBoxType,
+         CMSampleBufferType,
+         GStreamerSampleType,
+-        ByteRangeSampleType,
+     } type;
+     union {
+         MockSampleBox* mockSampleBox;
+         CMSampleBufferRef cmSampleBuffer;
+         GstSample* gstSample;
+-        std::pair<MTPluginByteSourceRef, CMFormatDescriptionRef> byteRangeSample;
+     } sample;
+ };
+ 
+@@ -90,12 +86,6 @@ class MediaSample : public ThreadSafeRefCounted<MediaS
+     };
+     virtual SampleFlags flags() const = 0;
+     virtual PlatformSample platformSample() = 0;
+-
+-    struct ByteRange {
+-        size_t byteOffset { 0 };
+-        size_t byteLength { 0 };
+-    };
+-    virtual std::optional<ByteRange> byteRange() const = 0;
+ 
+     enum class VideoRotation {
+         None = 0,
+--- Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h.orig	2022-01-20 15:30:53 UTC
++++ Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h
+@@ -57,7 +57,6 @@ class MediaSampleGStreamer : public MediaSample { (pub
+     Ref<MediaSample> createNonDisplayingCopy() const override;
+     SampleFlags flags() const override { return m_flags; }
+     PlatformSample platformSample() override;
+-    std::optional<ByteRange> byteRange() const override { return std::nullopt; }
+     void dump(PrintStream&) const override;
+     RefPtr<JSC::Uint8ClampedArray> getRGBAImageData() const final;
+ 
+--- Source/WebCore/platform/mock/mediasource/MockSourceBufferPrivate.cpp.orig	2021-10-21 08:52:09 UTC
++++ Source/WebCore/platform/mock/mediasource/MockSourceBufferPrivate.cpp
+@@ -62,7 +62,6 @@ class MockMediaSample final : public MediaSample { (pr
+     size_t sizeInBytes() const override { return sizeof(m_box); }
+     SampleFlags flags() const override;
+     PlatformSample platformSample() override;
+-    std::optional<ByteRange> byteRange() const override { return std::nullopt; }
+     FloatSize presentationSize() const override { return FloatSize(); }
+     void dump(PrintStream&) const override;
+     void offsetTimestampsBy(const MediaTime& offset) override { m_box.offsetTimestampsBy(offset); }
+--- Source/WebKit/MediaFormatReaderPlugIn/MediaFormatReaderPlugIn.cpp.orig	2021-05-17 13:22:42 UTC
++++ Source/WebKit/MediaFormatReaderPlugIn/MediaFormatReaderPlugIn.cpp
+@@ -23,14 +23,15 @@
+  * THE POSSIBILITY OF SUCH DAMAGE.
+  */
+ 
+-#include <WebKit/WKMediaFormatReader.h>
++#include "config.h"
+ 
+-extern "C" WK_EXPORT OSStatus CreateMediaFormatReaderInstance(MTPluginByteSourceRef, CFAllocatorRef, CFDictionaryRef, MTPluginFormatReaderRef*);
++#if HAVE(MT_PLUGIN_FORMAT_READER)
+ 
+-OSStatus CreateMediaFormatReaderInstance(MTPluginByteSourceRef byteSource, CFAllocatorRef allocator, CFDictionaryRef, MTPluginFormatReaderRef* formatReader)
++OSStatus CreateMediaFormatReaderInstance(MTPluginByteSourceRef, CFAllocatorRef, CFDictionary
++Ref, MTPluginFormatReaderRef* formatReader)
+ {
+-    OSStatus status = WKMediaFormatReaderCreate(allocator, formatReader);
+-    if (status != noErr)
+-        return status;
+-    return WKMediaFormatReaderStartOnMainThread(*formatReader, byteSource);
++	*formatReader = nullptr;
++	return kMTPluginFormatReaderError_InternalFailure;
+ }
++
++#endif // HAVE(MT_PLUGIN_FORMAT_READER)
+--- Source/WebKit/Shared/WebPreferencesDefaultValues.cpp.orig	2021-10-21 08:52:09 UTC
++++ Source/WebKit/Shared/WebPreferencesDefaultValues.cpp
+@@ -289,6 +289,19 @@ bool defaultWebMFormatReaderEnabled()
+ 
+ #endif // ENABLE(WEBM_FORMAT_READER)
+ 
++#if ENABLE(MEDIA_SOURCE) && HAVE(MT_PLUGIN_FORMAT_READER)
++
++bool defaultWebMFormatReaderEnabled()
++{
++#if HAVE(SYSTEM_FEATURE_FLAGS)
++    return isFeatureFlagEnabled("webm_format_reader");
++#endif
++
++    return false;
++}
++
++#endif
++
+ #if ENABLE(VP9)
+ 
+ bool defaultVP8DecoderEnabled()
+--- Source/WebKit/Shared/WebPreferencesDefaultValues.h.orig	2021-10-21 08:52:09 UTC
++++ Source/WebKit/Shared/WebPreferencesDefaultValues.h
+@@ -95,6 +95,10 @@ bool defaultWebMFormatReaderEnabled();
+ bool defaultWebMFormatReaderEnabled();
+ #endif
+ 
++#if ENABLE(MEDIA_SOURCE) && HAVE(MT_PLUGIN_FORMAT_READER)
++bool defaultWebMFormatReaderEnabled();
++#endif
++
+ #if ENABLE(VP9)
+ bool defaultVP8DecoderEnabled();
+ bool defaultVP9DecoderEnabled();
+--- Source/WebKit/SourcesCocoa.txt.orig	2021-10-21 08:52:09 UTC
++++ Source/WebKit/SourcesCocoa.txt
+@@ -229,6 +229,11 @@ Shared/mac/MediaFormatReader/MediaTrackReader.cpp
+ Shared/mac/MediaFormatReader/MediaSampleCursor.cpp
+ Shared/mac/MediaFormatReader/MediaTrackReader.cpp
+ 
++Shared/mac/MediaFormatReader/CoreMediaWrapped.cpp
++Shared/mac/MediaFormatReader/FormatReader.cpp
++Shared/mac/MediaFormatReader/SampleCursor.cpp
++Shared/mac/MediaFormatReader/TrackReader.cpp
++
+ Shared/Plugins/mac/PluginSandboxProfile.mm
+ 
+ Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm
diff --git a/www/webkit2-gtk4/pkg-descr b/www/webkit2-gtk4/pkg-descr
new file mode 100644
index 000000000000..e2cc41188975
--- /dev/null
+++ b/www/webkit2-gtk4/pkg-descr
@@ -0,0 +1,12 @@
+WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
+for projects requiring any kind of web integration, from hybrid HTML/CSS
+applications to full-fledged web browsers. It offers WebKit's full
+functionality and is useful in a wide range of systems from desktop
+computers to embedded systems like phones, tablets, and televisions.
+
+WebKitGTK+ is made by a lively community of developers and designers,
+who hope to bring the web platform to everyone. It's the official web
+engine of the GNOME platform and is used in browsers such as Epiphany
+and Midori.
+
+WWW: https://webkitgtk.org/
diff --git a/www/webkit2-gtk4/pkg-plist b/www/webkit2-gtk4/pkg-plist
new file mode 100644
index 000000000000..13da04bd8f07
--- /dev/null
+++ b/www/webkit2-gtk4/pkg-plist
@@ -0,0 +1,287 @@
+bin/MiniBrowser-5
+bin/WebKitWebDriver-5
+bin/jsc-5
+include/webkitgtk-5.0/JavaScriptCore/JSBase.h
+include/webkitgtk-5.0/JavaScriptCore/JSContextRef.h
+include/webkitgtk-5.0/JavaScriptCore/JSObjectRef.h
+include/webkitgtk-5.0/JavaScriptCore/JSStringRef.h
+include/webkitgtk-5.0/JavaScriptCore/JSTypedArray.h
+include/webkitgtk-5.0/JavaScriptCore/JSValueRef.h
+include/webkitgtk-5.0/JavaScriptCore/JavaScript.h
+include/webkitgtk-5.0/JavaScriptCore/WebKitAvailability.h
+include/webkitgtk-5.0/jsc/JSCAutocleanups.h
+include/webkitgtk-5.0/jsc/JSCClass.h
+include/webkitgtk-5.0/jsc/JSCContext.h
+include/webkitgtk-5.0/jsc/JSCDefines.h
+include/webkitgtk-5.0/jsc/JSCException.h
+include/webkitgtk-5.0/jsc/JSCOptions.h
+include/webkitgtk-5.0/jsc/JSCValue.h
+include/webkitgtk-5.0/jsc/JSCVersion.h
+include/webkitgtk-5.0/jsc/JSCVirtualMachine.h
+include/webkitgtk-5.0/jsc/JSCWeakValue.h
+include/webkitgtk-5.0/jsc/jsc.h
+include/webkitgtk-5.0/webkit2/WebKitApplicationInfo.h
+include/webkitgtk-5.0/webkit2/WebKitAuthenticationRequest.h
+include/webkitgtk-5.0/webkit2/WebKitAutocleanups.h
+include/webkitgtk-5.0/webkit2/WebKitAutomationSession.h
+include/webkitgtk-5.0/webkit2/WebKitBackForwardList.h
+include/webkitgtk-5.0/webkit2/WebKitBackForwardListItem.h
+include/webkitgtk-5.0/webkit2/WebKitColorChooserRequest.h
+include/webkitgtk-5.0/webkit2/WebKitConsoleMessage.h
+include/webkitgtk-5.0/webkit2/WebKitContextMenu.h
+include/webkitgtk-5.0/webkit2/WebKitContextMenuActions.h
+include/webkitgtk-5.0/webkit2/WebKitContextMenuItem.h
+include/webkitgtk-5.0/webkit2/WebKitCookieManager.h
+include/webkitgtk-5.0/webkit2/WebKitCredential.h
+include/webkitgtk-5.0/webkit2/WebKitDefines.h
+include/webkitgtk-5.0/webkit2/WebKitDeviceInfoPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitDownload.h
+include/webkitgtk-5.0/webkit2/WebKitEditingCommands.h
+include/webkitgtk-5.0/webkit2/WebKitEditorState.h
+include/webkitgtk-5.0/webkit2/WebKitEnumTypes.h
+include/webkitgtk-5.0/webkit2/WebKitError.h
+include/webkitgtk-5.0/webkit2/WebKitFaviconDatabase.h
+include/webkitgtk-5.0/webkit2/WebKitFileChooserRequest.h
+include/webkitgtk-5.0/webkit2/WebKitFindController.h
+include/webkitgtk-5.0/webkit2/WebKitFormSubmissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitForwardDeclarations.h
+include/webkitgtk-5.0/webkit2/WebKitFrame.h
+include/webkitgtk-5.0/webkit2/WebKitGeolocationManager.h
+include/webkitgtk-5.0/webkit2/WebKitGeolocationPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitHitTestResult.h
+include/webkitgtk-5.0/webkit2/WebKitInputMethodContext.h
+include/webkitgtk-5.0/webkit2/WebKitInstallMissingMediaPluginsPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitJavascriptResult.h
+include/webkitgtk-5.0/webkit2/WebKitMediaKeySystemPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitMemoryPressureSettings.h
+include/webkitgtk-5.0/webkit2/WebKitMimeInfo.h
+include/webkitgtk-5.0/webkit2/WebKitNavigationAction.h
+include/webkitgtk-5.0/webkit2/WebKitNavigationPolicyDecision.h
+include/webkitgtk-5.0/webkit2/WebKitNetworkProxySettings.h
+include/webkitgtk-5.0/webkit2/WebKitNotification.h
+include/webkitgtk-5.0/webkit2/WebKitNotificationPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitOptionMenu.h
+include/webkitgtk-5.0/webkit2/WebKitOptionMenuItem.h
+include/webkitgtk-5.0/webkit2/WebKitPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitPlugin.h
+include/webkitgtk-5.0/webkit2/WebKitPointerLockPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitPolicyDecision.h
+include/webkitgtk-5.0/webkit2/WebKitPrintCustomWidget.h
+include/webkitgtk-5.0/webkit2/WebKitPrintOperation.h
+include/webkitgtk-5.0/webkit2/WebKitResponsePolicyDecision.h
+include/webkitgtk-5.0/webkit2/WebKitScriptDialog.h
+include/webkitgtk-5.0/webkit2/WebKitScriptWorld.h
+include/webkitgtk-5.0/webkit2/WebKitSecurityManager.h
+include/webkitgtk-5.0/webkit2/WebKitSecurityOrigin.h
+include/webkitgtk-5.0/webkit2/WebKitSettings.h
+include/webkitgtk-5.0/webkit2/WebKitURIRequest.h
+include/webkitgtk-5.0/webkit2/WebKitURIResponse.h
+include/webkitgtk-5.0/webkit2/WebKitURISchemeRequest.h
+include/webkitgtk-5.0/webkit2/WebKitURIUtilities.h
+include/webkitgtk-5.0/webkit2/WebKitUserContent.h
+include/webkitgtk-5.0/webkit2/WebKitUserContentFilterStore.h
+include/webkitgtk-5.0/webkit2/WebKitUserContentManager.h
+include/webkitgtk-5.0/webkit2/WebKitUserMediaPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitUserMessage.h
+include/webkitgtk-5.0/webkit2/WebKitVersion.h
+include/webkitgtk-5.0/webkit2/WebKitWebContext.h
+include/webkitgtk-5.0/webkit2/WebKitWebEditor.h
+include/webkitgtk-5.0/webkit2/WebKitWebExtension.h
+include/webkitgtk-5.0/webkit2/WebKitWebExtensionAutocleanups.h
+include/webkitgtk-5.0/webkit2/WebKitWebHitTestResult.h
+include/webkitgtk-5.0/webkit2/WebKitWebInspector.h
+include/webkitgtk-5.0/webkit2/WebKitWebPage.h
+include/webkitgtk-5.0/webkit2/WebKitWebProcessEnumTypes.h
+include/webkitgtk-5.0/webkit2/WebKitWebResource.h
+include/webkitgtk-5.0/webkit2/WebKitWebView.h
+include/webkitgtk-5.0/webkit2/WebKitWebViewBase.h
+include/webkitgtk-5.0/webkit2/WebKitWebViewSessionState.h
+include/webkitgtk-5.0/webkit2/WebKitWebsiteData.h
+include/webkitgtk-5.0/webkit2/WebKitWebsiteDataAccessPermissionRequest.h
+include/webkitgtk-5.0/webkit2/WebKitWebsiteDataManager.h
+include/webkitgtk-5.0/webkit2/WebKitWebsitePolicies.h
+include/webkitgtk-5.0/webkit2/WebKitWindowProperties.h
+include/webkitgtk-5.0/webkit2/webkit-web-extension.h
+include/webkitgtk-5.0/webkit2/webkit2.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMAttr.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMBlob.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCDATASection.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCSSRule.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCSSRuleList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCSSStyleDeclaration.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCSSStyleSheet.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCSSValue.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCharacterData.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMClientRect.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMClientRectList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMComment.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCustom.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMCustomUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDOMImplementation.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDOMSelection.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDOMTokenList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDOMWindow.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDOMWindowUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDeprecated.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDocument.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDocumentFragment.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDocumentFragmentUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDocumentType.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMDocumentUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMElementUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMEvent.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMEventTarget.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMFile.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMFileList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLAnchorElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLAppletElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLAreaElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLBRElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLBaseElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLBodyElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLButtonElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLCanvasElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLCollection.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLDListElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLDirectoryElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLDivElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLDocument.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLElementUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLEmbedElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLFieldSetElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLFontElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLFormElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLFrameElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLFrameSetElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLHRElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLHeadElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLHeadingElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLHtmlElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLIFrameElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLImageElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLInputElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLLIElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLLabelElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLLegendElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLLinkElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLMapElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLMarqueeElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLMenuElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLMetaElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLModElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLOListElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLObjectElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLOptGroupElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLOptionElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLOptionsCollection.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLParagraphElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLParamElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLPreElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLQuoteElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLScriptElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLSelectElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLStyleElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableCaptionElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableCellElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableColElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableRowElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTableSectionElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTextAreaElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLTitleElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMHTMLUListElement.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMKeyboardEvent.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMMediaList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMMouseEvent.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMNamedNodeMap.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMNode.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMNodeFilter.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMNodeIterator.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMNodeList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMObject.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMProcessingInstruction.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMRange.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMRangeUnstable.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMStyleSheet.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMStyleSheetList.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMText.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMTreeWalker.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMUIEvent.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMWheelEvent.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMXPathExpression.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMXPathNSResolver.h
+include/webkitgtk-5.0/webkitdom/WebKitDOMXPathResult.h
+include/webkitgtk-5.0/webkitdom/webkitdom.h
+include/webkitgtk-5.0/webkitdom/webkitdomautocleanups.h
+include/webkitgtk-5.0/webkitdom/webkitdomdefines.h
+lib/girepository-1.0/JavaScriptCore-5.0.typelib
+lib/girepository-1.0/WebKit2-5.0.typelib
+lib/girepository-1.0/WebKit2WebExtension-5.0.typelib
+lib/libjavascriptcoregtk-5.0.so
+lib/libjavascriptcoregtk-5.0.so.0
+lib/libjavascriptcoregtk-5.0.so.0.0.0
+lib/libwebkit2gtk-5.0.so
+lib/libwebkit2gtk-5.0.so.0
+lib/libwebkit2gtk-5.0.so.0.0.0
+lib/webkit2gtk-5.0/injected-bundle/libwebkit2gtkinjectedbundle.so
+libdata/pkgconfig/javascriptcoregtk-5.0.pc
+libdata/pkgconfig/webkit2gtk-5.0.pc
+libdata/pkgconfig/webkit2gtk-web-extension-5.0.pc
+libexec/webkit2gtk-5.0/MiniBrowser
+libexec/webkit2gtk-5.0/WebKitNetworkProcess
+libexec/webkit2gtk-5.0/WebKitWebProcess
+libexec/webkit2gtk-5.0/jsc
+share/gir-1.0/JavaScriptCore-5.0.gir
+share/gir-1.0/WebKit2-5.0.gir
+share/gir-1.0/WebKit2WebExtension-5.0.gir
+share/locale/ar/LC_MESSAGES/WebKit2GTK-5.0.mo
+share/locale/as/LC_MESSAGES/WebKit2GTK-5.0.mo
+share/locale/bg/LC_MESSAGES/WebKit2GTK-5.0.mo
*** 46 LINES SKIPPED ***