From 14bdff32e218663523f3940fe639ae792fdee1b1 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 13 Jul 2012 13:09:30 +0200 Subject: remove duplicate -L flags in findLibraries() unlike duplicated -l options, duplicated -L options are really redundant. Change-Id: I4fa42d8ee2f10c6e6263457d9bb97291e13685ef Reviewed-by: Friedemann Kleint Reviewed-by: Joerg Bornemann --- qmake/generators/unix/unixmake.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'qmake') diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp index 8a3a371b1d..c3a96dd5a4 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -476,15 +476,18 @@ UnixMakefileGenerator::findLibraries() const QString lflags[] = { "QMAKE_LIBDIR_FLAGS", "QMAKE_FRAMEWORKPATH_FLAGS", "QMAKE_LIBS", "QMAKE_LIBS_PRIVATE", QString() }; for(int i = 0; !lflags[i].isNull(); i++) { QStringList &l = project->values(lflags[i]); - for(QStringList::Iterator it = l.begin(); it != l.end(); ++it) { + for (QStringList::Iterator it = l.begin(); it != l.end(); ) { bool do_suffix = true; QString stub, dir, extn, opt = (*it).trimmed(); if(opt.startsWith("-")) { if(opt.startsWith("-L")) { QString lib = opt.mid(2); QMakeLocalFileName f(lib); - if(!libdirs.contains(f)) - libdirs.append(f); + if (libdirs.contains(f)) { + it = l.erase(it); + continue; + } + libdirs.append(f); if (!libArg.isEmpty()) *it = libArg + lib; } else if(opt.startsWith("-l")) { @@ -560,6 +563,7 @@ UnixMakefileGenerator::findLibraries() } } } + ++it; } } return false; -- cgit v1.2.3