From ad43ce143664953087b44dd3b4324f77c212bd46 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Fri, 30 Dec 2011 12:53:51 +0100 Subject: [PATCH] Simplify printing of engine info No functional change. Signed-off-by: Marco Costalba --- src/main.cpp | 11 +++++------ src/misc.cpp | 47 ++++++++++++++++++++++------------------------- src/misc.h | 3 +-- src/uci.cpp | 3 +-- 4 files changed, 29 insertions(+), 35 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 9b1b5ecf..765cd2ca 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -40,19 +40,18 @@ int main(int argc, char* argv[]) { Search::init(); Threads.init(); - if (argc < 2) - { - cout << engine_name() << " by " << engine_authors() << endl; + cout << engine_info() << endl; + + if (argc == 1) uci_loop(); - } + else if (string(argv[1]) == "bench") benchmark(argc, argv); else - cout << "Usage: stockfish bench [hash size = 128] [threads = 1] " + cerr << "\nUsage: stockfish bench [hash size = 128] [threads = 1] " << "[limit = 12] [fen positions file = default] " << "[limited by depth, time, nodes or perft = depth]" << endl; Threads.exit(); - return 0; } diff --git a/src/misc.cpp b/src/misc.cpp index 9189e327..679e38af 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -52,47 +52,44 @@ using namespace std; -/// 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 = ""; +/// Version number. If Version is left empty, then Tag plus current +/// date (in the format YYMMDD) is used as a version number. +static const string Version = ""; +static const string Tag = ""; -/// engine_name() returns the full name of the current Stockfish version. + +/// engine_info() 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 ", depending -/// on whether the constant EngineVersion is empty. +/// on whether Version is empty. -const string engine_name() { +const string engine_info(bool to_uci) { const string months("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec"); const string cpu64(Is64Bit ? " 64bit" : ""); const string popcnt(HasPopCnt ? " SSE4.2" : ""); - if (!EngineVersion.empty()) - return AppName + " " + EngineVersion + cpu64 + popcnt; - - stringstream s, date(__DATE__); // From compiler, format is "Sep 21 2008" string month, day, year; + stringstream s, date(__DATE__); // From compiler, format is "Sep 21 2008" - date >> month >> day >> year; - - s << AppName + " " + AppTag + " " - << setfill('0') << year.substr(2) - << setw(2) << (1 + months.find(month) / 4) - << setw(2) << day << cpu64 << popcnt; - - return s.str(); -} - + if (Version.empty()) + { + date >> month >> day >> year; -/// Our brave developers! Required by UCI + s << "Stockfish " << Tag + << setfill('0') << " " << year.substr(2) + << setw(2) << (1 + months.find(month) / 4) + << setw(2) << day << cpu64 << popcnt; + } + else + s << "Stockfish " << Version << cpu64 << popcnt; -const string engine_authors() { + s << (to_uci ? "\nid author ": " by ") + << "Tord Romstad, Marco Costalba and Joona Kiiski"; - return "Tord Romstad, Marco Costalba and Joona Kiiski"; + return s.str(); } diff --git a/src/misc.h b/src/misc.h index c5ca5387..70fc01eb 100644 --- a/src/misc.h +++ b/src/misc.h @@ -26,8 +26,7 @@ #include "lock.h" #include "types.h" -extern const std::string engine_name(); -extern const std::string engine_authors(); +extern const std::string engine_info(bool to_uci = false); extern int system_time(); extern int cpu_count(); extern void timed_wait(WaitCondition*, Lock*, int); diff --git a/src/uci.cpp b/src/uci.cpp index 9faf842f..9086a62c 100644 --- a/src/uci.cpp +++ b/src/uci.cpp @@ -117,8 +117,7 @@ void uci_loop() { << "\npawn key: " << pos.pawn_key() << endl; else if (token == "uci") - cout << "id name " << engine_name() - << "\nid author " << engine_authors() + cout << "id name " << engine_info(true) << "\n" << Options << "\nuciok" << endl; else -- 2.39.2