forked from qt-creator/qt-creator
{C,Q}MakeProjectManager: Simplify buildInfoListForKit implementations
In both cases the created lists contain at most one item, no need to check for duplicates. Change-Id: Ibd2cb100d4c4199e65ffc62678e255c8ab41b11c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -349,12 +349,11 @@ Kit *CMakeProjectImporter::createKit(void *directoryData) const
|
|||||||
|
|
||||||
const QList<BuildInfo> CMakeProjectImporter::buildInfoListForKit(const Kit *k, void *directoryData) const
|
const QList<BuildInfo> CMakeProjectImporter::buildInfoListForKit(const Kit *k, void *directoryData) const
|
||||||
{
|
{
|
||||||
QList<BuildInfo> result;
|
|
||||||
auto data = static_cast<const DirectoryData *>(directoryData);
|
auto data = static_cast<const DirectoryData *>(directoryData);
|
||||||
auto factory = qobject_cast<CMakeBuildConfigurationFactory *>(
|
auto factory = qobject_cast<CMakeBuildConfigurationFactory *>(
|
||||||
BuildConfigurationFactory::find(k, projectFilePath().toString()));
|
BuildConfigurationFactory::find(k, projectFilePath().toString()));
|
||||||
if (!factory)
|
if (!factory)
|
||||||
return result;
|
return {};
|
||||||
|
|
||||||
// create info:
|
// create info:
|
||||||
BuildInfo info = factory->createBuildInfo(k, projectDirectory().toString(),
|
BuildInfo info = factory->createBuildInfo(k, projectDirectory().toString(),
|
||||||
@@ -362,19 +361,8 @@ const QList<BuildInfo> CMakeProjectImporter::buildInfoListForKit(const Kit *k, v
|
|||||||
info.buildDirectory = data->buildDirectory;
|
info.buildDirectory = data->buildDirectory;
|
||||||
info.displayName = info.typeName;
|
info.displayName = info.typeName;
|
||||||
|
|
||||||
bool found = false;
|
|
||||||
foreach (BuildInfo bInfo, result) {
|
|
||||||
if (bInfo == info) {
|
|
||||||
found = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!found)
|
|
||||||
result << info;
|
|
||||||
|
|
||||||
qCDebug(cmInputLog()) << "BuildInfo configured.";
|
qCDebug(cmInputLog()) << "BuildInfo configured.";
|
||||||
|
return {info};
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CMakeProjectImporter::CMakeToolData
|
CMakeProjectImporter::CMakeToolData
|
||||||
|
@@ -233,12 +233,11 @@ Kit *QmakeProjectImporter::createKit(void *directoryData) const
|
|||||||
|
|
||||||
const QList<BuildInfo> QmakeProjectImporter::buildInfoListForKit(const Kit *k, void *directoryData) const
|
const QList<BuildInfo> QmakeProjectImporter::buildInfoListForKit(const Kit *k, void *directoryData) const
|
||||||
{
|
{
|
||||||
QList<BuildInfo> result;
|
|
||||||
auto *data = static_cast<DirectoryData *>(directoryData);
|
auto *data = static_cast<DirectoryData *>(directoryData);
|
||||||
auto factory = qobject_cast<QmakeBuildConfigurationFactory *>(
|
auto factory = qobject_cast<QmakeBuildConfigurationFactory *>(
|
||||||
BuildConfigurationFactory::find(k, projectFilePath().toString()));
|
BuildConfigurationFactory::find(k, projectFilePath().toString()));
|
||||||
if (!factory)
|
if (!factory)
|
||||||
return result;
|
return {};
|
||||||
|
|
||||||
// create info:
|
// create info:
|
||||||
BuildInfo info(factory);
|
BuildInfo info(factory);
|
||||||
@@ -258,17 +257,7 @@ const QList<BuildInfo> QmakeProjectImporter::buildInfoListForKit(const Kit *k, v
|
|||||||
extra.makefile = data->makefile;
|
extra.makefile = data->makefile;
|
||||||
info.extraInfo = QVariant::fromValue(extra);
|
info.extraInfo = QVariant::fromValue(extra);
|
||||||
|
|
||||||
bool found = false;
|
return {info};
|
||||||
foreach (const BuildInfo &bInfo, result) {
|
|
||||||
if (bInfo == info) {
|
|
||||||
found = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!found)
|
|
||||||
result << info;
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QmakeProjectImporter::deleteDirectoryData(void *directoryData) const
|
void QmakeProjectImporter::deleteDirectoryData(void *directoryData) const
|
||||||
|
Reference in New Issue
Block a user