AppVeyor's Git is using a strftime() that doesn't support %s
This commit is contained in:
parent
c8278c4ca4
commit
6a32811ebd
|
@ -36,9 +36,12 @@ UCPU=""
|
||||||
if uname | grep -qiE "mingw|msys"; then
|
if uname | grep -qiE "mingw|msys"; then
|
||||||
ON_WINDOWS=1
|
ON_WINDOWS=1
|
||||||
EXE_SUFFIX=".exe"
|
EXE_SUFFIX=".exe"
|
||||||
|
# otherwise it fails in AppVeyor due to https://github.com/git-for-windows/git/issues/2495
|
||||||
|
GIT_TIMESTAMP_ARG="--date=unix"
|
||||||
else
|
else
|
||||||
ON_WINDOWS=0
|
ON_WINDOWS=0
|
||||||
EXE_SUFFIX=""
|
EXE_SUFFIX=""
|
||||||
|
GIT_TIMESTAMP_ARG="--date=format-local:%s"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
NIM_BINARY="${NIM_DIR}/bin/nim${EXE_SUFFIX}"
|
NIM_BINARY="${NIM_DIR}/bin/nim${EXE_SUFFIX}"
|
||||||
|
@ -56,7 +59,7 @@ nim_needs_rebuilding() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# compare the built commit's timestamp to the date of the last commit (keep in mind that Git doesn't preserve file timestamps)
|
# compare the built commit's timestamp to the date of the last commit (keep in mind that Git doesn't preserve file timestamps)
|
||||||
if [[ -e "${NIM_DIR}/bin/timestamp" && $(cat "${NIM_DIR}/bin/timestamp") -eq $(cd "$NIM_DIR"; git log --pretty=format:%cd -n 1 --date=format-local:%s) ]]; then
|
if [[ -e "${NIM_DIR}/bin/timestamp" && $(cat "${NIM_DIR}/bin/timestamp") -eq $(cd "$NIM_DIR"; git log --pretty=format:%cd -n 1 ${GIT_TIMESTAMP_ARG}) ]]; then
|
||||||
return $NO_REBUILD
|
return $NO_REBUILD
|
||||||
else
|
else
|
||||||
return $REBUILD
|
return $REBUILD
|
||||||
|
@ -125,7 +128,7 @@ build_nim() {
|
||||||
rm build_all_custom.sh
|
rm build_all_custom.sh
|
||||||
|
|
||||||
# record the last commit's timestamp
|
# record the last commit's timestamp
|
||||||
git log --pretty=format:%cd -n 1 --date=format-local:%s > bin/timestamp
|
git log --pretty=format:%cd -n 1 ${GIT_TIMESTAMP_ARG} > bin/timestamp
|
||||||
|
|
||||||
# update the CI cache
|
# update the CI cache
|
||||||
popd # we were in $NIM_DIR
|
popd # we were in $NIM_DIR
|
||||||
|
|
|
@ -30,8 +30,11 @@ fi
|
||||||
# Windows detection
|
# Windows detection
|
||||||
if uname | grep -qiE "mingw|msys"; then
|
if uname | grep -qiE "mingw|msys"; then
|
||||||
EXE_SUFFIX=".exe"
|
EXE_SUFFIX=".exe"
|
||||||
|
# otherwise it fails in AppVeyor due to https://github.com/git-for-windows/git/issues/2495
|
||||||
|
GIT_TIMESTAMP_ARG="--date=unix"
|
||||||
else
|
else
|
||||||
EXE_SUFFIX=""
|
EXE_SUFFIX=""
|
||||||
|
GIT_TIMESTAMP_ARG="--date=format-local:%s"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# macOS
|
# macOS
|
||||||
|
@ -54,7 +57,7 @@ target_needs_rebuilding() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# compare binary mtime to the date of the last commit (keep in mind that Git doesn't preserve file timestamps)
|
# compare binary mtime to the date of the last commit (keep in mind that Git doesn't preserve file timestamps)
|
||||||
if [[ -e "$TARGET_BINARY" && $(stat $STAT_FORMAT "$TARGET_BINARY") -gt $(cd "$SUBREPO_DIR"; git log --pretty=format:%cd -n 1 --date=format-local:%s) ]]; then
|
if [[ -e "$TARGET_BINARY" && $(stat $STAT_FORMAT "$TARGET_BINARY") -gt $(cd "$SUBREPO_DIR"; git log --pretty=format:%cd -n 1 ${GIT_TIMESTAMP_ARG}) ]]; then
|
||||||
return $NO_REBUILD
|
return $NO_REBUILD
|
||||||
else
|
else
|
||||||
return $REBUILD
|
return $REBUILD
|
||||||
|
|
Loading…
Reference in New Issue