summaryrefslogtreecommitdiffstats
path: root/qmake
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2011-03-10 16:18:18 +0200
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2011-03-10 16:42:11 +0200
commit498d14367250589e803d32155ffdd4c6fb56c764 (patch)
tree507403e0e22c3b34213c5db808b9044bd5d9016c /qmake
parent9525ef8f3f8c2f28992457a626356cec86bd7279 (diff)
Strip echo suppression character "@" from commands in symbian-sbsv2
Symbian-sbsv2 toolchain cannot handle echo suppresion character "@" in recipes, so the character is stripped from all commands if it exists at the beginning of the command. Task-number: QTBUG-4767 Reviewed-by: Iain
Diffstat (limited to 'qmake')
-rw-r--r--qmake/generators/symbian/symmake_sbsv2.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/qmake/generators/symbian/symmake_sbsv2.cpp b/qmake/generators/symbian/symmake_sbsv2.cpp
index f94a63f06f..6f532886a4 100644
--- a/qmake/generators/symbian/symmake_sbsv2.cpp
+++ b/qmake/generators/symbian/symmake_sbsv2.cpp
@@ -84,6 +84,12 @@ static void fixFlmCmd(QString *cmdLine, const QMap<QString, QString> &commandsTo
// separator, so replace it with "&&" command concatenator.
cmdLine->replace("\n\t", "&&");
+ // Strip output suppression, as sbsv2 can't handle it in FLMs. Cannot be done by simply
+ // adding "@" to commandsToReplace, as it'd get handled last due to alphabetical ordering,
+ // potentially masking other commands that need replacing.
+ if (cmdLine->contains("@"))
+ cmdLine->replace(QRegExp(cmdFind.arg("@")), cmdReplace.arg(""));
+
// Iterate command replacements in reverse alphabetical order of keys so
// that keys which are starts of other longer keys are iterated after longer keys.
QMapIterator<QString, QString> cmdIter(commandsToReplace);