diff options
author | hjk <[email protected]> | 2020-08-06 18:11:52 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2020-08-07 13:02:51 +0000 |
commit | e04b9a5348ccfed2cd1279aedb373f5499fe00dc (patch) | |
tree | 46553d0ffc05220dfcd6e519759cc71ecfc79bd2 /src/plugins/incredibuild/cmakecommandbuilder.cpp | |
parent | f00b088a1ddce99b76aac9670edb8d6405d2e455 (diff) |
IncrediBuild: Rework CommandBuilder
Simplify interfaces. Also persist all command line settings,
make overriding default arguments explicit.
Change-Id: Ifb7e791dfc07ae9a88cfd769b9d21c5ee242e31d
Reviewed-by: Oliver Wolff <[email protected]>
Reviewed-by: Christian Stenger <[email protected]>
Diffstat (limited to 'src/plugins/incredibuild/cmakecommandbuilder.cpp')
-rw-r--r-- | src/plugins/incredibuild/cmakecommandbuilder.cpp | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/src/plugins/incredibuild/cmakecommandbuilder.cpp b/src/plugins/incredibuild/cmakecommandbuilder.cpp index e32dae75ec8..c1dd15b23ec 100644 --- a/src/plugins/incredibuild/cmakecommandbuilder.cpp +++ b/src/plugins/incredibuild/cmakecommandbuilder.cpp @@ -25,7 +25,6 @@ #include "cmakecommandbuilder.h" -#include <coreplugin/icore.h> #include <projectexplorer/buildconfiguration.h> #include <projectexplorer/buildstep.h> #include <projectexplorer/buildsteplist.h> @@ -34,8 +33,8 @@ #include <projectexplorer/toolchain.h> #include <projectexplorer/project.h> -#include <QFileInfo> -#include <QMessageBox> +#include <utils/qtcprocess.h> + #include <QRegularExpression> #include <QStandardPaths> @@ -59,24 +58,15 @@ bool CMakeCommandBuilder::canMigrate(BuildStepList *buildStepList) return false; } -QString CMakeCommandBuilder::defaultCommand() +QString CMakeCommandBuilder::defaultCommand() const { - if (!m_defaultMake.isEmpty()) - return m_defaultMake; - - m_defaultMake = "cmake"; - QString cmake = QStandardPaths::findExecutable(m_defaultMake); - if (!cmake.isEmpty()) - m_defaultMake = cmake; - - return m_defaultMake; + const QString defaultCMake = "cmake"; + const QString cmake = QStandardPaths::findExecutable(defaultCMake); + return cmake.isEmpty() ? defaultCMake : cmake; } -QStringList CMakeCommandBuilder::defaultArguments() +QString CMakeCommandBuilder::defaultArguments() const { - if (!m_defaultArgs.isEmpty()) - return m_defaultArgs; - // Build folder or "." QString buildDir; BuildConfiguration *buildConfig = buildStep()->buildConfiguration(); @@ -86,12 +76,7 @@ QStringList CMakeCommandBuilder::defaultArguments() if (buildDir.isEmpty()) buildDir = "."; - m_defaultArgs.append("--build"); - m_defaultArgs.append(buildDir); - m_defaultArgs.append("--target"); - m_defaultArgs.append("all"); - - return m_defaultArgs; + return Utils::QtcProcess::joinArgs({"--build", buildDir, "--target", "all"}); } QString CMakeCommandBuilder::setMultiProcessArg(QString args) |