[mingw-qt5-qtwebkit] Update to 5.4.0
Erik van Pienbroek
epienbro at fedoraproject.org
Thu Jan 1 20:32:42 UTC 2015
commit 73b22da4faa75c1be3efbae08ad90082ae234f03
Author: Erik van Pienbroek <epienbro at fedoraproject.org>
Date: Thu Jan 1 21:32:49 2015 +0100
Update to 5.4.0
.gitignore | 1 +
changeset_150223.diff | 11 --
mingw-qt5-qtwebkit.spec | 42 +++----
qt5-qtwebkit-dont-depend-on-icu.patch | 27 +++--
...ebkit-fix-compatibility-with-latest-angle.patch | 133 ++++++++++++++++++++
qt5-qtwebkit-use-correct-icu-libs.patch | 16 ++--
qtwebkit-dont-use-bundled-angle-libraries.patch | 6 +-
sources | 2 +-
8 files changed, 184 insertions(+), 54 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 80792e0..80916d0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
/qtwebkit-opensource-src-5.3.0.tar.xz
/qtwebkit-opensource-src-5.3.1.tar.xz
/qtwebkit-opensource-src-5.3.2.tar.xz
+/qtwebkit-opensource-src-5.4.0.tar.xz
diff --git a/mingw-qt5-qtwebkit.spec b/mingw-qt5-qtwebkit.spec
index fafdba1..8b0a3b0 100644
--- a/mingw-qt5-qtwebkit.spec
+++ b/mingw-qt5-qtwebkit.spec
@@ -17,7 +17,7 @@
%global release_version %(echo %{version} | awk -F. '{print $1"."$2}')
Name: mingw-qt5-%{qt_module}
-Version: 5.3.2
+Version: 5.4.0
Release: 1%{?pre:.%{pre}}%{?snapshot_date:.git%{snapshot_date}.%{snapshot_rev}}%{?dist}
Summary: Qt5 for Windows - QtWebKit component
@@ -40,12 +40,12 @@ Source0: http://download.qt-project.org/official_releases/qt/%{release_ve
BuildArch: noarch
BuildRequires: mingw32-filesystem >= 96
-BuildRequires: mingw32-qt5-qtbase >= 5.3.2
-BuildRequires: mingw32-qt5-qtdeclarative >= 5.3.2
-BuildRequires: mingw32-qt5-qtsensors >= 5.3.2
-BuildRequires: mingw32-qt5-qtlocation >= 5.3.2
-BuildRequires: mingw32-qt5-qtmultimedia >= 5.3.2
-BuildRequires: mingw32-angleproject >= 0-0.5.svn2215.20130517
+BuildRequires: mingw32-qt5-qtbase >= 5.4.0
+BuildRequires: mingw32-qt5-qtdeclarative >= 5.4.0
+BuildRequires: mingw32-qt5-qtsensors >= 5.4.0
+BuildRequires: mingw32-qt5-qtlocation >= 5.4.0
+BuildRequires: mingw32-qt5-qtmultimedia >= 5.4.0
+BuildRequires: mingw32-angleproject >= 0-0.11.git.30d6c2.20141113
BuildRequires: mingw32-fontconfig
BuildRequires: mingw32-libpng
BuildRequires: mingw32-libjpeg-turbo
@@ -57,12 +57,12 @@ BuildRequires: mingw32-sqlite
BuildRequires: mingw32-libwebp
BuildRequires: mingw64-filesystem >= 96
-BuildRequires: mingw64-qt5-qtbase >= 5.3.2
-BuildRequires: mingw64-qt5-qtdeclarative >= 5.3.2
-BuildRequires: mingw64-qt5-qtsensors >= 5.3.2
-BuildRequires: mingw64-qt5-qtlocation >= 5.3.2
-BuildRequires: mingw64-qt5-qtmultimedia >= 5.3.2
-BuildRequires: mingw64-angleproject >= 0-0.5.svn2215.20130517
+BuildRequires: mingw64-qt5-qtbase >= 5.4.0
+BuildRequires: mingw64-qt5-qtdeclarative >= 5.4.0
+BuildRequires: mingw64-qt5-qtsensors >= 5.4.0
+BuildRequires: mingw64-qt5-qtlocation >= 5.4.0
+BuildRequires: mingw64-qt5-qtmultimedia >= 5.4.0
+BuildRequires: mingw64-angleproject >= 0-0.11.git.30d6c2.20141113
BuildRequires: mingw64-fontconfig
BuildRequires: mingw64-libpng
BuildRequires: mingw64-libjpeg-turbo
@@ -114,16 +114,14 @@ Patch5: revert-qt4-unicode-removal.patch
# in the Qt5WebKit.dll shared library)
Patch6: qt5-qtwebkit-workaround-build-breakage-after-svn-commit-136242.patch
-# Fix detection of native tools which started to fail as of QtWebkit 5.1.0
-# Caused by upstream commit 150223, so revert it for now
-Patch9: changeset_150223.diff
-
# smaller debuginfo s/-g/-g1/ (debian uses -gstabs) to avoid 4gb size limit
Patch10: qtwebkit-opensource-src-5.0.1-debuginfo.patch
# Revert commit 151422 to fix a build failure which happens because we're not using ICU
Patch11: webkit-commit-151422.patch
+# Fix compatibility issue when using the latest ANGLE
+Patch12: qt5-qtwebkit-fix-compatibility-with-latest-angle.patch
%description
@@ -169,9 +167,9 @@ Fedora Windows cross-compiler.
%patch4 -p1 -b .no_icu
%patch5 -p1 -b .qt4_unicode -R
%patch6 -p0 -b .export
-%patch9 -p1 -b .tools -R
%patch10 -p1 -b .debuginfo
%patch11 -p1 -b .no_icu -R
+%patch12 -p1 -b .angle_git
# Make sure the bundled copy of the ANGLE libraries isn't used
rm -rf Source/ThirdParty/ANGLE
@@ -193,11 +191,6 @@ unset PKG_CONFIG_PATH
# .prl files aren't interesting for us
find $RPM_BUILD_ROOT -name "*.prl" -delete
-# The .dll's are installed in both %%{mingw32_bindir} and %%{mingw32_libdir}
-# One copy of the .dll's is sufficient
-rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/*.dll
-rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll
-
# The QtWebProcess executable is placed in the wrong folder, move it manually
mv $RPM_BUILD_ROOT%{mingw32_datadir}/qt5/bin/QtWebProcess.exe $RPM_BUILD_ROOT%{mingw32_bindir}/
mv $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/bin/QtWebProcess.exe $RPM_BUILD_ROOT%{mingw64_bindir}/
@@ -247,6 +240,9 @@ mv $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/bin/QtWebProcess.exe $RPM_BUILD_ROOT%{m
%changelog
+* Mon Dec 29 2014 Erik van Pienbroek <epienbro at fedoraproject.org> - 5.4.0-1
+- Update to 5.4.0
+
* Sat Sep 20 2014 Erik van Pienbroek <epienbro at fedoraproject.org> - 5.3.2-1
- Update to 5.3.2
diff --git a/qt5-qtwebkit-dont-depend-on-icu.patch b/qt5-qtwebkit-dont-depend-on-icu.patch
index 9364b81..1226704 100644
--- a/qt5-qtwebkit-dont-depend-on-icu.patch
+++ b/qt5-qtwebkit-dont-depend-on-icu.patch
@@ -1,23 +1,23 @@
--- qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/features/configure.prf.orig 2013-01-04 18:56:36.785550268 +0100
+++ qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/features/configure.prf 2013-01-04 18:58:20.047373664 +0100
-@@ -110,9 +110,9 @@
+@@ -115,9 +115,9 @@
}
# Sanity checks that would prevent us from building the whole project altogether.
-- !mac:!contains(QT_CONFIG,icu) {
-- addReasonForSkippingBuild("ICU is required. To build QtWebKit with Qt 5 you need to build Qt 5 with libICU support. Check for ICU support being mentioned in qtbase/config.summary.")
+- !android:!mac:!config_icu {
+- addReasonForSkippingBuild("ICU is required.")
- }
-+# !mac:!contains(QT_CONFIG,icu) {
-+# addReasonForSkippingBuild("ICU is required. To build QtWebKit with Qt 5 you need to build Qt 5 with libICU support. Check for ICU support being mentioned in qtbase/config.summary.")
++# !android:!mac:!config_icu {
++# addReasonForSkippingBuild("ICU is required.")
+# }
production_build:blackberry|qnx {
addReasonForSkippingBuild("Build not supported on BB10/QNX yet.")
}
--- qtwebkit-opensource-src-5.0.0/Source/WTF/wtf/Platform.h.orig 2013-01-04 19:28:53.735934784 +0100
+++ qtwebkit-opensource-src-5.0.0/Source/WTF/wtf/Platform.h 2013-01-04 19:28:13.856641177 +0100
-@@ -545,9 +545,13 @@
-
- #endif /* OS(WINCE) && !PLATFORM(QT) */
+@@ -580,9 +580,13 @@
+ # define WTF_USE_WCHAR_UNICODE 1
+ #endif
+#if OS(WINDOWS) && PLATFORM(QT)
+#define WTF_USE_QT4_UNICODE 1
@@ -254,3 +254,14 @@
{
TextBreakIterator* lineBreakIterator = 0;
if (staticLineBreakIterator) {
+--- qtwebkit-opensource-src-5.4.0/Tools/qmake/mkspecs/features/features.prf.orig 2014-12-29 23:30:47.372582743 +0100
++++ qtwebkit-opensource-src-5.4.0/Tools/qmake/mkspecs/features/features.prf 2014-12-29 23:31:08.021797817 +0100
+@@ -142,7 +142,7 @@
+ # IndexedDB requires leveldb
+ enable?(indexed_database): WEBKIT_CONFIG += use_leveldb
+
+- !config_icu:!mac: WEBKIT_CONFIG += use_wchar_unicode
++# !config_icu:!mac: WEBKIT_CONFIG += use_wchar_unicode
+
+ export(WEBKIT_CONFIG)
+ export(CONFIGURE_WARNINGS)
diff --git a/qt5-qtwebkit-fix-compatibility-with-latest-angle.patch b/qt5-qtwebkit-fix-compatibility-with-latest-angle.patch
new file mode 100644
index 0000000..2330ee5
--- /dev/null
+++ b/qt5-qtwebkit-fix-compatibility-with-latest-angle.patch
@@ -0,0 +1,133 @@
+--- qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h.orig 2014-12-29 22:48:34.532357391 +0100
++++ qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h 2014-12-29 23:01:26.254334924 +0100
+@@ -35,13 +35,14 @@
+ #include "GLSLANG/ShaderLang.h"
+ #else
+ #include "ShaderLang.h"
++#include "angle_gl.h"
+ #endif
+
+ namespace WebCore {
+
+ enum ANGLEShaderType {
+- SHADER_TYPE_VERTEX = SH_VERTEX_SHADER,
+- SHADER_TYPE_FRAGMENT = SH_FRAGMENT_SHADER,
++ SHADER_TYPE_VERTEX = GL_VERTEX_SHADER,
++ SHADER_TYPE_FRAGMENT = GL_FRAGMENT_SHADER,
+ };
+
+ enum ANGLEShaderSymbolType {
+@@ -53,17 +54,17 @@
+ ANGLEShaderSymbolType symbolType;
+ String name;
+ String mappedName;
+- ShDataType dataType;
++ sh::GLenum dataType;
+ int size;
+ bool isArray;
+
+ bool isSampler() const
+ {
+ return symbolType == SHADER_SYMBOL_TYPE_UNIFORM
+- && (dataType == SH_SAMPLER_2D
+- || dataType == SH_SAMPLER_CUBE
+- || dataType == SH_SAMPLER_2D_RECT_ARB
+- || dataType == SH_SAMPLER_EXTERNAL_OES);
++ && (dataType == GL_SAMPLER_2D
++ || dataType == GL_SAMPLER_CUBE
++ || dataType == GL_SAMPLER_2D_RECT_ARB
++ || dataType == GL_SAMPLER_EXTERNAL_OES);
+ }
+ };
+
+--- qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp.orig 2014-12-29 23:37:30.636783007 +0100
++++ qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp 2014-12-30 12:00:39.524299653 +0100
+@@ -42,7 +42,7 @@
+ inline static ANGLEGetInfoType getValidationResultValue(const ShHandle compiler, ShShaderInfo shaderInfo)
+ {
+ ANGLEGetInfoType value = 0;
+- ShGetInfo(compiler, shaderInfo, &value);
++ ShGetInfo(compiler, (ShShaderInfo) shaderInfo, &value);
+ return value;
+ }
+
+@@ -51,11 +51,11 @@
+ ShShaderInfo symbolMaxNameLengthType;
+
+ switch (symbolType) {
+- case SH_ACTIVE_ATTRIBUTES:
+- symbolMaxNameLengthType = SH_ACTIVE_ATTRIBUTE_MAX_LENGTH;
++ case GL_ACTIVE_ATTRIBUTES:
++ symbolMaxNameLengthType = (ShShaderInfo) GL_ACTIVE_ATTRIBUTE_MAX_LENGTH;
+ break;
+- case SH_ACTIVE_UNIFORMS:
+- symbolMaxNameLengthType = SH_ACTIVE_UNIFORM_MAX_LENGTH;
++ case GL_ACTIVE_UNIFORMS:
++ symbolMaxNameLengthType = (ShShaderInfo) GL_ACTIVE_UNIFORM_MAX_LENGTH;
+ break;
+ default:
+ ASSERT_NOT_REACHED();
+@@ -79,14 +79,16 @@
+ for (ANGLEGetInfoType i = 0; i < numSymbols; ++i) {
+ ANGLEShaderSymbol symbol;
+ ANGLEGetInfoType nameLength = 0;
++ ShPrecisionType precision = SH_PRECISION_UNDEFINED;
++ int staticUse = 0;
+ switch (symbolType) {
+- case SH_ACTIVE_ATTRIBUTES:
++ case GL_ACTIVE_ATTRIBUTES:
+ symbol.symbolType = SHADER_SYMBOL_TYPE_ATTRIBUTE;
+- ShGetActiveAttrib(compiler, i, &nameLength, &symbol.size, &symbol.dataType, nameBuffer.data(), mappedNameBuffer.data());
++ ShGetVariableInfo(compiler, SH_ACTIVE_ATTRIBUTES, i, &nameLength, &symbol.size, &symbol.dataType, &precision, &staticUse, nameBuffer.data(), mappedNameBuffer.data());
+ break;
+- case SH_ACTIVE_UNIFORMS:
++ case GL_ACTIVE_UNIFORMS:
+ symbol.symbolType = SHADER_SYMBOL_TYPE_UNIFORM;
+- ShGetActiveUniform(compiler, i, &nameLength, &symbol.size, &symbol.dataType, nameBuffer.data(), mappedNameBuffer.data());
++ ShGetVariableInfo(compiler, SH_ACTIVE_UNIFORMS, i, &nameLength, &symbol.size, &symbol.dataType, &precision, &staticUse, nameBuffer.data(), mappedNameBuffer.data());
+ break;
+ default:
+ ASSERT_NOT_REACHED();
+@@ -170,8 +172,8 @@
+ bool ANGLEWebKitBridge::compileShaderSource(const char* shaderSource, ANGLEShaderType shaderType, String& translatedShaderSource, String& shaderValidationLog, Vector<ANGLEShaderSymbol>& symbols, int extraCompileOptions)
+ {
+ if (!builtCompilers) {
+- m_fragmentCompiler = ShConstructCompiler(SH_FRAGMENT_SHADER, m_shaderSpec, m_shaderOutput, &m_resources);
+- m_vertexCompiler = ShConstructCompiler(SH_VERTEX_SHADER, m_shaderSpec, m_shaderOutput, &m_resources);
++ m_fragmentCompiler = ShConstructCompiler(GL_FRAGMENT_SHADER, m_shaderSpec, m_shaderOutput, &m_resources);
++ m_vertexCompiler = ShConstructCompiler(GL_VERTEX_SHADER, m_shaderSpec, m_shaderOutput, &m_resources);
+ if (!m_fragmentCompiler || !m_vertexCompiler) {
+ cleanupCompilers();
+ return false;
+@@ -189,7 +191,7 @@
+
+ const char* const shaderSourceStrings[] = { shaderSource };
+
+- bool validateSuccess = ShCompile(compiler, shaderSourceStrings, 1, SH_OBJECT_CODE | SH_ATTRIBUTES_UNIFORMS | extraCompileOptions);
++ bool validateSuccess = ShCompile(compiler, shaderSourceStrings, 1, SH_OBJECT_CODE | SH_VARIABLES | extraCompileOptions);
+ if (!validateSuccess) {
+ int logSize = getValidationResultValue(compiler, SH_INFO_LOG_LENGTH);
+ if (logSize > 1) {
+@@ -211,9 +213,9 @@
+ translatedShaderSource = translationBuffer.get();
+ }
+
+- if (!getSymbolInfo(compiler, SH_ACTIVE_ATTRIBUTES, symbols))
++ if (!getSymbolInfo(compiler, (ShShaderInfo) GL_ACTIVE_ATTRIBUTES, symbols))
+ return false;
+- if (!getSymbolInfo(compiler, SH_ACTIVE_UNIFORMS, symbols))
++ if (!getSymbolInfo(compiler, (ShShaderInfo) GL_ACTIVE_UNIFORMS, symbols))
+ return false;
+
+ return true;
+--- qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp.orig 2014-12-30 12:11:43.450097601 +0100
++++ qtwebkit-opensource-src-5.4.0/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp 2014-12-30 12:13:46.812361166 +0100
+@@ -172,7 +172,7 @@
+
+ String translatedShaderSource;
+ String shaderInfoLog;
+- int extraCompileOptions = SH_MAP_LONG_VARIABLE_NAMES | SH_CLAMP_INDIRECT_ARRAY_BOUNDS;
++ int extraCompileOptions = SH_CLAMP_INDIRECT_ARRAY_BOUNDS;
+
+ if (m_requiresBuiltInFunctionEmulation)
+ extraCompileOptions |= SH_EMULATE_BUILT_IN_FUNCTIONS;
diff --git a/qt5-qtwebkit-use-correct-icu-libs.patch b/qt5-qtwebkit-use-correct-icu-libs.patch
index c39e2c4..f350ed2 100644
--- a/qt5-qtwebkit-use-correct-icu-libs.patch
+++ b/qt5-qtwebkit-use-correct-icu-libs.patch
@@ -1,11 +1,11 @@
--- Source/WTF/WTF.pri.orig 2012-09-13 20:58:45.888254227 +0200
+++ Source/WTF/WTF.pri 2012-09-13 20:59:01.874364654 +0200
-@@ -15,7 +15,7 @@
+@@ -14,7 +14,7 @@
+ INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
LIBS += -licucore
- } else {
- contains(QT_CONFIG,icu) {
-- win32: LIBS += -licuin -licuuc -licudt
-+ win32:!mingw: LIBS += -licuin -licuuc -licudt
- else:!contains(QT_CONFIG,no-pkg-config):packagesExist("icu-i18n"): PKGCONFIG *= icu-i18n
- else:android: LIBS += -licui18n -licuuc
- else: LIBS += -licui18n -licuuc -licudata
+ } else:!use?(wchar_unicode): {
+- win32: LIBS += -licuin -licuuc -licudt
++ win32:!mingw: LIBS += -licuin -licuuc -licudt
+ else:!contains(QT_CONFIG,no-pkg-config):packagesExist("icu-i18n"): PKGCONFIG *= icu-i18n
+ else:android: LIBS += -licui18n -licuuc
+ else: LIBS += -licui18n -licuuc -licudata
diff --git a/qtwebkit-dont-use-bundled-angle-libraries.patch b/qtwebkit-dont-use-bundled-angle-libraries.patch
index 0e41f19..2743132 100644
--- a/qtwebkit-dont-use-bundled-angle-libraries.patch
+++ b/qtwebkit-dont-use-bundled-angle-libraries.patch
@@ -15,15 +15,15 @@
leveldb.makefile = Makefile.leveldb
--- qtwebkit-opensource-src-5.0.0/Source/WebCore/Target.pri.orig 2013-01-04 01:58:25.145960916 +0100
+++ qtwebkit-opensource-src-5.0.0/Source/WebCore/Target.pri 2013-01-04 01:58:53.245166218 +0100
-@@ -4160,7 +4160,7 @@
+@@ -4194,7 +4194,7 @@
platform/graphics/texmap/coordinated/CoordinatedTile.cpp \
platform/graphics/texmap/coordinated/UpdateAtlas.cpp
- INCLUDEPATH += $$PWD/platform/graphics/gpu
+ INCLUDEPATH += $$PWD/platform/graphics/gpu /usr/i686-w64-mingw32/sys-root/mingw/include/GLSLANG
- contains(QT_CONFIG, opengl) | contains(QT_CONFIG, opengles2) {
- !contains(QT_CONFIG, opengles2) {
+ contains(QT_CONFIG, opengl) {
+ contains(QT_CONFIG, opengles2) {
--- qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/modules/angle.prf.orig 2013-01-04 02:25:16.357429590 +0100
+++ qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/modules/angle.prf 2013-01-04 02:25:29.383533741 +0100
@@ -4,6 +4,3 @@
diff --git a/sources b/sources
index 83a6c7d..68f48db 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0497b5b46540848e0db6a9e219d756fb qtwebkit-opensource-src-5.3.2.tar.xz
+e62d72c410dffe5129043f80f624c896 qtwebkit-opensource-src-5.4.0.tar.xz
More information about the scm-commits
mailing list