forked from qt-creator/qt-creator
Nim: Remove unnecessary NimBuildInfo
Change-Id: Ie67d41081ffa3f1b732d38aed83d812c5a712493 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Filippo Cucchetto <filippocucchetto@gmail.com>
This commit is contained in:
@@ -49,21 +49,6 @@ using namespace Utils;
|
|||||||
|
|
||||||
namespace Nim {
|
namespace Nim {
|
||||||
|
|
||||||
class NimBuildInfo : public BuildInfo
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
NimBuildInfo(BuildConfiguration::BuildType buildType,
|
|
||||||
const NimBuildConfigurationFactory *factory)
|
|
||||||
: BuildInfo(factory), m_buildType(buildType)
|
|
||||||
{}
|
|
||||||
|
|
||||||
BuildConfiguration::BuildType buildType() const { return m_buildType; }
|
|
||||||
|
|
||||||
private:
|
|
||||||
BuildConfiguration::BuildType m_buildType;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
NimBuildConfigurationFactory::NimBuildConfigurationFactory(QObject *parent)
|
NimBuildConfigurationFactory::NimBuildConfigurationFactory(QObject *parent)
|
||||||
: IBuildConfigurationFactory(parent)
|
: IBuildConfigurationFactory(parent)
|
||||||
{}
|
{}
|
||||||
@@ -75,9 +60,8 @@ QList<BuildInfo *> NimBuildConfigurationFactory::availableBuilds(const Target *p
|
|||||||
QTC_ASSERT(project, return {});
|
QTC_ASSERT(project, return {});
|
||||||
|
|
||||||
// Create the build info
|
// Create the build info
|
||||||
NimBuildInfo *info = createBuildInfo(parent->kit(),
|
BuildInfo *info = createBuildInfo(parent->kit(), project->projectFilePath(),
|
||||||
project->projectFilePath(),
|
BuildConfiguration::Debug);
|
||||||
BuildConfiguration::Debug);
|
|
||||||
|
|
||||||
info->displayName.clear(); // ask for a name
|
info->displayName.clear(); // ask for a name
|
||||||
info->buildDirectory.clear(); // This depends on the displayName
|
info->buildDirectory.clear(); // This depends on the displayName
|
||||||
@@ -87,8 +71,8 @@ QList<BuildInfo *> NimBuildConfigurationFactory::availableBuilds(const Target *p
|
|||||||
|
|
||||||
QList<BuildInfo *> NimBuildConfigurationFactory::availableSetups(const Kit *k, const QString &projectPath) const
|
QList<BuildInfo *> NimBuildConfigurationFactory::availableSetups(const Kit *k, const QString &projectPath) const
|
||||||
{
|
{
|
||||||
NimBuildInfo *debug = createBuildInfo(k, projectPath, BuildConfiguration::Debug);
|
BuildInfo *debug = createBuildInfo(k, projectPath, BuildConfiguration::Debug);
|
||||||
NimBuildInfo *release = createBuildInfo(k, projectPath, BuildConfiguration::Release);
|
BuildInfo *release = createBuildInfo(k, projectPath, BuildConfiguration::Release);
|
||||||
return { debug, release };
|
return { debug, release };
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -97,23 +81,21 @@ BuildConfiguration *NimBuildConfigurationFactory::create(Target *parent, const B
|
|||||||
auto project = qobject_cast<NimProject *>(parent->project());
|
auto project = qobject_cast<NimProject *>(parent->project());
|
||||||
QTC_ASSERT(project, return nullptr);
|
QTC_ASSERT(project, return nullptr);
|
||||||
|
|
||||||
auto nimInfo = static_cast<const NimBuildInfo *>(info);
|
|
||||||
|
|
||||||
// Create the build configuration and initialize it from build info
|
// Create the build configuration and initialize it from build info
|
||||||
auto result = new NimBuildConfiguration(parent);
|
auto result = new NimBuildConfiguration(parent);
|
||||||
result->setDisplayName(nimInfo->displayName);
|
result->setDisplayName(info->displayName);
|
||||||
result->setDefaultDisplayName(nimInfo->displayName);
|
result->setDefaultDisplayName(info->displayName);
|
||||||
result->setBuildDirectory(defaultBuildDirectory(parent->kit(),
|
result->setBuildDirectory(defaultBuildDirectory(parent->kit(),
|
||||||
project->projectFilePath(),
|
project->projectFilePath(),
|
||||||
nimInfo->displayName,
|
info->displayName,
|
||||||
nimInfo->buildType()));
|
info->buildType));
|
||||||
|
|
||||||
// Add nim compiler build step
|
// Add nim compiler build step
|
||||||
{
|
{
|
||||||
BuildStepList *buildSteps = result->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD));
|
BuildStepList *buildSteps = result->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD));
|
||||||
auto nimCompilerBuildStep = new NimCompilerBuildStep(buildSteps);
|
auto nimCompilerBuildStep = new NimCompilerBuildStep(buildSteps);
|
||||||
NimCompilerBuildStep::DefaultBuildOptions defaultOption;
|
NimCompilerBuildStep::DefaultBuildOptions defaultOption;
|
||||||
switch (nimInfo->buildType()) {
|
switch (info->buildType) {
|
||||||
case BuildConfiguration::Release:
|
case BuildConfiguration::Release:
|
||||||
defaultOption = NimCompilerBuildStep::DefaultBuildOptions::Release;
|
defaultOption = NimCompilerBuildStep::DefaultBuildOptions::Release;
|
||||||
break;
|
break;
|
||||||
@@ -207,11 +189,11 @@ FileName NimBuildConfigurationFactory::defaultBuildDirectory(const Kit *k,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
NimBuildInfo *NimBuildConfigurationFactory::createBuildInfo(const Kit *k,
|
BuildInfo *NimBuildConfigurationFactory::createBuildInfo(const Kit *k, const QString &projectFilePath,
|
||||||
const QString &projectFilePath,
|
BuildConfiguration::BuildType buildType) const
|
||||||
BuildConfiguration::BuildType buildType) const
|
|
||||||
{
|
{
|
||||||
auto result = new NimBuildInfo(buildType, this);
|
auto result = new BuildInfo(this);
|
||||||
|
result->buildType = buildType;
|
||||||
result->displayName = BuildConfiguration::buildTypeName(buildType);
|
result->displayName = BuildConfiguration::buildTypeName(buildType);
|
||||||
result->buildDirectory = defaultBuildDirectory(k, projectFilePath, result->displayName, buildType);
|
result->buildDirectory = defaultBuildDirectory(k, projectFilePath, result->displayName, buildType);
|
||||||
result->kitId = k->id();
|
result->kitId = k->id();
|
||||||
@@ -219,4 +201,4 @@ NimBuildInfo *NimBuildConfigurationFactory::createBuildInfo(const Kit *k,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
} // namespace Nim
|
||||||
|
|||||||
@@ -29,8 +29,6 @@
|
|||||||
|
|
||||||
namespace Nim {
|
namespace Nim {
|
||||||
|
|
||||||
class NimBuildInfo;
|
|
||||||
|
|
||||||
class NimBuildConfigurationFactory : public ProjectExplorer::IBuildConfigurationFactory
|
class NimBuildConfigurationFactory : public ProjectExplorer::IBuildConfigurationFactory
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@@ -67,8 +65,9 @@ private:
|
|||||||
const QString &projectPath,
|
const QString &projectPath,
|
||||||
const QString &bc, ProjectExplorer::BuildConfiguration::BuildType buildType);
|
const QString &bc, ProjectExplorer::BuildConfiguration::BuildType buildType);
|
||||||
|
|
||||||
NimBuildInfo *createBuildInfo(const ProjectExplorer::Kit *k,
|
ProjectExplorer::BuildInfo *createBuildInfo(const ProjectExplorer::Kit *k,
|
||||||
const QString &projectPath, ProjectExplorer::BuildConfiguration::BuildType buildType) const;
|
const QString &projectPath,
|
||||||
|
ProjectExplorer::BuildConfiguration::BuildType buildType) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user