forked from qt-creator/qt-creator
QbsProjectManager: Fix overriding of properties.
We have to mark the user-set properties appropriately; otherwise, properties in project files will not get overridden. Change-Id: I3bcb013fde2b76521a85c3283e2b158beaf40b26 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -416,7 +416,14 @@ void QbsProject::parse(const QVariantMap &config, const Environment &env, const
|
|||||||
QTC_ASSERT(!dir.isNull(), return);
|
QTC_ASSERT(!dir.isNull(), return);
|
||||||
|
|
||||||
qbs::SetupProjectParameters params;
|
qbs::SetupProjectParameters params;
|
||||||
params.setBuildConfiguration(config);
|
QVariantMap baseConfig;
|
||||||
|
QVariantMap userConfig = config;
|
||||||
|
QString specialKey = QLatin1String(Constants::QBS_CONFIG_PROFILE_KEY);
|
||||||
|
baseConfig.insert(specialKey, userConfig.take(specialKey));
|
||||||
|
specialKey = QLatin1String(Constants::QBS_CONFIG_VARIANT_KEY);
|
||||||
|
baseConfig.insert(specialKey, userConfig.take(specialKey));
|
||||||
|
params.setBuildConfiguration(baseConfig);
|
||||||
|
params.setOverriddenValues(userConfig);
|
||||||
qbs::ErrorInfo err = params.expandBuildConfiguration(m_manager->settings());
|
qbs::ErrorInfo err = params.expandBuildConfiguration(m_manager->settings());
|
||||||
if (err.hasError()) {
|
if (err.hasError()) {
|
||||||
generateErrors(err);
|
generateErrors(err);
|
||||||
|
|||||||
Reference in New Issue
Block a user