update m_featureRoots less aggressively
it's not necessary to immediately re-calculate the roots after assigning QMAKE_PLATFORM - it's sufficient to do it on-demand, so merely invalidate them. this avoids that we re-calculate them multiple times without ever using them in between while processing specs with distributed platform assignments. Change-Id: If508594764811b96a577fc81c5ded34ab0453148 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> (cherry picked from qtcreator/28df27d924bb407791a76de8159c9ffa6efde283) Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This commit is contained in:
parent
3a6a462ad9
commit
3fdf69b599
@ -936,7 +936,7 @@ void QMakeEvaluator::visitProVariable(
|
|||||||
if (varName == statics.strTEMPLATE)
|
if (varName == statics.strTEMPLATE)
|
||||||
setTemplate();
|
setTemplate();
|
||||||
else if (varName == statics.strQMAKE_PLATFORM)
|
else if (varName == statics.strQMAKE_PLATFORM)
|
||||||
updateFeaturePaths();
|
m_featureRoots = 0;
|
||||||
#ifdef PROEVALUATOR_FULL
|
#ifdef PROEVALUATOR_FULL
|
||||||
else if (varName == statics.strREQUIRES)
|
else if (varName == statics.strREQUIRES)
|
||||||
checkRequirements(values(varName));
|
checkRequirements(values(varName));
|
||||||
@ -1160,6 +1160,7 @@ bool QMakeEvaluator::loadSpecInternal()
|
|||||||
#endif
|
#endif
|
||||||
valuesRef(ProKey("QMAKESPEC")) << ProString(m_qmakespec);
|
valuesRef(ProKey("QMAKESPEC")) << ProString(m_qmakespec);
|
||||||
m_qmakespecName = IoUtils::fileName(m_qmakespec).toString();
|
m_qmakespecName = IoUtils::fileName(m_qmakespec).toString();
|
||||||
|
// This also ensures that m_featureRoots is valid.
|
||||||
if (evaluateFeatureFile(QLatin1String("spec_post.prf")) != ReturnTrue)
|
if (evaluateFeatureFile(QLatin1String("spec_post.prf")) != ReturnTrue)
|
||||||
return false;
|
return false;
|
||||||
// The MinGW and x-build specs may change the separator; $$shell_{path,quote}() need it
|
// The MinGW and x-build specs may change the separator; $$shell_{path,quote}() need it
|
||||||
|
Loading…
x
Reference in New Issue
Block a user