AutoTools: Build step code cosmetics

Change-Id: I5281bfaaa54ade80bbf46cfd16f629a2d1c81a9b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2020-10-05 12:42:37 +02:00
parent c3833406cc
commit 2a5c5d118b
3 changed files with 40 additions and 45 deletions

View File

@@ -57,36 +57,34 @@ namespace Internal {
* It is possible for the user to specify custom arguments.
*/
class AutogenStep : public AbstractProcessStep
class AutogenStep final : public AbstractProcessStep
{
Q_DECLARE_TR_FUNCTIONS(AutotoolsProjectManager::Internal::AutogenStep)
public:
AutogenStep(BuildStepList *bsl, Utils::Id id);
AutogenStep(BuildStepList *bsl, Id id);
private:
void doRun() override;
void doRun() final;
StringAspect *m_additionalArgumentsAspect = nullptr;
bool m_runAutogen = false;
};
AutogenStep::AutogenStep(BuildStepList *bsl, Utils::Id id) : AbstractProcessStep(bsl, id)
AutogenStep::AutogenStep(BuildStepList *bsl, Id id) : AbstractProcessStep(bsl, id)
{
m_additionalArgumentsAspect = addAspect<StringAspect>();
m_additionalArgumentsAspect->setSettingsKey(
"AutotoolsProjectManager.AutogenStep.AdditionalArguments");
m_additionalArgumentsAspect->setLabelText(tr("Arguments:"));
m_additionalArgumentsAspect->setDisplayStyle(StringAspect::LineEditDisplay);
m_additionalArgumentsAspect->setHistoryCompleter("AutotoolsPM.History.AutogenStepArgs");
auto arguments = addAspect<StringAspect>();
arguments->setSettingsKey("AutotoolsProjectManager.AutogenStep.AdditionalArguments");
arguments->setLabelText(tr("Arguments:"));
arguments->setDisplayStyle(StringAspect::LineEditDisplay);
arguments->setHistoryCompleter("AutotoolsPM.History.AutogenStepArgs");
connect(m_additionalArgumentsAspect, &BaseAspect::changed, this, [this] {
connect(arguments, &BaseAspect::changed, this, [this] {
m_runAutogen = true;
});
setCommandLineProvider([this] {
setCommandLineProvider([arguments] {
return CommandLine(FilePath::fromString("./autogen.sh"),
m_additionalArgumentsAspect->value(),
arguments->value(),
CommandLine::Raw);
});

View File

@@ -55,38 +55,37 @@ namespace Internal {
* It is possible for the user to specify custom arguments.
*/
class AutoreconfStep : public AbstractProcessStep
class AutoreconfStep final : public AbstractProcessStep
{
Q_DECLARE_TR_FUNCTIONS(AutotoolsProjectManager::Internal::AutoreconfStep)
public:
AutoreconfStep(BuildStepList *bsl, Utils::Id id);
AutoreconfStep(BuildStepList *bsl, Id id);
void doRun() override;
private:
StringAspect *m_additionalArgumentsAspect = nullptr;
bool m_runAutoreconf = false;
};
AutoreconfStep::AutoreconfStep(BuildStepList *bsl, Utils::Id id)
AutoreconfStep::AutoreconfStep(BuildStepList *bsl, Id id)
: AbstractProcessStep(bsl, id)
{
m_additionalArgumentsAspect = addAspect<StringAspect>();
m_additionalArgumentsAspect->setSettingsKey("AutotoolsProjectManager.AutoreconfStep.AdditionalArguments");
m_additionalArgumentsAspect->setLabelText(tr("Arguments:"));
m_additionalArgumentsAspect->setValue("--force --install");
m_additionalArgumentsAspect->setDisplayStyle(StringAspect::LineEditDisplay);
m_additionalArgumentsAspect->setHistoryCompleter("AutotoolsPM.History.AutoreconfStepArgs");
auto arguments = addAspect<StringAspect>();
arguments->setSettingsKey("AutotoolsProjectManager.AutoreconfStep.AdditionalArguments");
arguments->setLabelText(tr("Arguments:"));
arguments->setValue("--force --install");
arguments->setDisplayStyle(StringAspect::LineEditDisplay);
arguments->setHistoryCompleter("AutotoolsPM.History.AutoreconfStepArgs");
connect(m_additionalArgumentsAspect, &BaseAspect::changed, this, [this] {
connect(arguments, &BaseAspect::changed, this, [this] {
m_runAutoreconf = true;
});
setCommandLineProvider([this] {
return Utils::CommandLine(Utils::FilePath::fromString("autoreconf"),
m_additionalArgumentsAspect->value(),
Utils::CommandLine::Raw);
setCommandLineProvider([arguments] {
return CommandLine(FilePath::fromString("autoreconf"),
arguments->value(),
CommandLine::Raw);
});
setWorkingDirectoryProvider([this] { return project()->projectDirectory(); });
@@ -107,7 +106,7 @@ void AutoreconfStep::doRun()
m_runAutoreconf = true;
if (!m_runAutoreconf) {
emit addOutput(tr("Configuration unchanged, skipping autoreconf step."), BuildStep::OutputFormat::NormalMessage);
emit addOutput(tr("Configuration unchanged, skipping autoreconf step."), OutputFormat::NormalMessage);
emit finished(true);
return;
}

View File

@@ -74,43 +74,41 @@ static QString projectDirRelativeToBuildDir(BuildConfiguration *bc)
// * represented by an instance of the class MakeStepConfigWidget.
// */
class ConfigureStep : public ProjectExplorer::AbstractProcessStep
class ConfigureStep final : public AbstractProcessStep
{
Q_DECLARE_TR_FUNCTIONS(AutotoolsProjectManager::Internal::ConfigureStep)
public:
ConfigureStep(BuildStepList *bsl, Utils::Id id);
ConfigureStep(BuildStepList *bsl, Id id);
void setAdditionalArguments(const QString &list);
private:
void doRun() override;
void doRun() final;
StringAspect *m_additionalArgumentsAspect = nullptr;
bool m_runConfigure = false;
};
ConfigureStep::ConfigureStep(BuildStepList *bsl, Utils::Id id)
ConfigureStep::ConfigureStep(BuildStepList *bsl, Id id)
: AbstractProcessStep(bsl, id)
{
m_additionalArgumentsAspect = addAspect<StringAspect>();
m_additionalArgumentsAspect->setDisplayStyle(StringAspect::LineEditDisplay);
m_additionalArgumentsAspect->setSettingsKey(
"AutotoolsProjectManager.ConfigureStep.AdditionalArguments");
m_additionalArgumentsAspect->setLabelText(tr("Arguments:"));
m_additionalArgumentsAspect->setHistoryCompleter("AutotoolsPM.History.ConfigureArgs");
auto arguments = addAspect<StringAspect>();
arguments->setDisplayStyle(StringAspect::LineEditDisplay);
arguments->setSettingsKey("AutotoolsProjectManager.ConfigureStep.AdditionalArguments");
arguments->setLabelText(tr("Arguments:"));
arguments->setHistoryCompleter("AutotoolsPM.History.ConfigureArgs");
connect(m_additionalArgumentsAspect, &BaseAspect::changed, this, [this] {
connect(arguments, &BaseAspect::changed, this, [this] {
m_runConfigure = true;
});
setWorkingDirectoryProvider([this] { return project()->projectDirectory(); });
setCommandLineProvider([this] {
setCommandLineProvider([this, arguments] {
BuildConfiguration *bc = buildConfiguration();
return CommandLine({FilePath::fromString(projectDirRelativeToBuildDir(bc) + "configure"),
m_additionalArgumentsAspect->value(),
arguments->value(),
CommandLine::Raw});
});
@@ -135,7 +133,7 @@ void ConfigureStep::doRun()
}
if (!m_runConfigure) {
emit addOutput(tr("Configuration unchanged, skipping configure step."), BuildStep::OutputFormat::NormalMessage);
emit addOutput(tr("Configuration unchanged, skipping configure step."), OutputFormat::NormalMessage);
emit finished(true);
return;
}