summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/tools/moc/moc.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp
index f3bfcc3144..fd1d2155fc 100644
--- a/src/tools/moc/moc.cpp
+++ b/src/tools/moc/moc.cpp
@@ -870,7 +870,12 @@ void Moc::generate(FILE *out)
findRequiredContainers(&classList[i], &requiredQtContainers);
}
- foreach (const QByteArray &qtContainer, requiredQtContainers) {
+ // after finding the containers, we sort them into a list to avoid
+ // non-deterministic behavior which may cause rebuilds unnecessarily.
+ QList<QByteArray> requiredContainerList = requiredQtContainers.toList();
+ std::sort(requiredContainerList.begin(), requiredContainerList.end());
+
+ foreach (const QByteArray &qtContainer, requiredContainerList) {
fprintf(out, "#include <QtCore/%s>\n", qtContainer.constData());
}