imported mingw-w64-qt5-*

This commit is contained in:
Martchus 2016-02-03 20:42:14 +01:00
parent 7c616899f6
commit e01a35a280
113 changed files with 11207 additions and 0 deletions

View File

@ -91,6 +91,115 @@ OTHER_FILES += \
x265/mingw-w64/PKGBUILD \
x265/mingw-w64/mingw.patch \
wxwidgets/mingw-w64/PKGBUILD \
qt5-base/mingw-w64/PKGBUILD \
qt5-base/mingw-w64/a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff \
qt5-base/mingw-w64/add-angle-support.patch \
qt5-base/mingw-w64/angle-fix.patch \
qt5-base/mingw-w64/fix-opengl-to-many-sections.patch \
qt5-base/mingw-w64/fix-static-psql-mysql.patch \
qt5-base/mingw-w64/qt-5.1.x-win_flex-replace.patch \
qt5-base/mingw-w64/qt5-add-angle-support.patch \
qt5-base/mingw-w64/qt5-add-compiled-shaders-remove-dxsdk.patch \
qt5-base/mingw-w64/qt5-disable-angle-opengl-testcode.patch \
qt5-base/mingw-w64/qt5-dont-add-resource-files-to-qmake-libs.patch \
qt5-base/mingw-w64/qt5-dont-build-host-libs-static.patch \
qt5-base/mingw-w64/qt5-enable-rpath-for-host-tools.patch \
qt5-base/mingw-w64/qt5-fix-QSemaphore-problem.patch \
qt5-base/mingw-w64/qt5-fix-static-dbus-detection.patch \
qt5-base/mingw-w64/qt5-fix-static-harfbuzz-detection.patch \
qt5-base/mingw-w64/qt5-merge-static-and-shared-library-trees.patch \
qt5-base/mingw-w64/qt5-prevent-debug-library-names-in-pkgconfig-files.patch \
qt5-base/mingw-w64/qt5-qmake-implib-dll-a.patch \
qt5-base/mingw-w64/qt5-qtbase-fix-linking-against-static-pcre.patch \
qt5-base/mingw-w64/qt5-rename-qtmain-to-qt5main.patch \
qt5-base/mingw-w64/qt5-use-external-angle-library.patch \
qt5-base/mingw-w64/qt5-use-system-zlib-in-host-libs.patch \
qt5-base/mingw-w64/qt5-use-win32-g++-mkspecs-profile.patch \
qt5-base/mingw-w64/qt5-workaround-pkgconfig-install-issue.patch \
qt5-base/mingw-w64/use-external-angle-library.patch \
qt5-base/mingw-w64-opengl/PKGBUILD \
qt5-base/mingw-w64-opengl/add-angle-support.patch \
qt5-base/mingw-w64-opengl/angle-fix.patch \
qt5-base/mingw-w64-opengl/fix-opengl-to-many-sections.patch \
qt5-base/mingw-w64-opengl/fix-static-psql-mysql.patch \
qt5-base/mingw-w64-opengl/qt-5.1.x-win_flex-replace.patch \
qt5-base/mingw-w64-opengl/qt5-add-angle-support.patch \
qt5-base/mingw-w64-opengl/qt5-add-compiled-shaders-remove-dxsdk.patch \
qt5-base/mingw-w64-opengl/qt5-disable-angle-opengl-testcode.patch \
qt5-base/mingw-w64-opengl/qt5-dont-add-resource-files-to-qmake-libs.patch \
qt5-base/mingw-w64-opengl/qt5-dont-build-host-libs-static.patch \
qt5-base/mingw-w64-opengl/qt5-enable-rpath-for-host-tools.patch \
qt5-base/mingw-w64-opengl/qt5-fix-static-dbus-detection.patch \
qt5-base/mingw-w64-opengl/qt5-fix-static-harfbuzz-detection.patch \
qt5-base/mingw-w64-opengl/qt5-merge-static-and-shared-library-trees.patch \
qt5-base/mingw-w64-opengl/qt5-prevent-debug-library-names-in-pkgconfig-files.patch \
qt5-base/mingw-w64-opengl/qt5-qmake-implib-dll-a.patch \
qt5-base/mingw-w64-opengl/qt5-qtbase-fix-linking-against-static-pcre.patch \
qt5-base/mingw-w64-opengl/qt5-rename-qtmain-to-qt5main.patch \
qt5-base/mingw-w64-opengl/qt5-use-external-angle-library.patch \
qt5-base/mingw-w64-opengl/qt5-use-system-zlib-in-host-libs.patch \
qt5-base/mingw-w64-opengl/qt5-use-win32-g++-mkspecs-profile.patch \
qt5-base/mingw-w64-opengl/qt5-workaround-pkgconfig-install-issue.patch \
qt5-base/mingw-w64-opengl/use-external-angle-library.patch \
qt5-base/mingw-w64-static/PKGBUILD \
qt5-base/mingw-w64-static/a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff \
qt5-base/mingw-w64-static/add-angle-support.patch \
qt5-base/mingw-w64-static/angle-fix.patch \
qt5-base/mingw-w64-static/fix-opengl-to-many-sections.patch \
qt5-base/mingw-w64-static/fix-static-psql-mysql.patch \
qt5-base/mingw-w64-static/qt-5.1.x-win_flex-replace.patch \
qt5-base/mingw-w64-static/qt5-add-angle-support.patch \
qt5-base/mingw-w64-static/qt5-add-compiled-shaders-remove-dxsdk.patch \
qt5-base/mingw-w64-static/qt5-disable-angle-opengl-testcode.patch \
qt5-base/mingw-w64-static/qt5-dont-add-resource-files-to-qmake-libs.patch \
qt5-base/mingw-w64-static/qt5-dont-build-host-libs-static.patch \
qt5-base/mingw-w64-static/qt5-enable-rpath-for-host-tools.patch \
qt5-base/mingw-w64-static/qt5-fix-QSemaphore-problem.patch \
qt5-base/mingw-w64-static/qt5-fix-static-dbus-detection.patch \
qt5-base/mingw-w64-static/qt5-fix-static-harfbuzz-detection.patch \
qt5-base/mingw-w64-static/qt5-merge-static-and-shared-library-trees.patch \
qt5-base/mingw-w64-static/qt5-prevent-debug-library-names-in-pkgconfig-files.patch \
qt5-base/mingw-w64-static/qt5-qmake-implib-dll-a.patch \
qt5-base/mingw-w64-static/qt5-qtbase-fix-linking-against-static-pcre.patch \
qt5-base/mingw-w64-static/qt5-rename-qtmain-to-qt5main.patch \
qt5-base/mingw-w64-static/qt5-use-external-angle-library.patch \
qt5-base/mingw-w64-static/qt5-use-system-zlib-in-host-libs.patch \
qt5-base/mingw-w64-static/qt5-use-win32-g++-mkspecs-profile.patch \
qt5-base/mingw-w64-static/qt5-workaround-pkgconfig-install-issue.patch \
qt5-base/mingw-w64-static/use-external-angle-library.patch \
qt5-3d/mingw-w64/PKGBUILD \
qt5-activeqt/mingw-w64/PKGBUILD \
qt5-activeqt/mingw-w64/qt5-activeqt-fix-compilation.patch \
qt5-activeqt/mingw-w64/qtactiveqt-fix-build.patch \
qt5-activeqt/mingw-w64/qtactiveqt-win64.patch \
qt5-declarative/mingw-w64/PKGBUILD \
qt5-declarative/mingw-w64/qt5-build-qmldevtools-as-shared-library.patch \
qt5-graphicaleffects/mingw-w64/PKGBUILD \
qt5-imageformats/mingw-w64/PKGBUILD \
qt5-location/mingw-w64/PKGBUILD \
qt5-multimedia/mingw-w64/PKGBUILD \
qt5-multimedia/mingw-w64/qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch \
qt5-multimedia/mingw-w64/qtmultimedia-dont-use-case-sensitive-headers.patch \
qt5-quick1/mingw-w64/PKGBUILD \
qt5-quickcontrols/mingw-w64/PKGBUILD \
qt5-script/mingw-w64/PKGBUILD \
qt5-sensors/mingw-w64/PKGBUILD \
qt5-serialport/mingw-w64/PKGBUILD \
qt5-svg/mingw-w64/PKGBUILD \
qt5-tools/mingw-w64/PKGBUILD \
qt5-translations/mingw-w64/PKGBUILD \
qt5-webkit/mingw-w64/PKGBUILD \
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 \
qt5-webkit/mingw-w64/qt5-qtwebkit-workaround-build-breakage-after-svn-commit-136242.patch \
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-151422.patch \
qt5-websockets/mingw-w64/PKGBUILD \
qt5-winextras/mingw-w64/PKGBUILD \
qt5-xmlpatterns/mingw-w64/PKGBUILD \
qt5-webchannel/mingw-w64/PKGBUILD \
qt5-webengine/mingw-w64/PKGBUILD \
qt5-webengine/mingw-w64/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch \

54
qt5-3d/mingw-w64/PKGBUILD Normal file
View File

@ -0,0 +1,54 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
_qt_module=qt3d
pkgname="mingw-w64-qt5-3d"
pkgver=5.5.1
pkgrel=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')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('872dfbe166154c2e0e89317ab23d2cd6')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
popd
done
# .prl files aren't interesting for us
find "${pkgdir}" -name "*.prl" -delete
}

View File

@ -0,0 +1,64 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
_qt_module=qtactiveqt
pkgname=mingw-w64-qt5-activeqt
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="ActiveX integration framework (mingw-w64)"
depends=(mingw-w64-qt5-base)
makedepends=(mingw-w64-{gcc,headers-git,crt-git,winpthreads-git} python)
options=(!strip !buildflags staticlibs)
groups=(mingw-w64-qt mingw-w64-qt5)
license=("custom, FDL, GPL3, LGPL")
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-activeqt-fix-compilation.patch"
"qtactiveqt-fix-build.patch"
"qtactiveqt-win64.patch")
md5sums=('be5e0a79decc87d02c574348d9663e6a'
'86c63b9808b0c8c7a8c2203bee73c42b'
'7a7ba436452aa56613b3fbb15684e094'
'1264d0274586aec14f96a978b416b048')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
# Fix linker error:
# qaxserverbase.cpp:1769: undefined reference to `qt_sendSpontaneousEvent(QObject*, QEvent*)'
patch -p0 -i ../qt5-activeqt-fix-compilation.patch
# Don't try to build stuff which requires windows.h with the native Linux gcc
patch -p1 -i ../qtactiveqt-fix-build.patch
# dumpcpp and MetaObjectGenerator::readClassInfo do not handle win64
# https://bugreports.qt.io/browse/QTBUG-46827
patch -p1 -i ../qtactiveqt-win64.patch
}
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="$pkgdir" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
popd
done
}

View File

