do not look for mkspecs/ directories in project trees
this pretty surprising behavior would interfere with building the examples from an installed qt tree with qmakes from other qt builds. .qmake.conf (and .qmake.cache) files provide a possibility to explicitly "anchor" project roots, so there is no point in having a second, even more magic way to do it. Task-number: QTBUG-35485 Change-Id: I8fd4fda67cabafdf55e7a98282dcdfaffb4a405e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
This commit is contained in:
parent
183b862fe0
commit
65a676372c
@ -1118,28 +1118,7 @@ bool QMakeEvaluator::prepareProject(const QString &inDir)
|
|||||||
}
|
}
|
||||||
no_cache:
|
no_cache:
|
||||||
|
|
||||||
// Look for mkspecs/ in source and build. First to win determines the root.
|
|
||||||
QString sdir = inDir;
|
|
||||||
QString dir = m_outputDir;
|
QString dir = m_outputDir;
|
||||||
while (dir != m_buildRoot) {
|
|
||||||
if ((dir != sdir && QFileInfo(sdir, QLatin1String("mkspecs")).isDir())
|
|
||||||
|| QFileInfo(dir, QLatin1String("mkspecs")).isDir()) {
|
|
||||||
if (dir != sdir)
|
|
||||||
m_sourceRoot = sdir;
|
|
||||||
m_buildRoot = dir;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (dir == superdir)
|
|
||||||
break;
|
|
||||||
QFileInfo qsdfi(sdir);
|
|
||||||
QFileInfo qdfi(dir);
|
|
||||||
if (qsdfi.isRoot() || qdfi.isRoot())
|
|
||||||
break;
|
|
||||||
sdir = qsdfi.path();
|
|
||||||
dir = qdfi.path();
|
|
||||||
}
|
|
||||||
|
|
||||||
dir = m_outputDir;
|
|
||||||
forever {
|
forever {
|
||||||
QString stashfile = dir + QLatin1String("/.qmake.stash");
|
QString stashfile = dir + QLatin1String("/.qmake.stash");
|
||||||
if (dir == (!superdir.isEmpty() ? superdir : m_buildRoot) || m_vfs->exists(stashfile)) {
|
if (dir == (!superdir.isEmpty() ? superdir : m_buildRoot) || m_vfs->exists(stashfile)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user