aboutsummaryrefslogtreecommitdiffstats
path: root/src/app/app.pro
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@qt.io>2017-07-05 15:53:53 -0700
committerJake Petroules <jake.petroules@qt.io>2017-07-07 17:50:02 +0000
commit4196534759f7f7aa04c8675378cfec57539abc75 (patch)
tree9a637013cc5ac5bc1671b631c39389771bd74c2a /src/app/app.pro
parentb80d5c1c95f44991c12cf997dfe5c09b442a6af2 (diff)
Fix the deployment target problem once and for all
Instead of hardcoding the value of LSMinimumSystemVersion in Info.plist where we will always forget to update it (and since Qt Creator can be built with multiple versions of Qt, it will almost certainly be wrong for one of those versions), automatically determine the value from QMAKE_MACOSX_DEPLOYMENT_TARGET, which is authoritative. This should prevent mishaps where users try to run Qt Creator on older OS versions and receive a crash dialog instead of the friendly "This app requires a newer version of macOS" message that a properly set LSMinimumSystemVersion value will induce. The Qbs build is not affected by this problem, as Qbs automatically handles the minimum deployment target even when a custom Info.plist is specified. The solution chosen in this patch was used instead of QMAKE_SUBSTITUTES because the Qbs build also uses the Info.plist input file and it would break the Qbs build if the quotes were to be escaped, since it would become invalid XML. Change-Id: I20625a2fae546c6597a567f28864b12917e8ac39 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'src/app/app.pro')
-rw-r--r--src/app/app.pro7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/app/app.pro b/src/app/app.pro
index fee710e99d..58dca7ba05 100644
--- a/src/app/app.pro
+++ b/src/app/app.pro
@@ -53,7 +53,12 @@ win32 {
INSTALLS += icns
}
}
- QMAKE_INFO_PLIST = Info.plist
+
+ infoplist = $$cat($$PWD/Info.plist, blob)
+ infoplist = $$replace(infoplist, @MACOSX_DEPLOYMENT_TARGET@, $$QMAKE_MACOSX_DEPLOYMENT_TARGET)
+ write_file($$OUT_PWD/Info.plist, infoplist)
+
+ QMAKE_INFO_PLIST = $$OUT_PWD/Info.plist
}
target.path = $$INSTALL_APP_PATH