diff options
author | Cristian Adam <cristian.adam@qt.io> | 2023-02-23 15:06:22 +0100 |
---|---|---|
committer | Cristian Adam <cristian.adam@qt.io> | 2023-02-28 11:47:48 +0000 |
commit | cdee94d6419820c27e3f95fed60167cebd410825 (patch) | |
tree | d618521f4517c098c04c2216c71b921ac207413a | |
parent | 87c00b86dbf75a9204041b0b8e836415b97dc125 (diff) |
CMakePM: Ensure Initial Parameters values on build config Clone
Fixes: QTCREATORBUG-28759
Change-Id: I8d7fa476ff487cf4bf5005f1ccfec65ffc59ed1c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r-- | src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp | 4 | ||||
-rw-r--r-- | src/plugins/projectexplorer/buildsettingspropertiespage.cpp | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp index 7c0f6227ff..746a64050e 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp +++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp @@ -502,6 +502,10 @@ CMakeBuildSettingsWidget::CMakeBuildSettingsWidget(CMakeBuildSystem *bs) : updateInitialCMakeArguments(); }); + connect(m_buildSystem->target()->project(), &Project::aboutToSaveSettings, this, [this] { + updateInitialCMakeArguments(); + }); + connect(bc->aspect<InitialCMakeArgumentsAspect>(), &Utils::BaseAspect::labelLinkActivated, this, diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp index 67cb480670..410449083c 100644 --- a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp @@ -276,6 +276,9 @@ void BuildSettingsWidget::cloneConfiguration() if (name.isEmpty()) return; + // Save the current build configuration settings, so that the clone gets all the settings + m_target->project()->saveSettings(); + BuildConfiguration *bc = BuildConfigurationFactory::clone(m_target, m_buildConfiguration); if (!bc) return; |