diff options
author | Jakob Unterwurzacher | 2021-07-29 19:42:52 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2021-09-28 18:17:58 +0200 |
commit | 5406284b9b02c4115d6d351214039b9825618771 (patch) | |
tree | 18edd85f0d83485d2148ef8f2bd54af6aea0880e | |
parent | e8e35982845f36e714b915350eaf6855487aa0e8 (diff) |
build.bash: also try BSD date syntax for converting SOURCE_DATE_EPOCH
GNU date syntax does not work on macos.
Fixes https://github.com/rfjakob/gocryptfs/issues/570
-rwxr-xr-x | build.bash | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -12,6 +12,9 @@ cd "$(dirname "$0")" +# $0 does not work because we may have been sourced +MYNAME=build.bash + # Make sure we have the go binary go version > /dev/null @@ -28,7 +31,7 @@ if [[ -d .git ]] ; then elif [[ -f VERSION ]] ; then GITVERSION=$(cat VERSION) else - echo "Warning: could not determine gocryptfs version" + echo "$MYNAME: warning: could not determine gocryptfs version" GITVERSION="[unknown]" fi @@ -42,7 +45,7 @@ else if [[ $FAIL -eq 0 ]]; then GITVERSIONFUSE=$OUT else - echo "Warning: could not determine go-fuse version" + echo "$MYNAME: warning: could not determine go-fuse version" GITVERSIONFUSE="[unknown]" fi fi @@ -56,7 +59,10 @@ fi # If SOURCE_DATE_EPOCH is set, it overrides BUILDDATE. This is the # standard environment variable for faking the date in reproducible builds. if [[ -n ${SOURCE_DATE_EPOCH:-} ]] ; then - BUILDDATE=$(date --utc --date="@${SOURCE_DATE_EPOCH}" +%Y-%m-%d) + if ! BUILDDATE=$(date -u --date="@${SOURCE_DATE_EPOCH}" +%Y-%m-%d) ; then + echo "$MYNAME: info: retrying with BSD date syntax..." + BUILDDATE=$(date -u -r "$SOURCE_DATE_EPOCH" +%Y-%m-%d) + fi fi # Only set GOFLAGS if it is not already set by the user |