summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2011-01-04 14:20:55 (GMT)
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2011-01-04 14:43:10 (GMT)
commit91e127444f1b217525263b26f44fb566b9067d75 (patch)
treeed0ff9cae4aa29613045d75c7e21a2efa5141dd1
parent1f24941131a7ab62969265f1e29ef990dbc60ff5 (diff)
downloadQt-91e127444f1b217525263b26f44fb566b9067d75.zip
Qt-91e127444f1b217525263b26f44fb566b9067d75.tar.gz
Qt-91e127444f1b217525263b26f44fb566b9067d75.tar.bz2
Generate freeze targets in Symbian
Make it possible to freeze def files via makefile targets. Task-number: QTBUG-13769 Reviewed-by: Janne Koskinen
-rw-r--r--qmake/generators/symbian/symmake_abld.cpp21
-rw-r--r--qmake/generators/symbian/symmake_sbsv2.cpp29
2 files changed, 50 insertions, 0 deletions
diff --git a/qmake/generators/symbian/symmake_abld.cpp b/qmake/generators/symbian/symmake_abld.cpp
index eb39d36..94cb22e 100644
--- a/qmake/generators/symbian/symmake_abld.cpp
+++ b/qmake/generators/symbian/symmake_abld.cpp
@@ -406,6 +406,27 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool
t << "\t$(ABLD)" << testClause << " reallyclean " << item << " urel" << endl;
}
t << endl;
+
+ t << "freeze: $(ABLD)" << endl;
+ t << "\t$(ABLD)" << testClause << " freeze" << endl;
+ t << endl;
+
+ // Abld toolchain doesn't differentiate between freezing release or debug
+ t << "freeze-debug: freeze" << endl << endl;
+ t << "freeze-release: freeze" << endl << endl;
+
+ // For more specific builds, targets are in this form: freeze-build-platform, e.g. freeze-release-armv5,
+ // though note that debug and release targets of each platform are identical in symbian-abld.
+ foreach(QString item, debugPlatforms) {
+ t << "freeze-debug-" << item << ": $(ABLD)" << endl;
+ t << "\t$(ABLD)" << testClause << " freeze " << item << endl;
+ }
+ foreach(QString item, releasePlatforms) {
+ t << "freeze-release-" << item << ": $(ABLD)" << endl;
+ t << "\t$(ABLD)" << testClause << " freeze " << item << endl;
+ }
+
+ t << endl;
}
void SymbianAbldMakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile)
diff --git a/qmake/generators/symbian/symmake_sbsv2.cpp b/qmake/generators/symbian/symmake_sbsv2.cpp
index c219f1d..c6dec6d 100644
--- a/qmake/generators/symbian/symmake_sbsv2.cpp
+++ b/qmake/generators/symbian/symmake_sbsv2.cpp
@@ -391,6 +391,14 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << clause;
}
t << endl;
+
+ t << "freeze-debug: " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze";
+ foreach(QString clause, debugClauses) {
+ t << clause;
+ }
+ t << endl;
+
t << "release: " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)";
foreach(QString clause, releaseClauses) {
@@ -402,6 +410,13 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
foreach(QString clause, releaseClauses) {
t << clause;
}
+ t << endl;
+
+ t << "freeze-release: " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze";
+ foreach(QString clause, releaseClauses) {
+ t << clause;
+ }
t << endl << endl;
QString defaultGcceArmVersion;
@@ -427,6 +442,8 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << "\t$(SBS)" << clause << endl;
t << "clean-debug-" << item << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << clause << endl;
+ t << "freeze-debug-" << item << ": " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze" << clause << endl;
}
foreach(QString item, releasePlatforms) {
@@ -440,6 +457,8 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << "\t$(SBS)" << clause << endl;
t << "clean-release-" << item << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << clause << endl;
+ t << "freeze-release-" << item << ": " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze" << clause << endl;
}
foreach(QString item, armPlatforms) {
@@ -450,10 +469,14 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << "\t$(SBS)" << debugClause << endl;
t << "clean-debug-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << debugClause << endl;
+ t << "freeze-debug-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze" << debugClause << endl;
t << "release-" << item << "-" << compilerVersion << ": " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)" << releaseClause << endl;
t << "clean-release-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << releaseClause << endl;
+ t << "freeze-release-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
+ t << "\t$(SBS) freeze" << releaseClause << endl;
}
}
@@ -471,6 +494,12 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << clause;
}
t << endl << endl;
+
+ // Typically one wants to freeze release binaries, so make plain freeze target equal to
+ // freeze-release. If freezing of debug binaries is needed for some reason, then
+ // freeze-debug target should be used. There is no point to try freezing both with one
+ // target as both produce the same def file.
+ t << "freeze: freeze-release" << endl << endl;
}
// Add all extra targets including extra compiler targets also to wrapper makefile,