This commit is contained in:
Joshua Vandaële 2025-04-19 14:31:08 +02:00 committed by GitHub
commit 2494ff964e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 28 additions and 3 deletions

View File

@ -2,6 +2,18 @@ cmake_minimum_required(VERSION 3.13)
# for revision info
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
execute_process(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-parse HEAD
OUTPUT_VARIABLE DOLPHIN_WC_REVISION
@ -19,7 +31,7 @@ if(GIT_FOUND)
OUTPUT_VARIABLE DOLPHIN_WC_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE)
# 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_STRIP_TRAILING_WHITESPACE)

View File

@ -5,9 +5,18 @@ var outfile = "./scmrev.h";
var cmd_revision = " rev-parse HEAD";
var cmd_describe = " describe --always --long --dirty";
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";
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()
{
try
@ -92,8 +101,12 @@ function GetFileContents(f)
}
}
// get info from git
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 describe = GetFirstStdOutLine(gitexe + cmd_describe);
var branch = GetFirstStdOutLine(gitexe + cmd_branch);