This commit is contained in:
Rex Dieter 2013-08-02 08:25:47 -05:00
parent dad7cc4164
commit 41a11e7409
10 changed files with 599 additions and 0 deletions

1
.gitignore vendored
View File

@ -0,0 +1 @@
/qtwebkit-opensource-src-5.0.2.tar.xz

198
qt5-qtwebkit.spec Normal file
View File

@ -0,0 +1,198 @@
%global qt_module qtwebkit
Summary: Qt5 - QtWebKit components
Name: qt5-qtwebkit
Version: 5.0.2
Release: 6%{?dist}
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
# See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
License: LGPLv2 with exceptions or GPLv3 with exceptions
Url: http://qt-project.org/
Source0: http://releases.qt-project.org/qt5/%{version}%{?pre:-%{pre}}/submodules/%{qt_module}-opensource-src-%{version}.tar.xz
# Search /usr/lib{,64}/mozilla/plugins-wrapped for browser plugins too
Patch1: webkit-qtwebkit-2.2-tp1-pluginpath.patch
# smaller debuginfo s/-g/-g1/ (debian uses -gstabs) to avoid 4gb size limit
Patch3: qtwebkit-opensource-src-5.0.1-debuginfo.patch
# tweak linker flags to minimize memory usage on "small" platforms
Patch4: qtwebkit-2.3-save_memory.patch
# try to use unbundled system angleproject library
%define system_angle 1
Patch5: qtwebkit-opensource-src-5.0.2-system_angle.patch
# Fix compilation against latest ANGLE
# https://bugs.webkit.org/show_bug.cgi?id=109127
Patch6: webkit-commit-142567.patch
%if 0%{?system_angle}
BuildRequires: angleproject-devel angleproject-static
%endif
# Prevent flooding the logs with warnings about COMPILE_ASSERT
# https://bugs.webkit.org/show_bug.cgi?id=113147
# Based on upstream commit r147640
Patch7: webkit-commit-147640.patch
# Prevent flooding the logs with warnings about HashMap
# https://bugs.webkit.org/show_bug.cgi?id=113454
Patch9: webkit-commit-147345.patch
BuildRequires: qt5-qtbase-devel >= %{version}
BuildRequires: qt5-qtdeclarative-devel >= %{version}
BuildRequires: bison
BuildRequires: chrpath
BuildRequires: flex
BuildRequires: gperf
BuildRequires: libicu-devel
BuildRequires: libjpeg-devel
BuildRequires: pkgconfig(gio-2.0) pkgconfig(glib-2.0)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(gl)
# gstreamer media support
BuildRequires: pkgconfig(gstreamer-0.10) pkgconfig(gstreamer-app-0.10)
BuildRequires: pkgconfig(icu-i18n)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libpcre)
BuildRequires: pkgconfig(libwebp)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(xcomposite) pkgconfig(xrender)
BuildRequires: perl perl(version) perl(Digest::MD5)
BuildRequires: ruby
BuildRequires: zlib-devel
%{?_qt5_version:Requires: qt5-qtbase%{?_isa} >= %{_qt5_version}}
##upstream patches
%description
%{summary}
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: qt5-qtbase-devel%{?_isa}
Requires: qt5-qtdeclarative-devel%{?_isa}
%description devel
%{summary}.
%prep
%setup -q -n qtwebkit-opensource-src-%{version}%{?pre:-%{pre}}
%patch1 -p1 -b .pluginpath
%patch3 -p1 -b .debuginfo
%patch4 -p1 -b .save_memory
%if 0%{?system_angle}
%patch5 -p1 -b .system_angle
%patch6 -p1 -b .svn142567
%endif
%patch7 -p1 -b .svn147640
%patch9 -p1 -b .svn147345
echo "nuke bundled code..."
# nuke bundled code
mkdir Source/ThirdParty/orig
mv Source/ThirdParty/{glu/,gtest/,gyp/,mt19937ar.c,qunit/} \
Source/ThirdParty/orig/
%if 0%{?system_angle}
mv Source/ThirdParty/ANGLE/ \
Source/ThirdParty/orig/
%endif
%build
%{_qt5_qmake} %{?system_angle:DEFINES+=USE_SYSTEM_ANGLE=1}
make %{?_smp_mflags}
%install
make install INSTALL_ROOT=%{buildroot}
## .prl file love (maybe consider just deleting these -- rex
# nuke dangling reference(s) to %%buildroot, excessive (.la-like) libs
sed -i \
-e "/^QMAKE_PRL_BUILD_DIR/d" \
-e "/^QMAKE_PRL_LIBS/d" \
%{buildroot}%{_qt5_libdir}/*.prl
## unpackaged files
# .la files, die, die, die.
rm -fv %{buildroot}%{_qt5_libdir}/lib*.la
## kill rpath's
pushd %{buildroot}
for remove_rpath in \
%{_qt5_libexecdir}/QtWebPluginProcess \
%{_qt5_libexecdir}/QtWebProcess \
%{_qt5_archdatadir}/qml/QtWebKit/libqmlwebkitplugin.so \
%{_qt5_archdatadir}/qml/QtWebKit/experimental/libqmlwebkitexperimentalplugin.so \
; do
chrpath --list %{buildroot}$remove_rpath
chrpath --delete %{buildroot}$remove_rpath
done
popd
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc Source/WebCore/LICENSE*
%doc ChangeLog VERSION
%{_qt5_libdir}/libQt5WebKit.so.5*
%{_qt5_libdir}/libQt5WebKitWidgets.so.5*
%{_qt5_libexecdir}/QtWebPluginProcess
%{_qt5_libexecdir}/QtWebProcess
%{_qt5_archdatadir}/qml/QtWebKit/
%files devel
%{_qt5_headerdir}/Qt*/
%{_qt5_libdir}/libQt5*.so
%{_qt5_libdir}/libQt5*.prl
%{_qt5_libdir}/cmake/Qt5*/
%{_qt5_libdir}/pkgconfig/Qt5*.pc
%{_qt5_archdatadir}/mkspecs/modules/*.pri
%changelog
* Fri Jun 21 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-6
- %%doc ChangeLog VERSION
- %%doc Source/WebCore/LICENSE*
- squash more rpaths
* Fri May 17 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-5
- unbundle angleproject code
* Wed May 15 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-4
- BR: perl(version) perl(Digest::MD5) pkgconfig(xslt)
- deal with bundled code
- add (commented) upstream link http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
to clarify licensing
* Thu May 09 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-3
- -devel: Requires: qt5-qtdeclarative-devel
* Fri Apr 12 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-2
- BR: qt5-qtdeclarative-devel
* Thu Apr 11 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-1
- 5.0.2
* Mon Feb 25 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.1-2
- .prl love
- BR: pkgconfig(gl)
* Sat Feb 23 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.1-1
- first try

View File

@ -0,0 +1,12 @@
diff -up webkit-qtwebkit-23/Source/WebCore/WebCore.pri.save_memory webkit-qtwebkit-23/Source/WebCore/WebCore.pri
--- webkit-qtwebkit-23/Source/WebCore/WebCore.pri.save_memory 2013-02-15 09:46:12.000000000 -0600
+++ webkit-qtwebkit-23/Source/WebCore/WebCore.pri 2013-02-21 16:42:30.996634743 -0600
@@ -336,6 +336,8 @@ mac {
}
unix:!mac:*-g++*:QMAKE_CXXFLAGS += -fdata-sections
unix:!mac:*-g++*:QMAKE_LFLAGS += -Wl,--gc-sections
+unix:!mac:*-g++*:!equals(QT_ARCH, powerpc):!equals(QT_ARCH, s390):!equals(QT_ARCH, mips):!equals(QT_ARCH, arm):QMAKE_LFLAGS += -Wl,--no-keep-memory
+unix:!mac:*-g++*:!equals(QT_ARCH, powerpc):!equals(QT_ARCH, s390):!equals(QT_ARCH, mips):!equals(QT_ARCH, arm):QMAKE_LFLAGS += -Wl,--reduce-memory-overheads
linux*-g++*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
unix|win32-g++* {

View File

@ -0,0 +1,80 @@
diff -up qtwebkit-opensource-src-5.0.1/Source/JavaScriptCore/JavaScriptCore.pri.debuginfo qtwebkit-opensource-src-5.0.1/Source/JavaScriptCore/JavaScriptCore.pri
--- qtwebkit-opensource-src-5.0.1/Source/JavaScriptCore/JavaScriptCore.pri.debuginfo 2013-01-29 13:03:49.000000000 -0600
+++ qtwebkit-opensource-src-5.0.1/Source/JavaScriptCore/JavaScriptCore.pri 2013-02-23 13:54:22.578460045 -0600
@@ -7,6 +7,12 @@
SOURCE_DIR = $${ROOT_WEBKIT_DIR}/Source/JavaScriptCore
+#equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64) {
+# message("JavaScriptCore workaround for QtWebkit: do not build with -g, but with -g1")
+# QMAKE_CXXFLAGS_RELEASE -= -g
+# QMAKE_CXXFLAGS_RELEASE += -g1
+#}
+
JAVASCRIPTCORE_GENERATED_SOURCES_DIR = $${ROOT_BUILD_DIR}/Source/JavaScriptCore/$${GENERATED_SOURCES_DESTDIR}
INCLUDEPATH += \
diff -up qtwebkit-opensource-src-5.0.1/Source/WebCore/WebCore.pri.debuginfo qtwebkit-opensource-src-5.0.1/Source/WebCore/WebCore.pri
--- qtwebkit-opensource-src-5.0.1/Source/WebCore/WebCore.pri.debuginfo 2013-01-29 13:03:41.000000000 -0600
+++ qtwebkit-opensource-src-5.0.1/Source/WebCore/WebCore.pri 2013-02-23 13:57:16.984279672 -0600
@@ -7,6 +7,12 @@
SOURCE_DIR = $${ROOT_WEBKIT_DIR}/Source/WebCore
+equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64) {
+ message("WebCore workaround for QtWebkit: do not build with -g, but with -g1")
+ QMAKE_CXXFLAGS_RELEASE -= -g
+ QMAKE_CXXFLAGS_RELEASE += -g1
+}
+
QT *= network sql core-private gui-private
WEBCORE_GENERATED_SOURCES_DIR = $${ROOT_BUILD_DIR}/Source/WebCore/$${GENERATED_SOURCES_DESTDIR}
diff -up qtwebkit-opensource-src-5.0.1/Source/WebKit2/WebKit2.pri.debuginfo qtwebkit-opensource-src-5.0.1/Source/WebKit2/WebKit2.pri
--- qtwebkit-opensource-src-5.0.1/Source/WebKit2/WebKit2.pri.debuginfo 2013-01-29 13:03:39.000000000 -0600
+++ qtwebkit-opensource-src-5.0.1/Source/WebKit2/WebKit2.pri 2013-02-23 13:54:22.579460033 -0600
@@ -9,6 +9,12 @@ SOURCE_DIR = $${ROOT_WEBKIT_DIR}/Source/
WEBKIT2_GENERATED_SOURCES_DIR = $${ROOT_BUILD_DIR}/Source/WebKit2/$${GENERATED_SOURCES_DESTDIR}
+#equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64) {
+# message("WebKit2 workaround for QtWebkit: do not build with -g, but with -g1")
+# QMAKE_CXXFLAGS_RELEASE -= -g
+# QMAKE_CXXFLAGS_RELEASE += -g1
+#}
+
INCLUDEPATH += \
$$SOURCE_DIR \
$$SOURCE_DIR/Platform \
diff -up qtwebkit-opensource-src-5.0.1/Source/WebKit/WebKit1.pri.debuginfo qtwebkit-opensource-src-5.0.1/Source/WebKit/WebKit1.pri
--- qtwebkit-opensource-src-5.0.1/Source/WebKit/WebKit1.pri.debuginfo 2013-01-29 13:03:54.000000000 -0600
+++ qtwebkit-opensource-src-5.0.1/Source/WebKit/WebKit1.pri 2013-02-23 13:54:22.579460033 -0600
@@ -7,6 +7,12 @@
SOURCE_DIR = $${ROOT_WEBKIT_DIR}/Source/WebKit
+#equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64) {
+# message("WebKit workaround for QtWebkit: do not build with -g, but with -g1")
+# QMAKE_CXXFLAGS_RELEASE -= -g
+# QMAKE_CXXFLAGS_RELEASE += -g1
+#}
+
INCLUDEPATH += \
$$SOURCE_DIR/qt/Api \
$$SOURCE_DIR/qt/WebCoreSupport \
diff -up qtwebkit-opensource-src-5.0.1/Source/WTF/WTF.pri.debuginfo qtwebkit-opensource-src-5.0.1/Source/WTF/WTF.pri
--- qtwebkit-opensource-src-5.0.1/Source/WTF/WTF.pri.debuginfo 2013-01-29 13:03:38.000000000 -0600
+++ qtwebkit-opensource-src-5.0.1/Source/WTF/WTF.pri 2013-02-23 13:56:23.584947256 -0600
@@ -8,6 +8,12 @@
# All external modules should include WTF headers by prefixing with "wtf" (#include <wtf/some/thing.h>).
INCLUDEPATH += $$PWD
+#equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64) {
+# message("WTF workaround for QtWebkit: do not build with -g, but with -g1")
+# QMAKE_CXXFLAGS_RELEASE -= -g
+# QMAKE_CXXFLAGS_RELEASE += -g1
+#}
+
mac {
# Mac OS does ship libicu but not the associated header files.
# Therefore WebKit provides adequate header files.

View File

@ -0,0 +1,114 @@
diff -up qtwebkit-opensource-src-5.0.2/Source/api.pri.system_angle qtwebkit-opensource-src-5.0.2/Source/api.pri
--- qtwebkit-opensource-src-5.0.2/Source/api.pri.system_angle 2013-04-08 19:11:51.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/Source/api.pri 2013-05-25 07:24:57.723118634 -0500
@@ -24,8 +24,6 @@ build?(webkit1): {
}
build?(webkit2): QMAKE_INTERNAL_INCLUDED_FILES *= WebKit2/Target.pri
-use?(3D_GRAPHICS): WEBKIT += angle
-
MODULE = webkit
CONFIG += creating_module
diff -up qtwebkit-opensource-src-5.0.2/Source/WebCore/Target.pri.system_angle qtwebkit-opensource-src-5.0.2/Source/WebCore/Target.pri
--- qtwebkit-opensource-src-5.0.2/Source/WebCore/Target.pri.system_angle 2013-04-08 19:11:51.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/Source/WebCore/Target.pri 2013-05-25 07:24:57.722118644 -0500
@@ -3988,7 +3988,7 @@ use?(3D_GRAPHICS) {
platform/graphics/texmap/TextureMapperGL.cpp \
platform/graphics/texmap/TextureMapperShaderManager.cpp
- INCLUDEPATH += $$PWD/platform/graphics/gpu
+ INCLUDEPATH += $$PWD/platform/graphics/gpu /usr/include/GLSLANG
contains(QT_CONFIG, opengl) | contains(QT_CONFIG, opengles2) {
!contains(QT_CONFIG, opengles2) {
diff -up qtwebkit-opensource-src-5.0.2/Source/WebCore/WebCore.pri.system_angle qtwebkit-opensource-src-5.0.2/Source/WebCore/WebCore.pri
--- qtwebkit-opensource-src-5.0.2/Source/WebCore/WebCore.pri.system_angle 2013-05-25 07:24:57.718118687 -0500
+++ qtwebkit-opensource-src-5.0.2/Source/WebCore/WebCore.pri 2013-05-25 09:24:18.318809566 -0500
@@ -214,12 +214,13 @@ enable?(WEB_AUDIO) {
use?(3D_GRAPHICS) {
win32: {
- win32-g++: {
+ win32-g++*: {
# Make sure OpenGL libs are after the webcore lib so MinGW can resolve symbols
contains(QT_CONFIG, opengles2) {
CONFIG(debug, debug|release):contains(QT_CONFIG, angle) {
LIBS += $$QMAKE_LIBS_OPENGL_ES2_DEBUG
} else {
+ INCLUDEPATH += /usr/i686-w64-mingw32/sys-root/mingw/include/GLSLANG
LIBS += $$QMAKE_LIBS_OPENGL_ES2
}
} else {
@@ -228,6 +229,8 @@ use?(3D_GRAPHICS) {
}
} else {
contains(QT_CONFIG, opengles2): LIBS += -lEGL
+ INCLUDEPATH += /usr/include/GLSLANG
+ LIBS += -ltranslator_glsl -ltranslator_common -lpreprocessor
}
}
diff -up qtwebkit-opensource-src-5.0.2/Source/WebKit2/Target.pri.system_angle qtwebkit-opensource-src-5.0.2/Source/WebKit2/Target.pri
--- qtwebkit-opensource-src-5.0.2/Source/WebKit2/Target.pri.system_angle 2013-04-08 19:11:42.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/Source/WebKit2/Target.pri 2013-05-25 07:24:57.723118634 -0500
@@ -938,7 +938,10 @@ enable?(TOUCH_EVENTS) {
enable?(GEOLOCATION): QT += location
-use?(3D_GRAPHICS): WEBKIT += angle
+use?(3D_GRAPHICS) {
+ WEBKIT += angle
+ INCLUDEPATH += /usr/include/GLSLANG
+}
use?(PLUGIN_BACKEND_XLIB) {
DEFINES += XP_UNIX
diff -up qtwebkit-opensource-src-5.0.2/Source/WebKit/WebKit1.pro.system_angle qtwebkit-opensource-src-5.0.2/Source/WebKit/WebKit1.pro
--- qtwebkit-opensource-src-5.0.2/Source/WebKit/WebKit1.pro.system_angle 2013-04-08 19:11:39.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/Source/WebKit/WebKit1.pro 2013-05-25 07:24:57.722118644 -0500
@@ -92,7 +92,10 @@ HEADERS += \
INCLUDEPATH += \
$$PWD/qt/WebCoreSupport
-use?(3D_GRAPHICS): WEBKIT += angle
+use?(3D_GRAPHICS) {
+ WEBKIT += angle
+ INCLUDEPATH += /usr/include/GLSLANG
+}
enable?(GEOLOCATION) {
HEADERS += \
diff -up qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/features/webkit_modules.prf.system_angle qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/features/webkit_modules.prf
--- qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/features/webkit_modules.prf.system_angle 2013-04-08 19:11:53.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/features/webkit_modules.prf 2013-05-25 07:24:57.723118634 -0500
@@ -7,7 +7,7 @@
# Reorder libraries so that the link and include order is correct,
# and make sure the case matches the original case.
-libraries = WebKit1 WebKit2 WebCore ANGLE JavaScriptCore WTF
+libraries = WebKit1 WebKit2 WebCore JavaScriptCore WTF
for(library, libraries) {
contains(WEBKIT, $$lower($$library)) {
WEBKIT -= $$lower($$library)
diff -up qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/modules/angle.prf.system_angle qtwebkit-opensource-src-5.0.2/Tools/qmake/mkspecs/modules/angle.prf
diff -up qtwebkit-opensource-src-5.0.2/WebKit.pro.system_angle qtwebkit-opensource-src-5.0.2/WebKit.pro
--- qtwebkit-opensource-src-5.0.2/WebKit.pro.system_angle 2013-04-08 19:11:32.000000000 -0500
+++ qtwebkit-opensource-src-5.0.2/WebKit.pro 2013-05-25 07:24:57.720118666 -0500
@@ -18,11 +18,11 @@ JavaScriptCore.file = Source/JavaScriptC
JavaScriptCore.makefile = Makefile.JavaScriptCore
SUBDIRS += JavaScriptCore
-use?(3D_GRAPHICS) {
- ANGLE.file = Source/ThirdParty/ANGLE/ANGLE.pro
- ANGLE.makefile = Makefile.ANGLE
- SUBDIRS += ANGLE
-}
+#use?(3D_GRAPHICS) {
+# ANGLE.file = Source/ThirdParty/ANGLE/ANGLE.pro
+# ANGLE.makefile = Makefile.ANGLE
+# SUBDIRS += ANGLE
+#}
WebCore.file = Source/WebCore/WebCore.pro
WebCore.makefile = Makefile.WebCore

View File

@ -0,0 +1 @@
85aad9f287910c21c8464d7d1ea010a9 qtwebkit-opensource-src-5.0.2.tar.xz

View File

@ -0,0 +1,57 @@
Index: trunk/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp
===================================================================
--- trunk/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp (revision 136430)
+++ trunk/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp (revision 142567)
@@ -33,7 +33,14 @@
namespace WebCore {
-inline static int getValidationResultValue(const ShHandle compiler, ShShaderInfo shaderInfo)
-{
- int value = -1;
+// Temporary typedef to support an incompatible change in the ANGLE API.
+#if !defined(ANGLE_SH_VERSION) || ANGLE_SH_VERSION < 108
+typedef int ANGLEGetInfoType;
+#else
+typedef size_t ANGLEGetInfoType;
+#endif
+
+inline static ANGLEGetInfoType getValidationResultValue(const ShHandle compiler, ShShaderInfo shaderInfo)
+{
+ ANGLEGetInfoType value = 0;
ShGetInfo(compiler, shaderInfo, &value);
return value;
@@ -56,13 +63,11 @@
}
- int numSymbols = getValidationResultValue(compiler, symbolType);
- if (numSymbols < 0)
- return false;
-
- int maxNameLength = getValidationResultValue(compiler, symbolMaxNameLengthType);
+ ANGLEGetInfoType numSymbols = getValidationResultValue(compiler, symbolType);
+
+ ANGLEGetInfoType maxNameLength = getValidationResultValue(compiler, symbolMaxNameLengthType);
if (maxNameLength <= 1)
return false;
- int maxMappedNameLength = getValidationResultValue(compiler, SH_MAPPED_NAME_MAX_LENGTH);
+ ANGLEGetInfoType maxMappedNameLength = getValidationResultValue(compiler, SH_MAPPED_NAME_MAX_LENGTH);
if (maxMappedNameLength <= 1)
return false;
@@ -72,7 +77,7 @@
Vector<char, 256> mappedNameBuffer(maxMappedNameLength);
- for (int i = 0; i < numSymbols; ++i) {
+ for (ANGLEGetInfoType i = 0; i < numSymbols; ++i) {
ANGLEShaderSymbol symbol;
- int nameLength = -1;
+ ANGLEGetInfoType nameLength = 0;
switch (symbolType) {
case SH_ACTIVE_ATTRIBUTES:
@@ -88,5 +93,5 @@
return false;
}
- if (nameLength <= 0)
+ if (!nameLength)
return false;

105
webkit-commit-147345.patch Normal file
View File

@ -0,0 +1,105 @@
Index: trunk/Source/WTF/wtf/HashMap.h
===================================================================
--- trunk/Source/WTF/wtf/HashMap.h (revision 147344)
+++ trunk/Source/WTF/wtf/HashMap.h (revision 147345)
@@ -137,27 +137,33 @@
AddResult inlineAdd(const KeyType&, MappedPassInReferenceType);
- class HashMapKeysProxy : private HashMap {
+ HashTableType m_impl;
+ };
+
+ template<typename KeyArg, typename MappedArg, typename HashArg, typename KeyTraitsArg, typename MappedTraitsArg>
+ class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapKeysProxy :
+ private HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> {
public:
- typedef typename HashMap::iterator::Keys iterator;
- typedef typename HashMap::const_iterator::Keys const_iterator;
-
+ typedef HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> HashMapType;
+ typedef typename HashMapType::iterator::Keys iterator;
+ typedef typename HashMapType::const_iterator::Keys const_iterator;
+
iterator begin()
{
- return HashMap::begin().keys();
- }
-
+ return HashMapType::begin().keys();
+ }
+
iterator end()
{
- return HashMap::end().keys();
+ return HashMapType::end().keys();
}
const_iterator begin() const
{
- return HashMap::begin().keys();
- }
-
+ return HashMapType::begin().keys();
+ }
+
const_iterator end() const
{
- return HashMap::end().keys();
+ return HashMapType::end().keys();
}
@@ -170,29 +176,32 @@
HashMapKeysProxy& operator=(const HashMapKeysProxy&);
~HashMapKeysProxy();
- };
-
- class HashMapValuesProxy : private HashMap {
+ };
+
+ template<typename KeyArg, typename MappedArg, typename HashArg, typename KeyTraitsArg, typename MappedTraitsArg>
+ class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapValuesProxy :
+ private HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> {
public:
- typedef typename HashMap::iterator::Values iterator;
- typedef typename HashMap::const_iterator::Values const_iterator;
-
+ typedef HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> HashMapType;
+ typedef typename HashMapType::iterator::Values iterator;
+ typedef typename HashMapType::const_iterator::Values const_iterator;
+
iterator begin()
{
- return HashMap::begin().values();
- }
-
+ return HashMapType::begin().values();
+ }
+
iterator end()
{
- return HashMap::end().values();
+ return HashMapType::end().values();
}
const_iterator begin() const
{
- return HashMap::begin().values();
- }
-
+ return HashMapType::begin().values();
+ }
+
const_iterator end() const
{
- return HashMap::end().values();
+ return HashMapType::end().values();
}
@@ -205,7 +214,4 @@
HashMapValuesProxy& operator=(const HashMapValuesProxy&);
~HashMapValuesProxy();
- };
-
- HashTableType m_impl;
};

View File

@ -0,0 +1,12 @@
--- qtwebkit-opensource-src-5.0.2/Source/WTF/wtf/Compiler.h.static_assert 2013-05-18 00:27:58.755311019 +0200
+++ qtwebkit-opensource-src-5.0.2/Source/WTF/wtf/Compiler.h 2013-05-18 00:36:49.386262802 +0200
@@ -122,6 +122,9 @@
/* Specific compiler features */
#if COMPILER(GCC) && !COMPILER(CLANG)
+#if GCC_VERSION_AT_LEAST(4, 8, 0)
+#pragma GCC diagnostic ignored "-Wunused-local-typedefs"
+#endif
#if GCC_VERSION_AT_LEAST(4, 7, 0) && defined(__cplusplus) && __cplusplus >= 201103L
#define WTF_COMPILER_SUPPORTS_CXX_RVALUE_REFERENCES 1
#define WTF_COMPILER_SUPPORTS_CXX_DELETED_FUNCTIONS 1

