pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
webkit-gtk: Import webkitgtk-2.20.5nb1 as wip/webkit-gtk
Module Name: pkgsrc-wip
Committed By: Leonardo Taccari <leot%NetBSD.org@localhost>
Pushed By: leot
Date: Tue Sep 25 22:33:38 2018 +0200
Changeset: 8fb7b800023c394196882187f92c59e052d97cec
Modified Files:
Makefile
Added Files:
webkit-gtk/DESCR
webkit-gtk/Makefile
webkit-gtk/PLIST
webkit-gtk/buildlink3.mk
webkit-gtk/distinfo
webkit-gtk/hacks.mk
webkit-gtk/options.mk
webkit-gtk/patches/patch-CMakeLists.txt
webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h
webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
webkit-gtk/patches/patch-Source_JavaScriptCore_heap_MarkedSpace.cpp
webkit-gtk/patches/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp
webkit-gtk/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h
webkit-gtk/patches/patch-Source_WTF_wtf_StackBounds.cpp
webkit-gtk/patches/patch-Source_WTF_wtf_ThreadSpecific.h
webkit-gtk/patches/patch-Source_WebCore_platform_FileSystem.cpp
webkit-gtk/patches/patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp
webkit-gtk/patches/patch-Source_WebCore_rendering_shapes_RasterShape.cpp
webkit-gtk/patches/patch-Source_WebKit_CMakeLists.txt
webkit-gtk/patches/patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp
webkit-gtk/patches/patch-Source_WebKit_PlatformGTK.cmake
webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp
webkit-gtk/patches/patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp
webkit-gtk/patches/patch-Source_bmalloc_bmalloc_VMAllocate.h
webkit-gtk/patches/patch-Source_cmake_OptionsCommon.cmake
webkit-gtk/patches/patch-aj
Log Message:
webkit-gtk: Import webkitgtk-2.20.5nb1 as wip/webkit-gtk
WebKit is an open source web browser engine. WebKit is also the name of
the Mac OS X system framework version of the engine that's used by
Safari, Dashboard, Mail, and many other OS X applications. WebKit's HTML
and JavaScript code began as a branch of the KHTML and KJS libraries
from KDE.
This is the GTK port of the engine.
This is the same version at the moment in www/webkit-gtk, it will
be soon updated to 2.22.2 and then further patch to add initial
JIT support for NetBSD will be committed.
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=8fb7b800023c394196882187f92c59e052d97cec
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
webkit-gtk/DESCR | 7 +
webkit-gtk/Makefile | 199 +++++++++++++++
webkit-gtk/PLIST | 266 +++++++++++++++++++++
webkit-gtk/buildlink3.mk | 40 ++++
webkit-gtk/distinfo | 25 ++
webkit-gtk/hacks.mk | 16 ++
webkit-gtk/options.mk | 73 ++++++
webkit-gtk/patches/patch-CMakeLists.txt | 32 +++
...-Source_JavaScriptCore_assembler_ARMAssembler.h | 28 +++
..._JavaScriptCore_assembler_MacroAssemblerARM.cpp | 30 +++
...atch-Source_JavaScriptCore_heap_MarkedSpace.cpp | 15 ++
...urce_JavaScriptCore_jit_ExecutableAllocator.cpp | 19 ++
...Party_gtest_include_gtest_internal_gtest-port.h | 36 +++
.../patches/patch-Source_WTF_wtf_StackBounds.cpp | 14 ++
.../patches/patch-Source_WTF_wtf_ThreadSpecific.h | 16 ++
.../patch-Source_WebCore_platform_FileSystem.cpp | 16 ++
...Core_platform_graphics_filters_FEMorphology.cpp | 15 ++
...Source_WebCore_rendering_shapes_RasterShape.cpp | 15 ++
.../patches/patch-Source_WebKit_CMakeLists.txt | 17 ++
...NetworkProcess_cache_NetworkCacheFileSystem.cpp | 52 ++++
.../patches/patch-Source_WebKit_PlatformGTK.cmake | 15 ++
...rce_WebKit_Platform_IPC_unix_ConnectionUnix.cpp | 24 ++
...classifier_ResourceLoadStatisticsClassifier.cpp | 15 ++
.../patch-Source_bmalloc_bmalloc_VMAllocate.h | 24 ++
.../patches/patch-Source_cmake_OptionsCommon.cmake | 21 ++
webkit-gtk/patches/patch-aj | 13 +
27 files changed, 1044 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 45a27397f4..ca025a3565 100644
--- a/Makefile
+++ b/Makefile
@@ -4695,6 +4695,7 @@ SUBDIR+= wbox
SUBDIR+= weatherman
SUBDIR+= webbrowser
SUBDIR+= webcleaner
+SUBDIR+= webkit-gtk
SUBDIR+= weland
SUBDIR+= weplab
SUBDIR+= west
diff --git a/webkit-gtk/DESCR b/webkit-gtk/DESCR
new file mode 100644
index 0000000000..8f5106660f
--- /dev/null
+++ b/webkit-gtk/DESCR
@@ -0,0 +1,7 @@
+WebKit is an open source web browser engine. WebKit is also the name of
+the Mac OS X system framework version of the engine that's used by
+Safari, Dashboard, Mail, and many other OS X applications. WebKit's HTML
+and JavaScript code began as a branch of the KHTML and KJS libraries
+from KDE.
+
+This is the GTK port of the engine.
diff --git a/webkit-gtk/Makefile b/webkit-gtk/Makefile
new file mode 100644
index 0000000000..267b604747
--- /dev/null
+++ b/webkit-gtk/Makefile
@@ -0,0 +1,199 @@
+# $NetBSD: Makefile,v 1.144 2018/08/22 09:47:59 wiz Exp $
+
+DISTNAME= webkitgtk-2.20.5
+PKGNAME= ${DISTNAME:S/webkitgtk/webkit-gtk/}
+PKGREVISION= 1
+CATEGORIES= www
+MASTER_SITES= https://www.webkitgtk.org/releases/
+EXTRACT_SUFX= .tar.xz
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://www.webkitgtk.org/
+COMMENT= GTK port of the WebKit browser engine
+LICENSE= 2-clause-bsd AND gnu-lgpl-v2
+
+# shm_open(3) and shm_unlink(3) appeared in NetBSD 7.0
+NOT_FOR_PLATFORM= NetBSD-[1-6]*-*
+
+BUILD_DEPENDS+= gettext-tools>=0.18:../../devel/gettext-tools
+
+USE_CMAKE= yes
+USE_LANGUAGES= c c++11
+#USE_LIBTOOL= yes
+USE_TOOLS+= automake bison gmake perl:build pkg-config msgfmt
+
+GCC_REQD+= 5.0
+
+# Using ld.gold subverts Pkgsrc wrappers, and this package also crashes buggy
+# versions of ld.gold.
+CMAKE_ARGS+= -DUSE_LD_GOLD=OFF
+
+PKGCONFIG_OVERRIDE+= Source/JavaScriptCore/javascriptcoregtk.pc.in
+PKGCONFIG_OVERRIDE+= Source/WebKit/gtk/webkit2gtk-web-extension.pc.in
+PKGCONFIG_OVERRIDE+= Source/WebKit/gtk/webkit2gtk.pc.in
+
+CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release
+CMAKE_ARGS+= -DPORT=GTK
+CMAKE_ARGS+= -DENABLE_X11_TARGET=ON
+CMAKE_ARGS+= -DENABLE_MINIBROWSER=ON
+CMAKE_ARGS+= -DENABLE_GEOLOCATION=OFF
+CMAKE_ARGS+= -DUSE_GSTREAMER_GL=OFF
+CMAKE_ARGS+= -DUSE_LIBHYPHEN=OFF
+#CMAKE_ARGS+= -DUSE_SYSTEM_MALLOC=ON # XXX: needs adjustements for sysinfo() stuffs in Source/WTF/wtf/RAMSize.cpp
+
+REPLACE_PERL+= Source/JavaScriptCore/create_hash_table
+REPLACE_PERL+= Source/WebCore/bindings/scripts/*.pl
+REPLACE_PERL+= Source/WebCore/bindings/scripts/InFilesCompiler.pm
+REPLACE_PERL+= Source/WebCore/bindings/scripts/InFilesParser.pm
+REPLACE_PERL+= Source/WebCore/css/*.pl
+REPLACE_PERL+= Source/WebCore/dom/*.pl
+REPLACE_PERL+= Source/WebCore/make-hash-tools.pl
+
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/UpdateContents.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_combined_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_combined_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_internals_wrapper_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_internals_wrapper_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_separate_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_separate_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_wrapper_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generate_wrapper_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_generator.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_model.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/builtins/builtins_templates.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/cssmin.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/generate-combined-inspector-json.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/generate-js-builtins.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/generateYarrUnicodePropertyTables.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/hasher.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/inline-and-minify-stylesheets-and-scripts.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/lazywriter.py
+REPLACE_PYTHON+= Source/JavaScriptCore/Scripts/make-js-file-arrays.py
+REPLACE_PYTHON+= Source/JavaScriptCore/generate-bytecode-files
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_internal_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_type_conversions_header.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_type_conversions_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_types_implementation.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generator.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/generator_templates.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/models.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/objc_generator.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/codegen/objc_generator_templates.py
+REPLACE_PYTHON+= Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
+REPLACE_PYTHON+= Source/JavaScriptCore/wasm/generateWasm.py
+REPLACE_PYTHON+= Source/JavaScriptCore/wasm/generateWasmB3IRGeneratorInlinesHeader.py
+REPLACE_PYTHON+= Source/JavaScriptCore/wasm/generateWasmOpsHeader.py
+REPLACE_PYTHON+= Source/JavaScriptCore/wasm/generateWasmValidateInlinesHeader.py
+REPLACE_PYTHON+= Source/JavaScriptCore/yarr/create_regex_tables
+REPLACE_PYTHON+= Source/JavaScriptCore/yarr/generateYarrCanonicalizeUnicode
+REPLACE_PYTHON+= Source/ThirdParty/gtest/run_tests.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/scripts/fuse_gtest_files.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/scripts/gen_gtest_pred_impl.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/scripts/pump.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/scripts/upload.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/scripts/upload_gtest.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_break_on_failure_unittest.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_color_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_env_var_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_filter_unittest.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_help_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_list_tests_unittest.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_nc_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_output_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_shuffle_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_test_utils.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_throw_on_failure_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_uninitialized_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_xml_outfiles_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_xml_output_unittest.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/gtest_xml_test_utils.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/test/run_tests_util_test.py
+REPLACE_PYTHON+= Source/ThirdParty/gtest/xcode/Scripts/versiongenerate.py
+REPLACE_PYTHON+= Source/WebCore/PAL/AVFoundationSupport.py
+REPLACE_PYTHON+= Source/WebCore/css/makeSelectorPseudoClassAndCompatibilityElementMap.py
+REPLACE_PYTHON+= Source/WebCore/css/makeSelectorPseudoElementsMap.py
+REPLACE_PYTHON+= Source/WebCore/html/parser/create-html-entity-table
+REPLACE_PYTHON+= Source/WebCore/platform/network/create-http-header-name-table
+REPLACE_PYTHON+= Source/WebKit/Scripts/generate-message-receiver.py
+REPLACE_PYTHON+= Source/WebKit/Scripts/generate-messages-header.py
+REPLACE_PYTHON+= Tools/glib/common.py
+REPLACE_PYTHON+= Tools/glib/generate-inspector-gresource-manifest.py
+REPLACE_PYTHON+= Tools/gtk/*.py
+REPLACE_PYTHON+= Tools/gtk/generate-gtkdoc
+
+SUBST_CLASSES+= python
+SUBST_FILES.python+= Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl
+SUBST_SED.python+= -e 's,\(.\)python.;,\1${PYTHONBIN}\1;,'
+SUBST_STAGE.python= pre-configure
+SUBST_MESSAGE.python= Fixing path to python binary.
+
+.include "../../lang/ruby/rubyversion.mk"
+BUILD_DEPENDS+= ${RUBY_BASE}>=${RUBY_VERSION}:${RUBY_SRCDIR}
+CMAKE_ARGS+= -DRUBY_EXECUTABLE=${RUBY}
+
+PYTHON_FOR_BUILD_ONLY= yes
+PYTHON_VERSIONS_INCOMPATIBLE= 34 35 36 37 # not yet ported as of 1.10.2
+.include "../../lang/python/application.mk"
+CMAKE_ARGS+= -DPYTHON_EXECUTABLE=${PYTHONBIN}
+
+CXXFLAGS.SunOS+= -fpermissive
+
+.include "../../mk/compiler.mk"
+.if !empty(PKGSRC_COMPILER:Mclang)
+CXXFLAGS+= -Wno-c++11-narrowing
+.endif
+
+# This does not disable optimisations, merely avoids #error if there are none.
+CFLAGS+= -DRELEASE_WITHOUT_OPTIMIZATIONS
+
+.include "options.mk"
+
+BUILDLINK_API_DEPENDS.glib2+= glib2>=2.32.1
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../databases/sqlite3/buildlink3.mk"
+# A correct Webkit build requires flex 2.5.33
+.include "../../devel/flex/buildlink3.mk"
+.include "../../devel/gperf/buildlink3.mk"
+.include "../../devel/pango/buildlink3.mk"
+.include "../../fonts/woff2/buildlink3.mk"
+.include "../../graphics/cairo-gobject/buildlink3.mk"
+.include "../../graphics/freetype2/buildlink3.mk"
+.include "../../graphics/libwebp/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
+BUILDLINK_API_DEPENDS.png+= png>=1.5.1beta08
+.include "../../graphics/png/buildlink3.mk"
+BUILDLINK_API_DEPENDS.gstreamer1+= gstreamer1>=1.0.3
+.include "../../multimedia/gstreamer1/buildlink3.mk"
+BUILDLINK_API_DEPENDS.gst-plugins1-base+= gst-plugins1-base>=1.0.3
+.include "../../multimedia/gst-plugins1-base/buildlink3.mk"
+BUILDLINK_API_DEPENDS.libsoup+= libsoup>=2.42.2nb3
+.include "../../net/libsoup/buildlink3.mk"
+.include "../../security/libsecret/buildlink3.mk"
+.include "../../security/gnutls/buildlink3.mk"
+.include "../../sysutils/libnotify/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+BUILDLINK_API_DEPENDS.gtk2+= gtk2+>=2.24.17nb3
+.include "../../x11/gtk2/buildlink3.mk"
+.include "../../x11/gtk3/buildlink3.mk"
+.include "../../x11/libXdamage/buildlink3.mk"
+.include "../../x11/libXt/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/webkit-gtk/PLIST b/webkit-gtk/PLIST
new file mode 100644
index 0000000000..20b7efd0e6
--- /dev/null
+++ b/webkit-gtk/PLIST
@@ -0,0 +1,266 @@
+@comment $NetBSD: PLIST,v 1.41 2018/08/19 19:59:12 wiz Exp $
+bin/WebKitWebDriver
+include/webkitgtk-4.0/JavaScriptCore/JSBase.h
+include/webkitgtk-4.0/JavaScriptCore/JSContextRef.h
+include/webkitgtk-4.0/JavaScriptCore/JSObjectRef.h
+include/webkitgtk-4.0/JavaScriptCore/JSStringRef.h
+include/webkitgtk-4.0/JavaScriptCore/JSTypedArray.h
+include/webkitgtk-4.0/JavaScriptCore/JSValueRef.h
+include/webkitgtk-4.0/JavaScriptCore/JavaScript.h
+include/webkitgtk-4.0/JavaScriptCore/WebKitAvailability.h
+include/webkitgtk-4.0/webkit2/WebKitApplicationInfo.h
+include/webkitgtk-4.0/webkit2/WebKitAuthenticationRequest.h
+include/webkitgtk-4.0/webkit2/WebKitAutocleanups.h
+include/webkitgtk-4.0/webkit2/WebKitAutomationSession.h
+include/webkitgtk-4.0/webkit2/WebKitBackForwardList.h
+include/webkitgtk-4.0/webkit2/WebKitBackForwardListItem.h
+include/webkitgtk-4.0/webkit2/WebKitColorChooserRequest.h
+include/webkitgtk-4.0/webkit2/WebKitConsoleMessage.h
+include/webkitgtk-4.0/webkit2/WebKitContextMenu.h
+include/webkitgtk-4.0/webkit2/WebKitContextMenuActions.h
+include/webkitgtk-4.0/webkit2/WebKitContextMenuItem.h
+include/webkitgtk-4.0/webkit2/WebKitCookieManager.h
+include/webkitgtk-4.0/webkit2/WebKitCredential.h
+include/webkitgtk-4.0/webkit2/WebKitDefines.h
+include/webkitgtk-4.0/webkit2/WebKitDownload.h
+include/webkitgtk-4.0/webkit2/WebKitEditingCommands.h
+include/webkitgtk-4.0/webkit2/WebKitEditorState.h
+include/webkitgtk-4.0/webkit2/WebKitEnumTypes.h
+include/webkitgtk-4.0/webkit2/WebKitError.h
+include/webkitgtk-4.0/webkit2/WebKitFaviconDatabase.h
+include/webkitgtk-4.0/webkit2/WebKitFileChooserRequest.h
+include/webkitgtk-4.0/webkit2/WebKitFindController.h
+include/webkitgtk-4.0/webkit2/WebKitFormSubmissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitForwardDeclarations.h
+include/webkitgtk-4.0/webkit2/WebKitFrame.h
+include/webkitgtk-4.0/webkit2/WebKitGeolocationPermissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitHitTestResult.h
+include/webkitgtk-4.0/webkit2/WebKitInstallMissingMediaPluginsPermissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitJavascriptResult.h
+include/webkitgtk-4.0/webkit2/WebKitMimeInfo.h
+include/webkitgtk-4.0/webkit2/WebKitNavigationAction.h
+include/webkitgtk-4.0/webkit2/WebKitNavigationPolicyDecision.h
+include/webkitgtk-4.0/webkit2/WebKitNetworkProxySettings.h
+include/webkitgtk-4.0/webkit2/WebKitNotification.h
+include/webkitgtk-4.0/webkit2/WebKitNotificationPermissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitOptionMenu.h
+include/webkitgtk-4.0/webkit2/WebKitOptionMenuItem.h
+include/webkitgtk-4.0/webkit2/WebKitPermissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitPlugin.h
+include/webkitgtk-4.0/webkit2/WebKitPolicyDecision.h
+include/webkitgtk-4.0/webkit2/WebKitPrintCustomWidget.h
+include/webkitgtk-4.0/webkit2/WebKitPrintOperation.h
+include/webkitgtk-4.0/webkit2/WebKitResponsePolicyDecision.h
+include/webkitgtk-4.0/webkit2/WebKitScriptDialog.h
+include/webkitgtk-4.0/webkit2/WebKitScriptWorld.h
+include/webkitgtk-4.0/webkit2/WebKitSecurityManager.h
+include/webkitgtk-4.0/webkit2/WebKitSecurityOrigin.h
+include/webkitgtk-4.0/webkit2/WebKitSettings.h
+include/webkitgtk-4.0/webkit2/WebKitURIRequest.h
+include/webkitgtk-4.0/webkit2/WebKitURIResponse.h
+include/webkitgtk-4.0/webkit2/WebKitURISchemeRequest.h
+include/webkitgtk-4.0/webkit2/WebKitUserContent.h
+include/webkitgtk-4.0/webkit2/WebKitUserContentManager.h
+include/webkitgtk-4.0/webkit2/WebKitUserMediaPermissionRequest.h
+include/webkitgtk-4.0/webkit2/WebKitVersion.h
+include/webkitgtk-4.0/webkit2/WebKitWebContext.h
+include/webkitgtk-4.0/webkit2/WebKitWebEditor.h
+include/webkitgtk-4.0/webkit2/WebKitWebExtension.h
+include/webkitgtk-4.0/webkit2/WebKitWebExtensionAutocleanups.h
+include/webkitgtk-4.0/webkit2/WebKitWebHitTestResult.h
+include/webkitgtk-4.0/webkit2/WebKitWebInspector.h
+include/webkitgtk-4.0/webkit2/WebKitWebPage.h
+include/webkitgtk-4.0/webkit2/WebKitWebProcessEnumTypes.h
+include/webkitgtk-4.0/webkit2/WebKitWebResource.h
+include/webkitgtk-4.0/webkit2/WebKitWebView.h
+include/webkitgtk-4.0/webkit2/WebKitWebViewBase.h
+include/webkitgtk-4.0/webkit2/WebKitWebViewSessionState.h
+include/webkitgtk-4.0/webkit2/WebKitWebsiteData.h
+include/webkitgtk-4.0/webkit2/WebKitWebsiteDataManager.h
+include/webkitgtk-4.0/webkit2/WebKitWindowProperties.h
+include/webkitgtk-4.0/webkit2/webkit-web-extension.h
+include/webkitgtk-4.0/webkit2/webkit2.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMAttr.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMBlob.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCDATASection.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCSSRule.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCSSRuleList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCSSStyleDeclaration.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCSSStyleSheet.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCSSValue.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCharacterData.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMClientRect.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMClientRectList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMComment.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCustom.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMCustomUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDOMImplementation.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDOMSelection.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDOMTokenList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDOMWindow.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDOMWindowUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDeprecated.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDocument.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDocumentFragment.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDocumentFragmentUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDocumentType.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMDocumentUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMElementUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMEvent.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMEventTarget.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMFile.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMFileList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLAnchorElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLAppletElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLAreaElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLBRElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLBaseElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLBodyElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLButtonElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLCanvasElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLCollection.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLDListElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLDirectoryElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLDivElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLDocument.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLElementUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLEmbedElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLFieldSetElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLFontElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLFormElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLFrameElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLFrameSetElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLHRElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLHeadElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLHeadingElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLHtmlElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLIFrameElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLImageElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLInputElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLLIElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLLabelElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLLegendElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLLinkElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLMapElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLMarqueeElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLMenuElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLMetaElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLModElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLOListElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLObjectElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLOptGroupElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLOptionElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLOptionsCollection.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLParagraphElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLParamElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLPreElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLQuoteElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLScriptElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLSelectElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLStyleElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableCaptionElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableCellElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableColElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableRowElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTableSectionElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTextAreaElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLTitleElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMHTMLUListElement.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMKeyboardEvent.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMMediaList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMMouseEvent.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMNamedNodeMap.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMNode.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMNodeFilter.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMNodeIterator.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMNodeList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMObject.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMProcessingInstruction.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMRange.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMRangeUnstable.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMStyleSheet.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMStyleSheetList.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMText.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMTreeWalker.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMUIEvent.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMWheelEvent.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMXPathExpression.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMXPathNSResolver.h
+include/webkitgtk-4.0/webkitdom/WebKitDOMXPathResult.h
+include/webkitgtk-4.0/webkitdom/webkitdom.h
+include/webkitgtk-4.0/webkitdom/webkitdomautocleanups.h
+include/webkitgtk-4.0/webkitdom/webkitdomdefines.h
+${PLIST.introspection}lib/girepository-1.0/JavaScriptCore-4.0.typelib
+${PLIST.introspection}lib/girepository-1.0/WebKit2-4.0.typelib
+${PLIST.introspection}lib/girepository-1.0/WebKit2WebExtension-4.0.typelib
+lib/libjavascriptcoregtk-4.0.so
+lib/libjavascriptcoregtk-4.0.so.18
+lib/libjavascriptcoregtk-4.0.so.18.7.13
+lib/libwebkit2gtk-4.0.so
+lib/libwebkit2gtk-4.0.so.37
+lib/libwebkit2gtk-4.0.so.37.28.5
+lib/pkgconfig/javascriptcoregtk-4.0.pc
+lib/pkgconfig/webkit2gtk-4.0.pc
+lib/pkgconfig/webkit2gtk-web-extension-4.0.pc
+lib/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so
+libexec/webkit2gtk-4.0/MiniBrowser
+libexec/webkit2gtk-4.0/WebKitNetworkProcess
+libexec/webkit2gtk-4.0/WebKitPluginProcess
+libexec/webkit2gtk-4.0/WebKitPluginProcess2
+libexec/webkit2gtk-4.0/WebKitStorageProcess
+libexec/webkit2gtk-4.0/WebKitWebProcess
+libexec/webkit2gtk-4.0/jsc
+${PLIST.introspection}share/gir-1.0/JavaScriptCore-4.0.gir
+${PLIST.introspection}share/gir-1.0/WebKit2-4.0.gir
+${PLIST.introspection}share/gir-1.0/WebKit2WebExtension-4.0.gir
+share/locale/ar/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/as/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/bg/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ca/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/cs/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/de/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/el/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/en_CA/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/en_GB/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/eo/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/es/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/et/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/eu/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/fi/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/fr/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/gl/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/gu/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/he/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/hi/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/hu/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/id/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/it/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ja/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/kn/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ko/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/lt/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/lv/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ml/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/mr/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/nb/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/nl/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/or/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/pa/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/pl/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/pt/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/pt_BR/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ro/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ru/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/sl/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/sr/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/sr@latin/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/sv/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/ta/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/te/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/tr/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/uk/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/vi/LC_MESSAGES/WebKit2GTK-4.0.mo
+share/locale/zh_CN/LC_MESSAGES/WebKit2GTK-4.0.mo
diff --git a/webkit-gtk/buildlink3.mk b/webkit-gtk/buildlink3.mk
new file mode 100644
index 0000000000..d9a1cfa563
--- /dev/null
+++ b/webkit-gtk/buildlink3.mk
@@ -0,0 +1,40 @@
+# $NetBSD: buildlink3.mk,v 1.66 2018/07/20 03:33:58 ryoon Exp $
+
+BUILDLINK_TREE+= webkit-gtk
+
+.if !defined(WEBKIT_GTK_BUILDLINK3_MK)
+WEBKIT_GTK_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.webkit-gtk+= webkit-gtk>=2.8
+BUILDLINK_ABI_DEPENDS.webkit-gtk?= webkit-gtk>=2.20.3nb1
+BUILDLINK_PKGSRCDIR.webkit-gtk?= ../../www/webkit-gtk
+
+# This is necessary to match the package requirement.
+GCC_REQD+= 5.0
+
+pkgbase := webkit-gtk
+.include "../../mk/pkg-build-options.mk"
+
+.if !empty(PKG_BUILD_OPTIONS.webkit-gtk:Menchant)
+.include "../../textproc/enchant/buildlink3.mk"
+.endif
+
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../devel/gperf/buildlink3.mk"
+.include "../../graphics/freetype2/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
+.include "../../graphics/png/buildlink3.mk"
+.include "../../graphics/libwebp/buildlink3.mk"
+.include "../../multimedia/gstreamer1/buildlink3.mk"
+.include "../../multimedia/gst-plugins1-base/buildlink3.mk"
+.include "../../net/libsoup/buildlink3.mk"
+.include "../../security/libsecret/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.include "../../x11/gtk2/buildlink3.mk"
+.include "../../x11/gtk3/buildlink3.mk"
+.include "../../x11/libXdamage/buildlink3.mk"
+.include "../../x11/libXt/buildlink3.mk"
+.endif # WEBKIT_GTK_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -webkit-gtk
diff --git a/webkit-gtk/distinfo b/webkit-gtk/distinfo
new file mode 100644
index 0000000000..35d05ea37a
--- /dev/null
+++ b/webkit-gtk/distinfo
@@ -0,0 +1,25 @@
+$NetBSD: distinfo,v 1.105 2018/08/19 19:59:12 wiz Exp $
+
+SHA1 (webkitgtk-2.20.5.tar.xz) = 63bff8f9b3811e8ee294c0c1af6a7e2e453f0916
+RMD160 (webkitgtk-2.20.5.tar.xz) = 6a4cda986d2a4c4762b0daf0ff2007cd95b72b79
+SHA512 (webkitgtk-2.20.5.tar.xz) = d92fd079ec2826b2880ae5b2d90795ee3071a331bd7a576230b77b9f67a829ab27f09a9b0241a780f612f4f78ea5cc849e4b3d09285d4903eb600a7a7729c1e7
+Size (webkitgtk-2.20.5.tar.xz) = 16625200 bytes
+SHA1 (patch-CMakeLists.txt) = 684aad9e5bcc25b1afc128a1b5df00f34f1208e9
+SHA1 (patch-Source_JavaScriptCore_assembler_ARMAssembler.h) = 99e46f9d9b26a8d9ba6b29c66d7ce5326c4ffeb6
+SHA1 (patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp) = f78e6150ed8901b3fe046b2ef182f50f1c7500a4
+SHA1 (patch-Source_JavaScriptCore_heap_MarkedSpace.cpp) = e6a23d5ef22bddd0a9606fb0e472960e4cf5673e
+SHA1 (patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp) = 2f20d6aa8f1ec4122bee9f2f95b736ee4496812f
+SHA1 (patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h) = f1eee7f9d3012edee1915234c837cff820f97092
+SHA1 (patch-Source_WTF_wtf_StackBounds.cpp) = 0b35ab065e4cccbb63199cd8a9add0d5106c6150
+SHA1 (patch-Source_WTF_wtf_ThreadSpecific.h) = 38a85e10a72fe38d286a2ce747e090a2955b8791
+SHA1 (patch-Source_WebCore_platform_FileSystem.cpp) = adef1a42c4e210f0a3dcb82807e2d2039684a0ec
+SHA1 (patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp) = 16b36d2d91fd7f43156b9ee09bcafd19602ebbd9
+SHA1 (patch-Source_WebCore_rendering_shapes_RasterShape.cpp) = 551e47698dee50d097b11e3218f13bb3447edfea
+SHA1 (patch-Source_WebKit_CMakeLists.txt) = 228cc4734de3b08a3877ac839b1ffa2fbf2d3aa8
+SHA1 (patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp) = 6a8c147b0606a55c18f4bef46a3bbf2932349c58
+SHA1 (patch-Source_WebKit_PlatformGTK.cmake) = 67f71d609c7c7459447a9be8a5a7ad8455f88a33
+SHA1 (patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp) = 9c58253868e06b3dd3cac936651ba7e6a1437fc6
+SHA1 (patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp) = 920376ec8697780637f376b2fff312b7e214a7f6
+SHA1 (patch-Source_bmalloc_bmalloc_VMAllocate.h) = f5235df843849f8e1dd8fceaa015bc91785d8b3b
+SHA1 (patch-Source_cmake_OptionsCommon.cmake) = 03b72552414e7114bfa7ddc2d68fd97009a5ff7d
+SHA1 (patch-aj) = cd9a280c3bbab82c1a7aeb62a27ee6eb96c67ec2
diff --git a/webkit-gtk/hacks.mk b/webkit-gtk/hacks.mk
new file mode 100644
index 0000000000..e0d28b8494
--- /dev/null
+++ b/webkit-gtk/hacks.mk
@@ -0,0 +1,16 @@
+# $NetBSD: hacks.mk,v 1.1 2015/10/05 16:25:30 leot Exp $
+
+.if !defined(WEBKIT_GTK_HACKS_MK)
+WEBKIT_GTK_HACKS_MK= defined
+
+# [Sat Oct 3 16:44:53 CEST 2015 : leot]
+# On i386 archs -latomic is added during the build phase when linking
+# libwebkit2gtk-4.0.so for atomic operations.
+# Forcing -march=i586 (or better) avoids that (i[56]86 provide required
+# 64-bit compare-and-swap instruction).
+.if ${MACHINE_ARCH} == "i386"
+PKG_HACKS+= i386-atomicops
+CXXFLAGS+= -march=i586
+.endif
+
+.endif # WEBKIT_GTK_HACKS_MK
diff --git a/webkit-gtk/options.mk b/webkit-gtk/options.mk
new file mode 100644
index 0000000000..fec33bddeb
--- /dev/null
+++ b/webkit-gtk/options.mk
@@ -0,0 +1,73 @@
+# $NetBSD: options.mk,v 1.12 2018/04/09 08:33:48 wiz Exp $
+#
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.webkit-gtk
+PKG_SUPPORTED_OPTIONS= debug enchant introspection opengl webkit-jit
+PKG_SUGGESTED_OPTIONS= enchant introspection opengl
+
+PLIST_VARS= introspection
+
+.include "../../mk/bsd.prefs.mk"
+
+# XXX JIT produces invalid code
+# it's also entirely unsupported on powerpc and sparc
+.if empty(MACHINE_PLATFORM:MNetBSD-*-i386) \
+ && empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) \
+ && empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) \
+ && empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) \
+ && empty(MACHINE_PLATFORM:MNetBSD-*-sparc) \
+ && empty(MACHINE_PLATFORM:MSunOS-*)
+PKG_SUGGESTED_OPTIONS+= webkit-jit
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+#
+# JIT support
+#
+.if !empty(PKG_OPTIONS:Mwebkit-jit)
+CMAKE_ARGS+= -DENABLE_JIT=ON
+.else
+CMAKE_ARGS+= -DENABLE_JIT=OFF
+.endif
+
+#
+# OpenGL support: enable support for GLX, WebGL and accelerated compositing
+#
+.if !empty(PKG_OPTIONS:Mopengl)
+CMAKE_ARGS+= -DENABLE_WEBGL=ON
+.else
+CMAKE_ARGS+= -DENABLE_WEBGL=OFF
+.endif
+
+#
+# Spellcheck support using enchant
+#
+.if !empty(PKG_OPTIONS:Menchant)
+CMAKE_ARGS+= -DENABLE_SPELLCHECK=ON
+.include "../../textproc/enchant/buildlink3.mk"
+.else
+CMAKE_ARGS+= -DENABLE_SPELLCHECK=OFF
+.endif
+
+#
+# Debug build
+#
+.if !empty(PKG_OPTIONS:Mdebug)
+CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Debug
+.else
+CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release
+.endif
+
+#
+# Introspection
+#
+.if !empty(PKG_OPTIONS:Mintrospection)
+PLIST.introspection= yes
+BUILDLINK_API_DEPENDS.gobject-introspection+= gobject-introspection>=0.9.5
+BUILDLINK_DEPMETHOD.gobject-introspection+= build
+.include "../../devel/gobject-introspection/buildlink3.mk"
+CMAKE_ARGS+= -DENABLE_INTROSPECTION=ON
+.else
+CMAKE_ARGS+= -DENABLE_INTROSPECTION=OFF
+.endif
diff --git a/webkit-gtk/patches/patch-CMakeLists.txt b/webkit-gtk/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000000..903af75703
--- /dev/null
+++ b/webkit-gtk/patches/patch-CMakeLists.txt
@@ -0,0 +1,32 @@
+$NetBSD: patch-CMakeLists.txt,v 1.4 2018/04/28 19:10:13 wiz Exp $
+
+- Fix support for arm
+- Fix support for ppc and add support for sparc64.
+ From FreeBSD and OpenBSD ports.
+
+--- CMakeLists.txt.orig 2018-02-19 07:44:43.000000000 +0000
++++ CMakeLists.txt
+@@ -85,6 +85,8 @@ else ()
+ endif ()
+ if (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")
+ set(WTF_CPU_ARM 1)
++elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^earm")
++ set(WTF_CPU_ARM 1)
+ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
+ set(WTF_CPU_ARM64 1)
+ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^mips")
+@@ -93,11 +95,13 @@ 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")
+ set(WTF_CPU_PPC64 1)
+ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
++elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "sparc64")
++ set(WTF_CPU_SPARC64 1)
+ set(WTF_CPU_PPC64LE 1)
+ else ()
+ set(WTF_CPU_UNKNOWN 1)
diff --git a/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h b/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h
new file mode 100644
index 0000000000..e0a69ed717
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARMAssembler.h
@@ -0,0 +1,28 @@
+$NetBSD: patch-Source_JavaScriptCore_assembler_ARMAssembler.h,v 1.6 2016/01/21 13:42:33 leot Exp $
+
+--- Source/JavaScriptCore/assembler/ARMAssembler.h.orig 2016-01-20 12:12:59.000000000 +0000
++++ Source/JavaScriptCore/assembler/ARMAssembler.h
+@@ -29,6 +29,11 @@
+
+ #if ENABLE(ASSEMBLER) && CPU(ARM_TRADITIONAL)
+
++#if defined(__NetBSD__)
++#include <sys/types.h>
++#include <machine/sysarch.h>
++#endif
++
+ #include "AssemblerBufferWithConstantPool.h"
+ #include "JITCompilationEffort.h"
+ #include <wtf/Assertions.h>
+@@ -1128,6 +1133,11 @@ namespace JSC {
+ linuxPageFlush(current, current + page);
+
+ linuxPageFlush(current, end);
++#elif defined(__NetBSD__)
++ struct arm_sync_icache_args arg;
++ arg.addr = reinterpret_cast<uintptr_t>(code);
++ arg.len = size;
++ sysarch(ARM_SYNC_ICACHE, (void *)&arg);
+ #else
+ #error "The cacheFlush support is missing on this platform."
+ #endif
diff --git a/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp b/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
new file mode 100644
index 0000000000..bed7fca27f
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp
@@ -0,0 +1,30 @@
+$NetBSD: patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp,v 1.5 2016/01/21 13:42:33 leot Exp $
+
+--- Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp.orig 2016-01-20 12:12:59.000000000 +0000
++++ Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp
+@@ -38,6 +38,8 @@
+ #include <unistd.h>
+ #include <elf.h>
+ #include <asm/hwcap.h>
++#elif OS(NETBSD)
++#include <sys/sysctl.h>
+ #endif
+
+ namespace JSC {
+@@ -57,6 +59,16 @@ static bool isVFPPresent()
+ close(fd);
+ }
+ #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 // OS(NETBSD)
+
+ #if (COMPILER(GCC_OR_CLANG) && defined(__VFP_FP__))
+ return true;
diff --git a/webkit-gtk/patches/patch-Source_JavaScriptCore_heap_MarkedSpace.cpp b/webkit-gtk/patches/patch-Source_JavaScriptCore_heap_MarkedSpace.cpp
new file mode 100644
index 0000000000..e78ae52f4e
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_JavaScriptCore_heap_MarkedSpace.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_JavaScriptCore_heap_MarkedSpace.cpp,v 1.1 2018/06/15 09:17:02 jperkin Exp $
+
+Avoid ambiguous function call.
+
+--- Source/JavaScriptCore/heap/MarkedSpace.cpp.orig 2018-02-20 11:01:51.000000000 +0000
++++ Source/JavaScriptCore/heap/MarkedSpace.cpp
+@@ -29,6 +29,8 @@
+ #include "MarkedBlockInlines.h"
+ #include <wtf/ListDump.h>
+
++using std::pow;
++
+ namespace JSC {
+
+ std::array<size_t, MarkedSpace::numSizeClasses> MarkedSpace::s_sizeClassForSizeStep;
diff --git a/webkit-gtk/patches/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp b/webkit-gtk/patches/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp
new file mode 100644
index 0000000000..11e8d713c5
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp
@@ -0,0 +1,19 @@
+$NetBSD: patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp,v 1.1 2018/04/09 08:33:48 wiz Exp $
+
+Avoid to (pre)allocate 1GB of memory:
+
+ <https://bugs.webkit.org/show_bug.cgi?id=61137>
+
+From FreeBSD and OpenBSD ports.
+
+--- Source/JavaScriptCore/jit/ExecutableAllocator.cpp.orig 2017-08-09 09:13:42.000000000 +0000
++++ Source/JavaScriptCore/jit/ExecutableAllocator.cpp
+@@ -88,7 +88,7 @@ static const size_t fixedExecutableMemor
+ static const size_t fixedExecutableMemoryPoolSize = 16 * 1024 * 1024;
+ #elif CPU(ARM64)
+ static const size_t fixedExecutableMemoryPoolSize = 64 * 1024 * 1024;
+-#elif CPU(X86_64)
++#elif CPU(X86_64) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__NetBSD__)
+ static const size_t fixedExecutableMemoryPoolSize = 1024 * 1024 * 1024;
+ #else
+ static const size_t fixedExecutableMemoryPoolSize = 32 * 1024 * 1024;
diff --git a/webkit-gtk/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h b/webkit-gtk/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h
new file mode 100644
index 0000000000..5c27d6844e
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h
@@ -0,0 +1,36 @@
+$NetBSD: patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h,v 1.3 2014/08/03 22:30:05 wiz Exp $
+
+--- Source/ThirdParty/gtest/include/gtest/internal/gtest-port.h.orig 2013-09-09 09:20:59.000000000 +0000
++++ Source/ThirdParty/gtest/include/gtest/internal/gtest-port.h
+@@ -35,6 +35,7 @@
+
+ #ifndef GTEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_H_
+ #define GTEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_H_
++#include <ciso646>
+
+ // The user can define the following macros in the build script to
+ // control Google Test's behavior. If the user doesn't define a macro
+@@ -175,6 +176,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
++#include <unistd.h>
+ #ifndef _WIN32_WCE
+ #include <sys/stat.h>
+ #endif // !_WIN32_WCE
+@@ -448,7 +450,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
diff --git a/webkit-gtk/patches/patch-Source_WTF_wtf_StackBounds.cpp b/webkit-gtk/patches/patch-Source_WTF_wtf_StackBounds.cpp
new file mode 100644
index 0000000000..af179ae08f
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WTF_wtf_StackBounds.cpp
@@ -0,0 +1,14 @@
+$NetBSD: patch-Source_WTF_wtf_StackBounds.cpp,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+SunOS does not have pthread_getattr_np.
+
+--- Source/WTF/wtf/StackBounds.cpp.orig 2018-02-19 07:45:30.000000000 +0000
++++ Source/WTF/wtf/StackBounds.cpp
+@@ -131,6 +131,7 @@ StackBounds StackBounds::newThreadStackB
+ #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
+ // e.g. on FreeBSD 5.4, neundorf%kde.org@localhost
+ pthread_attr_get_np(thread, &sattr);
++#elif defined(__sun)
+ #else
+ // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
+ pthread_getattr_np(thread, &sattr);
diff --git a/webkit-gtk/patches/patch-Source_WTF_wtf_ThreadSpecific.h b/webkit-gtk/patches/patch-Source_WTF_wtf_ThreadSpecific.h
new file mode 100644
index 0000000000..a4429b67dd
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WTF_wtf_ThreadSpecific.h
@@ -0,0 +1,16 @@
+$NetBSD: patch-Source_WTF_wtf_ThreadSpecific.h,v 1.1 2018/04/09 08:33:48 wiz Exp $
+
+--- Source/WTF/wtf/ThreadSpecific.h.orig 2017-08-14 09:04:46.000000000 +0000
++++ Source/WTF/wtf/ThreadSpecific.h
+@@ -52,6 +52,11 @@
+ #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)
++// PTHREAD_KEYS_MAX is not defined in 5.x
++#ifndef PTHREAD_KEYS_MAX
++#define PTHREAD_KEYS_MAX 256
++#endif
+ #else
+ #include <limits.h>
+ #endif
diff --git a/webkit-gtk/patches/patch-Source_WebCore_platform_FileSystem.cpp b/webkit-gtk/patches/patch-Source_WebCore_platform_FileSystem.cpp
new file mode 100644
index 0000000000..f01c457261
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebCore_platform_FileSystem.cpp
@@ -0,0 +1,16 @@
+$NetBSD: patch-Source_WebCore_platform_FileSystem.cpp,v 1.1 2017/04/13 16:58:14 jperkin Exp $
+
+Support MAP_FILE if unavailable.
+
+--- Source/WebCore/platform/FileSystem.cpp.orig 2016-08-22 12:21:08.000000000 +0000
++++ Source/WebCore/platform/FileSystem.cpp
+@@ -189,6 +189,9 @@ MappedFileData::MappedFileData(const Str
+ return;
+ }
+
++#ifndef MAP_FILE
++#define MAP_FILE 0
++#endif
+ void* data = mmap(0, size, PROT_READ, MAP_FILE | MAP_SHARED, fd, 0);
+ close(fd);
+
diff --git a/webkit-gtk/patches/patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp b/webkit-gtk/patches/patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp
new file mode 100644
index 0000000000..dfe5bbb353
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_platform_graphics_filters_FEMorphology.cpp,v 1.1 2018/06/15 09:17:02 jperkin Exp $
+
+Avoid ambiguous function call.
+
+--- Source/WebCore/platform/graphics/filters/FEMorphology.cpp.orig 2018-02-19 11:04:38.000000000 +0000
++++ Source/WebCore/platform/graphics/filters/FEMorphology.cpp
+@@ -32,6 +32,8 @@
+ #include <wtf/Vector.h>
+ #include <wtf/text/TextStream.h>
+
++using std::sqrt;
++
+ namespace WebCore {
+
+ FEMorphology::FEMorphology(Filter& filter, MorphologyOperatorType type, float radiusX, float radiusY)
diff --git a/webkit-gtk/patches/patch-Source_WebCore_rendering_shapes_RasterShape.cpp b/webkit-gtk/patches/patch-Source_WebCore_rendering_shapes_RasterShape.cpp
new file mode 100644
index 0000000000..23109a78ef
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebCore_rendering_shapes_RasterShape.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebCore_rendering_shapes_RasterShape.cpp,v 1.1 2017/04/13 16:58:14 jperkin Exp $
+
+Avoid ambiguous function call.
+
+--- Source/WebCore/rendering/shapes/RasterShape.cpp.orig 2016-04-11 06:18:44.000000000 +0000
++++ Source/WebCore/rendering/shapes/RasterShape.cpp
+@@ -142,7 +142,7 @@ const RasterShapeIntervals& RasterShape:
+ return *m_intervals;
+
+ int shapeMarginInt = clampToPositiveInteger(ceil(shapeMargin()));
+- int maxShapeMarginInt = std::max(m_marginRectSize.width(), m_marginRectSize.height()) * sqrt(2);
++ int maxShapeMarginInt = std::max(m_marginRectSize.width(), m_marginRectSize.height()) * sqrt((double)2);
+ if (!m_marginIntervals)
+ m_marginIntervals = m_intervals->computeShapeMarginIntervals(std::min(shapeMarginInt, maxShapeMarginInt));
+
diff --git a/webkit-gtk/patches/patch-Source_WebKit_CMakeLists.txt b/webkit-gtk/patches/patch-Source_WebKit_CMakeLists.txt
new file mode 100644
index 0000000000..28c10a9fca
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebKit_CMakeLists.txt
@@ -0,0 +1,17 @@
+$NetBSD: patch-Source_WebKit_CMakeLists.txt,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+SunOS requires libsocket.
+
+--- Source/WebKit/CMakeLists.txt.orig 2018-03-05 08:47:55.000000000 +0000
++++ Source/WebKit/CMakeLists.txt
+@@ -808,6 +808,10 @@ if (UNIX)
+ endif ()
+ endif ()
+
++if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
++ list(APPEND WebKit_LIBRARIES socket)
++endif ()
++
+ macro(ADD_WEBKIT_PREFIX_HEADER _target)
+ if (WebKit_USE_PREFIX_HEADER)
+ get_target_property(OLD_COMPILE_FLAGS ${_target} COMPILE_FLAGS)
diff --git a/webkit-gtk/patches/patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp b/webkit-gtk/patches/patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp
new file mode 100644
index 0000000000..a986a00ebf
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp
@@ -0,0 +1,52 @@
+$NetBSD: patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+SunOS does not support DT_{DIR,REG}
+
+--- Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp.orig 2018-02-19 07:45:32.000000000 +0000
++++ Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp
+@@ -50,6 +50,12 @@ namespace NetworkCache {
+
+ static DirectoryEntryType directoryEntryType(uint8_t dtype)
+ {
++#ifndef DT_DIR
++#define DT_DIR S_IFDIR
++#endif
++#ifndef DT_REG
++#define DT_REG S_IFREG
++#endif
+ switch (dtype) {
+ case DT_DIR:
+ return DirectoryEntryType::Directory;
+@@ -63,12 +69,20 @@ static DirectoryEntryType directoryEntry
+
+ void traverseDirectory(const String& path, const Function<void (const String&, DirectoryEntryType)>& function)
+ {
++#ifdef __sun
++ struct stat s;
++#endif
+ DIR* dir = opendir(WebCore::FileSystem::fileSystemRepresentation(path).data());
+ if (!dir)
+ return;
+ dirent* dp;
+ while ((dp = readdir(dir))) {
++#ifdef __sun
++ stat(dp->d_name, &s);
++ if (s.st_mode != S_IFDIR && s.st_mode != S_IFREG)
++#else
+ if (dp->d_type != DT_DIR && dp->d_type != DT_REG)
++#endif
+ continue;
+ const char* name = dp->d_name;
+ if (!strcmp(name, ".") || !strcmp(name, ".."))
+@@ -76,7 +90,11 @@ void traverseDirectory(const String& pat
+ auto nameString = String::fromUTF8(name);
+ if (nameString.isNull())
+ continue;
++#ifdef __sun
++ function(nameString, directoryEntryType(s.st_mode));
++#else
+ function(nameString, directoryEntryType(dp->d_type));
++#endif
+ }
+ closedir(dir);
+ }
diff --git a/webkit-gtk/patches/patch-Source_WebKit_PlatformGTK.cmake b/webkit-gtk/patches/patch-Source_WebKit_PlatformGTK.cmake
new file mode 100644
index 0000000000..974283f437
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebKit_PlatformGTK.cmake
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebKit_PlatformGTK.cmake,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+SunOS ld does not support --version-script.
+
+--- Source/WebKit/PlatformGTK.cmake.orig 2018-04-10 07:33:13.000000000 +0000
++++ Source/WebKit/PlatformGTK.cmake
+@@ -24,7 +24,7 @@ add_definitions(-DLOCALEDIR="${CMAKE_INS
+ add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
+ add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}")
+
+-if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
++if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" AND NOT CMAKE_SYSTEM_NAME MATCHES "SunOS")
+ WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map")
+ endif ()
+
diff --git a/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp b/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp
new file mode 100644
index 0000000000..39875f3b0b
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp
@@ -0,0 +1,24 @@
+$NetBSD: patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp,v 1.1 2018/04/09 08:33:48 wiz Exp $
+
+On NetBSD we see ""Error sending IPC message: Message too long" due to
+the use of sendmsg with a large message body (EMSGSIZE).
+
+WebKit already uses shared memory to communicate the message body when
+the message is too large, so force it to always use this method to avoid
+encountering EMSGSIZE.
+
+--- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig 2017-08-09 09:13:52.000000000 +0000
++++ Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp
+@@ -380,8 +380,12 @@ bool Connection::sendOutgoingMessage(std
+ return false;
+ }
+
++#if 0
+ size_t messageSizeWithBodyInline = sizeof(MessageInfo) + (outputMessage.attachments().size() * sizeof(AttachmentInfo)) + outputMessage.bodySize();
+ if (messageSizeWithBodyInline > messageMaxSize && outputMessage.bodySize()) {
++#else
++ {
++#endif
+ RefPtr<WebKit::SharedMemory> oolMessageBody = WebKit::SharedMemory::allocate(encoder->bufferSize());
+ if (!oolMessageBody)
+ return false;
diff --git a/webkit-gtk/patches/patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp b/webkit-gtk/patches/patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp
new file mode 100644
index 0000000000..7da485db18
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+Avoid ambiguous function call.
+
+--- Source/WebKit/Platform/classifier/ResourceLoadStatisticsClassifier.cpp.orig 2018-02-20 07:38:30.000000000 +0000
++++ Source/WebKit/Platform/classifier/ResourceLoadStatisticsClassifier.cpp
+@@ -29,6 +29,8 @@
+ #include "Logging.h"
+ #include <WebCore/ResourceLoadStatistics.h>
+
++using std::sqrt;
++
+ namespace WebKit {
+ using namespace WebCore;
+
diff --git a/webkit-gtk/patches/patch-Source_bmalloc_bmalloc_VMAllocate.h b/webkit-gtk/patches/patch-Source_bmalloc_bmalloc_VMAllocate.h
new file mode 100644
index 0000000000..c71ac3a363
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_bmalloc_bmalloc_VMAllocate.h
@@ -0,0 +1,24 @@
+$NetBSD: patch-Source_bmalloc_bmalloc_VMAllocate.h,v 1.1 2018/05/16 18:55:45 jperkin Exp $
+
+Use posix_madvise on SunOS.
+
+--- Source/bmalloc/bmalloc/VMAllocate.h.orig 2018-02-19 07:45:33.000000000 +0000
++++ Source/bmalloc/bmalloc/VMAllocate.h
+@@ -198,6 +198,8 @@ inline void vmDeallocatePhysicalPages(vo
+ vmValidatePhysical(p, vmSize);
+ #if BOS(DARWIN)
+ SYSCALL(madvise(p, vmSize, MADV_FREE_REUSABLE));
++#elif defined(__sun)
++ SYSCALL(posix_madvise(p, vmSize, MADV_DONTNEED));
+ #else
+ SYSCALL(madvise(p, vmSize, MADV_DONTNEED));
+ #if BOS(LINUX)
+@@ -211,6 +213,8 @@ inline void vmAllocatePhysicalPages(void
+ vmValidatePhysical(p, vmSize);
+ #if BOS(DARWIN)
+ SYSCALL(madvise(p, vmSize, MADV_FREE_REUSE));
++#elif defined(__sun)
++ SYSCALL(posix_madvise(p, vmSize, MADV_NORMAL));
+ #else
+ SYSCALL(madvise(p, vmSize, MADV_NORMAL));
+ #if BOS(LINUX)
diff --git a/webkit-gtk/patches/patch-Source_cmake_OptionsCommon.cmake b/webkit-gtk/patches/patch-Source_cmake_OptionsCommon.cmake
new file mode 100644
index 0000000000..73f47f0099
--- /dev/null
+++ b/webkit-gtk/patches/patch-Source_cmake_OptionsCommon.cmake
@@ -0,0 +1,21 @@
+$NetBSD: patch-Source_cmake_OptionsCommon.cmake,v 1.4 2018/04/09 08:33:48 wiz Exp $
+
+Using the T option of GNU ar lead to malformed .a archive on NetBSD. Disable it.
+
+--- Source/cmake/OptionsCommon.cmake.orig 2017-02-27 07:11:15.000000000 +0000
++++ Source/cmake/OptionsCommon.cmake
+@@ -27,10 +27,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> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
++ set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
+ endif ()
+ endif ()
+
diff --git a/webkit-gtk/patches/patch-aj b/webkit-gtk/patches/patch-aj
new file mode 100644
index 0000000000..032f3accb7
--- /dev/null
+++ b/webkit-gtk/patches/patch-aj
@@ -0,0 +1,13 @@
+$NetBSD: patch-aj,v 1.6 2018/04/09 08:33:48 wiz Exp $
+
+--- Source/WTF/wtf/InlineASM.h.orig 2017-02-20 16:20:15.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(OPENBSD) || 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"
Home |
Main Index |
Thread Index |
Old Index