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