diff options
author | John Brooks <john.brooks@dereferenced.net> | 2015-03-10 18:02:54 -0600 |
---|---|---|
committer | John Brooks <john.brooks@dereferenced.net> | 2015-03-13 03:48:29 +0000 |
commit | 3f8e3373e1b7fd34d4223b8853587273ae6beb34 (patch) | |
tree | 0383f7b9538e842c74333ef9be0b4f90f87acb48 /qmake/generators | |
parent | 642daa76e5dceb6d97dd1aa20f6aef60f09bd1b3 (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')
-rw-r--r-- | qmake/generators/unix/unixmake2.cpp | 11 |
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" |