updated Qt/ANGLE

- patched ANGLE to be usable with Qt WebKit
- patched Qt WebKit to work with latest ANGLE
- removed unused patches
- fixed dependencies of mingw-w64-qt5-activeqt
This commit is contained in:
Martchus 2016-03-10 19:44:30 +01:00
parent 17173aeecb
commit 519b186e0d
32 changed files with 235 additions and 411 deletions

View File

@ -5,7 +5,7 @@
# Contributor: jellysheep <max DOT mail AT dameweb DOT de>
pkgname=mingw-w64-angleproject
pkgver=2.1.r5624.8047c0d
pkgver=2.1.r5637.0e49e6b
pkgrel=1
pkgdesc='ANGLE project (mingw-w64)'
arch=('any')
@ -14,16 +14,18 @@ license=('BSD')
depends=('mingw-w64-crt')
makedepends=('mingw-w64-gcc' 'git' 'gyp-git' 'python')
options=('!strip' '!buildflags' 'staticlibs')
source=('angleproject::git+https://chromium.googlesource.com/angle/angle#commit=8047c0d'
source=('angleproject::git+https://chromium.googlesource.com/angle/angle#commit=0e49e6b'
'additional-mingw-header::git+https://github.com/Martchus/additional-mingw-header.git#commit=7a8f394'
'angleproject-include-import-library-and-use-def-file.patch'
'libEGL_mingw32.def'
'libGLESv2_mingw32.def')
'libGLESv2_mingw32.def'
'entry_points_shader.cpp')
sha256sums=('SKIP'
'SKIP'
'e369cad08c921968714ee4edc2c6abe9bd928af41ff728634e5a7c5f096a05d2'
'895c62846e6784dcc33171523a452cb474010d3fc9e7c351c27b8add4e9930ab'
'fb04f30b904760d32c4c0b733d0a0b44359855db1fde9e7f5ca7d0b8b1be3e56'
'b1fa5f9a6f88eb67c2c3d9889df040b0f858d2acfc931320dc4350efa291c927')
'b1fa5f9a6f88eb67c2c3d9889df040b0f858d2acfc931320dc4350efa291c927'
'ad347c9732f8897497aa51b8969a0e01cd8cd4ebb9a0e873a2ff47c210f1d46c')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
#pkgver() {
@ -43,11 +45,16 @@ prepare() {
# provide 32-bit versions of *.def files
cp ../libEGL_mingw32.def src/libEGL/
cp ../libGLESv2_mingw32.def src/libGLESv2/
# provide a file to export symbols declared in ShaderLang.h as part of libGLESv2.dll
# (required to build Qt WebKit which uses shader interface)
cp ../entry_points_shader.cpp src/libGLESv2/
# remove .git directory to prevent: No rule to make target '../build-i686-w64-mingw32/.git/index', needed by 'out/Debug/obj/gen/angle/id/commit.h'.
rm -fr .git
# make sure an import library is created and the correct .def file is used during the build
# make sure an import library is created, the correct .def file is used during the build
# and entry_points_shader.cpp is compiled
patch -p1 -i "${srcdir}/angleproject-include-import-library-and-use-def-file.patch"
# executing .bat scripts on Linux is a no-go so make this a no-op

View File

@ -1,8 +1,8 @@
--- angleproject/src/libEGL.gypi.orig 2015-07-10 11:42:08.230786800 +0300
+++ angleproject/src/libEGL.gypi 2015-07-10 11:44:01.168491900 +0300
@@ -48,7 +48,16 @@
--- angleproject/src/libEGL.gypi.orig 2016-03-09 22:11:16.726879140 +0100
+++ angleproject/src/libEGL.gypi 2016-03-10 00:44:46.815748629 +0100
@@ -38,7 +38,16 @@
{
'msvs_enable_winphone' : '1',
'msvs_requires_importlibrary' : 'true',
}],
+ ['TARGET=="win32"', {
+ 'ldflags': [ '-Wl,--out-implib,libEGL.dll.a ../src/libEGL/libEGL_mingw32.def' ],
@ -17,9 +17,37 @@
},
],
}
--- angleproject/src/libGLESv2.gypi.orig 2015-07-10 11:41:58.223787600 +0300
+++ angleproject/src/libGLESv2.gypi 2015-07-10 11:44:36.585949800 +0300
@@ -826,7 +826,16 @@
--- angleproject/src/libGLESv2.gypi.orig 2016-03-10 03:55:05.562030615 +0100
+++ angleproject/src/libGLESv2.gypi 2016-03-10 03:54:50.675783990 +0100
@@ -515,6 +514,9 @@
'libGLESv2/libGLESv2.def',
'libGLESv2/libGLESv2.rc',
'libGLESv2/resource.h',
+ '../include/GLSLANG/ShaderLang.h',
+ '../include/GLSLANG/ShaderVars.h',
+ 'libGLESv2/entry_points_shader.cpp'
],
'libegl_sources':
[
@@ -533,7 +535,7 @@
'type': 'static_library',
'dependencies':
[
- 'translator_static',
+ 'translator_lib',
'commit_id',
'angle_common',
],
@@ -801,7 +803,7 @@
{
'target_name': 'libGLESv2',
'type': '<(angle_gl_library_type)',
- 'dependencies': [ 'libANGLE', 'angle_common' ],
+ 'dependencies': [ 'translator_lib', 'libANGLE', 'angle_common' ],
'includes': [ '../build/common_defines.gypi', ],
'sources':
[
@@ -821,7 +823,16 @@
{
'msvs_enable_winphone' : '1',
}],

View File

@ -0,0 +1,11 @@
#ifndef COMPONENT_BUILD
#define COMPONENT_BUILD
#endif
#ifdef ANGLE_TRANSLATOR_STATIC
#undef ANGLE_TRANSLATOR_STATIC
#endif
#ifndef ANGLE_TRANSLATOR_IMPLEMENTATION
#define ANGLE_TRANSLATOR_IMPLEMENTATION
#endif
#include "../compiler/translator/ShaderLang.cpp"

View File

@ -310,6 +310,6 @@ EXPORTS
glGetInternalformativ@20 @283
; ANGLE Platform Implementation
ANGLEPlatformCurrent @290
ANGLEPlatformInitialize @291
ANGLEPlatformShutdown @292
ANGLEPlatformCurrent @290
ANGLEPlatformInitialize @291
ANGLEPlatformShutdown @292

View File

@ -195,10 +195,7 @@ OTHER_FILES += \
qt5-translations/mingw-w64/PKGBUILD \
qt5-webkit/mingw-w64/PKGBUILD \
qt5-webkit/mingw-w64/qt5-angleproject-dont-use-winflex.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-angle-build-fix.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-commit-5742b32.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-commit-b8c97e702.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-disable-3d-graphics-support.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-dont-depend-on-icu.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-enable-pkgconfig-support-for-win32-target.patch \
qt5-webkit/mingw-w64/qt5-qtwebkit-fix-compatibility-with-latest-angle.patch \
@ -208,7 +205,6 @@ OTHER_FILES += \
qt5-webkit/mingw-w64/qtwebkit-dont-use-bundled-angle-libraries.patch \
qt5-webkit/mingw-w64/qtwebkit-opensource-src-5.0.1-debuginfo.patch \
qt5-webkit/mingw-w64/revert-qt4-unicode-removal.patch \
qt5-webkit/mingw-w64/webkit-commit-142567.patch \
qt5-webkit/mingw-w64/webkit-commit-151422.patch \
qt5-websockets/mingw-w64/PKGBUILD \
qt5-winextras/mingw-w64/PKGBUILD \
@ -233,5 +229,6 @@ OTHER_FILES += \
angleproject/mingw-w64/angleproject-include-import-library-and-use-def-file.patch \
angleproject/mingw-w64/libEGL_mingw32.def \
angleproject/mingw-w64/libGLESv2_mingw32.def \
angleproject/mingw-w64/entry_points_shader.cpp \
sqlite/mingw-w64/PKGBUILD

View File

@ -4,7 +4,7 @@
_qt_module=qt3d
pkgname="mingw-w64-qt5-3d"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)"
depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative' 'mingw-w64-qt5-quick1')

View File

@ -4,11 +4,11 @@
_qt_module=qtactiveqt
pkgname=mingw-w64-qt5-activeqt
pkgver=5.5.1
pkgrel=1
pkgrel=2
arch=(any)
pkgdesc="ActiveX integration framework (mingw-w64)"
depends=(mingw-w64-qt5-base)
makedepends=(mingw-w64-{gcc,headers-git,crt-git,winpthreads-git} python)
makedepends=(mingw-w64-{gcc,headers,crt,winpthreads} python)
options=(!strip !buildflags staticlibs)
groups=(mingw-w64-qt mingw-w64-qt5)
license=("custom, FDL, GPL3, LGPL")

View File

@ -4,7 +4,7 @@
_qt_module=qtdeclarative
pkgname=mingw-w64-qt5-declarative
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=(any)
pkgdesc="Classes for QML and JavaScript languages (mingw-w64)"
depends=(mingw-w64-qt5-base)

View File

@ -5,7 +5,7 @@
_qt_module=qtgraphicaleffects
pkgname="mingw-w64-qt5-graphicaleffects"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Graphical effects for use with Qt Quick 2 (mingw-w64)"
depends=('mingw-w64-qt5-declarative')

View File

@ -5,7 +5,7 @@
_qt_module=qtimageformats
pkgname="mingw-w64-qt5-imageformats"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Plugins for additional image formats: TIFF, MNG, TGA, WBMP (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -4,7 +4,7 @@
_qt_module=qtlocation
pkgname=mingw-w64-qt5-location
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=(any)
pkgdesc="Provides access to position, satellite and area monitoring classes (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)

View File

@ -3,7 +3,7 @@
_qt_module=qtmultimedia
pkgname=mingw-w64-qt5-multimedia
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=(any)
pkgdesc="Classes for audio, video, radio and camera functionality (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)

View File

@ -5,7 +5,7 @@
_qt_module=qtquick1
pkgname="mingw-w64-qt5-quick1"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Qt Declarative is provided for Qt 4 compatibility (mingw-w64)"
depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-script' 'mingw-w64-qt5-tools')

View File

@ -5,7 +5,7 @@
_qt_module=qtquickcontrols
pkgname="mingw-w64-qt5-quickcontrols"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)"
depends=('mingw-w64-qt5-declarative')

View File

@ -5,7 +5,7 @@
_qt_module=qtscript
pkgname="mingw-w64-qt5-script"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -5,7 +5,7 @@
_qt_module=qtsensors
pkgname=mingw-w64-qt5-sensors
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=(any)
pkgdesc="Provides access to sensor hardware and motion gesture recognition (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)

View File

@ -4,7 +4,7 @@
_qt_module=qtserialport
pkgname="mingw-w64-qt5-serialport"
pkgver=5.5.1
pkgrel=2
pkgrel=2.1
arch=('any')
pkgdesc="Provides access to hardware and virtual serial ports (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -4,7 +4,7 @@
_qt_module=qtsvg
pkgname="mingw-w64-qt5-svg"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Classes for displaying the contents of SVG files (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -5,7 +5,7 @@
_qt_module=qttools
pkgname="mingw-w64-qt5-tools"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="A cross-platform application and UI framework (Development Tools, QtHelp; mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -5,7 +5,7 @@
_qt_module=qttranslations
pkgname="mingw-w64-qt5-translations"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="A cross-platform application and UI framework (translations, mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -3,7 +3,7 @@
_qt_module=qtwebchannel
pkgname=mingw-w64-qt5-webchannel
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients (mingw-w64)'
depends=('mingw-w64-qt5-declarative')

View File

@ -1,10 +1,11 @@
# Maintainer: ant32 <antreimer@gmail.com>
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtwebkit
pkgname=mingw-w64-qt5-webkit
pkgver=5.5.1
pkgrel=1
pkgrel=2
arch=(any)
pkgdesc="Classes for a WebKit2 based implementation and a new QML API (mingw-w64)"
depends=('mingw-w64-qt5-base'
@ -28,11 +29,6 @@ url="https://www.qt.io/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
groups=(mingw-w64-qt mingw-w64-qt5)
source=("https://download.qt.io/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
qt5-angleproject-dont-use-winflex.patch
qt5-qtwebkit-angle-build-fix.patch
qt5-qtwebkit-commit-5742b32.patch
qt5-qtwebkit-commit-b8c97e702.patch
qt5-qtwebkit-disable-3d-graphics-support.patch
qt5-qtwebkit-dont-depend-on-icu.patch
qt5-qtwebkit-enable-pkgconfig-support-for-win32-target.patch
qt5-qtwebkit-fix-compatibility-with-latest-angle.patch
@ -42,24 +38,17 @@ source=("https://download.qt.io/official_releases/qt/${pkgver:0:3}/${pkgver}/sub
qtwebkit-dont-use-bundled-angle-libraries.patch
qtwebkit-opensource-src-5.0.1-debuginfo.patch
revert-qt4-unicode-removal.patch
webkit-commit-142567.patch
webkit-commit-151422.patch)
md5sums=('681328edb539b8fa3a273b38c90b3e31'
'445ada3000f0cc1279204b7a3efc3b4c'
'bc1943fb276964f710b4e9f5f08bb2ec'
'645c05f212fcd9f310798f7eacd9abd4'
'87458f3ebb61bf598e4fce10ab1ccbb7'
'b227653519ee0ea5d388bd58a21b6d66'
'ce7d257e2b5b94fe3affd98f52d99d09'
'ac574de962545d6a9e975b4db63c3e09'
'7038206bfef2aea594f10af3bda90220'
'4ad37c7d4dda8e77bb0a25c671f79adc'
'228f28df2b10e417a325176f7878ebe1'
'680fe925113911f6b6c36946d7294cbd'
'18b21fd8e9517f48db7748544d2aa92f'
'f452210683386f9c28f04d7dea0ecfc7'
'6aba6468efafb64943887079e258b799'
'4e374836f26853b4d82be0e87aa584a5'
'eaac9af299b50c2f03f4c322123e6e62'
'c36fe581e0f3b61cef19415782b257ca')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
@ -79,7 +68,7 @@ prepare() {
# Make sure the bundled copy of the ANGLE library isn't used
patch -p1 -b -i ../qtwebkit-dont-use-bundled-angle-libraries.patch
# qtwebkit depends on qtbase with ICU support.
# qt5-webkit depends on qt5-base with ICU support.
# As ICU support in qtbase also introduces over 20MB of additional dependency
# bloat (and the qtbase libraries itself are only 13MB) the decision was made
# to build qtbase without ICU support.
@ -103,8 +92,8 @@ prepare() {
# in the Qt5WebKit.dll shared library)
patch -p0 -b -i ../qt5-qtwebkit-workaround-build-breakage-after-svn-commit-136242.patch
# smaller debuginfo s/-g/-g1/ (debian uses -gstabs) to avoid 4gb size limit
patch -p1 -b -i ../qtwebkit-opensource-src-5.0.1-debuginfo.patch
# Smaller debuginfo s/-g/-g1/ (debian uses -gstabs) to avoid 4gb size limit
patch -p1 -b -i ../qtwebkit-opensource-src-5.0.1-debuginfo.patch
# Revert commit 151422 to fix a build failure which happens because we're not using ICU
patch -p1 -R -b -i ../webkit-commit-151422.patch
@ -127,8 +116,13 @@ build() {
# from system ANGLE can be included
export CPATH=/usr/$_arch/include:/usr/$_arch/include/GLSLANG
# SH_GLSL_OUTPUT has been renamed to SH_GLSL_COMPATIBILITY_OUTPUT
# in the latest ANGLE version so I just add a definition for backward compatibility
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 QMAKE_CXXFLAGS+=-Wno-c++0x-compat ../WebKit.pro
${_arch}-qmake-qt5 \
QMAKE_CXXFLAGS+=-Wno-c++0x-compat \
DEFINES+=SH_GLSL_OUTPUT=SH_GLSL_COMPATIBILITY_OUTPUT \
../WebKit.pro
make
popd
done

View File

@ -1,11 +0,0 @@
--- qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/features/default_pre.prf.orig 2013-01-04 22:00:45.442588676 +0100
+++ qtwebkit-opensource-src-5.0.0/Tools/qmake/mkspecs/features/default_pre.prf 2013-01-04 22:01:10.427771469 +0100
@@ -98,7 +98,7 @@
# A newer version of flex is required on Windows. At the moment the only
# one that appears to provide binaries and is not cygwin is winflex.
FLEX = flex
-win32: FLEX = win_flex
+win32:!win32-g++*: FLEX = win_flex
BIN_EXTENSION =
win32: BIN_EXTENSION = .exe

View File

@ -1,181 +0,0 @@
From 5742b3288b2494d03149f439182a189ba9330a47 Mon Sep 17 00:00:00 2001
From: Pierre Rossi <pierre.rossi@digia.com>
Date: Mon, 3 Dec 2012 15:16:56 +0100
Subject: [PATCH] [Qt] Use a separate QWEBKITWIDGETS_EXPORT macro for WebKitWidgets
https://bugs.webkit.org/show_bug.cgi?id=103844
Patch by Pierre Rossi <pierre.rossi@digia.com> on 2012-12-03
Reviewed by Simon Hausmann.
Let's follow the common practice and have one export macro per library.
We can't rely on BUILDING_WEBKIT anymore in that case, so we use the
qmake defines instead.
* Api/qwebkitglobal.h: Updated the import/export logic.
* WidgetApi/qgraphicswebview.h: s/QWEBKIT/QWEBKITWIDGETS/
* WidgetApi/qwebframe.h: Ditto.
* WidgetApi/qwebinspector.h: Ditto.
* WidgetApi/qwebpage.h: Ditto.
* WidgetApi/qwebview.h: Ditto.
* WidgetSupport/InitWebKitQt.cpp:
(WebKit::initializeWebKitWidgets): use QWEBKITWIDGETS_EXPORT.
* WidgetSupport/InitWebKitQt.h:
(WebKit): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136394 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change-Id: I0030f2f17cddd66aedf24f29323579174e838303
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
---
Source/WebKit/qt/Api/qwebkitglobal.h | 8 +++++++-
Source/WebKit/qt/ChangeLog | 22 ++++++++++++++++++++++
Source/WebKit/qt/WidgetApi/qgraphicswebview.h | 2 +-
Source/WebKit/qt/WidgetApi/qwebframe.h | 4 ++--
Source/WebKit/qt/WidgetApi/qwebinspector.h | 2 +-
Source/WebKit/qt/WidgetApi/qwebpage.h | 4 ++--
Source/WebKit/qt/WidgetApi/qwebview.h | 2 +-
Source/WebKit/qt/WidgetSupport/InitWebKitQt.cpp | 2 +-
Source/WebKit/qt/WidgetSupport/InitWebKitQt.h | 4 +++-
9 files changed, 40 insertions(+), 10 deletions(-)
diff --git a/Source/WebKit/qt/Api/qwebkitglobal.h b/Source/WebKit/qt/Api/qwebkitglobal.h
index 1d61182..5b866be 100644
--- a/Source/WebKit/qt/Api/qwebkitglobal.h
+++ b/Source/WebKit/qt/Api/qwebkitglobal.h
@@ -27,13 +27,19 @@
#define QTWEBKIT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
#ifndef QT_STATIC
-# if defined(BUILDING_WEBKIT)
+# if defined(QT_BUILD_WEBKIT_LIB)
# define QWEBKIT_EXPORT Q_DECL_EXPORT
# else
# define QWEBKIT_EXPORT Q_DECL_IMPORT
# endif
+# if defined(QT_BUILD_WEBKITWIDGETS_LIB)
+# define QWEBKITWIDGETS_EXPORT Q_DECL_EXPORT
+# else
+# define QWEBKITWIDGETS_EXPORT Q_DECL_IMPORT
+# endif
#else
# define QWEBKIT_EXPORT
+# define QWEBKIT_EXPORT
#endif
QWEBKIT_EXPORT QString qWebKitVersion();
diff --git a/Source/WebKit/qt/WidgetApi/qgraphicswebview.h b/Source/WebKit/qt/WidgetApi/qgraphicswebview.h
index 5c5b666..c9e61f7 100644
--- a/Source/WebKit/qt/WidgetApi/qgraphicswebview.h
+++ b/Source/WebKit/qt/WidgetApi/qgraphicswebview.h
@@ -37,7 +37,7 @@ class QWebSettings;
class QGraphicsWebViewPrivate;
-class QWEBKIT_EXPORT QGraphicsWebView : public QGraphicsWidget {
+class QWEBKITWIDGETS_EXPORT QGraphicsWebView : public QGraphicsWidget {
Q_OBJECT
Q_PROPERTY(QString title READ title NOTIFY titleChanged)
diff --git a/Source/WebKit/qt/WidgetApi/qwebframe.h b/Source/WebKit/qt/WidgetApi/qwebframe.h
index f3676fe..481d019 100644
--- a/Source/WebKit/qt/WidgetApi/qwebframe.h
+++ b/Source/WebKit/qt/WidgetApi/qwebframe.h
@@ -63,7 +63,7 @@ class QWebFrameData;
class QWebHitTestResultPrivate;
class QWebFrame;
-class QWEBKIT_EXPORT QWebHitTestResult {
+class QWEBKITWIDGETS_EXPORT QWebHitTestResult {
public:
QWebHitTestResult();
QWebHitTestResult(const QWebHitTestResult &other);
@@ -104,7 +104,7 @@ private:
friend class QWebPage;
};
-class QWEBKIT_EXPORT QWebFrame : public QObject {
+class QWEBKITWIDGETS_EXPORT QWebFrame : public QObject {
Q_OBJECT
Q_PROPERTY(qreal textSizeMultiplier READ textSizeMultiplier WRITE setTextSizeMultiplier DESIGNABLE false)
Q_PROPERTY(qreal zoomFactor READ zoomFactor WRITE setZoomFactor)
diff --git a/Source/WebKit/qt/WidgetApi/qwebinspector.h b/Source/WebKit/qt/WidgetApi/qwebinspector.h
index 3733129..c333fa2 100644
--- a/Source/WebKit/qt/WidgetApi/qwebinspector.h
+++ b/Source/WebKit/qt/WidgetApi/qwebinspector.h
@@ -27,7 +27,7 @@
class QWebInspectorPrivate;
-class QWEBKIT_EXPORT QWebInspector : public QWidget {
+class QWEBKITWIDGETS_EXPORT QWebInspector : public QWidget {
Q_OBJECT
public:
QWebInspector(QWidget* parent = 0);
diff --git a/Source/WebKit/qt/WidgetApi/qwebpage.h b/Source/WebKit/qt/WidgetApi/qwebpage.h
index 5624b49..6aa303b 100644
--- a/Source/WebKit/qt/WidgetApi/qwebpage.h
+++ b/Source/WebKit/qt/WidgetApi/qwebpage.h
@@ -65,7 +65,7 @@ namespace WebCore {
struct FrameLoadRequest;
}
-class QWEBKIT_EXPORT QWebPage : public QObject {
+class QWEBKITWIDGETS_EXPORT QWebPage : public QObject {
Q_OBJECT
Q_PROPERTY(bool modified READ isModified)
@@ -213,7 +213,7 @@ public:
Geolocation
};
- class QWEBKIT_EXPORT ViewportAttributes {
+ class QWEBKITWIDGETS_EXPORT ViewportAttributes {
public:
ViewportAttributes();
ViewportAttributes(const QWebPage::ViewportAttributes& other);
diff --git a/Source/WebKit/qt/WidgetApi/qwebview.h b/Source/WebKit/qt/WidgetApi/qwebview.h
index 701fb36..43439df 100644
--- a/Source/WebKit/qt/WidgetApi/qwebview.h
+++ b/Source/WebKit/qt/WidgetApi/qwebview.h
@@ -38,7 +38,7 @@ class QWebPage;
class QWebViewPrivate;
class QWebNetworkRequest;
-class QWEBKIT_EXPORT QWebView : public QWidget {
+class QWEBKITWIDGETS_EXPORT QWebView : public QWidget {
Q_OBJECT
Q_PROPERTY(QString title READ title)
Q_PROPERTY(QUrl url READ url WRITE setUrl)
diff --git a/Source/WebKit/qt/WidgetSupport/InitWebKitQt.cpp b/Source/WebKit/qt/WidgetSupport/InitWebKitQt.cpp
index 7188603..8d26375 100644
--- a/Source/WebKit/qt/WidgetSupport/InitWebKitQt.cpp
+++ b/Source/WebKit/qt/WidgetSupport/InitWebKitQt.cpp
@@ -30,7 +30,7 @@
namespace WebKit {
-Q_DECL_EXPORT void initializeWebKitWidgets()
+QWEBKITWIDGETS_EXPORT void initializeWebKitWidgets()
{
static bool initialized = false;
if (initialized)
diff --git a/Source/WebKit/qt/WidgetSupport/InitWebKitQt.h b/Source/WebKit/qt/WidgetSupport/InitWebKitQt.h
index fbb2d18..772c960 100644
--- a/Source/WebKit/qt/WidgetSupport/InitWebKitQt.h
+++ b/Source/WebKit/qt/WidgetSupport/InitWebKitQt.h
@@ -21,9 +21,11 @@
#ifndef InitWebKitQt_h
#define InitWebKitQt_h
+#include <qwebkitglobal.h>
+
namespace WebKit {
-Q_DECL_EXPORT void initializeWebKitWidgets();
+QWEBKITWIDGETS_EXPORT void initializeWebKitWidgets();
}
#endif
--
1.7.1

View File

@ -1,30 +0,0 @@
From b8c97e702b56c60fdbd7f72add58a18a9743bf48 Mon Sep 17 00:00:00 2001
From: Pierre Rossi <pierre.rossi@digia.com>
Date: Tue, 4 Dec 2012 14:27:24 +0100
Subject: [PATCH] [Qt] Yet another unreviewed speculative windows build fix.
WebKit2 relies on the QWEBKIT_EXPORT macro from WebKit1 as well.
* Api/qwebkitglobal.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change-Id: Iadd377b766f7282688abaa6c51c94d486dbb8edd
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
---
Source/WebKit/qt/Api/qwebkitglobal.h | 2 +-
Source/WebKit/qt/ChangeLog | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/Source/WebKit/qt/Api/qwebkitglobal.h b/Source/WebKit/qt/Api/qwebkitglobal.h
index 6ee30ca..44e4d45 100644
--- a/Source/WebKit/qt/Api/qwebkitglobal.h
+++ b/Source/WebKit/qt/Api/qwebkitglobal.h
@@ -27,7 +27,7 @@
#define QTWEBKIT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
#ifndef QT_STATIC
-# if defined(QT_BUILD_WEBKIT_LIB)
+# if !defined(QT_BUILD_WEBKITWIDGETS_LIB) && defined(BUILDING_WEBKIT)
# define QWEBKIT_EXPORT Q_DECL_EXPORT
# else
# define QWEBKIT_EXPORT Q_DECL_IMPORT

View File

@ -1,22 +0,0 @@
--- Tools/qmake/mkspecs/features/features.prf.orig 2013-01-04 22:56:13.465133221 +0100
+++ Tools/qmake/mkspecs/features/features.prf 2013-01-04 22:56:39.458319734 +0100
@@ -81,7 +81,7 @@
# Disable on Windows CE for now, as ANGLE won't compile.
!wince*:contains(QT_CONFIG, opengl) {
# On Windows we require GLES2/EGL through ANGLE.
- !win32|contains(QT_CONFIG, opengles2): WEBKIT_CONFIG += use_3d_graphics
+ #!win32|contains(QT_CONFIG, opengles2): WEBKIT_CONFIG += use_3d_graphics
}
# Temporarily disable FTPDIR on Windows CE (missing functions from time.h)
--- Tools/Scripts/webkitperl/FeatureList.pm.orig 2013-01-04 23:07:11.449912367 +0100
+++ Tools/Scripts/webkitperl/FeatureList.pm 2013-01-04 23:07:21.360989539 +0100
@@ -149,7 +149,7 @@
my @features = (
{ option => "3d-rendering", desc => "Toggle 3D Rendering support",
- define => "ENABLE_3D_RENDERING", default => (isAppleMacWebKit() || isQt()), value => \$threeDRenderingSupport },
+ define => "ENABLE_3D_RENDERING", default => (isAppleMacWebKit()), value => \$threeDRenderingSupport },
{ option => "accelerated-2d-canvas", desc => "Toggle Accelerated 2D Canvas support",
define => "ENABLE_ACCELERATED_2D_CANVAS", default => 0, value => \$accelerated2DCanvasSupport },

View File

@ -1,5 +1,5 @@
--- 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
--- qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h.orig 2015-10-13 06:37:18.000000000 +0200
+++ qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h 2016-03-09 17:17:26.000000000 +0100
@@ -35,13 +35,14 @@
#include "GLSLANG/ShaderLang.h"
#else
@ -40,55 +40,127 @@
}
};
--- 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;
--- qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp.orig 2015-10-13 06:37:17.000000000 +0200
+++ qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp 2016-03-09 20:45:20.000000000 +0100
@@ -32,98 +32,25 @@
namespace WebCore {
-// 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);
+ ShGetInfo(compiler, (ShShaderInfo) shaderInfo, &value);
return value;
}
@@ -51,11 +51,11 @@
ShShaderInfo symbolMaxNameLengthType;
switch (symbolType) {
- return value;
-}
-
-static bool getSymbolInfo(ShHandle compiler, ShShaderInfo symbolType, Vector<ANGLEShaderSymbol>& symbols)
-{
- 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;
- 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) {
- break;
- default:
- ASSERT_NOT_REACHED();
+template<typename vectype>
+bool readSymbols(const vectype *vec, Vector<ANGLEShaderSymbol> &symbols) {
+ if(!vec) {
return false;
}
-
- ANGLEGetInfoType numSymbols = getValidationResultValue(compiler, symbolType);
-
- ANGLEGetInfoType maxNameLength = getValidationResultValue(compiler, symbolMaxNameLengthType);
- if (maxNameLength <= 1)
- return false;
-
- ANGLEGetInfoType maxMappedNameLength = getValidationResultValue(compiler, SH_MAPPED_NAME_MAX_LENGTH);
- if (maxMappedNameLength <= 1)
- return false;
-
- // The maximum allowed symbol name length is 256 characters.
- Vector<char, 256> nameBuffer(maxNameLength);
- Vector<char, 256> mappedNameBuffer(maxMappedNameLength);
-
- for (ANGLEGetInfoType i = 0; i < numSymbols; ++i) {
+ for(typename vectype::const_iterator i = vec->begin(), end = vec->end(); i != end; ++i) {
ANGLEShaderSymbol symbol;
ANGLEGetInfoType nameLength = 0;
+ ShPrecisionType precision = SH_PRECISION_UNDEFINED;
+ int staticUse = 0;
switch (symbolType) {
- ANGLEGetInfoType nameLength = 0;
- switch (symbolType) {
- case SH_ACTIVE_ATTRIBUTES:
+ case GL_ACTIVE_ATTRIBUTES:
symbol.symbolType = SHADER_SYMBOL_TYPE_ATTRIBUTE;
- 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;
- break;
- case SH_ACTIVE_UNIFORMS:
+ case GL_ACTIVE_UNIFORMS:
symbol.symbolType = SHADER_SYMBOL_TYPE_UNIFORM;
- 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 @@
- break;
- default:
- ASSERT_NOT_REACHED();
- return false;
- }
- if (!nameLength)
- return false;
-
- // The ShGetActive* calls above are guaranteed to produce null-terminated strings for
- // nameBuffer and mappedNameBuffer. Also, the character set for symbol names
- // is a subset of Latin-1 as specified by the OpenGL ES Shading Language, Section 3.1 and
- // WebGL, Section "Characters Outside the GLSL Source Character Set".
-
- String name = String(nameBuffer.data());
- String mappedName = String(mappedNameBuffer.data());
-
- // ANGLE returns array names in the format "array[0]".
- // The only way to know if a symbol is an array is to check if it ends with "[0]".
- // We can't check the size because regular symbols and arrays of length 1 both have a size of 1.
- symbol.isArray = name.endsWith("[0]") && mappedName.endsWith("[0]");
- if (symbol.isArray) {
- // Add a symbol for the array name without the "[0]" suffix.
- name.truncate(name.length() - 3);
- mappedName.truncate(mappedName.length() - 3);
- }
-
- symbol.name = name;
- symbol.mappedName = mappedName;
+ symbol.name = i->name.data();
+ symbol.mappedName = i->mappedName.data();
+ symbol.isArray = i->isArray();
symbols.append(symbol);
-
if (symbol.isArray) {
// Add symbols for each array element.
+ symbol.size = i->arraySize;
symbol.isArray = false;
- for (int i = 0; i < symbol.size; i++) {
- String arrayBrackets = "[" + String::number(i) + "]";
- symbol.name = name + arrayBrackets;
- symbol.mappedName = mappedName + arrayBrackets;
+ for (int index = 0; index < symbol.size; index++) {
+ String arrayBrackets = "[" + String::number(index) + "]";
+ symbol.name = i->name.data() + arrayBrackets;
+ symbol.mappedName = i->mappedName.data() + arrayBrackets;
symbols.append(symbol);
}
}
@@ -163,15 +90,14 @@
{
// Resources are (possibly) changing - cleanup compilers if we had them already
cleanupCompilers();
-
m_resources = resources;
}
bool ANGLEWebKitBridge::compileShaderSource(const char* shaderSource, ANGLEShaderType shaderType, String& translatedShaderSource, String& shaderValidationLog, Vector<ANGLEShaderSymbol>& symbols, int extraCompileOptions)
{
if (!builtCompilers) {
@ -99,29 +171,45 @@
if (!m_fragmentCompiler || !m_vertexCompiler) {
cleanupCompilers();
return false;
@@ -189,7 +191,7 @@
@@ -189,31 +115,17 @@
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();
- int logSize = getValidationResultValue(compiler, SH_INFO_LOG_LENGTH);
- if (logSize > 1) {
- OwnArrayPtr<char> logBuffer = adoptArrayPtr(new char[logSize]);
- if (logBuffer) {
- ShGetInfoLog(compiler, logBuffer.get());
- shaderValidationLog = logBuffer.get();
- }
- }
+ shaderValidationLog = ShGetInfoLog(compiler).data();
return false;
}
- int translationLength = getValidationResultValue(compiler, SH_OBJECT_CODE_LENGTH);
- if (translationLength > 1) {
- OwnArrayPtr<char> translationBuffer = adoptArrayPtr(new char[translationLength]);
- if (!translationBuffer)
- return false;
- ShGetObjectCode(compiler, translationBuffer.get());
- translatedShaderSource = translationBuffer.get();
- }
+ translatedShaderSource = ShGetObjectCode(compiler).data();
- if (!getSymbolInfo(compiler, SH_ACTIVE_ATTRIBUTES, symbols))
+ if (!getSymbolInfo(compiler, (ShShaderInfo) GL_ACTIVE_ATTRIBUTES, symbols))
+ if (!readSymbols(ShGetAttributes(compiler), symbols))
return false;
- if (!getSymbolInfo(compiler, SH_ACTIVE_UNIFORMS, symbols))
+ if (!getSymbolInfo(compiler, (ShShaderInfo) GL_ACTIVE_UNIFORMS, symbols))
+ if (!readSymbols(ShGetUniforms(compiler), 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
--- qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp.orig 2015-10-13 06:37:17.000000000 +0200
+++ qtwebkit-opensource-src-5.5.1/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp 2016-03-09 17:17:26.000000000 +0100
@@ -172,7 +172,7 @@
String translatedShaderSource;

View File

@ -1,57 +0,0 @@
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;

View File

@ -4,7 +4,7 @@
_qt_module=qtwebsockets
pkgname="mingw-w64-qt5-websockets"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Provides WebSocket communication compliant with RFC 6455 (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -4,7 +4,7 @@
_qt_module=qtwinextras
pkgname="mingw-w64-qt5-winextras"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Classes and functions that enable you to use Windows-specific functions (mingw-w64)"
depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative')

View File

@ -4,7 +4,7 @@
_qt_module=qtxmlpatterns
pkgname="mingw-w64-qt5-xmlpatterns"
pkgver=5.5.1
pkgrel=1
pkgrel=1.1
arch=('any')
pkgdesc="Support for XPath, XQuery, XSLT and XML schema validation (mingw-w64)"
depends=('mingw-w64-qt5-base')

View File

@ -1,7 +1,7 @@
# Maintainer: Martchus <martchus@gmx.net>
_reponame=repoindex
pkgname=(repoindex{,-header,-web,-gui})
pkgver=0.2.1
pkgver=0.2.2
pkgrel=1
arch=('i686' 'x86_64')
pkgdesc="Repository browser for Arch Linux"