summaryrefslogtreecommitdiffstats
path: root/qmake/library/qmakeevaluator.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@qt.io>2016-12-16 13:11:49 +0100
committerOswald Buddenhagen <oswald.buddenhagen@qt.io>2016-12-20 10:16:32 +0000
commitf2b31fdb6bb357c0c5c97d4fabd2561da3ba2093 (patch)
treeb0e821b1cb3526a89213d07197f0273bcbc8769c /qmake/library/qmakeevaluator.cpp
parent29a929668b832a3fceda69a5c5f2d07b796a3fc8 (diff)
make QMAKE_DIR_SEP magic on writing
since ab0cc305, the spec will be replaced by an entirely new one during configuration, and so needs to update the path separator for $$shell_{path,quote}(). however, the latter didn't happen, as the spec reloading doesn't go through the "real" spec loading path. Change-Id: I45ab3156b8e040f683328ac46e48b09c2eb94ef7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'qmake/library/qmakeevaluator.cpp')
-rw-r--r--qmake/library/qmakeevaluator.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/qmake/library/qmakeevaluator.cpp b/qmake/library/qmakeevaluator.cpp
index 4ca87e8bc7..69e216d3da 100644
--- a/qmake/library/qmakeevaluator.cpp
+++ b/qmake/library/qmakeevaluator.cpp
@@ -152,6 +152,7 @@ void QMakeEvaluator::initStatics()
statics.strhost_build = QLatin1String("host_build");
statics.strTEMPLATE = ProKey("TEMPLATE");
statics.strQMAKE_PLATFORM = ProKey("QMAKE_PLATFORM");
+ statics.strQMAKE_DIR_SEP = ProKey("QMAKE_DIR_SEP");
statics.strQMAKESPEC = ProKey("QMAKESPEC");
#ifdef PROEVALUATOR_FULL
statics.strREQUIRES = ProKey("REQUIRES");
@@ -938,6 +939,8 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::visitProVariable(
setTemplate();
else if (varName == statics.strQMAKE_PLATFORM)
m_featureRoots = 0;
+ else if (varName == statics.strQMAKE_DIR_SEP)
+ m_dirSep = first(varName);
else if (varName == statics.strQMAKESPEC) {
if (!values(varName).isEmpty()) {
QString spec = values(varName).first().toQString();
@@ -1218,8 +1221,6 @@ bool QMakeEvaluator::loadSpecInternal()
// This also ensures that m_featureRoots is valid.
if (evaluateFeatureFile(QLatin1String("spec_post.prf")) != ReturnTrue)
return false;
- // The MinGW and x-build specs may change the separator; $$shell_{path,quote}() need it
- m_dirSep = first(ProKey("QMAKE_DIR_SEP"));
return true;
}