summaryrefslogtreecommitdiffstats
path: root/qmake/generators/unix/unixmake.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qmake/generators/unix/unixmake.cpp')
-rw-r--r--qmake/generators/unix/unixmake.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp
index 5ea47cc867..484ce19225 100644
--- a/qmake/generators/unix/unixmake.cpp
+++ b/qmake/generators/unix/unixmake.cpp
@@ -111,6 +111,8 @@ UnixMakefileGenerator::init()
QString sroot = project->sourceRoot();
foreach (const ProString &iif, project->values("QMAKE_INTERNAL_INCLUDED_FILES")) {
+ if (iif == project->cacheFile())
+ continue;
if (iif.startsWith(sroot) && iif.at(sroot.length()) == QLatin1Char('/'))
project->values("DISTFILES") += fileFixify(iif.toQString(), FileFixifyRelative);
}
@@ -169,11 +171,13 @@ UnixMakefileGenerator::init()
}
ProStringList &qmklibs = project->values("QMAKE_LIBS");
qmklibs = ldadd + qmklibs;
- if(!project->isEmpty("QMAKE_RPATHDIR")) {
+ if (!project->isEmpty("QMAKE_RPATHDIR") && !project->isEmpty("QMAKE_LFLAGS_RPATH")) {
const ProStringList &rpathdirs = project->values("QMAKE_RPATHDIR");
- for(int i = 0; i < rpathdirs.size(); ++i) {
- if(!project->isEmpty("QMAKE_LFLAGS_RPATH"))
- project->values("QMAKE_LFLAGS") += var("QMAKE_LFLAGS_RPATH") + escapeFilePath(QFileInfo(rpathdirs[i].toQString()).absoluteFilePath());
+ for (int i = 0; i < rpathdirs.size(); ++i) {
+ QString rpathdir = rpathdirs[i].toQString();
+ if (!rpathdir.startsWith('@') && !rpathdir.startsWith('$'))
+ rpathdir = QFileInfo(rpathdir).absoluteFilePath();
+ project->values("QMAKE_LFLAGS") += var("QMAKE_LFLAGS_RPATH") + escapeFilePath(rpathdir);
}
}
if (!project->isEmpty("QMAKE_RPATHLINKDIR")) {