summaryrefslogtreecommitdiff
path: root/src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp')
-rw-r--r--src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp b/src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp
index 301d20dea2..4d3fbeb2f6 100644
--- a/src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp
+++ b/src/plugins/cmakeprojectmanager/cmaketoolmanager.cpp
@@ -4,6 +4,8 @@
#include "cmaketoolmanager.h"
#include "cmakeprojectmanagertr.h"
+#include "cmakeprojectplugin.h"
+#include "cmakespecificsettings.h"
#include "cmaketoolsettingsaccessor.h"
#include <extensionsystem/pluginmanager.h>
@@ -138,6 +140,14 @@ void CMakeToolManager::restoreCMakeTools()
updateDocumentation();
emit m_instance->cmakeToolsLoaded();
+
+ // Store the default CMake tool "Autorun CMake" value globally
+ auto settings = Internal::CMakeProjectPlugin::projectTypeSpecificSettings();
+ if (settings->autorunCMake.value() == settings->autorunCMake.defaultValue()) {
+ CMakeTool *cmake = defaultCMakeTool();
+ settings->autorunCMake.setValue(cmake ? cmake->isAutoRun() : true);
+ settings->writeSettings(Core::ICore::settings());
+ }
}
void CMakeToolManager::updateDocumentation()