summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@theqtcompany.com>2016-01-21 13:20:42 +0200
committerJani Heikkinen <jani.heikkinen@theqtcompany.com>2016-02-02 19:23:16 +0000
commite5e9387f9a4070a250a6e806ede37453d5368c69 (patch)
tree955886bb6579c686f80f117cc26607f454ff50c7
parent09559b5b7991aa94529ad8ee8fe311427fe83834 (diff)
downloadqtbase-e5e9387f9a4070a250a6e806ede37453d5368c69.tar.gz
Use extra compilers for the linker version script
This ensures correct separator handling and quoting. Change-Id: I0f9cc7024cac579ea4c81f0c28754b1424ae2bd4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
-rw-r--r--mkspecs/features/qt_module.prf20
1 files changed, 12 insertions, 8 deletions
diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
index e543ea65e6..bb28af975f 100644
--- a/mkspecs/features/qt_module.prf
+++ b/mkspecs/features/qt_module.prf
@@ -194,7 +194,7 @@ equals(QT_ARCH, i386):contains(QT_CPU_FEATURES.$$QT_ARCH, sse2):compiler_support
android: CONFIG += qt_android_deps no_linker_version_script
!header_module:unix:!isEmpty(QMAKE_LFLAGS_VERSION_SCRIPT):!no_linker_version_script:!static {
- verscript = $$OUT_PWD/$${TARGET}.version
+ verscript = $${TARGET}.version
QMAKE_LFLAGS += $${QMAKE_LFLAGS_VERSION_SCRIPT}$$verscript
internal_module {
@@ -219,16 +219,20 @@ android: CONFIG += qt_android_deps no_linker_version_script
}
# Add a post-processing step to replace the @FILE:filename@
- verscriptprocess.commands = perl $${PWD}/data/unix/findclasslist.pl < $${verscript}.in > $@
- verscriptprocess.target = $$verscript
+ verscript_in = $${verscript}.in
+ verscriptprocess.name = linker version script ${QMAKE_FILE_BASE}
+ verscriptprocess.input = verscript_in
+ verscriptprocess.CONFIG += no_link target_predeps
for(header, SYNCQT.PRIVATE_HEADER_FILES): \
verscriptprocess.depends += $${_PRO_FILE_PWD_}/$$header
- verscriptprocess.depends += $${verscript}.in
- QMAKE_EXTRA_TARGETS += verscriptprocess
- PRE_TARGETDEPS += $$verscript
- verscript = $${verscript}.in
+ verscriptprocess.output = $$verscript
+ verscriptprocess.commands = perl $${PWD}/data/unix/findclasslist.pl < ${QMAKE_FILE_IN} > $@
+ silent:verscriptprocess.commands = @echo creating linker version script ${QMAKE_FILE_BASE} && $$verscriptprocess.commands
+ QMAKE_EXTRA_COMPILERS += verscriptprocess
+
+ verscript = $$verscript_in
}
- write_file($$verscript, verscript_content)|error("Aborting.")
+ write_file($$OUT_PWD/$$verscript, verscript_content)|error("Aborting.")
unset(current)
unset(previous)
unset(verscript)