From 2bbd50c6e4b33b342f4d69c587c07afc964a9cb2 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 18 May 2012 16:59:22 +0200 Subject: make 'qmake_all' target of SUBDIRS projects properly recursive so far it would rebuild the makefiles one level down only, which is somewhat arbitrary and not really helpful. Change-Id: I5fe01f379ecc4b210610a674d7df7dfc18131eef Reviewed-by: Joerg Bornemann Reviewed-by: Oswald Buddenhagen --- qmake/generators/makefile.cpp | 26 ++++++++++++++++++++------ qmake/generators/makefile.h | 2 +- 2 files changed, 21 insertions(+), 7 deletions(-) (limited to 'qmake') diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 2b63a14906..131bbb5303 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -2413,6 +2413,8 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QListisActiveConfig("dont_recurse"); + // generate target rules for(int target = 0; target < targets.size(); ++target) { SubTarget *subtarget = targets.at(target); @@ -2453,6 +2455,8 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QListmakefile; + //qmake it if(!subtarget->profile.isEmpty()) { QString out = subtarget->makefile; @@ -2476,14 +2480,16 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QListmakefile; - { //actually compile t << subtarget->target << ": " << mkfile; if(!subtarget->depends.isEmpty()) @@ -2522,7 +2528,7 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QListisEmpty("QMAKE_FAILED_REQUIREMENTS") && !project->isEmpty("QMAKE_INTERNAL_PRL_FILE")) { @@ -2712,6 +2718,14 @@ MakefileGenerator::writeMakeQmake(QTextStream &t) if(project->isEmpty("QMAKE_NOFORCE")) t << " FORCE"; t << "\n\t" << "@" << qmake << endl << endl; + if (!noDummyQmakeAll) { + t << "qmake_all:"; + if (project->isEmpty("QMAKE_NOFORCE")) + t << " FORCE"; + if (project->isActiveConfig("no_empty_targets")) + t << "\n\t" << "@cd ."; + t << endl << endl; + } } } } diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h index a4ec259bb0..64ed2dd30a 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -97,7 +97,7 @@ protected: void writeInstalls(QTextStream &t, const QString &installs, bool noBuild=false); void writeHeader(QTextStream &t); void writeSubDirs(QTextStream &t); - void writeMakeQmake(QTextStream &t); + void writeMakeQmake(QTextStream &t, bool noDummyQmakeAll = false); void writeExtraVariables(QTextStream &t); void writeExtraTargets(QTextStream &t); void writeExtraCompilerTargets(QTextStream &t); -- cgit v1.2.3