diff --git a/src/plugins/android/androidqtversion.cpp b/src/plugins/android/androidqtversion.cpp index 952580462d8..94872e34c81 100644 --- a/src/plugins/android/androidqtversion.cpp +++ b/src/plugins/android/androidqtversion.cpp @@ -145,12 +145,10 @@ void AndroidQtVersion::addToEnvironment(const Kit *k, Utils::Environment &env) c config.bestNdkPlatformMatch(qMax(minimumNDK(), AndroidManager::minimumSDK(k)), this)); } -Utils::Environment AndroidQtVersion::qmakeRunEnvironment() const +void AndroidQtVersion::setupQmakeRunEnvironment(Utils::Environment &env) const { - Utils::Environment env = Utils::Environment::systemEnvironment(); env.set(QLatin1String("ANDROID_NDK_ROOT"), AndroidConfigurations::currentConfig().ndkLocation(this).toUserOutput()); - return env; } QString AndroidQtVersion::description() const diff --git a/src/plugins/android/androidqtversion.h b/src/plugins/android/androidqtversion.h index bb5c5ff7a50..61ce4967532 100644 --- a/src/plugins/android/androidqtversion.h +++ b/src/plugins/android/androidqtversion.h @@ -47,7 +47,7 @@ public: ProjectExplorer::Abis detectQtAbis() const override; void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const override; - Utils::Environment qmakeRunEnvironment() const override; + void setupQmakeRunEnvironment(Utils::Environment &env) const override; QSet availableFeatures() const override; QSet targetDeviceTypes() const override; diff --git a/src/plugins/qnx/qnxqtversion.cpp b/src/plugins/qnx/qnxqtversion.cpp index 2265bd2f1a2..02dceac4a48 100644 --- a/src/plugins/qnx/qnxqtversion.cpp +++ b/src/plugins/qnx/qnxqtversion.cpp @@ -134,15 +134,12 @@ void QnxQtVersion::addToEnvironment(const Kit *k, Environment &env) const env.prependOrSetLibrarySearchPath(libraryPath().toString()); } -Environment QnxQtVersion::qmakeRunEnvironment() const +void QnxQtVersion::setupQmakeRunEnvironment(Utils::Environment &env) const { if (!sdpPath().isEmpty()) updateEnvironment(); - Environment env = Environment::systemEnvironment(); env.modify(m_qnxEnv); - - return env; } QtSupport::QtConfigWidget *QnxQtVersion::createConfigurationWidget() const diff --git a/src/plugins/qnx/qnxqtversion.h b/src/plugins/qnx/qnxqtversion.h index 55d5522cc53..bd8876def20 100644 --- a/src/plugins/qnx/qnxqtversion.h +++ b/src/plugins/qnx/qnxqtversion.h @@ -56,7 +56,7 @@ public: ProjectExplorer::Abis detectQtAbis() const override; void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const override; - Utils::Environment qmakeRunEnvironment() const override; + void setupQmakeRunEnvironment(Utils::Environment &env) const override; QtSupport::QtConfigWidget *createConfigurationWidget() const override; diff --git a/src/plugins/qtsupport/baseqtversion.cpp b/src/plugins/qtsupport/baseqtversion.cpp index 10a295578f8..41fddfce7fb 100644 --- a/src/plugins/qtsupport/baseqtversion.cpp +++ b/src/plugins/qtsupport/baseqtversion.cpp @@ -1182,7 +1182,9 @@ void BaseQtVersion::ensureMkSpecParsed() const QMakeVfs vfs; QMakeGlobals option; applyProperties(&option); - option.environment = qmakeRunEnvironment().toProcessEnvironment(); + Environment env = Environment::systemEnvironment(); // FIXME: Use build device + setupQmakeRunEnvironment(env); + option.environment = env.toProcessEnvironment(); ProMessageHandler msgHandler(true); ProFileCacheManager::instance()->incRefCount(); QMakeParser parser(ProFileCacheManager::instance()->cache(), &vfs, &msgHandler); @@ -1706,9 +1708,17 @@ void BaseQtVersion::addToEnvironment(const Kit *k, Environment &env) const // One such example is Blackberry which for some reason decided to always use the same // qmake and use environment variables embedded in their mkspecs to make that point to // the different Qt installations. + Environment BaseQtVersion::qmakeRunEnvironment() const { - return Environment::systemEnvironment(); + Environment env = Environment::systemEnvironment(); // FIXME: Use build environment + setupQmakeRunEnvironment(env); + return env; +} + +void BaseQtVersion::setupQmakeRunEnvironment(Environment &env) const +{ + Q_UNUSED(env); } bool BaseQtVersion::hasQmlDumpWithRelocatableFlag() const diff --git a/src/plugins/qtsupport/baseqtversion.h b/src/plugins/qtsupport/baseqtversion.h index fde110da62b..65cf7669d69 100644 --- a/src/plugins/qtsupport/baseqtversion.h +++ b/src/plugins/qtsupport/baseqtversion.h @@ -122,7 +122,7 @@ public: void applyProperties(QMakeGlobals *qmakeGlobals) const; virtual void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const; - virtual Utils::Environment qmakeRunEnvironment() const; + Utils::Environment qmakeRunEnvironment() const; // source path defined by qmake property QT_INSTALL_PREFIX/src or by qmake.stash QT_SOURCE_TREE Utils::FilePath sourcePath() const; @@ -253,6 +253,7 @@ protected: void ensureMkSpecParsed() const; virtual void parseMkSpec(ProFileEvaluator *) const; + virtual void setupQmakeRunEnvironment(Utils::Environment &env) const; private: void updateDefaultDisplayName();