From 121960a2eb2141ac9313803b88f9adb043407475 Mon Sep 17 00:00:00 2001 From: ShizZy Date: Wed, 23 Apr 2014 22:04:33 -0400 Subject: updated windows scm_rev code to use new style --- .gitignore | 2 + src/common/common.vcxproj | 3 +- src/common/common.vcxproj.filters | 3 +- src/common/scm_rev.h | 3 +- src/common/scm_rev_gen.js | 109 +++++++++++++++++--------------------- src/common/scm_rev_gen.vcxproj | 1 - 6 files changed, 55 insertions(+), 66 deletions(-) diff --git a/.gitignore b/.gitignore index 1b124ad3..10ad3537 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,5 @@ ipch/ build/ bin/ +# Generated source files +src/common/scm_rev.cpp diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj index 202d00d1..5048bebf 100644 --- a/src/common/common.vcxproj +++ b/src/common/common.vcxproj @@ -181,6 +181,7 @@ + @@ -205,12 +206,12 @@ + - diff --git a/src/common/common.vcxproj.filters b/src/common/common.vcxproj.filters index bd4d27b5..e9ea4002 100644 --- a/src/common/common.vcxproj.filters +++ b/src/common/common.vcxproj.filters @@ -38,6 +38,7 @@ + @@ -56,8 +57,8 @@ - + diff --git a/src/common/scm_rev.h b/src/common/scm_rev.h index 7f5ce119..d3466461 100644 --- a/src/common/scm_rev.h +++ b/src/common/scm_rev.h @@ -7,8 +7,7 @@ namespace Common { extern const char g_scm_rev[]; -extern const char g_scm_ref_spec[]; +extern const char g_scm_branch[]; extern const char g_scm_desc[]; } // namespace - diff --git a/src/common/scm_rev_gen.js b/src/common/scm_rev_gen.js index a57d03dd..29c913b8 100644 --- a/src/common/scm_rev_gen.js +++ b/src/common/scm_rev_gen.js @@ -1,80 +1,67 @@ -var wshShell = new ActiveXObject("WScript.Shell") -var oFS = new ActiveXObject("Scripting.FileSystemObject"); +var wshShell = new ActiveXObject("WScript.Shell") +var oFS = new ActiveXObject("Scripting.FileSystemObject"); -var outfile = "scm_rev.h"; -var cmd_revision = " rev-parse HEAD"; -var cmd_describe = " describe --always --long --dirty"; -var cmd_branch = " rev-parse --abbrev-ref HEAD"; +var outfile = "scm_rev.cpp"; +var cmd_revision = " rev-parse HEAD"; +var cmd_describe = " describe --always --long --dirty"; +var cmd_branch = " rev-parse --abbrev-ref HEAD"; -function GetGitExe() -{ - for (var gitexe in {"git.cmd":1, "git":1}) - { - try - { - wshShell.Exec(gitexe); - return gitexe; - } - catch (e) - {} - } +function GetGitExe() { + for (var gitexe in { "git.cmd": 1, "git": 1 }) { + try { + wshShell.Exec(gitexe); + return gitexe; + } catch (e) { + } + } - WScript.Echo("Cannot find git or git.cmd, check your PATH:\n" + - wshShell.ExpandEnvironmentStrings("%PATH%")); - WScript.Quit(1); + WScript.Echo("Cannot find git or git.cmd, check your PATH:\n" + + wshShell.ExpandEnvironmentStrings("%PATH%")); + WScript.Quit(1); } -function GetFirstStdOutLine(cmd) -{ - try - { - return wshShell.Exec(cmd).StdOut.ReadLine(); - } - catch (e) - { - // catch "the system cannot find the file specified" error - WScript.Echo("Failed to exec " + cmd + " this should never happen"); - WScript.Quit(1); - } +function GetFirstStdOutLine(cmd) { + try { + return wshShell.Exec(cmd).StdOut.ReadLine(); + } catch (e) { + // catch "the system cannot find the file specified" error + WScript.Echo("Failed to exec " + cmd + " this should never happen"); + WScript.Quit(1); + } } -function GetFileContents(f) -{ - try - { - return oFS.OpenTextFile(f).ReadAll(); - } - catch (e) - { - // file doesn't exist - return ""; - } +function GetFileContents(f) { + try { + return oFS.OpenTextFile(f).ReadAll(); + } catch (e) { + // file doesn't exist + return ""; + } } // get info from git -var gitexe = GetGitExe(); -var revision = GetFirstStdOutLine(gitexe + cmd_revision); -var describe = GetFirstStdOutLine(gitexe + cmd_describe); -var branch = GetFirstStdOutLine(gitexe + cmd_branch); +var gitexe = GetGitExe(); +var revision = GetFirstStdOutLine(gitexe + cmd_revision); +var describe = GetFirstStdOutLine(gitexe + cmd_describe); +var branch = GetFirstStdOutLine(gitexe + cmd_branch); var isMaster = +("master" == branch); // remove hash (and trailing "-0" if needed) from description describe = describe.replace(/(-0)?-[^-]+(-dirty)?$/, '$2'); var out_contents = - "#define SCM_REV_STR \"" + revision + "\"\n" + - "#define SCM_DESC_STR \"" + describe + "\"\n" + - "#define SCM_BRANCH_STR \"" + branch + "\"\n" + - "#define SCM_IS_MASTER " + isMaster + "\n"; + "#include \"common/scm_rev.h\"\n" + + "namespace Common {\n" + + " const char g_scm_rev[] = \"" + revision + "\";\n" + + " const char g_scm_branch[] = \"" + branch + "\";\n" + + " const char g_scm_desc[] = \"" + describe + "\";\n" + + "}\n"; // check if file needs updating -if (out_contents == GetFileContents(outfile)) -{ - WScript.Echo(outfile + " current at " + describe); -} -else -{ - // needs updating - writeout current info - oFS.CreateTextFile(outfile, true).Write(out_contents); - WScript.Echo(outfile + " updated to " + describe); +if (out_contents == GetFileContents(outfile)) { + WScript.Echo(outfile + " current at " + describe); +} else { + // needs updating - writeout current info + oFS.CreateTextFile(outfile, true).Write(out_contents); + WScript.Echo(outfile + " updated to " + describe); } diff --git a/src/common/scm_rev_gen.vcxproj b/src/common/scm_rev_gen.vcxproj index 6b81c905..f4f2a623 100644 --- a/src/common/scm_rev_gen.vcxproj +++ b/src/common/scm_rev_gen.vcxproj @@ -20,7 +20,6 @@ - -- cgit v1.2.3