From 68bef935d52ae05c23233f2325970f56948a0558 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"