diff --git a/.gitignore b/.gitignore
index 1b124ad3ee..10ad35373c 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 202d00d18e..5048bebff4 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 bd4d27b581..e9ea400228 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 7f5ce119c4..d346646149 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 a57d03dda1..29c913b857 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 6b81c9055b..f4f2a62395 100644
--- a/src/common/scm_rev_gen.vcxproj
+++ b/src/common/scm_rev_gen.vcxproj
@@ -20,7 +20,6 @@
-