-////
-//// Functions
-////
-
-/// engine_name() returns the full name of the current Glaurung version.
-/// This will be either "Glaurung YYMMDD" (where YYMMDD is the date when the
-/// program was compiled) or "Glaurung <version number>", depending on whether
-/// 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;
+/// Version number. If EngineVersion is left empty, then AppTag plus
+/// current date (in the format YYMMDD) is used as a version number.
+
+static const string AppName = "Stockfish";
+static const string EngineVersion = "";
+static const string AppTag = "";
+
+
+/// engine_name() returns the full name of the current Stockfish version.
+/// This will be either "Stockfish YYMMDD" (where YYMMDD is the date when
+/// the program was compiled) or "Stockfish <version number>", depending
+/// on whether the constant EngineVersion is empty.
+
+const string engine_name() {
+
+ const string months("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec");
+ const string cpu64(CpuIs64Bit ? " 64bit" : "");
+
+ if (!EngineVersion.empty())
+ return AppName + " " + EngineVersion + cpu64;
+
+ stringstream s, date(__DATE__); // From compiler, format is "Sep 21 2008"
+ string month, day, year;
+
+ date >> month >> day >> year;
+
+ s << setfill('0') << AppName + " " + AppTag + " "
+ << year.substr(2, 2) << setw(2)
+ << (1 + months.find(month) / 4) << setw(2)
+ << day << cpu64;
+
+ return s.str();