forked from qt-creator/qt-creator
ProjectExplorer: Replace BuildConfigurationFactory::availableBuilds
... by a function object. Change-Id: I9953ba6915c0177e7c4067d36dd755fc2ba5cf84 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -711,6 +711,31 @@ QmakeBuildConfigurationFactory::QmakeBuildConfigurationFactory()
|
||||
}
|
||||
return issues;
|
||||
});
|
||||
|
||||
setBuildGenerator([this](const Kit *k, const FilePath &projectPath, bool forSetup) {
|
||||
QList<BuildInfo> result;
|
||||
|
||||
BaseQtVersion *qtVersion = QtKitAspect::qtVersion(k);
|
||||
|
||||
if (forSetup && (!qtVersion || !qtVersion->isValid()))
|
||||
return result;
|
||||
|
||||
const auto addBuild = [&](BuildConfiguration::BuildType buildType) {
|
||||
BuildInfo info = createBuildInfo(k, projectPath, buildType);
|
||||
if (!forSetup) {
|
||||
info.displayName.clear(); // ask for a name
|
||||
info.buildDirectory.clear(); // This depends on the displayName
|
||||
}
|
||||
result << info;
|
||||
};
|
||||
|
||||
addBuild(BuildConfiguration::Debug);
|
||||
addBuild(BuildConfiguration::Release);
|
||||
if (qtVersion && qtVersion->qtVersion().majorVersion > 4)
|
||||
addBuild(BuildConfiguration::Profile);
|
||||
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
BuildInfo QmakeBuildConfigurationFactory::createBuildInfo(const Kit *k,
|
||||
@@ -779,32 +804,6 @@ BuildInfo QmakeBuildConfigurationFactory::createBuildInfo(const Kit *k,
|
||||
return info;
|
||||
}
|
||||
|
||||
QList<BuildInfo> QmakeBuildConfigurationFactory::availableBuilds(const Kit *k, const FilePath &projectPath, bool forSetup) const
|
||||
{
|
||||
QList<BuildInfo> result;
|
||||
|
||||
BaseQtVersion *qtVersion = QtKitAspect::qtVersion(k);
|
||||
|
||||
if (forSetup && (!qtVersion || !qtVersion->isValid()))
|
||||
return {};
|
||||
|
||||
const auto addBuild = [&](BuildConfiguration::BuildType buildType) {
|
||||
BuildInfo info = createBuildInfo(k, projectPath, buildType);
|
||||
if (!forSetup) {
|
||||
info.displayName.clear(); // ask for a name
|
||||
info.buildDirectory.clear(); // This depends on the displayName
|
||||
}
|
||||
result << info;
|
||||
};
|
||||
|
||||
addBuild(BuildConfiguration::Debug);
|
||||
addBuild(BuildConfiguration::Release);
|
||||
if (qtVersion && qtVersion->qtVersion().majorVersion > 4)
|
||||
addBuild(BuildConfiguration::Profile);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
BuildConfiguration::BuildType QmakeBuildConfiguration::buildType() const
|
||||
{
|
||||
if (qmakeBuildConfiguration() & BaseQtVersion::DebugBuild)
|
||||
|
||||
Reference in New Issue
Block a user