diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2017-11-17 16:19:57 +0100 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2017-11-22 15:41:43 +0000 |
commit | 3b55e4b03499730085924edfdf04b140ef62274e (patch) | |
tree | fee3b33cdc91d2e68531c4b6757e9443df0f7741 /src/lib/corelib/api | |
parent | df04c86b873ae6167230e66c5a33b2a460e86da0 (diff) |
Give the setupRunEnvironment script an additional parameter
Required by follow-up commit.
[ChangeLog] The Module.setupRunEnvironment script now has a new parameter
"config". Users can set it via the --setup-run-env-config option of the
run command.
Change-Id: I1be57fcff5321874cf3dcf4fb3a7ef7d6f69a8a5
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Diffstat (limited to 'src/lib/corelib/api')
-rw-r--r-- | src/lib/corelib/api/project.cpp | 5 | ||||
-rw-r--r-- | src/lib/corelib/api/project.h | 3 | ||||
-rw-r--r-- | src/lib/corelib/api/runenvironment.cpp | 15 | ||||
-rw-r--r-- | src/lib/corelib/api/runenvironment.h | 4 |
4 files changed, 18 insertions, 9 deletions
diff --git a/src/lib/corelib/api/project.cpp b/src/lib/corelib/api/project.cpp index e7f9962e1..74fa42dec 100644 --- a/src/lib/corelib/api/project.cpp +++ b/src/lib/corelib/api/project.cpp @@ -944,11 +944,12 @@ ProjectData Project::projectData() const RunEnvironment Project::getRunEnvironment(const ProductData &product, const InstallOptions &installOptions, - const QProcessEnvironment &environment, Settings *settings) const + const QProcessEnvironment &environment, + const QStringList &setupRunEnvConfig, Settings *settings) const { const ResolvedProductPtr resolvedProduct = d->internalProduct(product); return RunEnvironment(resolvedProduct, d->internalProject, installOptions, environment, - settings, d->logger); + setupRunEnvConfig, settings, d->logger); } /*! diff --git a/src/lib/corelib/api/project.h b/src/lib/corelib/api/project.h index 1b80d59cf..70ccef155 100644 --- a/src/lib/corelib/api/project.h +++ b/src/lib/corelib/api/project.h @@ -97,7 +97,8 @@ public: ProjectData projectData() const; RunEnvironment getRunEnvironment(const ProductData &product, const InstallOptions &installOptions, - const QProcessEnvironment &environment, Settings *settings) const; + const QProcessEnvironment &environment, + const QStringList &setupRunEnvConfig, Settings *settings) const; enum ProductSelection { ProductSelectionDefaultOnly, ProductSelectionWithNonDefault }; BuildJob *buildAllProducts(const BuildOptions &options, diff --git a/src/lib/corelib/api/runenvironment.cpp b/src/lib/corelib/api/runenvironment.cpp index e980210cf..05acfcdf8 100644 --- a/src/lib/corelib/api/runenvironment.cpp +++ b/src/lib/corelib/api/runenvironment.cpp @@ -73,11 +73,12 @@ class RunEnvironment::RunEnvironmentPrivate public: RunEnvironmentPrivate(const ResolvedProductPtr &product, const TopLevelProjectConstPtr &project, const InstallOptions &installOptions, const QProcessEnvironment &environment, - Settings *settings, const Logger &logger) + const QStringList &setupRunEnvConfig, Settings *settings, const Logger &logger) : resolvedProduct(product) , project(project) , installOptions(installOptions) , environment(environment) + , setupRunEnvConfig(setupRunEnvConfig) , settings(settings) , logger(logger) , evalContext(this->logger) @@ -88,6 +89,7 @@ public: const TopLevelProjectConstPtr project; InstallOptions installOptions; const QProcessEnvironment environment; + const QStringList setupRunEnvConfig; Settings * const settings; Logger logger; RulesEvaluationContext evalContext; @@ -95,8 +97,10 @@ public: RunEnvironment::RunEnvironment(const ResolvedProductPtr &product, const TopLevelProjectConstPtr &project, const InstallOptions &installOptions, - const QProcessEnvironment &environment, Settings *settings, const Logger &logger) - : d(new RunEnvironmentPrivate(product, project, installOptions, environment, settings, logger)) + const QProcessEnvironment &environment, const QStringList &setupRunEnvConfig, + Settings *settings, const Logger &logger) + : d(new RunEnvironmentPrivate(product, project, installOptions, environment, setupRunEnvConfig, + settings, logger)) { } @@ -403,7 +407,8 @@ int RunEnvironment::doRunTarget(const QString &targetBin, const QStringList &arg QProcessEnvironment env = d->environment; env.insert(QLatin1String("QBS_RUN_FILE_PATH"), targetBin); - EnvironmentScriptRunner(d->resolvedProduct.get(), &d->evalContext, env).setupForRun(); + EnvironmentScriptRunner(d->resolvedProduct.get(), &d->evalContext, env) + .setupForRun(d->setupRunEnvConfig); d->logger.qbsInfo() << Tr::tr("Starting target '%1'.").arg(QDir::toNativeSeparators(targetBin)); QProcess process; @@ -439,7 +444,7 @@ const QProcessEnvironment RunEnvironment::getRunEnvironment() const if (!d->resolvedProduct) return d->environment; EnvironmentScriptRunner(d->resolvedProduct.get(), &d->evalContext, d->environment) - .setupForRun(); + .setupForRun(d->setupRunEnvConfig); return d->resolvedProduct->runEnvironment; } diff --git a/src/lib/corelib/api/runenvironment.h b/src/lib/corelib/api/runenvironment.h index d285c66e5..671fc6130 100644 --- a/src/lib/corelib/api/runenvironment.h +++ b/src/lib/corelib/api/runenvironment.h @@ -77,7 +77,9 @@ private: RunEnvironment(const Internal::ResolvedProductPtr &product, const Internal::TopLevelProjectConstPtr &project, const InstallOptions &installOptions, - const QProcessEnvironment &environment, Settings *settings, + const QProcessEnvironment &environment, + const QStringList &setupRunEnvConfig, + Settings *settings, const Internal::Logger &logger); int doRunShell(); |