@ -0,0 +1,15 @@
--- src/activeqt/control/qaxserverbase.cpp.orig 2012-09-10 22:01:40.963557678 +0200
+++ src/activeqt/control/qaxserverbase.cpp 2012-09-10 22:05:37.913161773 +0200
@@ -4033,12 +4033,10 @@
}
-#ifdef QT_SHARED // avoid conflict with symbol in static lib
bool qt_sendSpontaneousEvent(QObject *o, QEvent *e)
{
return QCoreApplication::sendSpontaneousEvent(o, e);
}
-#endif
/*
Tries to set the size of the control.

View File

@ -0,0 +1,7 @@
--- qtactiveqt-opensource-src-5.3.0/src/tools/idc/idc.pro.orig 2014-05-26 00:05:53.258370322 +0200
+++ qtactiveqt-opensource-src-5.3.0/src/tools/idc/idc.pro 2014-05-26 00:06:18.131627963 +0200
@@ -1,4 +1,3 @@
-option(host_build)
CONFIG += force_bootstrap
SOURCES = main.cpp

View File

@ -0,0 +1,39 @@
diff -rupN qtactiveqt-opensource-src-5.4.1/src/activeqt/container/qaxbase.cpp qtactiveqt-opensource-src-5.4.1-new/src/activeqt/container/qaxbase.cpp
--- qtactiveqt-opensource-src-5.4.1/src/activeqt/container/qaxbase.cpp 2015-02-17 05:56:13.000000000 +0100
+++ qtactiveqt-opensource-src-5.4.1-new/src/activeqt/container/qaxbase.cpp 2015-06-23 16:41:44.483979750 +0200
@@ -2164,6 +2164,10 @@
QStringList versions = controls.childGroups();
foreach (const QString &version, versions) {
tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win32/.")).toString();
+ if(tlfile.isEmpty())
+ {
+ tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win64/.")).toString();
+ }
if (!tlfile.isEmpty())
break;
}
diff -rupN qtactiveqt-opensource-src-5.4.1/tools/dumpcpp/main.cpp qtactiveqt-opensource-src-5.4.1-new/tools/dumpcpp/main.cpp
--- qtactiveqt-opensource-src-5.4.1/tools/dumpcpp/main.cpp 2015-02-17 05:56:13.000000000 +0100
+++ qtactiveqt-opensource-src-5.4.1-new/tools/dumpcpp/main.cpp 2015-06-23 16:35:53.157273425 +0200
@@ -1515,6 +1515,10 @@
typeLib = settings.value(QLatin1Char('/') + codes.at(c) + QLatin1String("/0/win32/.")).toString();
if (QFile::exists(typeLib))
break;
+ typeLib = settings.value(QLatin1String("/") + codes.at(c) + QLatin1String("/0/win64/.")).toByteArray();
+ if (QFile::exists(typeLib)) {
+ break;
+ }
}
if (!typeLib.isEmpty())
@@ -1577,6 +1581,10 @@
+ QLatin1String("/win32/.")).toString();
if (QFile::exists(typeLib))
break;
+ typeLib = settings.value(key + QLatin1String("/") + codes.at(c) + QLatin1String("/win64/.")).toByteArray();
+ if (QFile::exists(typeLib)) {
+ break;
+ }
}
}

View File

@ -0,0 +1,344 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
# Contributor: jellysheep <max.mail@dameweb.de>
pkgname=mingw-w64-qt5-base-opengl
pkgver=5.5.1
pkgrel=1
pkgdesc="A cross-platform application and UI framework (mingw-w64)"
arch=(i686 x86_64)
url="http://qt-project.org"
license=("custom, FDL, GPL3, LGPL")
depends=(
mingw-w64-crt
mingw-w64-zlib
mingw-w64-libjpeg-turbo
mingw-w64-libiconv
mingw-w64-sqlite
mingw-w64-libpng
mingw-w64-openssl
mingw-w64-libdbus
mingw-w64-pcre
mingw-w64-harfbuzz
mingw-w64-glib2
)
groups=(mingw-w64-qt mingw-w64-qt5)
optdepends=(
"mingw-w64-postgresql-libs: PostgreSQL support"
"mingw-w64-mariadb-connector-c: MySQL support"
"qtchooser"
)
makedepends=(mingw-w64-gcc
mingw-w64-postgresql-libs
mingw-w64-mariadb-connector-c
mingw-w64-pkg-config)
options=(!strip !buildflags staticlibs)
_pkgfqn="qtbase-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-merge-static-and-shared-library-trees.patch"
"add-angle-support.patch"
"use-external-angle-library.patch"
"qt5-workaround-pkgconfig-install-issue.patch"
"qt5-qtbase-fix-linking-against-static-pcre.patch"
"qt5-rename-qtmain-to-qt5main.patch"
"qt5-dont-build-host-libs-static.patch"
"qt5-enable-rpath-for-host-tools.patch"
"qt5-dont-add-resource-files-to-qmake-libs.patch"
"qt5-prevent-debug-library-names-in-pkgconfig-files.patch"
"qt5-qmake-implib-dll-a.patch"
"qt5-fix-static-dbus-detection.patch"
"qt5-fix-static-harfbuzz-detection.patch"
"qt5-use-win32-g++-mkspecs-profile.patch"
"qt5-use-system-zlib-in-host-libs.patch"
"fix-opengl-to-many-sections.patch"
"fix-static-psql-mysql.patch"
"qt5-disable-angle-opengl-testcode.patch")
md5sums=('252613b5a180c94d7196d10467a4f08b'
'f51eb2b176b10af943831d33925c1251'
'bab00ccc19d888997f323c80354a7c3f'
'ec25d1ff4033383cd5d2414d8189c228'
'bc99c4cc6998295d76f37ed681c20d47'
'4fe6523dd1c34398df3aa5a8763530cc'
'c4d4ca54a2e9096d2af13a266177f6d6'
'3bd322551924543553a2bf81b4419a09'
'15e8eaa4f0a9a9990277c79e243770be'
'99bb9f51ec684803768f36e407baf486'
'6a6bc88f35ac8080869de39bc128ce5b'
'e793479e0b86b39ddafd328140f1a24c'
'40de3aaf7d713034e06f4eece665b1ba'
'1a7921cadeb5c3db383dea068519e8d3'
'6aea7182982098de045721f51bf20fc2'
'a265dea62755caf38187114143999224'
'612a4dfb9f1a3898a1920c28bb999159'
'd0eb81aef1a21c65813fe4ddabbc4206'
'0076233a43e7edaaaf8c2abca2ada8df')
_architectures="x86_64-w64-mingw32 i686-w64-mingw32"
# Helper functions for the split builds
isStatic() {
[ $pkgname = "mingw-w64-qt5-base-static" ]
}
isOpenGL() {
[ $pkgname = "mingw-w64-qt5-base-opengl" ]
}
isStatic && depends+=("mingw-w64-qt5-base")
! isOpenGL && depends+=("mingw-w64-angleproject")
isOpenGL && provides+=("mingw-w64-qt5-base")
isOpenGL && conflicts+=("mingw-w64-qt5-base")
prepare() {
cd "${srcdir}/${_pkgfqn}"
# When building Qt as static library some files have a different content
# when compared to the static library. Merge those changes manually.
# This patch also applies some additional changes which are required to make
# linking against the static version of Qt work without any manual fiddling
patch -p0 -i ../qt5-merge-static-and-shared-library-trees.patch
if ! isOpenGL; then
# Add support for Angle
patch -p1 -i ../add-angle-support.patch
# Make sure our external Angle package is used instead of the bundled one
patch -p1 -i ../use-external-angle-library.patch
fi
# opengl to many sections error
isOpenGL && patch -p0 -i ../fix-opengl-to-many-sections.patch
# Make sure the .pc files of the Qt5 modules are installed correctly
patch -p0 -i ../qt5-workaround-pkgconfig-install-issue.patch
# Prevents resource files from being added to the LIBS parameter
# This solves an issue where the generated pkg-config files contained
# invalid Libs.private references like .obj/debug/Qt5Cored_resource_res.o
patch -p1 -i ../qt5-dont-add-resource-files-to-qmake-libs.patch
# qmake generates the pkgconfig .pc files two times, once for the
# release build and once for the debug build (which we're not actually
# building in this package). For both generations the exact same
# pkgconfig file name is used. This causes references to the debug
# build ending up in the .pc files which are unwanted
# Prevent this from happening by giving the pkgconfig .pc
# files for the debug build an unique file name
patch -p1 -i ../qt5-prevent-debug-library-names-in-pkgconfig-files.patch
# Fix qmake to create implibs with .dll.a extension for MinGW
patch -p1 -i ../qt5-qmake-implib-dll-a.patch
# As of Qt 5.4.1 the detection of the static DBus and Harfbuzz libraries got broken
patch -p1 -i ../qt5-fix-static-dbus-detection.patch
patch -p1 -i ../qt5-fix-static-harfbuzz-detection.patch
# Patch the win32-g++ mkspecs profile to match our environment
patch -p1 -i ../qt5-use-win32-g++-mkspecs-profile.patch
# The bundled pcre is built as static library by default
# As we're not using the bundled copy but our own copy
# we need to do some fiddling to fix compilation issues
# when trying to build static qmake projects
patch -p1 -i ../qt5-qtbase-fix-linking-against-static-pcre.patch
# Make sure the qtmain (static) library doesn't conflict with the one
# provided by the mingw-qt (qt4) package. The mkspecs profile is already
# updated by patch100 to reflect this change
# https://bugzilla.redhat.com/show_bug.cgi?id=1092465
patch -p1 -i ../qt5-rename-qtmain-to-qt5main.patch
# Upstream always wants the host libraries to be static instead of
# shared libraries. This causes issues and is against the Fedora
# packaging guidelines so disable this 'feature'
patch -p0 -i ../qt5-dont-build-host-libs-static.patch
# Build host tools with rpath enabled
# We have to use rpath here as the library which the
# various tools depend on (libQt5Bootstrap.so) resides
# in the folder /usr/${_arch}/lib
# We can't use the regular %%_libdir for this as we
# want to avoid conflicts with the native qt5 packages
patch -p1 -i ../qt5-enable-rpath-for-host-tools.patch
# Build host libs with system zlib. This patch cannot be upstreamed as-is
# due to the other host-libs patches.
patch -p1 -i ../qt5-use-system-zlib-in-host-libs.patch
# Workaround a compatibility issue because we are using an older version of ANGLE in Fedora
# Upgrading the mingw-angleproject package isn't possible for now because mingw-qt5-qtwebkit doesn't support the latest ANGLE yet..
#
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:15: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
# ^
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:53: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
patch -p1 -b -i ../qt5-disable-angle-opengl-testcode.patch
isStatic && patch -p0 -i ../fix-static-psql-mysql.patch
# Make sure the Qt5 build system uses our external ANGLE library
rm -rf src/3rdparty/angle include/QtANGLE/{EGL,GLES2,KHR}
# As well as our external PCRE library and zlib
rm -rf src/3rdparty/{pcre,zlib}
}
build() {
cd "${srcdir}/${_pkgfqn}"
# Setup flags
export CFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
export CXXFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
unset LDFLAGS
for _arch in ${_architectures}; do
# Phonon is disabled for now because we lack the directx headers
# The odd paths for the -hostbindir argument are on purpose
# The qtchooser tool assumes that the tools 'qmake', 'moc' and others
# are all available in the same folder with these exact file names
# To prevent conflicts with the mingw-qt (Qt4) package we have
# to put these tools in a dedicated folder
qt_configure_args="\
-xplatform win32-g++ \
-optimized-qmake \
-verbose \
-opensource \
-confirm-license \
-force-pkg-config \
-force-debug-info \
-audio-backend \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-sqlite \
-no-fontconfig \
-iconv \
-openssl \
-dbus-linked \
-no-glib \
-no-gtkstyle \
-no-icu \
-release \
-nomake examples \
-make tools \
-hostprefix /usr/${_arch} \
-hostdatadir /usr/${_arch}/lib/qt \
-hostbindir /usr/${_arch}/lib/qt/bin \
-prefix /usr/${_arch} \
-bindir /usr/${_arch}/bin \
-archdatadir /usr/${_arch}/lib/qt \
-datadir /usr/${_arch}/share/qt \
-docdir /usr/${_arch}/share/doc/qt \
-examplesdir /usr/${_arch}/share/qt/examples \
-headerdir /usr/${_arch}/include/qt \
-libdir /usr/${_arch}/lib \
-plugindir /usr/${_arch}/lib/qt/plugins \
-sysconfdir /usr/${_arch}/etc \
-translationdir /usr/${_arch}/share/qt/translations \
-device-option CROSS_COMPILE=${_arch}-"
# fix include directory of dbus
qt_configure_args+=" $(${_arch}-pkg-config --cflags-only-I dbus-1 --cflags)"
isOpenGL && qt_configure_args+=' -opengl desktop'
isStatic && qt_configure_args+=' -opengl no'
unset PKG_CONFIG_PATH
if ! isStatic; then
export QT_LFLAGS_MYSQL="-L/usr/${_arch}/lib -lmysql"
fi
# Qt doesn't detect mysql correctly, so use this:
export QT_CFLAGS_MYSQL="-I/usr/${_arch}/include/mariadb"
#export QT_LFLAGS_MYSQL_R="-lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto"
# Hardcode MySQL flags into configure (really nice solution :( )
sed -e "s|^QT_CFLAGS_MYSQL=.*$|QT_CFLAGS_MYSQL=\"${QT_CFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
sed -e "s|^QT_LFLAGS_MYSQL=.*$|QT_LFLAGS_MYSQL=\"${QT_LFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
#sed -e "s|^QT_LFLAGS_MYSQL_R=.*$|QT_LFLAGS_MYSQL_R=\"${QT_LFLAGS_MYSQL_R}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
qt_configure_args_mysql="-mysql_config /this/file/should/not/exist"
mkdir ../build-${_arch} && pushd ../build-${_arch}
if isStatic; then
../${_pkgfqn}/configure -static $qt_configure_args $qt_configure_args_mysql
make
else
# The LD_LIBRARY_PATH override is needed because libQt5Bootstrap* are shared
# libraries which various compiled tools (like moc) use. As the libQt5Bootstrap*
# libraries aren't installed at this point yet, we have to workaround this
../${_pkgfqn}/configure -shared $qt_configure_args $qt_configure_args_mysql
LD_LIBRARY_PATH=`pwd`/lib make
fi
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "$srcdir/${_pkgfqn}"
make install -C ../build-${_arch} INSTALL_ROOT="${pkgdir}"
if isStatic; then
# Drop the qtmain and Qt5Bootstrap static libraries from the static tree as
# they are already part of the main tree
rm -f "${pkgdir}/usr/${_arch}/lib/libqt5main"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5OpenGLExtensions"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5PlatformSupport"*
# we want to keep a couple pri files not found in base
mv "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules/qt_plugin_"*.pri "${pkgdir}/usr/${_arch}"
# Delete duplicate files that are in the base package
rm -fR "${pkgdir}/usr/${_arch}/"{include,share}
rm -fR "${pkgdir}/usr/${_arch}/lib/"{qt/bin,qt/mkspecs,pkgconfig,cmake}
# move pri files back
mkdir -p "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
mv "${pkgdir}/usr/${_arch}/"*.pri "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
else # not static => shared release
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
# Add qtchooser support
[ "${_arch}" = "i686-w64-mingw32" ] && mingwn='mingw32' || mingwn='mingw64'
mkdir -p "${pkgdir}/etc/xdg/qtchooser"
echo "/usr/${_arch}/lib/qt/bin" > "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
echo "/usr/${_arch}/lib" >> "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
# Manually install qmake and other native tools so we don't depend anymore on
# the version of the native system Qt and also fix issues as illustrated at
# http://stackoverflow.com/questions/6592931/building-for-windows-under-linux-using-qt-creator
# Also make sure the tools can be found by CMake
mkdir -p "${pkgdir}/usr/bin"
for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt.pl; do
ln -s ../${_arch}/lib/qt/bin/${tool} "${pkgdir}/usr/bin/${_arch}-${tool}-qt5"
done
fi
# The pkg-config files for Qt5Bootstrap aren't interesting as this particular
# library only contains native code and not cross-compiled code
rm -f "${pkgdir}/usr/${_arch}/lib/pkgconfig/Qt5Bootstrap.pc"
# remove doc
rm -rf "${pkgdir}/usr/${_arch}/share/doc"
# And finaly, strip the binaries
if ! isStatic; then
strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"{,DBus}.so.${pkgver}
fi
# keeping prl files for base build since qbs seems to need them.
if isStatic; then
rm -f "${pkgdir}/usr/${_arch}/lib"{,/qt/plugins/*}/*.prl
fi
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,46 @@
diff -U 3 -r a/configure b/configure
--- a/configure 2015-06-29 14:03:05.000000000 -0600
+++ b/configure 2015-07-18 11:14:30.312317765 -0600
@@ -5081,7 +5081,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -6072,6 +6072,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -7077,7 +7082,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
diff -U 3 -r a/src/plugins/platforms/windows/qwindowsglcontext.cpp b/src/plugins/platforms/windows/qwindowsglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-07-18 11:16:05.767172673 -0600
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

View File

@ -0,0 +1,19 @@
--- src.orig/3rdparty/angle/src/compiler/glslang.y 2014-01-02 11:53:56.393615041 +0100
+++ src/3rdparty/angle/src/compiler/glslang.y 2014-01-02 12:06:10.904972303 +0100
@@ -47,6 +47,7 @@ WHICH GENERATES THE GLSL ES PARSER (glsl
%pure-parser
%parse-param {TParseContext* context}
%locations
+%lex-param {YYLEX_PARAM}
%code requires {
#define YYLTYPE TSourceLoc
@@ -90,7 +91,7 @@ extern void yyerror(YYLTYPE* yylloc, TPa
#define YYLLOC_DEFAULT(Current, Rhs, N) \
do { \
- if (YYID(N)) { \
+ if (N) { \
(Current).first_file = YYRHSLOC(Rhs, 1).first_file; \
(Current).first_line = YYRHSLOC(Rhs, 1).first_line; \
(Current).last_file = YYRHSLOC(Rhs, N).last_file; \

View File

@ -0,0 +1,10 @@
--- src/gui/opengl/opengl.pri.orig 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/opengl/opengl.pri 2015-02-09 10:48:48.484071754 -0700
@@ -4,6 +4,7 @@
contains(QT_CONFIG, opengles2):CONFIG += opengles2
contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
+ QMAKE_CXXFLAGS+="-Wa,-mbig-obj"
HEADERS += opengl/qopengl.h \
opengl/qopengl_p.h \

View File

@ -0,0 +1,15 @@
--- config.tests/unix/psql/psql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/psql/psql.pro 2015-03-09 21:45:44.746755052 -0600
@@ -1,3 +1,3 @@
SOURCES = psql.cpp
CONFIG -= qt dylib
-LIBS *= -lpq
+LIBS *= -lpq -lintl -liconv -lssl -lcrypto -lwldap32 -lshfolder -lwsock32 -lws2_32 -lsecur32 -lgdi32
--- config.tests/unix/mysql/mysql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/mysql/mysql.pro 2015-03-09 21:38:59.930405876 -0600
@@ -1,3 +1,3 @@
SOURCES = mysql.cpp
CONFIG -= qt dylib
-LIBS += -lmysqlclient
+LIBS += -lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto

View File

@ -0,0 +1,22 @@
--- qt-stable/qtbase/src/angle/src/compiler/translator_common.pro.orig 2013-06-18 08:49:51.975288500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/translator_common.pro 2013-06-18 08:50:06.047321000 +0000
@@ -92,7 +92,7 @@
$$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}_lex.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C
--- qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro.orig 2013-06-18 08:50:54.314442500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro 2013-06-18 08:51:52.606574000 +0000
@@ -43,7 +43,7 @@
$$ANGLE_DIR/src/compiler/preprocessor/Token.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C

View File

@ -0,0 +1,44 @@
--- configure.orig 2014-12-05 09:24:14.000000000 -0700
+++ configure 2014-12-11 09:24:32.545799224 -0700
@@ -4765,7 +4765,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -5632,6 +5632,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -6588,7 +6593,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
--- src/plugins/platforms/windows/qwindowsglcontext.cpp.orig 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowsglcontext.cpp 2014-12-11 09:27:37.364281924 -0700
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp.external_angle 2015-06-29 22:04:40.000000000 +0200
+++ qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-08-05 21:37:55.922142528 +0200
@@ -366,7 +366,7 @@
EGLDisplay display = EGL_NO_DISPLAY;
EGLint major = 0;
EGLint minor = 0;
-#ifdef EGL_ANGLE_platform_angle
+#if 0
if (libEGL.eglGetPlatformDisplayEXT
&& (preferredType & QWindowsOpenGLTester::AngleBackendMask)) {
const EGLint anglePlatformAttributes[][5] = {

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp.orig 2014-01-04 21:18:07.413328813 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp 2014-01-04 21:18:55.740126515 +0100
@@ -243,7 +243,7 @@
processVars();
- project->values("QMAKE_LIBS") += project->values("RES_FILE");
+ project->values("OBJECTS") += project->values("RES_FILE");
if (project->isActiveConfig("dll")) {
QString destDir = "";

View File

@ -0,0 +1,10 @@
--- qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf.orig 2013-08-01 01:21:52.461910182 +0200
+++ qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf 2013-08-01 01:22:46.777801052 +0200
@@ -20,6 +20,7 @@
QMAKE_LFLAGS += $$QMAKE_LFLAGS_GCSECTIONS
host_build: QT -= gui # no host tool will ever use gui
+host_build: QT_CONFIG += rpath
host_build:force_bootstrap {
!build_pass: CONFIG += release
contains(QT, core(-private)?|xml) {

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp.orig 2015-03-08 17:05:21.216593135 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp 2015-03-08 17:06:35.276826201 +0100
@@ -31,6 +31,10 @@
**
****************************************************************************/
+#ifdef QT_STATIC
+#define DBUS_STATIC_BUILD
+#endif
+
#define DBUS_API_SUBJECT_TO_CHANGE
#include <dbus/dbus.h>

View File

@ -0,0 +1,7 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro.orig 2015-03-08 17:47:58.522991158 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro 2015-03-08 17:48:19.491340185 +0100
@@ -1,3 +1,3 @@
SOURCES = harfbuzz.cpp
CONFIG -= qt dylib
-LIBS += -lharfbuzz
+LIBS += -lharfbuzz -lglib-2.0 -lws2_32 -lole32 -lwinmm -lshlwapi -lintl

View File

@ -0,0 +1,48 @@
--- mkspecs/features/qt_functions.prf.orig 2012-09-05 23:30:01.612735271 +0200
+++ mkspecs/features/qt_functions.prf 2012-09-05 23:32:40.030869399 +0200
@@ -134,6 +134,19 @@
}
$$2 += $$LINKAGE
+
+ win32:CONFIG(static) {
+ isEqual(MODULE_NAME, Qt5Core) {
+ $$2 += $$QMAKE_LIBS_CORE
+ } else:isEqual(MODULE_NAME, Qt5Gui) {
+ $$2 += $$QMAKE_LIBS_GUI
+ } else:isEqual(MODULE_NAME, Qt5Network) {
+ $$2 += $$QMAKE_LIBS_NETWORK
+ } else:isEqual(MODULE_NAME, Qt5OpenGL) {
+ $$2 += $$QMAKE_LIBS_OPENGL
+ }
+ }
+
export($$2)
!isEmpty(QMAKE_LSB) {
--- mkspecs/features/default_post.prf.orig 2012-09-05 23:28:56.827501401 +0200
+++ mkspecs/features/default_post.prf 2012-09-05 23:29:31.617923080 +0200
@@ -47,3 +50,8 @@
QMAKE_INCDIR += $$QMAKE_INCDIR_POST
QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
+
+win32:contains(CONFIG, static) {
+ DEFINES += QT_STATIC
+ QMAKE_LFLAGS += -static
+}
--- configure.orig 2012-12-10 23:51:02.920255366 +0100
+++ configure 2012-12-10 23:55:58.101753703 +0100
@@ -6193,6 +6193,12 @@
}
QT_CONFIG += $QT_CONFIG
+contains(CONFIG, static) {
+ CONFIG -= shared
+ QT_CONFIG += static jpeg gif
+ QT_CONFIG -= shared
+}
+
#versioning
QT_VERSION = $QT_VERSION
QT_MAJOR_VERSION = $QT_MAJOR_VERSION

View File

