aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@petroules.com>2014-03-02 15:03:37 -0500
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-03-12 16:23:15 +0100
commitfe1048e5b31504d525482c6fcf0298afdea6bda9 (patch)
tree31097738fb3a37c418e6354bbb2f52532522c14e /share/qbs/modules/cpp
parentf9572bfc40c9af5a1aa23f475bde538e870475ec (diff)
Replace qmake placeholders in Info.plist.
Task-number: QBS-469 Change-Id: I14a53fa63c5c98baebd1c2c452bbf1e2d7b3df71 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'share/qbs/modules/cpp')
-rw-r--r--share/qbs/modules/cpp/DarwinGCC.qbs17
1 files changed, 16 insertions, 1 deletions
diff --git a/share/qbs/modules/cpp/DarwinGCC.qbs b/share/qbs/modules/cpp/DarwinGCC.qbs
index d94264c12..3ab703d57 100644
--- a/share/qbs/modules/cpp/DarwinGCC.qbs
+++ b/share/qbs/modules/cpp/DarwinGCC.qbs
@@ -54,6 +54,17 @@ UnixGCC {
return env;
}
+ readonly property var qmakeEnv: {
+ return {
+ "BUNDLEIDENTIFIER": "org.example." + DarwinTools.rfc1034(product.targetName),
+ "EXECUTABLE": product.targetName,
+ "ICON": product.targetName, // ### QBS-73
+ "LIBRARY": product.targetName,
+ "SHORT_VERSION": product.version || "1.0", // CFBundleShortVersionString
+ "TYPEINFO": "????" // CFBundleSignature
+ };
+ }
+
readonly property var defaultInfoPlist: {
// Not a product type which uses Info.plists
if (!product.type.contains("application") && !product.type.contains("applicationbundle") &&
@@ -74,7 +85,7 @@ UnixGCC {
};
if (product.type.contains("applicationbundle"))
- dict["CFBundleIconFile"] = product.targetName;
+ dict["CFBundleIconFile"] = product.targetName; // ### QBS-73
if (qbs.targetOS.contains("osx")) {
dict["NSPrincipalClass"] = "NSApplication"; // needed for Retina display support
@@ -162,6 +173,7 @@ UnixGCC {
cmd.toolchainInstallPath = product.moduleProperty("cpp", "toolchainInstallPath");
cmd.sysroot = product.moduleProperty("qbs", "sysroot");
cmd.buildEnv = product.moduleProperty("cpp", "buildEnv");
+ cmd.qmakeEnv = product.moduleProperty("cpp", "qmakeEnv");
cmd.platformInfoPlist = product.moduleProperty("cpp", "platformInfoPlist");
cmd.sdkSettingsPlist = product.moduleProperty("cpp", "sdkSettingsPlist");
@@ -273,6 +285,9 @@ UnixGCC {
for (key in buildEnv)
env[key] = buildEnv[key];
+ for (key in qmakeEnv)
+ env[key] = qmakeEnv[key];
+
DarwinTools.expandPlistEnvironmentVariables(aggregatePlist, env, true);
}