From 632ad9bf9dd65bd86a2eaab7ab45be9b93abc141 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Feb 2015 18:09:35 +0100 Subject: [PATCH 01/36] Add support for gcc 5.0 Let the package compile with latest glib --- webkitgtk-2.4.8-gcc5.patch | 33 ++++ webkitgtk-2.4.8-gmutexlocker.patch | 281 +++++++++++++++++++++++++++++ webkitgtk3.spec | 13 +- 3 files changed, 326 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.8-gcc5.patch create mode 100644 webkitgtk-2.4.8-gmutexlocker.patch diff --git a/webkitgtk-2.4.8-gcc5.patch b/webkitgtk-2.4.8-gcc5.patch new file mode 100644 index 0000000..73f6855 --- /dev/null +++ b/webkitgtk-2.4.8-gcc5.patch @@ -0,0 +1,33 @@ +diff -up webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4.gcc5 webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4 +--- webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4.gcc5 2015-01-07 10:45:43.000000000 +0100 ++++ webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4 2015-02-18 13:09:57.359888184 +0100 +@@ -87,12 +87,12 @@ AC_SYS_LARGEFILE + c_compiler="unknown" + AC_LANG_PUSH([C]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +-#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 7) ++#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7))) + #error Not a supported GCC compiler + #endif + ])], [c_compiler="gcc"], []) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +-#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3) ++#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3))))) + #error Not a supported Clang compiler + #endif + ])], [c_compiler="clang"], []) +@@ -106,12 +106,12 @@ fi + cxx_compiler="unknown" + AC_LANG_PUSH([C++]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +-#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 7) ++#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7))) + #error Not a supported G++ compiler + #endif + ])], [cxx_compiler="g++"], []) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +-#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3) ++#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3))))) + #error Not a supported Clang++ compiler + #endif + ])], [cxx_compiler="clang++"], []) diff --git a/webkitgtk-2.4.8-gmutexlocker.patch b/webkitgtk-2.4.8-gmutexlocker.patch new file mode 100644 index 0000000..226da3d --- /dev/null +++ b/webkitgtk-2.4.8-gmutexlocker.patch @@ -0,0 +1,281 @@ +diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp +--- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.gmutexlocker 2015-02-18 15:40:21.851816374 +0100 ++++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-02-18 15:45:58.560092191 +0100 +@@ -316,7 +316,7 @@ void MediaPlayerPrivateGStreamerBase::mu + #if USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER_GL) && !USE(COORDINATED_GRAPHICS) + PassRefPtr MediaPlayerPrivateGStreamerBase::updateTexture(TextureMapper* textureMapper) + { +- GMutexLocker lock(m_bufferMutex); ++ WebCore::GMutexLocker lock(m_bufferMutex); + if (!m_buffer) + return nullptr; + +@@ -366,7 +366,7 @@ void MediaPlayerPrivateGStreamerBase::tr + g_return_if_fail(GST_IS_BUFFER(buffer)); + + { +- GMutexLocker lock(m_bufferMutex); ++ WebCore::GMutexLocker lock(m_bufferMutex); + gst_buffer_replace(&m_buffer, buffer); + } + +@@ -398,7 +398,7 @@ void MediaPlayerPrivateGStreamerBase::pa + if (!m_player->visible()) + return; + +- GMutexLocker lock(m_bufferMutex); ++ WebCore::GMutexLocker lock(m_bufferMutex); + if (!m_buffer) + return; + +diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp +diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp +--- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp.gmutexlocker 2015-02-18 15:16:11.995228731 +0100 ++++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp 2015-02-18 15:45:42.686843477 +0100 +@@ -118,7 +118,7 @@ static gboolean webkitVideoSinkTimeoutCa + WebKitVideoSink* sink = reinterpret_cast(data); + WebKitVideoSinkPrivate* priv = sink->priv; + +- GMutexLocker lock(priv->bufferMutex); ++ WebCore::GMutexLocker lock(priv->bufferMutex); + GstBuffer* buffer = priv->buffer; + priv->buffer = 0; + priv->timeoutId = 0; +@@ -140,7 +140,7 @@ static GstFlowReturn webkitVideoSinkRend + WebKitVideoSink* sink = WEBKIT_VIDEO_SINK(baseSink); + WebKitVideoSinkPrivate* priv = sink->priv; + +- GMutexLocker lock(priv->bufferMutex); ++ WebCore::GMutexLocker lock(priv->bufferMutex); + + if (priv->unlocked) + return GST_FLOW_OK; +@@ -279,7 +279,7 @@ static void webkitVideoSinkGetProperty(G + + static void unlockBufferMutex(WebKitVideoSinkPrivate* priv) + { +- GMutexLocker lock(priv->bufferMutex); ++ WebCore::GMutexLocker lock(priv->bufferMutex); + + if (priv->buffer) { + gst_buffer_unref(priv->buffer); +@@ -305,7 +305,7 @@ static gboolean webkitVideoSinkUnlockSto + WebKitVideoSinkPrivate* priv = WEBKIT_VIDEO_SINK(baseSink)->priv; + + { +- GMutexLocker lock(priv->bufferMutex); ++ WebCore::GMutexLocker lock(priv->bufferMutex); + priv->unlocked = false; + } + +@@ -330,7 +330,7 @@ static gboolean webkitVideoSinkStart(Gst + { + WebKitVideoSinkPrivate* priv = WEBKIT_VIDEO_SINK(baseSink)->priv; + +- GMutexLocker lock(priv->bufferMutex); ++ WebCore::GMutexLocker lock(priv->bufferMutex); + priv->unlocked = false; + return TRUE; + } +diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp +--- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp.gmutexlocker 2015-02-18 15:16:40.954678407 +0100 ++++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2015-02-18 15:45:19.567481225 +0100 +@@ -346,7 +346,7 @@ static void webKitWebSrcSetProperty(GObj + + switch (propID) { + case PROP_IRADIO_MODE: { +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + priv->iradioMode = g_value_get_boolean(value); + break; + } +@@ -364,7 +364,7 @@ static void webKitWebSrcGetProperty(GObj + WebKitWebSrc* src = WEBKIT_WEB_SRC(object); + WebKitWebSrcPrivate* priv = src->priv; + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + switch (propID) { + case PROP_IRADIO_MODE: + g_value_set_boolean(value, priv->iradioMode); +@@ -417,7 +417,7 @@ static gboolean webKitWebSrcStop(WebKitW + + ASSERT(isMainThread()); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + + bool seeking = priv->seekID; + +@@ -476,7 +476,7 @@ static gboolean webKitWebSrcStart(WebKit + + ASSERT(isMainThread()); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + + priv->startID = 0; + priv->corsAccessCheck = CORSNoCheck; +@@ -573,7 +573,7 @@ static GstStateChangeReturn webKitWebSrc + return ret; + } + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + switch (transition) { + case GST_STATE_CHANGE_READY_TO_PAUSED: + GST_DEBUG_OBJECT(src, "READY->PAUSED"); +@@ -604,7 +604,7 @@ static gboolean webKitWebSrcQueryWithPar + gst_query_parse_duration(query, &format, NULL); + + GST_DEBUG_OBJECT(src, "duration query in format %s", gst_format_get_name(format)); +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + if (format == GST_FORMAT_BYTES && src->priv->size > 0) { + gst_query_set_duration(query, format, src->priv->size); + result = TRUE; +@@ -612,7 +612,7 @@ static gboolean webKitWebSrcQueryWithPar + break; + } + case GST_QUERY_URI: { +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + gst_query_set_uri(query, src->priv->uri); + result = TRUE; + break; +@@ -653,7 +653,7 @@ static gchar* webKitWebSrcGetUri(GstURIH + WebKitWebSrc* src = WEBKIT_WEB_SRC(handler); + gchar* ret; + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + ret = g_strdup(src->priv->uri); + return ret; + } +@@ -668,7 +668,7 @@ static gboolean webKitWebSrcSetUri(GstUR + return FALSE; + } + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + + g_free(priv->uri); + priv->uri = 0; +@@ -704,7 +704,7 @@ static gboolean webKitWebSrcNeedDataMain + + ASSERT(isMainThread()); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + // already stopped + if (!priv->needDataID) + return FALSE; +@@ -725,7 +725,7 @@ static void webKitWebSrcNeedDataCb(GstAp + + GST_DEBUG_OBJECT(src, "Need more data: %u", length); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + if (priv->needDataID || !priv->paused) { + return; + } +@@ -739,7 +739,7 @@ static gboolean webKitWebSrcEnoughDataMa + + ASSERT(isMainThread()); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + // already stopped + if (!priv->enoughDataID) + return FALSE; +@@ -760,7 +760,7 @@ static void webKitWebSrcEnoughDataCb(Gst + + GST_DEBUG_OBJECT(src, "Have enough data"); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + if (priv->enoughDataID || priv->paused) { + return; + } +@@ -774,7 +774,7 @@ static gboolean webKitWebSrcSeekMainCb(W + + ASSERT(isMainThread()); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + // already stopped + if (!priv->seekID) + return FALSE; +@@ -792,7 +792,7 @@ static gboolean webKitWebSrcSeekDataCb(G + WebKitWebSrcPrivate* priv = src->priv; + + GST_DEBUG_OBJECT(src, "Seeking to offset: %" G_GUINT64_FORMAT, offset); +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + if (offset == priv->offset && priv->requestedOffset == priv->offset) + return TRUE; + +@@ -811,7 +811,7 @@ static gboolean webKitWebSrcSeekDataCb(G + void webKitWebSrcSetMediaPlayer(WebKitWebSrc* src, WebCore::MediaPlayer* player) + { + ASSERT(player); +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + src->priv->player = player; + } + +@@ -841,7 +841,7 @@ char* StreamingClient::createReadBuffer( + + mapGstBuffer(buffer); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + priv->buffer = adoptGRef(buffer); + locker.unlock(); + +@@ -867,7 +867,7 @@ void StreamingClient::handleResponseRece + return; + } + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + + priv->corsAccessCheck = corsAccessCheck; + +@@ -966,7 +966,7 @@ void StreamingClient::handleDataReceived + WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src); + WebKitWebSrcPrivate* priv = src->priv; + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + + GST_LOG_OBJECT(src, "Have %lld bytes of data", priv->buffer ? static_cast(gst_buffer_get_size(priv->buffer.get())) : length); + +@@ -1035,7 +1035,7 @@ void StreamingClient::handleNotifyFinish + + GST_DEBUG_OBJECT(src, "Have EOS"); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + if (!priv->seekID) { + locker.unlock(); + gst_app_src_end_of_stream(priv->appsrc); +@@ -1194,7 +1194,7 @@ void ResourceHandleStreamingClient::wasB + + GST_ERROR_OBJECT(src, "Request was blocked"); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + uri.reset(g_strdup(src->priv->uri)); + locker.unlock(); + +@@ -1208,7 +1208,7 @@ void ResourceHandleStreamingClient::cann + + GST_ERROR_OBJECT(src, "Cannot show URL"); + +- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); ++ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); + uri.reset(g_strdup(src->priv->uri)); + locker.unlock(); + +diff -up webkitgtk-2.4.8/Source/WTF/wtf/gobject/GMutexLocker.h.gmutexlocker webkitgtk-2.4.8/Source/WTF/wtf/gobject/GMutexLocker.h diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2416773..2539bf3 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -26,6 +26,10 @@ Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=140241 Patch5: webkitgtk-2.4.8-plugin_none.patch +# https://bugs.webkit.org/show_bug.cgi?id=126324 +Patch6: webkitgtk-2.4.8-gcc5.patch +# https://bugs.webkit.org/show_bug.cgi?id=141381 +Patch7: webkitgtk-2.4.8-gmutexlocker.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -94,6 +98,8 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix %patch5 -p1 -b .plugin_none +%patch6 -p1 -b .gcc5 +%patch7 -p1 -b .gmutex_locker %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -103,6 +109,7 @@ This package contains developer documentation for %{name}. # Remove when 2.4.9 will be released # Needed for https://bugs.webkit.org/show_bug.cgi?id=140241 +# Regenerate configure to pick up the gcc 5.0 changes autoreconf -v %build @@ -207,6 +214,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Feb 18 2015 Tomas Popela - 2.4.8-3 +- Add support for gcc 5.0 +- Let the package compile with latest glib + * Mon Jan 26 2015 David Tardon - 2.4.8-2 - rebuild for ICU 54.1 From cff315d44b062c19a4952071a5186571024c30e0 Mon Sep 17 00:00:00 2001 From: Till Maas Date: Sat, 21 Feb 2015 22:28:10 +0100 Subject: [PATCH 02/36] Rebuilt for Fedora 23 Change https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code --- webkitgtk3.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2539bf3..e60b0e1 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 3%{?dist} +Release: 4%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -214,6 +214,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Sat Feb 21 2015 Till Maas - 2.4.8-4 +- Rebuilt for Fedora 23 Change + https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code + * Wed Feb 18 2015 Tomas Popela - 2.4.8-3 - Add support for gcc 5.0 - Let the package compile with latest glib From 2fcf16f8ece082ff3c447d5c382bd88c20c565c7 Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Fri, 27 Feb 2015 14:45:27 -0600 Subject: [PATCH 03/36] Add Fedora branding to the user agent --- webkitgtk-2.4.8-user-agent.patch | 27 +++++++++++++++++++++++++++ webkitgtk3.spec | 12 +++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.8-user-agent.patch diff --git a/webkitgtk-2.4.8-user-agent.patch b/webkitgtk-2.4.8-user-agent.patch new file mode 100644 index 0000000..84b5117 --- /dev/null +++ b/webkitgtk-2.4.8-user-agent.patch @@ -0,0 +1,27 @@ +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/webkitgtk3.spec b/webkitgtk3.spec index e60b0e1..46a2782 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 4%{?dist} +Release: 5%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -30,6 +30,8 @@ Patch5: webkitgtk-2.4.8-plugin_none.patch Patch6: webkitgtk-2.4.8-gcc5.patch # https://bugs.webkit.org/show_bug.cgi?id=141381 Patch7: webkitgtk-2.4.8-gmutexlocker.patch +# https://bugs.webkit.org/show_bug.cgi?id=142074 +Patch8: webkitgtk-2.4.8-user-agent.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -100,6 +102,7 @@ This package contains developer documentation for %{name}. %patch5 -p1 -b .plugin_none %patch6 -p1 -b .gcc5 %patch7 -p1 -b .gmutex_locker +%patch8 -p1 -b .user_agent %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -130,6 +133,10 @@ autoreconf -v %global optflags %{optflags} -DENABLE_YARR_JIT=0 %endif +%if 0%{?fedora} +%global optflags %{optflags} -DUSER_AGENT_GTK_DISTRIBUTOR_NAME=\'\\"Fedora\\"\' +%endif + %configure \ --with-gtk=3.0 \ --disable-webkit2 \ @@ -214,6 +221,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Feb 27 2015 Michael Catanzaro - 2.4.8-5 +- Add Fedora branding to the user agent + * Sat Feb 21 2015 Till Maas - 2.4.8-4 - Rebuilt for Fedora 23 Change https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code From 9ec7d79f874d10c7efe3f568814952f9216f3355 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 10 Mar 2015 07:27:49 +0100 Subject: [PATCH 04/36] Backport fix for use-after-free when destroying frame --- webkitgtk-2.4.8-g_object_destroyed.patch | 23 +++++++++++++++++++++++ webkitgtk3.spec | 8 +++++++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.8-g_object_destroyed.patch diff --git a/webkitgtk-2.4.8-g_object_destroyed.patch b/webkitgtk-2.4.8-g_object_destroyed.patch new file mode 100644 index 0000000..479f1de --- /dev/null +++ b/webkitgtk-2.4.8-g_object_destroyed.patch @@ -0,0 +1,23 @@ +diff --git a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp +index 76cf279..9d1b881 100644 +--- a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp ++++ b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp +@@ -52,12 +52,13 @@ void GObjectEventListener::gobjectDestroyed() + { + ASSERT(m_coreTarget); + +- // We must set m_coreTarget to null, because removeEventListener +- // may call the destructor as a side effect and we must be in the +- // proper state to prevent g_object_weak_unref. +- EventTarget* target = m_coreTarget; ++ // Protect 'this' class in case the 'm_coreTarget' holds the last reference, ++ // which may cause, inside removeEventListener(), free of this object ++ // and later use-after-free with the m_handler = 0; assignment. ++ RefPtr protect(this); ++ ++ m_coreTarget->removeEventListener(m_domEventName.data(), this, m_capture); + m_coreTarget = 0; +- target->removeEventListener(m_domEventName.data(), this, m_capture); + m_handler = 0; + } + diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 46a2782..c96b968 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 5%{?dist} +Release: 6%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -32,6 +32,8 @@ Patch6: webkitgtk-2.4.8-gcc5.patch Patch7: webkitgtk-2.4.8-gmutexlocker.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch8: webkitgtk-2.4.8-user-agent.patch +#https://bugs.webkit.org/show_bug.cgi?id=127474 +Patch9: webkitgtk-2.4.8-g_object_destroyed.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -103,6 +105,7 @@ This package contains developer documentation for %{name}. %patch6 -p1 -b .gcc5 %patch7 -p1 -b .gmutex_locker %patch8 -p1 -b .user_agent +%patch9 -p1 -b .g_object_destroyed %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -221,6 +224,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Mar 10 2015 Tomas Popela - 2.4.8-6 +- Backport fix for use-after-free when destroying frame + * Fri Feb 27 2015 Michael Catanzaro - 2.4.8-5 - Add Fedora branding to the user agent From cc1f80644e51c64135ede719c7c14753d73dd1ef Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 17 Mar 2015 13:26:28 -0500 Subject: [PATCH 05/36] Backport fix for late certificate validation --- webkitgtk3.spec | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index c96b968..2338f6a 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -34,6 +34,8 @@ Patch7: webkitgtk-2.4.8-gmutexlocker.patch Patch8: webkitgtk-2.4.8-user-agent.patch #https://bugs.webkit.org/show_bug.cgi?id=127474 Patch9: webkitgtk-2.4.8-g_object_destroyed.patch +# http://trac.webkit.org/changeset/181074/ +Patch10: webkitgtk-2.4.8-late-certificate-validation.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -106,6 +108,7 @@ This package contains developer documentation for %{name}. %patch7 -p1 -b .gmutex_locker %patch8 -p1 -b .user_agent %patch9 -p1 -b .g_object_destroyed +%patch10 -p1 -b .certificate_validation %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -224,6 +227,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 +- Backport fix for late certificate validation + * Tue Mar 10 2015 Tomas Popela - 2.4.8-6 - Backport fix for use-after-free when destroying frame From c27e97ddd33cc41648c8d3c508e1ab131a3501ec Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 17 Mar 2015 13:27:37 -0500 Subject: [PATCH 06/36] Backport fix for late certificate validation --- webkitgtk3.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2338f6a..d9d8340 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 6%{?dist} +Release: 7%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries From 697baed4b1bc800db34e303207605e8a26ac53e8 Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 17 Mar 2015 13:32:01 -0500 Subject: [PATCH 07/36] Backport fix for late certificate validation --- ...tk-2.4.8-late-certificate-validation.patch | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 webkitgtk-2.4.8-late-certificate-validation.patch diff --git a/webkitgtk-2.4.8-late-certificate-validation.patch b/webkitgtk-2.4.8-late-certificate-validation.patch new file mode 100644 index 0000000..6aa0437 --- /dev/null +++ b/webkitgtk-2.4.8-late-certificate-validation.patch @@ -0,0 +1,32 @@ +--- a/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp ++++ b/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp +@@ -331,5 +331,5 @@ + } + +-static void gotHeadersCallback(SoupMessage* message, gpointer data) ++static void tlsErrorsChangedCallback(SoupMessage* message, GParamSpec*, gpointer data) + { + ResourceHandle* handle = static_cast(data); +@@ -337,8 +337,13 @@ + return; + +- if (handleUnignoredTLSErrors(handle, message)) { ++ if (handleUnignoredTLSErrors(handle, message)) + handle->cancel(); +- return; +- } ++} ++ ++static void gotHeadersCallback(SoupMessage* message, gpointer data) ++{ ++ ResourceHandle* handle = static_cast(data); ++ if (!handle || handle->cancelledOrClientless()) ++ return; + + ResourceHandleInternal* d = handle->getInternal(); +@@ -935,4 +940,5 @@ + soup_message_headers_set_content_length(soupMessage->request_headers, 0); + ++ g_signal_connect(d->m_soupMessage.get(), "notify::tls-errors", G_CALLBACK(tlsErrorsChangedCallback), handle); + g_signal_connect(d->m_soupMessage.get(), "got-headers", G_CALLBACK(gotHeadersCallback), handle); + g_signal_connect(d->m_soupMessage.get(), "wrote-body-data", G_CALLBACK(wroteBodyDataCallback), handle); From d924530f009cc4d0d72167d8760f4775fc87ff18 Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 17 Mar 2015 14:50:48 -0500 Subject: [PATCH 08/36] Backport fix for late certificate validation --- webkitgtk3.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index d9d8340..a60bb82 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -34,7 +34,7 @@ Patch7: webkitgtk-2.4.8-gmutexlocker.patch Patch8: webkitgtk-2.4.8-user-agent.patch #https://bugs.webkit.org/show_bug.cgi?id=127474 Patch9: webkitgtk-2.4.8-g_object_destroyed.patch -# http://trac.webkit.org/changeset/181074/ +# http://seclists.org/oss-sec/2015/q1/871 Patch10: webkitgtk-2.4.8-late-certificate-validation.patch BuildRequires: at-spi2-core-devel From 7433f334cc84866af5ef0b2c25ead931e6e603ea Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 17 Mar 2015 14:53:48 -0500 Subject: [PATCH 09/36] Remove the fix for late certificate validation because we use --disable-webkit2 --- ...tk-2.4.8-late-certificate-validation.patch | 32 ------------------- webkitgtk3.spec | 8 ++--- 2 files changed, 4 insertions(+), 36 deletions(-) delete mode 100644 webkitgtk-2.4.8-late-certificate-validation.patch diff --git a/webkitgtk-2.4.8-late-certificate-validation.patch b/webkitgtk-2.4.8-late-certificate-validation.patch deleted file mode 100644 index 6aa0437..0000000 --- a/webkitgtk-2.4.8-late-certificate-validation.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- a/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp -+++ b/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp -@@ -331,5 +331,5 @@ - } - --static void gotHeadersCallback(SoupMessage* message, gpointer data) -+static void tlsErrorsChangedCallback(SoupMessage* message, GParamSpec*, gpointer data) - { - ResourceHandle* handle = static_cast(data); -@@ -337,8 +337,13 @@ - return; - -- if (handleUnignoredTLSErrors(handle, message)) { -+ if (handleUnignoredTLSErrors(handle, message)) - handle->cancel(); -- return; -- } -+} -+ -+static void gotHeadersCallback(SoupMessage* message, gpointer data) -+{ -+ ResourceHandle* handle = static_cast(data); -+ if (!handle || handle->cancelledOrClientless()) -+ return; - - ResourceHandleInternal* d = handle->getInternal(); -@@ -935,4 +940,5 @@ - soup_message_headers_set_content_length(soupMessage->request_headers, 0); - -+ g_signal_connect(d->m_soupMessage.get(), "notify::tls-errors", G_CALLBACK(tlsErrorsChangedCallback), handle); - g_signal_connect(d->m_soupMessage.get(), "got-headers", G_CALLBACK(gotHeadersCallback), handle); - g_signal_connect(d->m_soupMessage.get(), "wrote-body-data", G_CALLBACK(wroteBodyDataCallback), handle); diff --git a/webkitgtk3.spec b/webkitgtk3.spec index a60bb82..12635ee 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 7%{?dist} +Release: 8%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -34,8 +34,6 @@ Patch7: webkitgtk-2.4.8-gmutexlocker.patch Patch8: webkitgtk-2.4.8-user-agent.patch #https://bugs.webkit.org/show_bug.cgi?id=127474 Patch9: webkitgtk-2.4.8-g_object_destroyed.patch -# http://seclists.org/oss-sec/2015/q1/871 -Patch10: webkitgtk-2.4.8-late-certificate-validation.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -108,7 +106,6 @@ This package contains developer documentation for %{name}. %patch7 -p1 -b .gmutex_locker %patch8 -p1 -b .user_agent %patch9 -p1 -b .g_object_destroyed -%patch10 -p1 -b .certificate_validation %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -227,6 +224,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 +- Remove the fix for late certificate validation because we use --disable-webkit2 + * Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 - Backport fix for late certificate validation From aaa7b5adfc7e1d2b9e167b968e18d7fa2ba97732 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Sat, 2 May 2015 22:29:17 +0200 Subject: [PATCH 10/36] Rebuilt for GCC 5 C++11 ABI change --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 12635ee..d221a88 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 8%{?dist} +Release: 9%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -224,6 +224,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Sat May 02 2015 Kalev Lember - 2.4.8-9 +- Rebuilt for GCC 5 C++11 ABI change + * Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 - Remove the fix for late certificate validation because we use --disable-webkit2 From f13611ff0e60a07be75a656f704bbeb5144b43b1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 20 May 2015 13:54:24 +0200 Subject: [PATCH 11/36] Update to 2.4.9 --- sources | 2 +- webkitgtk-2.4.8-g_object_destroyed.patch | 23 -- webkitgtk-2.4.8-gcc5.patch | 33 --- webkitgtk-2.4.8-gmutexlocker.patch | 281 ----------------------- webkitgtk-2.4.8-plugin_none.patch | 27 --- webkitgtk-aarch64.patch | 33 ++- webkitgtk3.spec | 28 +-- 7 files changed, 24 insertions(+), 403 deletions(-) delete mode 100644 webkitgtk-2.4.8-g_object_destroyed.patch delete mode 100644 webkitgtk-2.4.8-gcc5.patch delete mode 100644 webkitgtk-2.4.8-gmutexlocker.patch delete mode 100644 webkitgtk-2.4.8-plugin_none.patch diff --git a/sources b/sources index a69c671..1f8355d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -bcdcef8e1ba28dbd5bb05f86c79f76b8 webkitgtk-2.4.8.tar.xz +312fd29eb7f5970660c6a64b8bf8420e webkitgtk-2.4.9.tar.xz diff --git a/webkitgtk-2.4.8-g_object_destroyed.patch b/webkitgtk-2.4.8-g_object_destroyed.patch deleted file mode 100644 index 479f1de..0000000 --- a/webkitgtk-2.4.8-g_object_destroyed.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -index 76cf279..9d1b881 100644 ---- a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -+++ b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -@@ -52,12 +52,13 @@ void GObjectEventListener::gobjectDestroyed() - { - ASSERT(m_coreTarget); - -- // We must set m_coreTarget to null, because removeEventListener -- // may call the destructor as a side effect and we must be in the -- // proper state to prevent g_object_weak_unref. -- EventTarget* target = m_coreTarget; -+ // Protect 'this' class in case the 'm_coreTarget' holds the last reference, -+ // which may cause, inside removeEventListener(), free of this object -+ // and later use-after-free with the m_handler = 0; assignment. -+ RefPtr protect(this); -+ -+ m_coreTarget->removeEventListener(m_domEventName.data(), this, m_capture); - m_coreTarget = 0; -- target->removeEventListener(m_domEventName.data(), this, m_capture); - m_handler = 0; - } - diff --git a/webkitgtk-2.4.8-gcc5.patch b/webkitgtk-2.4.8-gcc5.patch deleted file mode 100644 index 73f6855..0000000 --- a/webkitgtk-2.4.8-gcc5.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4.gcc5 webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4 ---- webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4.gcc5 2015-01-07 10:45:43.000000000 +0100 -+++ webkitgtk-2.4.8/Source/autotools/CheckSystemAndBasicDependencies.m4 2015-02-18 13:09:57.359888184 +0100 -@@ -87,12 +87,12 @@ AC_SYS_LARGEFILE - c_compiler="unknown" - AC_LANG_PUSH([C]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ --#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 7) -+#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7))) - #error Not a supported GCC compiler - #endif - ])], [c_compiler="gcc"], []) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ --#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3) -+#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3))))) - #error Not a supported Clang compiler - #endif - ])], [c_compiler="clang"], []) -@@ -106,12 +106,12 @@ fi - cxx_compiler="unknown" - AC_LANG_PUSH([C++]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ --#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 7) -+#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7))) - #error Not a supported G++ compiler - #endif - ])], [cxx_compiler="g++"], []) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ --#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3) -+#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3))))) - #error Not a supported Clang++ compiler - #endif - ])], [cxx_compiler="clang++"], []) diff --git a/webkitgtk-2.4.8-gmutexlocker.patch b/webkitgtk-2.4.8-gmutexlocker.patch deleted file mode 100644 index 226da3d..0000000 --- a/webkitgtk-2.4.8-gmutexlocker.patch +++ /dev/null @@ -1,281 +0,0 @@ -diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp ---- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.gmutexlocker 2015-02-18 15:40:21.851816374 +0100 -+++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-02-18 15:45:58.560092191 +0100 -@@ -316,7 +316,7 @@ void MediaPlayerPrivateGStreamerBase::mu - #if USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER_GL) && !USE(COORDINATED_GRAPHICS) - PassRefPtr MediaPlayerPrivateGStreamerBase::updateTexture(TextureMapper* textureMapper) - { -- GMutexLocker lock(m_bufferMutex); -+ WebCore::GMutexLocker lock(m_bufferMutex); - if (!m_buffer) - return nullptr; - -@@ -366,7 +366,7 @@ void MediaPlayerPrivateGStreamerBase::tr - g_return_if_fail(GST_IS_BUFFER(buffer)); - - { -- GMutexLocker lock(m_bufferMutex); -+ WebCore::GMutexLocker lock(m_bufferMutex); - gst_buffer_replace(&m_buffer, buffer); - } - -@@ -398,7 +398,7 @@ void MediaPlayerPrivateGStreamerBase::pa - if (!m_player->visible()) - return; - -- GMutexLocker lock(m_bufferMutex); -+ WebCore::GMutexLocker lock(m_bufferMutex); - if (!m_buffer) - return; - -diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp -diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp ---- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp.gmutexlocker 2015-02-18 15:16:11.995228731 +0100 -+++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp 2015-02-18 15:45:42.686843477 +0100 -@@ -118,7 +118,7 @@ static gboolean webkitVideoSinkTimeoutCa - WebKitVideoSink* sink = reinterpret_cast(data); - WebKitVideoSinkPrivate* priv = sink->priv; - -- GMutexLocker lock(priv->bufferMutex); -+ WebCore::GMutexLocker lock(priv->bufferMutex); - GstBuffer* buffer = priv->buffer; - priv->buffer = 0; - priv->timeoutId = 0; -@@ -140,7 +140,7 @@ static GstFlowReturn webkitVideoSinkRend - WebKitVideoSink* sink = WEBKIT_VIDEO_SINK(baseSink); - WebKitVideoSinkPrivate* priv = sink->priv; - -- GMutexLocker lock(priv->bufferMutex); -+ WebCore::GMutexLocker lock(priv->bufferMutex); - - if (priv->unlocked) - return GST_FLOW_OK; -@@ -279,7 +279,7 @@ static void webkitVideoSinkGetProperty(G - - static void unlockBufferMutex(WebKitVideoSinkPrivate* priv) - { -- GMutexLocker lock(priv->bufferMutex); -+ WebCore::GMutexLocker lock(priv->bufferMutex); - - if (priv->buffer) { - gst_buffer_unref(priv->buffer); -@@ -305,7 +305,7 @@ static gboolean webkitVideoSinkUnlockSto - WebKitVideoSinkPrivate* priv = WEBKIT_VIDEO_SINK(baseSink)->priv; - - { -- GMutexLocker lock(priv->bufferMutex); -+ WebCore::GMutexLocker lock(priv->bufferMutex); - priv->unlocked = false; - } - -@@ -330,7 +330,7 @@ static gboolean webkitVideoSinkStart(Gst - { - WebKitVideoSinkPrivate* priv = WEBKIT_VIDEO_SINK(baseSink)->priv; - -- GMutexLocker lock(priv->bufferMutex); -+ WebCore::GMutexLocker lock(priv->bufferMutex); - priv->unlocked = false; - return TRUE; - } -diff -up webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp.gmutexlocker webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp ---- webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp.gmutexlocker 2015-02-18 15:16:40.954678407 +0100 -+++ webkitgtk-2.4.8/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2015-02-18 15:45:19.567481225 +0100 -@@ -346,7 +346,7 @@ static void webKitWebSrcSetProperty(GObj - - switch (propID) { - case PROP_IRADIO_MODE: { -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - priv->iradioMode = g_value_get_boolean(value); - break; - } -@@ -364,7 +364,7 @@ static void webKitWebSrcGetProperty(GObj - WebKitWebSrc* src = WEBKIT_WEB_SRC(object); - WebKitWebSrcPrivate* priv = src->priv; - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - switch (propID) { - case PROP_IRADIO_MODE: - g_value_set_boolean(value, priv->iradioMode); -@@ -417,7 +417,7 @@ static gboolean webKitWebSrcStop(WebKitW - - ASSERT(isMainThread()); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - - bool seeking = priv->seekID; - -@@ -476,7 +476,7 @@ static gboolean webKitWebSrcStart(WebKit - - ASSERT(isMainThread()); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - - priv->startID = 0; - priv->corsAccessCheck = CORSNoCheck; -@@ -573,7 +573,7 @@ static GstStateChangeReturn webKitWebSrc - return ret; - } - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - switch (transition) { - case GST_STATE_CHANGE_READY_TO_PAUSED: - GST_DEBUG_OBJECT(src, "READY->PAUSED"); -@@ -604,7 +604,7 @@ static gboolean webKitWebSrcQueryWithPar - gst_query_parse_duration(query, &format, NULL); - - GST_DEBUG_OBJECT(src, "duration query in format %s", gst_format_get_name(format)); -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - if (format == GST_FORMAT_BYTES && src->priv->size > 0) { - gst_query_set_duration(query, format, src->priv->size); - result = TRUE; -@@ -612,7 +612,7 @@ static gboolean webKitWebSrcQueryWithPar - break; - } - case GST_QUERY_URI: { -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - gst_query_set_uri(query, src->priv->uri); - result = TRUE; - break; -@@ -653,7 +653,7 @@ static gchar* webKitWebSrcGetUri(GstURIH - WebKitWebSrc* src = WEBKIT_WEB_SRC(handler); - gchar* ret; - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - ret = g_strdup(src->priv->uri); - return ret; - } -@@ -668,7 +668,7 @@ static gboolean webKitWebSrcSetUri(GstUR - return FALSE; - } - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - - g_free(priv->uri); - priv->uri = 0; -@@ -704,7 +704,7 @@ static gboolean webKitWebSrcNeedDataMain - - ASSERT(isMainThread()); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - // already stopped - if (!priv->needDataID) - return FALSE; -@@ -725,7 +725,7 @@ static void webKitWebSrcNeedDataCb(GstAp - - GST_DEBUG_OBJECT(src, "Need more data: %u", length); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - if (priv->needDataID || !priv->paused) { - return; - } -@@ -739,7 +739,7 @@ static gboolean webKitWebSrcEnoughDataMa - - ASSERT(isMainThread()); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - // already stopped - if (!priv->enoughDataID) - return FALSE; -@@ -760,7 +760,7 @@ static void webKitWebSrcEnoughDataCb(Gst - - GST_DEBUG_OBJECT(src, "Have enough data"); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - if (priv->enoughDataID || priv->paused) { - return; - } -@@ -774,7 +774,7 @@ static gboolean webKitWebSrcSeekMainCb(W - - ASSERT(isMainThread()); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - // already stopped - if (!priv->seekID) - return FALSE; -@@ -792,7 +792,7 @@ static gboolean webKitWebSrcSeekDataCb(G - WebKitWebSrcPrivate* priv = src->priv; - - GST_DEBUG_OBJECT(src, "Seeking to offset: %" G_GUINT64_FORMAT, offset); -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - if (offset == priv->offset && priv->requestedOffset == priv->offset) - return TRUE; - -@@ -811,7 +811,7 @@ static gboolean webKitWebSrcSeekDataCb(G - void webKitWebSrcSetMediaPlayer(WebKitWebSrc* src, WebCore::MediaPlayer* player) - { - ASSERT(player); -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - src->priv->player = player; - } - -@@ -841,7 +841,7 @@ char* StreamingClient::createReadBuffer( - - mapGstBuffer(buffer); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - priv->buffer = adoptGRef(buffer); - locker.unlock(); - -@@ -867,7 +867,7 @@ void StreamingClient::handleResponseRece - return; - } - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - - priv->corsAccessCheck = corsAccessCheck; - -@@ -966,7 +966,7 @@ void StreamingClient::handleDataReceived - WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src); - WebKitWebSrcPrivate* priv = src->priv; - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - - GST_LOG_OBJECT(src, "Have %lld bytes of data", priv->buffer ? static_cast(gst_buffer_get_size(priv->buffer.get())) : length); - -@@ -1035,7 +1035,7 @@ void StreamingClient::handleNotifyFinish - - GST_DEBUG_OBJECT(src, "Have EOS"); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - if (!priv->seekID) { - locker.unlock(); - gst_app_src_end_of_stream(priv->appsrc); -@@ -1194,7 +1194,7 @@ void ResourceHandleStreamingClient::wasB - - GST_ERROR_OBJECT(src, "Request was blocked"); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - uri.reset(g_strdup(src->priv->uri)); - locker.unlock(); - -@@ -1208,7 +1208,7 @@ void ResourceHandleStreamingClient::cann - - GST_ERROR_OBJECT(src, "Cannot show URL"); - -- GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); -+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src)); - uri.reset(g_strdup(src->priv->uri)); - locker.unlock(); - -diff -up webkitgtk-2.4.8/Source/WTF/wtf/gobject/GMutexLocker.h.gmutexlocker webkitgtk-2.4.8/Source/WTF/wtf/gobject/GMutexLocker.h diff --git a/webkitgtk-2.4.8-plugin_none.patch b/webkitgtk-2.4.8-plugin_none.patch deleted file mode 100644 index 19ae387..0000000 --- a/webkitgtk-2.4.8-plugin_none.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am ---- webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none 2015-01-08 11:08:03.261853581 +0100 -+++ webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am 2015-01-08 11:08:53.650619552 +0100 -@@ -6254,9 +6254,11 @@ endif # END USE_GLX - endif # END TARGET_X11 - - if TARGET_WAYLAND -+if ENABLE_WEBKIT2 - webcore_sources += \ - Source/WebCore/plugins/PluginPackageNone.cpp \ - Source/WebCore/plugins/PluginViewNone.cpp -+endif # END ENABLE_WEBKIT2 - endif # END TARGET_WAYLAND - - if TARGET_X11_OR_WAYLAND -@@ -6305,9 +6307,11 @@ webcoregtk_sources += \ - endif # END TARGET_WIN32 - - if TARGET_QUARTZ -+if ENABLE_WEBKIT2 - webcore_sources += \ - Source/WebCore/plugins/PluginPackageNone.cpp \ - Source/WebCore/plugins/PluginViewNone.cpp -+endif # END ENABLE_WEBKIT2 - platformgtk_sources += \ - Source/WebCore/platform/cairo/WidgetBackingStoreCairo.h \ - Source/WebCore/platform/cairo/WidgetBackingStoreCairo.cpp diff --git a/webkitgtk-aarch64.patch b/webkitgtk-aarch64.patch index 7272bc1..6a82264 100644 --- a/webkitgtk-aarch64.patch +++ b/webkitgtk-aarch64.patch @@ -1,19 +1,19 @@ -diff -up webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h ---- webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 2014-09-02 11:39:15.782812173 +0200 -+++ webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h 2014-09-02 11:41:23.022637099 +0200 +diff -up webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h +--- webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h 2015-05-20 13:45:35.629023925 +0200 @@ -49,7 +49,7 @@ defined(__ARMEL__) || \ defined(_MIPS_ARCH_MIPS32R2) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 --#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) -+#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) +-#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) ++#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #elif defined(_M_IX86) || defined(__i386__) #if defined(_WIN32) -diff -up webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/Platform.h ---- webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 2014-08-25 14:50:32.000000000 +0200 -+++ webkitgtk-2.4.5/Source/WTF/wtf/Platform.h 2014-09-02 11:40:40.925033307 +0200 -@@ -331,6 +331,14 @@ +diff -up webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/Platform.h +--- webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/WTF/wtf/Platform.h 2015-05-20 13:47:34.439861401 +0200 +@@ -334,6 +334,14 @@ #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 #endif @@ -28,13 +28,12 @@ diff -up webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.5/Sourc /* ==== OS() - underlying operating system; only to be used for mandated low-level services like virtual memory, not to choose a GUI toolkit ==== */ -@@ -656,7 +664,8 @@ - || CPU(ARM64) \ +@@ -654,7 +662,7 @@ + #if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS))) \ + || (CPU(IA64) && !CPU(IA64_32)) \ + || CPU(ALPHA) \ +- || CPU(ARM64) \ ++ || CPU(AARCH64) \ || CPU(S390X) \ + || CPU(MIPS64) \ || CPU(PPC64) \ -- || CPU(PPC64LE) -+ || CPU(PPC64LE) \ -+ || CPU(AARCH64) - #define WTF_USE_JSVALUE64 1 - #else - #define WTF_USE_JSVALUE32_64 1 diff --git a/webkitgtk3.spec b/webkitgtk3.spec index d221a88..ec12040 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -9,8 +9,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.8 -Release: 9%{?dist} +Version: 2.4.9 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -24,16 +24,8 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch -# https://bugs.webkit.org/show_bug.cgi?id=140241 -Patch5: webkitgtk-2.4.8-plugin_none.patch -# https://bugs.webkit.org/show_bug.cgi?id=126324 -Patch6: webkitgtk-2.4.8-gcc5.patch -# https://bugs.webkit.org/show_bug.cgi?id=141381 -Patch7: webkitgtk-2.4.8-gmutexlocker.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 -Patch8: webkitgtk-2.4.8-user-agent.patch -#https://bugs.webkit.org/show_bug.cgi?id=127474 -Patch9: webkitgtk-2.4.8-g_object_destroyed.patch +Patch5: webkitgtk-2.4.8-user-agent.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -101,11 +93,7 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix -%patch5 -p1 -b .plugin_none -%patch6 -p1 -b .gcc5 -%patch7 -p1 -b .gmutex_locker -%patch8 -p1 -b .user_agent -%patch9 -p1 -b .g_object_destroyed +%patch5 -p1 -b .user_agent %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -113,11 +101,6 @@ This package contains developer documentation for %{name}. %patch4 -p1 -b .ppc64_align %endif -# Remove when 2.4.9 will be released -# Needed for https://bugs.webkit.org/show_bug.cgi?id=140241 -# Regenerate configure to pick up the gcc 5.0 changes -autoreconf -v - %build # Use linker flags to reduce memory consumption %global optflags %{optflags} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads @@ -224,6 +207,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed May 20 2015 Tomas Popela - 2.4.9-1 +- Update to 2.4.9 + * Sat May 02 2015 Kalev Lember - 2.4.8-9 - Rebuilt for GCC 5 C++11 ABI change From 07ad6fa231faa647cd59070e69fa8c381ad85e8e Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 19 Jun 2015 02:19:25 +0000 Subject: [PATCH 12/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index ec12040..54a4ae7 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -207,6 +207,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Jun 19 2015 Fedora Release Engineering - 2.4.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Wed May 20 2015 Tomas Popela - 2.4.9-1 - Update to 2.4.9 From 0f1bc27ea78108ba1cede88a85fbbf7ebb35afa6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 25 Sep 2015 07:53:26 +0200 Subject: [PATCH 13/36] - rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV Initialize string in SQLiteStatement before using it --- webkitgtk-2.4.9-sql_initialize_string.patch | 12 ++++++++++++ webkitgtk3.spec | 9 ++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.9-sql_initialize_string.patch diff --git a/webkitgtk-2.4.9-sql_initialize_string.patch b/webkitgtk-2.4.9-sql_initialize_string.patch new file mode 100644 index 0000000..a34ef14 --- /dev/null +++ b/webkitgtk-2.4.9-sql_initialize_string.patch @@ -0,0 +1,12 @@ +diff -up webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp +--- webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string 2015-09-14 09:25:43.004200172 +0200 ++++ webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp 2015-09-14 09:25:57.852082368 +0200 +@@ -71,7 +71,7 @@ int SQLiteStatement::prepare() + // this lets SQLite avoid an extra string copy. + size_t lengthIncludingNullCharacter = query.length() + 1; + +- const char* tail; ++ const char* tail = nullptr; + int error = sqlite3_prepare_v2(m_database.sqlite3Handle(), query.data(), lengthIncludingNullCharacter, &m_statement, &tail); + + if (error != SQLITE_OK) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 54a4ae7..2028449 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -26,6 +26,8 @@ Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch5: webkitgtk-2.4.8-user-agent.patch +# http://trac.webkit.org/changeset/169665 +Patch6: webkitgtk-2.4.9-sql_initialize_string.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -94,6 +96,7 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix %patch5 -p1 -b .user_agent +%patch6 -p1 -b .sql_initialize_string %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -207,6 +210,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Sep 25 2015 Tomas Popela - 2.4.9-3 +- rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV + Initialize string in SQLiteStatement before using it + * Fri Jun 19 2015 Fedora Release Engineering - 2.4.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From dc09c7cf4fec274979b1f31e1c1a8048ae743848 Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 28 Oct 2015 14:09:07 +0100 Subject: [PATCH 14/36] rebuild for ICU 56.1 --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2028449..524bd09 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 3%{?dist} +Release: 4%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -210,6 +210,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Oct 28 2015 David Tardon - 2.4.9-4 +- rebuild for ICU 56.1 + * Fri Sep 25 2015 Tomas Popela - 2.4.9-3 - rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV Initialize string in SQLiteStatement before using it From 21c2602eaf2779270868d9bce0db86f483c1e177 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 7 Dec 2015 11:48:28 +0100 Subject: [PATCH 15/36] rhbz#1289053 - Retire nspluginwrapper and remove from Fedora 24 --- webkit-1.1.14-nspluginwrapper.patch | 12 ---------- webkitgtk3.spec | 34 ++++++++++++++++------------- 2 files changed, 19 insertions(+), 27 deletions(-) delete mode 100644 webkit-1.1.14-nspluginwrapper.patch diff --git a/webkit-1.1.14-nspluginwrapper.patch b/webkit-1.1.14-nspluginwrapper.patch deleted file mode 100644 index 0d3aa27..0000000 --- a/webkit-1.1.14-nspluginwrapper.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- webkit-1.1.17/Source/WebCore/plugins/PluginDatabase.cpp.old 2009-12-01 15:22:10.000000000 +0000 -+++ webkit-1.1.17/Source/WebCore/plugins/PluginDatabase.cpp 2009-12-01 15:22:21.000000000 +0000 -@@ -357,6 +357,9 @@ Vector PluginDatabase::defaultPl - paths.append("/usr/lib64/mozilla/plugins"); - paths.append("/usr/lib/nsbrowser/plugins"); - paths.append("/usr/lib64/nsbrowser/plugins"); -+ /* And for nspluginwrapper */ -+ paths.append("/usr/lib64/mozilla/plugins-wrapped"); -+ paths.append("/usr/lib/mozilla/plugins-wrapped"); - - String mozHome(getenv("MOZILLA_HOME")); - mozHome.append("/plugins"); diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 524bd09..fdb5217 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 4%{?dist} +Release: 5%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -19,15 +19,14 @@ URL: http://www.webkitgtk.org/ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz -Patch0: webkit-1.1.14-nspluginwrapper.patch -Patch1: webkitgtk-aarch64.patch -Patch2: webkitgtk-2.4.1-cloop_fix.patch -Patch3: webkitgtk-2.4.5-cloop_fix_32.patch -Patch4: webkitgtk-2.4.1-ppc64_align.patch +Patch0: webkitgtk-aarch64.patch +Patch1: webkitgtk-2.4.1-cloop_fix.patch +Patch2: webkitgtk-2.4.5-cloop_fix_32.patch +Patch3: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 -Patch5: webkitgtk-2.4.8-user-agent.patch +Patch4: webkitgtk-2.4.8-user-agent.patch # http://trac.webkit.org/changeset/169665 -Patch6: webkitgtk-2.4.9-sql_initialize_string.patch +Patch5: webkitgtk-2.4.9-sql_initialize_string.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -92,16 +91,15 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" -%patch0 -p1 -b .nspluginwrapper -%patch1 -p1 -b .aarch64 -%patch2 -p1 -b .cloop_fix -%patch5 -p1 -b .user_agent -%patch6 -p1 -b .sql_initialize_string +%patch0 -p1 -b .aarch64 +%patch1 -p1 -b .cloop_fix +%patch4 -p1 -b .user_agent +%patch5 -p1 -b .sql_initialize_string %ifarch ppc s390 -%patch3 -p1 -b .cloop_fix_32 +%patch2 -p1 -b .cloop_fix_32 %endif %ifarch %{power64} aarch64 ppc -%patch4 -p1 -b .ppc64_align +%patch3 -p1 -b .ppc64_align %endif %build @@ -210,6 +208,12 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Dec 07 2015 Tomas Popela - 2.4.9-5 +- rhbz#1289053 - Retire nspluginwrapper and remove from Fedora 24 + +* Wed Oct 28 2015 David Tardon - 2.4.9-4 +- rebuild for ICU 56.1 + * Wed Oct 28 2015 David Tardon - 2.4.9-4 - rebuild for ICU 56.1 From 8a1b0dbf98d44cbe7725b05e287da6545fc599f2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 7 Dec 2015 11:49:31 +0100 Subject: [PATCH 16/36] Remove Changelog entry duplicate --- webkitgtk3.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index fdb5217..1b4c644 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -214,9 +214,6 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete * Wed Oct 28 2015 David Tardon - 2.4.9-4 - rebuild for ICU 56.1 -* Wed Oct 28 2015 David Tardon - 2.4.9-4 -- rebuild for ICU 56.1 - * Fri Sep 25 2015 Tomas Popela - 2.4.9-3 - rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV Initialize string in SQLiteStatement before using it From f0daba1da0877784683898a6a49bd3858fc60b80 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Dec 2015 18:56:14 +0100 Subject: [PATCH 17/36] Rebuilt for libwebp soname bump Signed-off-by: Igor Gnatenko --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 1b4c644..b978c72 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 5%{?dist} +Release: 6%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -208,6 +208,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Dec 28 2015 Igor Gnatenko - 2.4.9-6 +- Rebuilt for libwebp soname bump + * Mon Dec 07 2015 Tomas Popela - 2.4.9-5 - rhbz#1289053 - Retire nspluginwrapper and remove from Fedora 24 From 5d2bdbb15a8197024809528d468b69bfa87373f9 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 25 Jan 2016 09:47:36 +0100 Subject: [PATCH 18/36] Add support for MIPS --- webkitgtk3.spec | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index b978c72..4743463 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 6%{?dist} +Release: 7%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -95,7 +95,7 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .cloop_fix %patch4 -p1 -b .user_agent %patch5 -p1 -b .sql_initialize_string -%ifarch ppc s390 +%ifarch ppc s390 mips %patch2 -p1 -b .cloop_fix_32 %endif %ifarch %{power64} aarch64 ppc @@ -106,7 +106,7 @@ This package contains developer documentation for %{name}. # Use linker flags to reduce memory consumption %global optflags %{optflags} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads -%ifarch s390 %{arm} +%ifarch s390 %{arm} mips mipsel # Decrease debuginfo verbosity to reduce memory consumption even more %global optflags %(echo %{optflags} | sed 's/-g /-g1 /') %endif @@ -116,7 +116,7 @@ This package contains developer documentation for %{name}. %global optflags %{optflags} -Wl,-relax -latomic %endif -%ifarch s390 s390x ppc %{power64} aarch64 +%ifarch s390 s390x ppc %{power64} aarch64 %{mips} %global optflags %{optflags} -DENABLE_YARR_JIT=0 %endif @@ -127,7 +127,7 @@ This package contains developer documentation for %{name}. %configure \ --with-gtk=3.0 \ --disable-webkit2 \ -%ifarch s390 s390x ppc %{power64} aarch64 +%ifarch s390 s390x ppc %{power64} aarch64 %{mips} --disable-jit \ %else --enable-jit \ @@ -208,6 +208,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Dec 30 2015 Michal Toman - 2.4.9-7 +- Add support for MIPS + * Mon Dec 28 2015 Igor Gnatenko - 2.4.9-6 - Rebuilt for libwebp soname bump From e255be264ccab9b35a8e3aa2b29fc54acaa44930 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 5 Feb 2016 02:57:23 +0000 Subject: [PATCH 19/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 4743463..699ef7d 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 7%{?dist} +Release: 8%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -208,6 +208,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Feb 05 2016 Fedora Release Engineering - 2.4.9-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Wed Dec 30 2015 Michal Toman - 2.4.9-7 - Add support for MIPS From 5b0f27ebbc3c53a0227c6283b72233297bc2b2c3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 8 Feb 2016 08:21:18 +0100 Subject: [PATCH 20/36] Fix the build with gcc 6 (use Kevin's patch from the webkitgtk package) --- webkitgtk-2.4.9-abs.patch | 26 ++++++++++++++++++++++++++ webkitgtk3.spec | 7 ++++++- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.9-abs.patch diff --git a/webkitgtk-2.4.9-abs.patch b/webkitgtk-2.4.9-abs.patch new file mode 100644 index 0000000..9a1c5f9 --- /dev/null +++ b/webkitgtk-2.4.9-abs.patch @@ -0,0 +1,26 @@ +diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp +--- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2015-05-20 03:03:24.000000000 -0600 ++++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2016-02-07 11:30:42.392686308 -0700 +@@ -85,8 +85,8 @@ + guint32 eventTime = getEventTime(event); + + if ((event->type == GDK_2BUTTON_PRESS || event->type == GDK_3BUTTON_PRESS) +- || ((abs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance) +- && (abs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance) ++ || ((fabs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance) ++ && (fabs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance) + && (eventTime - m_previousClickTime < static_cast(doubleClickTime)) + && (buttonEvent->button == m_previousClickButton))) + m_currentClickCount++; +diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp +--- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2015-05-20 03:03:24.000000000 -0600 ++++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2016-02-07 11:49:36.384691005 -0700 +@@ -659,7 +659,7 @@ + if (!std::isfinite(time)) + return String::fromUTF8(_("indefinite time")); + +- int seconds = static_cast(abs(time)); ++ int seconds = static_cast(fabs(time)); + int days = seconds / (60 * 60 * 24); + int hours = seconds / (60 * 60); + int minutes = (seconds / 60) % 60; diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 699ef7d..e146005 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 8%{?dist} +Release: 9%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -27,6 +27,7 @@ Patch3: webkitgtk-2.4.1-ppc64_align.patch Patch4: webkitgtk-2.4.8-user-agent.patch # http://trac.webkit.org/changeset/169665 Patch5: webkitgtk-2.4.9-sql_initialize_string.patch +Patch6: webkitgtk-2.4.9-abs.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -95,6 +96,7 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .cloop_fix %patch4 -p1 -b .user_agent %patch5 -p1 -b .sql_initialize_string +%patch6 -p1 -b .abs %ifarch ppc s390 mips %patch2 -p1 -b .cloop_fix_32 %endif @@ -208,6 +210,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Sat Feb 06 2016 Tomas Popela - 2.4.9-9 +- Fix the build with gcc 6 (use Kevin's patch from the webkitgtk package) + * Fri Feb 05 2016 Fedora Release Engineering - 2.4.9-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From fbb8dbd5183a02c17d4d1a0c388375479e880b14 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 9 Feb 2016 13:35:03 +0000 Subject: [PATCH 21/36] Add ruby deps for build --- webkitgtk3.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index e146005..84dea45 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 9%{?dist} +Release: 10%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -59,7 +59,7 @@ BuildRequires: pcre-devel BuildRequires: sqlite-devel BuildRequires: gobject-introspection-devel >= 1.32.0 BuildRequires: perl-Switch -BuildRequires: ruby +BuildRequires: ruby rubypick rubygems BuildRequires: mesa-libGL-devel %ifarch ppc BuildRequires: libatomic @@ -210,6 +210,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Feb 9 2016 Peter Robinson 2.4.9-10 +- Add ruby deps for build + * Sat Feb 06 2016 Tomas Popela - 2.4.9-9 - Fix the build with gcc 6 (use Kevin's patch from the webkitgtk package) From b529119ff510f10a9db5bea517ee7d4a74a7c298 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 7 Mar 2016 10:34:48 +0100 Subject: [PATCH 22/36] Clear the patches before the 2.4.10 release --- webkitgtk-2.4.1-cloop_fix.patch | 141 +------------------ webkitgtk-2.4.1-cloop_operations_scope.patch | 99 +++++++++++++ webkitgtk-2.4.1-jsc_proto_call_frame.patch | 45 ++++++ webkitgtk3.spec | 13 +- 4 files changed, 160 insertions(+), 138 deletions(-) create mode 100644 webkitgtk-2.4.1-cloop_operations_scope.patch create mode 100644 webkitgtk-2.4.1-jsc_proto_call_frame.patch diff --git a/webkitgtk-2.4.1-cloop_fix.patch b/webkitgtk-2.4.1-cloop_fix.patch index 2675caf..b647b10 100644 --- a/webkitgtk-2.4.1-cloop_fix.patch +++ b/webkitgtk-2.4.1-cloop_fix.patch @@ -1,57 +1,6 @@ -diff -up webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h ---- webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix 2014-07-23 14:15:45.497658648 +0200 -+++ webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h 2014-07-23 14:16:46.997687779 +0200 -@@ -36,7 +36,7 @@ struct ProtoCallFrame { - Register calleeValue; - Register argCountAndCodeOriginValue; - Register thisArg; -- size_t paddedArgCount; -+ uint32_t paddedArgCount; - JSValue *args; - - void init(CodeBlock*, JSScope*, JSObject*, JSValue, int, JSValue* otherArgs = 0); -@@ -53,7 +53,7 @@ struct ProtoCallFrame { - int argumentCountIncludingThis() const { return argCountAndCodeOriginValue.payload(); } - int argumentCount() const { return argumentCountIncludingThis() - 1; } - void setArgumentCountIncludingThis(int count) { argCountAndCodeOriginValue.payload() = count; } -- void setPaddedArgsCount(size_t argCount) { paddedArgCount = argCount; } -+ void setPaddedArgsCount(uint32_t argCount) { paddedArgCount = argCount; } - - void clearCurrentVPC() { argCountAndCodeOriginValue.tag() = 0; } - -diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp ---- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-07-23 14:16:02.057667404 +0200 -+++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-07-23 14:16:46.997687779 +0200 -@@ -1354,7 +1354,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_ - CodeBlock* codeBlock = exec->codeBlock(); - ConcurrentJITLocker locker(codeBlock->m_lock); - pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); -- pc[6].u.operand = slot.cachedOffset(); -+ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); - } - } - -@@ -1381,7 +1381,7 @@ LLINT_SLOW_PATH_DECL(slow_path_put_to_sc - if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) { - ConcurrentJITLocker locker(codeBlock->m_lock); - pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); -- pc[6].u.operand = slot.cachedOffset(); -+ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); - } - } - -diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-07-23 14:16:13.047672325 +0200 -+++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-07-23 14:18:27.547721786 +0200 -@@ -282,7 +282,7 @@ macro doCallToJavaScript(makeCall, doRet - storep temp3, CodeBlock+4[cfr, temp1, 8] - btinz temp1, .copyHeaderLoop - -- loadi ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 -+ loadi PayloadOffset + ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 - subi 1, temp2 - loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp3 - subi 1, temp3 +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:17:14.337760573 +0100 @@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet .calleeFramePopped: @@ -106,7 +55,7 @@ diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as btiz t2, .resolveScopeLoopEnd .resolveScopeLoop: -@@ -2271,13 +2271,13 @@ _llint_op_resolve_scope: +@@ -2271,7 +2271,7 @@ _llint_op_resolve_scope: macro loadWithStructureCheck(operand, slowPath) loadisFromInstruction(operand, t0) @@ -115,85 +64,3 @@ diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as loadpFromInstruction(5, t1) bpneq JSCell::m_structure[t0], t1, slowPath end - - macro getProperty() -- loadisFromInstruction(6, t3) -+ loadpFromInstruction(6, t3) - loadPropertyAtVariableOffset(t3, t0, t1, t2) - valueProfile(t1, t2, 28, t0) - loadisFromInstruction(1, t0) -@@ -2297,7 +2297,7 @@ end - - macro getClosureVar() - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t3) -+ loadpFromInstruction(6, t3) - loadp TagOffset[t0, t3, 8], t1 - loadp PayloadOffset[t0, t3, 8], t2 - valueProfile(t1, t2, 28, t0) -@@ -2356,7 +2356,7 @@ _llint_op_get_from_scope: - macro putProperty() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2, t3) -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storePropertyAtVariableOffset(t1, t0, t2, t3) - end - -@@ -2374,7 +2374,7 @@ macro putClosureVar() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2, t3) - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storei t2, TagOffset[t0, t1, 8] - storei t3, PayloadOffset[t0, t1, 8] - end -diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm ---- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-07-23 14:16:19.147675074 +0200 -+++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-07-23 14:16:46.997687779 +0200 -@@ -171,7 +171,7 @@ macro doCallToJavaScript(makeCall, doRet - storep temp3, CodeBlock[cfr, temp1, 8] - btinz temp1, .copyHeaderLoop - -- loadi ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 -+ loadi PayloadOffset + ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 - subi 1, temp2 - loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp3 - subi 1, temp3 -@@ -2047,7 +2047,7 @@ macro loadWithStructureCheck(operand, sl - end - - macro getProperty() -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - loadPropertyAtVariableOffset(t1, t0, t2) - valueProfile(t2, 7, t0) - loadisFromInstruction(1, t0) -@@ -2064,7 +2064,7 @@ end - - macro getClosureVar() - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - loadq [t0, t1, 8], t0 - valueProfile(t0, 7, t1) - loadisFromInstruction(1, t1) -@@ -2121,7 +2121,7 @@ _llint_op_get_from_scope: - macro putProperty() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2) -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storePropertyAtVariableOffset(t1, t0, t2) - end - -@@ -2138,7 +2138,7 @@ macro putClosureVar() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2) - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storeq t2, [t0, t1, 8] - end - diff --git a/webkitgtk-2.4.1-cloop_operations_scope.patch b/webkitgtk-2.4.1-cloop_operations_scope.patch new file mode 100644 index 0000000..e7b6415 --- /dev/null +++ b/webkitgtk-2.4.1-cloop_operations_scope.patch @@ -0,0 +1,99 @@ +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_operations_scope 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2016-03-07 10:15:36.659406501 +0100 +@@ -1354,7 +1354,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_ + CodeBlock* codeBlock = exec->codeBlock(); + ConcurrentJITLocker locker(codeBlock->m_lock); + pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); +- pc[6].u.operand = slot.cachedOffset(); ++ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); + } + } + +@@ -1381,7 +1381,7 @@ LLINT_SLOW_PATH_DECL(slow_path_put_to_sc + if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) { + ConcurrentJITLocker locker(codeBlock->m_lock); + pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); +- pc[6].u.operand = slot.cachedOffset(); ++ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); + } + } + +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_operations_scope 2016-03-07 10:15:36.657406514 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:16:01.854239892 +0100 +@@ -2277,7 +2277,7 @@ macro loadWithStructureCheck(operand, sl + end + + macro getProperty() +- loadisFromInstruction(6, t3) ++ loadpFromInstruction(6, t3) + loadPropertyAtVariableOffset(t3, t0, t1, t2) + valueProfile(t1, t2, 28, t0) + loadisFromInstruction(1, t0) +@@ -2297,7 +2297,7 @@ end + + macro getClosureVar() + loadp JSVariableObject::m_registers[t0], t0 +- loadisFromInstruction(6, t3) ++ loadpFromInstruction(6, t3) + loadp TagOffset[t0, t3, 8], t1 + loadp PayloadOffset[t0, t3, 8], t2 + valueProfile(t1, t2, 28, t0) +@@ -2356,7 +2356,7 @@ _llint_op_get_from_scope: + macro putProperty() + loadisFromInstruction(3, t1) + loadConstantOrVariable(t1, t2, t3) +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + storePropertyAtVariableOffset(t1, t0, t2, t3) + end + +@@ -2374,7 +2374,7 @@ macro putClosureVar() + loadisFromInstruction(3, t1) + loadConstantOrVariable(t1, t2, t3) + loadp JSVariableObject::m_registers[t0], t0 +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + storei t2, TagOffset[t0, t1, 8] + storei t3, PayloadOffset[t0, t1, 8] + end +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_operations_scope 2016-03-07 10:15:36.658406508 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2016-03-07 10:15:36.660406494 +0100 +@@ -2047,7 +2047,7 @@ macro loadWithStructureCheck(operand, sl + end + + macro getProperty() +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + loadPropertyAtVariableOffset(t1, t0, t2) + valueProfile(t2, 7, t0) + loadisFromInstruction(1, t0) +@@ -2064,7 +2064,7 @@ end + + macro getClosureVar() + loadp JSVariableObject::m_registers[t0], t0 +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + loadq [t0, t1, 8], t0 + valueProfile(t0, 7, t1) + loadisFromInstruction(1, t1) +@@ -2121,7 +2121,7 @@ _llint_op_get_from_scope: + macro putProperty() + loadisFromInstruction(3, t1) + loadConstantOrVariable(t1, t2) +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + storePropertyAtVariableOffset(t1, t0, t2) + end + +@@ -2138,7 +2138,7 @@ macro putClosureVar() + loadisFromInstruction(3, t1) + loadConstantOrVariable(t1, t2) + loadp JSVariableObject::m_registers[t0], t0 +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + storeq t2, [t0, t1, 8] + end + diff --git a/webkitgtk-2.4.1-jsc_proto_call_frame.patch b/webkitgtk-2.4.1-jsc_proto_call_frame.patch new file mode 100644 index 0000000..b80751c --- /dev/null +++ b/webkitgtk-2.4.1-jsc_proto_call_frame.patch @@ -0,0 +1,45 @@ +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h +--- webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.jsc_proto_call_frame 2016-03-07 10:04:24.425851848 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h 2016-03-07 10:04:53.193661612 +0100 +@@ -36,7 +36,7 @@ struct ProtoCallFrame { + Register calleeValue; + Register argCountAndCodeOriginValue; + Register thisArg; +- size_t paddedArgCount; ++ uint32_t paddedArgCount; + JSValue *args; + + void init(CodeBlock*, JSScope*, JSObject*, JSValue, int, JSValue* otherArgs = 0); +@@ -53,7 +53,7 @@ struct ProtoCallFrame { + int argumentCountIncludingThis() const { return argCountAndCodeOriginValue.payload(); } + int argumentCount() const { return argumentCountIncludingThis() - 1; } + void setArgumentCountIncludingThis(int count) { argCountAndCodeOriginValue.payload() = count; } +- void setPaddedArgsCount(size_t argCount) { paddedArgCount = argCount; } ++ void setPaddedArgsCount(uint32_t argCount) { paddedArgCount = argCount; } + + void clearCurrentVPC() { argCountAndCodeOriginValue.tag() = 0; } + +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.jsc_proto_call_frame 2016-03-07 10:05:28.754426456 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:06:02.349204301 +0100 +@@ -266,7 +266,7 @@ macro doCallToJavaScript(makeCall, doRet + storep previousCFR, CallerFrame[cfr] + move cfr, temp1 + +- loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 ++ loadi PayloadOffset + ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 + addp CallFrameHeaderSlots, temp2, temp2 + lshiftp 3, temp2 + subp temp2, cfr +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.jsc_proto_call_frame 2016-03-07 10:05:34.843386191 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2016-03-07 10:06:23.245066120 +0100 +@@ -157,7 +157,7 @@ macro doCallToJavaScript(makeCall, doRet + storep previousCFR, CallerFrame[cfr] + move cfr, temp1 + +- loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 ++ loadi PayloadOffset + ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 + addp CallFrameHeaderSlots, temp2, temp2 + lshiftp 3, temp2 + subp temp2, cfr diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 84dea45..82cfcd6 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -19,15 +19,24 @@ URL: http://www.webkitgtk.org/ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz +# https://bugs.webkit.org/show_bug.cgi?id=130506 - 2.4.10 Patch0: webkitgtk-aarch64.patch +# not upstreamed! Patch1: webkitgtk-2.4.1-cloop_fix.patch +# not upstreamed - applied just on 32-bit architectures! Patch2: webkitgtk-2.4.5-cloop_fix_32.patch +# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 Patch3: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch4: webkitgtk-2.4.8-user-agent.patch -# http://trac.webkit.org/changeset/169665 +# http://trac.webkit.org/changeset/169665 - 2.4.10 Patch5: webkitgtk-2.4.9-sql_initialize_string.patch Patch6: webkitgtk-2.4.9-abs.patch +# https://bugs.webkit.org/show_bug.cgi?id=131449 - 2.4.10 +Patch7: webkitgtk-2.4.1-jsc_proto_call_frame.patch +# https://bugs.webkit.org/show_bug.cgi?id=132333 - never got r+ but used in Fedora for a long time +Patch8: webkitgtk-2.4.1-cloop_operations_scope.patch + BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -94,6 +103,8 @@ This package contains developer documentation for %{name}. %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .aarch64 %patch1 -p1 -b .cloop_fix +%patch7 -p1 -b .jsc_proto_call_frame +%patch8 -p1 -b .cloop_operations_scope %patch4 -p1 -b .user_agent %patch5 -p1 -b .sql_initialize_string %patch6 -p1 -b .abs From ee0cef90f38f5ca729fd685375f78cdc4513532b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 9 Mar 2016 11:52:36 +0100 Subject: [PATCH 23/36] Improve the downstream patches situation a little bit --- webkitgtk-2.4.1-cloop_fix.patch | 66 --------------- webkitgtk-2.4.5-cloop_fix_32.patch | 31 ------- webkitgtk-2.4.9-cloop_fix_2_4.patch | 121 ++++++++++++++++++++++++++++ webkitgtk3.spec | 43 +++++----- 4 files changed, 140 insertions(+), 121 deletions(-) delete mode 100644 webkitgtk-2.4.1-cloop_fix.patch delete mode 100644 webkitgtk-2.4.5-cloop_fix_32.patch create mode 100644 webkitgtk-2.4.9-cloop_fix_2_4.patch diff --git a/webkitgtk-2.4.1-cloop_fix.patch b/webkitgtk-2.4.1-cloop_fix.patch deleted file mode 100644 index b647b10..0000000 --- a/webkitgtk-2.4.1-cloop_fix.patch +++ /dev/null @@ -1,66 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:17:14.337760573 +0100 -@@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet - - .calleeFramePopped: - loadp Callee[cfr], temp3 # VM.topCallFrame -- loadp ScopeChain[cfr], temp4 -+ loadp ScopeChain + PayloadOffset[cfr], temp4 - storep temp4, [temp3] - - doReturn(extraStackSpace) -@@ -598,7 +598,7 @@ end - - - macro branchIfException(label) -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException -@@ -2039,7 +2039,7 @@ _llint_op_catch: - # the interpreter's throw trampoline (see _llint_throw_trampoline). - # The throwing code must have known that we were throwing to the interpreter, - # and have set VM::targetInterpreterPCForThrow. -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - loadp VM::callFrameForThrow[t3], cfr -@@ -2159,7 +2159,7 @@ macro nativeCallTrampoline(executableOff - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - elsif C_LOOP -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - storep cfr, VM::topCallFrame[t3] -@@ -2172,7 +2172,7 @@ macro nativeCallTrampoline(executableOff - move t2, cfr - cloopCallNative executableOffsetToFunction[t1] - restoreReturnAddressBeforeReturn(t3) -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - else -@@ -2212,7 +2212,7 @@ macro resolveScope() - addi 1, t2 - - .resolveScopeAfterActivationCheck: -- loadp ScopeChain[cfr], t0 -+ loadp ScopeChain + PayloadOffset[cfr], t0 - btiz t2, .resolveScopeLoopEnd - - .resolveScopeLoop: -@@ -2271,7 +2271,7 @@ _llint_op_resolve_scope: - - macro loadWithStructureCheck(operand, slowPath) - loadisFromInstruction(operand, t0) -- loadp [cfr, t0, 8], t0 -+ loadp PayloadOffset[cfr, t0, 8], t0 - loadpFromInstruction(5, t1) - bpneq JSCell::m_structure[t0], t1, slowPath - end diff --git a/webkitgtk-2.4.5-cloop_fix_32.patch b/webkitgtk-2.4.5-cloop_fix_32.patch deleted file mode 100644 index 96c53ad..0000000 --- a/webkitgtk-2.4.5-cloop_fix_32.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff -up webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_32 webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_32 2013-08-28 21:06:29.000000000 +0200 -+++ webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2013-09-12 15:32:34.000000000 +0200 -@@ -1679,7 +1679,7 @@ _llint_op_next_pname: - loadi 20[PC], t2 - loadi PayloadOffset[cfr, t2, 8], t2 - loadp JSPropertyNameIterator::m_jsStrings[t2], t3 -- loadi [t3, t0, 8], t3 -+ loadi PayloadOffset[t3, t0, 8], t3 - addi 1, t0 - storei t0, PayloadOffset[cfr, t1, 8] - loadi 4[PC], t1 -diff -up webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_32 webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm ---- webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_32 2013-08-28 21:06:29.000000000 +0200 -+++ webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2013-09-12 15:32:34.000000000 +0200 -@@ -276,13 +276,13 @@ macro assertNotConstant(index) - end - - macro functionForCallCodeBlockGetter(targetRegister) -- loadp Callee[cfr], targetRegister -+ loadp Callee + PayloadOffset[cfr], targetRegister - loadp JSFunction::m_executable[targetRegister], targetRegister - loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister - end - - macro functionForConstructCodeBlockGetter(targetRegister) -- loadp Callee[cfr], targetRegister -+ loadp Callee + PayloadOffset[cfr], targetRegister - loadp JSFunction::m_executable[targetRegister], targetRegister - loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister - end diff --git a/webkitgtk-2.4.9-cloop_fix_2_4.patch b/webkitgtk-2.4.9-cloop_fix_2_4.patch new file mode 100644 index 0000000..aad575c --- /dev/null +++ b/webkitgtk-2.4.9-cloop_fix_2_4.patch @@ -0,0 +1,121 @@ +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 2016-03-07 11:32:36.130671900 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 13:15:35.451673413 +0100 +@@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet + + .calleeFramePopped: + loadp Callee[cfr], temp3 # VM.topCallFrame +- loadp ScopeChain[cfr], temp4 ++ loadp ScopeChain + PayloadOffset[cfr], temp4 + storep temp4, [temp3] + + doReturn(extraStackSpace) +@@ -598,7 +598,7 @@ end + + + macro branchIfException(label) +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException +@@ -2039,7 +2039,7 @@ _llint_op_catch: + # the interpreter's throw trampoline (see _llint_throw_trampoline). + # The throwing code must have known that we were throwing to the interpreter, + # and have set VM::targetInterpreterPCForThrow. +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + loadp VM::callFrameForThrow[t3], cfr +@@ -2122,7 +2122,7 @@ macro nativeCallTrampoline(executableOff + storei CellTag, ScopeChain + TagOffset[cfr] + storei t1, ScopeChain + PayloadOffset[cfr] + if X86 +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + storep cfr, VM::topCallFrame[t3] +@@ -2135,11 +2135,11 @@ macro nativeCallTrampoline(executableOff + move t0, cfr + call executableOffsetToFunction[t1] + addp 16 - 4, sp +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + elsif ARM or ARMv7 or ARMv7_TRADITIONAL or MIPS or SH4 +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + storep cfr, VM::topCallFrame[t3] +@@ -2155,11 +2155,11 @@ macro nativeCallTrampoline(executableOff + end + call executableOffsetToFunction[t1] + restoreReturnAddressBeforeReturn(t3) +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + elsif C_LOOP +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + storep cfr, VM::topCallFrame[t3] +@@ -2172,7 +2172,7 @@ macro nativeCallTrampoline(executableOff + move t2, cfr + cloopCallNative executableOffsetToFunction[t1] + restoreReturnAddressBeforeReturn(t3) +- loadp ScopeChain[cfr], t3 ++ loadp PayloadOffset + ScopeChain[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + else +@@ -2212,7 +2212,7 @@ macro resolveScope() + addi 1, t2 + + .resolveScopeAfterActivationCheck: +- loadp ScopeChain[cfr], t0 ++ loadp ScopeChain + PayloadOffset[cfr], t0 + btiz t2, .resolveScopeLoopEnd + + .resolveScopeLoop: +@@ -2271,7 +2271,7 @@ _llint_op_resolve_scope: + + macro loadWithStructureCheck(operand, slowPath) + loadisFromInstruction(operand, t0) +- loadp [cfr, t0, 8], t0 ++ loadp PayloadOffset[cfr, t0, 8], t0 + loadpFromInstruction(5, t1) + bpneq JSCell::m_structure[t0], t1, slowPath + end +diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2016-03-07 11:32:36.129671904 +0100 +@@ -299,13 +299,21 @@ macro assertNotConstant(index) + end + + macro functionForCallCodeBlockGetter(targetRegister) +- loadp Callee[cfr], targetRegister ++ if JSVALUE64 ++ loadp Callee[cfr], targetRegister ++ else ++ loadp Callee + PayloadOffset[cfr], targetRegister ++ end + loadp JSFunction::m_executable[targetRegister], targetRegister + loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister + end + + macro functionForConstructCodeBlockGetter(targetRegister) +- loadp Callee[cfr], targetRegister ++ if JSVALUE64 ++ loadp Callee[cfr], targetRegister ++ else ++ loadp Callee + PayloadOffset[cfr], targetRegister ++ end + loadp JSFunction::m_executable[targetRegister], targetRegister + loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister + end diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 82cfcd6..c21ce76 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -21,21 +21,19 @@ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz # https://bugs.webkit.org/show_bug.cgi?id=130506 - 2.4.10 Patch0: webkitgtk-aarch64.patch -# not upstreamed! -Patch1: webkitgtk-2.4.1-cloop_fix.patch -# not upstreamed - applied just on 32-bit architectures! -Patch2: webkitgtk-2.4.5-cloop_fix_32.patch -# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 -Patch3: webkitgtk-2.4.1-ppc64_align.patch -# https://bugs.webkit.org/show_bug.cgi?id=142074 -Patch4: webkitgtk-2.4.8-user-agent.patch -# http://trac.webkit.org/changeset/169665 - 2.4.10 -Patch5: webkitgtk-2.4.9-sql_initialize_string.patch -Patch6: webkitgtk-2.4.9-abs.patch -# https://bugs.webkit.org/show_bug.cgi?id=131449 - 2.4.10 -Patch7: webkitgtk-2.4.1-jsc_proto_call_frame.patch +# https://bugs.webkit.org/show_bug.cgi?id=137020 - backported to 2.4 branch +Patch1: webkitgtk-2.4.1-jsc_proto_call_frame.patch # https://bugs.webkit.org/show_bug.cgi?id=132333 - never got r+ but used in Fedora for a long time -Patch8: webkitgtk-2.4.1-cloop_operations_scope.patch +Patch2: webkitgtk-2.4.1-cloop_operations_scope.patch +# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 +Patch3: webkitgtk-2.4.9-cloop_fix_2_4.patch +# https://bugs.webkit.org/show_bug.cgi?id=131449 - 2.4.10 +Patch4: webkitgtk-2.4.1-ppc64_align.patch +# https://bugs.webkit.org/show_bug.cgi?id=142074 +Patch5: webkitgtk-2.4.8-user-agent.patch +# http://trac.webkit.org/changeset/169665 - 2.4.10 +Patch6: webkitgtk-2.4.9-sql_initialize_string.patch +Patch7: webkitgtk-2.4.9-abs.patch BuildRequires: at-spi2-core-devel @@ -102,18 +100,15 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .aarch64 -%patch1 -p1 -b .cloop_fix -%patch7 -p1 -b .jsc_proto_call_frame -%patch8 -p1 -b .cloop_operations_scope -%patch4 -p1 -b .user_agent -%patch5 -p1 -b .sql_initialize_string -%patch6 -p1 -b .abs -%ifarch ppc s390 mips -%patch2 -p1 -b .cloop_fix_32 -%endif +%patch1 -p1 -b .jsc_proto_call_frame +%patch2 -p1 -b .cloop_operations_scope +%patch3 -p1 -b .cloop_fix_2_4 %ifarch %{power64} aarch64 ppc -%patch3 -p1 -b .ppc64_align +%patch4 -p1 -b .ppc64_align %endif +%patch5 -p1 -b .user_agent +%patch6 -p1 -b .sql_initialize_string +%patch7 -p1 -b .abs %build # Use linker flags to reduce memory consumption From 147aac44d999e8d6d1f2aeff2972d2c93bf19cf1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 10 Mar 2016 15:51:38 +0100 Subject: [PATCH 24/36] Update the CLoop patches --- webkitgtk-2.4.9-cloop_fix_2_4.patch | 30 ++++++++++++++++++++++++----- webkitgtk3.spec | 4 ++-- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/webkitgtk-2.4.9-cloop_fix_2_4.patch b/webkitgtk-2.4.9-cloop_fix_2_4.patch index aad575c..1a50e56 100644 --- a/webkitgtk-2.4.9-cloop_fix_2_4.patch +++ b/webkitgtk-2.4.9-cloop_fix_2_4.patch @@ -1,11 +1,13 @@ diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 2016-03-07 11:32:36.130671900 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 13:15:35.451673413 +0100 -@@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet +--- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 2016-03-10 15:41:33.812926852 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-10 15:47:56.326522861 +0100 +@@ -320,8 +320,8 @@ macro doCallToJavaScript(makeCall, doRet + loadp CallerFrame[cfr], cfr .calleeFramePopped: - loadp Callee[cfr], temp3 # VM.topCallFrame +- loadp Callee[cfr], temp3 # VM.topCallFrame - loadp ScopeChain[cfr], temp4 ++ loadp Callee + PayloadOffset[cfr], temp3 # VM.topCallFrame + loadp ScopeChain + PayloadOffset[cfr], temp4 storep temp4, [temp3] @@ -19,6 +21,24 @@ diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as andp MarkedBlockMask, t3 loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException +@@ -1574,7 +1574,7 @@ _llint_op_get_by_pname: + loadp JSCell::m_structure[t2], t0 + bpneq t0, JSPropertyNameIterator::m_cachedStructure[t3], .opGetByPnameSlow + loadi 24[PC], t0 +- loadi [cfr, t0, 8], t0 ++ loadi PayloadOffset[cfr, t0, 8], t0 + subi 1, t0 + biaeq t0, JSPropertyNameIterator::m_numCacheableSlots[t3], .opGetByPnameSlow + bilt t0, JSPropertyNameIterator::m_cachedStructureInlineCapacity[t3], .opGetByPnameInlineProperty +@@ -2002,7 +2002,7 @@ _llint_op_next_pname: + loadi 20[PC], t2 + loadi PayloadOffset[cfr, t2, 8], t2 + loadp JSPropertyNameIterator::m_jsStrings[t2], t3 +- loadi [t3, t0, 8], t3 ++ loadi PayloadOffset[t3, t0, 8], t3 + addi 1, t0 + storei t0, PayloadOffset[cfr, t1, 8] + loadi 4[PC], t1 @@ -2039,7 +2039,7 @@ _llint_op_catch: # the interpreter's throw trampoline (see _llint_throw_trampoline). # The throwing code must have known that we were throwing to the interpreter, @@ -94,7 +114,7 @@ diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as end diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm --- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2016-03-07 11:32:36.129671904 +0100 ++++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2016-03-10 15:41:33.815926841 +0100 @@ -299,13 +299,21 @@ macro assertNotConstant(index) end diff --git a/webkitgtk3.spec b/webkitgtk3.spec index c21ce76..eb32e23 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -21,11 +21,11 @@ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz # https://bugs.webkit.org/show_bug.cgi?id=130506 - 2.4.10 Patch0: webkitgtk-aarch64.patch -# https://bugs.webkit.org/show_bug.cgi?id=137020 - backported to 2.4 branch +# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 Patch1: webkitgtk-2.4.1-jsc_proto_call_frame.patch # https://bugs.webkit.org/show_bug.cgi?id=132333 - never got r+ but used in Fedora for a long time Patch2: webkitgtk-2.4.1-cloop_operations_scope.patch -# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 +# https://bugs.webkit.org/show_bug.cgi?id=137020 - backported to 2.4 branch Patch3: webkitgtk-2.4.9-cloop_fix_2_4.patch # https://bugs.webkit.org/show_bug.cgi?id=131449 - 2.4.10 Patch4: webkitgtk-2.4.1-ppc64_align.patch From 405f7eac201f14ea9085d9c025ae137cb2ca2942 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Mar 2016 11:33:02 +0100 Subject: [PATCH 25/36] Update to 2.4.10 --- sources | 2 +- webkitgtk-2.4.1-cloop_operations_scope.patch | 99 ------------- webkitgtk-2.4.1-jsc_proto_call_frame.patch | 45 ------ webkitgtk-2.4.1-ppc64_align.patch | 45 ------ webkitgtk-2.4.9-cloop_fix_2_4.patch | 141 ------------------- webkitgtk-2.4.9-sql_initialize_string.patch | 12 -- webkitgtk-aarch64.patch | 39 ----- webkitgtk3.spec | 35 ++--- 8 files changed, 10 insertions(+), 408 deletions(-) delete mode 100644 webkitgtk-2.4.1-cloop_operations_scope.patch delete mode 100644 webkitgtk-2.4.1-jsc_proto_call_frame.patch delete mode 100644 webkitgtk-2.4.1-ppc64_align.patch delete mode 100644 webkitgtk-2.4.9-cloop_fix_2_4.patch delete mode 100644 webkitgtk-2.4.9-sql_initialize_string.patch delete mode 100644 webkitgtk-aarch64.patch diff --git a/sources b/sources index 1f8355d..65e6d9c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -312fd29eb7f5970660c6a64b8bf8420e webkitgtk-2.4.9.tar.xz +1b3f18d4087dfc648e8060c14e16e202 webkitgtk-2.4.10.tar.xz diff --git a/webkitgtk-2.4.1-cloop_operations_scope.patch b/webkitgtk-2.4.1-cloop_operations_scope.patch deleted file mode 100644 index e7b6415..0000000 --- a/webkitgtk-2.4.1-cloop_operations_scope.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_operations_scope 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2016-03-07 10:15:36.659406501 +0100 -@@ -1354,7 +1354,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_ - CodeBlock* codeBlock = exec->codeBlock(); - ConcurrentJITLocker locker(codeBlock->m_lock); - pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); -- pc[6].u.operand = slot.cachedOffset(); -+ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); - } - } - -@@ -1381,7 +1381,7 @@ LLINT_SLOW_PATH_DECL(slow_path_put_to_sc - if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) { - ConcurrentJITLocker locker(codeBlock->m_lock); - pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure()); -- pc[6].u.operand = slot.cachedOffset(); -+ pc[6].u.pointer = reinterpret_cast(slot.cachedOffset()); - } - } - -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_operations_scope 2016-03-07 10:15:36.657406514 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:16:01.854239892 +0100 -@@ -2277,7 +2277,7 @@ macro loadWithStructureCheck(operand, sl - end - - macro getProperty() -- loadisFromInstruction(6, t3) -+ loadpFromInstruction(6, t3) - loadPropertyAtVariableOffset(t3, t0, t1, t2) - valueProfile(t1, t2, 28, t0) - loadisFromInstruction(1, t0) -@@ -2297,7 +2297,7 @@ end - - macro getClosureVar() - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t3) -+ loadpFromInstruction(6, t3) - loadp TagOffset[t0, t3, 8], t1 - loadp PayloadOffset[t0, t3, 8], t2 - valueProfile(t1, t2, 28, t0) -@@ -2356,7 +2356,7 @@ _llint_op_get_from_scope: - macro putProperty() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2, t3) -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storePropertyAtVariableOffset(t1, t0, t2, t3) - end - -@@ -2374,7 +2374,7 @@ macro putClosureVar() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2, t3) - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storei t2, TagOffset[t0, t1, 8] - storei t3, PayloadOffset[t0, t1, 8] - end -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_operations_scope webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_operations_scope 2016-03-07 10:15:36.658406508 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2016-03-07 10:15:36.660406494 +0100 -@@ -2047,7 +2047,7 @@ macro loadWithStructureCheck(operand, sl - end - - macro getProperty() -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - loadPropertyAtVariableOffset(t1, t0, t2) - valueProfile(t2, 7, t0) - loadisFromInstruction(1, t0) -@@ -2064,7 +2064,7 @@ end - - macro getClosureVar() - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - loadq [t0, t1, 8], t0 - valueProfile(t0, 7, t1) - loadisFromInstruction(1, t1) -@@ -2121,7 +2121,7 @@ _llint_op_get_from_scope: - macro putProperty() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2) -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storePropertyAtVariableOffset(t1, t0, t2) - end - -@@ -2138,7 +2138,7 @@ macro putClosureVar() - loadisFromInstruction(3, t1) - loadConstantOrVariable(t1, t2) - loadp JSVariableObject::m_registers[t0], t0 -- loadisFromInstruction(6, t1) -+ loadpFromInstruction(6, t1) - storeq t2, [t0, t1, 8] - end - diff --git a/webkitgtk-2.4.1-jsc_proto_call_frame.patch b/webkitgtk-2.4.1-jsc_proto_call_frame.patch deleted file mode 100644 index b80751c..0000000 --- a/webkitgtk-2.4.1-jsc_proto_call_frame.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h ---- webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.jsc_proto_call_frame 2016-03-07 10:04:24.425851848 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/interpreter/ProtoCallFrame.h 2016-03-07 10:04:53.193661612 +0100 -@@ -36,7 +36,7 @@ struct ProtoCallFrame { - Register calleeValue; - Register argCountAndCodeOriginValue; - Register thisArg; -- size_t paddedArgCount; -+ uint32_t paddedArgCount; - JSValue *args; - - void init(CodeBlock*, JSScope*, JSObject*, JSValue, int, JSValue* otherArgs = 0); -@@ -53,7 +53,7 @@ struct ProtoCallFrame { - int argumentCountIncludingThis() const { return argCountAndCodeOriginValue.payload(); } - int argumentCount() const { return argumentCountIncludingThis() - 1; } - void setArgumentCountIncludingThis(int count) { argCountAndCodeOriginValue.payload() = count; } -- void setPaddedArgsCount(size_t argCount) { paddedArgCount = argCount; } -+ void setPaddedArgsCount(uint32_t argCount) { paddedArgCount = argCount; } - - void clearCurrentVPC() { argCountAndCodeOriginValue.tag() = 0; } - -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.jsc_proto_call_frame 2016-03-07 10:05:28.754426456 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-07 10:06:02.349204301 +0100 -@@ -266,7 +266,7 @@ macro doCallToJavaScript(makeCall, doRet - storep previousCFR, CallerFrame[cfr] - move cfr, temp1 - -- loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 -+ loadi PayloadOffset + ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 - addp CallFrameHeaderSlots, temp2, temp2 - lshiftp 3, temp2 - subp temp2, cfr -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.jsc_proto_call_frame webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.jsc_proto_call_frame 2016-03-07 10:05:34.843386191 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2016-03-07 10:06:23.245066120 +0100 -@@ -157,7 +157,7 @@ macro doCallToJavaScript(makeCall, doRet - storep previousCFR, CallerFrame[cfr] - move cfr, temp1 - -- loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 -+ loadi PayloadOffset + ProtoCallFrame::paddedArgCount[protoCallFrame], temp2 - addp CallFrameHeaderSlots, temp2, temp2 - lshiftp 3, temp2 - subp temp2, cfr diff --git a/webkitgtk-2.4.1-ppc64_align.patch b/webkitgtk-2.4.1-ppc64_align.patch deleted file mode 100644 index 5186d60..0000000 --- a/webkitgtk-2.4.1-ppc64_align.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up webkitgtk-2.4.2/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align webkitgtk-2.4.2/Source/JavaScriptCore/heap/CopiedBlock.h ---- webkitgtk-2.4.2/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align 2014-05-12 08:03:53.000000000 +0200 -+++ webkitgtk-2.4.2/Source/JavaScriptCore/heap/CopiedBlock.h 2014-05-14 15:16:36.946318596 +0200 -@@ -81,7 +81,7 @@ public: - size_t size(); - size_t capacity(); - -- static const size_t blockSize = 32 * KB; -+ static const size_t blockSize = 64 * KB; - - bool hasWorkList(); - CopyWorkList& workList(); -diff -up webkitgtk-2.4.2/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align webkitgtk-2.4.2/Source/JavaScriptCore/interpreter/JSStack.cpp ---- webkitgtk-2.4.2/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align 2014-05-12 08:03:53.000000000 +0200 -+++ webkitgtk-2.4.2/Source/JavaScriptCore/interpreter/JSStack.cpp 2014-05-14 15:17:35.617171141 +0200 -@@ -49,7 +49,8 @@ JSStack::JSStack(VM& vm, size_t capacity - { - ASSERT(capacity && isPageAligned(capacity)); - -- m_reservation = PageReservation::reserve(roundUpAllocationSize(capacity * sizeof(Register), commitSize), OSAllocator::JSVMStackPages); -+ size_t commitsize = pageSize(); -+ m_reservation = PageReservation::reserve(roundUpAllocationSize(capacity * sizeof(Register), commitsize), OSAllocator::JSVMStackPages); - updateStackLimit(highAddress()); - m_commitEnd = highAddress(); - -@@ -78,7 +79,8 @@ bool JSStack::growSlowCase(Register* new - // Compute the chunk size of additional memory to commit, and see if we - // have it is still within our budget. If not, we'll fail to grow and - // return false. -- long delta = roundUpAllocationSize(reinterpret_cast(m_commitEnd) - reinterpret_cast(newEnd), commitSize); -+ size_t commitsize = pageSize(); -+ long delta = roundUpAllocationSize(reinterpret_cast(m_commitEnd) - reinterpret_cast(newEnd), commitsize); - if (reinterpret_cast(m_commitEnd) - delta <= reinterpret_cast(m_useableEnd)) - return false; - -@@ -134,7 +136,8 @@ void JSStack::enableErrorStackReserve() - - void JSStack::disableErrorStackReserve() - { -- char* useableEnd = reinterpret_cast(reservationEnd()) + commitSize; -+ size_t commitsize = pageSize(); -+ char* useableEnd = reinterpret_cast(reservationEnd()) + commitsize; - m_useableEnd = reinterpret_cast_ptr(useableEnd); - - // By the time we get here, we are guaranteed to be destructing the last diff --git a/webkitgtk-2.4.9-cloop_fix_2_4.patch b/webkitgtk-2.4.9-cloop_fix_2_4.patch deleted file mode 100644 index 1a50e56..0000000 --- a/webkitgtk-2.4.9-cloop_fix_2_4.patch +++ /dev/null @@ -1,141 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_2_4 2016-03-10 15:41:33.812926852 +0100 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2016-03-10 15:47:56.326522861 +0100 -@@ -320,8 +320,8 @@ macro doCallToJavaScript(makeCall, doRet - loadp CallerFrame[cfr], cfr - - .calleeFramePopped: -- loadp Callee[cfr], temp3 # VM.topCallFrame -- loadp ScopeChain[cfr], temp4 -+ loadp Callee + PayloadOffset[cfr], temp3 # VM.topCallFrame -+ loadp ScopeChain + PayloadOffset[cfr], temp4 - storep temp4, [temp3] - - doReturn(extraStackSpace) -@@ -598,7 +598,7 @@ end - - - macro branchIfException(label) -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException -@@ -1574,7 +1574,7 @@ _llint_op_get_by_pname: - loadp JSCell::m_structure[t2], t0 - bpneq t0, JSPropertyNameIterator::m_cachedStructure[t3], .opGetByPnameSlow - loadi 24[PC], t0 -- loadi [cfr, t0, 8], t0 -+ loadi PayloadOffset[cfr, t0, 8], t0 - subi 1, t0 - biaeq t0, JSPropertyNameIterator::m_numCacheableSlots[t3], .opGetByPnameSlow - bilt t0, JSPropertyNameIterator::m_cachedStructureInlineCapacity[t3], .opGetByPnameInlineProperty -@@ -2002,7 +2002,7 @@ _llint_op_next_pname: - loadi 20[PC], t2 - loadi PayloadOffset[cfr, t2, 8], t2 - loadp JSPropertyNameIterator::m_jsStrings[t2], t3 -- loadi [t3, t0, 8], t3 -+ loadi PayloadOffset[t3, t0, 8], t3 - addi 1, t0 - storei t0, PayloadOffset[cfr, t1, 8] - loadi 4[PC], t1 -@@ -2039,7 +2039,7 @@ _llint_op_catch: - # the interpreter's throw trampoline (see _llint_throw_trampoline). - # The throwing code must have known that we were throwing to the interpreter, - # and have set VM::targetInterpreterPCForThrow. -- loadp ScopeChain[cfr], t3 -+ loadp ScopeChain + PayloadOffset[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - loadp VM::callFrameForThrow[t3], cfr -@@ -2122,7 +2122,7 @@ macro nativeCallTrampoline(executableOff - storei CellTag, ScopeChain + TagOffset[cfr] - storei t1, ScopeChain + PayloadOffset[cfr] - if X86 -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - storep cfr, VM::topCallFrame[t3] -@@ -2135,11 +2135,11 @@ macro nativeCallTrampoline(executableOff - move t0, cfr - call executableOffsetToFunction[t1] - addp 16 - 4, sp -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - elsif ARM or ARMv7 or ARMv7_TRADITIONAL or MIPS or SH4 -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - storep cfr, VM::topCallFrame[t3] -@@ -2155,11 +2155,11 @@ macro nativeCallTrampoline(executableOff - end - call executableOffsetToFunction[t1] - restoreReturnAddressBeforeReturn(t3) -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - elsif C_LOOP -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - storep cfr, VM::topCallFrame[t3] -@@ -2172,7 +2172,7 @@ macro nativeCallTrampoline(executableOff - move t2, cfr - cloopCallNative executableOffsetToFunction[t1] - restoreReturnAddressBeforeReturn(t3) -- loadp ScopeChain[cfr], t3 -+ loadp PayloadOffset + ScopeChain[cfr], t3 - andp MarkedBlockMask, t3 - loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 - else -@@ -2212,7 +2212,7 @@ macro resolveScope() - addi 1, t2 - - .resolveScopeAfterActivationCheck: -- loadp ScopeChain[cfr], t0 -+ loadp ScopeChain + PayloadOffset[cfr], t0 - btiz t2, .resolveScopeLoopEnd - - .resolveScopeLoop: -@@ -2271,7 +2271,7 @@ _llint_op_resolve_scope: - - macro loadWithStructureCheck(operand, slowPath) - loadisFromInstruction(operand, t0) -- loadp [cfr, t0, 8], t0 -+ loadp PayloadOffset[cfr, t0, 8], t0 - loadpFromInstruction(5, t1) - bpneq JSCell::m_structure[t0], t1, slowPath - end -diff -up webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm ---- webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_2_4 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2016-03-10 15:41:33.815926841 +0100 -@@ -299,13 +299,21 @@ macro assertNotConstant(index) - end - - macro functionForCallCodeBlockGetter(targetRegister) -- loadp Callee[cfr], targetRegister -+ if JSVALUE64 -+ loadp Callee[cfr], targetRegister -+ else -+ loadp Callee + PayloadOffset[cfr], targetRegister -+ end - loadp JSFunction::m_executable[targetRegister], targetRegister - loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister - end - - macro functionForConstructCodeBlockGetter(targetRegister) -- loadp Callee[cfr], targetRegister -+ if JSVALUE64 -+ loadp Callee[cfr], targetRegister -+ else -+ loadp Callee + PayloadOffset[cfr], targetRegister -+ end - loadp JSFunction::m_executable[targetRegister], targetRegister - loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister - end diff --git a/webkitgtk-2.4.9-sql_initialize_string.patch b/webkitgtk-2.4.9-sql_initialize_string.patch deleted file mode 100644 index a34ef14..0000000 --- a/webkitgtk-2.4.9-sql_initialize_string.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp ---- webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string 2015-09-14 09:25:43.004200172 +0200 -+++ webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp 2015-09-14 09:25:57.852082368 +0200 -@@ -71,7 +71,7 @@ int SQLiteStatement::prepare() - // this lets SQLite avoid an extra string copy. - size_t lengthIncludingNullCharacter = query.length() + 1; - -- const char* tail; -+ const char* tail = nullptr; - int error = sqlite3_prepare_v2(m_database.sqlite3Handle(), query.data(), lengthIncludingNullCharacter, &m_statement, &tail); - - if (error != SQLITE_OK) diff --git a/webkitgtk-aarch64.patch b/webkitgtk-aarch64.patch deleted file mode 100644 index 6a82264..0000000 --- a/webkitgtk-aarch64.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -up webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h ---- webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h 2015-05-20 13:45:35.629023925 +0200 -@@ -49,7 +49,7 @@ - defined(__ARMEL__) || \ - defined(_MIPS_ARCH_MIPS32R2) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 --#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) -+#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 - #elif defined(_M_IX86) || defined(__i386__) - #if defined(_WIN32) -diff -up webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/Platform.h ---- webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 2015-05-20 11:03:24.000000000 +0200 -+++ webkitgtk-2.4.9/Source/WTF/wtf/Platform.h 2015-05-20 13:47:34.439861401 +0200 -@@ -334,6 +334,14 @@ - #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 - #endif - -+/* CPU(AARCH64) - AArch64 */ -+#if defined(__aarch64__) -+#define WTF_CPU_AARCH64 1 -+#if defined(__AARCH64BE__) -+#define WTF_CPU_BIG_ENDIAN 1 -+#endif -+#endif -+ - /* ==== OS() - underlying operating system; only to be used for mandated low-level services like - virtual memory, not to choose a GUI toolkit ==== */ - -@@ -654,7 +662,7 @@ - #if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS))) \ - || (CPU(IA64) && !CPU(IA64_32)) \ - || CPU(ALPHA) \ -- || CPU(ARM64) \ -+ || CPU(AARCH64) \ - || CPU(S390X) \ - || CPU(MIPS64) \ - || CPU(PPC64) \ diff --git a/webkitgtk3.spec b/webkitgtk3.spec index eb32e23..9cfdae2 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -9,8 +9,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.9 -Release: 10%{?dist} +Version: 2.4.10 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -19,21 +19,9 @@ URL: http://www.webkitgtk.org/ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz -# https://bugs.webkit.org/show_bug.cgi?id=130506 - 2.4.10 -Patch0: webkitgtk-aarch64.patch -# https://bugs.webkit.org/show_bug.cgi?id=130237 - 2.4.10 -Patch1: webkitgtk-2.4.1-jsc_proto_call_frame.patch -# https://bugs.webkit.org/show_bug.cgi?id=132333 - never got r+ but used in Fedora for a long time -Patch2: webkitgtk-2.4.1-cloop_operations_scope.patch -# https://bugs.webkit.org/show_bug.cgi?id=137020 - backported to 2.4 branch -Patch3: webkitgtk-2.4.9-cloop_fix_2_4.patch -# https://bugs.webkit.org/show_bug.cgi?id=131449 - 2.4.10 -Patch4: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 -Patch5: webkitgtk-2.4.8-user-agent.patch -# http://trac.webkit.org/changeset/169665 - 2.4.10 -Patch6: webkitgtk-2.4.9-sql_initialize_string.patch -Patch7: webkitgtk-2.4.9-abs.patch +Patch0: webkitgtk-2.4.8-user-agent.patch +Patch1: webkitgtk-2.4.9-abs.patch BuildRequires: at-spi2-core-devel @@ -99,16 +87,8 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" -%patch0 -p1 -b .aarch64 -%patch1 -p1 -b .jsc_proto_call_frame -%patch2 -p1 -b .cloop_operations_scope -%patch3 -p1 -b .cloop_fix_2_4 -%ifarch %{power64} aarch64 ppc -%patch4 -p1 -b .ppc64_align -%endif -%patch5 -p1 -b .user_agent -%patch6 -p1 -b .sql_initialize_string -%patch7 -p1 -b .abs +%patch0 -p1 -b .user_agent +%patch1 -p1 -b .abs %build # Use linker flags to reduce memory consumption @@ -216,6 +196,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Mar 14 2016 Tomas Popela - 2.4.10-1 +- Update to 2.4.10 + * Tue Feb 9 2016 Peter Robinson 2.4.9-10 - Add ruby deps for build From d95fe126002a6fca2e1fc943760afcc3b8e8d79a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 24 Mar 2016 10:46:33 +0100 Subject: [PATCH 26/36] Add a workaround for rhbz#1320240 --- webkitgtk3.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 9cfdae2..ad3b781 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.10 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -108,6 +108,11 @@ This package contains developer documentation for %{name}. %global optflags %{optflags} -DENABLE_YARR_JIT=0 %endif +# Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1320240 +%ifarch s390 s390x ppc %{power64} aarch64 %{mips} +%global optflags %{optflags} -fno-delete-null-pointer-checks +%endif + %if 0%{?fedora} %global optflags %{optflags} -DUSER_AGENT_GTK_DISTRIBUTOR_NAME=\'\\"Fedora\\"\' %endif @@ -196,6 +201,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Thu Mar 24 2016 Tomas Popela - 2.4.10-2 +- Add a workaround for rhbz#1320240 + * Mon Mar 14 2016 Tomas Popela - 2.4.10-1 - Update to 2.4.10 From 465c7452185d59bb186c41ccc88c823f1daa0682 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 5 Apr 2016 10:00:09 +0200 Subject: [PATCH 27/36] rhbz#1321722 - [abrt] evolution: WTF::StringImpl::startsWith(): SIGSEGV with webkitgtk3-2.4.10 --- webkitgtk3.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index ad3b781..16255db 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.10 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -22,7 +22,8 @@ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch0: webkitgtk-2.4.8-user-agent.patch Patch1: webkitgtk-2.4.9-abs.patch - +# http://trac.webkit.org/changeset/165044 +Patch2: webkitgtk-2.4.10-qualified-name.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -89,6 +90,7 @@ This package contains developer documentation for %{name}. %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .user_agent %patch1 -p1 -b .abs +%patch2 -p1 -b .qualified-name %build # Use linker flags to reduce memory consumption @@ -201,6 +203,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Apr 05 2016 Tomas Popela - 2.4.10-3 +- rhbz#1321722 - [abrt] evolution: WTF::StringImpl::startsWith(): SIGSEGV with webkitgtk3-2.4.10 + * Thu Mar 24 2016 Tomas Popela - 2.4.10-2 - Add a workaround for rhbz#1320240 From 8b3d6b636715019e6800513688d653974246ecde Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 5 Apr 2016 10:01:24 +0200 Subject: [PATCH 28/36] Add the missing patch --- webkitgtk-2.4.10-qualified-name.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 webkitgtk-2.4.10-qualified-name.patch diff --git a/webkitgtk-2.4.10-qualified-name.patch b/webkitgtk-2.4.10-qualified-name.patch new file mode 100644 index 0000000..6bd2dd3 --- /dev/null +++ b/webkitgtk-2.4.10-qualified-name.patch @@ -0,0 +1,12 @@ +diff -up webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp.qualified-name webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp +--- webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp.qualified-name 2016-04-05 09:58:17.928258276 +0200 ++++ webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp 2016-04-05 09:58:23.240229758 +0200 +@@ -1056,7 +1056,7 @@ inline void Element::setAttributeInterna + const Attribute& attribute = attributeAt(index); + AtomicString oldValue = attribute.value(); + bool valueChanged = newValue != oldValue; +- const QualifiedName& attributeName = (!inSynchronizationOfLazyAttribute || valueChanged) ? attribute.name() : name; ++ QualifiedName attributeName = (!inSynchronizationOfLazyAttribute || valueChanged) ? attribute.name() : name; + + if (!inSynchronizationOfLazyAttribute) + willModifyAttribute(attributeName, oldValue, newValue); From 08249ae1be0bc4e7f4f83001ff414b4d54ffd457 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 6 Apr 2016 07:48:54 +0200 Subject: [PATCH 29/36] Fix the compilation on aarch64 --- webkitgtk-2.4.10-arm64-asm.patch | 108 +++++++++++++++++++++++++++++++ webkitgtk-2.4.10-arm64-gcc.patch | 45 +++++++++++++ webkitgtk3.spec | 11 +++- 3 files changed, 163 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.10-arm64-asm.patch create mode 100644 webkitgtk-2.4.10-arm64-gcc.patch diff --git a/webkitgtk-2.4.10-arm64-asm.patch b/webkitgtk-2.4.10-arm64-asm.patch new file mode 100644 index 0000000..c5d8695 --- /dev/null +++ b/webkitgtk-2.4.10-arm64-asm.patch @@ -0,0 +1,108 @@ +diff -up webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp.arm64-asm webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp +--- webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp.arm64-asm 2016-04-05 14:49:20.174877057 +0200 ++++ webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp 2016-04-05 14:49:48.680774345 +0200 +@@ -1040,61 +1040,61 @@ TransformationMatrix& TransformationMatr + const double* rightMatrix = &(mat.m_matrix[0][0]); + asm volatile ( + // First, load the leftMatrix completely in memory. The leftMatrix is in v16-v23. +- "mov x4, %[leftMatrix]\n\t" +- "ld1.2d {v16, v17, v18, v19}, [%[leftMatrix]], #64\n\t" +- "ld1.2d {v20, v21, v22, v23}, [%[leftMatrix]]\n\t" ++ "mov x4, %[leftMatrix]\n\t" ++ "ld1 {v16.2d, v17.2d, v18.2d, v19.2d}, [%[leftMatrix]], #64\n\t" ++ "ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [%[leftMatrix]]\n\t" + + // First row. +- "ld4r.2d {v24, v25, v26, v27}, [%[rightMatrix]], #32\n\t" +- "fmul.2d v28, v24, v16\n\t" +- "fmul.2d v29, v24, v17\n\t" +- "fmla.2d v28, v25, v18\n\t" +- "fmla.2d v29, v25, v19\n\t" +- "fmla.2d v28, v26, v20\n\t" +- "fmla.2d v29, v26, v21\n\t" +- "fmla.2d v28, v27, v22\n\t" +- "fmla.2d v29, v27, v23\n\t" ++ "ld4r {v24.2d, v25.2d, v26.2d, v27.2d}, [%[rightMatrix]], #32\n\t" ++ "fmul v28.2d, v24.2d, v16.2d\n\t" ++ "fmul v29.2d, v24.2d, v17.2d\n\t" ++ "fmla v28.2d, v25.2d, v18.2d\n\t" ++ "fmla v29.2d, v25.2d, v19.2d\n\t" ++ "fmla v28.2d, v26.2d, v20.2d\n\t" ++ "fmla v29.2d, v26.2d, v21.2d\n\t" ++ "fmla v28.2d, v27.2d, v22.2d\n\t" ++ "fmla v29.2d, v27.2d, v23.2d\n\t" + +- "ld4r.2d {v0, v1, v2, v3}, [%[rightMatrix]], #32\n\t" +- "st1.2d {v28, v29}, [x4], #32\n\t" ++ "ld4r {v0.2d, v1.2d, v2.2d, v3.2d}, [%[rightMatrix]], #32\n\t" ++ "st1 {v28.2d, v29.2d}, [x4], #32\n\t" + + // Second row. +- "fmul.2d v30, v0, v16\n\t" +- "fmul.2d v31, v0, v17\n\t" +- "fmla.2d v30, v1, v18\n\t" +- "fmla.2d v31, v1, v19\n\t" +- "fmla.2d v30, v2, v20\n\t" +- "fmla.2d v31, v2, v21\n\t" +- "fmla.2d v30, v3, v22\n\t" +- "fmla.2d v31, v3, v23\n\t" ++ "fmul v30.2d, v0.2d, v16.2d\n\t" ++ "fmul v31.2d, v0.2d, v17.2d\n\t" ++ "fmla v30.2d, v1.2d, v18.2d\n\t" ++ "fmla v31.2d, v1.2d, v19.2d\n\t" ++ "fmla v30.2d, v2.2d, v20.2d\n\t" ++ "fmla v31.2d, v2.2d, v21.2d\n\t" ++ "fmla v30.2d, v3.2d, v22.2d\n\t" ++ "fmla v31.2d, v3.2d, v23.2d\n\t" + +- "ld4r.2d {v24, v25, v26, v27}, [%[rightMatrix]], #32\n\t" +- "st1.2d {v30, v31}, [x4], #32\n\t" ++ "ld4r {v24.2d, v25.2d, v26.2d, v27.2d}, [%[rightMatrix]], #32\n\t" ++ "st1 {v30.2d, v31.2d}, [x4], #32\n\t" + + // Third row. +- "fmul.2d v28, v24, v16\n\t" +- "fmul.2d v29, v24, v17\n\t" +- "fmla.2d v28, v25, v18\n\t" +- "fmla.2d v29, v25, v19\n\t" +- "fmla.2d v28, v26, v20\n\t" +- "fmla.2d v29, v26, v21\n\t" +- "fmla.2d v28, v27, v22\n\t" +- "fmla.2d v29, v27, v23\n\t" ++ "fmul v28.2d, v24.2d, v16.2d\n\t" ++ "fmul v29.2d, v24.2d, v17.2d\n\t" ++ "fmla v28.2d, v25.2d, v18.2d\n\t" ++ "fmla v29.2d, v25.2d, v19.2d\n\t" ++ "fmla v28.2d, v26.2d, v20.2d\n\t" ++ "fmla v29.2d, v26.2d, v21.2d\n\t" ++ "fmla v28.2d, v27.2d, v22.2d\n\t" ++ "fmla v29.2d, v27.2d, v23.2d\n\t" + +- "ld4r.2d {v0, v1, v2, v3}, [%[rightMatrix]], #32\n\t" +- "st1.2d {v28, v29}, [x4], #32\n\t" ++ "ld4r {v0.2d, v1.2d, v2.2d, v3.2d}, [%[rightMatrix]], #32\n\t" ++ "st1 {v28.2d, v29.2d}, [x4], #32\n\t" + + // Fourth row. +- "fmul.2d v30, v0, v16\n\t" +- "fmul.2d v31, v0, v17\n\t" +- "fmla.2d v30, v1, v18\n\t" +- "fmla.2d v31, v1, v19\n\t" +- "fmla.2d v30, v2, v20\n\t" +- "fmla.2d v31, v2, v21\n\t" +- "fmla.2d v30, v3, v22\n\t" +- "fmla.2d v31, v3, v23\n\t" ++ "fmul v30.2d, v0.2d, v16.2d\n\t" ++ "fmul v31.2d, v0.2d, v17.2d\n\t" ++ "fmla v30.2d, v1.2d, v18.2d\n\t" ++ "fmla v31.2d, v1.2d, v19.2d\n\t" ++ "fmla v30.2d, v2.2d, v20.2d\n\t" ++ "fmla v31.2d, v2.2d, v21.2d\n\t" ++ "fmla v30.2d, v3.2d, v22.2d\n\t" ++ "fmla v31.2d, v3.2d, v23.2d\n\t" + +- "st1.2d {v30, v31}, [x4]\n\t" ++ "st1 {v30.2d, v31.2d}, [x4]\n\t" + + : [leftMatrix]"+r"(leftMatrix), [rightMatrix]"+r"(rightMatrix) + : diff --git a/webkitgtk-2.4.10-arm64-gcc.patch b/webkitgtk-2.4.10-arm64-gcc.patch new file mode 100644 index 0000000..bad1e64 --- /dev/null +++ b/webkitgtk-2.4.10-arm64-gcc.patch @@ -0,0 +1,45 @@ +diff -up webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h.arm64_gcc webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h +--- webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h.arm64_gcc 2016-04-05 13:17:49.467473861 +0200 ++++ webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h 2016-04-05 13:18:00.812429048 +0200 +@@ -113,6 +113,20 @@ inline bool weakCompareAndSwap(volatile + : "r"(expected), "r"(newValue) + : "memory"); + result = !result; ++#elif CPU(ARM64) && COMPILER(GCC) ++ unsigned tmp; ++ unsigned result; ++ asm volatile( ++ "mov %w1, #1\n\t" ++ "ldxr %w2, [%0]\n\t" ++ "cmp %w3, %w2\n\t" ++ "b.ne 0f\n\t" ++ "stxr %w1, %w4, [%0]\n\t" ++ "0:" ++ : "+r"(location), "=&r"(result), "=&r"(tmp) ++ : "r"(expected), "r"(newValue) ++ : "memory"); ++ result = !result; + #elif CPU(ARM64) + unsigned tmp; + unsigned result; +@@ -153,6 +167,20 @@ inline bool weakCompareAndSwap(void*vola + : "memory" + ); + return result; ++#elif CPU(ARM64) && COMPILER(GCC) ++ bool result; ++ void* tmp; ++ asm volatile( ++ "mov %w1, #1\n\t" ++ "ldxr %x2, [%0]\n\t" ++ "cmp %x3, %x2\n\t" ++ "b.ne 0f\n\t" ++ "stxr %w1, %x4, [%0]\n\t" ++ "0:" ++ : "+r"(location), "=&r"(result), "=&r"(tmp) ++ : "r"(expected), "r"(newValue) ++ : "memory"); ++ return !result; + #elif CPU(ARM64) + bool result; + void* tmp; diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 16255db..18901a3 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.10 -Release: 3%{?dist} +Release: 4%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -24,6 +24,10 @@ Patch0: webkitgtk-2.4.8-user-agent.patch Patch1: webkitgtk-2.4.9-abs.patch # http://trac.webkit.org/changeset/165044 Patch2: webkitgtk-2.4.10-qualified-name.patch +# http://trac.webkit.org/changeset/166234 +Patch3: webkitgtk-2.4.10-arm64-gcc.patch +# http://trac.webkit.org/changeset/166233 +Patch4: webkitgtk-2.4.10-arm64-asm.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -91,6 +95,8 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .user_agent %patch1 -p1 -b .abs %patch2 -p1 -b .qualified-name +%patch3 -p1 -b .arm64-gcc.patch +%patch4 -p1 -b .arm64-asm.patch %build # Use linker flags to reduce memory consumption @@ -203,6 +209,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Apr 05 2016 Tomas Popela - 2.4.10-4 +- Fix the compilation on aarch64 + * Tue Apr 05 2016 Tomas Popela - 2.4.10-3 - rhbz#1321722 - [abrt] evolution: WTF::StringImpl::startsWith(): SIGSEGV with webkitgtk3-2.4.10 From 6b1eb0d89d8099c85a20b9e0463c21a6e1ba8f71 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 11 Apr 2016 08:45:56 +0200 Subject: [PATCH 30/36] Update to 2.4.11 --- sources | 2 +- webkitgtk-2.4.10-arm64-asm.patch | 108 -------------------------- webkitgtk-2.4.10-arm64-gcc.patch | 45 ----------- webkitgtk-2.4.10-qualified-name.patch | 12 --- webkitgtk3.spec | 18 ++--- 5 files changed, 7 insertions(+), 178 deletions(-) delete mode 100644 webkitgtk-2.4.10-arm64-asm.patch delete mode 100644 webkitgtk-2.4.10-arm64-gcc.patch delete mode 100644 webkitgtk-2.4.10-qualified-name.patch diff --git a/sources b/sources index 65e6d9c..b11eb4f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -1b3f18d4087dfc648e8060c14e16e202 webkitgtk-2.4.10.tar.xz +24a25ccc30a7914ae50922aedf24b7bc webkitgtk-2.4.11.tar.xz diff --git a/webkitgtk-2.4.10-arm64-asm.patch b/webkitgtk-2.4.10-arm64-asm.patch deleted file mode 100644 index c5d8695..0000000 --- a/webkitgtk-2.4.10-arm64-asm.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp.arm64-asm webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp ---- webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp.arm64-asm 2016-04-05 14:49:20.174877057 +0200 -+++ webkitgtk-2.4.10/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp 2016-04-05 14:49:48.680774345 +0200 -@@ -1040,61 +1040,61 @@ TransformationMatrix& TransformationMatr - const double* rightMatrix = &(mat.m_matrix[0][0]); - asm volatile ( - // First, load the leftMatrix completely in memory. The leftMatrix is in v16-v23. -- "mov x4, %[leftMatrix]\n\t" -- "ld1.2d {v16, v17, v18, v19}, [%[leftMatrix]], #64\n\t" -- "ld1.2d {v20, v21, v22, v23}, [%[leftMatrix]]\n\t" -+ "mov x4, %[leftMatrix]\n\t" -+ "ld1 {v16.2d, v17.2d, v18.2d, v19.2d}, [%[leftMatrix]], #64\n\t" -+ "ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [%[leftMatrix]]\n\t" - - // First row. -- "ld4r.2d {v24, v25, v26, v27}, [%[rightMatrix]], #32\n\t" -- "fmul.2d v28, v24, v16\n\t" -- "fmul.2d v29, v24, v17\n\t" -- "fmla.2d v28, v25, v18\n\t" -- "fmla.2d v29, v25, v19\n\t" -- "fmla.2d v28, v26, v20\n\t" -- "fmla.2d v29, v26, v21\n\t" -- "fmla.2d v28, v27, v22\n\t" -- "fmla.2d v29, v27, v23\n\t" -+ "ld4r {v24.2d, v25.2d, v26.2d, v27.2d}, [%[rightMatrix]], #32\n\t" -+ "fmul v28.2d, v24.2d, v16.2d\n\t" -+ "fmul v29.2d, v24.2d, v17.2d\n\t" -+ "fmla v28.2d, v25.2d, v18.2d\n\t" -+ "fmla v29.2d, v25.2d, v19.2d\n\t" -+ "fmla v28.2d, v26.2d, v20.2d\n\t" -+ "fmla v29.2d, v26.2d, v21.2d\n\t" -+ "fmla v28.2d, v27.2d, v22.2d\n\t" -+ "fmla v29.2d, v27.2d, v23.2d\n\t" - -- "ld4r.2d {v0, v1, v2, v3}, [%[rightMatrix]], #32\n\t" -- "st1.2d {v28, v29}, [x4], #32\n\t" -+ "ld4r {v0.2d, v1.2d, v2.2d, v3.2d}, [%[rightMatrix]], #32\n\t" -+ "st1 {v28.2d, v29.2d}, [x4], #32\n\t" - - // Second row. -- "fmul.2d v30, v0, v16\n\t" -- "fmul.2d v31, v0, v17\n\t" -- "fmla.2d v30, v1, v18\n\t" -- "fmla.2d v31, v1, v19\n\t" -- "fmla.2d v30, v2, v20\n\t" -- "fmla.2d v31, v2, v21\n\t" -- "fmla.2d v30, v3, v22\n\t" -- "fmla.2d v31, v3, v23\n\t" -+ "fmul v30.2d, v0.2d, v16.2d\n\t" -+ "fmul v31.2d, v0.2d, v17.2d\n\t" -+ "fmla v30.2d, v1.2d, v18.2d\n\t" -+ "fmla v31.2d, v1.2d, v19.2d\n\t" -+ "fmla v30.2d, v2.2d, v20.2d\n\t" -+ "fmla v31.2d, v2.2d, v21.2d\n\t" -+ "fmla v30.2d, v3.2d, v22.2d\n\t" -+ "fmla v31.2d, v3.2d, v23.2d\n\t" - -- "ld4r.2d {v24, v25, v26, v27}, [%[rightMatrix]], #32\n\t" -- "st1.2d {v30, v31}, [x4], #32\n\t" -+ "ld4r {v24.2d, v25.2d, v26.2d, v27.2d}, [%[rightMatrix]], #32\n\t" -+ "st1 {v30.2d, v31.2d}, [x4], #32\n\t" - - // Third row. -- "fmul.2d v28, v24, v16\n\t" -- "fmul.2d v29, v24, v17\n\t" -- "fmla.2d v28, v25, v18\n\t" -- "fmla.2d v29, v25, v19\n\t" -- "fmla.2d v28, v26, v20\n\t" -- "fmla.2d v29, v26, v21\n\t" -- "fmla.2d v28, v27, v22\n\t" -- "fmla.2d v29, v27, v23\n\t" -+ "fmul v28.2d, v24.2d, v16.2d\n\t" -+ "fmul v29.2d, v24.2d, v17.2d\n\t" -+ "fmla v28.2d, v25.2d, v18.2d\n\t" -+ "fmla v29.2d, v25.2d, v19.2d\n\t" -+ "fmla v28.2d, v26.2d, v20.2d\n\t" -+ "fmla v29.2d, v26.2d, v21.2d\n\t" -+ "fmla v28.2d, v27.2d, v22.2d\n\t" -+ "fmla v29.2d, v27.2d, v23.2d\n\t" - -- "ld4r.2d {v0, v1, v2, v3}, [%[rightMatrix]], #32\n\t" -- "st1.2d {v28, v29}, [x4], #32\n\t" -+ "ld4r {v0.2d, v1.2d, v2.2d, v3.2d}, [%[rightMatrix]], #32\n\t" -+ "st1 {v28.2d, v29.2d}, [x4], #32\n\t" - - // Fourth row. -- "fmul.2d v30, v0, v16\n\t" -- "fmul.2d v31, v0, v17\n\t" -- "fmla.2d v30, v1, v18\n\t" -- "fmla.2d v31, v1, v19\n\t" -- "fmla.2d v30, v2, v20\n\t" -- "fmla.2d v31, v2, v21\n\t" -- "fmla.2d v30, v3, v22\n\t" -- "fmla.2d v31, v3, v23\n\t" -+ "fmul v30.2d, v0.2d, v16.2d\n\t" -+ "fmul v31.2d, v0.2d, v17.2d\n\t" -+ "fmla v30.2d, v1.2d, v18.2d\n\t" -+ "fmla v31.2d, v1.2d, v19.2d\n\t" -+ "fmla v30.2d, v2.2d, v20.2d\n\t" -+ "fmla v31.2d, v2.2d, v21.2d\n\t" -+ "fmla v30.2d, v3.2d, v22.2d\n\t" -+ "fmla v31.2d, v3.2d, v23.2d\n\t" - -- "st1.2d {v30, v31}, [x4]\n\t" -+ "st1 {v30.2d, v31.2d}, [x4]\n\t" - - : [leftMatrix]"+r"(leftMatrix), [rightMatrix]"+r"(rightMatrix) - : diff --git a/webkitgtk-2.4.10-arm64-gcc.patch b/webkitgtk-2.4.10-arm64-gcc.patch deleted file mode 100644 index bad1e64..0000000 --- a/webkitgtk-2.4.10-arm64-gcc.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h.arm64_gcc webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h ---- webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h.arm64_gcc 2016-04-05 13:17:49.467473861 +0200 -+++ webkitgtk-2.4.10/Source/WTF/wtf/Atomics.h 2016-04-05 13:18:00.812429048 +0200 -@@ -113,6 +113,20 @@ inline bool weakCompareAndSwap(volatile - : "r"(expected), "r"(newValue) - : "memory"); - result = !result; -+#elif CPU(ARM64) && COMPILER(GCC) -+ unsigned tmp; -+ unsigned result; -+ asm volatile( -+ "mov %w1, #1\n\t" -+ "ldxr %w2, [%0]\n\t" -+ "cmp %w3, %w2\n\t" -+ "b.ne 0f\n\t" -+ "stxr %w1, %w4, [%0]\n\t" -+ "0:" -+ : "+r"(location), "=&r"(result), "=&r"(tmp) -+ : "r"(expected), "r"(newValue) -+ : "memory"); -+ result = !result; - #elif CPU(ARM64) - unsigned tmp; - unsigned result; -@@ -153,6 +167,20 @@ inline bool weakCompareAndSwap(void*vola - : "memory" - ); - return result; -+#elif CPU(ARM64) && COMPILER(GCC) -+ bool result; -+ void* tmp; -+ asm volatile( -+ "mov %w1, #1\n\t" -+ "ldxr %x2, [%0]\n\t" -+ "cmp %x3, %x2\n\t" -+ "b.ne 0f\n\t" -+ "stxr %w1, %x4, [%0]\n\t" -+ "0:" -+ : "+r"(location), "=&r"(result), "=&r"(tmp) -+ : "r"(expected), "r"(newValue) -+ : "memory"); -+ return !result; - #elif CPU(ARM64) - bool result; - void* tmp; diff --git a/webkitgtk-2.4.10-qualified-name.patch b/webkitgtk-2.4.10-qualified-name.patch deleted file mode 100644 index 6bd2dd3..0000000 --- a/webkitgtk-2.4.10-qualified-name.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp.qualified-name webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp ---- webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp.qualified-name 2016-04-05 09:58:17.928258276 +0200 -+++ webkitgtk-2.4.10/Source/WebCore/dom/Element.cpp 2016-04-05 09:58:23.240229758 +0200 -@@ -1056,7 +1056,7 @@ inline void Element::setAttributeInterna - const Attribute& attribute = attributeAt(index); - AtomicString oldValue = attribute.value(); - bool valueChanged = newValue != oldValue; -- const QualifiedName& attributeName = (!inSynchronizationOfLazyAttribute || valueChanged) ? attribute.name() : name; -+ QualifiedName attributeName = (!inSynchronizationOfLazyAttribute || valueChanged) ? attribute.name() : name; - - if (!inSynchronizationOfLazyAttribute) - willModifyAttribute(attributeName, oldValue, newValue); diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 18901a3..dd6c8a4 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -9,8 +9,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.10 -Release: 4%{?dist} +Version: 2.4.11 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -22,12 +22,6 @@ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch0: webkitgtk-2.4.8-user-agent.patch Patch1: webkitgtk-2.4.9-abs.patch -# http://trac.webkit.org/changeset/165044 -Patch2: webkitgtk-2.4.10-qualified-name.patch -# http://trac.webkit.org/changeset/166234 -Patch3: webkitgtk-2.4.10-arm64-gcc.patch -# http://trac.webkit.org/changeset/166233 -Patch4: webkitgtk-2.4.10-arm64-asm.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -94,9 +88,6 @@ This package contains developer documentation for %{name}. %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .user_agent %patch1 -p1 -b .abs -%patch2 -p1 -b .qualified-name -%patch3 -p1 -b .arm64-gcc.patch -%patch4 -p1 -b .arm64-asm.patch %build # Use linker flags to reduce memory consumption @@ -109,7 +100,7 @@ This package contains developer documentation for %{name}. %ifarch ppc # Use linker flag -relax to get WebKit2 build under ppc(32) with JIT disabled -%global optflags %{optflags} -Wl,-relax -latomic +%global optflags %{optflags} -Wl,-relax %endif %ifarch s390 s390x ppc %{power64} aarch64 %{mips} @@ -209,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Apr 11 2016 Tomas Popela - 2.4.11-1 +- Update to 2.4.11 + * Tue Apr 05 2016 Tomas Popela - 2.4.10-4 - Fix the compilation on aarch64 From 1f87ce468b9713abec87f7a3667f830922c6bb11 Mon Sep 17 00:00:00 2001 From: David Tardon Date: Fri, 15 Apr 2016 20:17:10 +0200 Subject: [PATCH 31/36] rebuild for ICU 57.1 --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index dd6c8a4..88adc31 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.11 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -200,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Apr 15 2016 David Tardon - 2.4.11-2 +- rebuild for ICU 57.1 + * Mon Apr 11 2016 Tomas Popela - 2.4.11-1 - Update to 2.4.11 From c64521c782468bfc7390d4b292c11311629e24c4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 27 Jun 2016 07:30:50 +0200 Subject: [PATCH 32/36] Workaround crashes with gcc 6.1 rhbz#1349856 - Programs using webkitgtk3 compiled with gcc 6.1 crash on start. F.e: midori, xombrero, etc. --- webkitgtk3.spec | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 88adc31..db1a0e1 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.11 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -107,10 +107,8 @@ This package contains developer documentation for %{name}. %global optflags %{optflags} -DENABLE_YARR_JIT=0 %endif -# Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1320240 -%ifarch s390 s390x ppc %{power64} aarch64 %{mips} +# Workaround crashes with gcc 6.1 %global optflags %{optflags} -fno-delete-null-pointer-checks -%endif %if 0%{?fedora} %global optflags %{optflags} -DUSER_AGENT_GTK_DISTRIBUTOR_NAME=\'\\"Fedora\\"\' @@ -200,6 +198,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Jun 24 2016 Tomas Popela - 2.4.11-3 +- Workaround crashes with gcc 6.1 +- rhbz#1349856 - Programs using webkitgtk3 compiled with gcc 6.1 crash on start. F.e: midori, xombrero, etc. + * Fri Apr 15 2016 David Tardon - 2.4.11-2 - rebuild for ICU 57.1 From 9d9718b9328d06fe9c99c1bdff876a06ac63d414 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Sep 2016 09:40:01 +0200 Subject: [PATCH 33/36] Update the package description so it reflects the current state of package. --- webkitgtk3.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index db1a0e1..a66b861 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -64,7 +64,7 @@ Requires: geoclue2 WebKitGTK+ is the port of the portable web rendering engine WebKit to the GTK+ platform. -This package contains WebKitGTK+ for GTK+ 3. +This package contains an insecure and deprecated version of WebKitGTK+ for GTK+ 3. Use WebKit2 instead. %package devel Summary: Development files for %{name} From de68f368caedb41ad1b6261908af0d934ccc1cc7 Mon Sep 17 00:00:00 2001 From: Sandro Mani Date: Wed, 1 Feb 2017 19:33:11 +0100 Subject: [PATCH 34/36] Rebuild (libwebp) --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index a66b861..5831e25 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.11 -Release: 3%{?dist} +Release: 4%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -198,6 +198,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Feb 01 2017 Sandro Mani - 2.4.11-4 +- Rebuild (libwebp) + * Fri Jun 24 2016 Tomas Popela - 2.4.11-3 - Workaround crashes with gcc 6.1 - rhbz#1349856 - Programs using webkitgtk3 compiled with gcc 6.1 crash on start. F.e: midori, xombrero, etc. From 38d662017b426adc20215f7f37e190b1f5437d1d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 11 Feb 2017 17:18:55 +0000 Subject: [PATCH 35/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 5831e25..f24275b 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.11 -Release: 4%{?dist} +Release: 5%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -198,6 +198,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Sat Feb 11 2017 Fedora Release Engineering - 2.4.11-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Wed Feb 01 2017 Sandro Mani - 2.4.11-4 - Rebuild (libwebp) From 6f85a399bfceed052fcb929e93c121d6cadfc7e3 Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Tue, 14 Mar 2017 10:33:22 -0500 Subject: [PATCH 36/36] https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/AKVB363GFCHHJ5MTHGVYHYT6NLLTF5VM/ --- .gitignore | 1 - dead.package | 1 + sources | 1 - webkitgtk-2.4.8-user-agent.patch | 27 -- webkitgtk-2.4.9-abs.patch | 26 -- webkitgtk3.spec | 742 ------------------------------- 6 files changed, 1 insertion(+), 797 deletions(-) delete mode 100644 .gitignore create mode 100644 dead.package delete mode 100644 sources delete mode 100644 webkitgtk-2.4.8-user-agent.patch delete mode 100644 webkitgtk-2.4.9-abs.patch delete mode 100644 webkitgtk3.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 90f2733..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/webkitgtk-2.*.tar.xz diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a60d10e --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/AKVB363GFCHHJ5MTHGVYHYT6NLLTF5VM/ diff --git a/sources b/sources deleted file mode 100644 index b11eb4f..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -24a25ccc30a7914ae50922aedf24b7bc webkitgtk-2.4.11.tar.xz diff --git a/webkitgtk-2.4.8-user-agent.patch b/webkitgtk-2.4.8-user-agent.patch deleted file mode 100644 index 84b5117..0000000 --- a/webkitgtk-2.4.8-user-agent.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/webkitgtk-2.4.9-abs.patch b/webkitgtk-2.4.9-abs.patch deleted file mode 100644 index 9a1c5f9..0000000 --- a/webkitgtk-2.4.9-abs.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp ---- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2015-05-20 03:03:24.000000000 -0600 -+++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2016-02-07 11:30:42.392686308 -0700 -@@ -85,8 +85,8 @@ - guint32 eventTime = getEventTime(event); - - if ((event->type == GDK_2BUTTON_PRESS || event->type == GDK_3BUTTON_PRESS) -- || ((abs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance) -- && (abs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance) -+ || ((fabs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance) -+ && (fabs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance) - && (eventTime - m_previousClickTime < static_cast(doubleClickTime)) - && (buttonEvent->button == m_previousClickButton))) - m_currentClickCount++; -diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp ---- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2015-05-20 03:03:24.000000000 -0600 -+++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2016-02-07 11:49:36.384691005 -0700 -@@ -659,7 +659,7 @@ - if (!std::isfinite(time)) - return String::fromUTF8(_("indefinite time")); - -- int seconds = static_cast(abs(time)); -+ int seconds = static_cast(fabs(time)); - int days = seconds / (60 * 60 * 24); - int hours = seconds / (60 * 60); - int minutes = (seconds / 60) % 60; diff --git a/webkitgtk3.spec b/webkitgtk3.spec deleted file mode 100644 index f24275b..0000000 --- a/webkitgtk3.spec +++ /dev/null @@ -1,742 +0,0 @@ -# Fix rebuild on non-Fedora -%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} - -## NOTE: Lots of files in various subdirectories have the same name (such as -## "LICENSE") so this short macro allows us to distinguish them by using their -## directory names (from the source tree) as prefixes for the files. -%global add_to_doc_files() \ - mkdir -p %{buildroot}%{_pkgdocdir} ||: ; \ - cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') - -Name: webkitgtk3 -Version: 2.4.11 -Release: 5%{?dist} -Summary: GTK+ Web content engine library - -Group: Development/Libraries -License: LGPLv2+ and BSD -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.4.8-user-agent.patch -Patch1: webkitgtk-2.4.9-abs.patch - -BuildRequires: at-spi2-core-devel -BuildRequires: bison -BuildRequires: cairo-devel -BuildRequires: chrpath -BuildRequires: enchant-devel -BuildRequires: flex -BuildRequires: fontconfig-devel >= 2.5 -BuildRequires: freetype-devel -BuildRequires: geoclue2-devel -BuildRequires: gettext -BuildRequires: gperf -BuildRequires: gstreamer1-devel -BuildRequires: gstreamer1-plugins-base-devel -BuildRequires: gtk2-devel -BuildRequires: gtk3-devel >= 3.6 -BuildRequires: gtk-doc -BuildRequires: glib2-devel >= 2.36.0 -BuildRequires: harfbuzz-devel -BuildRequires: libsoup-devel >= 2.42.0 -BuildRequires: libicu-devel -BuildRequires: libjpeg-devel -BuildRequires: libpng-devel -BuildRequires: libsecret-devel -BuildRequires: libwebp-devel -BuildRequires: libxslt-devel -BuildRequires: libXt-devel -BuildRequires: pcre-devel -BuildRequires: sqlite-devel -BuildRequires: gobject-introspection-devel >= 1.32.0 -BuildRequires: perl-Switch -BuildRequires: ruby rubypick rubygems -BuildRequires: mesa-libGL-devel -%ifarch ppc -BuildRequires: libatomic -%endif -Requires: geoclue2 - -%description -WebKitGTK+ is the port of the portable web rendering engine WebKit to the -GTK+ platform. - -This package contains an insecure and deprecated version of WebKitGTK+ for GTK+ 3. Use WebKit2 instead. - -%package devel -Summary: Development files for %{name} -Group: Development/Libraries -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description devel -The %{name}-devel package contains libraries, build data, and header -files for developing applications that use %{name}. - -%package doc -Summary: Documentation files for %{name} -Group: Documentation -BuildArch: noarch -Requires: %{name} = %{version}-%{release} - -%description doc -This package contains developer documentation for %{name}. - -%prep -%setup -qn "webkitgtk-%{version}" -%patch0 -p1 -b .user_agent -%patch1 -p1 -b .abs - -%build -# Use linker flags to reduce memory consumption -%global optflags %{optflags} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - -%ifarch s390 %{arm} mips mipsel -# Decrease debuginfo verbosity to reduce memory consumption even more -%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') -%endif - -%ifarch ppc -# Use linker flag -relax to get WebKit2 build under ppc(32) with JIT disabled -%global optflags %{optflags} -Wl,-relax -%endif - -%ifarch s390 s390x ppc %{power64} aarch64 %{mips} -%global optflags %{optflags} -DENABLE_YARR_JIT=0 -%endif - -# Workaround crashes with gcc 6.1 -%global optflags %{optflags} -fno-delete-null-pointer-checks - -%if 0%{?fedora} -%global optflags %{optflags} -DUSER_AGENT_GTK_DISTRIBUTOR_NAME=\'\\"Fedora\\"\' -%endif - -%configure \ - --with-gtk=3.0 \ - --disable-webkit2 \ -%ifarch s390 s390x ppc %{power64} aarch64 %{mips} - --disable-jit \ -%else - --enable-jit \ -%endif - --enable-introspection - -mkdir -p DerivedSources/webkit -mkdir -p DerivedSources/WebCore -mkdir -p DerivedSources/ANGLE -mkdir -p DerivedSources/WebKit2 -mkdir -p DerivedSources/webkitdom/ -mkdir -p DerivedSources/InjectedBundle -mkdir -p DerivedSources/Platform - -# Disable the parallel compilation as it fails to compile in brew. -# https://bugs.webkit.org/show_bug.cgi?id=34846 -# make %{_smp_mflags} V=1 -make -j1 V=1 - -%install -make install DESTDIR=%{buildroot} - -install -d -m 755 %{buildroot}%{_libexecdir}/%{name} -install -m 755 Programs/GtkLauncher %{buildroot}%{_libexecdir}/%{name} - -# Remove lib64 rpaths -chrpath --delete %{buildroot}%{_bindir}/jsc-3 -chrpath --delete %{buildroot}%{_libdir}/libwebkitgtk-3.0.so -chrpath --delete %{buildroot}%{_libexecdir}/%{name}/GtkLauncher - -# Remove .la files -find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete - -%find_lang WebKitGTK-3.0 - -## Finally, copy over and rename the various files for %%doc inclusion. -%add_to_doc_files Source/WebKit/LICENSE -%add_to_doc_files Source/WebKit/gtk/NEWS -%add_to_doc_files Source/WebCore/icu/LICENSE -%add_to_doc_files Source/WebCore/LICENSE-APPLE -%add_to_doc_files Source/WebCore/LICENSE-LGPL-2 -%add_to_doc_files Source/WebCore/LICENSE-LGPL-2.1 -%add_to_doc_files Source/JavaScriptCore/COPYING.LIB -%add_to_doc_files Source/JavaScriptCore/THANKS -%add_to_doc_files Source/JavaScriptCore/AUTHORS -%add_to_doc_files Source/JavaScriptCore/icu/README -%add_to_doc_files Source/JavaScriptCore/icu/LICENSE - - -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig - - -%files -f WebKitGTK-3.0.lang -%doc %{_pkgdocdir}/ -%{_libdir}/libwebkitgtk-3.0.so.* -%{_libdir}/libjavascriptcoregtk-3.0.so.* -%{_libdir}/girepository-1.0/WebKit-3.0.typelib -%{_libdir}/girepository-1.0/JavaScriptCore-3.0.typelib -%dir %{_libexecdir}/%{name} -%{_libexecdir}/%{name}/GtkLauncher -%{_datadir}/webkitgtk-3.0 - -%files devel -%{_bindir}/jsc-3 -%{_includedir}/webkitgtk-3.0 -%{_libdir}/libwebkitgtk-3.0.so -%{_libdir}/libjavascriptcoregtk-3.0.so -%{_libdir}/pkgconfig/webkitgtk-3.0.pc -%{_libdir}/pkgconfig/javascriptcoregtk-3.0.pc -%{_datadir}/gir-1.0/WebKit-3.0.gir -%{_datadir}/gir-1.0/JavaScriptCore-3.0.gir - -%files doc -%dir %{_datadir}/gtk-doc -%dir %{_datadir}/gtk-doc/html -%{_datadir}/gtk-doc/html/webkitgtk -%{_datadir}/gtk-doc/html/webkitdomgtk - -%changelog -* Sat Feb 11 2017 Fedora Release Engineering - 2.4.11-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Feb 01 2017 Sandro Mani - 2.4.11-4 -- Rebuild (libwebp) - -* Fri Jun 24 2016 Tomas Popela - 2.4.11-3 -- Workaround crashes with gcc 6.1 -- rhbz#1349856 - Programs using webkitgtk3 compiled with gcc 6.1 crash on start. F.e: midori, xombrero, etc. - -* Fri Apr 15 2016 David Tardon - 2.4.11-2 -- rebuild for ICU 57.1 - -* Mon Apr 11 2016 Tomas Popela - 2.4.11-1 -- Update to 2.4.11 - -* Tue Apr 05 2016 Tomas Popela - 2.4.10-4 -- Fix the compilation on aarch64 - -* Tue Apr 05 2016 Tomas Popela - 2.4.10-3 -- rhbz#1321722 - [abrt] evolution: WTF::StringImpl::startsWith(): SIGSEGV with webkitgtk3-2.4.10 - -* Thu Mar 24 2016 Tomas Popela - 2.4.10-2 -- Add a workaround for rhbz#1320240 - -* Mon Mar 14 2016 Tomas Popela - 2.4.10-1 -- Update to 2.4.10 - -* Tue Feb 9 2016 Peter Robinson 2.4.9-10 -- Add ruby deps for build - -* Sat Feb 06 2016 Tomas Popela - 2.4.9-9 -- Fix the build with gcc 6 (use Kevin's patch from the webkitgtk package) - -* Fri Feb 05 2016 Fedora Release Engineering - 2.4.9-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Dec 30 2015 Michal Toman - 2.4.9-7 -- Add support for MIPS - -* Mon Dec 28 2015 Igor Gnatenko - 2.4.9-6 -- Rebuilt for libwebp soname bump - -* Mon Dec 07 2015 Tomas Popela - 2.4.9-5 -- rhbz#1289053 - Retire nspluginwrapper and remove from Fedora 24 - -* Wed Oct 28 2015 David Tardon - 2.4.9-4 -- rebuild for ICU 56.1 - -* Fri Sep 25 2015 Tomas Popela - 2.4.9-3 -- rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV - Initialize string in SQLiteStatement before using it - -* Fri Jun 19 2015 Fedora Release Engineering - 2.4.9-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed May 20 2015 Tomas Popela - 2.4.9-1 -- Update to 2.4.9 - -* Sat May 02 2015 Kalev Lember - 2.4.8-9 -- Rebuilt for GCC 5 C++11 ABI change - -* Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 -- Remove the fix for late certificate validation because we use --disable-webkit2 - -* Tue Mar 17 2015 Michael Catanzaro - 2.4.8-7 -- Backport fix for late certificate validation - -* Tue Mar 10 2015 Tomas Popela - 2.4.8-6 -- Backport fix for use-after-free when destroying frame - -* Fri Feb 27 2015 Michael Catanzaro - 2.4.8-5 -- Add Fedora branding to the user agent - -* Sat Feb 21 2015 Till Maas - 2.4.8-4 -- Rebuilt for Fedora 23 Change - https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code - -* Wed Feb 18 2015 Tomas Popela - 2.4.8-3 -- Add support for gcc 5.0 -- Let the package compile with latest glib - -* Mon Jan 26 2015 David Tardon - 2.4.8-2 -- rebuild for ICU 54.1 - -* Wed Jan 07 2015 Tomas Popela - 2.4.8-1 -- Update to 2.4.8 - -* Wed Oct 22 2014 Tomas Popela - 2.4.7-1 -- Update to 2.4.7 - -* Tue Oct 21 2014 Tomas Popela - 2.4.6-2 -- Disable the SSLv3 to address the POODLE vulnerability - -* Mon Sep 29 2014 Tomas Popela - 2.4.6-1 -- Update to 2.4.6 -- Run make with -j1 to let it successfully compile in brew - -* Tue Sep 02 2014 Tomas Popela - 2.4.5-4 -- Rebase the aarch64 patch - -* Tue Aug 26 2014 Kalev Lember - 2.4.5-3 -- Disable support for webkit2 API which is now provided by the webkitgtk4 - package - -* Tue Aug 26 2014 David Tardon - 2.4.5-2 -- rebuild for ICU 53.1 - -* Tue Aug 26 2014 Tomas Popela - 2.4.5-1 -- Update to 2.4.5 - -* Mon Aug 18 2014 Fedora Release Engineering - 2.4.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Wed Jul 23 2014 Tomas Popela - 2.4.4-4 -- Remove geoclue-devel from BR - -* Wed Jul 23 2014 Tomas Popela - 2.4.4-3 -- Fix CLoop on ppc32 and s390 -- Add geoclue-devel as BR as WK1 needs it - -* Tue Jul 22 2014 Kalev Lember - 2.4.4-2 -- Rebuilt for gobject-introspection 1.41.4 - -* Tue Jul 08 2014 Kalev Lember - 2.4.4-1 -- Update to 2.4.4 - -* Fri Jul 4 2014 Yaakov Selkowitz - 2.4.3-4 -- Fix for 64k pages on aarch64 (#1074093, #1113345) - -* Fri Jul 04 2014 Tomas Popela 2.4.3-3 -- rhbz#1088480 - [abrt] libwebkit2gtk: TSymbolTableLevel::~TSymbolTableLevel(): WebKitWebProcess killed by SIGSEGV - -* Sun Jun 08 2014 Fedora Release Engineering - 2.4.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Tue May 27 2014 Tomas Popela 2.4.3-1 -- Update to 2.4.3 - -* Sun May 18 2014 Peter Robinson 2.4.2-4 -- Fix aarch64 build - -* Wed May 14 2014 Tomas Popela 2.4.2-3 -- Add support for ppc64le -- Fix for CLoop on ppc64, ppc64le and s390x - -* Tue May 13 2014 Karsten Hopp 2.4.2-2 -- PPC (32bit) needs libatomic in the buildroot - -* Mon May 12 2014 Kalev Lember - 2.4.2-1 -- Update to 2.4.2 - -* Wed May 07 2014 Kalev Lember - 2.4.1-2 -- Make sure -devel pulls in libwebkit2gtk - -* Mon Apr 14 2014 Kalev Lember - 2.4.1-1 -- Update to 2.4.1 - -* Tue Mar 25 2014 Kalev Lember - 2.4.0-1 -- Update to 2.4.0 - -* Wed Mar 19 2014 Kalev Lember - 2.3.92-2 -- Switch over to geoclue2 - -* Tue Mar 18 2014 Tomas Popela - 2.3.92-1 -- Update to 2.3.92 - -* Tue Mar 4 2014 Tomas Popela - 2.3.91-1 -- Update to 2.3.91 - -* Thu Feb 27 2014 Karsten Hopp 2.3.90-3 -- disable libatomic patch on ppc. webkitgtk3 now uses std::atomic - -* Tue Feb 18 2014 Peter Robinson 2.3.90-2 -- Disable JIT on aarch64 - -* Tue Feb 18 2014 Tomas Popela - 2.3.90-1 -- Update to 2.3.90 -- Enable full debuginfo on s390x - -* Thu Feb 13 2014 Paul Howarth - 2.3.5-3 -- Rebuild against new libicu - -* Fri Feb 7 2014 Peter Robinson 2.3.5-2 -- Add support for aarch64 - -* Thu Feb 6 2014 Tomas Popela - 2.3.5-1 -- Update to 2.3.5 - -* Mon Jan 13 2014 Tomas Popela - 2.3.4-1 -- Update to 2.3.4 -- Add patch that fixes compilation on i686 - -* Thu Jan 02 2014 Orion Poplawski - 2.3.3-2 -- Rebuild for libwebp soname bump - -* Thu Dec 19 2013 Tomas Popela - 2.3.3-1 -- Update to 2.3.3 - -* Thu Dec 5 2013 Tomas Popela - 2.3.2-1 -- Update to 2.3.2 -- Add libatomic as BR on ppc - -* Wed Dec 4 2013 Tomas Popela - 2.2.3-1 -- Update to 2.2.3 - -* Thu Nov 28 2013 Tomas Popela - 2.2.2-2 -- Fix for RH bug #1035764 - Crashes with certain Google Drive documents - -* Mon Nov 11 2013 Tomas Popela - 2.2.2-1 -- Update to 2.2.2 - -* Fri Oct 18 2013 Tomas Popela - 2.2.1-1 -- Update to 2.2.1 - -* Fri Sep 27 2013 Kalev Lember - 2.2.0-1 -- Update to 2.2.0 - -* Wed Sep 18 2013 Kalev Lember - 2.1.92-1 -- Update to 2.1.92 - -* Thu Sep 12 2013 Dan Horák - 2.1.91-2 -- rediff the ppc32 patch, it failed to apply on s390 - -* Wed Sep 11 2013 Kalev Lember - 2.1.91-1 -- Update to 2.1.91 - -* Fri Aug 30 2013 Karsten Hopp 2.1.90.1-2 -- modify ppc32 patch, the macro interpretResolveWithBase got removed - -* Fri Aug 30 2013 Kalev Lember - 2.1.90.1-1 -- Update to 2.1.90.1 - -* Wed Aug 28 2013 Kalev Lember - 2.1.90-1 -- Update to 2.1.90 -- Add missing at-spi2-core-devel build dep - -* Mon Aug 12 2013 Kalev Lember - 2.1.4-1 -- Update to 2.1.4 - -* Sat Aug 10 2013 Kalev Lember - 2.1.3-3 -- Switch to unversioned docdirs (#993890) - -* Sun Aug 04 2013 Fedora Release Engineering - 2.1.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Jul 9 2013 Tomas Popela - 2.1.3-1 -- Update to 2.1.3 - -* Wed Jun 19 2013 Tomas Popela - 2.1.2-1 -- Update to 2.1.2 - -* Fri Jun 07 2013 Kalev Lember - 2.1.1-3 -- Link with harfbuzz-icu (split into separate library in harfbuzz 0.9.18) - -* Mon Jun 03 2013 Kalev Lember - 2.1.1-2 -- Remove glib-compile-schemas scriptlets: the schemas are no longer installed -- Add ldconfig calls to the libwebkit2gtk subpackage -- Remove rpath from MiniBrowser -- Re-enable full debuginfo (#861452) - -* Mon Jun 3 2013 Tomas Popela - 2.1.1-1 -- Update to 2.1.1 -- Drop unused patches - -* Mon May 13 2013 Tomas Popela - 2.0.2-1 -- Update to 2.0.2 - -* Mon May 6 2013 Matthias Clasen - 2.0.1-2 -- Split libwebkit2gtk off into a subpackage to avoid - pulling this 35M behemoth of a library onto the livecd - needlessly - -* Tue Apr 16 2013 Tomas Popela - 2.0.1-1 -- Update to 2.0.1 - -* Thu Apr 11 2013 Tomas Popela - 2.0.0-3 -- Add fix for broken GObject casting - -* Wed Apr 3 2013 Tomas Popela - 2.0.0-2 -- Apply double2intsPPC32.patch also on s390 - -* Wed Mar 27 2013 Tomas Popela - 2.0.0-1 -- Update to 2.0.0 -- Update BR versions -- Drop unused patches - -* Wed Mar 20 2013 Kalev Lember - 1.11.92-1 -- Update to 1.11.92 - -* Fri Mar 08 2013 Tomas Popela 1.11.91-1 -- Update to 1.11.91 -- Fix for RH bug #915990 - Seed segfaults in JSC::LLInt::CLoop::execute() - -* Mon Feb 25 2013 Tomas Popela 1.11.90-3 -- Fix for not building on ppc32 with JIT disabled - -* Sat Feb 23 2013 Kevin Fenzi 1.11.90-2 -- Add webkit2 MiniBrowser - -* Fri Feb 22 2013 Kalev Lember - 1.11.90-1 -- Update to 1.11.90 - -* Fri Feb 22 2013 Tomas Popela 1.11.5-5 -- Fix for not building on ppc32 with JIT disabled -- BR libatomic (needs gcc >= 4.8.0) for ppc32 - -* Mon Feb 18 2013 Tomas Popela 1.11.5-4 -- Backported fixes for not building with disabled JIT - -* Sat Feb 16 2013 Peter Robinson 1.11.5-3 -- Re-enable JIT on ARM (hopefully the gmail crash is fixed) - -* Thu Feb 14 2013 Tomas Popela 1.11.5-2 -- Add upstream patch for RH bug #908143 - AccessibilityTableRow::parentTable crash - -* Wed Feb 06 2013 Kalev Lember - 1.11.5-1 -- Update to 1.11.5 -- Drop upstreamed patches - -* Wed Jan 30 2013 Mamoru TASAKA - 1.11.4-5 -- Rebuild against new icu again - -* Sat Jan 26 2013 Kalev Lember - 1.11.4-4 -- Rebuilt for icu 50 - -* Fri Jan 25 2013 Kalev Lember - 1.11.4-3 -- Backport a fix for a crash in AccessibilityTableCell::parentTable() - -* Mon Jan 21 2013 Adam Tkac - 1.11.4-2 -- rebuild due to "jpeg8-ABI" feature drop - -* Wed Jan 16 2013 Kalev Lember - 1.11.4-1 -- Update to 1.11.4 -- Remove conditional pango deps; the build now uses harfbuzz directly -- BR libwebp-devel -- Drop upstreamed librt linking patch - -* Tue Dec 18 2012 Dan Horák - 1.11.2-3 -- fix 32-bit non-JIT arches - -* Tue Dec 18 2012 Dan Horák - 1.11.2-2 -- fix build for non-JIT arches - -* Sat Nov 24 2012 Kalev Lember - 1.11.2-1 -- Update to 1.11.2 -- Add a patch to explicitly link with librt - -* Wed Oct 17 2012 Kalev Lember - 1.10.1-1 -- Update to 1.10.1 -- Enable the parallel build -- Drop the upstreamed Geode-compatibility patch - -* Fri Oct 5 2012 Daniel Drake - 1.10.0-2 -- Restore compatibility with AMD Geode processors - -* Mon Sep 24 2012 Kalev Lember - 1.10.0-1 -- Update to 1.10.0 -- Adjust for webkit -> webkitgtk upstream tarball rename - -* Wed Sep 19 2012 Kalev Lember - 1.9.92-2 -- Build with gstreamer1 - -* Wed Sep 19 2012 Kalev Lember - 1.9.92-1 -- Update to 1.9.92 - -* Wed Sep 05 2012 Kalev Lember - 1.9.91-1 -- Update to 1.9.91 - -* Sun Sep 2 2012 Matthias Clasen - 1.9.90-2 -- Rebuild - -* Wed Aug 29 2012 Daniel Drake - 1.9.90-1 -- Update to latest release (#850520) - -* Thu Aug 9 2012 Daniel Drake - 1.9.5-2 -- Add upstream patch to fix build without JIT (#843428) -- Add upstream patch to fix build with latest gcc/bison - -* Wed Jul 18 2012 Kalev Lember - 1.9.5-1 -- Update to 1.9.5 -- Build with -g1 to avoid running into 4 GB ar format limit - -* Wed Jul 11 2012 Ville Skyttä - 1.9.4-3 -- Fix %%post scriptlet dependencies. - -* Wed Jul 04 2012 Dan Horák - 1.9.4-2 -- apply workaround for s390x until #835957 is resolved (static library archive > 4 GB) - -* Thu Jun 28 2012 Kalev Lember - 1.9.4-1 -- Update to 1.9.4 - -* Thu Jun 07 2012 Kalev Lember - 1.9.3-1 -- Update to 1.9.3 -- Build webkit2gtk and BR gtk2-devel for its plugin process - -* Tue May 15 2012 Karsten Hopp 1.8.1-3 -- disable JIT on PPC(64) as the autodetection enables it even if not supported - -* Mon May 14 2012 Peter Robinson - 1.8.1-2 -- Explicitly disable JIT on ARM as it's not currently stable with JS heavy pages - -* Tue Apr 24 2012 Kalev Lember - 1.8.1-1 -- Update to 1.8.1 -- Dropped the backported patches -- Remove lib64 rpaths with chrpath -- Update gsettings rpm scriptlets - -* Wed Apr 18 2012 Peter Robinson - 1.8.0-3 -- Add upstream patch to fix crash when SSE2 isn't present -- Add upstream patch to flickering when some widgets are drawn - -* Mon Apr 09 2012 Kalev Lember - 1.8.0-2 -- Finish splitting out a -doc subpackage (#808917) - -* Wed Mar 28 2012 Richard Hughes - 1.8.0-1 -- Update to 1.8.0. - -* Sat Mar 24 2012 Dan Horák - 1.7.92-2 -- add ppc to low mem arches -- decrease debuginfo verbosity on s390 to save memory - -* Wed Mar 21 2012 Kalev Lember - 1.7.92-1 -- Update to 1.7.92 -- Don't pass --enable-geolocation to configure; it's now enabled by default - -* Thu Mar 15 2012 Karsten Hopp 1.7.91-2 -- disable jit on ppc(64) - -* Thu Mar 8 2012 Matthias Clasen - 1.7.91-1 -- Update to 1.7.91 - -* Tue Feb 28 2012 Peter Robinson - 1.7.5-3 -- Add ARM to and optimise compile flags for low mem arches - -* Mon Feb 20 2012 Dan Horák - 1.7.5-2 -- don't enable jit on s390(x) - -* Tue Feb 7 2012 Matthias Clasen - 1.7.5-1 -- Update to 1.7.5 - -* Tue Jan 17 2012 Matthias Clasen - 1.7.4-1 -- Update to 1.7.4 - -* Sat Jan 14 2012 Fedora Release Engineering - 1.7.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Tue Dec 20 2011 Matthias Clasen - 1.7.3-1 -- Update to 1.7.3 - -* Thu Nov 24 2011 Tomas Bzatek - 1.7.2-1 -- Update to 1.7.2 - -* Mon Nov 7 2011 Matthias Clasen 1.7.1-2 -- Rebuild against new libpng - -* Wed Nov 2 2011 Matthias Clasen 1.7.1-1 -- Update to 1.7.1 - -* Wed Oct 12 2011 Dan Horák 1.6.1-2 -- fix build on s390(x) - -* Wed Sep 28 2011 Ray Strode 1.6.1-1 -- Update to 1.6.1 - -* Fri Sep 09 2011 Caolán McNamara - 1.5.1-2 -- rebuild for icu 4.8.1 - -* Thu Jun 16 2011 Tomas Bzatek - 1.5.1-1 -- Update to 1.5.1 - -* Tue Jun 14 2011 Bastien Nocera 1.4.0-3 -- Rebuild against newer GTK+ - -* Wed May 11 2011 Cosimo Cecchi 1.4.0-2 -- Add a doc package for gtk-doc documentation - -* Tue Apr 26 2011 Matthias Clasen 1.4.0-1 -- Update to 1.4.0 - -* Tue Mar 22 2011 Matthias Clasen 1.3.13-1 -- Update to 1.3.13 - -* Thu Feb 10 2011 Matthias Clasen 1.3.10-3 -- Rebuild against newer gtk - -* Mon Feb 07 2011 Fedora Release Engineering - 1.3.11-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Wed Feb 2 2011 Matthias Clasen 1.3.11-1 -- 1.3.11 - -* Wed Feb 2 2011 Matthias Clasen 1.3.10-2 -- Rebuild against newer gtk - -* Mon Jan 10 2011 Matthias Clasen 1.3.10-1 -- Update to 1.3.10 - -* Sun Jan 9 2011 Matthias Clasen 1.3.9-1 -- Update to 1.3.9 - -* Fri Dec 3 2010 Matthias Clasen 1.3.7-2 -- Rebuild against new gtk - -* Wed Dec 1 2010 Matthias Clasen 1.3.7-1 -- Update to 1.3.7 - -* Thu Nov 11 2010 Matthias Clasen 1.3.6-1 -- Update to 1.3.6 -- Disable the s390 patch again :-( Upstream it, maybe ? - -* Thu Nov 11 2010 Dan Horák - 1.3.5-2 -- Updated and re-enabled the s390 patch - -* Mon Nov 1 2010 Matthias Clasen 1.3.5-1 -- Update to 1.3.5 - -* Wed Sep 29 2010 jkeating - 1.3.4-3 -- Rebuilt for gcc bug 634757 - -* Fri Sep 24 2010 Matthias Clasen 1.3.4-2 -- Enable JIT/patch for execmem -- Move inspector to the main package - -* Thu Sep 23 2010 Matthias Clasen 1.3.4-1 -- Update to 1.3.4 - -* Wed Aug 25 2010 Dan Horák - 1.3.3-4 -- Do not generate debug information to prevent linker memory exhaustion on s390 with its 2 GB address space - -* Wed Jul 21 2010 Dan Horák - 1.3.3-3 -- Fix build on s390(x) - -* Thu Jul 15 2010 Colin Walters - 1.3.3-2 -- Rebuild with new gobject-introspection - -* Fri Jul 9 2010 Matthias Clasen 1.3.2-2 -- Fix conflicting gettext domain with webkitgtk -- Drop the -doc subpackage - -* Thu Jul 1 2010 Matthias Clasen 1.3.2-1 -- Initial packaging