QbsProjectManager: Make sure run configs are available before a build.

This already works for Desktop run configurations, because they get
special treatment for historical reasons. But it does not currently work
for targets such as RemoteLinux.

Change-Id: Iba5191538314146909567bc7b5993dcc0b9d21cd
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This commit is contained in:
Christian Kandeler
2014-08-07 15:38:38 +02:00
parent 4d8966ab87
commit 03b6e23d90

View File

@@ -749,6 +749,13 @@ void QbsProject::updateApplicationTargets(const qbs::ProjectData &projectData)
{
ProjectExplorer::BuildTargetInfoList applications;
foreach (const qbs::ProductData &productData, projectData.allProducts()) {
if (!productData.isEnabled() || !productData.isRunnable())
continue;
if (productData.targetArtifacts().isEmpty()) { // No build yet.
applications.list << ProjectExplorer::BuildTargetInfo(Utils::FileName(),
Utils::FileName::fromString(productData.location().fileName()));
continue;
}
foreach (const qbs::TargetArtifact &ta, productData.targetArtifacts()) {
QTC_ASSERT(ta.isValid(), continue);
if (!ta.isExecutable())