diff --git a/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp b/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp index cc20c2e8608..236352c6477 100644 --- a/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp +++ b/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp @@ -56,16 +56,21 @@ const char GENERIC_BC_ID[] = "GenericProjectManager.GenericBuildConfiguration"; GenericBuildConfiguration::GenericBuildConfiguration(Target *parent) : BuildConfiguration(parent, Core::Id(GENERIC_BC_ID)) -{ } +{ + updateCacheAndEmitEnvironmentChanged(); +} GenericBuildConfiguration::GenericBuildConfiguration(Target *parent, Core::Id id) : BuildConfiguration(parent, id) -{ } +{ + updateCacheAndEmitEnvironmentChanged(); +} GenericBuildConfiguration::GenericBuildConfiguration(Target *parent, GenericBuildConfiguration *source) : BuildConfiguration(parent, source) { cloneSteps(source); + updateCacheAndEmitEnvironmentChanged(); } NamedWidget *GenericBuildConfiguration::createConfigWidget() diff --git a/src/plugins/qmakeandroidsupport/androidqmakebuildconfigurationfactory.cpp b/src/plugins/qmakeandroidsupport/androidqmakebuildconfigurationfactory.cpp index 1de61ae19f1..3cb4fa73bad 100644 --- a/src/plugins/qmakeandroidsupport/androidqmakebuildconfigurationfactory.cpp +++ b/src/plugins/qmakeandroidsupport/androidqmakebuildconfigurationfactory.cpp @@ -98,6 +98,8 @@ BuildConfiguration *AndroidQmakeBuildConfigurationFactory::restore(Target *paren AndroidQmakeBuildConfiguration::AndroidQmakeBuildConfiguration(Target *target) : QmakeBuildConfiguration(target) { + updateCacheAndEmitEnvironmentChanged(); + auto updateGrade = [this] { AndroidManager::updateGradleProperties(BuildConfiguration::target()); }; auto project = qobject_cast(target->project()); @@ -110,11 +112,13 @@ AndroidQmakeBuildConfiguration::AndroidQmakeBuildConfiguration(Target *target) AndroidQmakeBuildConfiguration::AndroidQmakeBuildConfiguration(Target *target, AndroidQmakeBuildConfiguration *source) : QmakeBuildConfiguration(target, source) { + updateCacheAndEmitEnvironmentChanged(); } AndroidQmakeBuildConfiguration::AndroidQmakeBuildConfiguration(Target *target, Core::Id id) : QmakeBuildConfiguration(target, id) { + updateCacheAndEmitEnvironmentChanged(); } void AndroidQmakeBuildConfiguration::addToEnvironment(Utils::Environment &env) const diff --git a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp index ec014c8fa9a..fb89e541291 100644 --- a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp +++ b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp @@ -152,6 +152,8 @@ bool QmakeBuildConfiguration::fromMap(const QVariantMap &map) void QmakeBuildConfiguration::ctor() { + updateCacheAndEmitEnvironmentChanged(); + connect(this, &BuildConfiguration::environmentChanged, this, &QmakeBuildConfiguration::emitProFileEvaluateNeeded); connect(target(), &Target::kitChanged,