From: Manuel Nickschas Date: Tue, 1 Jul 2008 21:26:02 +0000 (+0200) Subject: Update genversion and Global to use version.dist X-Git-Tag: 0.3.0~323 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=21bae45824145c256bdca18b84b34e31aa2f668d;hp=f333257efedbb246a01e057a83fc58ac53f690ee Update genversion and Global to use version.dist --- diff --git a/src/common/genversion.cpp b/src/common/genversion.cpp index e48d494a..02a7a5ee 100644 --- a/src/common/genversion.cpp +++ b/src/common/genversion.cpp @@ -37,7 +37,7 @@ int main(int argc, char **argv) { } QString gitroot = argv[1]; QString target = argv[2]; - QString version; + QString version, commit, archivetime; if(QFile::exists(gitroot + "/.git")) { // try to execute git-describe to get a version string @@ -68,7 +68,10 @@ int main(int argc, char **argv) { // hmm, Git failed... let's check for version.dist instead QFile dist(gitroot + "/version.dist"); if(dist.open(QIODevice::ReadOnly | QIODevice::Text)) { - version = dist.readAll(); + QRegExp rxCommit("(^[0-9a-f]+)"); + QRegExp rxTimestamp("(^[0-9]+)"); + if(rxCommit.indexIn(dist.readLine()) > -1) commit = rxCommit.cap(1); + if(rxTimestamp.indexIn(dist.readLine()) > -1) archivetime = rxTimestamp.cap(1); dist.close(); } } @@ -80,7 +83,10 @@ int main(int argc, char **argv) { } gen.write(QString("quasselGeneratedVersion = \"%1\";\n" "quasselBuildDate = \"%2\";\n" - "quasselBuildTime = \"%3\";\n").arg(version).arg(__DATE__).arg(__TIME__).toAscii()); + "quasselBuildTime = \"%3\";\n" + "quasselCommit = \"%4\";\n" + "quasselArchiveDate = %5;\n") + .arg(version).arg(__DATE__).arg(__TIME__).arg(commit).arg(archivetime.toUInt()).toAscii()); gen.close(); return EXIT_SUCCESS; } diff --git a/src/common/global.cpp b/src/common/global.cpp index 8941d5b8..bd5ee204 100644 --- a/src/common/global.cpp +++ b/src/common/global.cpp @@ -17,6 +17,7 @@ * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#include #include #include @@ -102,12 +103,14 @@ void Global::registerMetaTypes() { void Global::setupVersion() { # include "version.inc" -# ifdef HAVE_VERSION_GEN -# include "version.gen" -# endif +# include "version.gen" if(quasselGeneratedVersion.isEmpty()) { - quasselVersion = QString("v%1 (unknown rev)").arg(quasselBaseVersion); + if(quasselCommit.isEmpty()) + quasselVersion = QString("v%1 (unknown rev)").arg(quasselBaseVersion); + else + quasselVersion = QString("v%1 (dist-%2, %3)").arg(quasselBaseVersion).arg(quasselCommit.left(7)) + .arg(QDateTime::fromTime_t(quasselArchiveDate).toLocalTime().toString("yyyy-MM-dd")); } else { QStringList parts = quasselGeneratedVersion.split(':'); quasselVersion = QString("v%1").arg(parts[0]); @@ -124,6 +127,8 @@ QString Global::quasselBaseVersion; QString Global::quasselGeneratedVersion; QString Global::quasselBuildDate; QString Global::quasselBuildTime; +QString Global::quasselCommit; +uint Global::quasselArchiveDate; uint Global::protocolVersion; uint Global::clientNeedsProtocol; uint Global::coreNeedsProtocol; diff --git a/src/common/global.h b/src/common/global.h index 777be215..ac136461 100644 --- a/src/common/global.h +++ b/src/common/global.h @@ -36,6 +36,8 @@ namespace Global { extern QString quasselBaseVersion; extern QString quasselBuildDate; extern QString quasselBuildTime; + extern QString quasselCommit; + extern uint quasselArchiveDate; extern uint protocolVersion; extern uint clientNeedsProtocol; //< Minimum protocol version the client needs