From a10019eab6d71eef9c73cc91d39178cfd14ae947 Mon Sep 17 00:00:00 2001 From: dt <qtc-commiter@nokia.com> Date: Thu, 4 Dec 2008 12:51:58 +0100 Subject: [PATCH] Fixes: Added stub makestep for cmake. Details: Also add copyright headers and some initial code for the CMakeStep and MakeStep. Soon it will actially build something. --- .../cmakeprojectconstants.h | 1 + .../cmakeprojectmanager.pro | 6 ++- src/plugins/cmakeprojectmanager/cmakestep.cpp | 46 +++++++++++++++++-- src/plugins/cmakeprojectmanager/cmakestep.h | 36 ++++++++++++++- 4 files changed, 81 insertions(+), 8 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h b/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h index 516e3e61754..4832f17f263 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h +++ b/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h @@ -40,6 +40,7 @@ namespace Constants { const char * const PROJECTCONTEXT = "CMakeProject.ProjectContext"; const char * const CMAKEMIMETYPE = "text/x-cmake"; // TOOD check that this is correct const char * const CMAKESTEP = "CMakeProjectManager.CMakeStep"; +const char * const MAKESTEP = "CMakeProjectManager.MakeStep"; } // namespace Constants diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.pro b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.pro index 3d427a93d8b..afca26b265b 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.pro +++ b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.pro @@ -7,10 +7,12 @@ HEADERS = cmakeproject.h \ cmakeprojectmanager.h \ cmakeprojectconstants.h \ cmakeprojectnodes.h \ - cmakestep.h + cmakestep.h \ + makestep.h SOURCES = cmakeproject.cpp \ cmakeprojectplugin.cpp \ cmakeprojectmanager.cpp \ cmakeprojectnodes.cpp \ - cmakestep.cpp + cmakestep.cpp \ + makestep.cpp RESOURCES += cmakeproject.qrc diff --git a/src/plugins/cmakeprojectmanager/cmakestep.cpp b/src/plugins/cmakeprojectmanager/cmakestep.cpp index 821bf6b1bec..523741c92ba 100644 --- a/src/plugins/cmakeprojectmanager/cmakestep.cpp +++ b/src/plugins/cmakeprojectmanager/cmakestep.cpp @@ -1,3 +1,36 @@ +/*************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). +** +** Contact: Qt Software Information (qt-info@nokia.com) +** +** +** Non-Open Source Usage +** +** Licensees may use this file in accordance with the Qt Beta Version +** License Agreement, Agreement version 2.2 provided with the Software or, +** alternatively, in accordance with the terms contained in a written +** agreement between you and Nokia. +** +** GNU General Public License Usage +** +** Alternatively, this file may be used under the terms of the GNU General +** Public License versions 2.0 or 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the packaging +** of this file. Please review the following information to ensure GNU +** General Public Licensing requirements will be met: +** +** http://www.fsf.org/licensing/licenses/info/GPLv2.html and +** http://www.gnu.org/copyleft/gpl.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt GPL Exception +** version 1.2, included in the file GPL_EXCEPTION.txt in this package. +** +***************************************************************************/ + #include "cmakestep.h" #include "cmakeprojectconstants.h" #include "cmakeproject.h" @@ -6,7 +39,7 @@ using namespace CMakeProjectManager; using namespace CMakeProjectManager::Internal; CMakeStep::CMakeStep(CMakeProject *pro) - : BuildStep(pro), m_pro(pro) + : AbstractProcessStep(pro), m_pro(pro) { } @@ -18,14 +51,17 @@ CMakeStep::~CMakeStep() bool CMakeStep::init(const QString &buildConfiguration) { - // TODO - return true; + setEnabled(buildConfiguration, true); + setWorkingDirectory(buildConfiguration, m_pro->buildDirectory(buildConfiguration)); + setCommand(buildConfiguration, "cmake"); // TODO give full path here? + setArguments(buildConfiguration, QStringList()); // TODO + setEnvironment(buildConfiguration, m_pro->environment(buildConfiguration)); + return AbstractProcessStep::init(buildConfiguration); } void CMakeStep::run(QFutureInterface<bool> &fi) { - // TODO - fi.reportResult(true); + AbstractProcessStep::run(fi); } QString CMakeStep::name() diff --git a/src/plugins/cmakeprojectmanager/cmakestep.h b/src/plugins/cmakeprojectmanager/cmakestep.h index dea4499efc4..75cc0d6ba38 100644 --- a/src/plugins/cmakeprojectmanager/cmakestep.h +++ b/src/plugins/cmakeprojectmanager/cmakestep.h @@ -1,7 +1,41 @@ +/*************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). +** +** Contact: Qt Software Information (qt-info@nokia.com) +** +** +** Non-Open Source Usage +** +** Licensees may use this file in accordance with the Qt Beta Version +** License Agreement, Agreement version 2.2 provided with the Software or, +** alternatively, in accordance with the terms contained in a written +** agreement between you and Nokia. +** +** GNU General Public License Usage +** +** Alternatively, this file may be used under the terms of the GNU General +** Public License versions 2.0 or 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the packaging +** of this file. Please review the following information to ensure GNU +** General Public Licensing requirements will be met: +** +** http://www.fsf.org/licensing/licenses/info/GPLv2.html and +** http://www.gnu.org/copyleft/gpl.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt GPL Exception +** version 1.2, included in the file GPL_EXCEPTION.txt in this package. +** +***************************************************************************/ + #ifndef CMAKESTEP_H #define CMAKESTEP_H #include <projectexplorer/buildstep.h> +#include <projectexplorer/abstractprocessstep.h> namespace CMakeProjectManager { namespace Internal { @@ -10,7 +44,7 @@ class CMakeProject; class CMakeBuildStepConfigWidget; -class CMakeStep : public ProjectExplorer::BuildStep +class CMakeStep : public ProjectExplorer::AbstractProcessStep { public: CMakeStep(CMakeProject *pro); -- GitLab