summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@digia.com>2013-03-11 18:00:34 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-03-16 00:12:47 +0100
commitbe1116fe909a60341f714d5ce0765798a08722e7 (patch)
treecc578e1f4f69ff3a5171fdfededee2c4c63a2f08
parentb36cdba33932eb798c35b852560782a7a4276c6c (diff)
make depend_prl more thorough; introduce fast_depend_prl
depend_prl would so far only ensure that the dependency existed, not that it would be up to date. this is of only limited value, so make sure that the dependencies are always updated. as this is somewhat expensive (every dependency's makefile will be entered as many times as it is used, plus one), provide an opt-out by adding fast_depend_prl. Task-number: QTBUG-29486 Change-Id: Ifa2e100bc4c269a403ab620927bfe5c7efe9a435 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
-rw-r--r--qmake/generators/unix/unixmake2.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp
index 2dfe16dbfc..400908bc91 100644
--- a/qmake/generators/unix/unixmake2.cpp
+++ b/qmake/generators/unix/unixmake2.cpp
@@ -349,7 +349,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
<< project->first("QMAKE_EXTENSION_STATICLIB") << " ";
t << endl << endl;
}
- if(project->isActiveConfig("depend_prl") && !project->isEmpty("QMAKE_PRL_INTERNAL_FILES")) {
+ if ((project->isActiveConfig("depend_prl") || project->isActiveConfig("fast_depend_prl"))
+ && !project->isEmpty("QMAKE_PRL_INTERNAL_FILES")) {
const ProStringList &l = project->values("QMAKE_PRL_INTERNAL_FILES");
ProStringList::ConstIterator it;
for(it = l.begin(); it != l.end(); ++it) {
@@ -361,8 +362,12 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
dir = (*it).left(slsh + 1);
QString targ = dir + libinfo.first("QMAKE_PRL_TARGET");
target_deps += " " + targ;
- t << targ << ":" << "\n\t"
- << "@echo \"Creating '" << targ << "'\"" << "\n\t"
+ t << targ;
+ if (project->isActiveConfig("fast_depend_prl"))
+ t << ":\n\t@echo \"Creating '";
+ else
+ t << ": FORCE\n\t@echo \"Creating/updating '";
+ t << targ << "'\"" << "\n\t"
<< "(cd " << libinfo.first("QMAKE_PRL_BUILD_DIR") << ";"
<< "$(MAKE))" << endl;
}