RemoteLinux: Respect "no_deault_target" setting.

I.e. do not consider subprojects with that configuration for
deployment.

Change-Id: Ia04c8168480772ebf4026337ba0c81fba532f346
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
This commit is contained in:
Christian Kandeler
2012-06-01 09:50:32 +02:00
parent 44d8e7bef7
commit a577cb2b62
3 changed files with 25 additions and 6 deletions

View File

@@ -1792,9 +1792,10 @@ void Qt4ProFileNode::applyEvaluate(EvalResult evalResult, bool async)
QHash<QString, ProFile*> includeFilesExact;
QSet<QString> exactSubdirs;
ProFile *fileForCurrentProjectExact = 0;
QStringList subProjectsNotToDeploy;
if (evalResult == EvalOk) {
if (m_projectType == SubDirsTemplate) {
newProjectFilesExact = subDirsPaths(m_readerExact);
newProjectFilesExact = subDirsPaths(m_readerExact, &subProjectsNotToDeploy);
exactSubdirs = newProjectFilesExact.toSet();
}
foreach (ProFile *includeFile, m_readerExact->includeFiles()) {
@@ -1968,6 +1969,7 @@ void Qt4ProFileNode::applyEvaluate(EvalResult evalResult, bool async)
m_qt4targetInformation = targetInformation(m_readerExact);
m_resolvedMkspecPath = m_project->proFileOption()->qmakespec;
m_subProjectsNotToDeploy = subProjectsNotToDeploy;
setupInstallsList(m_readerExact);
setupProjectVersion(m_readerExact);
@@ -2203,7 +2205,7 @@ QStringList Qt4ProFileNode::libDirectories(QtSupport::ProFileReader *reader) con
return result;
}
QStringList Qt4ProFileNode::subDirsPaths(QtSupport::ProFileReader *reader) const
QStringList Qt4ProFileNode::subDirsPaths(QtSupport::ProFileReader *reader, QStringList *subProjectsNotToDeploy) const
{
QStringList subProjectPaths;
@@ -2239,7 +2241,13 @@ QStringList Qt4ProFileNode::subDirsPaths(QtSupport::ProFileReader *reader) const
}
if (QFile::exists(realFile)) {
subProjectPaths << QDir::cleanPath(realFile);
realFile = QDir::cleanPath(realFile);
subProjectPaths << realFile;
if (subProjectsNotToDeploy && !subProjectsNotToDeploy->contains(realFile)
&& reader->values(subDirVar + QLatin1String(".CONFIG"))
.contains(QLatin1String("no_default_target"))) {
subProjectsNotToDeploy->append(realFile);
}
} else {
m_project->proFileParseError(tr("Could not find .pro file for sub dir '%1' in '%2'")
.arg(subDirVar).arg(realDir));