summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@petroules.com>2013-08-26 09:31:08 -0400
committerJoerg Bornemann <joerg.bornemann@digia.com>2013-08-27 14:12:17 +0200
commiteb7287fb0263f24978e090025fb137f706f5237c (patch)
tree62e2624ec3f192f145e6d59e44a380ec50e57fce /share
parent0276bf6fb488a00fdcd5c0ebcbdb9ee6c5e37327 (diff)
downloadqbs-eb7287fb0263f24978e090025fb137f706f5237c.tar.gz
Fix Info.plist variable replacement.
Now handles braces in addition to parenthesis and passes some more vital environment variables. Change-Id: I5f3d6d53a9d464855eff47bc4eedc12f5140bdca Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'share')
-rw-r--r--share/qbs/modules/cpp/DarwinGCC.qbs6
-rw-r--r--share/qbs/modules/cpp/darwin-tools.js5
2 files changed, 7 insertions, 4 deletions
diff --git a/share/qbs/modules/cpp/DarwinGCC.qbs b/share/qbs/modules/cpp/DarwinGCC.qbs
index 01e3fbeb1..77257041c 100644
--- a/share/qbs/modules/cpp/DarwinGCC.qbs
+++ b/share/qbs/modules/cpp/DarwinGCC.qbs
@@ -25,7 +25,9 @@ UnixGCC {
property bool buildDsym: qbs.buildVariant === "release"
property var buildEnv: {
var env = {
- "LANG": "en_US.US-ASCII"
+ "EXECUTABLE_NAME": product.targetName,
+ "LANG": "en_US.US-ASCII",
+ "PRODUCT_NAME": product.name
}
if (minimumIosVersion)
env["IPHONEOS_DEPLOYMENT_TARGET"] = minimumIosVersion;
@@ -254,7 +256,7 @@ UnixGCC {
for (key in buildEnv)
env[key] = buildEnv[key];
- DarwinTools.doRepl(infoPlist, env, true);
+ DarwinTools.doRepl(aggregatePlist, env, true);
}
// Write the plist contents as JSON
diff --git a/share/qbs/modules/cpp/darwin-tools.js b/share/qbs/modules/cpp/darwin-tools.js
index b8388a496..fa05361f4 100644
--- a/share/qbs/modules/cpp/darwin-tools.js
+++ b/share/qbs/modules/cpp/darwin-tools.js
@@ -57,8 +57,9 @@ function doRepl(obj, env, warn)
var i = value.indexOf('$')
var changes = false;
while (i !== -1) {
- if (value.charAt(i+1) === '(') {
- var j = value.indexOf(')', i + 2);
+ var brace = value.charAt(i+1);
+ if (brace === '(' || brace === '{') {
+ var j = value.indexOf(brace === '(' ? ')' : '}', i + 2);
if (j === -1)
break;
var varName = value.slice(i + 2, j);