diff --git a/.gitignore b/.gitignore index 4a9ed5d..5fcd65f 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,19 @@ /webkitgtk-2.12.0.tar.xz /webkitgtk-2.12.1.tar.xz /webkitgtk-2.12.2.tar.xz +/webkitgtk-2.12.3.tar.xz +/webkitgtk-2.12.4.tar.xz +/webkitgtk-2.12.5.tar.xz +/webkitgtk-2.14.0.tar.xz +/webkitgtk-2.14.1.tar.xz +/webkitgtk-2.14.2.tar.xz +/webkitgtk-2.14.3.tar.xz +/webkitgtk-2.14.4.tar.xz +/webkitgtk-2.14.5.tar.xz +/webkitgtk-2.16.0.tar.xz +/webkitgtk-2.16.1.tar.xz +/webkitgtk-2.16.2.tar.xz +/webkitgtk-2.16.3.tar.xz +/webkitgtk-2.16.4.tar.xz +/webkitgtk-2.16.5.tar.xz +/webkitgtk-2.16.6.tar.xz diff --git a/cloop-big-endians.patch b/cloop-big-endians.patch new file mode 100644 index 0000000..7bb12df --- /dev/null +++ b/cloop-big-endians.patch @@ -0,0 +1,30 @@ +diff -up webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp.b132333 webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp +--- webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp.b132333 2017-02-07 09:05:07.000000000 +0100 ++++ webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp 2017-06-16 10:34:57.859748036 +0200 +@@ -2186,7 +2186,12 @@ void CodeBlock::finishCreation(VM& vm, S + instructions[i + 5].u.watchpointSet = op.watchpointSet; + else if (op.structure) + instructions[i + 5].u.structure.set(vm, this, op.structure); +- instructions[i + 6].u.pointer = reinterpret_cast(op.operand); ++ ++ if (op.type == ClosureVar || op.type == ClosureVarWithVarInjectionChecks || op.type == GlobalProperty || op.type == GlobalPropertyWithVarInjectionChecks || op.type == ModuleVar) ++ instructions[i + 6].u.operand = op.operand; ++ else ++ instructions[i + 6].u.pointer = reinterpret_cast(op.operand); ++ + break; + } + +@@ -2222,7 +2227,11 @@ void CodeBlock::finishCreation(VM& vm, S + op.watchpointSet->invalidate(vm, PutToScopeFireDetail(this, ident)); + } else if (op.structure) + instructions[i + 5].u.structure.set(vm, this, op.structure); +- instructions[i + 6].u.pointer = reinterpret_cast(op.operand); ++ ++ if (op.type == ClosureVar || op.type == ClosureVarWithVarInjectionChecks || op.type == GlobalProperty || op.type == GlobalPropertyWithVarInjectionChecks || op.type == ModuleVar) ++ instructions[i + 6].u.operand = op.operand; ++ else ++ instructions[i + 6].u.pointer = reinterpret_cast(op.operand); + + break; + } diff --git a/fedora-crypto-policy.patch b/fedora-crypto-policy.patch new file mode 100644 index 0000000..cee0eae --- /dev/null +++ b/fedora-crypto-policy.patch @@ -0,0 +1,24 @@ +diff -up webkitgtk-2.17.3/Source/WebKit2/NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp.orig webkitgtk-2.17.3/Source/WebKit2/NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp +--- webkitgtk-2.17.3/Source/WebKit2/NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp.orig 2017-05-22 11:25:38.492770258 +0200 ++++ webkitgtk-2.17.3/Source/WebKit2/NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp 2017-05-22 11:25:57.212665811 +0200 +@@ -39,7 +39,7 @@ int main(int argc, char** argv) + // overwrite this priority string if it's already set by the user. + // https://bugzilla.gnome.org/show_bug.cgi?id=738633 + // WARNING: This needs to be KEPT IN SYNC with WebProcessMain.cpp. +- setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0:!ARCFOUR-128", 0); ++ setenv("G_TLS_GNUTLS_PRIORITY", "@SYSTEM:%COMPAT:!VERS-SSL3.0:!ARCFOUR-128", 0); + + return NetworkProcessMainUnix(argc, argv); + } +diff -up webkitgtk-2.17.3/Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp.orig webkitgtk-2.17.3/Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp +--- webkitgtk-2.17.3/Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp.orig 2017-05-22 11:26:12.941578052 +0200 ++++ webkitgtk-2.17.3/Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp 2017-05-22 11:26:25.051510485 +0200 +@@ -39,7 +39,7 @@ int main(int argc, char** argv) + // overwrite this priority string if it's already set by the user. + // https://bugzilla.gnome.org/show_bug.cgi?id=738633 + // WARNING: This needs to be KEPT IN SYNC with WebProcessMain.cpp. +- setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0:!ARCFOUR-128", 0); ++ setenv("G_TLS_GNUTLS_PRIORITY", "@SYSTEM:%COMPAT:!VERS-SSL3.0:!ARCFOUR-128", 0); + + return WebProcessMainUnix(argc, argv); + } diff --git a/sources b/sources index 9ed4581..042ed15 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -41e018d651413fdbcd4b6480ab1fbd7b webkitgtk-2.12.2.tar.xz +SHA512 (webkitgtk-2.16.6.tar.xz) = bb488d7a60e4d6f9683ac343852a75854ef73e6b5aa093361ffe2d08e71e2f11c19da4447f9937221e518cda784bdacfcfd151f9395605a1957380fbc5b1533b diff --git a/user-agent-branding.patch b/user-agent-branding.patch new file mode 100644 index 0000000..d2dbd86 --- /dev/null +++ b/user-agent-branding.patch @@ -0,0 +1,13 @@ +diff -up webkitgtk-2.14.1/Source/WebCore/platform/gtk/UserAgentGtk.cpp.orig webkitgtk-2.14.1/Source/WebCore/platform/gtk/UserAgentGtk.cpp +--- webkitgtk-2.14.1/Source/WebCore/platform/gtk/UserAgentGtk.cpp.orig 2016-10-12 07:59:25.670057792 +0200 ++++ webkitgtk-2.14.1/Source/WebCore/platform/gtk/UserAgentGtk.cpp 2016-10-12 08:01:06.251878684 +0200 +@@ -85,6 +85,9 @@ static String buildUserAgentString(const UserAgentQuirks& quirks) + else { + uaString.append(platformForUAString()); + uaString.appendLiteral("; "); ++#if defined(USER_AGENT_GTK_DISTRIBUTOR_NAME) ++ uaString.appendLiteral(USER_AGENT_GTK_DISTRIBUTOR_NAME "; "); ++#endif + uaString.append(platformVersionForUAString()); + } + diff --git a/webkitgtk-2.11.5-youtube.patch b/webkitgtk-2.11.5-youtube.patch deleted file mode 100644 index e5a43a3..0000000 --- a/webkitgtk-2.11.5-youtube.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up webkitgtk-2.11.5/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.orig webkitgtk-2.11.5/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp ---- webkitgtk-2.11.5/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.orig 2016-02-09 10:04:54.898217667 +0100 -+++ webkitgtk-2.11.5/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp 2016-02-09 10:13:35.080875509 +0100 -@@ -1734,7 +1734,7 @@ static HashSet error; -+ GUniqueOutPtr stdout_to_discard; -+ GUniqueOutPtr stderr_to_discard; -+ gboolean success = g_spawn_command_line_sync( -+ "rpm -qi gstreamer1-libav", -+ &stdout_to_discard.outPtr(), -+ &stderr_to_discard.outPtr(), -+ &exit_status, -+ &error.outPtr()); -+ if (success && !error && !exit_status) -+ set.add(String::fromUTF8("video/mp4")); -+ - return set; - }(); - return cache; diff --git a/webkitgtk-2.7.90-user-agent-branding.patch b/webkitgtk-2.7.90-user-agent-branding.patch deleted file mode 100644 index 84b5117..0000000 --- a/webkitgtk-2.7.90-user-agent-branding.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 050232bc122d6785fea01d39121c2f93e8dd16f1 Mon Sep 17 00:00:00 2001 -From: Michael Catanzaro -Date: Thu, 26 Feb 2015 16:06:36 -0600 -Subject: [PATCH] Allow branding the user agent - ---- - Source/WebCore/platform/gtk/UserAgentGtk.cpp | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/Source/WebCore/platform/gtk/UserAgentGtk.cpp b/Source/WebCore/platform/gtk/UserAgentGtk.cpp -index 91641dc..727fbaf 100644 ---- a/Source/WebCore/platform/gtk/UserAgentGtk.cpp -+++ b/Source/WebCore/platform/gtk/UserAgentGtk.cpp -@@ -84,7 +84,9 @@ static const char* cpuDescriptionForUAString() - - static const char* platformForUAString() - { --#if PLATFORM(X11) -+#if defined USER_AGENT_GTK_DISTRIBUTOR_NAME -+ return USER_AGENT_GTK_DISTRIBUTOR_NAME; -+#elif PLATFORM(X11) - return "X11"; - #elif OS(WINDOWS) - return ""; --- -2.1.0 - diff --git a/webkitgtk4.spec b/webkitgtk4.spec index 3aadece..092e0fe 100644 --- a/webkitgtk4.spec +++ b/webkitgtk4.spec @@ -6,18 +6,21 @@ cp -p %1 _license_files/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk4 -Version: 2.12.2 -Release: 2%{?dist} +Version: 2.16.6 +Release: 1%{?dist} Summary: GTK+ Web content engine library License: LGPLv2 URL: http://www.webkitgtk.org/ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz -# https://bugs.webkit.org/show_bug.cgi?id=142074 -Patch0: webkitgtk-2.7.90-user-agent-branding.patch -# https://bugs.webkit.org/show_bug.cgi?id=135972 -Patch1: webkitgtk-2.11.5-youtube.patch +# https://bugs.webkit.org/show_bug.cgi?id=162611 +Patch0: user-agent-branding.patch +# https://fedoraproject.org/wiki/Packaging:CryptoPolicies +# https://bugs.webkit.org/show_bug.cgi?id=158785 +Patch1: fedora-crypto-policy.patch +# https://bugs.webkit.org/show_bug.cgi?id=132333 +Patch2: cloop-big-endians.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -53,9 +56,11 @@ BuildRequires: libwayland-server-devel BuildRequires: mesa-libGL-devel BuildRequires: pcre-devel BuildRequires: perl-Switch +BuildRequires: perl-JSON-PP BuildRequires: ruby rubypick rubygems BuildRequires: sqlite-devel BuildRequires: hyphen-devel +BuildRequires: gnutls-devel %ifarch ppc BuildRequires: libatomic %endif @@ -66,9 +71,11 @@ Requires: geoclue2 Obsoletes: libwebkit2gtk < 2.5.0 Provides: libwebkit2gtk = %{version}-%{release} -# We're supposed to specify a version here, but this is pointless because ANGLE -# doesn't do normal releases. WebKit uses git snapshots. -Provides: bundled(angle) +# We're supposed to specify versions here, but these crap Google libs don't do +# normal releases. Accordingly, they're not suitable to be system libs. +Provides: bundled(angle) +Provides: bundled(brotli) +Provides: bundled(woff2) # Require the jsc subpackage Requires: %{name}-jsc%{?_isa} = %{version}-%{release} @@ -89,6 +96,7 @@ This package contains WebKitGTK+ for GTK+ 3. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-jsc%{?_isa} = %{version}-%{release} Requires: %{name}-jsc-devel%{?_isa} = %{version}-%{release} %description devel @@ -120,6 +128,7 @@ files for developing applications that use JavaScript engine from %{name}. %package plugin-process-gtk2 Summary: GTK+ 2 based NPAPI plugins support for %{name} Obsoletes: %{name} < 2.12.0-3 +Requires: %{name}-jsc%{?_isa} = %{version}-%{release} %description plugin-process-gtk2 Support for the GTK+ 2 based NPAPI plugins (such as Adobe Flash) for %{name}. @@ -169,7 +178,7 @@ pushd %{_target_platform} %ifarch s390 s390x ppc %{power64} aarch64 %{mips} -DENABLE_JIT=OFF \ %endif -%ifarch s390 s390x ppc %{power64} %{arm} aarch64 %{mips} +%ifarch s390 s390x ppc %{power64} aarch64 %{mips} -DUSE_SYSTEM_MALLOC=ON \ %endif .. @@ -216,7 +225,7 @@ make %{?_smp_mflags} -C %{_target_platform} %exclude %{_libexecdir}/webkit2gtk-4.0/WebKitPluginProcess2 %files devel -%{_bindir}/MiniBrowser +%{_libexecdir}/webkit2gtk-4.0/MiniBrowser %{_includedir}/webkitgtk-4.0/ %exclude %{_includedir}/webkitgtk-4.0/JavaScriptCore %{_libdir}/libwebkit2gtk-4.0.so @@ -231,7 +240,7 @@ make %{?_smp_mflags} -C %{_target_platform} %{_libdir}/girepository-1.0/JavaScriptCore-4.0.typelib %files jsc-devel -%{_bindir}/jsc +%{_libexecdir}/webkit2gtk-4.0/jsc %dir %{_includedir}/webkitgtk-4.0 %{_includedir}/webkitgtk-4.0/JavaScriptCore/ %{_libdir}/libjavascriptcoregtk-4.0.so @@ -248,6 +257,61 @@ make %{?_smp_mflags} -C %{_target_platform} %{_datadir}/gtk-doc/html/webkitdomgtk-4.0/ %changelog +* Mon Jul 24 2017 Tomas Popela - 2.16.6-1 +- Update to 2.16.6 + +* Tue Jun 27 2017 Tomas Popela - 2.16.5-1 +- Update to 2.16.5 + +* Tue Jun 20 2017 Tomas Popela - 2.16.4-1 +- Update to 2.16.4 +- Fix CLoop crashes on big endian arches + +* Wed May 24 2017 Tomas Popela - 2.16.3-1 +- Update to 2.16.3 + +* Tue May 09 2017 Michael Catanzaro - 2.16.2-1 +- Update to 2.16.2 + +* Thu Apr 06 2017 Tomas Popela - 2.16.1-2 +- Add patch for freezing regression + +* Tue Apr 04 2017 Tomas Popela - 2.16.1-1 +- Update to 2.16.1 + +* Mon Mar 20 2017 Tomas Popela - 2.16.0-1 +- Update to 2.16.0 + +* Wed Feb 15 2017 Tomas Popela - 2.14.5-1 +- Update to 2.14.5 + +* Fri Feb 10 2017 Tomas Popela - 2.14.4-1 +- Update to 2.14.4 + +* Tue Jan 17 2017 Tomas Popela - 2.14.3-1 +- Update to 2.14.3 + +* Thu Nov 03 2016 Tomas Popela - 2.14.2-1 +- Update to 2.14.2 + +* Wed Oct 12 2016 Tomas Popela - 2.14.1-1 +- Update to 2.14.1 + +* Tue Sep 20 2016 Tomas Popela - 2.14.0-1 +- Update to 2.14.0 + +* Mon Sep 05 2016 Tomas Popela - 2.12.5-1 +- Update to 2.12.5 + +* Thu Sep 01 2016 Michael Catanzaro - 2.12.4-2 +- Add patch for network loader regression + +* Wed Aug 24 2016 Tomas Popela - 2.12.4-1 +- Update to 2.12.4 + +* Tue May 24 2016 Tomas Popela - 2.12.3-1 +- Update to 2.12.3 + * Fri Apr 29 2016 Igor Gnatenko - 2.12.2-2 - Remove typelib from jsc-devel because it is in jsc