Switch to developer version numbering
authorMarco Costalba <mcostalba@gmail.com>
Sun, 21 Sep 2008 08:16:50 +0000 (09:16 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sun, 21 Sep 2008 09:23:50 +0000 (11:23 +0200)
Also clean up code while there.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/misc.cpp
src/misc.h

index cf68055cd6de1013d5fdee5fc704cc480e4414cb..6ee65bf61d9a95fd5b012f86e9b0df542f33ed48 100644 (file)
@@ -69,26 +69,21 @@ void dbg_print_hit_rate() {
 /// the constant EngineVersion (defined in misc.h) is empty.
 
 const std::string engine_name() {
-  if(EngineVersion == "") {
-    static const char monthNames[12][4] = {
-      "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"
-    };
-    const char *dateString = __DATE__;
-    std::stringstream s;
-    int month = 0, day = 0;
-
-    for(int i = 0; i < 12; i++)
-      if(strncmp(dateString, monthNames[i], 3) == 0)
-        month = i + 1;
-    day = atoi(dateString+4);
-
-    s << "Glaurung " << (dateString+9) << std::setfill('0') << std::setw(2)
-      << month << std::setfill('0') << std::setw(2) << day;
-
-    return s.str();
-  }
-  else
-    return "Glaurung " + EngineVersion;
+
+  if (EngineVersion.empty())
+  {      
+      std::string date(__DATE__); // From compiler, format is "Sep 21 2008"
+      std::string months("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec");
+
+      size_t mon = 1 + months.find(date.substr(0, 3)) / 4;
+
+      std::stringstream s;
+      s << "Glaurung " << date.substr(date.length() - 2) << std::setfill('0')
+        << std::setw(2) << mon << date.substr(4, 2);
+
+      return s.str();
+  } else
+      return "Glaurung " + EngineVersion;
 }
 
 
index 8bf09a86fae8a2d46a8d086f31eb4c6ce30f2308..506422b2a5b80c92eeb788b724cccb169084a60d 100644 (file)
@@ -36,7 +36,7 @@
 /// Version number.  If this is left empty, the current date (in the format
 /// YYMMDD) is used as a version number.
 
-const std::string EngineVersion = "2.1";
+const std::string EngineVersion = "";
 
 
 ////