summaryrefslogtreecommitdiffstats
path: root/patches/0037-Make-each-module-refer-to-its-own-bin.patch
blob: 064a43539b21569674d3fc4c4b4cc59261103402 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
From 0a07f5e4a5bd7063fa1838f6c74da28b96da7378 Mon Sep 17 00:00:00 2001
From: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Date: Thu, 6 Jan 2011 12:52:17 -0600
Subject: [PATCH] Make each module refer to its own bin/

Since modules cannot rely on QtCore having a build directory, nor
can they build the applications directly into $$[QT_INSTALL_BINS]
each module needs their own bin/. Add this path to each module's
pri file, so others can use their applications
---
 qt3support/modules/qt_qt3support.pri     |    1 +
 qtbase/bin/syncqt                        |    1 +
 qtbase/mkspecs/features/qt_config.prf    |    1 +
 qtbase/mkspecs/features/qt_functions.prf |    9 ++++++---
 qtbase/src/modules/qt_core.pri           |    1 +
 qtbase/src/modules/qt_dbus.pri           |    1 +
 qtbase/src/modules/qt_network.pri        |    1 +
 qtbase/src/modules/qt_opengl.pri         |    1 +
 qtbase/src/modules/qt_openvg.pri         |    1 +
 qtbase/src/modules/qt_sql.pri            |    1 +
 qtbase/src/modules/qt_testlib.pri        |    1 +
 qtbase/src/modules/qt_xml.pri            |    1 +
 qtdeclarative/modules/qt_declarative.pri |    1 +
 qtphonon/modules/qt_phonon.pri           |    1 +
 qtscript/modules/qt_script.pri           |    1 +
 qtscript/modules/qt_scripttools.pri      |    1 +
 qtsvg/modules/qt_svg.pri                 |    1 +
 qttools/modules/qt_clucene.pri           |    1 +
 qttools/modules/qt_designer.pri          |    1 +
 qttools/modules/qt_help.pri              |    1 +
 qttools/modules/qt_uitools.pri           |    1 +
 qtxmlpatterns/modules/qt_xmlpatterns.pri |    1 +
 22 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/qt3support/modules/qt_qt3support.pri b/qt3support/modules/qt_qt3support.pri
index 5554999..f78c269 100644
--- a/qt3support/modules/qt_qt3support.pri
+++ b/qt3support/modules/qt_qt3support.pri
@@ -4,6 +4,7 @@ QT_QT3SUPPORT_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_QT3SUPPORT_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.qt3support.name = Qt3Support
+QT.qt3support.bins = $$QT_MODULE_BIN_BASE
 QT.qt3support.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/Qt3Support
 QT.qt3support.private_includes = $$QT_MODULE_INCLUDE_BASE/Qt3Support/private
 QT.qt3support.sources = $$QT_MODULE_BASE/src/qt3support
diff --git a/qtbase/bin/syncqt b/qtbase/bin/syncqt
index 6af59c4..a5434ca 100755
--- a/qtbase/bin/syncqt
+++ b/qtbase/bin/syncqt
@@ -1008,6 +1008,7 @@ foreach my $lib (@modules_to_sync) {
                 my $moduleprifwd = "$qtbasedir/mkspecs/modules/$modulepriname";
                 open MODULE_PRI_FILE, ">$moduleprifwd";
                 print MODULE_PRI_FILE "QT_MODULE_BASE = $basedir\n";
+                print MODULE_PRI_FILE "QT_MODULE_BIN_BASE = $out_basedir/bin\n";
                 print MODULE_PRI_FILE "QT_MODULE_INCLUDE_BASE = $out_basedir/include\n";
                 print MODULE_PRI_FILE "QT_MODULE_LIB_BASE = $out_basedir/lib\n";
                 print MODULE_PRI_FILE "include($modulepri)\n";
diff --git a/qtbase/mkspecs/features/qt_config.prf b/qtbase/mkspecs/features/qt_config.prf
index 2973c7e..7e80ad3 100644
--- a/qtbase/mkspecs/features/qt_config.prf
+++ b/qtbase/mkspecs/features/qt_config.prf
@@ -20,6 +20,7 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) {
          # qt_<module>.pri forwarding file
          QT_MODULE_INCLUDE_BASE = $$[QT_INSTALL_HEADERS]
          QT_MODULE_LIB_BASE = $$[QT_INSTALL_LIBS]
+         QT_MODULE_BIN_BASE = $$[QT_INSTALL_BINS]
          include($$mod)
       }
    }