View File

@ -0,0 +1,19 @@
diff -up webkit-qtwebkit/Source/WebCore/plugins/PluginDatabase.cpp.orig webkit-qtwebkit/Source/WebCore/plugins/PluginDatabase.cpp
--- webkit-qtwebkit/Source/WebCore/plugins/PluginDatabase.cpp.orig 2011-05-12 10:06:43.000000000 +0200
+++ webkit-qtwebkit/Source/WebCore/plugins/PluginDatabase.cpp 2011-05-12 10:08:08.000000000 +0200
@@ -380,6 +380,7 @@ Vector<String> PluginDatabase::defaultPl
paths.append("/usr/lib/firefox/plugins");
paths.append("/usr/lib64/browser-plugins");
paths.append("/usr/lib/browser-plugins");
+ paths.append("/usr/lib/mozilla/plugins-wrapped");
paths.append("/usr/lib/mozilla/plugins");
paths.append("/usr/local/netscape/plugins");
paths.append("/opt/mozilla/plugins");
@@ -389,6 +390,7 @@ Vector<String> PluginDatabase::defaultPl
paths.append("/usr/lib/netscape/plugins");
paths.append("/usr/lib/netscape/plugins-libc5");
paths.append("/usr/lib/netscape/plugins-libc6");
+ paths.append("/usr/lib64/mozilla/plugins-wrapped");
paths.append("/usr/lib64/netscape/plugins");
paths.append("/usr/lib64/mozilla/plugins");
paths.append("/usr/lib/nsbrowser/plugins");