summaryrefslogtreecommitdiffstats
path: root/qmake
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@gmail.com>2013-12-09 21:46:05 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-17 14:32:19 +0100
commit5c3faa52d7aaab64d1aa6c3800466292a3c3ce18 (patch)
treebbafae194a19e69e18af1166bca28812a85268f4 /qmake
parent328f2f9c35f3cc5e7049a060a608c3f72876484a (diff)
qmake: cleanup DISTFILES
Do not include the project file twice or other .pr? files outside the project tree. Task-number: QTBUG-21910 Change-Id: I62af842282ccdc5b9099d9227d5395ebe3f0698c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'qmake')
-rw-r--r--qmake/generators/unix/unixmake.cpp8
-rw-r--r--qmake/project.h1
2 files changed, 6 insertions, 3 deletions
diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp
index e8eeb8e927..cadd5cf316 100644
--- a/qmake/generators/unix/unixmake.cpp
+++ b/qmake/generators/unix/unixmake.cpp
@@ -109,9 +109,11 @@ UnixMakefileGenerator::init()
project->values("VER_MIN").append(l[1]);
project->values("VER_PAT").append(l[2]);
- project->values("DISTFILES") += project->projectFile();
- if (!project->isEmpty("QMAKE_INTERNAL_INCLUDED_FILES"))
- project->values("DISTFILES") += project->values("QMAKE_INTERNAL_INCLUDED_FILES");
+ QString sroot = project->sourceRoot();
+ foreach (const ProString &iif, project->values("QMAKE_INTERNAL_INCLUDED_FILES")) {
+ if (iif.startsWith(sroot) && iif.at(sroot.length()) == QLatin1Char('/'))
+ project->values("DISTFILES") += fileFixify(iif.toQString(), FileFixifyRelative);
+ }
/* this should probably not be here, but I'm using it to wrap the .t files */
if(project->first("TEMPLATE") == "app")
diff --git a/qmake/project.h b/qmake/project.h
index 26037bb912..fc203c4d7d 100644
--- a/qmake/project.h
+++ b/qmake/project.h
@@ -57,6 +57,7 @@ public:
bool read(const QString &project, LoadFlags what = LoadAll);
QString projectFile() const { return m_projectFile; }
+ QString sourceRoot() const { return m_sourceRoot.isEmpty() ? m_buildRoot : m_sourceRoot; }
QString buildRoot() const { return m_buildRoot; }
QString confFile() const { return m_conffile; }
QString cacheFile() const { return m_cachefile; }