qmake: prevent .prf files from postponing work to build passes
just a sync-up from lupdate; no effect on qmake itself. alternative source: qt-creator/7e86b98836342035684cc1c1aa49292224faed07. Change-Id: I5e10b44637d527799f55c578a99076eb4750f131 (cherry picked from qttools/8e7e60dbdea04c943bc6d50290db12d3fefd39f2) Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
parent
72f8f994b2
commit
38f6b6242e
@ -1980,23 +1980,34 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateFeatureFile(
|
||||
// needs to be determined. Failed lookups are represented via non-null empty strings.
|
||||
QString *fnp = &m_featureRoots->cache[qMakePair(fn, currFn)];
|
||||
if (fnp->isNull()) {
|
||||
int start_root = 0;
|
||||
const QStringList &paths = m_featureRoots->paths;
|
||||
if (!currFn.isEmpty()) {
|
||||
QStringRef currPath = IoUtils::pathName(currFn);
|
||||
for (int root = 0; root < paths.size(); ++root)
|
||||
if (currPath == paths.at(root)) {
|
||||
start_root = root + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (int root = start_root; root < paths.size(); ++root) {
|
||||
QString fname = paths.at(root) + fn;
|
||||
if (IoUtils::exists(fname)) {
|
||||
fn = fname;
|
||||
#ifdef QMAKE_OVERRIDE_PRFS
|
||||
{
|
||||
QString ovrfn(QLatin1String(":/qmake/override_features/") + fn);
|
||||
if (QFileInfo::exists(ovrfn)) {
|
||||
fn = ovrfn;
|
||||
goto cool;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
{
|
||||
int start_root = 0;
|
||||
const QStringList &paths = m_featureRoots->paths;
|
||||
if (!currFn.isEmpty()) {
|
||||
QStringRef currPath = IoUtils::pathName(currFn);
|
||||
for (int root = 0; root < paths.size(); ++root)
|
||||
if (currPath == paths.at(root)) {
|
||||
start_root = root + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (int root = start_root; root < paths.size(); ++root) {
|
||||
QString fname = paths.at(root) + fn;
|
||||
if (IoUtils::exists(fname)) {
|
||||
fn = fname;
|
||||
goto cool;
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifdef QMAKE_BUILTIN_PRFS
|
||||
fn.prepend(QLatin1String(":/qmake/features/"));
|
||||
if (QFileInfo::exists(fn))
|
||||
|
Loading…
x
Reference in New Issue
Block a user