static void memmgr_log (char *buf) { if( !log_fp ) { const char* version; time_t raw; struct tm* t; log_fp = fopen(memmer_logfile,"at"); if (!log_fp) log_fp = stdout; time(&raw); t = localtime(&raw); if( ( version = get_git_hash() ) && version[0] != UNKNOWN_VERSION ){ fprintf(log_fp, "\nMemory manager: Memory leaks found at %d/%02d/%02d %02dh%02dm%02ds (Git Hash %s).\n", (t->tm_year+1900), (t->tm_mon+1), t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec, version ); }else if( ( version = get_svn_revision() ) && version[0] != UNKNOWN_VERSION ){ fprintf(log_fp, "\nMemory manager: Memory leaks found at %d/%02d/%02d %02dh%02dm%02ds (SVN Revision %s).\n", (t->tm_year + 1900), (t->tm_mon + 1), t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec, version ); }else{ fprintf(log_fp, "\nMemory manager: Memory leaks found at %d/%02d/%02d %02dh%02dm%02ds (Unknown version).\n", (t->tm_year + 1900), (t->tm_mon + 1), t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec ); } } fprintf(log_fp, "%s", buf); return; }
int main(int argc, char *argv[]) { if (argc < 4) { std::cerr << "Syntax: " << argv[0] << " <base> <version.h> <build.h>" << std::endl; return 1; } std::string version_sh = std::string(argv[1]) + "/src/version.sh"; std::string git_dir = std::string(argv[1]) + "/.git"; std::string versionh = argv[2]; std::string buildh = argv[3]; std::map<std::string, std::string> versions, old_versions; if (!read_version_sh(version_sh, versions)) return -1; std::string git_version = get_git_hash(git_dir); if (!write_build_h(buildh, git_version)) return -1; read_version_h(versionh, old_versions); if (versions == old_versions) return 0; if (!write_version_h(versionh, versions)) return -1; return 0; }
/** * Display some info about emulator such as * svn version * website/forum adresse * irc hangout */ void display_versionscreen(bool do_exit) { const char *git = get_git_hash(); if (git[0] != UNKNOWN_VERSION) ShowInfo("idAthena Git Hash: '"CL_WHITE"%s"CL_RESET"'\n", git); ShowInfo(CL_GREEN"Git Site:"CL_RESET"\thttp://github.com/idathena/trunk/\n"); ShowInfo("Open "CL_WHITE"README.md"CL_RESET" for more information.\n"); if (do_exit) exit(EXIT_SUCCESS); }
/** * Display some information about the emulator, such as: * svn version * website/forum address * irc hangout * @param do_exit: terminate execution ? */ void display_versionscreen(bool do_exit) { const char* svn = get_svn_revision(); if( svn[0] != UNKNOWN_VERSION ) ShowInfo("rAthena SVN Revision: '" CL_WHITE "%s" CL_RESET "'\n", svn); else { const char* git = get_git_hash(); if( git[0] != UNKNOWN_VERSION ) ShowInfo("rAthena Git Hash: '" CL_WHITE "%s" CL_RESET "'\n", git); } ShowInfo(CL_GREEN "Website/Forum:" CL_RESET "\thttp://rathena.org/\n"); ShowInfo("Open " CL_WHITE "README.md" CL_RESET " for more information.\n"); if (do_exit) exit(EXIT_SUCCESS); }
static void memmgr_log (char *buf) { if( !log_fp ) { time_t raw; struct tm* t; const char* svn = get_svn_revision(); const char* git = get_git_hash(); log_fp = fopen(memmer_logfile,"at"); if (!log_fp) log_fp = stdout; time(&raw); t = localtime(&raw); fprintf(log_fp, "\nMemory manager: Memory leaks found at %d/%02d/%02d %02dh%02dm%02ds (rev %s).\n", (t->tm_year+1900), (t->tm_mon+1), t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec, git[0] != HERC_UNKNOWN_VER ? git : svn[0] != HERC_UNKNOWN_VER ? svn : "Unknown"); } fprintf(log_fp, "%s", buf); return; }
/*====================================== * CORE : Display title * ASCII By CalciumKid 1/12/2011 *--------------------------------------*/ static void display_title(void) { const char* svn = get_svn_revision(); const char* git = get_git_hash(); ShowMessage("\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_WHITE" rAthena Development Team presents "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" ___ __ __ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" _____/ | / /_/ /_ ___ ____ ____ _ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" / ___/ /| |/ __/ __ \\/ _ \\/ __ \\/ __ `/ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" / / / ___ / /_/ / / / __/ / / / /_/ / "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" /_/ /_/ |_\\__/_/ /_/\\___/_/ /_/\\__,_/ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_GREEN" http://rathena.org/board/ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); if( svn[0] != UNKNOWN_VERSION ) ShowInfo("SVN Revision: '"CL_WHITE"%s"CL_RESET"'\n", svn); else if( git[0] != UNKNOWN_VERSION ) ShowInfo("Git Hash: '"CL_WHITE"%s"CL_RESET"'\n", git); }
/*====================================== * CORE : Display title *--------------------------------------*/ void display_title(void) { const char* svn = get_svn_revision(); const char* git = get_git_hash(); ShowMessage("\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" Hercules Development Team presents "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" _ _ _ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | | | | | | "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | |_| | ___ _ __ ___ _ _| | ___ ___ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | _ |/ _ \\ '__/ __| | | | |/ _ \\/ __| "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | | | | __/ | | (__| |_| | | __/\\__ \\ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" \\_| |_/\\___|_| \\___|\\__,_|_|\\___||___/ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" http://hercules.ws/board/ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_NORMAL"\n"); if( git[0] != HERC_UNKNOWN_VER ) ShowInfo("Git Hash: '"CL_WHITE"%s"CL_RESET"'\n", git); else if( svn[0] != HERC_UNKNOWN_VER ) ShowInfo("Episode : '"CL_WHITE"%s"CL_RESET"'\n", svn); }
/*====================================== * CORE : Display title * ASCII By CalciumKid 1/12/2011 *--------------------------------------*/ static void display_title(void) { const char* svn = get_svn_revision(); const char* git = get_git_hash(); ShowMessage("\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_YELLOW" rAthena Development Team presents "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_RED" ___ _ _ ____ __ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_WHITE" / || | |=|| ___|/'__`\ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_BLUE" / /| || | | || | /\\ __/ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_WHITE" / ___ || |_ | || |__\\ \\____ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BT_RED" /_/ |_||___||_||____|\\/____/ "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_YELLOW" Modified By ROTHAITEAM "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_YELLOW" Episode 5.0 "CL_PASS""CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_PASS" "CL_BOLD" "CL_PASS""CL_CLL""CL_NORMAL"\n"); if( svn[0] != UNKNOWN_VERSION ) ShowInfo("SVN Revision: '"CL_WHITE"%s"CL_RESET"'\n", svn); else if( git[0] != UNKNOWN_VERSION ) ShowInfo("Git Hash: '"CL_WHITE"%s"CL_RESET"'\n", git); }