summaryrefslogtreecommitdiffstats
path: root/qmake/generators/unix
diff options
context:
space:
mode:
authorJohn Brooks <john.brooks@dereferenced.net>2015-03-10 18:02:54 -0600
committerJohn Brooks <john.brooks@dereferenced.net>2015-03-13 03:48:29 +0000
commit3f8e3373e1b7fd34d4223b8853587273ae6beb34 (patch)
tree0383f7b9538e842c74333ef9be0b4f90f87acb48 /qmake/generators/unix
parent642daa76e5dceb6d97dd1aa20f6aef60f09bd1b3 (diff)
Fix QMAKE_INFO_PLIST regression with relative paths
In de5553aa, qmake was fixed to resolve QMAKE_INFO_PLIST based on the current pwd to fix QTBUG-21267. This fix was lost as part of 8c138054 in 5.4. This fixes the error: "WARNING: Could not resolve Info.plist ..." when using qmake for shadow builds on OS X. [ChangeLog][qmake][OS X/iOS] Fixed QMAKE_INFO_PLIST path resolution for shadow builds Change-Id: Icb42b2b3a44856f9b9a86a008081a3353951640d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'qmake/generators/unix')
-rw-r--r--qmake/generators/unix/unixmake2.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp
index 469f23340d..f3a24a8681 100644
--- a/qmake/generators/unix/unixmake2.cpp
+++ b/qmake/generators/unix/unixmake2.cpp
@@ -779,14 +779,17 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
}
//copy the plist
while (!project->isActiveConfig("no_plist")) { // 'while' just to be able to 'break'
- QString info_plist = escapeFilePath(fileFixify(project->first("QMAKE_INFO_PLIST").toQString()));
- if (info_plist.isEmpty())
- info_plist = specdir() + QDir::separator() + "Info.plist." + project->first("TEMPLATE");
- if (!exists(Option::fixPathToLocalOS(info_plist))) {
+ QString info_plist = project->first("QMAKE_INFO_PLIST").toQString();
+ if (info_plist.isEmpty()) {
+ info_plist = escapeFilePath(specdir() + QDir::separator() + "Info.plist." + project->first("TEMPLATE"));
+ } else if (!exists(Option::fixPathToLocalOS(info_plist))) {
warn_msg(WarnLogic, "Could not resolve Info.plist: '%s'. Check if QMAKE_INFO_PLIST points to a valid file.",
info_plist.toLatin1().constData());
break;
+ } else {
+ info_plist = escapeFilePath(fileFixify(info_plist));
}
+
bool isApp = (project->first("TEMPLATE") == "app");
QString info_plist_out = escapeFilePath(
bundle_dir + (isApp ? "Contents/Info.plist"