diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-04-24 01:00:18 +0200 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-04-24 01:00:19 +0200 |
commit | 02268b84960244945cbff4b11f8475bbf1f9388b (patch) | |
tree | e5d5e7477b6cf9de9cac3664fa98172f91d80591 /qmake | |
parent | be9a56e5e3ced5d0d668fa24e4c65ae928f2e25a (diff) | |
parent | c579f49e2a80a55a4004ff8e5b2ee76bda146387 (diff) |
Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: If950406391f79d99f0101f0b6755395accb26f34
Diffstat (limited to 'qmake')
-rw-r--r-- | qmake/generators/unix/unixmake.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp index 30f99174f8..894020d2bd 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -461,10 +461,24 @@ UnixMakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags) opt = (*++it).toQString(); else opt = opt.mid(10).trimmed(); + static const QChar suffixMarker = ','; + const int suffixPosition = opt.indexOf(suffixMarker); + const bool hasSuffix = suffixPosition >= 0; + QString frameworkName = opt; + if (hasSuffix) { + frameworkName.truncate(suffixPosition); + opt.remove(suffixMarker); // Apply suffix by removing marker + } for (const QMakeLocalFileName &dir : qAsConst(frameworkdirs)) { - QString prl = dir.local() + "/" + opt + ".framework/" + opt + Option::prl_ext; - if (processPrlFile(prl)) + QString frameworkDirectory = dir.local() + "/" + frameworkName + + ".framework/"; + QString suffixedPrl = frameworkDirectory + opt + Option::prl_ext; + if (processPrlFile(suffixedPrl)) break; + if (hasSuffix) { + QString unsuffixedPrl = frameworkDirectory + frameworkName + Option::prl_ext; + if (processPrlFile(unsuffixedPrl)) + break; + } } } else { if (opt.length() == 10) |