43 lines
1.4 KiB
Plaintext
43 lines
1.4 KiB
Plaintext
static {
|
|
message("QML cache generation ahead of time is not supported in static builds")
|
|
return()
|
|
}
|
|
|
|
qtPrepareLibExecTool(QML_CACHEGEN, qmlcachegen, _ARCH_CHECK)
|
|
|
|
isEmpty(TARGETPATH): error("Must set TARGETPATH (QML import name) for ahead-of-time QML cache generation")
|
|
|
|
load(qt_build_paths)
|
|
|
|
prefix_build: QMLCACHE_DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
|
|
else: QMLCACHE_DESTDIR = $$[QT_INSTALL_QML]/$$TARGETPATH
|
|
|
|
CACHEGEN_FILES=
|
|
qmlcacheinst.files =
|
|
for(qmlf, QML_FILES) {
|
|
contains(qmlf,.*\\.js$)|contains(qmlf,.*\\.qml$) {
|
|
CACHEGEN_FILES += $$absolute_path($$qmlf, $$_PRO_FILE_PWD_)
|
|
qmlcacheinst.files += $$QMLCACHE_DESTDIR/$$relative_path($$qmlf, $$_PRO_FILE_PWD_)c
|
|
}
|
|
}
|
|
|
|
defineReplace(qmlCacheOutputFileName) {
|
|
return($$relative_path($$QMLCACHE_DESTDIR/$$relative_path($$1, $$_PRO_FILE_PWD_)c, $$OUT_PWD))
|
|
}
|
|
|
|
qmlcacheinst.base = $$QMLCACHE_DESTDIR
|
|
qmlcacheinst.path = $$[QT_INSTALL_QML]/$$TARGETPATH
|
|
qmlcacheinst.CONFIG = no_check_exist
|
|
|
|
qmlcachegen.input = CACHEGEN_FILES
|
|
qmlcachegen.output = ${QMAKE_FUNC_FILE_IN_qmlCacheOutputFileName}
|
|
qmlcachegen.CONFIG = no_link target_predeps
|
|
qmlcachegen.commands = $$QML_CACHEGEN -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN}
|
|
qmlcachegen.name = Generate QML Cache ${QMAKE_FILE_IN}
|
|
qmlcachegen.variable_out = GENERATED_FILES
|
|
|
|
!debug_and_release|!build_all|CONFIG(release, debug|release) {
|
|
QMAKE_EXTRA_COMPILERS += qmlcachegen
|
|
INSTALLS += qmlcacheinst
|
|
}
|