diff options
author | Robin Burchell <robin.burchell@jollamobile.com> | 2013-11-28 11:37:11 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-11-30 20:49:41 +0100 |
commit | 2a76ef7e990404340f53cafbe4f85d8f124da0f1 (patch) | |
tree | efc021614997715a411f02ab3146958608544dae /src/tools/qdbusxml2cpp | |
parent | c6cf7520ecaf1c14b28436bafae27f2c52940081 (diff) |
qdbusxml2cpp: Use the mtime on the input XML to avoid needless source changes.
These can cause rebuilds unnecessarily when repeatedly running qdbusxml2cpp.
Change-Id: I902954d4bed6fe68802183e51d82700fe30af437
Reviewed-by: Mathias Hasselmann <mathias.hasselmann@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/tools/qdbusxml2cpp')
-rw-r--r-- | src/tools/qdbusxml2cpp/qdbusxml2cpp.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/tools/qdbusxml2cpp/qdbusxml2cpp.cpp b/src/tools/qdbusxml2cpp/qdbusxml2cpp.cpp index 6dd88824b5..560b58817e 100644 --- a/src/tools/qdbusxml2cpp/qdbusxml2cpp.cpp +++ b/src/tools/qdbusxml2cpp/qdbusxml2cpp.cpp @@ -43,6 +43,7 @@ #include <qdatetime.h> #include <qdebug.h> #include <qfile.h> +#include <qfileinfo.h> #include <qstring.h> #include <qstringlist.h> #include <qtextstream.h> @@ -65,6 +66,7 @@ static QString parentClassName; static QString proxyFile; static QString adaptorFile; static QString inputFile; +static QDateTime classCreationTime; static bool skipNamespaces; static bool verbose; static bool includeMocs; @@ -216,10 +218,13 @@ static void parseCmdLine(QStringList args) static QDBusIntrospection::Interfaces readInput() { QFile input(inputFile); - if (inputFile.isEmpty() || inputFile == QLatin1String("-")) + if (inputFile.isEmpty() || inputFile == QLatin1String("-")) { input.open(stdin, QIODevice::ReadOnly); - else + classCreationTime = QDateTime::currentDateTime(); + } else { input.open(QIODevice::ReadOnly); + classCreationTime = QFileInfo(input).lastModified(); + } QByteArray data = input.readAll(); @@ -556,7 +561,7 @@ static void writeProxy(const QString &filename, const QDBusIntrospection::Interf } includeGuard = QString(QLatin1String("%1_%2")) .arg(includeGuard) - .arg(QDateTime::currentDateTime().toTime_t()); + .arg(classCreationTime.toTime_t()); hs << "#ifndef " << includeGuard << endl << "#define " << includeGuard << endl << endl; |