CMake: Only allow one target in cmake build step

CMake will silently ignore all but the last target (or fail to build
anything). This allows to simplify our code.

Change-Id: Ieee3931aca0788307107e2021d507073ef42a21f
Task-number: QTCREATORBUG-15928
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
Tobias Hunger
2016-03-30 13:06:21 +02:00
parent 414d41ab3c
commit 2c822ae3c1
4 changed files with 85 additions and 106 deletions

View File

@@ -61,10 +61,9 @@ public:
ProjectExplorer::BuildStepConfigWidget *createConfigWidget() override;
bool immutable() const override;
QStringList buildTargets() const;
QString buildTarget() const;
bool buildsBuildTarget(const QString &target) const;
void setBuildTarget(const QString &target, bool on);
void setBuildTargets(const QStringList &targets);
void setBuildTarget(const QString &target);
void clearBuildTargets();
QString toolArguments() const;
@@ -72,18 +71,16 @@ public:
QString allArguments(const CMakeRunConfiguration *rc) const;
bool addRunConfigurationArgument() const;
void setAddRunConfigurationArgument(bool add);
QString cmakeCommand() const;
QVariantMap toMap() const override;
static QString cleanTarget();
static QString allTarget();
signals:
void cmakeCommandChanged();
void targetsToBuildChanged();
void targetToBuildChanged();
void buildTargetsChanged();
protected:
@@ -112,9 +109,8 @@ private:
QRegExp m_percentProgress;
QRegExp m_ninjaProgress;
QString m_ninjaProgressString;
QStringList m_buildTargets;
QString m_buildTarget;
QString m_toolArguments;
bool m_addRunConfigurationArgument = false;
bool m_useNinja = false;
};