diff --git a/qtbase/mkspecs/features/qt_functions.prf b/qtbase/mkspecs/features/qt_functions.prf
index b9b0fd8..df4508d 100644
--- a/qtbase/mkspecs/features/qt_functions.prf
+++ b/qtbase/mkspecs/features/qt_functions.prf
@@ -157,10 +157,13 @@ defineTest(qtAddModule) {
 
 # variable, default
 defineTest(qtPrepareTool) {
-    isEmpty($$1) {
-        !isEmpty(QT_BUILD_TREE):$$1 = $$QT_BUILD_TREE/bin/$$2
-        else:$$1 = $$[QT_INSTALL_BINS]/$$2
+    MODBASE = $$[QT_INSTALL_BINS]
+    !isEmpty(QT_BUILD_TREE):MODBASE = $$QT_BUILD_TREE/bin
+    count(ARGS, 2, greaterThan) {
+        isEmpty(QT.$${3}.bins):warning("No QT.$${3}.bins, module path ignored for qtPrepareTool($$1, $$2, $$3)")
+        else:MODBASE = $$eval(QT.$${3}.bins)
     }
+    isEmpty($$1):$$1 = $$MODBASE/$$2
     $$1 ~= s,[/\\\\],$$QMAKE_DIR_SEP,
     contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.(exe|bat)$) {
         exists($$eval($$1).bat) {
diff --git a/qtbase/src/modules/qt_core.pri b/qtbase/src/modules/qt_core.pri
index 494f96f..99f3fa6 100644
--- a/qtbase/src/modules/qt_core.pri
+++ b/qtbase/src/modules/qt_core.pri
@@ -4,6 +4,7 @@ QT_CORE_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_CORE_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.core.name = QtCore
+QT.core.bins = $$QT_MODULE_BIN_BASE
 QT.core.includes = $$QT_MODULE_INCLUDE_BASE/QtCore
 QT.core.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCore/private
 QT.core.sources = $$QT_MODULE_BASE/src/corelib
diff --git a/qtbase/src/modules/qt_dbus.pri b/qtbase/src/modules/qt_dbus.pri
index 73fdf99..74949b1 100644
--- a/qtbase/src/modules/qt_dbus.pri
+++ b/qtbase/src/modules/qt_dbus.pri
@@ -4,6 +4,7 @@ QT_DBUS_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_DBUS_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.dbus.name = QtDBus
+QT.dbus.bins = $$QT_MODULE_BIN_BASE
 QT.dbus.includes = $$QT_MODULE_INCLUDE_BASE/QtDBus
 QT.dbus.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDBus/private
 QT.dbus.sources = $$QT_MODULE_BASE/src/dbus
diff --git a/qtbase/src/modules/qt_network.pri b/qtbase/src/modules/qt_network.pri
index c8b1f00..37c941b 100644
--- a/qtbase/src/modules/qt_network.pri
+++ b/qtbase/src/modules/qt_network.pri
@@ -4,6 +4,7 @@ QT_NETWORK_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_NETWORK_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.network.name = QtNetwork
+QT.network.bins = $$QT_MODULE_BIN_BASE
 QT.network.includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork
 QT.network.private_includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork/private
 QT.network.sources = $$QT_MODULE_BASE/src/network
diff --git a/qtbase/src/modules/qt_opengl.pri b/qtbase/src/modules/qt_opengl.pri
index eb47b00..0bd0df7 100644
--- a/qtbase/src/modules/qt_opengl.pri
+++ b/qtbase/src/modules/qt_opengl.pri
@@ -4,6 +4,7 @@ QT_OPENGL_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_OPENGL_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.opengl.name = QtOpenGL
+QT.opengl.bins = $$QT_MODULE_BIN_BASE
 QT.opengl.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL
 QT.opengl.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL/private
 QT.opengl.sources = $$QT_MODULE_BASE/src/opengl
diff --git a/qtbase/src/modules/qt_openvg.pri b/qtbase/src/modules/qt_openvg.pri
index 09811ba..9a3ef8b 100644
--- a/qtbase/src/modules/qt_openvg.pri
+++ b/qtbase/src/modules/qt_openvg.pri
@@ -4,6 +4,7 @@ QT_OPENVG_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_OPENVG_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.openvg.name = QtOpenVG
+QT.openvg.bins = $$QT_MODULE_BIN_BASE
 QT.openvg.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG
 QT.openvg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG/private
 QT.openvg.sources = $$QT_MODULE_BASE/src/openvg
diff --git a/qtbase/src/modules/qt_sql.pri b/qtbase/src/modules/qt_sql.pri
index 42dde1b..d9b856e 100644
--- a/qtbase/src/modules/qt_sql.pri
+++ b/qtbase/src/modules/qt_sql.pri
@@ -4,6 +4,7 @@ QT_SQL_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_SQL_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.sql.name = QtSql
+QT.sql.bins = $$QT_MODULE_BIN_BASE
 QT.sql.includes = $$QT_MODULE_INCLUDE_BASE/QtSql
 QT.sql.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSql/private
 QT.sql.sources = $$QT_MODULE_BASE/src/sql
diff --git a/qtbase/src/modules/qt_testlib.pri b/qtbase/src/modules/qt_testlib.pri
index 5971808..7e9ca09 100644
--- a/qtbase/src/modules/qt_testlib.pri
+++ b/qtbase/src/modules/qt_testlib.pri
@@ -4,6 +4,7 @@ QT_TEST_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_TEST_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.testlib.name = QtTest
+QT.testlib.bins = $$QT_MODULE_BIN_BASE
 QT.testlib.includes = $$QT_MODULE_INCLUDE_BASE/QtTest
 QT.testlib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtTest/private
 QT.testlib.sources = $$QT_MODULE_BASE/src/testlib
diff --git a/qtbase/src/modules/qt_xml.pri b/qtbase/src/modules/qt_xml.pri
index c0c630c..c967cd7 100644
--- a/qtbase/src/modules/qt_xml.pri
+++ b/qtbase/src/modules/qt_xml.pri
@@ -4,6 +4,7 @@ QT_XML_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_XML_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.xml.name = QtXml
+QT.xml.bins = $$QT_MODULE_BIN_BASE
 QT.xml.includes = $$QT_MODULE_INCLUDE_BASE/QtXml
 QT.xml.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXml/private
 QT.xml.sources = $$QT_MODULE_BASE/src/xml
diff --git a/qtdeclarative/modules/qt_declarative.pri b/qtdeclarative/modules/qt_declarative.pri
index 6071af6..a24745b 100644
--- a/qtdeclarative/modules/qt_declarative.pri
+++ b/qtdeclarative/modules/qt_declarative.pri
@@ -4,6 +4,7 @@ QT_DECLARATIVE_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_DECLARATIVE_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.declarative.name = QtDeclarative
+QT.declarative.bins = $$QT_MODULE_BIN_BASE
 QT.declarative.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDeclarative
 QT.declarative.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDeclarative/private
 QT.declarative.sources = $$QT_MODULE_BASE/src/declarative
diff --git a/qtphonon/modules/qt_phonon.pri b/qtphonon/modules/qt_phonon.pri
index ec7757d..6311190 100644
--- a/qtphonon/modules/qt_phonon.pri
+++ b/qtphonon/modules/qt_phonon.pri
@@ -1,4 +1,5 @@
 QT.phonon.name = phonon
+QT.phonon.bins = $$QT_MODULE_BIN_BASE
 QT.phonon.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/phonon
 QT.phonon.private_includes = $$QT_MODULE_INCLUDE_BASE/phonon/private
 QT.phonon.sources = $$QT_MODULE_BASE/src/3rdparty/phonon/phonon
diff --git a/qtscript/modules/qt_script.pri b/qtscript/modules/qt_script.pri
index 4feaa25..2063693 100644
--- a/qtscript/modules/qt_script.pri
+++ b/qtscript/modules/qt_script.pri
@@ -4,6 +4,7 @@ QT_SCRIPT_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_SCRIPT_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.script.name = QtScript
+QT.script.bins = $$QT_MODULE_BIN_BASE
 QT.script.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtScript
 QT.script.private_includes = $$QT_MODULE_INCLUDE_BASE/QtScript/private
 QT.script.sources = $$QT_MODULE_BASE/src/script
diff --git a/qtscript/modules/qt_scripttools.pri b/qtscript/modules/qt_scripttools.pri
index e874b27..6fff333 100644
--- a/qtscript/modules/qt_scripttools.pri
+++ b/qtscript/modules/qt_scripttools.pri
@@ -4,6 +4,7 @@ QT_SCRIPTTOOLS_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_SCRIPTTOOLS_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.scripttools.name = QtScriptTools
+QT.scripttools.bins = $$QT_MODULE_BIN_BASE
 QT.scripttools.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtScriptTools
 QT.scripttools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtScriptTools/private
 QT.scripttools.sources = $$QT_MODULE_BASE/src/scripttools
diff --git a/qtsvg/modules/qt_svg.pri b/qtsvg/modules/qt_svg.pri
index 90e9865..88edb85 100644
--- a/qtsvg/modules/qt_svg.pri
+++ b/qtsvg/modules/qt_svg.pri
@@ -4,6 +4,7 @@ QT_SVG_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_SVG_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.svg.name = QtSvg
+QT.svg.bins = $$QT_MODULE_BIN_BASE
 QT.svg.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtSvg
 QT.svg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSvg/private
 QT.svg.sources = $$QT_MODULE_BASE/src/svg
diff --git a/qttools/modules/qt_clucene.pri b/qttools/modules/qt_clucene.pri
index dc709bc..77beaa6 100644
--- a/qttools/modules/qt_clucene.pri
+++ b/qttools/modules/qt_clucene.pri
@@ -4,6 +4,7 @@ QT_CLUCENE_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_CLUCENE_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.clucene.name = QtCLucene
+QT.clucene.bins = $$QT_MODULE_BIN_BASE
 QT.clucene.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtCLucene
 QT.clucene.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCLucene/private
 QT.clucene.sources = $$QT_MODULE_BASE/src/assistant/lib/fulltextsearch
diff --git a/qttools/modules/qt_designer.pri b/qttools/modules/qt_designer.pri
index 01340ac..a617834 100644
--- a/qttools/modules/qt_designer.pri
+++ b/qttools/modules/qt_designer.pri
@@ -4,6 +4,7 @@ QT_DESIGNER_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_DESIGNER_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.designer.name = QtDesigner
+QT.designer.bins = $$QT_MODULE_BIN_BASE
 QT.designer.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDesigner
 QT.designer.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDesigner/private
 QT.designer.sources = $$QT_MODULE_BASE/src/designer/src/lib
diff --git a/qttools/modules/qt_help.pri b/qttools/modules/qt_help.pri
index d99f57a..07e815d 100644
--- a/qttools/modules/qt_help.pri
+++ b/qttools/modules/qt_help.pri
@@ -4,6 +4,7 @@ QT_HELP_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_HELP_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.help.name = QtHelp
+QT.help.bins = $$QT_MODULE_BIN_BASE
 QT.help.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtHelp
 QT.help.private_includes = $$QT_MODULE_INCLUDE_BASE/QtHelp/private
 QT.help.sources = $$QT_MODULE_BASE/src/assistant/lib
diff --git a/qttools/modules/qt_uitools.pri b/qttools/modules/qt_uitools.pri
index 65a527e..c5160c5 100644
--- a/qttools/modules/qt_uitools.pri
+++ b/qttools/modules/qt_uitools.pri
@@ -4,6 +4,7 @@ QT_UITOOLS_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_UITOOLS_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.uitools.name = QtUiTools
+QT.uitools.bins = $$QT_MODULE_BIN_BASE
 QT.uitools.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtUiTools
 QT.uitools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtUiTools/private
 QT.uitools.sources = $$QT_MODULE_BASE/src/designer/src/uitools
diff --git a/qtxmlpatterns/modules/qt_xmlpatterns.pri b/qtxmlpatterns/modules/qt_xmlpatterns.pri
index a5a50e6..329b784 100644
--- a/qtxmlpatterns/modules/qt_xmlpatterns.pri
+++ b/qtxmlpatterns/modules/qt_xmlpatterns.pri
@@ -4,6 +4,7 @@ QT_XMLPATTERNS_MINOR_VERSION = $$QT_MINOR_VERSION
 QT_XMLPATTERNS_PATCH_VERSION = $$QT_PATCH_VERSION
 
 QT.xmlpatterns.name = QtXmlPatterns
+QT.xmlpatterns.bins = $$QT_MODULE_BIN_BASE
 QT.xmlpatterns.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtXmlPatterns
 QT.xmlpatterns.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXmlPatterns/private
 QT.xmlpatterns.sources = $$QT_MODULE_BASE/src/xmlpatterns
-- 
1.7.3.4