summaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtbase
diff options
context:
space:
mode:
authorJonathan Liu <net147@gmail.com>2014-07-10 14:08:35 +1000
committerMartin Jansa <Martin.Jansa@gmail.com>2014-07-10 15:42:33 +0200
commit0c5abb6ae5591be0ea26d828c95c049866d17624 (patch)
tree44adc4091f7978c5e264940861a5ce0dacd848e1 /recipes-qt/qt5/qtbase
parent41ed13fbb5b9298c76dcf940e3ef77f2a9a57921 (diff)
downloadmeta-qt5-0c5abb6ae5591be0ea26d828c95c049866d17624.tar.gz
qtbase: fix 0003-Add-external-hostbindir-option.patch
The isEmpty function takes a variable name instead of a value. As $$[QT_EXTERNAL_HOST_BINS] is a built-in we need to assign it to a variable to check if it is empty. If QT_EXTERNAL_HOST_BINS is empty (as is the case for generated Qt 5 toolchains), we need to fallback to QT_HOST_BINS when determining the path for tools such as moc otherwise you get the following error when building a Qt project using the generated toolchain: make[1]: /moc: Command not found Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'recipes-qt/qt5/qtbase')
-rw-r--r--recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch65
1 files changed, 39 insertions, 26 deletions
diff --git a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
index 66903a32..2abea8fc 100644
--- a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
+++ b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
@@ -1,4 +1,4 @@
1From 1fd06315781ada843e473ba2c28c594e05808ca2 Mon Sep 17 00:00:00 2001 1From b544f5f3462e2981ada045a32038b7f116f8590c Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com> 2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Sat, 6 Apr 2013 13:15:07 +0200 3Date: Sat, 6 Apr 2013 13:15:07 +0200
4Subject: [PATCH 03/12] Add -external-hostbindir option 4Subject: [PATCH 03/12] Add -external-hostbindir option
@@ -22,25 +22,26 @@ Upstream-Status: Pending
22 22
23Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 23Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
24Signed-off-by: Simon Busch <morphis@gravedo.de> 24Signed-off-by: Simon Busch <morphis@gravedo.de>
25Signed-off-by: Jonathan Liu <net147@gmail.com>
25--- 26---
26 configure | 15 +++++++++++++++ 27 configure | 15 +++++++++++++++
27 mkspecs/features/qt_functions.prf | 2 +- 28 mkspecs/features/qt_functions.prf | 6 +++++-
28 mkspecs/features/qt_tool.prf | 3 +-- 29 mkspecs/features/qt_tool.prf | 4 ++--
29 qmake/property.cpp | 1 + 30 qmake/property.cpp | 1 +
30 qtbase.pro | 12 +++++++++--- 31 qtbase.pro | 14 +++++++++++---
31 src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- 32 src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++---
32 src/corelib/global/qlibraryinfo.cpp | 3 ++- 33 src/corelib/global/qlibraryinfo.cpp | 3 ++-
33 src/corelib/global/qlibraryinfo.h | 1 + 34 src/corelib/global/qlibraryinfo.h | 1 +
34 src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- 35 src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++--
35 src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- 36 src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +-
36 tools/configure/configureapp.cpp | 8 ++++++++ 37 tools/configure/configureapp.cpp | 8 ++++++++
37 11 files changed, 44 insertions(+), 13 deletions(-) 38 11 files changed, 51 insertions(+), 13 deletions(-)
38 39
39diff --git a/configure b/configure 40diff --git a/configure b/configure
40index 4eae0d3..48d5119 100755 41index d5c2b08..dcd066c 100755
41--- a/configure 42--- a/configure
42+++ b/configure 43+++ b/configure
43@@ -777,6 +777,7 @@ QT_HOST_BINS= 44@@ -759,6 +759,7 @@ QT_HOST_BINS=
44 QT_HOST_LIBS= 45 QT_HOST_LIBS=
45 QT_HOST_DATA= 46 QT_HOST_DATA=
46 QT_EXT_PREFIX= 47 QT_EXT_PREFIX=
@@ -48,7 +49,7 @@ index 4eae0d3..48d5119 100755
48 49
49 #flags for SQL drivers 50 #flags for SQL drivers
50 QT_CFLAGS_PSQL= 51 QT_CFLAGS_PSQL=
51@@ -896,6 +897,7 @@ while [ "$#" -gt 0 ]; do 52@@ -878,6 +879,7 @@ while [ "$#" -gt 0 ]; do
52 -testsdir| \ 53 -testsdir| \
53 -hostdatadir| \ 54 -hostdatadir| \
54 -hostbindir| \ 55 -hostbindir| \
@@ -56,7 +57,7 @@ index 4eae0d3..48d5119 100755
56 -hostlibdir| \ 57 -hostlibdir| \
57 -extprefix| \ 58 -extprefix| \
58 -sysroot| \ 59 -sysroot| \
59@@ -1110,6 +1112,9 @@ while [ "$#" -gt 0 ]; do 60@@ -1092,6 +1094,9 @@ while [ "$#" -gt 0 ]; do
60 extprefix) 61 extprefix)
61 QT_EXT_PREFIX="$VAL" 62 QT_EXT_PREFIX="$VAL"
62 ;; 63 ;;
@@ -66,7 +67,7 @@ index 4eae0d3..48d5119 100755
66 pkg-config) 67 pkg-config)
67 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then 68 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
68 CFG_PKGCONFIG="$VAL" 69 CFG_PKGCONFIG="$VAL"
69@@ -2248,6 +2253,10 @@ Installation options: 70@@ -2230,6 +2235,10 @@ Installation options:
70 -hostdatadir <dir> . Data used by qmake will be installed to <dir> 71 -hostdatadir <dir> . Data used by qmake will be installed to <dir>
71 (default HOSTPREFIX) 72 (default HOSTPREFIX)
72 73
@@ -77,7 +78,7 @@ index 4eae0d3..48d5119 100755
77 Configure options: 78 Configure options:
78 79
79 The defaults (*) are usually acceptable. A plus (+) denotes a default value 80 The defaults (*) are usually acceptable. A plus (+) denotes a default value
80@@ -2915,6 +2924,11 @@ fi 81@@ -2897,6 +2906,11 @@ fi
81 # command line and environment validation 82 # command line and environment validation
82 #------------------------------------------------------------------------------- 83 #-------------------------------------------------------------------------------
83 84
@@ -89,7 +90,7 @@ index 4eae0d3..48d5119 100755
89 # update QT_CONFIG to show our current predefined configuration 90 # update QT_CONFIG to show our current predefined configuration
90 CFG_QCONFIG_PATH=$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h 91 CFG_QCONFIG_PATH=$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h
91 case "$CFG_QCONFIG" in 92 case "$CFG_QCONFIG" in
92@@ -3595,6 +3609,7 @@ static const char qt_configure_prefix_path_strs[][256 + 12] = { 93@@ -3577,6 +3591,7 @@ static const char qt_configure_prefix_path_strs[][256 + 12] = {
93 "qt_hbinpath=$QT_HOST_BINS", 94 "qt_hbinpath=$QT_HOST_BINS",
94 "qt_hlibpath=$QT_HOST_LIBS", 95 "qt_hlibpath=$QT_HOST_LIBS",
95 "qt_hdatpath=$QT_HOST_DATA", 96 "qt_hdatpath=$QT_HOST_DATA",
@@ -98,29 +99,37 @@ index 4eae0d3..48d5119 100755
98 "qt_hostspec=$shortspec", 99 "qt_hostspec=$shortspec",
99 #endif 100 #endif
100diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf 101diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
101index 9a4d80e..e60ce37 100644 102index 9a4d80e..dfc1cff 100644
102--- a/mkspecs/features/qt_functions.prf 103--- a/mkspecs/features/qt_functions.prf
103+++ b/mkspecs/features/qt_functions.prf 104+++ b/mkspecs/features/qt_functions.prf
104@@ -193,7 +193,7 @@ defineTest(qtAddRpathLink) { 105@@ -193,7 +193,11 @@ defineTest(qtAddRpathLink) {
105 defineTest(qtPrepareTool) { 106 defineTest(qtPrepareTool) {
106 cmd = $$eval(QT_TOOL.$${2}.binary) 107 cmd = $$eval(QT_TOOL.$${2}.binary)
107 isEmpty(cmd) { 108 isEmpty(cmd) {
108- cmd = $$[QT_HOST_BINS]/$$2 109- cmd = $$[QT_HOST_BINS]/$$2
109+ cmd = $$[QT_EXTERNAL_HOST_BINS]/$$2 110+ QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS]
111+ isEmpty(QT_EXTERNAL_HOST_BINS): \
112+ cmd = $$[QT_HOST_BINS]/$$2
113+ else: \
114+ cmd = $$[QT_EXTERNAL_HOST_BINS]/$$2
110 exists($${cmd}.pl) { 115 exists($${cmd}.pl) {
111 cmd = perl -w $$system_path($${cmd}.pl) 116 cmd = perl -w $$system_path($${cmd}.pl)
112 } else: contains(QMAKE_HOST.os, Windows) { 117 } else: contains(QMAKE_HOST.os, Windows) {
113diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf 118diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf
114index 1d3e88c..bd44754 100644 119index 1d3e88c..9b26adf 100644
115--- a/mkspecs/features/qt_tool.prf 120--- a/mkspecs/features/qt_tool.prf
116+++ b/mkspecs/features/qt_tool.prf 121+++ b/mkspecs/features/qt_tool.prf
117@@ -15,8 +15,7 @@ CONFIG += console 122@@ -12,11 +12,11 @@
123 load(qt_app)
124
125 CONFIG += console
126+QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS]
118 127
119 # If we are doing a prefix build, create a "module" pri which enables 128 # If we are doing a prefix build, create a "module" pri which enables
120 # qtPrepareTool() to work with the non-installed build. 129 # qtPrepareTool() to work with the non-installed build.
121-# Non-bootstrapped tools always need this because of the environment setup. 130-# Non-bootstrapped tools always need this because of the environment setup.
122-!build_pass:if(!host_build|!force_bootstrap|force_independent) { 131-!build_pass:if(!host_build|!force_bootstrap|force_independent) {
123+!build_pass:if(!host_build|!force_bootstrap|force_independent):!exists($$[QT_EXTERNAL_HOST_BINS]) { 132+!build_pass:if(!host_build|!force_bootstrap|force_independent):isEmpty(QT_EXTERNAL_HOST_BINS) {
124 isEmpty(MODULE):MODULE = $$TARGET 133 isEmpty(MODULE):MODULE = $$TARGET
125 134
126 !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private) 135 !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private)
@@ -137,15 +146,19 @@ index e50485c..71291ad 100644
137 { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true }, 146 { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true },
138 }; 147 };
139diff --git a/qtbase.pro b/qtbase.pro 148diff --git a/qtbase.pro b/qtbase.pro
140index d6861cf..92e6a83 100644 149index d6861cf..7fb58a3 100644
141--- a/qtbase.pro 150--- a/qtbase.pro
142+++ b/qtbase.pro 151+++ b/qtbase.pro
143@@ -71,16 +71,22 @@ CONFIG -= qt 152@@ -69,18 +69,26 @@ CONFIG -= qt
153
154 ### installations ####
144 155
156+QT_EXTERNAL_HOST_BINS = $$[QT_EXTERNAL_HOST_BINS]
157+
145 #qmake 158 #qmake
146 qmake.path = $$[QT_HOST_BINS] 159 qmake.path = $$[QT_HOST_BINS]
147+qmake.files = $$OUT_PWD/bin/qmake 160+qmake.files = $$OUT_PWD/bin/qmake
148+!isEmpty($$[QT_EXTERNAL_HOST_BINS]) { 161+!isEmpty(QT_EXTERNAL_HOST_BINS) {
149+ qmake.files = $$[QT_EXTERNAL_HOST_BINS]/bin/qmake 162+ qmake.files = $$[QT_EXTERNAL_HOST_BINS]/bin/qmake
150+} 163+}
151 equals(QMAKE_HOST.os, Windows) { 164 equals(QMAKE_HOST.os, Windows) {
@@ -160,7 +173,7 @@ index d6861cf..92e6a83 100644
160 syncqt.path = $$[QT_HOST_BINS] 173 syncqt.path = $$[QT_HOST_BINS]
161 syncqt.files = $$PWD/bin/syncqt.pl 174 syncqt.files = $$PWD/bin/syncqt.pl
162+syncqt.files = $$PWD/bin/syncqt.pl 175+syncqt.files = $$PWD/bin/syncqt.pl
163+!isEmpty($$[QT_EXTERNAL_HOST_BINS]) { 176+!isEmpty(QT_EXTERNAL_HOST_BINS) {
164+ syncqt.files = $$[QT_EXTERNAL_HOST_BINS]/bin/syncqt.pl 177+ syncqt.files = $$[QT_EXTERNAL_HOST_BINS]/bin/syncqt.pl
165+} 178+}
166 INSTALLS += syncqt 179 INSTALLS += syncqt
@@ -198,10 +211,10 @@ index 9bda70e..6e3605a 100644
198 _qt5_Core_check_file_exists(${imported_location}) 211 _qt5_Core_check_file_exists(${imported_location})
199 212
200diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp 213diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp
201index 69e614f..a95ca35 100644 214index 174c1d0..1fe03cb 100644
202--- a/src/corelib/global/qlibraryinfo.cpp 215--- a/src/corelib/global/qlibraryinfo.cpp
203+++ b/src/corelib/global/qlibraryinfo.cpp 216+++ b/src/corelib/global/qlibraryinfo.cpp
204@@ -336,7 +336,7 @@ QLibraryInfo::isDebugBuild() 217@@ -333,7 +333,7 @@ QLibraryInfo::isDebugBuild()
205 */ 218 */
206 219
207 static const struct { 220 static const struct {
@@ -210,7 +223,7 @@ index 69e614f..a95ca35 100644
210 } qtConfEntries[] = { 223 } qtConfEntries[] = {
211 { "Prefix", "." }, 224 { "Prefix", "." },
212 { "Documentation", "doc" }, // should be ${Data}/doc 225 { "Documentation", "doc" }, // should be ${Data}/doc
213@@ -362,6 +362,7 @@ static const struct { 226@@ -359,6 +359,7 @@ static const struct {
214 { "HostBinaries", "bin" }, 227 { "HostBinaries", "bin" },
215 { "HostLibraries", "lib" }, 228 { "HostLibraries", "lib" },
216 { "HostData", "." }, 229 { "HostData", "." },
@@ -292,5 +305,5 @@ index b756509..7e61845 100644
292 << " \"qt_hostspec=" << hostSpec << "\"," << endl 305 << " \"qt_hostspec=" << hostSpec << "\"," << endl
293 << "#endif" << endl 306 << "#endif" << endl
294-- 307--
2952.0.0 3082.0.1
296 309