qt5-git: Add MSYS2 and static patches (WIP)

This commit is contained in:
Ray Donnelly
2014-03-09 01:22:58 +00:00
parent 117ea61e9c
commit cd30e253ea
4 changed files with 80 additions and 8 deletions

View File

@@ -4,7 +4,7 @@ _realname=qt5
_mingw_suff=mingw-w64-${CARCH}
pkgname="${_mingw_suff}-${_realname}-git"
_ver_base=5.3.0
pkgver=5.3.0
pkgver=5.3.0.890.e198c12
pkgrel=1
arch=('any')
url='http://qt-project.org/'
@@ -50,7 +50,6 @@ qt_modules=(
qtdoc
qtgraphicaleffects
qtimageformats
qtjsbackend
qtlocation
qtmultimedia
qtquick1
@@ -77,7 +76,9 @@ source=($( \
qt-5.1.0-win32-g++-mkspec-optimization.patch
qt-5.1.x-fix-configure-tests.patch
qt-5.1.x-syncqt-fix.patch
qt-5.1.x-win_flex-replace.patch)
qt-5.1.x-win_flex-replace.patch
qt-5.2.1-static-qmake-conf.patch
qt-5.2.1-fix-qtAddToolEnv-under-MSYS2-with-mingw32-make.patch)
pkgver() {
cd "$srcdir/$_realname"
@@ -86,7 +87,7 @@ pkgver() {
prepare() {
cd ${srcdir}
local curmod in ${qt_modules[@]}; do
for curmod in ${qt_modules[@]}; do
if [[ $curmod != ${_realname} ]]; then
mv -f $curmod ${_realname}
fi
@@ -94,6 +95,7 @@ prepare() {
cd ${_realname}
plain ""
patch -p1 -i ${srcdir}/qt-5.0.0-oracle-driver-prompt.patch
patch -p1 -i ${srcdir}/qt-5.0.0-use-fbclient-instead-of-gds32.patch
patch -p1 -i ${srcdir}/qt-5.1.0-win32-g++-mkspec-optimization.patch
@@ -238,10 +240,11 @@ md5sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'10790f1672b5f2b83e5473ad6cd48cd3'
'86899e8f2858c48d4827282c04696b76'
'd675dbbe15d275c84f2792c75212ace0'
'2488e70329d9bc71f8f4619ddfb8522a'
'2235d876133956a788c393310fa8a526'
'cc5fdd2eebc8d2d747271de091942336')
'608a30dbf8f5c2146d7285b551b03252'
'15bd4f83cf5a70377ea7e86c7505445b'
'd9823799b2e960f0d204aa893056626a')

View File

@@ -1,5 +1,5 @@
--- 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
--- qt-stable/qtbase/src/angle/src/compiler/translator.pro.orig 2013-06-18 08:49:51.975288500 +0000
+++ qt-stable/qtbase/src/angle/src/compiler/translator.pro 2013-06-18 08:50:06.047321000 +0000
@@ -92,7 +92,7 @@
$$ANGLE_DIR/src/third_party/compiler/ArrayBoundsClamper.cpp

View File

@@ -0,0 +1,47 @@
diff -urN qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt.prf.orig qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt.prf
--- qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt.prf.orig 2014-03-07 01:48:59.575901600 +0000
+++ qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt.prf 2014-03-07 01:54:08.452568300 +0000
@@ -80,7 +80,7 @@
contains(qt_module_deps, qml): \
contains(QT_CONFIG, static):contains(TEMPLATE, .*app):!host_build:!no_import_scan {
# run qmlimportscanner
- qtPrepareTool(QMLIMPORTSCANNER, qmlimportscanner)
+ qtPrepareTool(QMLIMPORTSCANNER, qmlimportscanner, system)
for (MODULE, QT_MODULES) {
PATH = $$eval(QT.$${MODULE}.qml)
!isEmpty(PATH):exists($$PATH): QMLPATHS += $$PATH
@@ -89,8 +89,8 @@
for (QMLPATH, QMLPATHS): \
IMPORTPATHS += -importPath $$QMLPATH
- #message(run $$QMLIMPORTSCANNER $$_PRO_FILE_PWD_ $$IMPORTPATHS)
- JSON = $$system($$QMLIMPORTSCANNER $$_PRO_FILE_PWD_ $$IMPORTPATHS)
+ #message(run $$QMLIMPORTSCANNERsystem $$_PRO_FILE_PWD_ $$IMPORTPATHS)
+ JSON = $$system($$QMLIMPORTSCANNERsystem $$_PRO_FILE_PWD_ $$IMPORTPATHS)
parseJson(JSON, IMPORTS)| error("Failed to parse qmlimportscanner output.")
diff -urN qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt_functions.prf.orig qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt_functions.prf
--- qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt_functions.prf.orig 2014-03-07 01:48:59.575901600 +0000
+++ qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/qt_functions.prf 2014-03-07 01:54:08.452568300 +0000
@@ -216,15 +216,17 @@
# target variable, list of env var names, [non-empty: prepare for system(), not make]
defineTest(qtAddToolEnv) {
- isEmpty(3): \
+ isEmpty(3) {
ds = $$QMAKE_DIR_SEP
- else: \
+ } else {
ds = $$DIR_SEPARATOR
+ equals(MAKEFILE_GENERATOR, MINGW): MINGW_AND_SYSTEM = true
+ }
for(env, 2) {
value = $$eval($${env}.value)
!isEmpty(value) {
name = $$eval($${env}.name)
- equals(ds, /) {
+ equals(ds, /):isEmpty(MINGW_AND_SYSTEM) {
contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name}
else: infix =
val = "$$name=$$join(value, :)$$infix"

View File

@@ -0,0 +1,22 @@
diff -urN qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/default_post.prf.orig qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/default_post.prf
--- qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/default_post.prf.orig 2014-02-01 20:37:37.000000000 +0000
+++ qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/features/default_post.prf 2014-03-07 22:56:43.997614000 +0000
@@ -53,6 +53,7 @@
}
dll:win32: QMAKE_LFLAGS += $$QMAKE_LFLAGS_DLL
+static:win32: QMAKE_LFLAGS += $$QMAKE_LFLAGS_STATIC_LIB
static:mac: QMAKE_LFLAGS += $$QMAKE_LFLAGS_STATIC_LIB
staticlib:unix {
QMAKE_CFLAGS += $$QMAKE_CFLAGS_STATIC_LIB
diff -urN qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/win32-g++/qmake.conf.orig qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/win32-g++/qmake.conf
--- qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/win32-g++/qmake.conf.orig 2014-02-01 20:37:37.000000000 +0000
+++ qt-everywhere-opensource-src-5.2.1/qtbase/mkspecs/win32-g++/qmake.conf 2014-03-07 22:55:45.900291100 +0000
@@ -74,6 +74,7 @@
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
QMAKE_LFLAGS_DLL = -shared
+QMAKE_LFLAGS_STATIC_LIB += -static
QMAKE_LFLAGS_CXX11 =
QMAKE_LINK_OBJECT_MAX = 10
QMAKE_LINK_OBJECT_SCRIPT = object_script