GIT-VERSION-GEN: adjust for ancient git
When an ancient "git" that does not understand "describe" command is on the $PATH, "git describe" emitted a Usage message without exiting non-zero status (which is a mistake we cannot fix retroactively). Catch this case to make sure we do not try using phoney multi-line string as a version number. Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
@ -3,9 +3,17 @@
|
|||||||
GVF=GIT-VERSION-FILE
|
GVF=GIT-VERSION-FILE
|
||||||
DEF_VER=v1.4.2.GIT
|
DEF_VER=v1.4.2.GIT
|
||||||
|
|
||||||
|
LF='
|
||||||
|
'
|
||||||
|
|
||||||
# First try git-describe, then see if there is a version file
|
# First try git-describe, then see if there is a version file
|
||||||
# (included in release tarballs), then default
|
# (included in release tarballs), then default
|
||||||
if VN=$(git describe --abbrev=4 HEAD 2>/dev/null); then
|
if VN=$(git describe --abbrev=4 HEAD 2>/dev/null) &&
|
||||||
|
case "$VN" in
|
||||||
|
*$LF*) (exit 1) ;;
|
||||||
|
v[0-9]*) : happy ;;
|
||||||
|
esac
|
||||||
|
then
|
||||||
VN=$(echo "$VN" | sed -e 's/-/./g');
|
VN=$(echo "$VN" | sed -e 's/-/./g');
|
||||||
elif test -f version
|
elif test -f version
|
||||||
then
|
then
|
||||||
|
Reference in New Issue
Block a user