forked from qt-creator/qt-creator
Refactor deployment
* Add a DeployConfiguration class to hold settings related to deployment. * Add BuildStepsList to hold a list of buildsteps * Update BuildConfiguration to use BuildStepLists instead of manageing lists of buildsteps itself. * Update BuildManager to use BuildStepLists in its interfaces * Fix fallout introduced by API changes * Update .user file to new way of storing settings Task-number: QTCREATORBUG-1427 Task-number: QTCREATORBUG-1428 Task-number: QTCREATORBUG-1811 Task-number: QTCREATORBUG-1930
This commit is contained in:
@@ -34,7 +34,10 @@
|
||||
#include "cmakerunconfiguration.h"
|
||||
#include "cmakebuildconfiguration.h"
|
||||
|
||||
#include <projectexplorer/buildsteplist.h>
|
||||
#include <projectexplorer/deployconfiguration.h>
|
||||
#include <projectexplorer/customexecutablerunconfiguration.h>
|
||||
#include <projectexplorer/projectexplorerconstants.h>
|
||||
|
||||
#include <QtGui/QApplication>
|
||||
#include <QtGui/QStyle>
|
||||
@@ -58,7 +61,8 @@ QString displayNameForId(const QString &id) {
|
||||
|
||||
CMakeTarget::CMakeTarget(CMakeProject *parent) :
|
||||
ProjectExplorer::Target(parent, QLatin1String(DEFAULT_CMAKE_TARGET_ID)),
|
||||
m_buildConfigurationFactory(new CMakeBuildConfigurationFactory(this))
|
||||
m_buildConfigurationFactory(new CMakeBuildConfigurationFactory(this)),
|
||||
m_deployConfigurationFactory(new ProjectExplorer::DeployConfigurationFactory(this))
|
||||
{
|
||||
setDisplayName(displayNameForId(id()));
|
||||
setIcon(qApp->style()->standardIcon(QStyle::SP_ComputerIcon));
|
||||
@@ -81,7 +85,12 @@ CMakeBuildConfiguration *CMakeTarget::activeBuildConfiguration() const
|
||||
|
||||
CMakeBuildConfigurationFactory *CMakeTarget::buildConfigurationFactory() const
|
||||
{
|
||||
return m_buildConfigurationFactory;
|
||||
return m_buildConfigurationFactory;
|
||||
}
|
||||
|
||||
ProjectExplorer::DeployConfigurationFactory *CMakeTarget::deployConfigurationFactory() const
|
||||
{
|
||||
return m_deployConfigurationFactory;
|
||||
}
|
||||
|
||||
QString CMakeTarget::defaultBuildDirectory() const
|
||||
@@ -187,16 +196,21 @@ CMakeTarget *CMakeTargetFactory::create(ProjectExplorer::Project *parent, const
|
||||
CMakeBuildConfiguration *bc(new CMakeBuildConfiguration(t));
|
||||
bc->setDisplayName("all");
|
||||
|
||||
// Now create a standard build configuration
|
||||
bc->insertStep(ProjectExplorer::BuildStep::Build, 0, new MakeStep(bc));
|
||||
ProjectExplorer::BuildStepList *buildSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD);
|
||||
ProjectExplorer::BuildStepList *cleanSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN);
|
||||
|
||||
MakeStep *cleanMakeStep = new MakeStep(bc);
|
||||
bc->insertStep(ProjectExplorer::BuildStep::Clean, 0, cleanMakeStep);
|
||||
// Now create a standard build configuration
|
||||
buildSteps->insertStep(0, new MakeStep(buildSteps));
|
||||
|
||||
MakeStep *cleanMakeStep = new MakeStep(cleanSteps);
|
||||
cleanSteps->insertStep(0, cleanMakeStep);
|
||||
cleanMakeStep->setAdditionalArguments(QStringList() << "clean");
|
||||
cleanMakeStep->setClean(true);
|
||||
|
||||
t->addBuildConfiguration(bc);
|
||||
|
||||
t->addDeployConfiguration(t->deployConfigurationFactory()->create(t, ProjectExplorer::Constants::DEFAULT_DEPLOYCONFIGURATION_ID));
|
||||
|
||||
t->updateRunConfigurations();
|
||||
|
||||
return t;
|
||||
|
||||
Reference in New Issue
Block a user