@ -0,0 +1,12 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp.orig 2014-01-03 01:30:23.631353708 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp 2014-01-03 01:32:37.888625966 +0100
@@ -3168,6 +3168,9 @@
if (dot != -1)
ret = ret.left(dot);
}
+ if (project->isActiveConfig("debug")) {
+ ret += "d";
+ }
ret += Option::pkgcfg_ext;
QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString();
if(!subdir.isEmpty()) {

View File

@ -0,0 +1,33 @@
--- a/qmake/generators/win32/mingw_make.cpp 2013-08-25 13:04:06.000000000 -0500
+++ b/qmake/generators/win32/mingw_make.cpp 2014-01-02 01:24:31.640046700 -0600
@@ -58,7 +58,7 @@
QString MingwMakefileGenerator::getLibTarget()
{
- return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".a");
+ return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".dll.a");
}
QString MingwMakefileGenerator::getManifestFileForRcFile() const
@@ -250,7 +250,7 @@
if(!project->first("DESTDIR").isEmpty())
destDir = Option::fixPathToTargetOS(project->first("DESTDIR") + Option::dir_sep, false, false);
project->values("MINGW_IMPORT_LIB").prepend(destDir + "lib" + project->first("TARGET")
- + project->first("TARGET_VERSION_EXT") + ".a");
+ + project->first("TARGET_VERSION_EXT") + ".dll.a");
project->values("QMAKE_LFLAGS").append(QString("-Wl,--out-implib,") + fileVar("MINGW_IMPORT_LIB"));
}
--- a/mkspecs/features/create_cmake.prf.cmake 2013-10-22 10:49:28.000000000 +0200
+++ b/mkspecs/features/create_cmake.prf 2013-10-23 21:38:02.959762089 +0200
@@ -207,8 +207,8 @@
CMAKE_PRL_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.prl
CMAKE_PRL_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.prl
} else {
- CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.a
- CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a
+ CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.dll.a
+ CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.dll.a
}
} else {
CMAKE_WINMAIN_FILE_LOCATION_DEBUG = qtmain$${QT_LIBINFIX}d.lib

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp.orig 2013-07-11 08:23:02.687691337 +0200
+++ qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp 2013-07-11 08:23:27.231900674 +0200
@@ -47,6 +47,10 @@
#include <QtCore/qatomic.h>
#include <QtCore/qdatastream.h>
+#ifdef QT_STATIC
+#define PCRE_STATIC
+#endif
+
#include <pcre.h>
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,35 @@
--- qtbase-opensource-src-5.2.1/src/winmain/winmain.pro.orig 2014-04-29 18:51:05.206296152 +0200
+++ qtbase-opensource-src-5.2.1/src/winmain/winmain.pro 2014-04-29 18:51:18.737512221 +0200
@@ -2,7 +2,7 @@
!win32:error("$$_FILE_ is intended only for Windows!")
TEMPLATE = lib
-TARGET = qtmain
+TARGET = qt5main
DESTDIR = $$QT.core.libs
CONFIG += static
--- qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf.orig 2014-04-29 18:53:49.511932034 +0200
+++ qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf 2014-04-29 18:54:44.515819011 +0200
@@ -203,8 +203,8 @@
CMAKE_LIB_FILE_LOCATION_RELEASE = $${CMAKE_QT_STEM}.dll
mingw {
- CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqtmain$${QT_LIBINFIX}d.a
- CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqtmain$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqt5main$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqt5main$${QT_LIBINFIX}.a
!isEmpty(CMAKE_STATIC_TYPE) {
CMAKE_STATIC_WINDOWS_BUILD = "true"
--- qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf.qtmain 2014-07-05 14:18:23.211155781 +0200
+++ qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf 2014-07-05 14:18:46.045390147 +0200
@@ -6,7 +6,7 @@
mingw:DEFINES += QT_NEEDS_QMAIN
qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) {
- isEqual(entryLib, -lqtmain): {
+ isEqual(entryLib, -lqt5main): {
!contains(QMAKE_DEFAULT_LIBDIRS, $$QT.core.libs): \
QMAKE_LIBS += -L$$QT.core.libs
CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d

View File

@ -0,0 +1,113 @@
--- src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-05 09:24:36.000000000 -0700
+++ src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-11 10:19:51.599972209 -0700
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
--- src/gui/gui.pro 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/gui.pro 2014-12-11 10:22:37.644366784 -0700
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -33,6 +27,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
@@ -55,13 +53,21 @@
contains(QT_CONFIG, angle) {
CMAKE_GL_INCDIRS = $$CMAKE_INCLUDE_DIR
CMAKE_ANGLE_EGL_DLL_RELEASE = libEGL.dll
- CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
CMAKE_ANGLE_GLES2_DLL_RELEASE = libGLESv2.dll
- CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
CMAKE_ANGLE_EGL_DLL_DEBUG = libEGLd.dll
- CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
CMAKE_ANGLE_GLES2_DLL_DEBUG = libGLESv2d.dll
- CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+
+ win32-g++* {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.dll.a
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.dll.a
+ } else {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+ }
CMAKE_QT_OPENGL_IMPLEMENTATION = GLESv2
} else {
--- src/opengl/opengl.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/opengl/opengl.pro 2014-12-11 10:15:45.884805707 -0700
@@ -13,6 +13,10 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
HEADERS += qgl.h \
qgl_p.h \
qglcolormap.h \
--- src/plugins/platforms/windows/windows.pri 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/windows.pri 2014-12-11 10:13:45.228261276 -0700
@@ -3,6 +3,7 @@
!wince*:LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
--- src/src.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/src.pro 2014-12-11 10:06:14.882845813 -0700
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype
--- src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-11 20:07:27.099190408 -0700
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,11 @@
--- a/src/tools/bootstrap/bootstrap.pro 2014-01-01 13:22:42.367935800 -0600
+++ b/src/tools/bootstrap/bootstrap.pro 2014-01-02 23:38:20.707687700 -0600
@@ -145,7 +145,7 @@
../../corelib/io/qstandardpaths_win.cpp
}
-if(contains(QT_CONFIG, zlib)|cross_compile):include(../../3rdparty/zlib.pri)
+if(contains(QT_CONFIG, zlib)):include(../../3rdparty/zlib.pri)
else:include(../../3rdparty/zlib_dependency.pri)
win32:LIBS += -luser32 -lole32 -ladvapi32 -lshell32

View File

@ -0,0 +1,57 @@
--- qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf.orig 2015-06-29 22:05:10.000000000 +0200
+++ qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf 2015-08-05 19:53:33.349194327 +0200
@@ -25,7 +25,7 @@
QMAKE_LEXFLAGS =
QMAKE_YACC = byacc
QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS = -pipe -fno-keep-inline-dllexport
+QMAKE_CFLAGS = -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 --param=ssp-buffer-size=4 -fno-keep-inline-dllexport
QMAKE_CFLAGS_DEPS = -M
QMAKE_CFLAGS_WARN_ON = -Wall -Wextra
QMAKE_CFLAGS_WARN_OFF = -w
@@ -67,10 +67,10 @@
QMAKE_LINK = $${CROSS_COMPILE}g++
QMAKE_LINK_C = $${CROSS_COMPILE}gcc
-QMAKE_LFLAGS =
+QMAKE_LFLAGS = -g
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
QMAKE_LFLAGS_EXCEPTIONS_OFF =
-QMAKE_LFLAGS_RELEASE = -Wl,-s
+QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
@@ -84,21 +84,25 @@
QMAKE_EXTENSION_STATICLIB = a
QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32
-QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32
-QMAKE_LIBS_NETWORK = -lws2_32
+QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lpcre16
+QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng -lharfbuzz -lglib-2.0 -lintl -lwinmm
+QMAKE_LIBS_NETWORK = -lws2_32 -lcrypt32 -ldnsapi
QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2 = -llibEGL -llibGLESv2 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2_DEBUG = -llibEGLd -llibGLESv2d -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -ld3d9 -ldxguid -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2_DEBUG = $(QMAKE_LIBS_OPENGL_ES2)
QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
-QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
+QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqt5main
-QMAKE_IDL = midl
+QMAKE_IDL = $${CROSS_COMPILE}widl
QMAKE_LIB = $${CROSS_COMPILE}ar -ru
QMAKE_RC = $${CROSS_COMPILE}windres
+QMAKE_DLLTOOL = $${CROSS_COMPILE}dlltool
QMAKE_STRIP = $${CROSS_COMPILE}strip
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
+
+PKG_CONFIG = $${CROSS_COMPILE}pkg-config
+
load(qt_config)

View File

@ -0,0 +1,46 @@
--- qmake/generators/makefile.cpp.pkgconfig 2013-01-29 20:03:12.000000000 +0100
+++ qmake/generators/makefile.cpp 2013-03-26 19:18:07.480722316 +0100
@@ -3102,7 +3102,7 @@
}
QString
-MakefileGenerator::pkgConfigFileName(bool fixify)
+MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
{
QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString();
if (ret.isEmpty()) {
@@ -3134,7 +3134,11 @@
if(fixify) {
if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
ret.prepend(project->first("DESTDIR").toQString());
- ret = fileFixify(ret, FileFixifyBackwards);
+ if (onlyPrependDestdir) {
+ ret = Option::fixPathToLocalOS(ret);
+ } else {
+ ret = fileFixify(ret, FileFixifyBackwards);
+ }
}
return ret;
}
--- qmake/generators/makefile.h.orig 2013-03-26 19:17:37.624199870 +0100
+++ qmake/generators/makefile.h 2013-03-26 19:17:56.327527157 +0100
@@ -102,7 +102,7 @@
virtual void writeDefaultVariables(QTextStream &t);
QString pkgConfigPrefix() const;
- QString pkgConfigFileName(bool fixify=true);
+ QString pkgConfigFileName(bool fixify=true, bool onlyPrependDestdir = false);
QString pkgConfigFixPath(QString) const;
void writePkgConfigFile(); // for pkg-config
--- qmake/generators/win32/winmakefile.cpp.orig 2013-03-26 19:05:13.398183953 +0100
+++ qmake/generators/win32/winmakefile.cpp 2013-03-26 19:15:02.800490466 +0100
@@ -822,7 +822,7 @@
}
if(!ret.isEmpty())
ret += "\n\t";
- ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true), dst_pc);
+ ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true, true), dst_pc);
if(!uninst.isEmpty())
uninst.append("\n\t");
uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc));

View File

@ -0,0 +1,92 @@
diff -U 3 -r a/src/gui/gui.pro b/src/gui/gui.pro
--- a/src/gui/gui.pro 2015-06-29 14:04:55.000000000 -0600
+++ b/src/gui/gui.pro 2015-07-18 10:50:02.228227482 -0600
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -35,6 +29,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
diff -U 3 -r a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
--- a/src/gui/Qt5GuiConfigExtras.cmake.in 2015-06-29 14:04:51.000000000 -0600
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in 2015-07-18 10:51:09.666053970 -0600
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
diff -U 3 -r a/src/opengl/opengl.pro b/src/opengl/opengl.pro
--- a/src/opengl/opengl.pro 2015-06-29 14:04:05.000000000 -0600
+++ b/src/opengl/opengl.pro 2015-07-18 10:46:46.588388411 -0600
@@ -12,6 +12,9 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
HEADERS += qgl.h \
qgl_p.h \
diff -U 3 -r a/src/plugins/platforms/windows/qwindowseglcontext.cpp b/src/plugins/platforms/windows/qwindowseglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-07-18 10:52:29.667410627 -0600
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE
diff -U 3 -r a/src/plugins/platforms/windows/windows.pri b/src/plugins/platforms/windows/windows.pri
--- a/src/plugins/platforms/windows/windows.pri 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/windows.pri 2015-07-18 10:53:45.585348009 -0600
@@ -3,6 +3,7 @@
!wince*:LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
diff -U 3 -r a/src/src.pro b/src/src.pro
--- a/src/src.pro 2015-06-29 14:05:06.000000000 -0600
+++ b/src/src.pro 2015-07-18 10:43:01.698195194 -0600
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype

View File

