qt5base-lts/mkspecs/features/qml_module.prf

50 lines
1.4 KiB
Plaintext
Raw Normal View History

#
# W A R N I N G
# -------------
#
# This file is not part of the Qt API. It exists purely as an
# implementation detail. It may change from version to version
# without notice, or even be removed.
#
# We mean it.
#
equals(TEMPLATE, app): TEMPLATE = aux
isEmpty(TARGETPATH): error("Must set TARGETPATH (QML import name)")
fq_qml_files = $$_PRO_FILE_PWD_/qmldir
for(qmlf, QML_FILES): fq_qml_files += $$absolute_path($$qmlf, $$_PRO_FILE_PWD_)
# Only for Qt Creator's project view
OTHER_FILES += $$fq_qml_files
qml1_target: \
instbase = $$[QT_INSTALL_IMPORTS]
else: \
instbase = $$[QT_INSTALL_QML]
!force_independent:if(!debug_and_release|!build_all|CONFIG(release, debug|release)) {
# These bizarre rules copy the files to the qtbase build directory
defineReplace(qmlModStripSrcDir) {
return($$relative_path($$1, $$_PRO_FILE_PWD_))
}
qmlfiles2build.input = fq_qml_files
qmlfiles2build.output = $$instbase/$$TARGETPATH/${QMAKE_FUNC_FILE_IN_qmlModStripSrcDir}
!contains(TEMPLATE, vc.*): qmlfiles2build.variable_out = PRE_TARGETDEPS
qmlfiles2build.commands = $$QMAKE_COPY ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
qmlfiles2build.name = COPY ${QMAKE_FILE_IN}
qmlfiles2build.CONFIG = no_link no_clean
QMAKE_EXTRA_COMPILERS += qmlfiles2build
}
# Install rules
qmldir.base = $$_PRO_FILE_PWD_
qmldir.files = $$fq_qml_files
qmldir.path = $$instbase/$$TARGETPATH
INSTALLS += qmldir