Download raw body.
[update] webkitgtk 2.50.0
On Sun, Sep 21, 2025 at 01:49:25PM +0200, Antoine Jacoutot wrote:
> Hi.
>
> This is a first tentative update diff for the latest webkitgtk 2.50.0 release.
> Sending now so that it has a chance to make release and be able to get security
> updates (webkitgtk does not do stable releases -1 nor backports, it just
> increments).
>
> This is not the final diff, I need to see how to re-enable the GPU process
> without dma-buf support which OpenBSD does not support.
> There might also be a few adjustments here and there.
>
> But that should be enough to test whether it builds and runs on !amd64
> platforms. I am in the process of testing arm64.
>
> If it fails to build on 32-bit platforms, let me know if this fixes it:
> https://github.com/WebKit/WebKit/pull/51010
>
> Thanks a lot!
New diff with fixed PLISTs.
Index: Makefile
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/Makefile,v
diff -u -p -r1.241 Makefile
--- Makefile 4 Sep 2025 14:07:26 -0000 1.241
+++ Makefile 23 Sep 2025 06:47:28 -0000
@@ -10,19 +10,18 @@ PORTROACH = limitw:1,even
COMMENT = GTK+ port of the WebKit (${API}) rendering engine
-V = 2.48.6
+V = 2.50.0
DISTNAME = webkitgtk-${V}
PKGNAME = webkitgtk${API:S/.//}-${V}
FULLPKGNAME = ${PKGNAME}
-REVISION = 0
EXTRACT_SUFX = .tar.xz
SUBST_VARS = API
DPB_PROPERTIES = parallel
-SHARED_LIBS += javascriptcoregtk-${API} 4.2
-SHARED_LIBS += webkit2gtk-${API} 4.2
-SHARED_LIBS += webkitgtk-6.0 0.4
+SHARED_LIBS += javascriptcoregtk-${API} 4.3
+SHARED_LIBS += webkit2gtk-${API} 4.3
+SHARED_LIBS += webkitgtk-6.0 0.5
CATEGORIES = www
@@ -38,15 +37,15 @@ WANTLIB += enchant-2 epoll-shim epoxy ex
WANTLIB += flite_cmu_grapheme_lex flite_cmu_indic_lang flite_cmu_indic_lex
WANTLIB += flite_cmu_time_awb flite_cmu_us_awb flite_cmu_us_kal
WANTLIB += flite_cmu_us_kal16 flite_cmu_us_rms flite_cmu_us_slt
-WANTLIB += flite_cmulex flite_usenglish fontconfig freetype gbm
-WANTLIB += gcrypt gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmodule-2.0
-WANTLIB += gobject-2.0 gpg-error gstallocators-1.0 gstapp-1.0
-WANTLIB += gstaudio-1.0 gstbase-1.0 gstfft-1.0 gstgl-1.0 gstpbutils-1.0
-WANTLIB += gstreamer-1.0 gsttag-1.0 gsttranscoder-1.0 gstvideo-1.0
-WANTLIB += harfbuzz harfbuzz-icu hyphen icudata icui18n icuuc
-WANTLIB += intl jpeg jxl lcms2 m pango-1.0 pangocairo-1.0 png
-WANTLIB += secret-1 sqlite3 tasn1 wayland-client wayland-egl wayland-server
-WANTLIB += webp webpdemux webpmux woff2dec xml2 xslt z
+WANTLIB += flite_cmulex flite_usenglish fontconfig freetype gcrypt
+WANTLIB += gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0
+WANTLIB += gpg-error gstallocators-1.0 gstapp-1.0 gstaudio-1.0
+WANTLIB += gstbase-1.0 gstfft-1.0 gstgl-1.0 gstpbutils-1.0 gstreamer-1.0
+WANTLIB += gsttag-1.0 gstvideo-1.0 harfbuzz harfbuzz-icu hyphen
+WANTLIB += icudata icui18n icuuc intl jpeg jxl lcms2 m pango-1.0
+WANTLIB += pangocairo-1.0 png secret-1 sqlite3 tasn1 wayland-client
+WANTLIB += wayland-egl wayland-server webp webpdemux webpmux woff2dec
+WANTLIB += xml2 xslt z
SITES = https://webkitgtk.org/releases/
@@ -81,7 +80,6 @@ LIB_DEPENDS = archivers/woff2 \
graphics/libjxl \
graphics/libwebp \
multimedia/gstreamer1/plugins-base \
- multimedia/gstreamer1/plugins-bad \
textproc/enchant2 \
textproc/hyphen \
textproc/libxslt \
@@ -96,6 +94,9 @@ CONFIGURE_ARGS = -DPORT=GTK \
# XXX revisit at next release if execinfo can be used
CONFIGURE_ARGS += -DUSE_LIBBACKTRACE=OFF
+
+# XXX needs dma-buf support (linux/dma-buf.h)
+CONFIGURE_ARGS += -DUSE_GBM=OFF
# until proven useful
# see defaults in Source/WTF/wtf/PlatformEnable.h
Index: distinfo
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/distinfo,v
diff -u -p -r1.135 distinfo
--- distinfo 4 Sep 2025 14:07:26 -0000 1.135
+++ distinfo 23 Sep 2025 06:47:28 -0000
@@ -1,2 +1,2 @@
-SHA256 (webkitgtk-2.48.6.tar.xz) = 2awwNLejnCqqVn5hErMSSxWOWRp0Q55Gl0oDHdDkTiQ=
-SIZE (webkitgtk-2.48.6.tar.xz) = 44127356
+SHA256 (webkitgtk-2.50.0.tar.xz) = 5WS4CZ+aOuMkCVObKQu9KtCE6ZttItSqxeUeRVTfi8I=
+SIZE (webkitgtk-2.50.0.tar.xz) = 45267072
Index: patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler_h,v
diff -u -p -r1.18 patch-Source_JavaScriptCore_assembler_ARM64Assembler_h
--- patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler_h 24 Mar 2025 10:42:37 -0000 1.18
+++ patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler_h 23 Sep 2025 06:47:28 -0000
@@ -1,7 +1,7 @@
Index: Source/JavaScriptCore/assembler/ARM64Assembler.h
--- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig
+++ Source/JavaScriptCore/assembler/ARM64Assembler.h
-@@ -3745,6 +3745,8 @@ class ARM64Assembler { (public)
+@@ -3758,6 +3758,8 @@ class ARM64Assembler { (public)
{
#if OS(DARWIN)
sys_icache_invalidate(code, size);
Index: patches/patch-Source_JavaScriptCore_assembler_ARMv7Assembler_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_assembler_ARMv7Assembler_h,v
diff -u -p -r1.13 patch-Source_JavaScriptCore_assembler_ARMv7Assembler_h
--- patches/patch-Source_JavaScriptCore_assembler_ARMv7Assembler_h 6 Oct 2024 15:14:44 -0000 1.13
+++ patches/patch-Source_JavaScriptCore_assembler_ARMv7Assembler_h 23 Sep 2025 06:47:28 -0000
@@ -1,7 +1,7 @@
Index: Source/JavaScriptCore/assembler/ARMv7Assembler.h
--- Source/JavaScriptCore/assembler/ARMv7Assembler.h.orig
+++ Source/JavaScriptCore/assembler/ARMv7Assembler.h
-@@ -2840,6 +2840,8 @@ class ARMv7Assembler { (public)
+@@ -2848,6 +2848,8 @@ class ARMv7Assembler { (public)
linuxPageFlush(current, current + page);
linuxPageFlush(current, end);
Index: patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerRISCV64_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerRISCV64_h,v
diff -u -p -r1.4 patch-Source_JavaScriptCore_assembler_MacroAssemblerRISCV64_h
--- patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerRISCV64_h 4 Jan 2025 14:35:15 -0000 1.4
+++ patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerRISCV64_h 23 Sep 2025 06:47:28 -0000
@@ -15,7 +15,7 @@ Date: Mon, 11 Nov 2024 00:56:40 +0800
Index: Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h
--- Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h.orig
+++ Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h
-@@ -171,6 +171,14 @@ class MacroAssemblerRISCV64 : public AbstractMacroAsse
+@@ -173,6 +173,14 @@ class MacroAssemblerRISCV64 : public AbstractMacroAsse
static constexpr RegisterID framePointerRegister = RISCV64Registers::fp;
static constexpr RegisterID linkRegister = RISCV64Registers::ra;
Index: patches/patch-Source_JavaScriptCore_assembler_RISCV64Assembler_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_assembler_RISCV64Assembler_h,v
diff -u -p -r1.2 patch-Source_JavaScriptCore_assembler_RISCV64Assembler_h
--- patches/patch-Source_JavaScriptCore_assembler_RISCV64Assembler_h 25 Mar 2024 22:36:18 -0000 1.2
+++ patches/patch-Source_JavaScriptCore_assembler_RISCV64Assembler_h 23 Sep 2025 06:47:28 -0000
@@ -4,7 +4,7 @@ and int64_t is a long long.
Index: Source/JavaScriptCore/assembler/RISCV64Assembler.h
--- Source/JavaScriptCore/assembler/RISCV64Assembler.h.orig
+++ Source/JavaScriptCore/assembler/RISCV64Assembler.h
-@@ -187,7 +187,7 @@ struct ImmediateBase {
+@@ -189,7 +189,7 @@ struct ImmediateBase {
template<typename T>
static auto isValid(T immValue)
@@ -13,7 +13,7 @@ Index: Source/JavaScriptCore/assembler/R
{
constexpr unsigned shift = sizeof(T) * 8 - immediateSize;
return immValue == ((immValue << shift) >> shift);
-@@ -210,6 +210,14 @@ struct ImmediateBase {
+@@ -212,6 +212,14 @@ struct ImmediateBase {
}
template<typename ImmediateType>
@@ -28,7 +28,7 @@ Index: Source/JavaScriptCore/assembler/R
static ImmediateType v(int64_t immValue)
{
ASSERT(isValid(immValue));
-@@ -311,7 +319,7 @@ struct JImmediate : ImmediateBase<21> {
+@@ -313,7 +321,7 @@ struct JImmediate : ImmediateBase<21> {
};
struct ImmediateDecomposition {
@@ -37,7 +37,7 @@ Index: Source/JavaScriptCore/assembler/R
explicit ImmediateDecomposition(T immediate)
: upper(UImmediate(0))
, lower(IImmediate(0))
-@@ -2188,7 +2196,15 @@ class RISCV64Assembler { (public)
+@@ -2190,7 +2198,15 @@ class RISCV64Assembler { (public)
: ImmediateLoader(int64_t(imm))
{ }
Index: patches/patch-Source_JavaScriptCore_heap_BlockDirectory_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_heap_BlockDirectory_cpp,v
diff -u -p -r1.5 patch-Source_JavaScriptCore_heap_BlockDirectory_cpp
--- patches/patch-Source_JavaScriptCore_heap_BlockDirectory_cpp 6 Oct 2024 15:14:44 -0000 1.5
+++ patches/patch-Source_JavaScriptCore_heap_BlockDirectory_cpp 23 Sep 2025 06:47:28 -0000
@@ -7,8 +7,8 @@ Index: Source/JavaScriptCore/heap/BlockD
// FIXME: We should figure out a solution for Windows and PlayStation.
// QNX doesn't have mincore(), though the information can be had. But since all mapped
// pages are resident, does it matter?
--#if OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(QNX)
-+#if OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(QNX) && !OS(OPENBSD)
+-#if OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(QNX) && !OS(HAIKU)
++#if OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(QNX) && !OS(HAIKU) && !OS(OPENBSD)
size_t pageSize = WTF::pageSize();
ASSERT(!(MarkedBlock::blockSize % pageSize));
auto numberOfPagesInMarkedBlock = MarkedBlock::blockSize / pageSize;
Index: patches/patch-Source_JavaScriptCore_runtime_JSCBytecodeCacheVersion_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_runtime_JSCBytecodeCacheVersion_cpp,v
diff -u -p -r1.1 patch-Source_JavaScriptCore_runtime_JSCBytecodeCacheVersion_cpp
--- patches/patch-Source_JavaScriptCore_runtime_JSCBytecodeCacheVersion_cpp 24 Mar 2025 10:42:37 -0000 1.1
+++ patches/patch-Source_JavaScriptCore_runtime_JSCBytecodeCacheVersion_cpp 23 Sep 2025 06:47:28 -0000
@@ -7,8 +7,8 @@ Index: Source/JavaScriptCore/runtime/JSC
}
cacheVersion.construct(0);
dataLogLnIf(JSCBytecodeCacheVersionInternal::verbose, "Failed to get UUID for JavaScriptCore framework");
--#elif OS(UNIX) && !PLATFORM(PLAYSTATION)
-+#elif OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(OPENBSD)
+-#elif OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(HAIKU)
++#elif OS(UNIX) && !PLATFORM(PLAYSTATION) && !OS(HAIKU) && !OS(OPENBSD)
auto result = ([&] -> std::optional<uint32_t> {
Dl_info info { };
if (!dladdr(jsFunctionAddr, &info))
Index: patches/patch-Source_JavaScriptCore_runtime_MachineContext_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_runtime_MachineContext_h,v
diff -u -p -r1.15 patch-Source_JavaScriptCore_runtime_MachineContext_h
--- patches/patch-Source_JavaScriptCore_runtime_MachineContext_h 24 Mar 2025 10:42:37 -0000 1.15
+++ patches/patch-Source_JavaScriptCore_runtime_MachineContext_h 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/JavaScriptCore/runtime/MachineContext.h
--- Source/JavaScriptCore/runtime/MachineContext.h.orig
+++ Source/JavaScriptCore/runtime/MachineContext.h
-@@ -182,6 +182,24 @@ static inline void*& stackPointerImpl(mcontext_t& mach
+@@ -177,6 +177,24 @@ static inline void*& stackPointerImpl(mcontext_t& mach
#error Unknown Architecture
#endif
@@ -26,7 +26,7 @@ Index: Source/JavaScriptCore/runtime/Mac
#elif OS(FUCHSIA) || OS(LINUX) || OS(HURD)
#if CPU(X86_64)
-@@ -305,6 +323,24 @@ static inline void*& framePointerImpl(mcontext_t& mach
+@@ -294,6 +312,24 @@ static inline void*& framePointerImpl(mcontext_t& mach
#error Unknown Architecture
#endif
@@ -51,7 +51,7 @@ Index: Source/JavaScriptCore/runtime/Mac
#elif OS(FUCHSIA) || OS(LINUX) || OS(HURD)
// The following sequence depends on glibc's sys/ucontext.h.
-@@ -467,6 +503,24 @@ static inline void*& instructionPointerImpl(mcontext_t
+@@ -452,6 +488,24 @@ static inline void*& instructionPointerImpl(mcontext_t
#error Unknown Architecture
#endif
@@ -76,7 +76,7 @@ Index: Source/JavaScriptCore/runtime/Mac
#elif OS(FUCHSIA) || OS(LINUX) || OS(HURD)
// The following sequence depends on glibc's sys/ucontext.h.
-@@ -655,6 +709,24 @@ inline void*& argumentPointer<1>(mcontext_t& machineCo
+@@ -624,6 +678,24 @@ inline void*& argumentPointer<1>(mcontext_t& machineCo
#error Unknown Architecture
#endif
@@ -101,7 +101,7 @@ Index: Source/JavaScriptCore/runtime/Mac
#elif OS(FUCHSIA) || OS(LINUX) || OS(HURD)
// The following sequence depends on glibc's sys/ucontext.h.
-@@ -712,6 +784,24 @@ inline void* wasmInstancePointer(const mcontext_t& mac
+@@ -681,6 +753,24 @@ inline void* wasmInstancePointer(const mcontext_t& mac
#error Unknown Architecture
#endif
@@ -126,7 +126,7 @@ Index: Source/JavaScriptCore/runtime/Mac
#elif OS(FUCHSIA) || OS(LINUX) || OS(HURD)
// The following sequence depends on glibc's sys/ucontext.h.
-@@ -830,6 +920,24 @@ inline void*& llintInstructionPointer(mcontext_t& mach
+@@ -794,6 +884,24 @@ inline void*& llintInstructionPointer(mcontext_t& mach
return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
#elif CPU(ARM64)
return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_X4]);
Index: patches/patch-Source_JavaScriptCore_runtime_MathCommon_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_runtime_MathCommon_cpp,v
diff -u -p -r1.2 patch-Source_JavaScriptCore_runtime_MathCommon_cpp
--- patches/patch-Source_JavaScriptCore_runtime_MathCommon_cpp 22 Oct 2024 09:16:31 -0000 1.2
+++ patches/patch-Source_JavaScriptCore_runtime_MathCommon_cpp 23 Sep 2025 06:47:29 -0000
@@ -9,7 +9,7 @@ Modified to remove OS(LINUX) from #if
Index: Source/JavaScriptCore/runtime/MathCommon.cpp
--- Source/JavaScriptCore/runtime/MathCommon.cpp.orig
+++ Source/JavaScriptCore/runtime/MathCommon.cpp
-@@ -657,6 +657,28 @@ static inline double roundeven(double operand)
+@@ -626,6 +626,28 @@ static inline double roundeven(double operand)
}
#endif
Index: patches/patch-Source_JavaScriptCore_runtime_Options_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_JavaScriptCore_runtime_Options_cpp,v
diff -u -p -r1.14 patch-Source_JavaScriptCore_runtime_Options_cpp
--- patches/patch-Source_JavaScriptCore_runtime_Options_cpp 24 Mar 2025 10:42:37 -0000 1.14
+++ patches/patch-Source_JavaScriptCore_runtime_Options_cpp 23 Sep 2025 06:47:29 -0000
@@ -9,8 +9,8 @@ Index: Source/JavaScriptCore/runtime/Opt
return std::nullopt;
}
--#if CPU(ADDRESS64) || OS(DARWIN)
-+#if CPU(ADDRESS64) || OS(DARWIN) || OS(OPENBSD)
+-#if CPU(ADDRESS64) || OS(DARWIN) || OS(HAIKU)
++#if CPU(ADDRESS64) || OS(DARWIN) || OS(HAIKU) || OS(OPENBSD)
template<>
std::optional<OptionsStorage::Size> parse(const char* string)
{
@@ -18,8 +18,8 @@ Index: Source/JavaScriptCore/runtime/Opt
return value;
return std::nullopt;
}
--#endif // CPU(ADDRESS64) || OS(DARWIN)
-+#endif // CPU(ADDRESS64) || OS(DARWIN) || OS(OPENBSD)
+-#endif // CPU(ADDRESS64) || OS(DARWIN) || OS(HAIKU)
++#endif // CPU(ADDRESS64) || OS(DARWIN) || OS(HAIKU) || OS(OPENBSD)
template<>
std::optional<OptionsStorage::Double> parse(const char* string)
Index: patches/patch-Source_ThirdParty_ANGLE_src_common_platform_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_ThirdParty_ANGLE_src_common_platform_h,v
diff -u -p -r1.1 patch-Source_ThirdParty_ANGLE_src_common_platform_h
--- patches/patch-Source_ThirdParty_ANGLE_src_common_platform_h 26 Mar 2022 16:11:56 -0000 1.1
+++ patches/patch-Source_ThirdParty_ANGLE_src_common_platform_h 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/ThirdParty/ANGLE/src/common/platform.h
--- Source/ThirdParty/ANGLE/src/common/platform.h.orig
+++ Source/ThirdParty/ANGLE/src/common/platform.h
-@@ -26,7 +26,15 @@
+@@ -23,7 +23,15 @@
#elif defined(__linux__) || defined(EMSCRIPTEN)
# define ANGLE_PLATFORM_LINUX 1
# define ANGLE_PLATFORM_POSIX 1
Index: patches/patch-Source_ThirdParty_ANGLE_src_libANGLE_renderer_gl_egl_DisplayEGL_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_ThirdParty_ANGLE_src_libANGLE_renderer_gl_egl_DisplayEGL_cpp,v
diff -u -p -r1.2 patch-Source_ThirdParty_ANGLE_src_libANGLE_renderer_gl_egl_DisplayEGL_cpp
--- patches/patch-Source_ThirdParty_ANGLE_src_libANGLE_renderer_gl_egl_DisplayEGL_cpp 24 Mar 2025 10:42:37 -0000 1.2
+++ patches/patch-Source_ThirdParty_ANGLE_src_libANGLE_renderer_gl_egl_DisplayEGL_cpp 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/DisplayEGL.cpp
--- Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/DisplayEGL.cpp.orig
+++ Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/DisplayEGL.cpp
-@@ -108,6 +108,8 @@ const char *DisplayEGL::getEGLPath() const
+@@ -109,6 +109,8 @@ const char *DisplayEGL::getEGLPath() const
# else
return "/system/lib/libEGL.so";
# endif
Index: patches/patch-Source_WTF_wtf_Compiler_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WTF_wtf_Compiler_h,v
diff -u -p -r1.4 patch-Source_WTF_wtf_Compiler_h
--- patches/patch-Source_WTF_wtf_Compiler_h 24 Mar 2025 10:42:37 -0000 1.4
+++ patches/patch-Source_WTF_wtf_Compiler_h 23 Sep 2025 06:47:29 -0000
@@ -3,12 +3,12 @@ Disable musttail attribute, not supporte
Index: Source/WTF/wtf/Compiler.h
--- Source/WTF/wtf/Compiler.h.orig
+++ Source/WTF/wtf/Compiler.h
-@@ -293,7 +293,7 @@
- #if COMPILER(CLANG)
- #if __SIZEOF_POINTER__ == 8
- #if !defined(MUST_TAIL_CALL) && defined(__cplusplus) && defined(__has_cpp_attribute)
--#if __has_cpp_attribute(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32)
-+#if __has_cpp_attribute(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32) && !defined(__mips__)
+@@ -277,7 +277,7 @@
+ // written for 64-bit may fail to tail call on 32-bit.
+ // It also doesn't work on ppc64le: https://github.com/llvm/llvm-project/issues/98859
+ // and on Windows: https://github.com/llvm/llvm-project/issues/116568
+-#if !defined(MUST_TAIL_CALL) && COMPILER(CLANG) && __SIZEOF_POINTER__ == 8 && defined(__cplusplus) && COMPILER_HAS_CPP_ATTRIBUTE(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32)
++#if !defined(MUST_TAIL_CALL) && COMPILER(CLANG) && __SIZEOF_POINTER__ == 8 && defined(__cplusplus) && COMPILER_HAS_CPP_ATTRIBUTE(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32) && !defined(__mips__)
#define MUST_TAIL_CALL [[clang::musttail]]
#define HAVE_MUST_TAIL_CALL 1
#endif
Index: patches/patch-Source_WTF_wtf_PlatformEnable_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WTF_wtf_PlatformEnable_h,v
diff -u -p -r1.14 patch-Source_WTF_wtf_PlatformEnable_h
--- patches/patch-Source_WTF_wtf_PlatformEnable_h 2 Apr 2025 11:34:40 -0000 1.14
+++ patches/patch-Source_WTF_wtf_PlatformEnable_h 23 Sep 2025 06:47:29 -0000
@@ -4,7 +4,7 @@ Hunk 2: https://bugs.webkit.org/show_bug
Index: Source/WTF/wtf/PlatformEnable.h
--- Source/WTF/wtf/PlatformEnable.h.orig
+++ Source/WTF/wtf/PlatformEnable.h
-@@ -646,7 +646,7 @@
+@@ -651,7 +651,7 @@
#if CPU(RISCV64)
#undef ENABLE_WEBASSEMBLY
@@ -13,7 +13,7 @@ Index: Source/WTF/wtf/PlatformEnable.h
#undef ENABLE_WEBASSEMBLY_OMGJIT
#define ENABLE_WEBASSEMBLY_OMGJIT 0
#undef ENABLE_WEBASSEMBLY_BBQJIT
-@@ -696,7 +696,7 @@
+@@ -701,7 +701,7 @@
#if !defined(ENABLE_DFG_JIT) && ENABLE(JIT)
/* Enable the DFG JIT on X86 and X86_64. */
Index: patches/patch-Source_WTF_wtf_posix_FileSystemPOSIX_cpp
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WTF_wtf_posix_FileSystemPOSIX_cpp,v
diff -u -p -r1.3 patch-Source_WTF_wtf_posix_FileSystemPOSIX_cpp
--- patches/patch-Source_WTF_wtf_posix_FileSystemPOSIX_cpp 24 Mar 2025 10:42:37 -0000 1.3
+++ patches/patch-Source_WTF_wtf_posix_FileSystemPOSIX_cpp 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/WTF/wtf/posix/FileSystemPOSIX.cpp
--- Source/WTF/wtf/posix/FileSystemPOSIX.cpp.orig
+++ Source/WTF/wtf/posix/FileSystemPOSIX.cpp
-@@ -203,7 +203,11 @@ std::optional<WallTime> fileCreationTime(const String&
+@@ -116,7 +116,11 @@ std::optional<WallTime> fileCreationTime(const String&
if (stat(fsRep.data(), &fileInfo) == -1)
return std::nullopt;
Index: patches/patch-Source_WebCore_CMakeLists_txt
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WebCore_CMakeLists_txt,v
diff -u -p -r1.5 patch-Source_WebCore_CMakeLists_txt
--- patches/patch-Source_WebCore_CMakeLists_txt 24 Mar 2025 10:42:37 -0000 1.5
+++ patches/patch-Source_WebCore_CMakeLists_txt 23 Sep 2025 06:47:29 -0000
@@ -4,7 +4,7 @@ See patch-Source_WebCore_SourcesGTK_txt
Index: Source/WebCore/CMakeLists.txt
--- Source/WebCore/CMakeLists.txt.orig
+++ Source/WebCore/CMakeLists.txt
-@@ -2024,6 +2024,7 @@ set(WebCore_LIBRARIES
+@@ -2074,6 +2074,7 @@ set(WebCore_LIBRARIES
LibXml2::LibXml2
SQLite::SQLite3
ZLIB::ZLIB
Index: patches/patch-Source_WebCore_platform_graphics_FontSelectionAlgorithm_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WebCore_platform_graphics_FontSelectionAlgorithm_h,v
diff -u -p -r1.5 patch-Source_WebCore_platform_graphics_FontSelectionAlgorithm_h
--- patches/patch-Source_WebCore_platform_graphics_FontSelectionAlgorithm_h 25 Mar 2024 22:36:18 -0000 1.5
+++ patches/patch-Source_WebCore_platform_graphics_FontSelectionAlgorithm_h 23 Sep 2025 06:47:29 -0000
@@ -16,7 +16,7 @@ Index: Source/WebCore/platform/graphics/
// Since floats have 23 mantissa bits, every value can be represented losslessly.
constexpr operator float() const;
-@@ -108,7 +112,11 @@ constexpr FontSelectionValue FontSelectionValue::minim
+@@ -110,7 +114,11 @@ constexpr FontSelectionValue FontSelectionValue::minim
return { std::numeric_limits<BackingType>::min(), RawTag::RawTag };
}
Index: patches/patch-Source_WebCore_platform_network_DNS_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_WebCore_platform_network_DNS_h,v
diff -u -p -r1.5 patch-Source_WebCore_platform_network_DNS_h
--- patches/patch-Source_WebCore_platform_network_DNS_h 24 Mar 2025 10:42:37 -0000 1.5
+++ patches/patch-Source_WebCore_platform_network_DNS_h 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/WebCore/platform/network/DNS.h
--- Source/WebCore/platform/network/DNS.h.orig
+++ Source/WebCore/platform/network/DNS.h
-@@ -36,6 +36,7 @@
+@@ -35,6 +35,7 @@
#include <ws2tcpip.h>
#else
#include <netinet/in.h>
Index: patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStoreDMABuf_cpp
===================================================================
RCS file: patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStoreDMABuf_cpp
diff -N patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStoreDMABuf_cpp
--- patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStoreDMABuf_cpp 24 Mar 2025 10:42:37 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,17 +0,0 @@
-No dma-buf on OpenBSD.
-
-Index: Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp
---- Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp.orig
-+++ Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp
-@@ -82,7 +82,11 @@ OptionSet<RendererBufferTransportMode> AcceleratedBack
- static OptionSet<RendererBufferTransportMode> mode;
- static std::once_flag onceFlag;
- std::call_once(onceFlag, [] {
-+#if defined(__OpenBSD__)
-+ const char* disableDMABuf = "1";
-+#else
- const char* disableDMABuf = getenv("WEBKIT_DISABLE_DMABUF_RENDERER");
-+#endif
- if (disableDMABuf && strcmp(disableDMABuf, "0"))
- return;
-
Index: patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStore_cpp
===================================================================
RCS file: patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStore_cpp
diff -N patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStore_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_WebKit_UIProcess_gtk_AcceleratedBackingStore_cpp 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,17 @@
+Index: Source/WebKit/UIProcess/gtk/AcceleratedBackingStore.cpp
+--- Source/WebKit/UIProcess/gtk/AcceleratedBackingStore.cpp.orig
++++ Source/WebKit/UIProcess/gtk/AcceleratedBackingStore.cpp
+@@ -88,6 +88,13 @@ OptionSet<RendererBufferTransportMode> AcceleratedBack
+ if (disableDMABuf && g_strcmp0(disableDMABuf, "0"))
+ return;
+
++/* no dma-buf on OpenBSD but keep the opportunity to set the variable to "0" to
++ test potential future support */
++#if defined(__OpenBSD__)
++ if (!disableDMABuf)
++ return;
++#endif
++
+ const char* platformExtensions = eglQueryString(nullptr, EGL_EXTENSIONS);
+ if (!GLContext::isExtensionSupported(platformExtensions, "EGL_KHR_platform_gbm")
+ && !GLContext::isExtensionSupported(platformExtensions, "EGL_MESA_platform_surfaceless")) {
Index: patches/patch-Source_bmalloc_bmalloc_BPlatform_h
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_bmalloc_bmalloc_BPlatform_h,v
diff -u -p -r1.1 patch-Source_bmalloc_bmalloc_BPlatform_h
--- patches/patch-Source_bmalloc_bmalloc_BPlatform_h 26 Mar 2022 16:11:56 -0000 1.1
+++ patches/patch-Source_bmalloc_bmalloc_BPlatform_h 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/bmalloc/bmalloc/BPlatform.h
--- Source/bmalloc/bmalloc/BPlatform.h.orig
+++ Source/bmalloc/bmalloc/BPlatform.h
-@@ -52,6 +52,10 @@
+@@ -60,6 +60,10 @@
#define BOS_FREEBSD 1
#endif
@@ -12,3 +12,12 @@ Index: Source/bmalloc/bmalloc/BPlatform.
#if defined(WIN32) || defined(_WIN32)
#define BOS_WINDOWS 1
#endif
+@@ -349,7 +353,7 @@
+
+ /* BENABLE(LIBPAS) is enabling libpas build. But this does not mean we use libpas for bmalloc replacement. */
+ #if !defined(BENABLE_LIBPAS)
+-#if BCPU(ADDRESS64) && (BOS(DARWIN) || BOS(WINDOWS) || (BOS(LINUX) && (BCPU(X86_64) || BCPU(ARM64))) || BPLATFORM(PLAYSTATION))
++#if BCPU(ADDRESS64) && (BOS(DARWIN) || BOS(WINDOWS) || (BOS(LINUX) && (BCPU(X86_64) || BCPU(ARM64))) || (BOS(OPENBSD) && (BCPU(X86_64) || BCPU(ARM64))) || BPLATFORM(PLAYSTATION))
+ #define BENABLE_LIBPAS 1
+ #ifndef PAS_BMALLOC
+ #define PAS_BMALLOC 1
Index: patches/patch-Source_bmalloc_bmalloc_bmalloc_h
===================================================================
RCS file: patches/patch-Source_bmalloc_bmalloc_bmalloc_h
diff -N patches/patch-Source_bmalloc_bmalloc_bmalloc_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_bmalloc_bmalloc_h 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,12 @@
+Index: Source/bmalloc/bmalloc/bmalloc.h
+--- Source/bmalloc/bmalloc/bmalloc.h.orig
++++ Source/bmalloc/bmalloc/bmalloc.h
+@@ -210,7 +210,7 @@ inline size_t availableMemory()
+ return bmalloc::availableMemory();
+ }
+
+-#if BPLATFORM(IOS_FAMILY) || BOS(LINUX) || BOS(FREEBSD)
++#if BPLATFORM(IOS_FAMILY) || BOS(LINUX) || BOS(FREEBSD) || BOS(OPENBSD)
+ inline size_t memoryFootprint()
+ {
+ return bmalloc::memoryFootprint();
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_c
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_c
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_c 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,12 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.c
+--- Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.c.orig
++++ Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.c
+@@ -68,6 +68,8 @@ void pas_committed_pages_vector_construct(pas_committe
+ if (result && (mem_info.State & MEM_COMMIT))
+ vector->raw_data[i] = (unsigned char) 1;
+ }
++#elif PAS_OS(OPENBSD)
++ /* no mindore on OpenBSD */
+ #else
+ PAS_SYSCALL(mincore(object, size, vector->raw_data));
+ #endif
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_h
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_h
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_committed_pages_vector_h 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,12 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.h
+--- Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.h.orig
++++ Source/bmalloc/libpas/src/libpas/pas_committed_pages_vector.h
+@@ -56,7 +56,7 @@ static inline bool pas_committed_pages_vector_is_commi
+ size_t page_index)
+ {
+ PAS_ASSERT(page_index < vector->size);
+-#if PAS_OS(LINUX) || PAS_OS(WINDOWS)
++#if PAS_OS(LINUX) || PAS_OS(WINDOWS) || PAS_OS(OPENBSD)
+ return vector->raw_data[page_index];
+ #else
+ return vector->raw_data[page_index] & (MINCORE_REFERENCED |
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_monotonic_time_c
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_monotonic_time_c
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_monotonic_time_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_monotonic_time_c 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,28 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_monotonic_time.c
+--- Source/bmalloc/libpas/src/libpas/pas_monotonic_time.c.orig
++++ Source/bmalloc/libpas/src/libpas/pas_monotonic_time.c
+@@ -36,7 +36,7 @@
+ #include <windows.h>
+ #endif
+
+-#if PAS_OS(LINUX) || PAS_PLATFORM(PLAYSTATION)
++#if PAS_OS(LINUX) || PAS_PLATFORM(PLAYSTATION) || PAS_OS(OPENBSD)
+ #include <time.h>
+ #endif
+
+@@ -85,6 +85,15 @@ uint64_t pas_get_current_monotonic_time_nanoseconds(vo
+ {
+ struct timespec ts;
+ clock_gettime(CLOCK_MONOTONIC_COARSE, &ts);
++ return ts.tv_sec * 1.0e9 + ts.tv_nsec;
++}
++
++#elif PAS_OS(OPENBSD)
++
++uint64_t pas_get_current_monotonic_time_nanoseconds(void)
++{
++ struct timespec ts;
++ clock_gettime(CLOCK_MONOTONIC, &ts);
+ return ts.tv_sec * 1.0e9 + ts.tv_nsec;
+ }
+
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_page_malloc_c
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_page_malloc_c
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_page_malloc_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_page_malloc_c 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,21 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_page_malloc.c
+--- Source/bmalloc/libpas/src/libpas/pas_page_malloc.c.orig
++++ Source/bmalloc/libpas/src/libpas/pas_page_malloc.c
+@@ -323,7 +323,7 @@ static void commit_impl(void* ptr, size_t size, bool d
+ }
+ #elif PAS_PLATFORM(PLAYSTATION)
+ // We don't need to call madvise to map page.
+-#elif PAS_OS(FREEBSD)
++#elif PAS_OS(FREEBSD) || PAS_OS(OPENBSD)
+ PAS_SYSCALL(madvise(ptr, size, MADV_NORMAL));
+ #endif
+ }
+@@ -366,7 +366,7 @@ static void decommit_impl(void* ptr, size_t size,
+ pas_page_malloc_zero_fill(ptr, size);
+ else
+ PAS_SYSCALL(madvise(ptr, size, MADV_FREE_REUSABLE));
+-#elif PAS_OS(FREEBSD)
++#elif PAS_OS(FREEBSD) || PAS_OS(OPENBSD)
+ PAS_SYSCALL(madvise(ptr, size, MADV_FREE));
+ #elif PAS_OS(LINUX)
+ PAS_SYSCALL(madvise(ptr, size, MADV_DONTNEED));
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_platform_h
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_platform_h
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_platform_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_platform_h 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,14 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_platform.h
+--- Source/bmalloc/libpas/src/libpas/pas_platform.h.orig
++++ Source/bmalloc/libpas/src/libpas/pas_platform.h
+@@ -140,6 +140,10 @@
+ #define PAS_OS_FREEBSD 1
+ #endif
+
++#if defined(__OpenBSD__)
++#define PAS_OS_OPENBSD 1
++#endif
++
+ #if defined(WIN32) || defined(_WIN32)
+ #define PAS_OS_WINDOWS 1
+ #endif
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_probabilistic_guard_malloc_allocator_c
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_probabilistic_guard_malloc_allocator_c
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_probabilistic_guard_malloc_allocator_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_probabilistic_guard_malloc_allocator_c 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,14 @@
+XXX undefined symbol backtrace even with USE_LIBBACKTRACE=OFF
+
+Index: Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c
+--- Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c.orig
++++ Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c
+@@ -48,7 +48,7 @@
+ #endif
+
+ /* PlayStation does not currently support the backtrace API. Android API versions < 33 don't, either. Windows does not either. */
+-#if !PAS_PLATFORM(PLAYSTATION) && (!PAS_OS(ANDROID) || __ANDROID_API__ >= 33) && !PAS_OS(WINDOWS)
++#if !PAS_PLATFORM(PLAYSTATION) && (!PAS_OS(ANDROID) || __ANDROID_API__ >= 33) && !PAS_OS(WINDOWS) &&!PAS_OS(OPENBSD)
+ #include <execinfo.h>
+ #else
+ size_t backtrace(void** buffer, size_t size)
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_random_h
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_random_h
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_random_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_random_h 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,12 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_random.h
+--- Source/bmalloc/libpas/src/libpas/pas_random.h.orig
++++ Source/bmalloc/libpas/src/libpas/pas_random.h
+@@ -69,7 +69,7 @@ static inline unsigned pas_get_secure_random(unsigned
+
+ /* Secure random is only supported on Darwin and FreeBSD at the moment due to arc4random being built into the
+ stdlib. Fall back to fast behavior on other operating systems. */
+-#if PAS_OS(DARWIN) || PAS_OS(FREEBSD)
++#if PAS_OS(DARWIN) || PAS_OS(FREEBSD) || PAS_OS(OPENBSD)
+ rand_value = arc4random_uniform(upper_bound);
+ #else
+ pas_fast_random_state = pas_xorshift32(pas_fast_random_state);
Index: patches/patch-Source_bmalloc_libpas_src_libpas_pas_thread_local_cache_c
===================================================================
RCS file: patches/patch-Source_bmalloc_libpas_src_libpas_pas_thread_local_cache_c
diff -N patches/patch-Source_bmalloc_libpas_src_libpas_pas_thread_local_cache_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_bmalloc_libpas_src_libpas_pas_thread_local_cache_c 23 Sep 2025 06:47:29 -0000
@@ -0,0 +1,22 @@
+Index: Source/bmalloc/libpas/src/libpas/pas_thread_local_cache.c
+--- Source/bmalloc/libpas/src/libpas/pas_thread_local_cache.c.orig
++++ Source/bmalloc/libpas/src/libpas/pas_thread_local_cache.c
+@@ -49,7 +49,7 @@
+ #if PAS_OS(DARWIN)
+ #include <mach/thread_act.h>
+ #endif
+-#if PAS_PLATFORM(PLAYSTATION)
++#if PAS_PLATFORM(PLAYSTATION) || PAS_OS(OPENBSD)
+ #include <pthread_np.h>
+ #endif
+
+@@ -220,6 +220,9 @@ static void dump_thread_diagnostics(pthread_t thread)
+ #endif
+ #if PAS_PLATFORM(PLAYSTATION)
+ getname_result = pthread_get_name_np(thread, thread_name);
++#elif PAS_OS(OPENBSD)
++ pthread_get_name_np(thread, thread_name, sizeof(thread_name));
++ getname_result = 0;
+ #else
+ getname_result = pthread_getname_np(thread, thread_name, sizeof(thread_name));
+ #endif
Index: patches/patch-Source_cmake_WebKitCommon_cmake
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_cmake_WebKitCommon_cmake,v
diff -u -p -r1.15 patch-Source_cmake_WebKitCommon_cmake
--- patches/patch-Source_cmake_WebKitCommon_cmake 6 Oct 2024 15:14:45 -0000 1.15
+++ patches/patch-Source_cmake_WebKitCommon_cmake 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/cmake/WebKitCommon.cmake
--- Source/cmake/WebKitCommon.cmake.orig
+++ Source/cmake/WebKitCommon.cmake
-@@ -129,6 +129,8 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
+@@ -133,6 +133,8 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
set(WTF_CPU_RISCV64 1)
elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^loongarch64")
set(WTF_CPU_LOONGARCH64 1)
@@ -10,7 +10,7 @@ Index: Source/cmake/WebKitCommon.cmake
else ()
set(WTF_CPU_UNKNOWN 1)
endif ()
-@@ -200,9 +202,9 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
+@@ -204,9 +206,9 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
# We cannot check for RUBY_FOUND because it is set only when the full package is installed and
# the only thing we need is the interpreter. Unlike Python, cmake does not provide a macro
# for finding only the Ruby interpreter.
@@ -23,7 +23,7 @@ Index: Source/cmake/WebKitCommon.cmake
endif ()
# -----------------------------------------------------------------------------
-@@ -215,7 +217,7 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
+@@ -219,7 +221,7 @@ if (NOT HAS_RUN_WEBKIT_COMMON)
include(CheckCXXCompilerFlag)
include(CheckCXXSourceCompiles)
include(CheckFunctionExists)
Index: patches/patch-Source_cmake_WebKitCompilerFlags_cmake
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_cmake_WebKitCompilerFlags_cmake,v
diff -u -p -r1.18 patch-Source_cmake_WebKitCompilerFlags_cmake
--- patches/patch-Source_cmake_WebKitCompilerFlags_cmake 3 Apr 2025 21:38:24 -0000 1.18
+++ patches/patch-Source_cmake_WebKitCompilerFlags_cmake 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/cmake/WebKitCompilerFlags.cmake
--- Source/cmake/WebKitCompilerFlags.cmake.orig
+++ Source/cmake/WebKitCompilerFlags.cmake
-@@ -328,9 +328,9 @@ if (NOT MSVC)
+@@ -333,9 +333,9 @@ if (NOT MSVC)
string(REGEX MATCHALL "-fsanitize=[^ ]*" ENABLED_COMPILER_SANITIZERS ${CMAKE_CXX_FLAGS})
endif ()
Index: patches/patch-Source_cmake_WebKitFeatures_cmake
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/patches/patch-Source_cmake_WebKitFeatures_cmake,v
diff -u -p -r1.18 patch-Source_cmake_WebKitFeatures_cmake
--- patches/patch-Source_cmake_WebKitFeatures_cmake 24 Mar 2025 10:42:37 -0000 1.18
+++ patches/patch-Source_cmake_WebKitFeatures_cmake 23 Sep 2025 06:47:29 -0000
@@ -1,7 +1,7 @@
Index: Source/cmake/WebKitFeatures.cmake
--- Source/cmake/WebKitFeatures.cmake.orig
+++ Source/cmake/WebKitFeatures.cmake
-@@ -434,7 +434,7 @@ macro(CREATE_CONFIGURATION_HEADER)
+@@ -439,7 +439,7 @@ macro(CREATE_CONFIGURATION_HEADER)
endmacro()
macro(WEBKIT_CHECK_HAVE_INCLUDE _variable _header)
Index: pkg/PFRAG.no-webkitgtk60
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/pkg/PFRAG.no-webkitgtk60,v
diff -u -p -r1.6 PFRAG.no-webkitgtk60
--- pkg/PFRAG.no-webkitgtk60 24 Mar 2025 10:42:37 -0000 1.6
+++ pkg/PFRAG.no-webkitgtk60 23 Sep 2025 06:47:29 -0000
@@ -141,7 +141,6 @@ lib/webkit2gtk-${API}/injected-bundle/
@so lib/webkit2gtk-${API}/injected-bundle/libwebkit2gtkinjectedbundle.so
libexec/webkit2gtk-${API}/
@bin libexec/webkit2gtk-${API}/MiniBrowser
-@bin libexec/webkit2gtk-${API}/WebKitGPUProcess
@bin libexec/webkit2gtk-${API}/WebKitNetworkProcess
@bin libexec/webkit2gtk-${API}/WebKitWebProcess
@bin libexec/webkit2gtk-${API}/jsc
@@ -242,6 +241,7 @@ share/doc/webkit2gtk-${API}/const.EDITIN
share/doc/webkit2gtk-${API}/const.MAJOR_VERSION.html
share/doc/webkit2gtk-${API}/const.MICRO_VERSION.html
share/doc/webkit2gtk-${API}/const.MINOR_VERSION.html
+share/doc/webkit2gtk-${API}/contributing.html
share/doc/webkit2gtk-${API}/ctor.ApplicationInfo.new.html
share/doc/webkit2gtk-${API}/ctor.ContextMenu.new.html
share/doc/webkit2gtk-${API}/ctor.ContextMenu.new_with_items.html
@@ -958,6 +958,7 @@ share/doc/webkit2gtk-${API}/method.WebVi
share/doc/webkit2gtk-${API}/method.WebView.get_settings.html
share/doc/webkit2gtk-${API}/method.WebView.get_snapshot.html
share/doc/webkit2gtk-${API}/method.WebView.get_snapshot_finish.html
+share/doc/webkit2gtk-${API}/method.WebView.get_theme_color.html
share/doc/webkit2gtk-${API}/method.WebView.get_title.html
share/doc/webkit2gtk-${API}/method.WebView.get_tls_info.html
share/doc/webkit2gtk-${API}/method.WebView.get_uri.html
@@ -1206,6 +1207,7 @@ share/doc/webkit2gtk-${API}/property.Web
share/doc/webkit2gtk-${API}/property.WebView.page-id.html
share/doc/webkit2gtk-${API}/property.WebView.related-view.html
share/doc/webkit2gtk-${API}/property.WebView.settings.html
+share/doc/webkit2gtk-${API}/property.WebView.theme-color.html
share/doc/webkit2gtk-${API}/property.WebView.title.html
share/doc/webkit2gtk-${API}/property.WebView.uri.html
share/doc/webkit2gtk-${API}/property.WebView.user-content-manager.html
Index: pkg/PFRAG.webkitgtk60
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/pkg/PFRAG.webkitgtk60,v
diff -u -p -r1.7 PFRAG.webkitgtk60
--- pkg/PFRAG.webkitgtk60 24 Mar 2025 10:42:37 -0000 1.7
+++ pkg/PFRAG.webkitgtk60 23 Sep 2025 06:47:29 -0000
@@ -15,7 +15,6 @@ lib/webkitgtk-${API}/injected-bundle/
@so lib/webkitgtk-${API}/injected-bundle/libwebkitgtkinjectedbundle.so
libexec/webkitgtk-${API}/
@bin libexec/webkitgtk-${API}/MiniBrowser
-@bin libexec/webkitgtk-${API}/WebKitGPUProcess
@bin libexec/webkitgtk-${API}/WebKitNetworkProcess
@bin libexec/webkitgtk-${API}/WebKitWebProcess
@bin libexec/webkitgtk-${API}/jsc
@@ -114,6 +113,7 @@ share/doc/webkitgtk-${API}/const.EDITING
share/doc/webkitgtk-${API}/const.MAJOR_VERSION.html
share/doc/webkitgtk-${API}/const.MICRO_VERSION.html
share/doc/webkitgtk-${API}/const.MINOR_VERSION.html
+share/doc/webkitgtk-${API}/contributing.html
share/doc/webkitgtk-${API}/ctor.ApplicationInfo.new.html
share/doc/webkitgtk-${API}/ctor.ContextMenu.new.html
share/doc/webkitgtk-${API}/ctor.ContextMenu.new_with_items.html
@@ -764,6 +764,7 @@ share/doc/webkitgtk-${API}/method.WebVie
share/doc/webkitgtk-${API}/method.WebView.get_settings.html
share/doc/webkitgtk-${API}/method.WebView.get_snapshot.html
share/doc/webkitgtk-${API}/method.WebView.get_snapshot_finish.html
+share/doc/webkitgtk-${API}/method.WebView.get_theme_color.html
share/doc/webkitgtk-${API}/method.WebView.get_title.html
share/doc/webkitgtk-${API}/method.WebView.get_tls_info.html
share/doc/webkitgtk-${API}/method.WebView.get_uri.html
@@ -977,6 +978,7 @@ share/doc/webkitgtk-${API}/property.WebV
share/doc/webkitgtk-${API}/property.WebView.page-id.html
share/doc/webkitgtk-${API}/property.WebView.related-view.html
share/doc/webkitgtk-${API}/property.WebView.settings.html
+share/doc/webkitgtk-${API}/property.WebView.theme-color.html
share/doc/webkitgtk-${API}/property.WebView.title.html
share/doc/webkitgtk-${API}/property.WebView.uri.html
share/doc/webkitgtk-${API}/property.WebView.user-content-manager.html
[update] webkitgtk 2.50.0