Redesign genversion and make only main.cpp depend on it
[quassel.git] / src / common / quassel.h
index 40e2e12..bed6eac 100644 (file)
@@ -37,13 +37,15 @@ class Quassel {
     };
 
     struct BuildInfo {
-      QString version;
+      QString fancyVersionString; // clickable rev
+      QString plainVersionString; // no <a> tag
+
       QString baseVersion;
       QString generatedVersion;
-      QString buildDate;
-      QString buildTime;
       QString commitHash;
-      uint archiveDate;
+      uint commitDate;
+      QString buildDate;
+      bool isSourceDirty;
       uint protocolVersion;
       uint clientNeedsProtocol;
       uint coreNeedsProtocol;
@@ -55,6 +57,8 @@ class Quassel {
       QString organizationDomain;
     };
 
+    void setupBuildInfo(const QString &generated);
+
     virtual ~Quassel();
 
     static inline const BuildInfo & buildInfo();
@@ -74,7 +78,6 @@ class Quassel {
 
 
   private:
-    void setupBuildInfo();
     void setupTranslations();
     void registerMetaTypes();
 
@@ -87,24 +90,6 @@ class Quassel {
     static bool _initialized;
 };
 
-// FIXME temporary
-namespace Global {
-  extern QString quasselVersion;
-  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
-  extern uint coreNeedsProtocol;    //< Minimum protocol version the core needs
-
-  extern QString quasselGeneratedVersion;  //< This is possibly set in version.gen
-
-  void setupVersion();
-};
-
 const Quassel::BuildInfo & Quassel::buildInfo() { return _buildInfo; }
 Quassel::RunMode Quassel::runMode() { return _runMode; }
 void Quassel::setRunMode(Quassel::RunMode mode) { _runMode = mode; }