mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	updated windows scm_rev code to use new style
This commit is contained in:
		
							parent
							
								
									4405a53cf3
								
							
						
					
					
						commit
						121960a2eb
					
				
					 6 changed files with 55 additions and 66 deletions
				
			
		|  | @ -181,6 +181,7 @@ | |||
|     <ClInclude Include="mem_arena.h" /> | ||||
|     <ClInclude Include="msg_handler.h" /> | ||||
|     <ClInclude Include="platform.h" /> | ||||
|     <ClInclude Include="scm_rev.h" /> | ||||
|     <ClInclude Include="std_condition_variable.h" /> | ||||
|     <ClInclude Include="std_mutex.h" /> | ||||
|     <ClInclude Include="std_thread.h" /> | ||||
|  | @ -205,12 +206,12 @@ | |||
|     <ClCompile Include="mem_arena.cpp" /> | ||||
|     <ClCompile Include="misc.cpp" /> | ||||
|     <ClCompile Include="msg_handler.cpp" /> | ||||
|     <ClCompile Include="scm_rev.cpp" /> | ||||
|     <ClCompile Include="string_util.cpp" /> | ||||
|     <ClCompile Include="symbols.cpp" /> | ||||
|     <ClCompile Include="thread.cpp" /> | ||||
|     <ClCompile Include="timer.cpp" /> | ||||
|     <ClCompile Include="utf8.cpp" /> | ||||
|     <ClCompile Include="version.cpp" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <Text Include="CMakeLists.txt" /> | ||||
|  |  | |||
|  | @ -38,6 +38,7 @@ | |||
|     <ClInclude Include="timer.h" /> | ||||
|     <ClInclude Include="utf8.h" /> | ||||
|     <ClInclude Include="symbols.h" /> | ||||
|     <ClInclude Include="scm_rev.h" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <ClCompile Include="break_points.cpp" /> | ||||
|  | @ -56,8 +57,8 @@ | |||
|     <ClCompile Include="thread.cpp" /> | ||||
|     <ClCompile Include="timer.cpp" /> | ||||
|     <ClCompile Include="utf8.cpp" /> | ||||
|     <ClCompile Include="version.cpp" /> | ||||
|     <ClCompile Include="symbols.cpp" /> | ||||
|     <ClCompile Include="scm_rev.cpp" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <Text Include="CMakeLists.txt" /> | ||||
|  |  | |||
|  | @ -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
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -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); | ||||
| } | ||||
|  |  | |||
|  | @ -20,7 +20,6 @@ | |||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <ClInclude Include="force_rebuild.h" /> | ||||
|     <ClInclude Include="scm_rev.h" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <None Include="scm_rev_gen.js" /> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue