summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common/scm_rev_gen.js80
-rw-r--r--src/common/scm_rev_gen.vcxproj79
-rw-r--r--src/common/src/scm_rev.h4
-rw-r--r--src/common/src/version.cpp2
4 files changed, 162 insertions, 3 deletions
diff --git a/src/common/scm_rev_gen.js b/src/common/scm_rev_gen.js
new file mode 100644
index 000000000..e3ca5e67b
--- /dev/null
+++ b/src/common/scm_rev_gen.js
@@ -0,0 +1,80 @@
+var wshShell = new ActiveXObject("WScript.Shell")
+var oFS = new ActiveXObject("Scripting.FileSystemObject");
+
+var outfile = "./src/scm_rev.h";
+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)
+ {}
+ }
+
+ 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 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 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";
+
+// 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);
+}
diff --git a/src/common/scm_rev_gen.vcxproj b/src/common/scm_rev_gen.vcxproj
new file mode 100644
index 000000000..e1b413c56
--- /dev/null
+++ b/src/common/scm_rev_gen.vcxproj
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="scm_rev_gen.js">
+ </None>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="force_rebuild.h" />
+ <ClInclude Include="src\scm_rev.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{69F00340-5C3D-449F-9A80-958435C6CF06}</ProjectGuid>
+ <RootNamespace>scm_rev_gen</RootNamespace>
+ <ProjectName>scm_rev_gen</ProjectName>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Utility</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\..\vsprops\base.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Import Project="..\..\vsprops\base.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="..\..\vsprops\base.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Import Project="..\..\vsprops\base.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Command>cscript /nologo /E:JScript "scm_rev_gen.js"</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Command>cscript /nologo /E:JScript "scm_rev_gen.js"</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Command>cscript /nologo /E:JScript "scm_rev_gen.js"</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/src/common/src/scm_rev.h b/src/common/src/scm_rev.h
index cb4eccfd0..05ad76964 100644
--- a/src/common/src/scm_rev.h
+++ b/src/common/src/scm_rev.h
@@ -1,4 +1,4 @@
-#define SCM_REV_STR "7d11f8cedd7c135d96880f19ecbd3ff87a60a11f"
-#define SCM_DESC_STR "3.5-254-dirty"
+#define SCM_REV_STR "bfa6493324336066a1ef9d04f336faacae57d9f3"
+#define SCM_DESC_STR "bfa6493"
#define SCM_BRANCH_STR "master"
#define SCM_IS_MASTER 1
diff --git a/src/common/src/version.cpp b/src/common/src/version.cpp
index 47d7b52ad..d5cf10c3d 100644
--- a/src/common/src/version.cpp
+++ b/src/common/src/version.cpp
@@ -13,7 +13,7 @@
#define BUILD_TYPE_STR ""
#endif
-const char *scm_rev_str = "Dolphin "
+const char *scm_rev_str = "Akiru "
#if !SCM_IS_MASTER
"[" SCM_BRANCH_STR "] "
#endif