@ -0,0 +1,358 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
# Contributor: jellysheep <max.mail@dameweb.de>
pkgname=mingw-w64-qt5-base-static
pkgver=5.5.1
pkgrel=1
pkgdesc="A cross-platform application and UI framework (mingw-w64)"
arch=(i686 x86_64)
url="http://qt-project.org"
license=("custom, FDL, GPL3, LGPL")
depends=(
mingw-w64-crt
mingw-w64-zlib
mingw-w64-libjpeg-turbo
mingw-w64-libiconv
mingw-w64-sqlite
mingw-w64-libpng
mingw-w64-openssl
mingw-w64-libdbus
mingw-w64-pcre
mingw-w64-harfbuzz
mingw-w64-glib2
)
groups=(mingw-w64-qt mingw-w64-qt5)
optdepends=(
"mingw-w64-postgresql-libs: PostgreSQL support"
"mingw-w64-mariadb-connector-c: MySQL support"
"qtchooser"
)
makedepends=(mingw-w64-gcc
mingw-w64-postgresql-libs
mingw-w64-mariadb-connector-c
mingw-w64-pkg-config)
options=(!strip !buildflags staticlibs)
_pkgfqn="qtbase-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-merge-static-and-shared-library-trees.patch"
"add-angle-support.patch"
"use-external-angle-library.patch"
"qt5-workaround-pkgconfig-install-issue.patch"
"qt5-qtbase-fix-linking-against-static-pcre.patch"
"qt5-rename-qtmain-to-qt5main.patch"
"qt5-dont-build-host-libs-static.patch"
"qt5-enable-rpath-for-host-tools.patch"
"qt5-dont-add-resource-files-to-qmake-libs.patch"
"qt5-prevent-debug-library-names-in-pkgconfig-files.patch"
"qt5-qmake-implib-dll-a.patch"
"qt5-fix-static-dbus-detection.patch"
"qt5-fix-static-harfbuzz-detection.patch"
"qt5-use-win32-g++-mkspecs-profile.patch"
"qt5-use-system-zlib-in-host-libs.patch"
"fix-opengl-to-many-sections.patch"
"fix-static-psql-mysql.patch"
"qt5-disable-angle-opengl-testcode.patch"
"qt5-fix-QSemaphore-problem.patch"
"a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff")
md5sums=('687e2b122fa2c3390b5e20a166d38038'
'f51eb2b176b10af943831d33925c1251'
'bab00ccc19d888997f323c80354a7c3f'
'ec25d1ff4033383cd5d2414d8189c228'
'bc99c4cc6998295d76f37ed681c20d47'
'4fe6523dd1c34398df3aa5a8763530cc'
'c4d4ca54a2e9096d2af13a266177f6d6'
'3bd322551924543553a2bf81b4419a09'
'15e8eaa4f0a9a9990277c79e243770be'
'99bb9f51ec684803768f36e407baf486'
'6a6bc88f35ac8080869de39bc128ce5b'
'e793479e0b86b39ddafd328140f1a24c'
'40de3aaf7d713034e06f4eece665b1ba'
'4149c27286f110e37893d1764d4c8a68'
'39cdea1b39a1d993df6d01a576e8116f'
'a265dea62755caf38187114143999224'
'612a4dfb9f1a3898a1920c28bb999159'
'd0eb81aef1a21c65813fe4ddabbc4206'
'0076233a43e7edaaaf8c2abca2ada8df'
'87cbd116c75ced1b075bf266f2455d50'
'1bc70e7e3ea6a0178891d984f0451b3c')
_architectures="x86_64-w64-mingw32 i686-w64-mingw32"
# Helper functions for the split builds
isStatic() {
[ $pkgname = "mingw-w64-qt5-base-static" ]
}
isOpenGL() {
[ $pkgname = "mingw-w64-qt5-base-opengl" ]
}
isStatic && depends+=("mingw-w64-qt5-base")
! isOpenGL && depends+=("mingw-w64-angleproject")
isOpenGL && provides+=("mingw-w64-qt5-base")
isOpenGL && conflicts+=("mingw-w64-qt5-base")
prepare() {
cd "${srcdir}/${_pkgfqn}"
# When building Qt as static library some files have a different content
# when compared to the static library. Merge those changes manually.
# This patch also applies some additional changes which are required to make
# linking against the static version of Qt work without any manual fiddling
patch -p0 -i ../qt5-merge-static-and-shared-library-trees.patch
if ! isOpenGL; then
# Add support for Angle
patch -p1 -i ../add-angle-support.patch
# Make sure our external Angle package is used instead of the bundled one
patch -p1 -i ../use-external-angle-library.patch
fi
# opengl to many sections error
isOpenGL && patch -p0 -i ../fix-opengl-to-many-sections.patch
# Make sure the .pc files of the Qt5 modules are installed correctly
patch -p0 -i ../qt5-workaround-pkgconfig-install-issue.patch
# Prevents resource files from being added to the LIBS parameter
# This solves an issue where the generated pkg-config files contained
# invalid Libs.private references like .obj/debug/Qt5Cored_resource_res.o
patch -p1 -i ../qt5-dont-add-resource-files-to-qmake-libs.patch
# qmake generates the pkgconfig .pc files two times, once for the
# release build and once for the debug build (which we're not actually
# building in this package). For both generations the exact same
# pkgconfig file name is used. This causes references to the debug
# build ending up in the .pc files which are unwanted
# Prevent this from happening by giving the pkgconfig .pc
# files for the debug build an unique file name
patch -p1 -i ../qt5-prevent-debug-library-names-in-pkgconfig-files.patch
# Fix qmake to create implibs with .dll.a extension for MinGW
patch -p1 -i ../qt5-qmake-implib-dll-a.patch
# As of Qt 5.4.1 the detection of the static DBus and Harfbuzz libraries got broken
patch -p1 -i ../qt5-fix-static-dbus-detection.patch
patch -p1 -i ../qt5-fix-static-harfbuzz-detection.patch
# Patch the win32-g++ mkspecs profile to match our environment
patch -p1 -i ../qt5-use-win32-g++-mkspecs-profile.patch
# The bundled pcre is built as static library by default
# As we're not using the bundled copy but our own copy
# we need to do some fiddling to fix compilation issues
# when trying to build static qmake projects
patch -p1 -i ../qt5-qtbase-fix-linking-against-static-pcre.patch
# Make sure the qtmain (static) library doesn't conflict with the one
# provided by the mingw-qt (qt4) package. The mkspecs profile is already
# updated by patch100 to reflect this change
# https://bugzilla.redhat.com/show_bug.cgi?id=1092465
patch -p1 -i ../qt5-rename-qtmain-to-qt5main.patch
# Upstream always wants the host libraries to be static instead of
# shared libraries. This causes issues and is against the Fedora
# packaging guidelines so disable this 'feature'
patch -p0 -i ../qt5-dont-build-host-libs-static.patch
# Build host tools with rpath enabled
# We have to use rpath here as the library which the
# various tools depend on (libQt5Bootstrap.so) resides
# in the folder /usr/${_arch}/lib
# We can't use the regular %%_libdir for this as we
# want to avoid conflicts with the native qt5 packages
patch -p1 -i ../qt5-enable-rpath-for-host-tools.patch
# Build host libs with system zlib. This patch cannot be upstreamed as-is
# due to the other host-libs patches.
patch -p1 -i ../qt5-use-system-zlib-in-host-libs.patch
# Workaround a compatibility issue because we are using an older version of ANGLE in Fedora
# Upgrading the mingw-angleproject package isn't possible for now because mingw-qt5-qtwebkit doesn't support the latest ANGLE yet..
#
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:15: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
# ^
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:53: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
patch -p1 -b -i ../qt5-disable-angle-opengl-testcode.patch
patch configure ../qt5-fix-QSemaphore-problem.patch
# QTBUG-49174 Prevent warning output when QWebView loads QNetworkRequest
patch -p1 -b -i ../a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff
isStatic && patch -p0 -i ../fix-static-psql-mysql.patch
# Make sure the Qt5 build system uses our external ANGLE library
rm -rf src/3rdparty/angle include/QtANGLE/{EGL,GLES2,KHR}
# As well as our external PCRE library and zlib
rm -rf src/3rdparty/{pcre,zlib}
}
build() {
cd "${srcdir}/${_pkgfqn}"
# Setup flags
export CFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
export CXXFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
unset LDFLAGS
for _arch in ${_architectures}; do
# Phonon is disabled for now because we lack the directx headers
# The odd paths for the -hostbindir argument are on purpose
# The qtchooser tool assumes that the tools 'qmake', 'moc' and others
# are all available in the same folder with these exact file names
# To prevent conflicts with the mingw-qt (Qt4) package we have
# to put these tools in a dedicated folder
qt_configure_args="\
-xplatform win32-g++ \
-optimized-qmake \
-verbose \
-opensource \
-confirm-license \
-force-pkg-config \
-force-debug-info \
-audio-backend \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-sqlite \
-system-harfbuzz \
-no-fontconfig \
-iconv \
-openssl \
-dbus-linked \
-no-glib \
-no-gtkstyle \
-no-icu \
-release \
-nomake examples \
-make tools \
-hostprefix /usr/${_arch} \
-hostdatadir /usr/${_arch}/lib/qt \
-hostbindir /usr/${_arch}/lib/qt/bin \
-prefix /usr/${_arch} \
-bindir /usr/${_arch}/bin \
-archdatadir /usr/${_arch}/lib/qt \
-datadir /usr/${_arch}/share/qt \
-docdir /usr/${_arch}/share/doc/qt \
-examplesdir /usr/${_arch}/share/qt/examples \
-headerdir /usr/${_arch}/include/qt \
-libdir /usr/${_arch}/lib \
-plugindir /usr/${_arch}/lib/qt/plugins \
-sysconfdir /usr/${_arch}/etc \
-translationdir /usr/${_arch}/share/qt/translations \
-device-option CROSS_COMPILE=${_arch}-"
# fix include directory of dbus
qt_configure_args+=" $(${_arch}-pkg-config --cflags-only-I dbus-1 --cflags)"
isOpenGL && qt_configure_args+=' -opengl desktop'
isStatic && qt_configure_args+=' -opengl no'
unset PKG_CONFIG_PATH
if ! isStatic; then
export QT_LFLAGS_MYSQL="-L/usr/${_arch}/lib -lmysql"
fi
# Qt doesn't detect mysql correctly, so use this:
export QT_CFLAGS_MYSQL="-I/usr/${_arch}/include/mariadb"
#export QT_LFLAGS_MYSQL_R="-lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto"
# Hardcode MySQL flags into configure (really nice solution :( )
sed -e "s|^QT_CFLAGS_MYSQL=.*$|QT_CFLAGS_MYSQL=\"${QT_CFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
sed -e "s|^QT_LFLAGS_MYSQL=.*$|QT_LFLAGS_MYSQL=\"${QT_LFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
#sed -e "s|^QT_LFLAGS_MYSQL_R=.*$|QT_LFLAGS_MYSQL_R=\"${QT_LFLAGS_MYSQL_R}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
qt_configure_args_mysql="-mysql_config /this/file/should/not/exist"
mkdir ../build-${_arch} && pushd ../build-${_arch}
if isStatic; then
../${_pkgfqn}/configure -static $qt_configure_args $qt_configure_args_mysql
make
else
# The LD_LIBRARY_PATH override is needed because libQt5Bootstrap* are shared
# libraries which various compiled tools (like moc) use. As the libQt5Bootstrap*
# libraries aren't installed at this point yet, we have to workaround this
../${_pkgfqn}/configure -shared $qt_configure_args $qt_configure_args_mysql
LD_LIBRARY_PATH=`pwd`/lib make
fi
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "$srcdir/${_pkgfqn}"
make install -C ../build-${_arch} INSTALL_ROOT="${pkgdir}"
if isStatic; then
# Drop the qtmain and Qt5Bootstrap static libraries from the static tree as
# they are already part of the main tree
rm -f "${pkgdir}/usr/${_arch}/lib/libqt5main"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5OpenGLExtensions"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5PlatformSupport"*
# Also keep various Qt5 plugins to be used in static builds
# https://bugzilla.redhat.com/show_bug.cgi?id=1257630
mv "${pkgdir}/usr/${_arch}/lib/qt/plugins/"*/*.a "${pkgdir}/usr/${_arch}/lib/"
# we want to keep a couple pri files not found in base
mv "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules/qt_plugin_"*.pri "${pkgdir}/usr/${_arch}"
# Delete duplicate files that are in the base package
rm -fR "${pkgdir}/usr/${_arch}/"{include,share}
rm -fR "${pkgdir}/usr/${_arch}/lib/"{qt/bin,qt/mkspecs,pkgconfig,cmake}
# move pri files back
mkdir -p "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
mv "${pkgdir}/usr/${_arch}/"*.pri "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
else # not static => shared release
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
# Add qtchooser support
[ "${_arch}" = "i686-w64-mingw32" ] && mingwn='mingw32' || mingwn='mingw64'
mkdir -p "${pkgdir}/etc/xdg/qtchooser"
echo "/usr/${_arch}/lib/qt/bin" > "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
echo "/usr/${_arch}/lib" >> "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
# Manually install qmake and other native tools so we don't depend anymore on
# the version of the native system Qt and also fix issues as illustrated at
# http://stackoverflow.com/questions/6592931/building-for-windows-under-linux-using-qt-creator
# Also make sure the tools can be found by CMake
mkdir -p "${pkgdir}/usr/bin"
for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt.pl; do
ln -s ../${_arch}/lib/qt/bin/${tool} "${pkgdir}/usr/bin/${_arch}-${tool}-qt5"
done
fi
# The pkg-config files for Qt5Bootstrap aren't interesting as this particular
# library only contains native code and not cross-compiled code
rm -f "${pkgdir}/usr/${_arch}/lib/pkgconfig/Qt5Bootstrap.pc"
# remove doc
rm -rf "${pkgdir}/usr/${_arch}/share/doc"
# And finaly, strip the binaries
if ! isStatic; then
strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"{,DBus}.so.${pkgver}
fi
# keeping prl files for base build since qbs seems to need them.
if isStatic; then
rm -f "${pkgdir}/usr/${_arch}/lib"{,/qt/plugins/*}/*.prl
fi
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,16 @@
diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp
index c1956ae..76c2f57 100644
--- a/src/network/access/qnetworkreplyhttpimpl.cpp
+++ b/src/network/access/qnetworkreplyhttpimpl.cpp
@@ -1679,8 +1679,9 @@ void QNetworkReplyHttpImplPrivate::_q_startOperation()
#endif
} else {
#ifndef QT_NO_BEARERMANAGEMENT
- QObject::connect(session.data(), SIGNAL(stateChanged(QNetworkSession::State)),
- q, SLOT(_q_networkSessionStateChanged(QNetworkSession::State)), Qt::QueuedConnection);
+ if (session)
+ QObject::connect(session.data(), SIGNAL(stateChanged(QNetworkSession::State)),
+ q, SLOT(_q_networkSessionStateChanged(QNetworkSession::State)), Qt::QueuedConnection);
#endif
}

View File

@ -0,0 +1,46 @@
diff -U 3 -r a/configure b/configure
--- a/configure 2015-06-29 14:03:05.000000000 -0600
+++ b/configure 2015-07-18 11:14:30.312317765 -0600
@@ -5081,7 +5081,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -6072,6 +6072,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -7077,7 +7082,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
diff -U 3 -r a/src/plugins/platforms/windows/qwindowsglcontext.cpp b/src/plugins/platforms/windows/qwindowsglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-07-18 11:16:05.767172673 -0600
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

View File

@ -0,0 +1,19 @@
--- src.orig/3rdparty/angle/src/compiler/glslang.y 2014-01-02 11:53:56.393615041 +0100
+++ src/3rdparty/angle/src/compiler/glslang.y 2014-01-02 12:06:10.904972303 +0100
@@ -47,6 +47,7 @@ WHICH GENERATES THE GLSL ES PARSER (glsl
%pure-parser
%parse-param {TParseContext* context}
%locations
+%lex-param {YYLEX_PARAM}
%code requires {
#define YYLTYPE TSourceLoc
@@ -90,7 +91,7 @@ extern void yyerror(YYLTYPE* yylloc, TPa
#define YYLLOC_DEFAULT(Current, Rhs, N) \
do { \
- if (YYID(N)) { \
+ if (N) { \
(Current).first_file = YYRHSLOC(Rhs, 1).first_file; \
(Current).first_line = YYRHSLOC(Rhs, 1).first_line; \
(Current).last_file = YYRHSLOC(Rhs, N).last_file; \

View File

@ -0,0 +1,10 @@
--- src/gui/opengl/opengl.pri.orig 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/opengl/opengl.pri 2015-02-09 10:48:48.484071754 -0700
@@ -4,6 +4,7 @@
contains(QT_CONFIG, opengles2):CONFIG += opengles2
contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
+ QMAKE_CXXFLAGS+="-Wa,-mbig-obj"
HEADERS += opengl/qopengl.h \
opengl/qopengl_p.h \

View File

@ -0,0 +1,15 @@
--- config.tests/unix/psql/psql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/psql/psql.pro 2015-03-09 21:45:44.746755052 -0600
@@ -1,3 +1,3 @@
SOURCES = psql.cpp
CONFIG -= qt dylib
-LIBS *= -lpq
+LIBS *= -lpq -lintl -liconv -lssl -lcrypto -lwldap32 -lshfolder -lwsock32 -lws2_32 -lsecur32 -lgdi32
--- config.tests/unix/mysql/mysql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/mysql/mysql.pro 2015-03-09 21:38:59.930405876 -0600
@@ -1,3 +1,3 @@
SOURCES = mysql.cpp
CONFIG -= qt dylib
-LIBS += -lmysqlclient
+LIBS += -lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto

View File

@ -0,0 +1,22 @@
--- qt-stable/qtbase/src/angle/src/compiler/translator_common.pro.orig 2013-06-18 08:49:51.975288500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/translator_common.pro 2013-06-18 08:50:06.047321000 +0000
@@ -92,7 +92,7 @@
$$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}_lex.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C
--- qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro.orig 2013-06-18 08:50:54.314442500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro 2013-06-18 08:51:52.606574000 +0000
@@ -43,7 +43,7 @@
$$ANGLE_DIR/src/compiler/preprocessor/Token.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C

View File

@ -0,0 +1,44 @@
--- configure.orig 2014-12-05 09:24:14.000000000 -0700
+++ configure 2014-12-11 09:24:32.545799224 -0700
@@ -4765,7 +4765,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -5632,6 +5632,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -6588,7 +6593,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
--- src/plugins/platforms/windows/qwindowsglcontext.cpp.orig 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowsglcontext.cpp 2014-12-11 09:27:37.364281924 -0700
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp.external_angle 2015-06-29 22:04:40.000000000 +0200
+++ qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-08-05 21:37:55.922142528 +0200
@@ -366,7 +366,7 @@
EGLDisplay display = EGL_NO_DISPLAY;
EGLint major = 0;
EGLint minor = 0;
-#ifdef EGL_ANGLE_platform_angle
+#if 0
if (libEGL.eglGetPlatformDisplayEXT
&& (preferredType & QWindowsOpenGLTester::AngleBackendMask)) {
const EGLint anglePlatformAttributes[][5] = {

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp.orig 2014-01-04 21:18:07.413328813 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp 2014-01-04 21:18:55.740126515 +0100
@@ -243,7 +243,7 @@
processVars();
- project->values("QMAKE_LIBS") += project->values("RES_FILE");
+ project->values("OBJECTS") += project->values("RES_FILE");
if (project->isActiveConfig("dll")) {
QString destDir = "";

View File

@ -0,0 +1,10 @@
--- qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf.orig 2013-08-01 01:21:52.461910182 +0200
+++ qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf 2013-08-01 01:22:46.777801052 +0200
@@ -20,6 +20,7 @@
QMAKE_LFLAGS += $$QMAKE_LFLAGS_GCSECTIONS
host_build: QT -= gui # no host tool will ever use gui
+host_build: QT_CONFIG += rpath
host_build:force_bootstrap {
!build_pass: CONFIG += release
contains(QT, core(-private)?|xml) {

View File

@ -0,0 +1,9 @@
@@ -4456,7 +4456,7 @@
if compileTest unix/ipc_posix "ipc_posix" ; then
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_POSIX_IPC"
else
- if [ "$XPLATFORM_ANDROID" = "no" ] ; then
+ if [ "$XPLATFORM_ANDROID" = "no"] && ["$XPLATFORM_MINGW" = "no" ] ; then
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SYSTEMSEMAPHORE QT_NO_SHAREDMEMORY"
fi
fi

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp.orig 2015-03-08 17:05:21.216593135 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp 2015-03-08 17:06:35.276826201 +0100
@@ -31,6 +31,10 @@
**
****************************************************************************/
+#ifdef QT_STATIC
+#define DBUS_STATIC_BUILD
+#endif
+
#define DBUS_API_SUBJECT_TO_CHANGE
#include <dbus/dbus.h>

View File

@ -0,0 +1,7 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro.orig 2015-03-08 17:47:58.522991158 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro 2015-03-08 17:48:19.491340185 +0100
@@ -1,3 +1,3 @@
SOURCES = harfbuzz.cpp
CONFIG -= qt dylib
-LIBS += -lharfbuzz
+LIBS += -lharfbuzz -lglib-2.0 -lws2_32 -lole32 -lwinmm -lshlwapi -lintl -liconv

View File

@ -0,0 +1,48 @@
--- mkspecs/features/qt_functions.prf.orig 2012-09-05 23:30:01.612735271 +0200
+++ mkspecs/features/qt_functions.prf 2012-09-05 23:32:40.030869399 +0200
@@ -134,6 +134,19 @@
}
$$2 += $$LINKAGE
+
+ win32:CONFIG(static) {
+ isEqual(MODULE_NAME, Qt5Core) {
+ $$2 += $$QMAKE_LIBS_CORE
+ } else:isEqual(MODULE_NAME, Qt5Gui) {
+ $$2 += $$QMAKE_LIBS_GUI
+ } else:isEqual(MODULE_NAME, Qt5Network) {
+ $$2 += $$QMAKE_LIBS_NETWORK
+ } else:isEqual(MODULE_NAME, Qt5OpenGL) {
+ $$2 += $$QMAKE_LIBS_OPENGL
+ }
+ }
+
export($$2)
!isEmpty(QMAKE_LSB) {
--- mkspecs/features/default_post.prf.orig 2012-09-05 23:28:56.827501401 +0200
+++ mkspecs/features/default_post.prf 2012-09-05 23:29:31.617923080 +0200
@@ -47,3 +50,8 @@
QMAKE_INCDIR += $$QMAKE_INCDIR_POST
QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
+
+win32:contains(CONFIG, static) {
+ DEFINES += QT_STATIC
+ QMAKE_LFLAGS += -static
+}
--- configure.orig 2012-12-10 23:51:02.920255366 +0100
+++ configure 2012-12-10 23:55:58.101753703 +0100
@@ -6193,6 +6193,12 @@
}
QT_CONFIG += $QT_CONFIG
+contains(CONFIG, static) {
+ CONFIG -= shared
+ QT_CONFIG += static jpeg gif
+ QT_CONFIG -= shared
+}
+
#versioning
QT_VERSION = $QT_VERSION
QT_MAJOR_VERSION = $QT_MAJOR_VERSION

View File

