aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/nim
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2021-03-15 17:22:35 +0100
committerhjk <hjk@qt.io>2021-03-17 12:04:47 +0000
commite18134a2bd91e41a20e4a9be43aecea55f032967 (patch)
tree6fb83a11a6ddda81c64e172784d9dccd6935dc98 /src/plugins/nim
parent9a5d152dc802e946d72e94e1ac292f715bcab845 (diff)
Nim: Simplify NimbleBuildStep implementation a bit
Change-Id: Ifc5a2bee0ac2fc2e9e7d5a474c0453ec49ae733f Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/nim')
-rw-r--r--src/plugins/nim/project/nimblebuildstep.cpp45
1 files changed, 12 insertions, 33 deletions
diff --git a/src/plugins/nim/project/nimblebuildstep.cpp b/src/plugins/nim/project/nimblebuildstep.cpp
index 389be08de1..a1657dc03f 100644
--- a/src/plugins/nim/project/nimblebuildstep.cpp
+++ b/src/plugins/nim/project/nimblebuildstep.cpp
@@ -26,19 +26,13 @@
#include "nimblebuildstep.h"
#include "nimconstants.h"
-#include "nimbleproject.h"
#include "nimbuildsystem.h"
#include "nimoutputtaskparser.h"
-#include "nimtoolchain.h"
#include <projectexplorer/buildconfiguration.h>
-#include <projectexplorer/ioutputparser.h>
#include <projectexplorer/processparameters.h>
#include <projectexplorer/projectexplorerconstants.h>
#include <projectexplorer/runconfigurationaspects.h>
-#include <projectexplorer/target.h>
-
-#include <QRegularExpression>
using namespace ProjectExplorer;
using namespace Utils;
@@ -48,6 +42,7 @@ namespace Nim {
class NimbleBuildStep : public AbstractProcessStep
{
Q_DECLARE_TR_FUNCTIONS(Nim::NimbleBuilStep)
+
public:
NimbleBuildStep(BuildStepList *parentList, Id id);
@@ -55,22 +50,19 @@ public:
private:
QString defaultArguments() const;
- void onArgumentsChanged();
-
- ArgumentsAspect *m_arguments;
};
NimbleBuildStep::NimbleBuildStep(BuildStepList *parentList, Id id)
: AbstractProcessStep(parentList, id)
{
- m_arguments = addAspect<ArgumentsAspect>();
- m_arguments->setSettingsKey(Constants::C_NIMBLEBUILDSTEP_ARGUMENTS);
- m_arguments->setResetter([this] { return defaultArguments(); });
- m_arguments->setArguments(defaultArguments());
+ auto arguments = addAspect<ArgumentsAspect>();
+ arguments->setSettingsKey(Constants::C_NIMBLEBUILDSTEP_ARGUMENTS);
+ arguments->setResetter([this] { return defaultArguments(); });
+ arguments->setArguments(defaultArguments());
- setCommandLineProvider([this] {
+ setCommandLineProvider([this, arguments] {
return CommandLine(Nim::nimblePathFromKit(kit()),
- {"build", m_arguments->arguments(macroExpander())});
+ {"build", arguments->arguments(macroExpander())});
});
setWorkingDirectoryProvider([this] { return project()->projectDirectory(); });
setEnvironmentModifier([this](Environment &env) {
@@ -85,9 +77,9 @@ NimbleBuildStep::NimbleBuildStep(BuildStepList *parentList, Id id)
QTC_ASSERT(buildConfiguration(), return);
QObject::connect(buildConfiguration(), &BuildConfiguration::buildTypeChanged,
- m_arguments, &ArgumentsAspect::resetArguments);
- QObject::connect(m_arguments, &ArgumentsAspect::changed,
- this, &NimbleBuildStep::onArgumentsChanged);
+ arguments, &ArgumentsAspect::resetArguments);
+ QObject::connect(arguments, &ArgumentsAspect::changed,
+ this, &AbstractProcessStep::updateSummary);
}
void NimbleBuildStep::setupOutputFormatter(OutputFormatter *formatter)
@@ -100,22 +92,9 @@ void NimbleBuildStep::setupOutputFormatter(OutputFormatter *formatter)
QString NimbleBuildStep::defaultArguments() const
{
- switch (buildType()) {
- case BuildConfiguration::Debug:
+ if (buildType() == BuildConfiguration::Debug)
return {"--debugger:native"};
- case BuildConfiguration::Unknown:
- case BuildConfiguration::Profile:
- case BuildConfiguration::Release:
- default:
- return {};
- }
-}
-
-void NimbleBuildStep::onArgumentsChanged()
-{
- ProcessParameters *params = processParameters();
- params->setCommandLine({Nim::nimblePathFromKit(kit()),
- {"build", m_arguments->arguments(macroExpander())}});
+ return {};
}
NimbleBuildStepFactory::NimbleBuildStepFactory()