[6822] Implement --version option for mangosd/realmd for output current binary version and exit.

This commit is contained in:
VladimirMangos 2008-11-14 10:31:14 +03:00
parent 02ec0d5233
commit 2bf6345beb
4 changed files with 36 additions and 21 deletions

View file

@ -26,6 +26,8 @@
#include "Log.h" #include "Log.h"
#include "Master.h" #include "Master.h"
#include "SystemConfig.h" #include "SystemConfig.h"
#include "revision.h"
#include "revision_nr.h"
#ifdef WIN32 #ifdef WIN32
#include "ServiceWin32.h" #include "ServiceWin32.h"
@ -51,6 +53,7 @@ uint32 realmID; ///< Id of the realm
void usage(const char *prog) void usage(const char *prog)
{ {
sLog.outString("Usage: \n %s [<options>]\n" sLog.outString("Usage: \n %s [<options>]\n"
" --version print version and exist\n\r"
" -c config_file use config_file as configuration file\n\r" " -c config_file use config_file as configuration file\n\r"
#ifdef WIN32 #ifdef WIN32
" Running as service functions:\n\r" " Running as service functions:\n\r"
@ -86,6 +89,12 @@ extern int main(int argc, char **argv)
cfg_file = argv[c]; cfg_file = argv[c];
} }
if( strcmp(argv[c],"--version") == 0)
{
printf("%s\n", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID));
return 0;
}
#ifdef WIN32 #ifdef WIN32
//////////// ////////////
//Services// //Services//
@ -126,11 +135,27 @@ extern int main(int argc, char **argv)
++c; ++c;
} }
sLog.outString( "%s [world-daemon]", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID) );
sLog.outString( "<Ctrl-C> to stop.\n\n" );
sLog.outTitle( "MM MM MM MM MMMMM MMMM MMMMM");
sLog.outTitle( "MM MM MM MM MMM MMM MM MM MMM MMM");
sLog.outTitle( "MMM MMM MMM MM MMM MMM MM MM MMM");
sLog.outTitle( "MM M MM MMMM MM MMM MM MM MMM");
sLog.outTitle( "MM M MM MMMMM MM MMMM MMM MM MM MMM");
sLog.outTitle( "MM M MM M MMM MM MMM MMMMMMM MM MM MMM");
sLog.outTitle( "MM MM MMM MM MM MM MMM MM MM MMM");
sLog.outTitle( "MM MM MMMMMMM MM MM MMM MMM MM MM MMM MMM");
sLog.outTitle( "MM MM MM MMM MM MM MMMMMM MMMM MMMMM");
sLog.outTitle( " MM MMM http://getmangos.com");
sLog.outTitle( " MMMMMM\n\n");
if (!sConfig.SetSource(cfg_file)) if (!sConfig.SetSource(cfg_file))
{ {
sLog.outError("Could not find configuration file %s.", cfg_file); sLog.outError("Could not find configuration file %s.", cfg_file);
return 1; return 1;
} }
sLog.outString("Using configuration file %s.", cfg_file); sLog.outString("Using configuration file %s.", cfg_file);
///- and run the 'Master' ///- and run the 'Master'

View file

@ -32,8 +32,6 @@
#include "Timer.h" #include "Timer.h"
#include "Policies/SingletonImp.h" #include "Policies/SingletonImp.h"
#include "SystemConfig.h" #include "SystemConfig.h"
#include "revision.h"
#include "revision_nr.h"
#include "Config/ConfigEnv.h" #include "Config/ConfigEnv.h"
#include "Database/DatabaseEnv.h" #include "Database/DatabaseEnv.h"
#include "CliRunnable.h" #include "CliRunnable.h"
@ -197,21 +195,6 @@ Master::~Master()
/// Main function /// Main function
int Master::Run() int Master::Run()
{ {
sLog.outString( "%s [world-daemon]", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID) );
sLog.outString( "<Ctrl-C> to stop.\n\n" );
sLog.outTitle( "MM MM MM MM MMMMM MMMM MMMMM");
sLog.outTitle( "MM MM MM MM MMM MMM MM MM MMM MMM");
sLog.outTitle( "MMM MMM MMM MM MMM MMM MM MM MMM");
sLog.outTitle( "MM M MM MMMM MM MMM MM MM MMM");
sLog.outTitle( "MM M MM MMMMM MM MMMM MMM MM MM MMM");
sLog.outTitle( "MM M MM M MMM MM MMM MMMMMMM MM MM MMM");
sLog.outTitle( "MM MM MMM MM MM MM MMM MM MM MMM");
sLog.outTitle( "MM MM MMMMMMM MM MM MMM MMM MM MM MMM MMM");
sLog.outTitle( "MM MM MM MMM MM MM MMMMMM MMMM MMMMM");
sLog.outTitle( " MM MMM http://getmangos.com");
sLog.outTitle( " MMMMMM\n\n");
/// worldd PID file creation /// worldd PID file creation
std::string pidfile = sConfig.GetStringDefault("PidFile", ""); std::string pidfile = sConfig.GetStringDefault("PidFile", "");
if(!pidfile.empty()) if(!pidfile.empty())

View file

@ -60,6 +60,7 @@ DatabaseType dbRealmServer; ///< Accessor to the
void usage(const char *prog) void usage(const char *prog)
{ {
sLog.outString("Usage: \n %s [<options>]\n" sLog.outString("Usage: \n %s [<options>]\n"
" --version print version and exist\n\r"
" -c config_file use config_file as configuration file\n\r" " -c config_file use config_file as configuration file\n\r"
#ifdef WIN32 #ifdef WIN32
" Running as service functions:\n\r" " Running as service functions:\n\r"
@ -90,6 +91,12 @@ extern int main(int argc, char **argv)
cfg_file = argv[c]; cfg_file = argv[c];
} }
if( strcmp(argv[c],"--version") == 0)
{
printf("%s\n", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID));
return 0;
}
#ifdef WIN32 #ifdef WIN32
//////////// ////////////
//Services// //Services//
@ -130,6 +137,9 @@ extern int main(int argc, char **argv)
++c; ++c;
} }
sLog.outString( "%s [realm-daemon]", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID) );
sLog.outString( "<Ctrl-C> to stop.\n" );
if (!sConfig.SetSource(cfg_file)) if (!sConfig.SetSource(cfg_file))
{ {
sLog.outError("Could not find configuration file %s.", cfg_file); sLog.outError("Could not find configuration file %s.", cfg_file);
@ -151,9 +161,6 @@ extern int main(int argc, char **argv)
while (pause > clock()) {} while (pause > clock()) {}
} }
sLog.outString( "%s [realm-daemon]", _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID) );
sLog.outString( "<Ctrl-C> to stop.\n" );
/// realmd PID file creation /// realmd PID file creation
std::string pidfile = sConfig.GetStringDefault("PidFile", ""); std::string pidfile = sConfig.GetStringDefault("PidFile", "");
if(!pidfile.empty()) if(!pidfile.empty())

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "6821" #define REVISION_NR "6822"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__