aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@qt.io>2017-03-02 16:55:09 +0100
committerSimon Hausmann <simon.hausmann@qt.io>2017-03-06 17:21:50 +0000
commit38919dc8259b5faccf2d755cb62f668047369565 (patch)
tree4f6914ac0d0788126fe9f21afe03c7c9fc4fb1b2 /tools
parentc6917f27cbb26c140d6e514ca8a268bbf41f49a2 (diff)
Fix qml cache generation for non-prefix builds
Generate cache files right in the target locatioa, similar to how qml_module.prf uses COPIES to copy .qml source files to the target location in non-prefix builds. Change-Id: I06f6112c29ffd212e29a84e29418d042255b5861 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'tools')
-rw-r--r--tools/qmlcachegen/qmlcache.prf22
1 files changed, 18 insertions, 4 deletions
diff --git a/tools/qmlcachegen/qmlcache.prf b/tools/qmlcachegen/qmlcache.prf
index fed9f0d2f3..e0c62ec4d3 100644
--- a/tools/qmlcachegen/qmlcache.prf
+++ b/tools/qmlcachegen/qmlcache.prf
@@ -1,12 +1,26 @@
qtPrepareTool(QML_CACHEGEN, qmlcachegen)
+isEmpty(TARGETPATH): error("Must set TARGETPATH (QML import name) for ahead-of-time QML cache generation")
+
!isEmpty(QT_TARGET_ARCH):QML_CACHEGEN_ARCH=$$QT_TARGET_ARCH
else:QML_CACHEGEN_ARCH=$$QT_ARCH
-qmlcachegen.input = QML_FILES
-qmlcachegen.output = ${QMAKE_FILE_IN}c
-qmlcachegen.commands = $$QML_CACHEGEN --target-architecture=$$QML_CACHEGEN_ARCH ${QMAKE_FILE_IN}
+CACHEGEN_FILES=
+for(qmlf, QML_FILES) {
+ contains(qmlf,.*\\.js$)|contains(qmlf,.*\\.qml$) {
+ CACHEGEN_FILES += $$qmlf
+ }
+}
+
+qmlcachegen.input = CACHEGEN_FILES
+prefix_build {
+ qmlcachegen.output = ${QMAKE_FILE_IN}c
+} else {
+ qmlcachegen.output = $$[QT_INSTALL_QML]/$$TARGETPATH/${QMAKE_FILE_IN}c
+ qmlcachegen.CONFIG = no_link target_predeps
+}
+qmlcachegen.commands = $$QML_CACHEGEN --target-architecture=$$QML_CACHEGEN_ARCH -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN}
qmlcachegen.name = Generate QML Cache ${QMAKE_FILE_IN}
-qmlcachegen.variable_out = AUX_QML_FILES
+qmlcachegen.variable_out = GENERATED_FILES
QMAKE_EXTRA_COMPILERS += qmlcachegen