diff options
author | Tor Arne Vestbø <tor.arne.vestbo@digia.com> | 2013-10-30 15:21:04 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-31 12:33:55 +0100 |
commit | f9a8cf99bc0b9afda44c0b3e7e8af141003bbd9b (patch) | |
tree | 212068a75856997db9d4973c62244b77bd0aa579 | |
parent | 22aea3f42b17a3675f95f39c6d9d33f4075f8f8e (diff) | |
download | qtbase-f9a8cf99bc0b9afda44c0b3e7e8af141003bbd9b.tar.gz qtbase-f9a8cf99bc0b9afda44c0b3e7e8af141003bbd9b.tar.bz2 qtbase-f9a8cf99bc0b9afda44c0b3e7e8af141003bbd9b.zip |
qmake: Pick up default bundle prefix from Xcode preferences
But still fall back to 'com.yourcompany', just like Xcode does for the
initial launch.
Change-Id: I89afadefafc254a0014aca197741d42a0199943e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
-rw-r--r-- | mkspecs/features/mac/default_pre.prf | 9 | ||||
-rw-r--r-- | mkspecs/macx-clang-32/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-clang/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-g++-32/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-g++/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-g++40/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-g++42/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-icc/Info.plist.app | 2 | ||||
-rwxr-xr-x | mkspecs/macx-ios-clang/Info.plist.app | 2 | ||||
-rw-r--r-- | mkspecs/macx-llvm/Info.plist.app | 2 | ||||
-rw-r--r-- | qmake/generators/mac/pbuilder_pbx.cpp | 5 |
11 files changed, 22 insertions, 10 deletions
diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf index 98caf54f8a..c031403930 100644 --- a/mkspecs/features/mac/default_pre.prf +++ b/mkspecs/features/mac/default_pre.prf @@ -24,6 +24,15 @@ isEmpty(QMAKE_XCODE_VERSION) { unset(xcode_version) } +isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) { + QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist + exists($$QMAKE_XCODE_PREFERENCES_FILE): \ + QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null") + + !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \ + cache(QMAKE_TARGET_BUNDLE_PREFIX) +} + # This variable is used by the xcode_dynamic_library_suffix # feature, which allows Xcode to choose the Qt libraries to link to # at build time, depending on the current Xcode SDK and configuration. diff --git a/mkspecs/macx-clang-32/Info.plist.app b/mkspecs/macx-clang-32/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-clang-32/Info.plist.app +++ b/mkspecs/macx-clang-32/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-clang/Info.plist.app b/mkspecs/macx-clang/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-clang/Info.plist.app +++ b/mkspecs/macx-clang/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-g++-32/Info.plist.app b/mkspecs/macx-g++-32/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-g++-32/Info.plist.app +++ b/mkspecs/macx-g++-32/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-g++/Info.plist.app b/mkspecs/macx-g++/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-g++/Info.plist.app +++ b/mkspecs/macx-g++/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-g++40/Info.plist.app b/mkspecs/macx-g++40/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-g++40/Info.plist.app +++ b/mkspecs/macx-g++40/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-g++42/Info.plist.app b/mkspecs/macx-g++42/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-g++42/Info.plist.app +++ b/mkspecs/macx-g++42/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-icc/Info.plist.app b/mkspecs/macx-icc/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-icc/Info.plist.app +++ b/mkspecs/macx-icc/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/mkspecs/macx-ios-clang/Info.plist.app b/mkspecs/macx-ios-clang/Info.plist.app index 91f4b3d07e..5a0a631d7f 100755 --- a/mkspecs/macx-ios-clang/Info.plist.app +++ b/mkspecs/macx-ios-clang/Info.plist.app @@ -13,7 +13,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@BUNDLEIDENTIFIER@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>CFBundleDisplayName</key> <string>${PRODUCT_NAME}</string> <key>CFBundleName</key> diff --git a/mkspecs/macx-llvm/Info.plist.app b/mkspecs/macx-llvm/Info.plist.app index 187a8e0aa4..8e44bd7f60 100644 --- a/mkspecs/macx-llvm/Info.plist.app +++ b/mkspecs/macx-llvm/Info.plist.app @@ -15,7 +15,7 @@ <key>CFBundleExecutable</key> <string>@EXECUTABLE@</string> <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> + <string>@BUNDLEIDENTIFIER@</string> <key>NOTE</key> <string>This file was generated by Qt/QMake.</string> </dict> diff --git a/qmake/generators/mac/pbuilder_pbx.cpp b/qmake/generators/mac/pbuilder_pbx.cpp index 99373a0b8a..307b3d27ba 100644 --- a/qmake/generators/mac/pbuilder_pbx.cpp +++ b/qmake/generators/mac/pbuilder_pbx.cpp @@ -1404,7 +1404,10 @@ ProjectBuilderMakefileGenerator::writeMakeParts(QTextStream &t) } else { plist_in_text = plist_in_text.replace("@LIBRARY@", project->first("QMAKE_ORIG_TARGET").toQString()); } - plist_in_text = plist_in_text.replace("@BUNDLEIDENTIFIER@", QLatin1String("${PRODUCT_NAME:rfc1034identifier}")); + QString bundlePrefix = project->first("QMAKE_TARGET_BUNDLE_PREFIX").toQString(); + if (bundlePrefix.isEmpty()) + bundlePrefix = "com.yourcompany"; + plist_in_text = plist_in_text.replace("@BUNDLEIDENTIFIER@", bundlePrefix + "." + QLatin1String("${PRODUCT_NAME:rfc1034identifier}")); if (!project->values("VERSION").isEmpty()) { plist_in_text = plist_in_text.replace("@SHORT_VERSION@", project->first("VER_MAJ") + "." + project->first("VER_MIN")); |