blob: e34e541269fa21d6790077b0e831655e42fcadeb (
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
|
# This pri file is used to deploy files that are not compiled while building
# Qt Creator. It handles copying of files into the build directory if using
# a shadow build and adds the respective install target as well.
#
# Usage: Define variables (details below) and include this pri file afterwards.
#
# STATIC_BASE - base directory for the files listed in STATIC_FILES
# STATIC_FILES - list of files to be deployed
# STATIC_OUTPUT_BASE - base directory in the compile output
# STATIC_INSTALL_BASE - base directory in the install output
# used in custom compilers which just copy files
defineReplace(stripStaticBase) {
return($$relative_path($$1, $$STATIC_BASE))
}
# handle conditional copying based on STATIC_BASE compared to STATIC_OUTPUT_BASE
!isEmpty(STATIC_FILES) {
isEmpty(STATIC_BASE): \
error("Using STATIC_FILES without having STATIC_BASE set")
isEmpty(STATIC_OUTPUT_BASE): \
error("Using STATIC_FILES without having STATIC_OUTPUT_BASE set")
!osx:isEmpty(STATIC_INSTALL_BASE): \
error("Using STATIC_FILES without having STATIC_INSTALL_BASE set")
!isEqual(STATIC_BASE, $$STATIC_OUTPUT_BASE) {
copy2build.input += STATIC_FILES
copy2build.output = $$STATIC_OUTPUT_BASE/${QMAKE_FUNC_FILE_IN_stripStaticBase}
isEmpty(vcproj):copy2build.variable_out = PRE_TARGETDEPS
win32:copy2build.commands = $$QMAKE_COPY \"${QMAKE_FILE_IN}\" \"${QMAKE_FILE_OUT}\"
unix:copy2build.commands = $$QMAKE_COPY ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copy2build.name = COPY ${QMAKE_FILE_IN}
copy2build.CONFIG += no_link no_clean
QMAKE_EXTRA_COMPILERS += copy2build
for(static_file, STATIC_FILES) {
QMAKE_DISTCLEAN += $$STATIC_OUTPUT_BASE/$$stripStaticBase($$static_file)
}
}
static.files = $$STATIC_FILES
static.base = $$STATIC_BASE
static.path = $$STATIC_INSTALL_BASE
INSTALLS += static
}
|