summaryrefslogtreecommitdiff
path: root/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h')
-rw-r--r--src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h28
1 files changed, 18 insertions, 10 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
index 050dd6f084..833f77131f 100644
--- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
+++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
@@ -29,13 +29,12 @@
#include "cmakeproject.h"
#include "configmodel.h"
-#include <cpptools/cpprawprojectpart.h>
-
#include <projectexplorer/buildconfiguration.h>
#include <projectexplorer/buildtargetinfo.h>
#include <projectexplorer/deploymentdata.h>
namespace CMakeProjectManager {
+class CMakeBuildSystem;
class CMakeExtraBuildInfo;
class CMakeProject;
@@ -54,14 +53,14 @@ class CMakeBuildConfiguration : public ProjectExplorer::BuildConfiguration
public:
void emitBuildTypeChanged();
- bool isEnabled() const override;
-
CMakeConfig configurationForCMake() const;
CMakeConfig configurationFromCMake() const;
QString error() const;
QString warning() const;
+ CMakeProject *project() const;
+
QStringList buildTargetTitles() const;
const QList<CMakeBuildTarget> &buildTargets() const;
const QList<ProjectExplorer::BuildTargetInfo> appTargets() const;
@@ -83,15 +82,13 @@ private:
QVariantMap toMap() const override;
BuildType buildType() const override;
- void initialize(const ProjectExplorer::BuildInfo &info) override;
+ void initialize() override;
QString disabledReason() const override;
ProjectExplorer::NamedWidget *createConfigWidget() override;
bool fromMap(const QVariantMap &map) override;
- bool isParsing() const;
-
enum ForceEnabledChanged { False, True };
void clearError(ForceEnabledChanged fec = ForceEnabledChanged::False);
@@ -103,6 +100,16 @@ private:
void setError(const QString &message);
void setWarning(const QString &message);
+ void handleParsingSucceeded();
+ void handleParsingFailed(const QString &msg);
+
+ std::unique_ptr<CMakeProjectNode> generateProjectTree(
+ const QList<const ProjectExplorer::FileNode *> &allFiles);
+
+ void checkAndReportError(QString &errorMessage);
+
+ Internal::BuildDirManager m_buildDirManager;
+
CMakeConfig m_configurationForCMake;
CMakeConfig m_initialConfiguration;
QString m_error;
@@ -112,6 +119,7 @@ private:
QList<CMakeBuildTarget> m_buildTargets;
friend class CMakeBuildSettingsWidget;
+ friend class CMakeProjectManager::CMakeBuildSystem;
friend class CMakeProjectManager::CMakeProject;
friend class BuildDirManager;
};
@@ -134,9 +142,9 @@ public:
static BuildType buildTypeFromByteArray(const QByteArray &in);
static ProjectExplorer::BuildConfiguration::BuildType cmakeBuildTypeToBuildType(const BuildType &in);
- QList<ProjectExplorer::BuildInfo> availableBuilds(const ProjectExplorer::Target *parent) const override;
- QList<ProjectExplorer::BuildInfo> availableSetups(const ProjectExplorer::Kit *k,
- const QString &projectPath) const override;
+ QList<ProjectExplorer::BuildInfo> availableBuilds(const ProjectExplorer::Kit *k,
+ const Utils::FilePath &projectPath,
+ bool forSetup) const override;
private:
ProjectExplorer::BuildInfo createBuildInfo(const ProjectExplorer::Kit *k,