@ -0,0 +1,12 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp.orig 2014-01-03 01:30:23.631353708 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp 2014-01-03 01:32:37.888625966 +0100
@@ -3168,6 +3168,9 @@
if (dot != -1)
ret = ret.left(dot);
}
+ if (project->isActiveConfig("debug")) {
+ ret += "d";
+ }
ret += Option::pkgcfg_ext;
QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString();
if(!subdir.isEmpty()) {

View File

@ -0,0 +1,33 @@
--- a/qmake/generators/win32/mingw_make.cpp 2013-08-25 13:04:06.000000000 -0500
+++ b/qmake/generators/win32/mingw_make.cpp 2014-01-02 01:24:31.640046700 -0600
@@ -58,7 +58,7 @@
QString MingwMakefileGenerator::getLibTarget()
{
- return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".a");
+ return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".dll.a");
}
QString MingwMakefileGenerator::getManifestFileForRcFile() const
@@ -250,7 +250,7 @@
if(!project->first("DESTDIR").isEmpty())
destDir = Option::fixPathToTargetOS(project->first("DESTDIR") + Option::dir_sep, false, false);
project->values("MINGW_IMPORT_LIB").prepend(destDir + "lib" + project->first("TARGET")
- + project->first("TARGET_VERSION_EXT") + ".a");
+ + project->first("TARGET_VERSION_EXT") + ".dll.a");
project->values("QMAKE_LFLAGS").append(QString("-Wl,--out-implib,") + fileVar("MINGW_IMPORT_LIB"));
}
--- a/mkspecs/features/create_cmake.prf.cmake 2013-10-22 10:49:28.000000000 +0200
+++ b/mkspecs/features/create_cmake.prf 2013-10-23 21:38:02.959762089 +0200
@@ -207,8 +207,8 @@
CMAKE_PRL_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.prl
CMAKE_PRL_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.prl
} else {
- CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.a
- CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a
+ CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.dll.a
+ CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.dll.a
}
} else {
CMAKE_WINMAIN_FILE_LOCATION_DEBUG = qtmain$${QT_LIBINFIX}d.lib

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp.orig 2013-07-11 08:23:02.687691337 +0200
+++ qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp 2013-07-11 08:23:27.231900674 +0200
@@ -47,6 +47,10 @@
#include <QtCore/qatomic.h>
#include <QtCore/qdatastream.h>
+#ifdef QT_STATIC
+#define PCRE_STATIC
+#endif
+
#include <pcre.h>
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,35 @@
--- qtbase-opensource-src-5.2.1/src/winmain/winmain.pro.orig 2014-04-29 18:51:05.206296152 +0200
+++ qtbase-opensource-src-5.2.1/src/winmain/winmain.pro 2014-04-29 18:51:18.737512221 +0200
@@ -2,7 +2,7 @@
!win32:error("$$_FILE_ is intended only for Windows!")
TEMPLATE = lib
-TARGET = qtmain
+TARGET = qt5main
DESTDIR = $$QT.core.libs
CONFIG += static
--- qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf.orig 2014-04-29 18:53:49.511932034 +0200
+++ qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf 2014-04-29 18:54:44.515819011 +0200
@@ -203,8 +203,8 @@
CMAKE_LIB_FILE_LOCATION_RELEASE = $${CMAKE_QT_STEM}.dll
mingw {
- CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqtmain$${QT_LIBINFIX}d.a
- CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqtmain$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqt5main$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqt5main$${QT_LIBINFIX}.a
!isEmpty(CMAKE_STATIC_TYPE) {
CMAKE_STATIC_WINDOWS_BUILD = "true"
--- qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf.qtmain 2014-07-05 14:18:23.211155781 +0200
+++ qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf 2014-07-05 14:18:46.045390147 +0200
@@ -6,7 +6,7 @@
mingw:DEFINES += QT_NEEDS_QMAIN
qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) {
- isEqual(entryLib, -lqtmain): {
+ isEqual(entryLib, -lqt5main): {
!contains(QMAKE_DEFAULT_LIBDIRS, $$QT.core.libs): \
QMAKE_LIBS += -L$$QT.core.libs
CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d

View File

@ -0,0 +1,113 @@
--- src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-05 09:24:36.000000000 -0700
+++ src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-11 10:19:51.599972209 -0700
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
--- src/gui/gui.pro 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/gui.pro 2014-12-11 10:22:37.644366784 -0700
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -33,6 +27,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
@@ -55,13 +53,21 @@
contains(QT_CONFIG, angle) {
CMAKE_GL_INCDIRS = $$CMAKE_INCLUDE_DIR
CMAKE_ANGLE_EGL_DLL_RELEASE = libEGL.dll
- CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
CMAKE_ANGLE_GLES2_DLL_RELEASE = libGLESv2.dll
- CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
CMAKE_ANGLE_EGL_DLL_DEBUG = libEGLd.dll
- CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
CMAKE_ANGLE_GLES2_DLL_DEBUG = libGLESv2d.dll
- CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+
+ win32-g++* {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.dll.a
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.dll.a
+ } else {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+ }
CMAKE_QT_OPENGL_IMPLEMENTATION = GLESv2
} else {
--- src/opengl/opengl.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/opengl/opengl.pro 2014-12-11 10:15:45.884805707 -0700
@@ -13,6 +13,10 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
HEADERS += qgl.h \
qgl_p.h \
qglcolormap.h \
--- src/plugins/platforms/windows/windows.pri 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/windows.pri 2014-12-11 10:13:45.228261276 -0700
@@ -3,6 +3,7 @@
!wince: LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
--- src/src.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/src.pro 2014-12-11 10:06:14.882845813 -0700
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype
--- src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-11 20:07:27.099190408 -0700
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,11 @@
--- a/src/tools/bootstrap/bootstrap.pro 2014-01-01 13:22:42.367935800 -0600
+++ b/src/tools/bootstrap/bootstrap.pro 2014-01-02 23:38:20.707687700 -0600
@@ -145,7 +145,7 @@
../../corelib/io/qstandardpaths_win.cpp
}
-if(contains(QT_CONFIG, zlib)|cross_compile):include(../../3rdparty/zlib.pri)
+if(contains(QT_CONFIG, zlib)):include(../../3rdparty/zlib.pri)
else:include(../../3rdparty/zlib_dependency.pri)
win32:LIBS += -luser32 -lole32 -ladvapi32 -lshell32

View File

@ -0,0 +1,58 @@
--- qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf.orig 2015-06-29 22:05:10.000000000 +0200
+++ qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf 2015-08-05 19:53:33.349194327 +0200
@@ -25,7 +25,7 @@
QMAKE_LEXFLAGS =
QMAKE_YACC = byacc
QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS = -pipe -fno-keep-inline-dllexport
+QMAKE_CFLAGS = -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 --param=ssp-buffer-size=4 -fno-keep-inline-dllexport
QMAKE_CFLAGS_DEPS = -M
QMAKE_CFLAGS_WARN_ON = -Wall -Wextra
QMAKE_CFLAGS_WARN_OFF = -w
@@ -67,10 +67,10 @@
QMAKE_LINK = $${CROSS_COMPILE}g++
QMAKE_LINK_C = $${CROSS_COMPILE}gcc
-QMAKE_LFLAGS =
+QMAKE_LFLAGS = -g
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
QMAKE_LFLAGS_EXCEPTIONS_OFF =
-QMAKE_LFLAGS_RELEASE = -Wl,-s
+QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
@@ -84,21 +84,26 @@
QMAKE_EXTENSION_STATICLIB = a
QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32
-QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32
-QMAKE_LIBS_NETWORK = -lws2_32
+QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lpcre16
+QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng -lharfbuzz -lglib-2.0 -lintl -lwinmm
+QMAKE_LIBS_NETWORK = -lws2_32 -lcrypt32 -ldnsapi
QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2 = -llibEGL -llibGLESv2 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2_DEBUG = -llibEGLd -llibGLESv2d -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -ld3d9 -ldxguid -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2_DEBUG = $(QMAKE_LIBS_OPENGL_ES2)
QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
-QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
+QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqt5main
-QMAKE_IDL = midl
+QMAKE_IDL = $${CROSS_COMPILE}widl
QMAKE_LIB = $${CROSS_COMPILE}ar -ru
QMAKE_RC = $${CROSS_COMPILE}windres
+QMAKE_DLLTOOL = $${CROSS_COMPILE}dlltool
+QMAKE_LRELEASE = $${CROSS_COMPILE}lrelease-qt5
QMAKE_STRIP = $${CROSS_COMPILE}strip
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
+
+PKG_CONFIG = $${CROSS_COMPILE}pkg-config
+
load(qt_config)

View File

@ -0,0 +1,46 @@
--- qmake/generators/makefile.cpp.pkgconfig 2013-01-29 20:03:12.000000000 +0100
+++ qmake/generators/makefile.cpp 2013-03-26 19:18:07.480722316 +0100
@@ -3102,7 +3102,7 @@
}
QString
-MakefileGenerator::pkgConfigFileName(bool fixify)
+MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
{
QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString();
if (ret.isEmpty()) {
@@ -3134,7 +3134,11 @@
if(fixify) {
if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
ret.prepend(project->first("DESTDIR").toQString());
- ret = fileFixify(ret, FileFixifyBackwards);
+ if (onlyPrependDestdir) {
+ ret = Option::fixPathToLocalOS(ret);
+ } else {
+ ret = fileFixify(ret, FileFixifyBackwards);
+ }
}
return ret;
}
--- qmake/generators/makefile.h.orig 2013-03-26 19:17:37.624199870 +0100
+++ qmake/generators/makefile.h 2013-03-26 19:17:56.327527157 +0100
@@ -102,7 +102,7 @@
virtual void writeDefaultVariables(QTextStream &t);
QString pkgConfigPrefix() const;
- QString pkgConfigFileName(bool fixify=true);
+ QString pkgConfigFileName(bool fixify=true, bool onlyPrependDestdir = false);
QString pkgConfigFixPath(QString) const;
void writePkgConfigFile(); // for pkg-config
--- qmake/generators/win32/winmakefile.cpp.orig 2013-03-26 19:05:13.398183953 +0100
+++ qmake/generators/win32/winmakefile.cpp 2013-03-26 19:15:02.800490466 +0100
@@ -822,7 +822,7 @@
}
if(!ret.isEmpty())
ret += "\n\t";
- ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true), dst_pc);
+ ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true, true), dst_pc);
if(!uninst.isEmpty())
uninst.append("\n\t");
uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc));

View File

@ -0,0 +1,92 @@
diff -U 3 -r a/src/gui/gui.pro b/src/gui/gui.pro
--- a/src/gui/gui.pro 2015-06-29 14:04:55.000000000 -0600
+++ b/src/gui/gui.pro 2015-07-18 10:50:02.228227482 -0600
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -35,6 +29,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
diff -U 3 -r a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
--- a/src/gui/Qt5GuiConfigExtras.cmake.in 2015-06-29 14:04:51.000000000 -0600
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in 2015-07-18 10:51:09.666053970 -0600
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
diff -U 3 -r a/src/opengl/opengl.pro b/src/opengl/opengl.pro
--- a/src/opengl/opengl.pro 2015-06-29 14:04:05.000000000 -0600
+++ b/src/opengl/opengl.pro 2015-07-18 10:46:46.588388411 -0600
@@ -12,6 +12,9 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
HEADERS += qgl.h \
qgl_p.h \
diff -U 3 -r a/src/plugins/platforms/windows/qwindowseglcontext.cpp b/src/plugins/platforms/windows/qwindowseglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-07-18 10:52:29.667410627 -0600
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE
diff -U 3 -r a/src/plugins/platforms/windows/windows.pri b/src/plugins/platforms/windows/windows.pri
--- a/src/plugins/platforms/windows/windows.pri 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/windows.pri 2015-07-18 10:53:45.585348009 -0600
@@ -3,6 +3,7 @@
!wince*:LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
diff -U 3 -r a/src/src.pro b/src/src.pro
--- a/src/src.pro 2015-06-29 14:05:06.000000000 -0600
+++ b/src/src.pro 2015-07-18 10:43:01.698195194 -0600
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype

358
qt5-base/mingw-w64/PKGBUILD Normal file
View File

