aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/api
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2017-11-17 16:19:57 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2017-11-22 15:41:43 +0000
commit3b55e4b03499730085924edfdf04b140ef62274e (patch)
treefee3b33cdc91d2e68531c4b6757e9443df0f7741 /src/lib/corelib/api
parentdf04c86b873ae6167230e66c5a33b2a460e86da0 (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.cpp5
-rw-r--r--src/lib/corelib/api/project.h3
-rw-r--r--src/lib/corelib/api/runenvironment.cpp15
-rw-r--r--src/lib/corelib/api/runenvironment.h4
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();