mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-09 09:39:13 +00:00
ScmRevGen: Determine the commits ahead using upstream if possible
This commit is contained in:
parent
f59507c856
commit
553a75c996
2 changed files with 28 additions and 3 deletions
|
@ -2,6 +2,18 @@ cmake_minimum_required(VERSION 3.13)
|
||||||
|
|
||||||
# for revision info
|
# for revision info
|
||||||
if(GIT_FOUND)
|
if(GIT_FOUND)
|
||||||
|
# Determine whether upstream/master exists
|
||||||
|
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} ls-remote --heads upstream master
|
||||||
|
RESULT_VARIABLE UPSTREAM_RESULT
|
||||||
|
OUTPUT_VARIABLE UPSTREAM_OUTPUT
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
if(UPSTREAM_RESULT EQUAL 0 AND UPSTREAM_OUTPUT)
|
||||||
|
set(BASE_BRANCH "upstream/master")
|
||||||
|
else()
|
||||||
|
set(BASE_BRANCH "master")
|
||||||
|
endif()
|
||||||
|
|
||||||
# defines DOLPHIN_WC_REVISION
|
# defines DOLPHIN_WC_REVISION
|
||||||
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-parse HEAD
|
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-parse HEAD
|
||||||
OUTPUT_VARIABLE DOLPHIN_WC_REVISION
|
OUTPUT_VARIABLE DOLPHIN_WC_REVISION
|
||||||
|
@ -19,7 +31,7 @@ if(GIT_FOUND)
|
||||||
OUTPUT_VARIABLE DOLPHIN_WC_BRANCH
|
OUTPUT_VARIABLE DOLPHIN_WC_BRANCH
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
# defines DOLPHIN_WC_COMMITS_AHEAD_MASTER
|
# defines DOLPHIN_WC_COMMITS_AHEAD_MASTER
|
||||||
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-list --count HEAD ^master
|
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-list --count HEAD ^${BASE_BRANCH}
|
||||||
OUTPUT_VARIABLE DOLPHIN_WC_COMMITS_AHEAD_MASTER
|
OUTPUT_VARIABLE DOLPHIN_WC_COMMITS_AHEAD_MASTER
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,18 @@ var outfile = "./scmrev.h";
|
||||||
var cmd_revision = " rev-parse HEAD";
|
var cmd_revision = " rev-parse HEAD";
|
||||||
var cmd_describe = " describe --always --long --dirty";
|
var cmd_describe = " describe --always --long --dirty";
|
||||||
var cmd_branch = " rev-parse --abbrev-ref HEAD";
|
var cmd_branch = " rev-parse --abbrev-ref HEAD";
|
||||||
var cmd_commits_ahead = " rev-list --count HEAD ^master";
|
|
||||||
var cmd_get_tag = " describe --exact-match HEAD";
|
var cmd_get_tag = " describe --exact-match HEAD";
|
||||||
|
|
||||||
|
function RemoteBranchExists(remote) {
|
||||||
|
var cmd = gitexe + " ls-remote --heads " + remote + " master";
|
||||||
|
try {
|
||||||
|
var output = wshShell.Exec(cmd).StdOut.ReadLine();
|
||||||
|
return output.trim() !== "";
|
||||||
|
} catch (e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function GetGitExe()
|
function GetGitExe()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -92,8 +101,12 @@ function GetFileContents(f)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// get info from git
|
|
||||||
var gitexe = GetGitExe();
|
var gitexe = GetGitExe();
|
||||||
|
|
||||||
|
var base_branch = RemoteBranchExists("upstream") ? "upstream/master" : "master";
|
||||||
|
var cmd_commits_ahead = " rev-list --count HEAD ^" + base_branch;
|
||||||
|
|
||||||
|
// get info from git
|
||||||
var revision = GetFirstStdOutLine(gitexe + cmd_revision);
|
var revision = GetFirstStdOutLine(gitexe + cmd_revision);
|
||||||
var describe = GetFirstStdOutLine(gitexe + cmd_describe);
|
var describe = GetFirstStdOutLine(gitexe + cmd_describe);
|
||||||
var branch = GetFirstStdOutLine(gitexe + cmd_branch);
|
var branch = GetFirstStdOutLine(gitexe + cmd_branch);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue