[qtwebkit] switch to upstream versions of some patches
Rex Dieter
rdieter at fedoraproject.org
Mon Dec 24 15:05:43 UTC 2012
commit e9d5930dd12855b7c9a5e703c48722e3d3edf15b
Author: Rex Dieter <rdieter at math.unl.edu>
Date: Mon Dec 24 09:06:00 2012 -0600
switch to upstream versions of some patches
...solveRope-should-report-extra-memory-cost.patch | 40 +++++
...40.patch => 0003-Fix-build-with-GLib-2.31.patch | 168 +++++++++++++++-----
...n-linux-i386-where-gcc-would-produce-warn.patch | 33 ++++
qtwebkit-2.2.2-no_Werror.patch | 12 --
qtwebkit.spec | 23 ++--
5 files changed, 214 insertions(+), 62 deletions(-)
---
diff --git a/0002-JSString-resolveRope-should-report-extra-memory-cost.patch b/0002-JSString-resolveRope-should-report-extra-memory-cost.patch
new file mode 100644
index 0000000..0a42563
--- /dev/null
+++ b/0002-JSString-resolveRope-should-report-extra-memory-cost.patch
@@ -0,0 +1,40 @@
+From a096458b01a9387719308c99e5917a7b42196078 Mon Sep 17 00:00:00 2001
+From: Nicolas Arnaud-Cormos <nicolas.arnaud-cormos.qnx at kdab.com>
+Date: Mon, 23 Apr 2012 19:54:36 -0700
+Subject: [PATCH 02/11] JSString::resolveRope() should report extra memory cost
+ to the heap.
+
+At the time a JSString is constructed with fibers, it doesn't report
+extra memory cost, which is reasonable because it hasn't allocate
+new memory. However when the rope is resolved, it should report memory
+cost for the new buffer.
+
+Backport patch by Yong Li
+Reviewed by Michael Saboff.
+http://trac.webkit.org/changeset/109105
+
+Signed-off-by: Simon Hausmann <simon.hausmann at nokia.com>
+---
+ Source/JavaScriptCore/runtime/JSString.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Source/JavaScriptCore/runtime/JSString.cpp b/Source/JavaScriptCore/runtime/JSString.cpp
+index da15997..a0ba3e2 100644
+--- a/Source/JavaScriptCore/runtime/JSString.cpp
++++ b/Source/JavaScriptCore/runtime/JSString.cpp
+@@ -41,9 +41,10 @@ void JSString::resolveRope(ExecState* exec) const
+ ASSERT(isRope());
+
+ UChar* buffer;
+- if (PassRefPtr<StringImpl> newImpl = StringImpl::tryCreateUninitialized(m_length, buffer))
++ if (PassRefPtr<StringImpl> newImpl = StringImpl::tryCreateUninitialized(m_length, buffer)) {
++ Heap::heap(this)->reportExtraMemoryCost(newImpl->cost());
+ m_value = newImpl;
+- else {
++ } else {
+ outOfMemory(exec);
+ return;
+ }
+--
+1.8.0.2
+
diff --git a/qtwebkit-2.2.x-glib231-wk#69840.patch b/0003-Fix-build-with-GLib-2.31.patch
similarity index 64%
rename from qtwebkit-2.2.x-glib231-wk#69840.patch
rename to 0003-Fix-build-with-GLib-2.31.patch
index bd7cb94..797edb4 100644
--- a/qtwebkit-2.2.x-glib231-wk#69840.patch
+++ b/0003-Fix-build-with-GLib-2.31.patch
@@ -1,6 +1,88 @@
-diff -up webkit-qtwebkit/Source/JavaScriptCore/GNUmakefile.list.am.glib231 webkit-qtwebkit/Source/JavaScriptCore/GNUmakefile.list.am
---- webkit-qtwebkit/Source/JavaScriptCore/GNUmakefile.list.am.glib231 2011-11-09 16:32:47.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/GNUmakefile.list.am 2011-12-21 12:50:19.000000000 +0100
+From 9b4b107fe7501ffbefb5f4fd78ab0a2321f93fc1 Mon Sep 17 00:00:00 2001
+From: Gustavo Noronha Silva <kov at webkit.org>
+Date: Wed, 12 Oct 2011 16:55:24 +0000
+Subject: [PATCH 03/11] Fix build with GLib 2.31
+ https://bugs.webkit.org/show_bug.cgi?id=69840
+
+Patch by Gustavo Noronha Silva <gustavo.noronha at collabora.co.uk> on 2011-10-12
+Reviewed by Martin Robinson.
+
+.:
+
+* configure.ac: add check for pthread rwlock support.
+
+Source/JavaScriptCore:
+
+* GNUmakefile.list.am: removed ThreadingGtk.cpp.
+* wtf/ThreadingPrimitives.h: remove GTK+-specific definitions.
+* wtf/gobject/GOwnPtr.cpp: remove GCond and GMutex specializations.
+* wtf/gobject/GOwnPtr.h: ditto.
+* wtf/gobject/GTypedefs.h: remove GCond and GMutex forward declarations.
+* wtf/gtk/ThreadingGtk.cpp: Removed.
+
+git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97269 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+Conflicts:
+
+ ChangeLog
+ Source/JavaScriptCore/ChangeLog
+ Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp
+---
+ ChangeLog | 9 +
+ Source/JavaScriptCore/ChangeLog | 14 ++
+ Source/JavaScriptCore/GNUmakefile.list.am | 1 -
+ Source/JavaScriptCore/wtf/ThreadingPrimitives.h | 6 -
+ Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp | 12 --
+ Source/JavaScriptCore/wtf/gobject/GOwnPtr.h | 2 -
+ Source/JavaScriptCore/wtf/gobject/GTypedefs.h | 2 -
+ Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp | 248 ------------------------
+ configure.ac | 3 +
+ 9 files changed, 26 insertions(+), 271 deletions(-)
+ delete mode 100644 Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp
+
+diff --git a/ChangeLog b/ChangeLog
+index 82dc1fb..b19fcfe 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,12 @@
++2011-10-12 Gustavo Noronha Silva <gustavo.noronha at collabora.co.uk>
++
++ Fix build with GLib 2.31
++ https://bugs.webkit.org/show_bug.cgi?id=69840
++
++ Reviewed by Martin Robinson.
++
++ * configure.ac: add check for pthread rwlock support.
++
+ 2011-12-08 Zeno Albisser <zeno at webkit.org>
+
+ Disable -Werror for standalone packages.
+diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
+index 438d1f5..d7cb100 100644
+--- a/Source/JavaScriptCore/ChangeLog
++++ b/Source/JavaScriptCore/ChangeLog
+@@ -1,3 +1,17 @@
++2011-10-12 Gustavo Noronha Silva <gustavo.noronha at collabora.co.uk>
++
++ Fix build with GLib 2.31
++ https://bugs.webkit.org/show_bug.cgi?id=69840
++
++ Reviewed by Martin Robinson.
++
++ * GNUmakefile.list.am: removed ThreadingGtk.cpp.
++ * wtf/ThreadingPrimitives.h: remove GTK+-specific definitions.
++ * wtf/gobject/GOwnPtr.cpp: remove GCond and GMutex specializations.
++ * wtf/gobject/GOwnPtr.h: ditto.
++ * wtf/gobject/GTypedefs.h: remove GCond and GMutex forward declarations.
++ * wtf/gtk/ThreadingGtk.cpp: Removed.
++
+ 2012-02-23 Aron Rosenberg <arosenberg at logitech.com>
+
+ Fix the PRI macros used in WTF::String formatters to be compatible with Qt and Visual Studio 2005 and newer.
+diff --git a/Source/JavaScriptCore/GNUmakefile.list.am b/Source/JavaScriptCore/GNUmakefile.list.am
+index 16bbf56..655986c 100644
+--- a/Source/JavaScriptCore/GNUmakefile.list.am
++++ b/Source/JavaScriptCore/GNUmakefile.list.am
@@ -438,7 +438,6 @@ javascriptcore_sources += \
Source/JavaScriptCore/wtf/gobject/GRefPtr.h \
Source/JavaScriptCore/wtf/gobject/GTypedefs.h \
@@ -9,10 +91,35 @@ diff -up webkit-qtwebkit/Source/JavaScriptCore/GNUmakefile.list.am.glib231 webki
Source/JavaScriptCore/wtf/HashCountedSet.h \
Source/JavaScriptCore/wtf/HashFunctions.h \
Source/JavaScriptCore/wtf/HashIterators.h \
-diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp.glib231 webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp
---- webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp.glib231 2011-11-09 16:32:47.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp 2011-12-21 12:50:19.000000000 +0100
-@@ -37,18 +37,6 @@ template <> void freeOwnedGPtr<GList>(GL
+diff --git a/Source/JavaScriptCore/wtf/ThreadingPrimitives.h b/Source/JavaScriptCore/wtf/ThreadingPrimitives.h
+index 831a99e..9f263ae 100644
+--- a/Source/JavaScriptCore/wtf/ThreadingPrimitives.h
++++ b/Source/JavaScriptCore/wtf/ThreadingPrimitives.h
+@@ -44,8 +44,6 @@
+
+ #if USE(PTHREADS)
+ #include <pthread.h>
+-#elif PLATFORM(GTK)
+-#include "GOwnPtr.h"
+ #endif
+
+ #if PLATFORM(QT)
+@@ -66,10 +64,6 @@ typedef pthread_rwlock_t PlatformReadWriteLock;
+ typedef void* PlatformReadWriteLock;
+ #endif
+ typedef pthread_cond_t PlatformCondition;
+-#elif PLATFORM(GTK)
+-typedef GOwnPtr<GMutex> PlatformMutex;
+-typedef void* PlatformReadWriteLock; // FIXME: Implement.
+-typedef GOwnPtr<GCond> PlatformCondition;
+ #elif PLATFORM(QT)
+ typedef QT_PREPEND_NAMESPACE(QMutex)* PlatformMutex;
+ typedef void* PlatformReadWriteLock; // FIXME: Implement.
+diff --git a/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp b/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp
+index 7c51ee1..50c7b9f 100644
+--- a/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp
++++ b/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp
+@@ -37,18 +37,6 @@ template <> void freeOwnedGPtr<GList>(GList* ptr)
g_list_free(ptr);
}
@@ -31,9 +138,10 @@ diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.cpp.glib231 w
template <> void freeOwnedGPtr<GPatternSpec>(GPatternSpec* ptr)
{
if (ptr)
-diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h.glib231 webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h
---- webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h.glib231 2011-11-09 16:32:47.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h 2011-12-21 12:50:19.000000000 +0100
+diff --git a/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h b/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h
+index 8c7e837..9ff85c5 100644
+--- a/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h
++++ b/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h
@@ -35,8 +35,6 @@ namespace WTF {
template <typename T> inline void freeOwnedGPtr(T* ptr);
template<> void freeOwnedGPtr<GError>(GError*);
@@ -43,9 +151,10 @@ diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GOwnPtr.h.glib231 web
template<> void freeOwnedGPtr<GPatternSpec>(GPatternSpec*);
template<> void freeOwnedGPtr<GDir>(GDir*);
-diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h.glib231 webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h
---- webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h.glib231 2011-11-09 16:32:47.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h 2011-12-21 12:50:19.000000000 +0100
+diff --git a/Source/JavaScriptCore/wtf/gobject/GTypedefs.h b/Source/JavaScriptCore/wtf/gobject/GTypedefs.h
+index c7f7ac4..136bde5 100644
+--- a/Source/JavaScriptCore/wtf/gobject/GTypedefs.h
++++ b/Source/JavaScriptCore/wtf/gobject/GTypedefs.h
@@ -39,7 +39,6 @@ typedef void* gpointer;
typedef struct _GAsyncResult GAsyncResult;
typedef struct _GCancellable GCancellable;
@@ -62,9 +171,11 @@ diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h.glib231 w
typedef struct _GPatternSpec GPatternSpec;
typedef struct _GPollableOutputStream GPollableOutputStream;
typedef struct _GSocketClient GSocketClient;
-diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp.glib231 webkit-qtwebkit/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp
---- webkit-qtwebkit/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp.glib231 2011-12-21 12:52:25.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp 2011-12-21 12:52:28.000000000 +0100
+diff --git a/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp b/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp
+deleted file mode 100644
+index 863ee81..0000000
+--- a/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp
++++ /dev/null
@@ -1,248 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
@@ -314,26 +425,5 @@ diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/gtk/ThreadingGtk.cpp.glib231
-}
-
-#endif // !USE(PTHREADS)
-diff -up webkit-qtwebkit/Source/JavaScriptCore/wtf/ThreadingPrimitives.h.glib231 webkit-qtwebkit/Source/JavaScriptCore/wtf/ThreadingPrimitives.h
---- webkit-qtwebkit/Source/JavaScriptCore/wtf/ThreadingPrimitives.h.glib231 2011-11-09 16:32:47.000000000 +0100
-+++ webkit-qtwebkit/Source/JavaScriptCore/wtf/ThreadingPrimitives.h 2011-12-21 12:50:19.000000000 +0100
-@@ -44,8 +44,6 @@
-
- #if USE(PTHREADS)
- #include <pthread.h>
--#elif PLATFORM(GTK)
--#include "GOwnPtr.h"
- #endif
-
- #if PLATFORM(QT)
-@@ -66,10 +64,6 @@ typedef pthread_rwlock_t PlatformReadWri
- typedef void* PlatformReadWriteLock;
- #endif
- typedef pthread_cond_t PlatformCondition;
--#elif PLATFORM(GTK)
--typedef GOwnPtr<GMutex> PlatformMutex;
--typedef void* PlatformReadWriteLock; // FIXME: Implement.
--typedef GOwnPtr<GCond> PlatformCondition;
- #elif PLATFORM(QT)
- typedef QT_PREPEND_NAMESPACE(QMutex)* PlatformMutex;
- typedef void* PlatformReadWriteLock; // FIXME: Implement.
+1.8.0.2
+
diff --git a/0005-Fix-build-on-linux-i386-where-gcc-would-produce-warn.patch b/0005-Fix-build-on-linux-i386-where-gcc-would-produce-warn.patch
new file mode 100644
index 0000000..97fa78a
--- /dev/null
+++ b/0005-Fix-build-on-linux-i386-where-gcc-would-produce-warn.patch
@@ -0,0 +1,33 @@
+From 0b63152ae5d572c4a817a53210d8907f3dd11bd7 Mon Sep 17 00:00:00 2001
+From: Simon Hausmann <simon.hausmann at nokia.com>
+Date: Mon, 25 Jun 2012 09:47:34 +0200
+Subject: [PATCH 05/11] Fix build on linux-i386 where gcc would produce
+ warnings
+
+It is the intention to _not_ use -Werror for production builds. Unfortunately
+the qmake expression had an error that made the -Werror suppression only work
+on x86-64 but not on i386. A surrounding if() as suggested by Ossi fixes this.
+
+In trunk this is already fixed differently by the use of an extra scope.
+
+Task: QTBUG-23987
+---
+ Source/WebKit.pri | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Source/WebKit.pri b/Source/WebKit.pri
+index 5080119..ae7b99c 100644
+--- a/Source/WebKit.pri
++++ b/Source/WebKit.pri
+@@ -102,7 +102,7 @@ CONFIG -= warn_on
+
+ # Treat warnings as errors on x86/Linux/GCC
+ linux-g++* {
+- !CONFIG(standalone_package):isEqual(QT_ARCH,x86_64)|isEqual(QT_ARCH,i386): QMAKE_CXXFLAGS += -Werror
++ !CONFIG(standalone_package):if(isEqual(QT_ARCH,x86_64)|isEqual(QT_ARCH,i386)): QMAKE_CXXFLAGS += -Werror
+
+ greaterThan(QT_GCC_MAJOR_VERSION, 3):greaterThan(QT_GCC_MINOR_VERSION, 5) {
+ if (!contains(QMAKE_CXXFLAGS, -std=c++0x) && !contains(QMAKE_CXXFLAGS, -std=gnu++0x)) {
+--
+1.8.0.2
+
diff --git a/qtwebkit.spec b/qtwebkit.spec
index e6ef335..313c66d 100644
--- a/qtwebkit.spec
+++ b/qtwebkit.spec
@@ -1,7 +1,7 @@
Name: qtwebkit
Version: 2.2.2
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: Qt WebKit bindings
Group: System Environment/Libraries
License: LGPLv2 with exceptions or GPLv3 with exceptions
@@ -27,17 +27,9 @@ Patch1: webkit-qtwebkit-2.2-tp1-pluginpath.patch
# include -debuginfo except on s390(x) during linking of libQtWebKit
Patch3: webkit-qtwebkit-2.2-debuginfo.patch
-# https://bugs.webkit.org/show_bug.cgi?id=63941
-# -Wall + -Werror = fail
-Patch4: qtwebkit-2.2.2-no_Werror.patch
-
# fix for qt-4.6.x
Patch5: webkit-qtwebkit-2.2tp1-qt46.patch
-# fix for glib-2.31+
-# See https://bugs.webkit.org/show_bug.cgi?id=69840 for the gory details.
-Patch6: qtwebkit-2.2.x-glib231-wk#69840.patch
-
# gcc doesn't support flag -fuse-ld=gold
Patch7: webkit-qtwebkit-ld.gold.patch
@@ -46,6 +38,11 @@ Patch7: webkit-qtwebkit-ld.gold.patch
# https://bugs.webkit.org/show_bug.cgi?id=97258
Patch8: qtwebkit-svg_infinite_loop.patch
+## upstream patches
+Patch102: 0002-JSString-resolveRope-should-report-extra-memory-cost.patch
+Patch103: 0003-Fix-build-with-GLib-2.31.patch
+Patch105: 0005-Fix-build-on-linux-i386-where-gcc-would-produce-warn.patch
+
BuildRequires: chrpath
BuildRequires: libicu-devel
BuildRequires: libjpeg-devel
@@ -92,13 +89,14 @@ Provides: qt4-webkit-devel%{?_isa} = 2:%{version}-%{release}
%patch1 -p1 -b .pluginpath
%patch3 -p1 -b .debuginfo
-%patch4 -p1 -b .no_Werror
## don't unconditionally apply this anymore
## it has side-effects ( like http://bugzilla.redhat.com/761337 )
#patch5 -p1 -b .qt46
-%patch6 -p1 -b .glib231
%patch7 -p1 -b .ld.gold
%patch8 -p1 -b .svn_infinite_loop
+%patch102 -p1 -b .0002
+%patch103 -p1 -b .0003
+%patch105 -p1 -b .0005
%build
@@ -151,6 +149,9 @@ rm -rf %{buildroot}
%changelog
+* Mon Dec 24 2012 Rex Dieter <rdieter at fedoraproject.org> 2.2.2-4
+- switch to upstream versions of some patches
+
* Tue Nov 13 2012 Rex Dieter <rdieter at fedoraproject.org> 2.2.2-3
- Certain SVG content freezes QtWebKit (webkit#97258)
More information about the scm-commits
mailing list