From 23fd4e65bafb7856770075522111bcba3cb3b6fb Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 31 Jan 2017 07:50:29 +0100 Subject: [PATCH] scripts: get_source_date_epoch.sh: fix mercurial support, add mtime fallback Add a fallback case to get_source_date_epoch.sh which reports the modification time of the script itself in case there is no SCM information available, e.g. when downloading .tar.gz or .zip tarballs produced by Github. Also fix the mercurial case while we're at it. Signed-off-by: Jo-Philipp Wich --- scripts/get_source_date_epoch.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/get_source_date_epoch.sh b/scripts/get_source_date_epoch.sh index ea8d930109..84ba445454 100755 --- a/scripts/get_source_date_epoch.sh +++ b/scripts/get_source_date_epoch.sh @@ -17,9 +17,14 @@ try_git() { try_hg() { [ -d .hg ] || return 1 - SOURCE_DATE_EPOCH="" + SOURCE_DATE_EPOCH="$(hg log --template '{date}' -l 1 | cut -d. -f1)" [ -n "$SOURCE_DATE_EPOCH" ] } -try_version || try_git || try_hg || SOURCE_DATE_EPOCH="" +try_mtime() { + perl -e 'print((stat $ARGV[0])[9])' "$0" + [ -n "$SOURCE_DATE_EPOCH" ] +} + +try_version || try_git || try_hg || try_mtime || SOURCE_DATE_EPOCH="" echo "$SOURCE_DATE_EPOCH"