@ -0,0 +1,358 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
# Contributor: jellysheep <max.mail@dameweb.de>
pkgname=mingw-w64-qt5-base
pkgver=5.5.1
pkgrel=1
pkgdesc="A cross-platform application and UI framework (mingw-w64)"
arch=(i686 x86_64)
url="http://qt-project.org"
license=("custom, FDL, GPL3, LGPL")
depends=(
mingw-w64-crt
mingw-w64-zlib
mingw-w64-libjpeg-turbo
mingw-w64-libiconv
mingw-w64-sqlite
mingw-w64-libpng
mingw-w64-openssl
mingw-w64-libdbus
mingw-w64-pcre
mingw-w64-harfbuzz
mingw-w64-glib2
)
groups=(mingw-w64-qt mingw-w64-qt5)
optdepends=(
"mingw-w64-postgresql-libs: PostgreSQL support"
"mingw-w64-mariadb-connector-c: MySQL support"
"qtchooser"
)
makedepends=(mingw-w64-gcc
mingw-w64-postgresql-libs
mingw-w64-mariadb-connector-c
mingw-w64-pkg-config)
options=(!strip !buildflags staticlibs)
_pkgfqn="qtbase-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-merge-static-and-shared-library-trees.patch"
"add-angle-support.patch"
"use-external-angle-library.patch"
"qt5-workaround-pkgconfig-install-issue.patch"
"qt5-qtbase-fix-linking-against-static-pcre.patch"
"qt5-rename-qtmain-to-qt5main.patch"
"qt5-dont-build-host-libs-static.patch"
"qt5-enable-rpath-for-host-tools.patch"
"qt5-dont-add-resource-files-to-qmake-libs.patch"
"qt5-prevent-debug-library-names-in-pkgconfig-files.patch"
"qt5-qmake-implib-dll-a.patch"
"qt5-fix-static-dbus-detection.patch"
"qt5-fix-static-harfbuzz-detection.patch"
"qt5-use-win32-g++-mkspecs-profile.patch"
"qt5-use-system-zlib-in-host-libs.patch"
"fix-opengl-to-many-sections.patch"
"fix-static-psql-mysql.patch"
"qt5-disable-angle-opengl-testcode.patch"
"qt5-fix-QSemaphore-problem.patch"
"a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff")
md5sums=('687e2b122fa2c3390b5e20a166d38038'
'f51eb2b176b10af943831d33925c1251'
'bab00ccc19d888997f323c80354a7c3f'
'ec25d1ff4033383cd5d2414d8189c228'
'bc99c4cc6998295d76f37ed681c20d47'
'4fe6523dd1c34398df3aa5a8763530cc'
'c4d4ca54a2e9096d2af13a266177f6d6'
'3bd322551924543553a2bf81b4419a09'
'15e8eaa4f0a9a9990277c79e243770be'
'99bb9f51ec684803768f36e407baf486'
'6a6bc88f35ac8080869de39bc128ce5b'
'e793479e0b86b39ddafd328140f1a24c'
'40de3aaf7d713034e06f4eece665b1ba'
'4149c27286f110e37893d1764d4c8a68'
'39cdea1b39a1d993df6d01a576e8116f'
'a265dea62755caf38187114143999224'
'612a4dfb9f1a3898a1920c28bb999159'
'd0eb81aef1a21c65813fe4ddabbc4206'
'0076233a43e7edaaaf8c2abca2ada8df'
'87cbd116c75ced1b075bf266f2455d50'
'1bc70e7e3ea6a0178891d984f0451b3c')
_architectures="x86_64-w64-mingw32 i686-w64-mingw32"
# Helper functions for the split builds
isStatic() {
[ $pkgname = "mingw-w64-qt5-base-static" ]
}
isOpenGL() {
[ $pkgname = "mingw-w64-qt5-base-opengl" ]
}
isStatic && depends+=("mingw-w64-qt5-base")
! isOpenGL && depends+=("mingw-w64-angleproject")
isOpenGL && provides+=("mingw-w64-qt5-base")
isOpenGL && conflicts+=("mingw-w64-qt5-base")
prepare() {
cd "${srcdir}/${_pkgfqn}"
# When building Qt as static library some files have a different content
# when compared to the static library. Merge those changes manually.
# This patch also applies some additional changes which are required to make
# linking against the static version of Qt work without any manual fiddling
patch -p0 -i ../qt5-merge-static-and-shared-library-trees.patch
if ! isOpenGL; then
# Add support for Angle
patch -p1 -i ../add-angle-support.patch
# Make sure our external Angle package is used instead of the bundled one
patch -p1 -i ../use-external-angle-library.patch
fi
# opengl to many sections error
isOpenGL && patch -p0 -i ../fix-opengl-to-many-sections.patch
# Make sure the .pc files of the Qt5 modules are installed correctly
patch -p0 -i ../qt5-workaround-pkgconfig-install-issue.patch
# Prevents resource files from being added to the LIBS parameter
# This solves an issue where the generated pkg-config files contained
# invalid Libs.private references like .obj/debug/Qt5Cored_resource_res.o
patch -p1 -i ../qt5-dont-add-resource-files-to-qmake-libs.patch
# qmake generates the pkgconfig .pc files two times, once for the
# release build and once for the debug build (which we're not actually
# building in this package). For both generations the exact same
# pkgconfig file name is used. This causes references to the debug
# build ending up in the .pc files which are unwanted
# Prevent this from happening by giving the pkgconfig .pc
# files for the debug build an unique file name
patch -p1 -i ../qt5-prevent-debug-library-names-in-pkgconfig-files.patch
# Fix qmake to create implibs with .dll.a extension for MinGW
patch -p1 -i ../qt5-qmake-implib-dll-a.patch
# As of Qt 5.4.1 the detection of the static DBus and Harfbuzz libraries got broken
patch -p1 -i ../qt5-fix-static-dbus-detection.patch
patch -p1 -i ../qt5-fix-static-harfbuzz-detection.patch
# Patch the win32-g++ mkspecs profile to match our environment
patch -p1 -i ../qt5-use-win32-g++-mkspecs-profile.patch
# The bundled pcre is built as static library by default
# As we're not using the bundled copy but our own copy
# we need to do some fiddling to fix compilation issues
# when trying to build static qmake projects
patch -p1 -i ../qt5-qtbase-fix-linking-against-static-pcre.patch
# Make sure the qtmain (static) library doesn't conflict with the one
# provided by the mingw-qt (qt4) package. The mkspecs profile is already
# updated by patch100 to reflect this change
# https://bugzilla.redhat.com/show_bug.cgi?id=1092465
patch -p1 -i ../qt5-rename-qtmain-to-qt5main.patch
# Upstream always wants the host libraries to be static instead of
# shared libraries. This causes issues and is against the Fedora
# packaging guidelines so disable this 'feature'
patch -p0 -i ../qt5-dont-build-host-libs-static.patch
# Build host tools with rpath enabled
# We have to use rpath here as the library which the
# various tools depend on (libQt5Bootstrap.so) resides
# in the folder /usr/${_arch}/lib
# We can't use the regular %%_libdir for this as we
# want to avoid conflicts with the native qt5 packages
patch -p1 -i ../qt5-enable-rpath-for-host-tools.patch
# Build host libs with system zlib. This patch cannot be upstreamed as-is
# due to the other host-libs patches.
patch -p1 -i ../qt5-use-system-zlib-in-host-libs.patch
# Workaround a compatibility issue because we are using an older version of ANGLE in Fedora
# Upgrading the mingw-angleproject package isn't possible for now because mingw-qt5-qtwebkit doesn't support the latest ANGLE yet..
#
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:15: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
# ^
# /home/erik/fedora/mingw-qt5-qtbase/qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp:376:53: error: 'EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE' was not declared in this scope
# EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE, EGL_NONE }
patch -p1 -b -i ../qt5-disable-angle-opengl-testcode.patch
patch configure ../qt5-fix-QSemaphore-problem.patch
# QTBUG-49174 Prevent warning output when QWebView loads QNetworkRequest
patch -p1 -b -i ../a91c40868bbdc1b2d2dd3b5f8b47aae9e8589a81.diff
isStatic && patch -p0 -i ../fix-static-psql-mysql.patch
# Make sure the Qt5 build system uses our external ANGLE library
rm -rf src/3rdparty/angle include/QtANGLE/{EGL,GLES2,KHR}
# As well as our external PCRE library and zlib
rm -rf src/3rdparty/{pcre,zlib}
}
build() {
cd "${srcdir}/${_pkgfqn}"
# Setup flags
export CFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
export CXXFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
unset LDFLAGS
for _arch in ${_architectures}; do
# Phonon is disabled for now because we lack the directx headers
# The odd paths for the -hostbindir argument are on purpose
# The qtchooser tool assumes that the tools 'qmake', 'moc' and others
# are all available in the same folder with these exact file names
# To prevent conflicts with the mingw-qt (Qt4) package we have
# to put these tools in a dedicated folder
qt_configure_args="\
-xplatform win32-g++ \
-optimized-qmake \
-verbose \
-opensource \
-confirm-license \
-force-pkg-config \
-force-debug-info \
-audio-backend \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-sqlite \
-system-harfbuzz \
-no-fontconfig \
-iconv \
-openssl \
-dbus-linked \
-no-glib \
-no-gtkstyle \
-no-icu \
-release \
-nomake examples \
-make tools \
-hostprefix /usr/${_arch} \
-hostdatadir /usr/${_arch}/lib/qt \
-hostbindir /usr/${_arch}/lib/qt/bin \
-prefix /usr/${_arch} \
-bindir /usr/${_arch}/bin \
-archdatadir /usr/${_arch}/lib/qt \
-datadir /usr/${_arch}/share/qt \
-docdir /usr/${_arch}/share/doc/qt \
-examplesdir /usr/${_arch}/share/qt/examples \
-headerdir /usr/${_arch}/include/qt \
-libdir /usr/${_arch}/lib \
-plugindir /usr/${_arch}/lib/qt/plugins \
-sysconfdir /usr/${_arch}/etc \
-translationdir /usr/${_arch}/share/qt/translations \
-device-option CROSS_COMPILE=${_arch}-"
# fix include directory of dbus
qt_configure_args+=" $(${_arch}-pkg-config --cflags-only-I dbus-1 --cflags)"
isOpenGL && qt_configure_args+=' -opengl desktop'
isStatic && qt_configure_args+=' -opengl no'
unset PKG_CONFIG_PATH
if ! isStatic; then
export QT_LFLAGS_MYSQL="-L/usr/${_arch}/lib -lmysql"
fi
# Qt doesn't detect mysql correctly, so use this:
export QT_CFLAGS_MYSQL="-I/usr/${_arch}/include/mariadb"
#export QT_LFLAGS_MYSQL_R="-lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto"
# Hardcode MySQL flags into configure (really nice solution :( )
sed -e "s|^QT_CFLAGS_MYSQL=.*$|QT_CFLAGS_MYSQL=\"${QT_CFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
sed -e "s|^QT_LFLAGS_MYSQL=.*$|QT_LFLAGS_MYSQL=\"${QT_LFLAGS_MYSQL}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
#sed -e "s|^QT_LFLAGS_MYSQL_R=.*$|QT_LFLAGS_MYSQL_R=\"${QT_LFLAGS_MYSQL_R}\"|g" -i "${srcdir}/${_pkgfqn}/configure"
qt_configure_args_mysql="-mysql_config /this/file/should/not/exist"
mkdir ../build-${_arch} && pushd ../build-${_arch}
if isStatic; then
../${_pkgfqn}/configure -static $qt_configure_args $qt_configure_args_mysql
make
else
# The LD_LIBRARY_PATH override is needed because libQt5Bootstrap* are shared
# libraries which various compiled tools (like moc) use. As the libQt5Bootstrap*
# libraries aren't installed at this point yet, we have to workaround this
../${_pkgfqn}/configure -shared $qt_configure_args $qt_configure_args_mysql
LD_LIBRARY_PATH=`pwd`/lib make
fi
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "$srcdir/${_pkgfqn}"
make install -C ../build-${_arch} INSTALL_ROOT="${pkgdir}"
if isStatic; then
# Drop the qtmain and Qt5Bootstrap static libraries from the static tree as
# they are already part of the main tree
rm -f "${pkgdir}/usr/${_arch}/lib/libqt5main"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5OpenGLExtensions"*
rm -f "${pkgdir}/usr/${_arch}/lib/libQt5PlatformSupport"*
# Also keep various Qt5 plugins to be used in static builds
# https://bugzilla.redhat.com/show_bug.cgi?id=1257630
mv "${pkgdir}/usr/${_arch}/lib/qt/plugins/"*/*.a "${pkgdir}/usr/${_arch}/lib/"
# we want to keep a couple pri files not found in base
mv "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules/qt_plugin_"*.pri "${pkgdir}/usr/${_arch}"
# Delete duplicate files that are in the base package
rm -fR "${pkgdir}/usr/${_arch}/"{include,share}
rm -fR "${pkgdir}/usr/${_arch}/lib/"{qt/bin,qt/mkspecs,pkgconfig,cmake}
# move pri files back
mkdir -p "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
mv "${pkgdir}/usr/${_arch}/"*.pri "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules"
else # not static => shared release
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
# Add qtchooser support
[ "${_arch}" = "i686-w64-mingw32" ] && mingwn='mingw32' || mingwn='mingw64'
mkdir -p "${pkgdir}/etc/xdg/qtchooser"
echo "/usr/${_arch}/lib/qt/bin" > "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
echo "/usr/${_arch}/lib" >> "${pkgdir}/etc/xdg/qtchooser/$mingwn-qt5.conf"
# Manually install qmake and other native tools so we don't depend anymore on
# the version of the native system Qt and also fix issues as illustrated at
# http://stackoverflow.com/questions/6592931/building-for-windows-under-linux-using-qt-creator
# Also make sure the tools can be found by CMake
mkdir -p "${pkgdir}/usr/bin"
for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt.pl; do
ln -s ../${_arch}/lib/qt/bin/${tool} "${pkgdir}/usr/bin/${_arch}-${tool}-qt5"
done
fi
# The pkg-config files for Qt5Bootstrap aren't interesting as this particular
# library only contains native code and not cross-compiled code
rm -f "${pkgdir}/usr/${_arch}/lib/pkgconfig/Qt5Bootstrap.pc"
# remove doc
rm -rf "${pkgdir}/usr/${_arch}/share/doc"
# And finaly, strip the binaries
if ! isStatic; then
strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/libQt5Bootstrap"{,DBus}.so.${pkgver}
fi
# keeping prl files for base build since qbs seems to need them.
if isStatic; then
rm -f "${pkgdir}/usr/${_arch}/lib"{,/qt/plugins/*}/*.prl
fi
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,16 @@
diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp
index c1956ae..76c2f57 100644
--- a/src/network/access/qnetworkreplyhttpimpl.cpp
+++ b/src/network/access/qnetworkreplyhttpimpl.cpp
@@ -1679,8 +1679,9 @@ void QNetworkReplyHttpImplPrivate::_q_startOperation()
#endif
} else {
#ifndef QT_NO_BEARERMANAGEMENT
- QObject::connect(session.data(), SIGNAL(stateChanged(QNetworkSession::State)),
- q, SLOT(_q_networkSessionStateChanged(QNetworkSession::State)), Qt::QueuedConnection);
+ if (session)
+ QObject::connect(session.data(), SIGNAL(stateChanged(QNetworkSession::State)),
+ q, SLOT(_q_networkSessionStateChanged(QNetworkSession::State)), Qt::QueuedConnection);
#endif
}

View File

@ -0,0 +1,46 @@
diff -U 3 -r a/configure b/configure
--- a/configure 2015-06-29 14:03:05.000000000 -0600
+++ b/configure 2015-07-18 11:14:30.312317765 -0600
@@ -5081,7 +5081,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -6072,6 +6072,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -7077,7 +7082,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
diff -U 3 -r a/src/plugins/platforms/windows/qwindowsglcontext.cpp b/src/plugins/platforms/windows/qwindowsglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowsglcontext.cpp 2015-07-18 11:16:05.767172673 -0600
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

View File

@ -0,0 +1,19 @@
--- src.orig/3rdparty/angle/src/compiler/glslang.y 2014-01-02 11:53:56.393615041 +0100
+++ src/3rdparty/angle/src/compiler/glslang.y 2014-01-02 12:06:10.904972303 +0100
@@ -47,6 +47,7 @@ WHICH GENERATES THE GLSL ES PARSER (glsl
%pure-parser
%parse-param {TParseContext* context}
%locations
+%lex-param {YYLEX_PARAM}
%code requires {
#define YYLTYPE TSourceLoc
@@ -90,7 +91,7 @@ extern void yyerror(YYLTYPE* yylloc, TPa
#define YYLLOC_DEFAULT(Current, Rhs, N) \
do { \
- if (YYID(N)) { \
+ if (N) { \
(Current).first_file = YYRHSLOC(Rhs, 1).first_file; \
(Current).first_line = YYRHSLOC(Rhs, 1).first_line; \
(Current).last_file = YYRHSLOC(Rhs, N).last_file; \

View File

@ -0,0 +1,10 @@
--- src/gui/opengl/opengl.pri.orig 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/opengl/opengl.pri 2015-02-09 10:48:48.484071754 -0700
@@ -4,6 +4,7 @@
contains(QT_CONFIG, opengles2):CONFIG += opengles2
contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
+ QMAKE_CXXFLAGS+="-Wa,-mbig-obj"
HEADERS += opengl/qopengl.h \
opengl/qopengl_p.h \

View File

@ -0,0 +1,15 @@
--- config.tests/unix/psql/psql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/psql/psql.pro 2015-03-09 21:45:44.746755052 -0600
@@ -1,3 +1,3 @@
SOURCES = psql.cpp
CONFIG -= qt dylib
-LIBS *= -lpq
+LIBS *= -lpq -lintl -liconv -lssl -lcrypto -lwldap32 -lshfolder -lwsock32 -lws2_32 -lsecur32 -lgdi32
--- config.tests/unix/mysql/mysql.pro.orig 2015-02-16 21:56:55.000000000 -0700
+++ config.tests/unix/mysql/mysql.pro 2015-03-09 21:38:59.930405876 -0600
@@ -1,3 +1,3 @@
SOURCES = mysql.cpp
CONFIG -= qt dylib
-LIBS += -lmysqlclient
+LIBS += -lmariadbclient -lws2_32 -lpthread -lz -lm -lssl -lcrypto

View File

@ -0,0 +1,22 @@
--- qt-stable/qtbase/src/angle/src/compiler/translator_common.pro.orig 2013-06-18 08:49:51.975288500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/translator_common.pro 2013-06-18 08:50:06.047321000 +0000
@@ -92,7 +92,7 @@
$$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}_lex.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}_lex.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C
--- qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro.orig 2013-06-18 08:50:54.314442500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/preprocessor/preprocessor.pro 2013-06-18 08:51:52.606574000 +0000
@@ -43,7 +43,7 @@
$$ANGLE_DIR/src/compiler/preprocessor/Token.cpp
# NOTE: 'win_flex' and 'bison' can be found in qt5/gnuwin32/bin
-flex.commands = $$addGnuPath(win_flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
+flex.commands = $$addGnuPath(flex) --noline --nounistd --outfile=${QMAKE_FILE_BASE}.cpp ${QMAKE_FILE_NAME}
flex.output = ${QMAKE_FILE_BASE}.cpp
flex.input = FLEX_SOURCES
flex.dependency_type = TYPE_C

View File

@ -0,0 +1,44 @@
--- configure.orig 2014-12-05 09:24:14.000000000 -0700
+++ configure 2014-12-11 09:24:32.545799224 -0700
@@ -4765,7 +4765,7 @@
fi
if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
if compileTest x11/opengl "OpenGL"; then
- CFG_OPENGL=desktop
+ CFG_OPENGL=angle
elif compileTest unix/opengles2 "OpenGL ES 2.0"; then
CFG_OPENGL=es2
else
@@ -5632,6 +5632,11 @@
QT_CONFIG="$QT_CONFIG opengles2"
fi
+if [ "$CFG_OPENGL" = "angle" ]; then
+ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
+ QT_CONFIG="$QT_CONFIG opengles2 egl angle"
+fi
+
if [ "$CFG_SHARED" = "yes" ]; then
QT_CONFIG="$QT_CONFIG shared"
QTCONFIG_CONFIG="$QTCONFIG_CONFIG shared"
@@ -6588,7 +6593,7 @@
report_support " NIS ...................." "$CFG_NIS"
report_support " OpenGL / OpenVG:"
report_support " EGL .................." "$CFG_EGL"
-report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+"
+report_support " OpenGL ..............." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.0+" angle "ANGLE"
report_support " OpenVG ..............." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
if [ -n "$PKG_CONFIG" ]; then
--- src/plugins/platforms/windows/qwindowsglcontext.cpp.orig 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowsglcontext.cpp 2014-12-11 09:27:37.364281924 -0700
@@ -45,7 +45,9 @@
#include <algorithm>
#include <wingdi.h>
+#ifndef QT_OPENGL_ES_2
#include <GL/gl.h>
+#endif
// #define DEBUG_GL

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp.external_angle 2015-06-29 22:04:40.000000000 +0200
+++ qtbase-opensource-src-5.5.0/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-08-05 21:37:55.922142528 +0200
@@ -366,7 +366,7 @@
EGLDisplay display = EGL_NO_DISPLAY;
EGLint major = 0;
EGLint minor = 0;
-#ifdef EGL_ANGLE_platform_angle
+#if 0
if (libEGL.eglGetPlatformDisplayEXT
&& (preferredType & QWindowsOpenGLTester::AngleBackendMask)) {
const EGLint anglePlatformAttributes[][5] = {

View File

@ -0,0 +1,11 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp.orig 2014-01-04 21:18:07.413328813 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/win32/mingw_make.cpp 2014-01-04 21:18:55.740126515 +0100
@@ -243,7 +243,7 @@
processVars();
- project->values("QMAKE_LIBS") += project->values("RES_FILE");
+ project->values("OBJECTS") += project->values("RES_FILE");
if (project->isActiveConfig("dll")) {
QString destDir = "";

View File

@ -0,0 +1,10 @@
--- qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf.orig 2013-08-01 01:21:52.461910182 +0200
+++ qtbase-opensource-src-5.1.0/mkspecs/features/qt_app.prf 2013-08-01 01:22:46.777801052 +0200
@@ -20,6 +20,7 @@
QMAKE_LFLAGS += $$QMAKE_LFLAGS_GCSECTIONS
host_build: QT -= gui # no host tool will ever use gui
+host_build: QT_CONFIG += rpath
host_build:force_bootstrap {
!build_pass: CONFIG += release
contains(QT, core(-private)?|xml) {

View File

@ -0,0 +1,9 @@
@@ -4456,7 +4456,7 @@
if compileTest unix/ipc_posix "ipc_posix" ; then
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_POSIX_IPC"
else
- if [ "$XPLATFORM_ANDROID" = "no" ] ; then
+ if [ "$XPLATFORM_ANDROID" = "no"] && ["$XPLATFORM_MINGW" = "no" ] ; then
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SYSTEMSEMAPHORE QT_NO_SHAREDMEMORY"
fi
fi

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp.orig 2015-03-08 17:05:21.216593135 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/dbus/dbus.cpp 2015-03-08 17:06:35.276826201 +0100
@@ -31,6 +31,10 @@
**
****************************************************************************/
+#ifdef QT_STATIC
+#define DBUS_STATIC_BUILD
+#endif
+
#define DBUS_API_SUBJECT_TO_CHANGE
#include <dbus/dbus.h>

View File

@ -0,0 +1,7 @@
--- qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro.orig 2015-03-08 17:47:58.522991158 +0100
+++ qtbase-opensource-src-5.4.1/config.tests/unix/harfbuzz/harfbuzz.pro 2015-03-08 17:48:19.491340185 +0100
@@ -1,3 +1,3 @@
SOURCES = harfbuzz.cpp
CONFIG -= qt dylib
-LIBS += -lharfbuzz
+LIBS += -lharfbuzz -lglib-2.0 -lws2_32 -lole32 -lwinmm -lshlwapi -lintl -liconv

View File

@ -0,0 +1,48 @@
--- mkspecs/features/qt_functions.prf.orig 2012-09-05 23:30:01.612735271 +0200
+++ mkspecs/features/qt_functions.prf 2012-09-05 23:32:40.030869399 +0200
@@ -134,6 +134,19 @@
}
$$2 += $$LINKAGE
+
+ win32:CONFIG(static) {
+ isEqual(MODULE_NAME, Qt5Core) {
+ $$2 += $$QMAKE_LIBS_CORE
+ } else:isEqual(MODULE_NAME, Qt5Gui) {
+ $$2 += $$QMAKE_LIBS_GUI
+ } else:isEqual(MODULE_NAME, Qt5Network) {
+ $$2 += $$QMAKE_LIBS_NETWORK
+ } else:isEqual(MODULE_NAME, Qt5OpenGL) {
+ $$2 += $$QMAKE_LIBS_OPENGL
+ }
+ }
+
export($$2)
!isEmpty(QMAKE_LSB) {
--- mkspecs/features/default_post.prf.orig 2012-09-05 23:28:56.827501401 +0200
+++ mkspecs/features/default_post.prf 2012-09-05 23:29:31.617923080 +0200
@@ -47,3 +50,8 @@
QMAKE_INCDIR += $$QMAKE_INCDIR_POST
QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
+
+win32:contains(CONFIG, static) {
+ DEFINES += QT_STATIC
+ QMAKE_LFLAGS += -static
+}
--- configure.orig 2012-12-10 23:51:02.920255366 +0100
+++ configure 2012-12-10 23:55:58.101753703 +0100
@@ -6193,6 +6193,12 @@
}
QT_CONFIG += $QT_CONFIG
+contains(CONFIG, static) {
+ CONFIG -= shared
+ QT_CONFIG += static jpeg gif
+ QT_CONFIG -= shared
+}
+
#versioning
QT_VERSION = $QT_VERSION
QT_MAJOR_VERSION = $QT_MAJOR_VERSION

