aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cmakeprojectmanager/cmaketool.cpp
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2016-06-27 13:09:14 +0200
committerTobias Hunger <tobias.hunger@qt.io>2016-06-28 09:09:10 +0000
commitd8ed91c44f039ac9a8ef7a84c5dfbcafd4cada0f (patch)
treedd3193cda1aa206a530370fe887be561dbe32411 /src/plugins/cmakeprojectmanager/cmaketool.cpp
parent7609e56ee365520011920eee07e7e7c876eb5683 (diff)
CMake: Add per-cmake option to not automatically run cmake
Task-number: QTCREATORBUG-15934 Change-Id: I54fdb505a451fb269c3747a370c8dfd7043c6c9d Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Diffstat (limited to 'src/plugins/cmakeprojectmanager/cmaketool.cpp')
-rw-r--r--src/plugins/cmakeprojectmanager/cmaketool.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmaketool.cpp b/src/plugins/cmakeprojectmanager/cmaketool.cpp
index 70b362fe34..55685b0889 100644
--- a/src/plugins/cmakeprojectmanager/cmaketool.cpp
+++ b/src/plugins/cmakeprojectmanager/cmaketool.cpp
@@ -42,6 +42,7 @@ namespace CMakeProjectManager {
const char CMAKE_INFORMATION_ID[] = "Id";
const char CMAKE_INFORMATION_COMMAND[] = "Binary";
const char CMAKE_INFORMATION_DISPLAYNAME[] = "DisplayName";
+const char CMAKE_INFORMATION_AUTORUN[] = "AutoRun";
const char CMAKE_INFORMATION_AUTODETECTED[] = "AutoDetected";
///////////////////////////
@@ -57,6 +58,7 @@ CMakeTool::CMakeTool(const QVariantMap &map, bool fromSdk) : m_isAutoDetected(fr
{
m_id = Core::Id::fromSetting(map.value(QLatin1String(CMAKE_INFORMATION_ID)));
m_displayName = map.value(QLatin1String(CMAKE_INFORMATION_DISPLAYNAME)).toString();
+ m_isAutoRun = map.value(QLatin1String(CMAKE_INFORMATION_AUTORUN), true).toBool();
//loading a CMakeTool from SDK is always autodetection
if (!fromSdk)
@@ -82,6 +84,15 @@ void CMakeTool::setCMakeExecutable(const Utils::FileName &executable)
CMakeToolManager::notifyAboutUpdate(this);
}
+void CMakeTool::setAutorun(bool autoRun)
+{
+ if (m_isAutoRun == autoRun)
+ return;
+
+ m_isAutoRun = autoRun;
+ CMakeToolManager::notifyAboutUpdate(this);
+}
+
bool CMakeTool::isValid() const
{
if (!m_id.isValid())
@@ -121,6 +132,7 @@ QVariantMap CMakeTool::toMap() const
data.insert(QLatin1String(CMAKE_INFORMATION_DISPLAYNAME), m_displayName);
data.insert(QLatin1String(CMAKE_INFORMATION_ID), m_id.toSetting());
data.insert(QLatin1String(CMAKE_INFORMATION_COMMAND), m_executable.toString());
+ data.insert(QLatin1String(CMAKE_INFORMATION_AUTORUN), m_isAutoRun);
data.insert(QLatin1String(CMAKE_INFORMATION_AUTODETECTED), m_isAutoDetected);
return data;
}
@@ -130,6 +142,11 @@ Utils::FileName CMakeTool::cmakeExecutable() const
return m_executable;
}
+bool CMakeTool::isAutoRun() const
+{
+ return m_isAutoRun;
+}
+
QStringList CMakeTool::supportedGenerators() const
{
if (m_generators.isEmpty()) {