pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/x11/qt5-qtwebkit
Module Name: pkgsrc
Committed By: wiz
Date: Fri Jan 24 11:54:38 UTC 2025
Added Files:
pkgsrc/x11/qt5-qtwebkit: DESCR MESSAGE Makefile PLIST buildlink3.mk
distinfo
pkgsrc/x11/qt5-qtwebkit/patches: patch-CMakeLists.txt
patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h
patch-Source_JavaScriptCore_assembler_ARM64Assembler.h
patch-Source_JavaScriptCore_assembler_ARMAssembler.h
patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
patch-Source_JavaScriptCore_dfg_DFGNode.h
patch-Source_JavaScriptCore_generate-bytecode-files
patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp
patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp
patch-Source_JavaScriptCore_jsc.cpp
patch-Source_JavaScriptCore_tools_CodeProfiling.cpp
patch-Source_Qt5WebKitConfig.cmake.in
patch-Source_ThirdParty_ANGLE_src_common_mathutil.h
patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h
patch-Source_WTF_wtf_Assertions.cpp
patch-Source_WTF_wtf_InlineASM.h patch-Source_WTF_wtf_MathExtras.h
patch-Source_WTF_wtf_Platform.h
patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp
patch-Source_WebCore_css_makegrammar.pl
patch-Source_WebCore_page_NavigatorBase.cpp
patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp
patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp
patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp
patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h
patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h
patch-Source_WebCore_platform_text_TextCodecICU.cpp
patch-Source_WebCore_platform_text_icu_UTextProvider.h
patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp
patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp
patch-Source_WebCore_xml_XSLTProcessor.h
patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp
patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp
patch-Source_WebKit_qt_declarative_CMakeLists.txt
patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt
patch-Source_cmake_OptionsCommon.cmake
patch-Source_cmake_OptionsQt.cmake
patch-Source_cmake_WebKitMacros.cmake
Log Message:
x11/qt5-qtwebkit: import qt5-qtwebkit-5.212.0.alpha4nb29
Restore by request from nia@, set MAINTAINER to nia@.
WebKit is an open source web browser engine. WebKit's HTML and JavaScript
code began as a branch of the KHTML and KJS libraries from KDE. As part of
KDE framework KHTML was based on Qt but during their porting efforts Apple's
engineers made WebKit toolkit independent. QtWebKit is a project aiming at
porting this fabulous engine back to Qt.
WARNING: This release is based on an old WebKit revision with known unpatched
vulnerabilities. Please use it carefully and avoid visiting untrusted websites
and using it for transmission of sensitive data.
To generate a diff of this commit:
cvs rdiff -u -r0 -r1.4 pkgsrc/x11/qt5-qtwebkit/DESCR
cvs rdiff -u -r0 -r1.3 pkgsrc/x11/qt5-qtwebkit/MESSAGE
cvs rdiff -u -r0 -r1.128 pkgsrc/x11/qt5-qtwebkit/Makefile
cvs rdiff -u -r0 -r1.10 pkgsrc/x11/qt5-qtwebkit/PLIST
cvs rdiff -u -r0 -r1.69 pkgsrc/x11/qt5-qtwebkit/buildlink3.mk
cvs rdiff -u -r0 -r1.36 pkgsrc/x11/qt5-qtwebkit/distinfo
cvs rdiff -u -r0 -r1.4 pkgsrc/x11/qt5-qtwebkit/patches/patch-CMakeLists.txt \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_dfg_DFGNode.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_Qt5WebKitConfig.cmake.in \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Assertions.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_InlineASM.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_MathExtras.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_NavigatorBase.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsQt.cmake
cvs rdiff -u -r0 -r1.3 \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_generate-bytecode-files \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jsc.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_ANGLE_src_common_mathutil.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_css_makegrammar.pl \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_TextCodecICU.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProvider.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessor.h \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_CMakeLists.txt \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsCommon.cmake \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_WebKitMacros.cmake
cvs rdiff -u -r0 -r1.5 \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
cvs rdiff -u -r0 -r1.6 \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_tools_CodeProfiling.cpp
cvs rdiff -u -r0 -r1.7 \
pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Platform.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: pkgsrc/x11/qt5-qtwebkit/DESCR
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/DESCR:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/DESCR Fri Jan 24 11:54:36 2025
@@ -0,0 +1,9 @@
+WebKit is an open source web browser engine. WebKit's HTML and JavaScript
+code began as a branch of the KHTML and KJS libraries from KDE. As part of
+KDE framework KHTML was based on Qt but during their porting efforts Apple's
+engineers made WebKit toolkit independent. QtWebKit is a project aiming at
+porting this fabulous engine back to Qt.
+
+WARNING: This release is based on an old WebKit revision with known unpatched
+vulnerabilities. Please use it carefully and avoid visiting untrusted websites
+and using it for transmission of sensitive data.
Index: pkgsrc/x11/qt5-qtwebkit/MESSAGE
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/MESSAGE:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/MESSAGE Fri Jan 24 11:54:37 2025
@@ -0,0 +1,14 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+WebKit needs GStreamer plugins to play web audio and video.
+
+Installing the following should be enough on BSD/Solaris:
+
+* gst-plugins1-libav
+* gst-plugins1-oss
+
+Installing gst-plugins1-alsa or gst-plugins1-pulse will be necessary
+for audio output on Linux.
+
+===========================================================================
Index: pkgsrc/x11/qt5-qtwebkit/Makefile
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/Makefile:1.128
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/Makefile Fri Jan 24 11:54:37 2025
@@ -0,0 +1,130 @@
+# $NetBSD: Makefile,v 1.128 2025/01/24 11:54:37 wiz Exp $
+
+QTWKVERSION= 5.212.0-alpha4
+DISTNAME= qtwebkit-${QTWKVERSION}
+PKGNAME= qt5-qtwebkit-${QTWKVERSION:S/-/./}
+PKGREVISION= 29
+CATEGORIES= x11 www
+MASTER_SITES= ${MASTER_SITE_GITHUB:=qtwebkit/}
+GITHUB_PROJECT= qtwebkit
+GITHUB_RELEASE= ${DISTNAME}
+EXTRACT_SUFX= .tar.xz
+
+MAINTAINER= nia%NetBSD.org@localhost
+HOMEPAGE= https://github.com/qtwebkit/qtwebkit/wiki
+COMMENT= Qt5 WebView module
+LICENSE= gnu-lgpl-v2.1 AND gnu-gpl-v3
+
+TOOL_DEPENDS+= gperf-[0-9]*:../../devel/gperf
+TOOL_DEPENDS+= libxml2-[0-9]*:../../textproc/libxml2
+TOOL_DEPENDS+= libxslt-[0-9]*:../../textproc/libxslt
+
+USE_LANGUAGES= c c++11
+USE_TOOLS+= bison perl:build pkg-config
+CMAKE_INSTALL_PREFIX= ${QTDIR}
+CMAKE_INSTALL_NAME_DIR= ${QTDIR}/lib
+TEST_TARGET= test
+
+# Source/JavaScriptCore/offlineasm/parser.rb:587:in `block in parseSequence': undefined method `=~'
+RUBY_VERSIONS_ACCEPTED= 31
+
+CMAKE_CONFIGURE_ARGS+= -DPORT=Qt
+CMAKE_CONFIGURE_ARGS+= -DCMAKE_BUILD_TYPE=Release
+CMAKE_CONFIGURE_ARGS+= -DENABLE_API_TESTS=OFF
+CMAKE_CONFIGURE_ARGS+= -DENABLE_TOOLS=OFF
+CMAKE_CONFIGURE_ARGS+= -DKDE_INSTALL_LIBEXECDIR=${QTDIR}/libexec
+CMAKE_CONFIGURE_ARGS+= -DSHARED_CORE=ON
+CMAKE_CONFIGURE_ARGS+= -DUSE_LD_GOLD=OFF
+CMAKE_CONFIGURE_ARGS+= -DUSE_SYSTEM_MALLOC=ON
+# for Darwin
+CMAKE_CONFIGURE_ARGS+= -DMACOS_BUILD_FRAMEWORKS=OFF
+CMAKE_CONFIGURE_ARGS+= -DMACOS_FORCE_SYSTEM_XML_LIBRARIES=OFF
+CMAKE_CONFIGURE_ARGS+= -DMACOS_USE_SYSTEM_ICU=OFF
+
+UNLIMIT_RESOURCES+= cputime
+
+GCC_REQD+= 4.9
+
+# wcstof(3) etc. is used in C++ code.
+CFLAGS.NetBSD+= -D_NETBSD_SOURCE
+
+# temporary fix for GLib 2.68 breakage
+# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1963
+CXXFLAGS+= -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_66
+
+# avoid creating a .qt directory in the users home directory
+SCRIPTS_ENV+= HOME=${WRKDIR}
+
+REPLACE_PERL+= Source/WebKit2/Scripts/generate-forwarding-headers.pl
+
+INSTALL_ENV+= INSTALL_ROOT=${DESTDIR}
+INSTALLATION_DIRS+= lib/pkgconfig
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${_USE_CWRAPPERS} == "yes"
+BUILDLINK_TRANSFORM+= R:${WRKSRC}/lib:${QTDIR}/lib
+.else
+BUILDLINK_TRANSFORM+= rpath:${WRKSRC}/lib:${QTDIR}/lib
+.endif
+
+BUILDLINK_TRANSFORM.SunOS+= rm:-Wl,--gc-sections
+
+.if ${OPSYS} == "NetBSD" && ${MACHINE_ARCH:M*arm*}
+LDFLAGS+= -Wl,--no-keep-memory
+.endif
+
+.if ${OPSYS} == "SunOS"
+CMAKE_CONFIGURE_ARGS+= -DUSE_LINKER_VERSION_SCRIPT=OFF
+LDFLAGS+= -lsocket -lnsl
+.endif
+
+# JavaScriptCore requires at least MIPS32.
+.if ${MACHINE_ARCH:Mmips64*}
+CFLAGS+= -march=mips64
+.elif ${MACHINE_ARCH:Mmips*}
+CFLAGS+= -march=mips32
+.endif
+
+post-install:
+.for i in Qt5WebKit.pc Qt5WebKitWidgets.pc
+ cd ${DESTDIR}${PREFIX}/lib/pkgconfig && \
+ ln -f -s ${QTDIR}/lib/pkgconfig/${i} ${i}
+.endfor
+
+# Not supported on Win and Mac.
+# See comment in Source/WebKit2/PlatformQt.cmake
+PLIST_VARS+= npapi
+
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../devel/cmake/build.mk"
+.if ${OPSYS} == "Darwin" || ${OPSYS} == "Linux" || ${OPSYS} == "NetBSD"
+.include "../../devel/libexecinfo/buildlink3.mk"
+.endif
+.include "../../fonts/woff2/buildlink3.mk"
+.include "../../graphics/libwebp/buildlink3.mk"
+.include "../../textproc/hyphen/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../textproc/libxml2/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.if ${OPSYS} != "Darwin"
+.include "../../multimedia/gst-plugins1-base/buildlink3.mk"
+.include "../../multimedia/gst-plugins1-bad/buildlink3.mk"
+.include "../../x11/libXcomposite/buildlink3.mk"
+PLIST.npapi= yes
+.endif
+.include "../../x11/qt5-qtdeclarative/buildlink3.mk"
+.include "../../x11/qt5-qtlocation/buildlink3.mk"
+.include "../../x11/qt5-qtmultimedia/buildlink3.mk"
+.include "../../x11/qt5-qtsensors/buildlink3.mk"
+.include "../../x11/qt5-qtwebchannel/buildlink3.mk"
+PYTHON_FOR_BUILD_ONLY= tool
+.include "../../lang/python/batteries-included.mk"
+.include "../../lang/python/tool.mk"
+.include "../../lang/ruby/buildlink3.mk"
+BUILDLINK_DEPMETHOD.${RUBY_BASE}= build
+.include "../../mk/curses.buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+BUILDLINK_TRANSFORM+= opt:-ldl:${BUILDLINK_LDADD.dl:Q}
+.include "../../mk/atomic64.mk"
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/x11/qt5-qtwebkit/PLIST
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/PLIST:1.10
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/PLIST Fri Jan 24 11:54:37 2025
@@ -0,0 +1,122 @@
+@comment $NetBSD: PLIST,v 1.10 2025/01/24 11:54:37 wiz Exp $
+lib/pkgconfig/Qt5WebKit.pc
+lib/pkgconfig/Qt5WebKitWidgets.pc
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qhttpheader_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquicknetworkreply_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquicknetworkrequest_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquickurlschemedelegate_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquickwebpage_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquickwebpage_p_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquickwebview_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qquickwebview_p_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qtwebsecurityorigin_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebchannelwebkittransport_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebdatabase_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebdownloaditem_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebdownloaditem_p_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebelement_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebhistory_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebiconimageprovider_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebkittest_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebloadrequest_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebnavigationhistory_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebnavigationhistory_p_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebnavigationrequest_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebpermissionrequest_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebplugindatabase_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebpreferences_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebpreferences_p_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebscriptworld_p.h
+qt5/include/QtWebKit/5.212.0/QtWebKit/private/qwebsecurityorigin_p.h
+qt5/include/QtWebKit/QWebDatabase
+qt5/include/QtWebKit/QWebElement
+qt5/include/QtWebKit/QWebElementCollection
+qt5/include/QtWebKit/QWebFullScreenRequest
+qt5/include/QtWebKit/QWebFullScreenVideoHandler
+qt5/include/QtWebKit/QWebHapticFeedbackPlayer
+qt5/include/QtWebKit/QWebHistory
+qt5/include/QtWebKit/QWebHistoryInterface
+qt5/include/QtWebKit/QWebHistoryItem
+qt5/include/QtWebKit/QWebKitPlatformPlugin
+qt5/include/QtWebKit/QWebNotificationData
+qt5/include/QtWebKit/QWebNotificationPresenter
+qt5/include/QtWebKit/QWebPluginFactory
+qt5/include/QtWebKit/QWebSecurityOrigin
+qt5/include/QtWebKit/QWebSelectData
+qt5/include/QtWebKit/QWebSelectMethod
+qt5/include/QtWebKit/QWebSettings
+qt5/include/QtWebKit/QWebSpellChecker
+qt5/include/QtWebKit/QWebTouchModifier
+qt5/include/QtWebKit/QtWebKit
+qt5/include/QtWebKit/QtWebKitDepends
+qt5/include/QtWebKit/QtWebKitVersion
+qt5/include/QtWebKit/qtwebkitversion.h
+qt5/include/QtWebKit/qwebdatabase.h
+qt5/include/QtWebKit/qwebelement.h
+qt5/include/QtWebKit/qwebfullscreenrequest.h
+qt5/include/QtWebKit/qwebhistory.h
+qt5/include/QtWebKit/qwebhistoryinterface.h
+qt5/include/QtWebKit/qwebkitglobal.h
+qt5/include/QtWebKit/qwebkitplatformplugin.h
+qt5/include/QtWebKit/qwebpluginfactory.h
+qt5/include/QtWebKit/qwebsecurityorigin.h
+qt5/include/QtWebKit/qwebsettings.h
+qt5/include/QtWebKitWidgets/5.212.0/QtWebKitWidgets/private/qwebframe_p.h
+qt5/include/QtWebKitWidgets/5.212.0/QtWebKitWidgets/private/qwebinspector_p.h
+qt5/include/QtWebKitWidgets/5.212.0/QtWebKitWidgets/private/qwebpage_p.h
+qt5/include/QtWebKitWidgets/5.212.0/QtWebKitWidgets/private/qwebviewaccessible_p.h
+qt5/include/QtWebKitWidgets/QGraphicsWebView
+qt5/include/QtWebKitWidgets/QWebFrame
+qt5/include/QtWebKitWidgets/QWebHitTestResult
+qt5/include/QtWebKitWidgets/QWebInspector
+qt5/include/QtWebKitWidgets/QWebPage
+qt5/include/QtWebKitWidgets/QWebView
+qt5/include/QtWebKitWidgets/QtWebKitWidgets
+qt5/include/QtWebKitWidgets/QtWebKitWidgetsDepends
+qt5/include/QtWebKitWidgets/QtWebKitWidgetsVersion
+qt5/include/QtWebKitWidgets/qgraphicswebview.h
+qt5/include/QtWebKitWidgets/qtwebkitwidgetsversion.h
+qt5/include/QtWebKitWidgets/qwebframe.h
+qt5/include/QtWebKitWidgets/qwebinspector.h
+qt5/include/QtWebKitWidgets/qwebpage.h
+qt5/include/QtWebKitWidgets/qwebview.h
+qt5/lib/cmake/Qt5WebKit/Qt5WebKitConfig.cmake
+qt5/lib/cmake/Qt5WebKit/Qt5WebKitConfigVersion.cmake
+qt5/lib/cmake/Qt5WebKit/WebKitTargets-release.cmake
+qt5/lib/cmake/Qt5WebKit/WebKitTargets.cmake
+qt5/lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsConfig.cmake
+qt5/lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsConfigVersion.cmake
+qt5/lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsTargets-release.cmake
+qt5/lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsTargets.cmake
+qt5/lib/libANGLESupport.a
+qt5/lib/libJavaScriptCore.so
+qt5/lib/libJavaScriptCore.so.5
+qt5/lib/libJavaScriptCore.so.5.212.0
+qt5/lib/libQt5WebKit.so
+qt5/lib/libQt5WebKit.so.5
+qt5/lib/libQt5WebKit.so.5.212.0
+qt5/lib/libQt5WebKitWidgets.so
+qt5/lib/libQt5WebKitWidgets.so.5
+qt5/lib/libQt5WebKitWidgets.so.5.212.0
+qt5/lib/libWTF.so
+qt5/lib/libWebCore.so
+qt5/lib/libWebCore.so.5
+qt5/lib/libWebCore.so.5.212.0
+qt5/lib/libWebKit2.so
+qt5/lib/libWebKit2.so.5
+qt5/lib/libWebKit2.so.5.212.0
+qt5/lib/pkgconfig/Qt5WebKit.pc
+qt5/lib/pkgconfig/Qt5WebKitWidgets.pc
+qt5/libexec/QtWebNetworkProcess
+${PLIST.npapi}qt5/libexec/QtWebPluginProcess
+qt5/libexec/QtWebProcess
+qt5/libexec/QtWebStorageProcess
+qt5/mkspecs/modules/qt_lib_webkit.pri
+qt5/mkspecs/modules/qt_lib_webkit_private.pri
+qt5/mkspecs/modules/qt_lib_webkitwidgets.pri
+qt5/mkspecs/modules/qt_lib_webkitwidgets_private.pri
+qt5/qml/QtWebKit/experimental/libqmlwebkitexperimentalplugin.so
+qt5/qml/QtWebKit/experimental/qmldir
+qt5/qml/QtWebKit/libqmlwebkitplugin.so
+qt5/qml/QtWebKit/plugins.qmltypes
+qt5/qml/QtWebKit/qmldir
Index: pkgsrc/x11/qt5-qtwebkit/buildlink3.mk
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/buildlink3.mk:1.69
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/buildlink3.mk Fri Jan 24 11:54:37 2025
@@ -0,0 +1,31 @@
+# $NetBSD: buildlink3.mk,v 1.69 2025/01/24 11:54:37 wiz Exp $
+
+BUILDLINK_TREE+= qt5-qtwebkit
+
+.if !defined(QT5_QTWEBKIT_BUILDLINK3_MK)
+QT5_QTWEBKIT_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.qt5-qtwebkit+= qt5-qtwebkit>=5.8.0
+BUILDLINK_ABI_DEPENDS.qt5-qtwebkit+= qt5-qtwebkit>=5.212.0.alpha4nb29
+BUILDLINK_PKGSRCDIR.qt5-qtwebkit?= ../../x11/qt5-qtwebkit
+
+BUILDLINK_INCDIRS.qt5-qtwebkit+= qt5/include
+BUILDLINK_LIBDIRS.qt5-qtwebkit+= qt5/lib
+BUILDLINK_LIBDIRS.qt5-qtwebkit+= qt5/plugins
+
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../graphics/libwebp/buildlink3.mk"
+.include "../../mk/curses.buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.if ${OPSYS} != "Darwin"
+.include "../../multimedia/gst-plugins1-bad/buildlink3.mk"
+.include "../../x11/libXcomposite/buildlink3.mk"
+.endif
+.include "../../x11/qt5-qtdeclarative/buildlink3.mk"
+.include "../../x11/qt5-qtlocation/buildlink3.mk"
+.include "../../x11/qt5-qtmultimedia/buildlink3.mk"
+.include "../../x11/qt5-qtsensors/buildlink3.mk"
+.include "../../x11/qt5-qtwebchannel/buildlink3.mk"
+.endif # QT5_QTWEBKIT_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -qt5-qtwebkit
Index: pkgsrc/x11/qt5-qtwebkit/distinfo
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/distinfo:1.36
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/distinfo Fri Jan 24 11:54:37 2025
@@ -0,0 +1,43 @@
+$NetBSD: distinfo,v 1.36 2025/01/24 11:54:37 wiz Exp $
+
+BLAKE2s (qtwebkit-5.212.0-alpha4.tar.xz) = 20858db08c7d297037d3ced34e441d4b657325c406b475e4e76dd367dc9c500c
+SHA512 (qtwebkit-5.212.0-alpha4.tar.xz) = 33f11270bd030599beff9c1983a6c5ff2d61f407cc8a6825f7f405d46f9184c720fc7f60c7359f08f828db96a2170092875066a0d5c0a21ff09bc48a2603fbf6
+Size (qtwebkit-5.212.0-alpha4.tar.xz) = 12528508 bytes
+SHA1 (patch-CMakeLists.txt) = 6b0d295ed4ec40c6364b0a86c94d19966977f7d7
+SHA1 (patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h) = be77c4b19f5f97c12180c1b7d3b72968364f3229
+SHA1 (patch-Source_JavaScriptCore_assembler_ARM64Assembler.h) = d57347e73081761c06f13564f5d2db496f91cdf3
+SHA1 (patch-Source_JavaScriptCore_assembler_ARMAssembler.h) = 7bbb0a59a0c087abaaddda08fc31aa24809acb70
+SHA1 (patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp) = d3ed3a25085752598dc04582eb80636c9cc6eaa9
+SHA1 (patch-Source_JavaScriptCore_dfg_DFGNode.h) = a3eba122c7226a80dacf1b762747fe0a7408b849
+SHA1 (patch-Source_JavaScriptCore_generate-bytecode-files) = b58ca94781fcf7b9f6a3eba715af2784e7a0acc0
+SHA1 (patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp) = 2b7dba0d0e87ed96c4d7de6ddb5833209cfe51b5
+SHA1 (patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp) = f0ca56e4b4060c0a8d756289d7c25d1ead6b07be
+SHA1 (patch-Source_JavaScriptCore_jsc.cpp) = 796ce0232f1a833757b2e7ca5c910fac75f783ad
+SHA1 (patch-Source_JavaScriptCore_tools_CodeProfiling.cpp) = 94c139413eecb875bba98c7749bba24cfcc16632
+SHA1 (patch-Source_Qt5WebKitConfig.cmake.in) = c8573e02a10064e709bea4dfe053d58d08d048a0
+SHA1 (patch-Source_ThirdParty_ANGLE_src_common_mathutil.h) = 4f7c36cf3770d35650666f9820240f88f25fe843
+SHA1 (patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h) = 1e4b8cffbd7ec0a6130a0ec2112023bed5c0b78e
+SHA1 (patch-Source_WTF_wtf_Assertions.cpp) = 15b8ac40e49cfec78d46de634fd6a1edde2d2a96
+SHA1 (patch-Source_WTF_wtf_InlineASM.h) = 7ffc086a21f645112ad10296571464a1e15b8b44
+SHA1 (patch-Source_WTF_wtf_MathExtras.h) = 7dac41bf3e50944e49c3e3c29d482d2c3300665d
+SHA1 (patch-Source_WTF_wtf_Platform.h) = b1efac1a3c326033eb52b1eed456f84265b172f8
+SHA1 (patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp) = bfa570aa20e3508c77bbaebed051821a33f36209
+SHA1 (patch-Source_WebCore_css_makegrammar.pl) = 2f1977c925069243d76379ae6d065e850143b2e3
+SHA1 (patch-Source_WebCore_page_NavigatorBase.cpp) = e8972f4b703a9ff45ce313609d2540f89064b4ff
+SHA1 (patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp) = 31e52cdd88ccb60a2d84adec3f0d2c042fbad161
+SHA1 (patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp) = 7bd24adde2cc0e1cbad2143fc83699d659d61045
+SHA1 (patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp) = ec7c7533c2d5a4258170745bfc49655848d0780c
+SHA1 (patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h) = d1d986afd5525143fc786a959240a72167f03352
+SHA1 (patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h) = 838acb2d7ecf41e5f6989d98459d103f4268cdcf
+SHA1 (patch-Source_WebCore_platform_text_TextCodecICU.cpp) = 4b3418cedac05d7f4b2fad4df09df2c7b4b46b3f
+SHA1 (patch-Source_WebCore_platform_text_icu_UTextProvider.h) = fb0885eb9db3001ddd8df90059cdb47dbfd79fe3
+SHA1 (patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp) = 29b414e1ae18a0786f31d80143f665d6d68bcbe3
+SHA1 (patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp) = b175e1973a2019d746fda174dfc5708a3ca57d9b
+SHA1 (patch-Source_WebCore_xml_XSLTProcessor.h) = 57f9d38a3ccab03c6dbc1c20d2cef4b598af36dc
+SHA1 (patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp) = ce3e86db666bdcca94c1bea3ffff0bb7d1f9c75e
+SHA1 (patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp) = d18013d0e07d7ad7e9d84cb6ef2d418d9bba4c7e
+SHA1 (patch-Source_WebKit_qt_declarative_CMakeLists.txt) = bda5cb2751027aab161ae54f46b8f9103532fb13
+SHA1 (patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt) = b95ac623f36018e3f2cc55a2988e97ef3f713159
+SHA1 (patch-Source_cmake_OptionsCommon.cmake) = 8fb8d11c4aab36e913a560ac48acce930f074635
+SHA1 (patch-Source_cmake_OptionsQt.cmake) = 35cc2b9904897cd2f1d540b473ce2905d95a0143
+SHA1 (patch-Source_cmake_WebKitMacros.cmake) = 5498b5cccf392f5d3bc370b00a72b2aa5389492d
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-CMakeLists.txt
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-CMakeLists.txt:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-CMakeLists.txt Fri Jan 24 11:54:37 2025
@@ -0,0 +1,33 @@
+$NetBSD: patch-CMakeLists.txt,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+Recognize "powerpc" as a valid variant of "ppc" so configure
+works on NetBSD/macppc, and "earm*" so it works on NetBSD/arm.
+
+Maybe this should be normalized in CMake...
+
+--- CMakeLists.txt.orig 2020-03-04 17:16:37.000000000 +0000
++++ CMakeLists.txt
+@@ -57,7 +57,7 @@ if (MSVC_CXX_ARCHITECTURE_ID)
+ else ()
+ string(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} LOWERCASE_CMAKE_SYSTEM_PROCESSOR)
+ endif ()
+-if (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")
++if (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|earm)")
+ set(WTF_CPU_ARM 1)
+ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
+ set(WTF_CPU_ARM64 1)
+@@ -71,11 +71,11 @@ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR
+ set(WTF_CPU_X86_64 1)
+ 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 "(ppc|powerpc)64")
+ set(WTF_CPU_PPC64 1)
+-elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
++elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(ppc|powerpc)64le")
+ set(WTF_CPU_PPC64LE 1)
+ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "parisc*")
+ set(WTF_CPU_HPPA 1)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,28 @@
+$NetBSD: patch-Source_JavaScriptCore_assembler_ARM64Assembler.h,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+Find a valid clear cache for Darwin/arm64 and NetBSD/arm64.
+
+--- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/JavaScriptCore/assembler/ARM64Assembler.h
+@@ -34,6 +34,9 @@
+ #include <wtf/Assertions.h>
+ #include <wtf/Vector.h>
+ #include <stdint.h>
++#if OS(IOS) || OS(MAC_OS_X)
++#include <libkern/OSCacheControl.h>
++#endif
+
+ #define CHECK_DATASIZE_OF(datasize) ASSERT(datasize == 32 || datasize == 64)
+ #define DATASIZE_OF(datasize) ((datasize == 64) ? Datasize_64 : Datasize_32)
+@@ -2664,8 +2667,10 @@ public:
+
+ static void cacheFlush(void* code, size_t size)
+ {
+-#if OS(IOS)
++#if OS(IOS) || OS(MAC_OS_X)
+ sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
++#elif OS(NETBSD)
++ __builtin___clear_cache(code, reinterpret_cast<char*>(code) + size);
+ #elif OS(LINUX)
+ size_t page = pageSize();
+ uintptr_t current = reinterpret_cast<uintptr_t>(code);
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,29 @@
+$NetBSD: patch-Source_JavaScriptCore_assembler_ARMAssembler.h,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/JavaScriptCore/assembler/ARMAssembler.h.orig 2017-06-04 20:16:05.000000000 +0000
++++ Source/JavaScriptCore/assembler/ARMAssembler.h
+@@ -27,6 +27,10 @@
+ #ifndef ARMAssembler_h
+ #define ARMAssembler_h
+
++#if OS(NETBSD)
++#include <machine/sysarch.h>
++#endif
++
+ #if ENABLE(ASSEMBLER) && CPU(ARM_TRADITIONAL)
+
+ #include "AssemblerBufferWithConstantPool.h"
+@@ -1128,6 +1132,11 @@ namespace JSC {
+ linuxPageFlush(current, current + page);
+
+ linuxPageFlush(current, end);
++#elif OS(NETBSD)
++ struct arm_sync_icache_args args;
++ args.addr = reinterpret_cast<uintptr_t>(code);
++ args.len = size;
++ sysarch(ARM_SYNC_ICACHE, &args);
+ #else
+ #error "The cacheFlush support is missing on this platform."
+ #endif
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_dfg_DFGNode.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_dfg_DFGNode.h:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_dfg_DFGNode.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_JavaScriptCore_dfg_DFGNode.h,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/JavaScriptCore/dfg/DFGNode.h.orig 2017-06-04 20:16:05.000000000 +0000
++++ Source/JavaScriptCore/dfg/DFGNode.h
+@@ -226,7 +226,7 @@ struct OpInfo {
+ OpInfo() : m_value(0) { }
+ explicit OpInfo(int32_t value) : m_value(static_cast<uintptr_t>(value)) { }
+ explicit OpInfo(uint32_t value) : m_value(static_cast<uintptr_t>(value)) { }
+-#if OS(DARWIN) || USE(JSVALUE64)
++#if OS(DARWIN) || (CPU(ARM) && OS(NETBSD)) || USE(JSVALUE64)
+ explicit OpInfo(size_t value) : m_value(static_cast<uintptr_t>(value)) { }
+ #endif
+ explicit OpInfo(void* value) : m_value(reinterpret_cast<uintptr_t>(value)) { }
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_Qt5WebKitConfig.cmake.in
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_Qt5WebKitConfig.cmake.in:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_Qt5WebKitConfig.cmake.in Fri Jan 24 11:54:37 2025
@@ -0,0 +1,18 @@
+$NetBSD: patch-Source_Qt5WebKitConfig.cmake.in,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+Fix build of packages such as kdewebkit with cmake>=3.23
+
+--- Source/Qt5WebKitConfig.cmake.in.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/Qt5WebKitConfig.cmake.in
+@@ -4,6 +4,11 @@
+ find_dependency_with_major_and_minor(Qt5Core @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
+ find_dependency_with_major_and_minor(Qt5Gui @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
+ find_dependency_with_major_and_minor(Qt5Network @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
++find_dependency_with_major_and_minor(Qt5Multimedia @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
++find_dependency_with_major_and_minor(Qt5Sensors @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
++find_dependency_with_major_and_minor(Qt5Positioning @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
++find_dependency_with_major_and_minor(Qt5Quick @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
++find_dependency_with_major_and_minor(Qt5WebChannel @Qt5_VERSION_MAJOR@ @Qt5_VERSION_MINOR@)
+
+ include("${CMAKE_CURRENT_LIST_DIR}/WebKitTargets.cmake")
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Assertions.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Assertions.cpp:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Assertions.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,33 @@
+$NetBSD: patch-Source_WTF_wtf_Assertions.cpp,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/WTF/wtf/Assertions.cpp.orig 2017-06-04 20:16:06.000000000 +0000
++++ Source/WTF/wtf/Assertions.cpp
+@@ -68,7 +68,7 @@
+ #include <unistd.h>
+ #endif
+
+-#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__))
++#if OS(DARWIN) || OS(NETBSD) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__))
+ #include <cxxabi.h>
+ #include <dlfcn.h>
+ #include <execinfo.h>
+@@ -225,7 +225,7 @@ void WTFReportArgumentAssertionFailure(c
+
+ void WTFGetBacktrace(void** stack, int* size)
+ {
+-#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__))
++#if OS(DARWIN) || OS(NETBSD) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__))
+ *size = backtrace(stack, *size);
+ #elif OS(WINDOWS)
+ // The CaptureStackBackTrace function is available in XP, but it is not defined
+@@ -259,7 +259,7 @@ void WTFReportBacktrace()
+ WTFPrintBacktrace(samples + framesToSkip, frames - framesToSkip);
+ }
+
+-#if OS(DARWIN) || OS(LINUX)
++#if OS(DARWIN) || OS(LINUX) || OS(NETBSD)
+ # if PLATFORM(QT) || PLATFORM(GTK)
+ # if defined(__GLIBC__) && !defined(__UCLIBC__)
+ # define USE_BACKTRACE_SYMBOLS 1
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_InlineASM.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_InlineASM.h:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_InlineASM.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-Source_WTF_wtf_InlineASM.h,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+* Add Solaris/SunOS support
+
+--- Source/WTF/wtf/InlineASM.h.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WTF/wtf/InlineASM.h
+@@ -40,7 +40,7 @@
+ #define THUMB_FUNC_PARAM(name)
+ #endif
+
+-#if (OS(LINUX) || OS(FREEBSD)) && CPU(X86_64)
++#if (OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(SOLARIS)) && CPU(X86_64) || (OS(SOLARIS) && CPU(X86))
+ #define GLOBAL_REFERENCE(name) #name "@plt"
+ #elif CPU(X86) && COMPILER(MINGW)
+ #define GLOBAL_REFERENCE(name) "@" #name "@4"
+@@ -84,6 +84,7 @@
+ || OS(OPENBSD) \
+ || OS(HURD) \
+ || OS(NETBSD) \
++ || OS(SOLARIS) \
+ || COMPILER(MINGW)
+ // GNU as-compatible syntax.
+ #define LOCAL_LABEL_STRING(name) ".L" #name
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_MathExtras.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_MathExtras.h:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_MathExtras.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WTF_wtf_MathExtras.h,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+Fix SunOS build.
+
+--- Source/WTF/wtf/MathExtras.h.orig 2017-06-04 20:16:06.000000000 +0000
++++ Source/WTF/wtf/MathExtras.h
+@@ -75,7 +75,7 @@ const double sqrtOfTwoDouble = M_SQRT2;
+ const float sqrtOfTwoFloat = static_cast<float>(M_SQRT2);
+ #endif
+
+-#if OS(SOLARIS)
++#if OS(notSOLARIS)
+
+ namespace std {
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,19 @@
+$NetBSD: patch-Source_WTF_wtf_ThreadIdentifierDataPthreads.cpp,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp.orig 2017-06-04 20:16:06.000000000 +0000
++++ Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp
+@@ -39,6 +39,12 @@
+ #if OS(HURD)
+ // PTHREAD_KEYS_MAX is not defined in bionic nor in Hurd, so explicitly define it here.
+ #define PTHREAD_KEYS_MAX 1024
++#elif OS(NETBSD)
++#include <limits.h>
++// PTHREAD_KEYS_MAX is not defined in 5.x
++#ifndef PTHREAD_KEYS_MAX
++#define PTHREAD_KEYS_MAX 256
++#endif
+ #else
+ #include <limits.h>
+ #endif
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_NavigatorBase.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_NavigatorBase.cpp:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_NavigatorBase.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-Source_WebCore_page_NavigatorBase.cpp,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+* Treat *BSD like Linux
+
+--- Source/WebCore/page/NavigatorBase.cpp.orig 2017-06-04 20:16:06.000000000 +0000
++++ Source/WebCore/page/NavigatorBase.cpp
+@@ -31,7 +31,7 @@
+ #include <wtf/NeverDestroyed.h>
+ #include <wtf/text/WTFString.h>
+
+-#if OS(LINUX)
++#if OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(OPENBSD)
+ #include "sys/utsname.h"
+ #include <wtf/StdLibExtras.h>
+ #endif
+@@ -90,7 +90,7 @@ String NavigatorBase::appVersion() const
+
+ String NavigatorBase::platform() const
+ {
+-#if OS(LINUX)
++#if OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(OPENBSD)
+ if (!String(WEBCORE_NAVIGATOR_PLATFORM).isEmpty())
+ return WEBCORE_NAVIGATOR_PLATFORM;
+ struct utsname osname;
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp,v 1.4 2025/01/24 11:54:37 wiz Exp $
+
+Use unified syntax on ARM.
+
+--- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig 2014-12-05 16:24:49.000000000 +0000
++++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
+@@ -404,7 +404,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
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp Fri Jan 24 11:54:38 2025
@@ -0,0 +1,67 @@
+$NetBSD: patch-Source_WebKit2_Platform_unix_SharedMemoryUnix.cpp,v 1.4 2025/01/24 11:54:38 wiz Exp $
+
+* Try to use /tmp/* file like shared memory, I am not sure.
+
+--- Source/WebKit2/Platform/unix/SharedMemoryUnix.cpp.orig 2017-06-04 20:16:07.000000000 +0000
++++ Source/WebKit2/Platform/unix/SharedMemoryUnix.cpp
+@@ -96,14 +96,25 @@ void SharedMemory::Handle::adoptAttachme
+ RefPtr<SharedMemory> SharedMemory::allocate(size_t size)
+ {
+ CString tempName;
++ CString buf;
+
+ int fileDescriptor = -1;
+ for (int tries = 0; fileDescriptor == -1 && tries < 10; ++tries) {
+ String name = String("/WK2SharedMemory.") + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
+ tempName = name.utf8();
++ String bbuf = String("/tmp") + name;
++ buf = bbuf.utf8();
+
+ do {
++#if !defined(__NetBSD__)
+ fileDescriptor = shm_open(tempName.data(), O_CREAT | O_RDWR, S_IRUSR | S_IWUSR);
++#else
++ fileDescriptor = open(buf.data(), O_CREAT | O_CLOEXEC | O_RDWR, S_IRUSR | S_IWUSR);
++ if (fileDescriptor == -1 && errno == EEXIST) {
++ unlink(buf.data());
++ fileDescriptor = open(buf.data(), O_CREAT | O_CLOEXEC | O_RDWR, S_IRUSR | S_IWUSR);
++ }
++#endif
+ } while (fileDescriptor == -1 && errno == EINTR);
+ }
+ if (fileDescriptor == -1) {
+@@ -114,7 +125,12 @@ RefPtr<SharedMemory> SharedMemory::alloc
+ while (ftruncate(fileDescriptor, size) == -1) {
+ if (errno != EINTR) {
+ closeWithRetry(fileDescriptor);
++#if !defined(__NetBSD__)
+ shm_unlink(tempName.data());
++#else
++ close(fileDescriptor);
++ unlink(buf.data());
++#endif
+ return 0;
+ }
+ }
+@@ -122,11 +138,21 @@ RefPtr<SharedMemory> SharedMemory::alloc
+ void* data = mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fileDescriptor, 0);
+ if (data == MAP_FAILED) {
+ closeWithRetry(fileDescriptor);
++#if !defined(__NetBSD__)
+ shm_unlink(tempName.data());
++#else
++ close(fileDescriptor);
++ unlink(buf.data());
++#endif
+ return 0;
+ }
+
++#if !defined(__NetBSD__)
+ shm_unlink(tempName.data());
++#else
++ close(fileDescriptor);
++ unlink(buf.data());
++#endif
+
+ RefPtr<SharedMemory> instance = adoptRef(new SharedMemory());
+ instance->m_data = data;
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsQt.cmake
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsQt.cmake:1.4
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsQt.cmake Fri Jan 24 11:54:38 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_cmake_OptionsQt.cmake,v 1.4 2025/01/24 11:54:38 wiz Exp $
+
+ECM_MODULE_DIR wants a single directory, not a path
+
+--- Source/cmake/OptionsQt.cmake.orig 2019-06-26 16:25:02.000000000 +0000
++++ Source/cmake/OptionsQt.cmake
+@@ -3,7 +3,7 @@ include(FeatureSummary)
+ include(ECMEnableSanitizers)
+ include(ECMPackageConfigHelpers)
+
+-set(ECM_MODULE_DIR ${CMAKE_MODULE_PATH})
++set(ECM_MODULE_DIR "${CMAKE_SOURCE_DIR}/Source/cmake")
+
+ set(PROJECT_VERSION_MAJOR 5)
+ set(PROJECT_VERSION_MINOR 212)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,13 @@
+$NetBSD: patch-Source_JavaScriptCore_API_ObjCCallbackFunction.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+--- Source/JavaScriptCore/API/ObjCCallbackFunction.h.orig 2014-04-21 21:08:37.000000000 +0000
++++ Source/JavaScriptCore/API/ObjCCallbackFunction.h
+@@ -29,7 +29,7 @@
+
+ #if JSC_OBJC_API_ENABLED
+
+-#import <JavaScriptCore/JSCallbackFunction.h>
++#import <JavaScriptCore/API/JSCallbackFunction.h>
+
+ #if defined(__OBJC__)
+ JSObjectRef objCCallbackFunctionForMethod(JSContext *, Class, Protocol *, BOOL isInstanceMethod, SEL, const char* types);
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_generate-bytecode-files
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_generate-bytecode-files:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_generate-bytecode-files Fri Jan 24 11:54:37 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-Source_JavaScriptCore_generate-bytecode-files,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+python 3.9 breakage:
+https://github.com/qtwebkit/qtwebkit/issues/993
+https://github.com/qtwebkit/qtwebkit/commit/78360c01c796b6260bf828bc9c8a0ef73c5132fd
+
+--- Source/JavaScriptCore/generate-bytecode-files.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/JavaScriptCore/generate-bytecode-files
+@@ -163,7 +163,7 @@ if __name__ == "__main__":
+ initBytecodesFile = openOrExit(initASMFileName, "w")
+
+ try:
+- bytecodeSections = json.load(bytecodeFile, encoding = "utf-8")
++ bytecodeSections = json.load(bytecodeFile)
+ except:
+ print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info()))
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,33 @@
+$NetBSD: patch-Source_JavaScriptCore_jit_ThunkGenerators.cpp,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Treat netbsd as linux for JIT purposes.
+
+--- Source/JavaScriptCore/jit/ThunkGenerators.cpp.orig 2017-06-04 20:16:05.000000000 +0000
++++ Source/JavaScriptCore/jit/ThunkGenerators.cpp
+@@ -633,7 +633,7 @@ MacroAssemblerCodeRef sqrtThunkGenerator
+ enum MathThunkCallingConvention { };
+ typedef MathThunkCallingConvention(*MathThunk)(MathThunkCallingConvention);
+
+-#if CPU(X86_64) && COMPILER(GCC_OR_CLANG) && (OS(DARWIN) || OS(LINUX))
++#if CPU(X86_64) && COMPILER(GCC_OR_CLANG) && (OS(DARWIN) || OS(LINUX) || OS(NETBSD))
+
+ #define defineUnaryDoubleOpWrapper(function) \
+ asm( \
+@@ -651,7 +651,7 @@ typedef MathThunkCallingConvention(*Math
+ } \
+ static MathThunk UnaryDoubleOpWrapper(function) = &function##Thunk;
+
+-#elif CPU(X86) && COMPILER(GCC_OR_CLANG) && OS(LINUX) && defined(__PIC__)
++#elif CPU(X86) && COMPILER(GCC_OR_CLANG) && (OS(LINUX) || OS(NETBSD)) && defined(__PIC__)
+ #define defineUnaryDoubleOpWrapper(function) \
+ asm( \
+ ".text\n" \
+@@ -675,7 +675,7 @@ typedef MathThunkCallingConvention(*Math
+ } \
+ static MathThunk UnaryDoubleOpWrapper(function) = &function##Thunk;
+
+-#elif CPU(X86) && COMPILER(GCC_OR_CLANG) && (OS(DARWIN) || OS(LINUX))
++#elif CPU(X86) && COMPILER(GCC_OR_CLANG) && (OS(DARWIN) || OS(LINUX) || OS(NETBSD))
+ #define defineUnaryDoubleOpWrapper(function) \
+ asm( \
+ ".text\n" \
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jsc.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jsc.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_jsc.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_JavaScriptCore_jsc.cpp,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Remove ambiguity on Darwin.
+
+--- Source/JavaScriptCore/jsc.cpp.orig 2022-12-30 08:36:58.000000000 +0000
++++ Source/JavaScriptCore/jsc.cpp
+@@ -189,7 +189,7 @@ private:
+
+ class ElementHandleOwner : public WeakHandleOwner {
+ public:
+- bool isReachableFromOpaqueRoots(Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) override
++ bool isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) override
+ {
+ Element* element = jsCast<Element*>(handle.slot()->asCell());
+ return visitor.containsOpaqueRoot(element->root());
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_ANGLE_src_common_mathutil.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_ANGLE_src_common_mathutil.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_ANGLE_src_common_mathutil.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_ThirdParty_ANGLE_src_common_mathutil.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+error: 'uint32_t' does not name a type
+ 575 | inline uint32_t RotL(uint32_t x, int8_t r)
+
+--- Source/ThirdParty/ANGLE/src/common/mathutil.h.orig 2024-08-17 11:56:20.701400148 +0000
++++ Source/ThirdParty/ANGLE/src/common/mathutil.h
+@@ -16,6 +16,7 @@
+ #include <algorithm>
+ #include <string.h>
+ #include <stdlib.h>
++#include <cstdint>
+
+ namespace gl
+ {
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,28 @@
+$NetBSD: patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+--- Source/ThirdParty/gtest/include/gtest/internal/gtest-port.h.orig 2013-11-27 01:01:50.000000000 +0000
++++ Source/ThirdParty/gtest/include/gtest/internal/gtest-port.h
+@@ -173,6 +173,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
++#include <unistd.h>
+ #ifndef _WIN32_WCE
+ #include <sys/stat.h>
+ #endif // !_WIN32_WCE
+@@ -441,7 +442,14 @@
+ // GCC 4.0+ implements tr1/tuple in the <tr1/tuple> header. This does
+ // not conform to the TR1 spec, which requires the header to be <tuple>.
+
+-#if !GTEST_HAS_RTTI && GTEST_GCC_VER_ < 40302
++#if defined(_LIBCPP_VERSION)
++#include <tuple>
++namespace std {
++ namespace tr1 {
++ using ::std::tuple;
++ }
++}
++#elif !GTEST_HAS_RTTI && GTEST_GCC_VER_ < 40302
+ // Until version 4.3.2, gcc has a bug that causes <tr1/functional>,
+ // which is #included by <tr1/tuple>, to not compile when RTTI is
+ // disabled. _TR1_FUNCTIONAL is the header guard for
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_css_makegrammar.pl
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_css_makegrammar.pl:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_css_makegrammar.pl Fri Jan 24 11:54:37 2025
@@ -0,0 +1,41 @@
+$NetBSD: patch-Source_WebCore_css_makegrammar.pl,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+let Bison generate the header directly
+
+Starting with Bison 3.7, the generated C++ file #include's the header
+by default, instead of duplicating it. So we should not delete it.
+
+Remove the code to add #ifdef guards to the header, since Bison adds
+them itself since version 2.6.3.
+
+Author: Dmitry Shachnev <mitya57%debian.org@localhost>
+
+--- Source/WebCore/css/makegrammar.pl.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/css/makegrammar.pl
+@@ -73,25 +73,6 @@ if ($suffix eq ".y.in") {
+ }
+
+ my $fileBase = File::Spec->join($outputDir, $filename);
+-my @bisonCommand = ($bison, "-d", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
++my @bisonCommand = ($bison, "--defines=$fileBase.h", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
+ push @bisonCommand, "--no-lines" if $^O eq "MSWin32"; # Work around bug in bison >= 3.0 on Windows where it puts backslashes into #line directives.
+ system(@bisonCommand) == 0 or die;
+-
+-open HEADER, ">$fileBase.h" or die;
+-print HEADER << "EOF";
+-#ifndef CSSGRAMMAR_H
+-#define CSSGRAMMAR_H
+-EOF
+-
+-open HPP, "<$fileBase.cpp.h" or open HPP, "<$fileBase.hpp" or die;
+-while (<HPP>) {
+- print HEADER;
+-}
+-close HPP;
+-
+-print HEADER "#endif\n";
+-close HEADER;
+-
+-unlink("$fileBase.cpp.h");
+-unlink("$fileBase.hpp");
+-
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,26 @@
+$NetBSD: patch-Source_WebCore_page_csp_ContentSecurityPolicy.cpp,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Work around GCC 14 issue:
+
+/usr/include/c++/14/bits/stl_pair.h:922:38: required from 'struct std::pair<WebCore::ContentSecurityPolicyHashAlgorithm, WTF::Vector<unsigned char> >'
+ 922 | is_copy_assignable<_T2>>::value,
+ | ^~~~~
+/tnn/pkgsrc-obj/x11/qt5-qtwebkit/work/qtwebkit-5.212.0-alpha4/Source/WebCore/page/csp/ContentSecurityPolicy.cpp:235:56: required from here
+ 235 | if ((policy.get()->*allowed)(std::make_pair(algorithm, digest)))
+ | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/14/type_traits:1237:52: error: non-constant condition for static assertion
+ 1237 | static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
+
+--- Source/WebCore/page/csp/ContentSecurityPolicy.cpp.orig 2024-08-17 11:46:46.999690372 +0000
++++ Source/WebCore/page/csp/ContentSecurityPolicy.cpp
+@@ -231,8 +231,9 @@ bool isAllowedByAllWithHashFromContent(c
+ auto cryptoDigest = CryptoDigest::create(toCryptoDigestAlgorithm(algorithm));
+ cryptoDigest->addBytes(contentCString.data(), contentCString.length());
+ Vector<uint8_t> digest = cryptoDigest->computeHash();
++ auto p = std::make_pair(algorithm, digest);
+ for (auto& policy : policies) {
+- if ((policy.get()->*allowed)(std::make_pair(algorithm, digest)))
++ if ((policy.get()->*allowed)(p))
+ return true;
+ }
+ }
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,16 @@
+$NetBSD: patch-Source_WebCore_platform_audio_gstreamer_AudioFileReaderGStreamer.cpp,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Fix build issue with latest gstreamer
+error: braces around scalar initializer
+
+--- Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp
+@@ -230,7 +230,7 @@ void AudioFileReader::handleNewDeinterle
+ [](GstAppSink* sink, gpointer userData) -> GstFlowReturn {
+ return static_cast<AudioFileReader*>(userData)->handleSample(sink);
+ },
+- { nullptr }
++ nullptr
+ };
+ gst_app_sink_set_callbacks(GST_APP_SINK(sink), &callbacks, this, 0);
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurface.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+* Treat *BSD like Linux
+
+--- Source/WebCore/platform/graphics/surfaces/GraphicsSurface.h.orig 2013-11-27 01:01:44.000000000 +0000
++++ Source/WebCore/platform/graphics/surfaces/GraphicsSurface.h
+@@ -36,7 +36,7 @@ typedef struct __IOSurface* IOSurfaceRef
+ typedef IOSurfaceRef PlatformGraphicsSurface;
+ #endif
+
+-#if OS(LINUX)
++#if OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(OPENBSD)
+ typedef uint32_t PlatformGraphicsSurface;
+ #endif
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_platform_graphics_surfaces_GraphicsSurfaceToken.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+* Treat *BSD like Linux
+
+--- Source/WebCore/platform/graphics/surfaces/GraphicsSurfaceToken.h.orig 2013-11-27 01:01:44.000000000 +0000
++++ Source/WebCore/platform/graphics/surfaces/GraphicsSurfaceToken.h
+@@ -35,7 +35,7 @@ struct GraphicsSurfaceToken {
+
+ #if OS(DARWIN)
+ typedef mach_port_t BufferHandle;
+-#elif OS(LINUX)
++#elif OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(OPENBSD)
+ typedef uint32_t BufferHandle;
+ #elif OS(WINDOWS)
+ typedef HANDLE BufferHandle;
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_TextCodecICU.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_TextCodecICU.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_TextCodecICU.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_platform_text_TextCodecICU.cpp,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Compatibility with icu-68.
+
+--- Source/WebCore/platform/text/TextCodecICU.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/platform/text/TextCodecICU.cpp
+@@ -308,7 +308,7 @@ void TextCodecICU::createICUConverter()
+ m_converterICU = ucnv_open(m_canonicalConverterName, &err);
+ ASSERT(U_SUCCESS(err));
+ if (m_converterICU)
+- ucnv_setFallback(m_converterICU, TRUE);
++ ucnv_setFallback(m_converterICU, true);
+ }
+
+ int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& err)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProvider.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProvider.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProvider.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,36 @@
+$NetBSD: patch-Source_WebCore_platform_text_icu_UTextProvider.h,v 1.3 2025/01/24 11:54:37 wiz Exp $
+
+Compatibility with icu-68.
+
+--- Source/WebCore/platform/text/icu/UTextProvider.h.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/platform/text/icu/UTextProvider.h
+@@ -80,12 +80,12 @@ inline bool uTextAccessInChunkOrOutOfRan
+ // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
+ ASSERT(offset < std::numeric_limits<int32_t>::max());
+ text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
+- isAccessible = TRUE;
++ isAccessible = true;
+ return true;
+ }
+ if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) {
+ text->chunkOffset = text->chunkLength;
+- isAccessible = FALSE;
++ isAccessible = false;
+ return true;
+ }
+ } else {
+@@ -94,12 +94,12 @@ inline bool uTextAccessInChunkOrOutOfRan
+ // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
+ ASSERT(offset < std::numeric_limits<int32_t>::max());
+ text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
+- isAccessible = TRUE;
++ isAccessible = true;
+ return true;
+ }
+ if (nativeIndex <= 0 && !text->chunkNativeStart) {
+ text->chunkOffset = 0;
+- isAccessible = FALSE;
++ isAccessible = false;
+ return true;
+ }
+ }
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp Fri Jan 24 11:54:38 2025
@@ -0,0 +1,61 @@
+$NetBSD: patch-Source_WebCore_platform_text_icu_UTextProviderLatin1.cpp,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Compatibility with icu-68.
+
+--- Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp
+@@ -100,23 +100,23 @@ static UBool uTextLatin1Access(UText* uT
+ if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) {
+ // Already inside the buffer. Set the new offset.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return TRUE;
++ return true;
+ }
+ if (index >= length && uText->chunkNativeLimit == length) {
+ // Off the end of the buffer, but we can't get it.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return FALSE;
++ return false;
+ }
+ } else {
+ if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) {
+ // Already inside the buffer. Set the new offset.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return TRUE;
++ return true;
+ }
+ if (!index && !uText->chunkNativeStart) {
+ // Already at the beginning; can't go any farther.
+ uText->chunkOffset = 0;
+- return FALSE;
++ return false;
+ }
+ }
+
+@@ -144,7 +144,7 @@ static UBool uTextLatin1Access(UText* uT
+
+ uText->nativeIndexingLimit = uText->chunkLength;
+
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status)
+@@ -336,7 +336,7 @@ static int64_t uTextLatin1ContextAwareNa
+ static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
+ {
+ if (!text->context)
+- return FALSE;
++ return false;
+ int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text);
+ UBool isAccessible;
+ if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
+@@ -356,7 +356,7 @@ static UBool uTextLatin1ContextAwareAcce
+ ASSERT(newContext == UTextProviderContext::PriorContext);
+ textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
+ }
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp Fri Jan 24 11:54:38 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-Source_WebCore_platform_text_icu_UTextProviderUTF16.cpp,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Compatibility with icu-68.
+
+--- Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp
+@@ -125,7 +125,7 @@ static inline int64_t uTextUTF16ContextA
+ static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
+ {
+ if (!text->context)
+- return FALSE;
++ return false;
+ int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text);
+ UBool isAccessible;
+ if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
+@@ -145,7 +145,7 @@ static UBool uTextUTF16ContextAwareAcces
+ ASSERT(newContext == UTextProviderContext::PriorContext);
+ textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
+ }
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessor.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessor.h:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessor.h Fri Jan 24 11:54:38 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_xml_XSLTProcessor.h,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Fix build with libxml2 2.12.
+
+--- Source/WebCore/xml/XSLTProcessor.h.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/xml/XSLTProcessor.h
+@@ -64,7 +64,7 @@ public:
+
+ void reset();
+
+- static void parseErrorFunc(void* userData, xmlError*);
++ static void parseErrorFunc(void* userData, const xmlError*);
+ static void genericErrorFunc(void* userData, const char* msg, ...);
+
+ // Only for libXSLT callbacks
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp Fri Jan 24 11:54:38 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_xml_XSLTProcessorLibxslt.cpp,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Fix build with libxml2 2.12.
+
+--- Source/WebCore/xml/XSLTProcessorLibxslt.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/WebCore/xml/XSLTProcessorLibxslt.cpp
+@@ -78,7 +78,7 @@ void XSLTProcessor::genericErrorFunc(voi
+ // It would be nice to do something with this error message.
+ }
+
+-void XSLTProcessor::parseErrorFunc(void* userData, xmlError* error)
++void XSLTProcessor::parseErrorFunc(void* userData, const xmlError* error)
+ {
+ PageConsoleClient* console = static_cast<PageConsoleClient*>(userData);
+ if (!console)
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_CMakeLists.txt
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_CMakeLists.txt:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_CMakeLists.txt Fri Jan 24 11:54:38 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebKit_qt_declarative_CMakeLists.txt,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Link against WebKit2 library.
+
+--- Source/WebKit/qt/declarative/CMakeLists.txt.orig 2022-12-30 10:44:44.000000000 +0000
++++ Source/WebKit/qt/declarative/CMakeLists.txt
+@@ -23,7 +23,7 @@ include_directories(SYSTEM
+
+ add_library(qmlwebkitplugin MODULE plugin.cpp)
+ target_link_libraries(qmlwebkitplugin
+- WebKit Qt5::Quick)
++ WebKit2 Qt5::Quick)
+
+ set(qmlwebkit_output_dir "${CMAKE_BINARY_DIR}/imports/QtWebKit")
+ set(qmlwebkit_install_dir "${QML_INSTALL_DIR}/QtWebKit")
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt Fri Jan 24 11:54:38 2025
@@ -0,0 +1,14 @@
+$NetBSD: patch-Source_WebKit_qt_declarative_experimental_CMakeLists.txt,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Link aganst WebKit2 library.
+
+--- Source/WebKit/qt/declarative/experimental/CMakeLists.txt.orig 2022-12-30 10:46:13.000000000 +0000
++++ Source/WebKit/qt/declarative/experimental/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ add_library(qmlwebkitexperimentalplugin MODULE plugin.cpp)
+ target_link_libraries(qmlwebkitexperimentalplugin
+- WebKit Qt5::Quick)
++ WebKit2 Qt5::Quick)
+
+ set(qmlwebkitexperimental_output_dir "${CMAKE_BINARY_DIR}/imports/QtWebKit/experimental")
+ set(qmlwebkitexperimental_install_dir "${QML_INSTALL_DIR}/QtWebKit/experimental")
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsCommon.cmake
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsCommon.cmake:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_OptionsCommon.cmake Fri Jan 24 11:54:38 2025
@@ -0,0 +1,21 @@
+$NetBSD: patch-Source_cmake_OptionsCommon.cmake,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Make ar(1) flags compatible with SunOS
+
+--- Source/cmake/OptionsCommon.cmake.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/cmake/OptionsCommon.cmake
+@@ -19,10 +19,10 @@ option(USE_THIN_ARCHIVES "Produce all st
+ if (USE_THIN_ARCHIVES)
+ execute_process(COMMAND ${CMAKE_AR} -V OUTPUT_VARIABLE AR_VERSION)
+ if ("${AR_VERSION}" MATCHES "^GNU ar")
+- set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
+- set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
+- set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
+- set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crs <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crs <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rs <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rs <TARGET> <LINK_FLAGS> <OBJECTS>")
+ endif ()
+ endif ()
+
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_WebKitMacros.cmake
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_WebKitMacros.cmake:1.3
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_cmake_WebKitMacros.cmake Fri Jan 24 11:54:38 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_cmake_WebKitMacros.cmake,v 1.3 2025/01/24 11:54:38 wiz Exp $
+
+Don't build frameworks on Darwin.
+
+--- Source/cmake/WebKitMacros.cmake.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/cmake/WebKitMacros.cmake
+@@ -285,7 +285,7 @@ macro(WEBKIT_FRAMEWORK _target)
+ add_custom_command(TARGET ${_target} POST_BUILD COMMAND ${${_target}_POST_BUILD_COMMAND} VERBATIM)
+ endif ()
+
+- if (APPLE AND NOT PORT STREQUAL "GTK" AND NOT ${${_target}_LIBRARY_TYPE} MATCHES STATIC)
++ if (FALSE AND NOT PORT STREQUAL "GTK" AND NOT ${${_target}_LIBRARY_TYPE} MATCHES STATIC)
+ set_target_properties(${_target} PROPERTIES FRAMEWORK TRUE)
+ if (${_target}_PUBLIC_HEADERS)
+ set_target_properties(${_target} PROPERTIES PUBLIC_HEADER "${${_target}_PUBLIC_HEADERS}")
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp:1.5
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,38 @@
+$NetBSD: patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp,v 1.5 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp
+@@ -42,6 +42,14 @@
+ #include <asm/hwcap.h>
+ #endif
+
++#if OS(NETBSD)
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <sys/sysctl.h>
++#include <fcntl.h>
++#include <unistd.h>
++#endif
++
+ namespace JSC {
+
+ static bool isVFPPresent()
+@@ -60,6 +68,16 @@ static bool isVFPPresent()
+ }
+ #endif // OS(LINUX)
+
++#if OS(NETBSD)
++ size_t len;
++ int flag;
++
++ len = sizeof(flag);
++ if (sysctlbyname("machdep.fpu_present", &flag, &len, NULL, 0) == 0) {
++ return flag == 1;
++ }
++#endif
++
+ #if (COMPILER(GCC_OR_CLANG) && defined(__VFP_FP__))
+ return true;
+ #else
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp:1.6
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,120 @@
+$NetBSD: patch-Source_JavaScriptCore_heap_MachineStackMarker.cpp,v 1.6 2025/01/24 11:54:37 wiz Exp $
+
+Support NetBSD on x86, arm, arm64 and mips.
+Support SunOS (Illumos-derived) on x86_64
+
+--- Source/JavaScriptCore/heap/MachineStackMarker.cpp.orig 2020-03-04 17:16:37.000000000 +0000
++++ Source/JavaScriptCore/heap/MachineStackMarker.cpp
+@@ -54,6 +54,7 @@
+
+ #if OS(SOLARIS)
+ #include <thread.h>
++#include <sys/regset.h>
+ #else
+ #include <pthread.h>
+ #endif
+@@ -483,7 +484,7 @@ size_t MachineThreads::Thread::getRegist
+ return sizeof(CONTEXT);
+ #elif USE(PTHREADS)
+ pthread_attr_init(®s.attribute);
+-#if HAVE(PTHREAD_NP_H) || OS(NETBSD)
++#if HAVE(PTHREAD_NP_H) || OS(NETBSD) || OS(SOLARIS) /* XXX this is OK for Illumos, but not Oracle */
+ #if !OS(OPENBSD)
+ // e.g. on FreeBSD 5.4, neundorf%kde.org@localhost
+ pthread_attr_get_np(platformThread, ®s.attribute);
+@@ -665,6 +666,31 @@ void* MachineThreads::Thread::Registers:
+ #error Unknown Architecture
+ #endif
+
++#elif OS(NETBSD)
++
++#if CPU(X86)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_EBP]);
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_RBP]);
++#elif CPU(ARM)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_FP]);
++#elif CPU(ARM64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_X29]);
++#elif CPU(MIPS)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_S8]);
++#else
++#error Unknown Architecture
++#endif
++
++#elif OS(SOLARIS)
++#if CPU(X86)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_EBP]);
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_RBP]);
++#else
++#error Unknown Architecture
++#endif
++
+ #elif defined(__GLIBC__)
+
+ // The following sequence depends on glibc's sys/ucontext.h.
+@@ -747,6 +773,31 @@ void* MachineThreads::Thread::Registers:
+ #error Unknown Architecture
+ #endif
+
++#elif OS(NETBSD)
++
++#if CPU(X86)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_EIP]);
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_RIP]);
++#elif CPU(ARM)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_PC]);
++#elif CPU(ARM64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_ELR]);
++#elif CPU(MIPS)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_EPC]);
++#else
++#error Unknown Architecture
++#endif
++
++#elif OS(SOLARIS)
++#if CPU(X86)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_EIP]);
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_RIP]);
++#else
++#error Unknown Architecture
++#endif
++
+ #elif defined(__GLIBC__)
+
+ // The following sequence depends on glibc's sys/ucontext.h.
+@@ -838,6 +889,31 @@ void* MachineThreads::Thread::Registers:
+ #error Unknown Architecture
+ #endif
+
++#elif OS(NETBSD)
++
++#if CPU(X86)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_ESI]);
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_R8]);
++#elif CPU(ARM)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_R8]);
++#elif CPU(ARM64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_R4]);
++#elif CPU(MIPS)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.__gregs[_REG_T4]);
++#else
++#error Unknown Architecture
++#endif
++
++#elif OS(SOLARIS)
++#if CPU(X86)
++#error fixme
++#elif CPU(X86_64)
++ return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_R8]);
++#else
++#error Unknown Architecture
++#endif
++
+ #elif defined(__GLIBC__)
+
+ // The following sequence depends on glibc's sys/ucontext.h.
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_tools_CodeProfiling.cpp
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_tools_CodeProfiling.cpp:1.6
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_JavaScriptCore_tools_CodeProfiling.cpp Fri Jan 24 11:54:37 2025
@@ -0,0 +1,47 @@
+$NetBSD: patch-Source_JavaScriptCore_tools_CodeProfiling.cpp,v 1.6 2025/01/24 11:54:37 wiz Exp $
+
+* Add NetBSD support
+
+--- Source/JavaScriptCore/tools/CodeProfiling.cpp.orig 2017-06-04 20:16:06.000000000 +0000
++++ Source/JavaScriptCore/tools/CodeProfiling.cpp
+@@ -33,7 +33,7 @@
+ #include <signal.h>
+ #endif
+
+-#if OS(LINUX) || OS(DARWIN)
++#if OS(LINUX) || OS(DARWIN) || OS(NETBSD)
+ #include <sys/time.h>
+ #endif
+
+@@ -48,7 +48,7 @@ WTF::MetaAllocatorTracker* CodeProfiling
+ #pragma clang diagnostic ignored "-Wmissing-noreturn"
+ #endif
+
+-#if (OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) && CPU(X86_64)) || (OS(LINUX) && CPU(X86))
++#if (OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) && CPU(X86_64)) || ((OS(LINUX) || OS(NETBSD)) && CPU(X86))
+ // Helper function to start & stop the timer.
+ // Presently we're using the wall-clock timer, since this seems to give the best results.
+ static void setProfileTimer(unsigned usec)
+@@ -80,6 +80,13 @@ static void profilingTimer(int, siginfo_
+ CodeProfiling::sample(reinterpret_cast<void*>(context.gregs[REG_EIP]),
+ reinterpret_cast<void**>(context.gregs[REG_EBP]));
+ }
++#elif OS(NETBSD) && CPU(X86)
++static void profilingTimer(int, siginfo_t*, void* uap)
++{
++ mcontext_t context = static_cast<ucontext_t*>(uap)->uc_mcontext;
++ CodeProfiling::sample(reinterpret_cast<void*>(context.__gregs[_REG_EIP]),
++ reinterpret_cast<void**>(context.__gregs[_REG_EBP]));
++}
+ #endif
+
+ // Callback triggered when the timer is fired.
+@@ -141,7 +148,7 @@ void CodeProfiling::begin(const SourceCo
+ if (alreadyProfiling)
+ return;
+
+-#if (OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) && CPU(X86_64)) || (OS(LINUX) && CPU(X86))
++#if (OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) && CPU(X86_64)) || ((OS(LINUX) || OS(NETBSD)) && CPU(X86))
+ // Regsiter a signal handler & itimer.
+ struct sigaction action;
+ action.sa_sigaction = reinterpret_cast<void (*)(int, siginfo_t *, void *)>(profilingTimer);
Index: pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Platform.h
diff -u /dev/null pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Platform.h:1.7
--- /dev/null Fri Jan 24 11:54:38 2025
+++ pkgsrc/x11/qt5-qtwebkit/patches/patch-Source_WTF_wtf_Platform.h Fri Jan 24 11:54:37 2025
@@ -0,0 +1,51 @@
+$NetBSD: patch-Source_WTF_wtf_Platform.h,v 1.7 2025/01/24 11:54:37 wiz Exp $
+
+* Use system's malloc for NetBSD, do not use fastmalloc from qt5,
+ fix segfault of qtwebkit consumers
+
+* Disable DISASSEMBLER on Linux. Unresolved symbols as not building
+ UDis86Disassembler.cpp for some reason.
+
+* Fix build with ICU 75.
+ From: https://github.com/qtwebkit/qtwebkit/commit/756e1c8f23dc2720471298281c421c0076d02df8.patch
+
+--- Source/WTF/wtf/Platform.h.orig 2024-06-02 11:06:38.219855486 +0000
++++ Source/WTF/wtf/Platform.h
+@@ -686,6 +686,12 @@
+ #define USE_SYSTEM_MALLOC 1
+ #endif
+
++/* Workaround an issue with fastMalloc on NetBSD */
++#if OS(NETBSD)
++#define USE_SYSTEM_MALLOC 1
++#define ENABLE_ASSEMBLER 1
++#endif
++
+ #define ENABLE_DEBUG_WITH_BREAKPOINT 0
+ #define ENABLE_SAMPLING_COUNTERS 0
+ #define ENABLE_SAMPLING_FLAGS 0
+@@ -741,6 +747,10 @@
+ #define USE_UDIS86 1
+ #endif
+
++#if OS(LINUX)
++#define ENABLE_DISASSEMBLER 0
++#endif
++
+ #if !defined(ENABLE_DISASSEMBLER) && USE(UDIS86)
+ #define ENABLE_DISASSEMBLER 1
+ #endif
+@@ -1125,6 +1135,13 @@
+ #define ENABLE_PLATFORM_FONT_LOOKUP 1
+ #endif
+
++/* FIXME: This does not belong in Platform.h and should instead be included in another mechanism (compiler option, prefix header, config.h, etc) */
++/* ICU configuration. Some of these match ICU defaults on some platforms, but we would like them consistently set everywhere we build WebKit. */
++#define U_SHOW_CPLUSPLUS_API 0
++#ifdef __cplusplus
++#define UCHAR_TYPE char16_t
++#endif
++
+ #if COMPILER(MSVC)
+ #undef __STDC_LIMIT_MACROS
+ #define __STDC_LIMIT_MACROS
Home |
Main Index |
Thread Index |
Old Index