View File

@ -0,0 +1,12 @@
--- qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp.orig 2014-01-03 01:30:23.631353708 +0100
+++ qtbase-opensource-src-5.2.0/qmake/generators/makefile.cpp 2014-01-03 01:32:37.888625966 +0100
@@ -3168,6 +3168,9 @@
if (dot != -1)
ret = ret.left(dot);
}
+ if (project->isActiveConfig("debug")) {
+ ret += "d";
+ }
ret += Option::pkgcfg_ext;
QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString();
if(!subdir.isEmpty()) {

View File

@ -0,0 +1,33 @@
--- a/qmake/generators/win32/mingw_make.cpp 2013-08-25 13:04:06.000000000 -0500
+++ b/qmake/generators/win32/mingw_make.cpp 2014-01-02 01:24:31.640046700 -0600
@@ -58,7 +58,7 @@
QString MingwMakefileGenerator::getLibTarget()
{
- return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".a");
+ return QString("lib" + project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".dll.a");
}
QString MingwMakefileGenerator::getManifestFileForRcFile() const
@@ -250,7 +250,7 @@
if(!project->first("DESTDIR").isEmpty())
destDir = Option::fixPathToTargetOS(project->first("DESTDIR") + Option::dir_sep, false, false);
project->values("MINGW_IMPORT_LIB").prepend(destDir + "lib" + project->first("TARGET")
- + project->first("TARGET_VERSION_EXT") + ".a");
+ + project->first("TARGET_VERSION_EXT") + ".dll.a");
project->values("QMAKE_LFLAGS").append(QString("-Wl,--out-implib,") + fileVar("MINGW_IMPORT_LIB"));
}
--- a/mkspecs/features/create_cmake.prf.cmake 2013-10-22 10:49:28.000000000 +0200
+++ b/mkspecs/features/create_cmake.prf 2013-10-23 21:38:02.959762089 +0200
@@ -207,8 +207,8 @@
CMAKE_PRL_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.prl
CMAKE_PRL_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.prl
} else {
- CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.a
- CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a
+ CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.dll.a
+ CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.dll.a
}
} else {
CMAKE_WINMAIN_FILE_LOCATION_DEBUG = qtmain$${QT_LIBINFIX}d.lib

View File

@ -0,0 +1,13 @@
--- qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp.orig 2013-07-11 08:23:02.687691337 +0200
+++ qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp 2013-07-11 08:23:27.231900674 +0200
@@ -47,6 +47,10 @@
#include <QtCore/qatomic.h>
#include <QtCore/qdatastream.h>
+#ifdef QT_STATIC
+#define PCRE_STATIC
+#endif
+
#include <pcre.h>
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,35 @@
--- qtbase-opensource-src-5.2.1/src/winmain/winmain.pro.orig 2014-04-29 18:51:05.206296152 +0200
+++ qtbase-opensource-src-5.2.1/src/winmain/winmain.pro 2014-04-29 18:51:18.737512221 +0200
@@ -2,7 +2,7 @@
!win32:error("$$_FILE_ is intended only for Windows!")
TEMPLATE = lib
-TARGET = qtmain
+TARGET = qt5main
DESTDIR = $$QT.core.libs
CONFIG += static
--- qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf.orig 2014-04-29 18:53:49.511932034 +0200
+++ qtbase-opensource-src-5.2.1/mkspecs/features/create_cmake.prf 2014-04-29 18:54:44.515819011 +0200
@@ -203,8 +203,8 @@
CMAKE_LIB_FILE_LOCATION_RELEASE = $${CMAKE_QT_STEM}.dll
mingw {
- CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqtmain$${QT_LIBINFIX}d.a
- CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqtmain$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqt5main$${QT_LIBINFIX}.a
+ CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqt5main$${QT_LIBINFIX}.a
!isEmpty(CMAKE_STATIC_TYPE) {
CMAKE_STATIC_WINDOWS_BUILD = "true"
--- qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf.qtmain 2014-07-05 14:18:23.211155781 +0200
+++ qtbase-opensource-src-5.3.1/mkspecs/features/win32/windows.prf 2014-07-05 14:18:46.045390147 +0200
@@ -6,7 +6,7 @@
mingw:DEFINES += QT_NEEDS_QMAIN
qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) {
- isEqual(entryLib, -lqtmain): {
+ isEqual(entryLib, -lqt5main): {
!contains(QMAKE_DEFAULT_LIBDIRS, $$QT.core.libs): \
QMAKE_LIBS += -L$$QT.core.libs
CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d

View File

@ -0,0 +1,113 @@
--- src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-05 09:24:36.000000000 -0700
+++ src/gui/Qt5GuiConfigExtras.cmake.in 2014-12-11 10:19:51.599972209 -0700
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
--- src/gui/gui.pro 2014-12-05 09:24:35.000000000 -0700
+++ src/gui/gui.pro 2014-12-11 10:22:37.644366784 -0700
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -33,6 +27,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
@@ -55,13 +53,21 @@
contains(QT_CONFIG, angle) {
CMAKE_GL_INCDIRS = $$CMAKE_INCLUDE_DIR
CMAKE_ANGLE_EGL_DLL_RELEASE = libEGL.dll
- CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
CMAKE_ANGLE_GLES2_DLL_RELEASE = libGLESv2.dll
- CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
CMAKE_ANGLE_EGL_DLL_DEBUG = libEGLd.dll
- CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
CMAKE_ANGLE_GLES2_DLL_DEBUG = libGLESv2d.dll
- CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+
+ win32-g++* {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.dll.a
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.dll.a
+ } else {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+ }
CMAKE_QT_OPENGL_IMPLEMENTATION = GLESv2
} else {
--- src/opengl/opengl.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/opengl/opengl.pro 2014-12-11 10:15:45.884805707 -0700
@@ -13,6 +13,10 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
HEADERS += qgl.h \
qgl_p.h \
qglcolormap.h \
--- src/plugins/platforms/windows/windows.pri 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/windows.pri 2014-12-11 10:13:45.228261276 -0700
@@ -3,6 +3,7 @@
!wince: LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
--- src/src.pro 2014-12-05 09:24:31.000000000 -0700
+++ src/src.pro 2014-12-11 10:06:14.882845813 -0700
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype
--- src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-05 09:24:37.000000000 -0700
+++ src/plugins/platforms/windows/qwindowseglcontext.cpp 2014-12-11 20:07:27.099190408 -0700
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE

View File

@ -0,0 +1,11 @@
--- a/src/tools/bootstrap/bootstrap.pro 2014-01-01 13:22:42.367935800 -0600
+++ b/src/tools/bootstrap/bootstrap.pro 2014-01-02 23:38:20.707687700 -0600
@@ -145,7 +145,7 @@
../../corelib/io/qstandardpaths_win.cpp
}
-if(contains(QT_CONFIG, zlib)|cross_compile):include(../../3rdparty/zlib.pri)
+if(contains(QT_CONFIG, zlib)):include(../../3rdparty/zlib.pri)
else:include(../../3rdparty/zlib_dependency.pri)
win32:LIBS += -luser32 -lole32 -ladvapi32 -lshell32

View File

@ -0,0 +1,58 @@
--- qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf.orig 2015-06-29 22:05:10.000000000 +0200
+++ qtbase-opensource-src-5.5.0/mkspecs/win32-g++/qmake.conf 2015-08-05 19:53:33.349194327 +0200
@@ -25,7 +25,7 @@
QMAKE_LEXFLAGS =
QMAKE_YACC = byacc
QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS = -pipe -fno-keep-inline-dllexport
+QMAKE_CFLAGS = -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 --param=ssp-buffer-size=4 -fno-keep-inline-dllexport
QMAKE_CFLAGS_DEPS = -M
QMAKE_CFLAGS_WARN_ON = -Wall -Wextra
QMAKE_CFLAGS_WARN_OFF = -w
@@ -67,10 +67,10 @@
QMAKE_LINK = $${CROSS_COMPILE}g++
QMAKE_LINK_C = $${CROSS_COMPILE}gcc
-QMAKE_LFLAGS =
+QMAKE_LFLAGS = -g
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
QMAKE_LFLAGS_EXCEPTIONS_OFF =
-QMAKE_LFLAGS_RELEASE = -Wl,-s
+QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
@@ -84,21 +84,26 @@
QMAKE_EXTENSION_STATICLIB = a
QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32
-QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32
-QMAKE_LIBS_NETWORK = -lws2_32
+QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lpcre16
+QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng -lharfbuzz -lglib-2.0 -lintl -lwinmm
+QMAKE_LIBS_NETWORK = -lws2_32 -lcrypt32 -ldnsapi
QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2 = -llibEGL -llibGLESv2 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2_DEBUG = -llibEGLd -llibGLESv2d -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -ld3d9 -ldxguid -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2_DEBUG = $(QMAKE_LIBS_OPENGL_ES2)
QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
-QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
+QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqt5main
-QMAKE_IDL = midl
+QMAKE_IDL = $${CROSS_COMPILE}widl
QMAKE_LIB = $${CROSS_COMPILE}ar -ru
QMAKE_RC = $${CROSS_COMPILE}windres
+QMAKE_DLLTOOL = $${CROSS_COMPILE}dlltool
+QMAKE_LRELEASE = $${CROSS_COMPILE}lrelease-qt5
QMAKE_STRIP = $${CROSS_COMPILE}strip
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
+
+PKG_CONFIG = $${CROSS_COMPILE}pkg-config
+
load(qt_config)

View File

@ -0,0 +1,46 @@
--- qmake/generators/makefile.cpp.pkgconfig 2013-01-29 20:03:12.000000000 +0100
+++ qmake/generators/makefile.cpp 2013-03-26 19:18:07.480722316 +0100
@@ -3102,7 +3102,7 @@
}
QString
-MakefileGenerator::pkgConfigFileName(bool fixify)
+MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
{
QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString();
if (ret.isEmpty()) {
@@ -3134,7 +3134,11 @@
if(fixify) {
if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
ret.prepend(project->first("DESTDIR").toQString());
- ret = fileFixify(ret, FileFixifyBackwards);
+ if (onlyPrependDestdir) {
+ ret = Option::fixPathToLocalOS(ret);
+ } else {
+ ret = fileFixify(ret, FileFixifyBackwards);
+ }
}
return ret;
}
--- qmake/generators/makefile.h.orig 2013-03-26 19:17:37.624199870 +0100
+++ qmake/generators/makefile.h 2013-03-26 19:17:56.327527157 +0100
@@ -102,7 +102,7 @@
virtual void writeDefaultVariables(QTextStream &t);
QString pkgConfigPrefix() const;
- QString pkgConfigFileName(bool fixify=true);
+ QString pkgConfigFileName(bool fixify=true, bool onlyPrependDestdir = false);
QString pkgConfigFixPath(QString) const;
void writePkgConfigFile(); // for pkg-config
--- qmake/generators/win32/winmakefile.cpp.orig 2013-03-26 19:05:13.398183953 +0100
+++ qmake/generators/win32/winmakefile.cpp 2013-03-26 19:15:02.800490466 +0100
@@ -822,7 +822,7 @@
}
if(!ret.isEmpty())
ret += "\n\t";
- ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true), dst_pc);
+ ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true, true), dst_pc);
if(!uninst.isEmpty())
uninst.append("\n\t");
uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc));

View File

@ -0,0 +1,92 @@
diff -U 3 -r a/src/gui/gui.pro b/src/gui/gui.pro
--- a/src/gui/gui.pro 2015-06-29 14:04:55.000000000 -0600
+++ b/src/gui/gui.pro 2015-07-18 10:50:02.228227482 -0600
@@ -17,12 +17,6 @@
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
-
load(qt_module)
# Code coverage with TestCocoon
@@ -35,6 +29,10 @@
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
diff -U 3 -r a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
--- a/src/gui/Qt5GuiConfigExtras.cmake.in 2015-06-29 14:04:51.000000000 -0600
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in 2015-07-18 10:51:09.666053970 -0600
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
diff -U 3 -r a/src/opengl/opengl.pro b/src/opengl/opengl.pro
--- a/src/opengl/opengl.pro 2015-06-29 14:04:05.000000000 -0600
+++ b/src/opengl/opengl.pro 2015-07-18 10:46:46.588388411 -0600
@@ -12,6 +12,9 @@
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
HEADERS += qgl.h \
qgl_p.h \
diff -U 3 -r a/src/plugins/platforms/windows/qwindowseglcontext.cpp b/src/plugins/platforms/windows/qwindowseglcontext.cpp
--- a/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/qwindowseglcontext.cpp 2015-07-18 10:52:29.667410627 -0600
@@ -39,7 +39,7 @@
#include <QtGui/QOpenGLContext>
#if defined(QT_OPENGL_ES_2_ANGLE) || defined(QT_OPENGL_DYNAMIC)
-# include <QtANGLE/EGL/eglext.h>
+# include <EGL/eglext.h>
#endif
QT_BEGIN_NAMESPACE
diff -U 3 -r a/src/plugins/platforms/windows/windows.pri b/src/plugins/platforms/windows/windows.pri
--- a/src/plugins/platforms/windows/windows.pri 2015-06-29 14:04:40.000000000 -0600
+++ b/src/plugins/platforms/windows/windows.pri 2015-07-18 10:53:45.585348009 -0600
@@ -3,6 +3,7 @@
!wince*:LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
diff -U 3 -r a/src/src.pro b/src/src.pro
--- a/src/src.pro 2015-06-29 14:05:06.000000000 -0600
+++ b/src/src.pro 2015-07-18 10:43:01.698195194 -0600
@@ -155,10 +155,6 @@
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype

View File

@ -0,0 +1,59 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtdeclarative
pkgname=mingw-w64-qt5-declarative
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="Classes for QML and JavaScript languages (mingw-w64)"
depends=(mingw-w64-qt5-base)
makedepends=(mingw-w64-gcc python)
options=(!strip !buildflags staticlibs)
groups=(mingw-w64-qt mingw-w64-qt5)
license=("custom, FDL, GPL3, LGPL")
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-build-qmldevtools-as-shared-library.patch")
md5sums=('b7997c9d8df4ea60945229883f9ce8ed'
'6c445ba7713b69d90f52bb2242303853')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
patch -p1 -i "${srcdir}"/qt5-build-qmldevtools-as-shared-library.patch
}
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
# Something is messed up with Qt5Bootstrap
make qmake_all
find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 /usr/lib/libm.so -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \;
find . -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 /usr/lib/libm.so -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \;
find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5QmlDevTools|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5QmlDevTools|g" {} \;
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="$pkgdir" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
rm "${pkgdir}/usr/${_arch}/lib/pkgconfig/Qt5QmlDevTools.pc"
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
popd
done
}

View File

@ -0,0 +1,41 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtgraphicaleffects
pkgname="mingw-w64-qt5-graphicaleffects"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Graphical effects for use with Qt Quick 2 (mingw-w64)"
depends=('mingw-w64-qt5-declarative')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('LGPL')
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-$pkgver"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('2fb95cecb2ab0542cb0b5847c65600c3')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
popd
done
}

View File

@ -0,0 +1,48 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtimageformats
pkgname="mingw-w64-qt5-imageformats"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Plugins for additional image formats: TIFF, MNG, TGA, WBMP (mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('f935b629184200b155a3048ee67c81ab')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/qt/plugins/imageformats/"*.dll
popd
done
}

View File

@ -0,0 +1,47 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
_qt_module=qtlocation
pkgname=mingw-w64-qt5-location
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="Provides access to position, satellite and area monitoring classes (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)
makedepends=(mingw-w64-gcc mingw-w64-qt5-quick1)
options=(!strip !buildflags staticlibs)
groups=(mingw-w64-qt mingw-w64-qt5)
license=("custom, FDL, GPL3, LGPL")
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('9e0c0ad76f520ba89da730b8ff601cc2')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
popd
done
}

View File

@ -0,0 +1,60 @@
# Maintainer: Martchus <martchus@gmx.net>
_qt_module=qtmultimedia
pkgname=mingw-w64-qt5-multimedia
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="Classes for audio, video, radio and camera functionality (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)
makedepends=(mingw-w64-gcc)
options=(!strip !buildflags staticlibs)
groups=(mingw-w64-qt mingw-w64-qt5)
license=("custom, FDL, GPL3, LGPL")
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
"qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch"
"qtmultimedia-dont-use-case-sensitive-headers.patch")
md5sums=('244baff13a02ebc697e5b5e2290088d0'
'c21ff895212a17dc0a748aeadb67601d'
'7ecd5ee2735440472fae4b7d7a32879e')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
# Some files #include <dshow.h>
# This is a C header which also #include's stdio.h which adds a #define vsnprintf
# This #define vsnprint conflicts with QtCore/qstring.h so reorder the includes
# a bit to prevent this situation
patch -p0 -i ../qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch
# MinGW headers are case sensitive under Linux
patch -p1 -i ../qtmultimedia-dont-use-case-sensitive-headers.patch
}
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro -Wall
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
popd
done
}

View File

@ -0,0 +1,30 @@
--- src/multimedia/video/qvideosurfaceformat.h.orig 2013-07-14 01:14:41.813669200 +0200
+++ src/multimedia/video/qvideosurfaceformat.h 2013-07-14 01:14:58.463944255 +0200
@@ -46,6 +46,7 @@
#include <QtCore/qpair.h>
#include <QtCore/qshareddata.h>
#include <QtCore/qsize.h>
+#include <QtCore/qstring.h>
#include <QtGui/qimage.h>
#include <QtMultimedia/qvideoframe.h>
--- src/plugins/directshow/player/directshowmediatypelist.h.orig 2013-07-14 01:16:07.098077974 +0200
+++ src/plugins/directshow/player/directshowmediatypelist.h 2013-07-14 01:16:28.175426132 +0200
@@ -43,6 +43,7 @@
#define DIRECTSHOWMEDIATYPELIST_H
#include <QtCore/qvector.h>
+#include <QtCore/qstring.h>
#include <dshow.h>
--- src/plugins/directshow/player/directshowglobal.h.orig 2013-07-14 01:13:12.324190974 +0200
+++ src/plugins/directshow/player/directshowglobal.h 2013-07-14 01:13:25.434407537 +0200
@@ -43,6 +43,7 @@
#define DIRECTSHOWGLOBAL_H
#include <QtCore/qglobal.h>
+#include <QtCore/qstring.h>
#include <dshow.h>

View File

@ -0,0 +1,22 @@
--- qtmultimedia-opensource-src-5.2.0-rc1/config.tests/wshellitem/main.cpp.orig 2013-11-21 11:29:48.845013461 +0100
+++ qtmultimedia-opensource-src-5.2.0-rc1/config.tests/wshellitem/main.cpp 2013-11-21 11:29:55.980132333 +0100
@@ -39,7 +39,7 @@
**
****************************************************************************/
-#include <ShlObj.h>
+#include <shlobj.h>
int main(int, char**)
{
--- qtmultimedia-opensource-src-5.2.0-rc1/src/plugins/directshow/player/directshowmetadatacontrol.cpp.orig 2013-11-21 11:34:00.866215162 +0100
+++ qtmultimedia-opensource-src-5.2.0-rc1/src/plugins/directshow/player/directshowmetadatacontrol.cpp 2013-11-21 11:34:11.361390182 +0100
@@ -57,7 +57,7 @@
#endif
#ifndef QT_NO_SHELLITEM
-#include <ShlObj.h>
+#include <shlobj.h>
#include <propkeydef.h>
#include <private/qsystemlibrary_p.h>

View File

@ -0,0 +1,62 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtquick1
pkgname="mingw-w64-qt5-quick1"
pkgver=5.5.1
pkgrel=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')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('46a61a405844cbe88a754127422f6b6d')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
# Prevent file conflict with mingw-qt4
mv "${pkgdir}/usr/${_arch}/bin/qmlviewer.exe" "${pkgdir}/usr/${_arch}/bin/qmlviewer-qt5.exe"
${_arch}-strip --strip-all "${pkgdir}/usr/${_arch}/bin/"*.exe
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/qt/plugins/"*/*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/qt/imports/Qt/labs/"*/*.dll
popd
done
# .prl files aren't interesting for us
find ${pkgdir} -name "*.prl" -delete
}

View File

@ -0,0 +1,43 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtquickcontrols
pkgname="mingw-w64-qt5-quickcontrols"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)"
depends=('mingw-w64-qt5-declarative')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('LGPL')
url="http://qt-project.org/wiki/QtSerialPort"
_pkgfqn="${_qt_module}-opensource-src-$pkgver"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('01ace647bda006b61200f61ebe6ef93b')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
popd
find "$pkgdir/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \;
done
}

View File

@ -0,0 +1,56 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtscript
pkgname="mingw-w64-qt5-script"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility (mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('7abbe43ec935004a9312387b4aa6b07f')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
popd
done
# .prl files aren't interesting for us
find "${pkgdir}" -name "*.prl" -delete
}

View File

@ -0,0 +1,47 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtsensors
pkgname=mingw-w64-qt5-sensors
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="Provides access to sensor hardware and motion gesture recognition (mingw-w64)"
depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)
makedepends=(mingw-w64-gcc)
options=(!strip !buildflags staticlibs)
license=("custom, FDL, GPL3, LGPL")
groups=(mingw-w64-qt mingw-w64-qt5)
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('25250d66b0f21d41711dbf8648fe21e6')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
popd
done
}

View File

@ -0,0 +1,65 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
_qt_module=qtserialport
pkgname="mingw-w64-qt5-serialport"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Provides access to hardware and virtual serial ports (mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('LGPL')
url="http://qt-project.org/wiki/QtSerialPort"
_pkgfqn="${_qt_module}-opensource-src-$pkgver"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/$pkgver/submodules/qtserialport-opensource-src-$pkgver.tar.xz")
md5sums=('1065424ad9be54f7635a9a50f35bc187')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "${srcdir}/${_pkgfqn}"
# don't build examples or tests.
sed -i 's/ examples tests//' qtserialport.pro
for _arch in ${_architectures}; do
mkdir -p build-${_arch}/include/QtSerialPort && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
#mkdir -p static-${_arch}/include/QtSerialPort && pushd static-${_arch}
#${_arch}-qmake-qt5 ../${_qt_module}.pro CONFIG+=static
#make
#popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
popd
#pushd static-${_arch}
#make INSTALL_ROOT="${pkgdir}" install
#popd
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
#${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*t.a
done
# .prl files aren't interesting for us
find ${pkgdir} -name "*.prl" -delete
}

View File

@ -0,0 +1,55 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
_qt_module=qtsvg
pkgname="mingw-w64-qt5-svg"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="Classes for displaying the contents of SVG files (mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('505fb8ba483818e53f759edbf735456e')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/"{bin,lib/qt/plugins/*}/*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
popd
done
# .prl files aren't interesting for us
find "${pkgdir}" -name "*.prl" -delete
}

75
qt5-tools/mingw-w64/PKGBUILD Executable file
View File

@ -0,0 +1,75 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qttools
pkgname="mingw-w64-qt5-tools"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="A cross-platform application and UI framework (Development Tools, QtHelp; mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('535ff9df9d83e9bde08ee3913b751d07')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
# Something is messed up with Qt5Bootstrap
make qmake_all
find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \;
find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5QmlDevTools|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5QmlDevTools|g" {} \;
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
# Make sure the executables don't conflict with their mingw-qt4 counterpart
for fn in "${pkgdir}/usr/${_arch}/bin/"*.exe ; do
fn_new=$(echo $fn | sed s/'.exe$'/'-qt5.exe'/)
mv $fn $fn_new
done
# Symlink lrelease to /usr/bin
mkdir -p "${pkgdir}/usr/bin"
for tool in lconvert lupdate lrelease; do
ln -s ../${_arch}/lib/qt/bin/${tool} "${pkgdir}/usr/bin/${_arch}-$tool-qt5"
done
${_arch}-strip --strip-all "${pkgdir}/usr/${_arch}/bin/"*.exe
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a
popd
done
# .prl files aren't interesting for us
find ${pkgdir} -name "*.prl" -delete
}

View File

@ -0,0 +1,46 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qttranslations
pkgname="mingw-w64-qt5-translations"
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc="A cross-platform application and UI framework (translations, mingw-w64)"
depends=('mingw-w64-qt5-base')
makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-tools')
options=('!strip' '!buildflags' 'staticlibs')
license=('GPL3' 'LGPL')
url="http://qt-project.org/"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('1f89d53fe759db123b4b6d9de9d9e8c9')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
build()
{
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
pushd build-${_arch}
make INSTALL_ROOT="${pkgdir}" install
popd
done
}

View File

@ -0,0 +1,47 @@
# Maintainer: Martchus <martchus@gmx.net>
_qt_module=qtwebchannel
pkgname=mingw-w64-qt5-webchannel
pkgver=5.5.1
pkgrel=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')
makedepends=('mingw-w64-gcc')
options=('!strip' '!buildflags' 'staticlibs')
license=('custom' 'FDL' 'GPL3' 'LGPL')
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
groups=(mingw-w64-qt mingw-w64-qt5)
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz")
md5sums=('f2e15d52c1b7732c2afbfb7e843091cf')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
}
build() {
unset PKG_CONFIG_PATH
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "${srcdir}/${_pkgfqn}/build-${_arch}"
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,12 @@
diff -urN qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf
--- qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 14:34:22.019269600 +0100
+++ qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 15:34:44.547516900 +0100
@@ -14,7 +14,7 @@
linux-g++*:!isGCCVersionSupported(): return(false)
!isPythonVersionSupported(): return(false)
- linux-g++*|win32-msvc2013|macx-clang: return(true)
+ linux-g++*|win32-*|macx-clang: return(true)
boot2qt: return(true)
skipBuild("Qt WebEngine can currently only be built for Linux (GCC), Windows (MSVC 2013), OS X (XCode 5.1+) or Qt for Device Creation.")

View File

@ -0,0 +1,67 @@
# Maintainer: Martchus <martchus@gmx.net>
# DOES NOT WORK YET (mingw-64 currently not supported by Qt WebEngine)
_qt_module=qtwebengine
pkgname=mingw-w64-qt5-webengine-git
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc='Provides support for web applications using the Chromium browser project (mingw-w64, git version)'
depends=('mingw-w64-qt5-webchannel' 'mingw-w64-qt5-location')
makedepends=('mingw-w64-gcc' 'git' 'python2' 'gperf' 'ruby' 'mingw-w64-pkg-config')
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
options=('!strip' '!buildflags' 'staticlibs')
license=('custom' 'FDL' 'GPL3' 'LGPL')
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
groups=(mingw-w64-qt mingw-w64-qt5)
source=(${_qt_module}::git://code.qt.io/qt/${_qt_module}.git#branch=dev)
md5sums=('SKIP')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
pkgver() {
cd "${srcdir}/${_qt_module}"
echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
}
prepare() {
cd "${srcdir}/${_qt_module}"
# use python2 for Python 2.x
find . -name '*.py' -exec sed -i \
's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} +
# in qtwebengine there are still a lot of relative calls which need a workaround
mkdir "${srcdir}"/python2-path
ln -s /usr/bin/python2 "${srcdir}"/python2-path/python
}
build() {
unset PKG_CONFIG_PATH
# python2 workaround
export PATH="${srcdir}/python2-path:$PATH"
cd "${srcdir}/${_qt_module}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "${srcdir}/${_qt_module}/build-${_arch}"
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,12 @@
diff -urN qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf
--- qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 14:34:22.019269600 +0100
+++ qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 15:34:44.547516900 +0100
@@ -14,7 +14,7 @@
linux-g++*:!isGCCVersionSupported(): return(false)
!isPythonVersionSupported(): return(false)
- linux-g++*|win32-msvc2013|macx-clang: return(true)
+ linux-g++*|win32-*|macx-clang: return(true)
boot2qt: return(true)
skipBuild("Qt WebEngine can currently only be built for Linux (GCC), Windows (MSVC 2013), OS X (XCode 5.1+) or Qt for Device Creation.")

View File

@ -0,0 +1,64 @@
# Maintainer: Martchus <martchus@gmx.net>
# DOES NOT WORK YET (mingw-64 currently not supported by Qt WebEngine)
_qt_module=qtwebengine
pkgname=mingw-w64-qt5-webengine
pkgver=5.5.1
pkgrel=1
arch=('any')
pkgdesc='Provides support for web applications using the Chromium browser project (mingw-w64)'
depends=('mingw-w64-qt5-webchannel' 'mingw-w64-qt5-location')
makedepends=('mingw-w64-gcc' 'git' 'python2' 'gperf' 'ruby' 'mingw-w64-pkg-config')
options=('!strip' '!buildflags' 'staticlibs')
license=('custom' 'FDL' 'GPL3' 'LGPL')
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
groups=(mingw-w64-qt mingw-w64-qt5)
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
'0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch')
md5sums=('2a548bde706e8639cdec2cbe31d85545'
'27e0f474f66f05f3911c71621b24636d')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
# allow building webengine with mingw-w64
patch -p2 -i ${srcdir}/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch
# use python2 for Python 2.x
find . -name '*.py' -exec sed -i \
's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} +
# in qtwebengine there are still a lot of relative calls which need a workaround
mkdir "${srcdir}"/python2-path
ln -s /usr/bin/python2 "${srcdir}"/python2-path/python
}
build() {
unset PKG_CONFIG_PATH
# python2 workaround
export PATH="${srcdir}/python2-path:$PATH"
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 ../${_qt_module}.pro
make
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "${srcdir}/${_pkgfqn}/build-${_arch}"
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

View File

@ -0,0 +1,123 @@
# Maintainer: ant32 <antreimer@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
_qt_module=qtwebkit
pkgname=mingw-w64-qt5-webkit
pkgver=5.5.1
pkgrel=1
arch=(any)
pkgdesc="Classes for a WebKit2 based implementation and a new QML API (mingw-w64)"
depends=('mingw-w64-qt5-base'
'mingw-w64-qt5-declarative'
'mingw-w64-qt5-sensors'
'mingw-w64-qt5-location'
'mingw-w64-qt5-multimedia'
'mingw-w64-angleproject'
'mingw-w64-fontconfig'
'mingw-w64-libpng'
'mingw-w64-libjpeg-turbo'
'mingw-w64-libxslt'
'mingw-w64-zlib'
'mingw-w64-icu'
'mingw-w64-sqlite'
'mingw-w64-libwebp')
makedepends=('mingw-w64-gcc' 'python' 'gperf' 'ruby' 'mingw-w64-pkg-config')
options=('!strip' '!buildflags' 'staticlibs')
license=("custom, FDL, GPL3, LGPL")
url="http://qt-project.org"
_pkgfqn="${_qt_module}-opensource-src-${pkgver}"
groups=(mingw-w64-qt mingw-w64-qt5)
source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz"
'qt5-qtwebkit-enable-pkgconfig-support-for-win32-target.patch'
'qtwebkit-dont-use-bundled-angle-libraries.patch'
'qt5-qtwebkit-dont-depend-on-icu.patch'
'revert-qt4-unicode-removal.patch'
'qt5-qtwebkit-workaround-build-breakage-after-svn-commit-136242.patch'
'qtwebkit-opensource-src-5.0.1-debuginfo.patch'
'webkit-commit-151422.patch'
'qt5-qtwebkit-fix-compatibility-with-latest-angle.patch')
md5sums=('681328edb539b8fa3a273b38c90b3e31'
'ac574de962545d6a9e975b4db63c3e09'
'f452210683386f9c28f04d7dea0ecfc7'
'069f86d834bcecb7fe0937b7539d28af'
'4e374836f26853b4d82be0e87aa584a5'
'8b60ddebf01ee04a0e1180e98cdd3d52'
'6aba6468efafb64943887079e258b799'
'c36fe581e0f3b61cef19415782b257ca'
'2ef87f4b6588e92a925f42c3b9595379')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "${srcdir}/${_pkgfqn}"
# The ICU libraries used for cross-compilation are named exactly the same as their native Linux counterpart
#patch -p0 -b -i ../qt5-qtwebkit-use-correct-icu-libs.patch
# By default the build system assumes that pkg-config isn't used for the win32 target
# However, we're using it in the Fedora MinGW toolchain so make sure it is used automatically
patch -p0 -b -i ../qt5-qtwebkit-enable-pkgconfig-support-for-win32-target.patch
# 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.
# 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.
# Make sure qtwebkit doesn't depend on a qtbase with ICU support any more
patch -p1 -b -i ../qt5-qtwebkit-dont-depend-on-icu.patch
# Undo the removal of the old Qt4 based unicode support
# as we want to use it instead of the bloated ICU
patch -p1 -R -b -i ../revert-qt4-unicode-removal.patch
# WebKit svn commit 136242 implemented a split into QtWebKit and QtWebKitWidgets
# Due to this change a static library named WebKit1.a is created first.
# After this a shared library is created named Qt5WebKit.dll which contains
# the contents of this static library and some other object files.
# However, various symbols in the static library are expected to be exported
# in the Qt5WebKit.dll shared library. As static libraries normally don't care
# about exported symbols (everything is exported after all) the decoration
# attribute Q_DECL_EXPORT won't be set.
# This results in undefined references when trying to link the QtWebKitWidgets
# shared library (which depends on various symbols which aren't exported properly
# 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
# 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
# Fix compatibility issue when using the latest ANGLE
patch -p1 -b -i ../qt5-qtwebkit-fix-compatibility-with-latest-angle.patch
# Make sure the bundled copy of the ANGLE libraries isn't used
rm -rf Source/ThirdParty/ANGLE
}
build() {
unset PKG_CONFIG_PATH
cd "${srcdir}/${_pkgfqn}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-qmake-qt5 QMAKE_CXXFLAGS+=-Wno-c++0x-compat ../WebKit.pro
make
popd
done
}
package() {
for _arch in ${_architectures}; do
cd "${srcdir}/${_pkgfqn}/build-${_arch}"
make INSTALL_ROOT="${pkgdir}" install
# The .dll's are installed in both bindir and libdir
# One copy of the .dll's is sufficient
rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll
find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm
find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g
done
}

Some files were not shown because too many files have changed in this diff Show More