Annotation of embedaddon/dnsmasq/bld/get-version, revision 1.1.1.4
1.1 misho 1: #!/bin/sh
2:
3: # Determine the version string to build into a binary.
4: # When building in the git repository, we can use the output
5: # of "git describe" which gives an unequivocal answer.
6: #
7: # Failing that, we use the contents of the VERSION file
8: # which has a set of references substituted into it by git.
9: # If we can find one which matches $v[0-9].* then we assume it's
10: # a version-number tag, else we just use the whole string.
11: # If there is more than one v[0-9].* tag, sort them and use the
12: # first. This favours, eg v2.63 over 2.63rc6.
13:
1.1.1.4 ! misho 14: # Change directory to the toplevel source directory.
! 15: if test -z "$1" || ! test -d "$1" || ! cd "$1"; then
! 16: echo "$0: First argument $1 must be toplevel dir." >&2
! 17: exit 1
! 18: fi
! 19:
1.1.1.3 misho 20: if which git >/dev/null 2>&1 && \
1.1.1.4 ! misho 21: ([ -d .git ] || grep '^gitdir:' .git >/dev/null 2>&1) && \
! 22: git describe >/dev/null 2>&1; then
! 23: git describe | sed 's/^v//'
1.1 misho 24: elif grep '\$Format:%d\$' $1/VERSION >/dev/null 2>&1; then
1.1.1.4 ! misho 25: # unsubstituted VERSION, but no git available.
1.1 misho 26: echo UNKNOWN
27: else
28: vers=`cat $1/VERSION | sed 's/[(), ]/,/ g' | tr ',' '\n' | grep ^v[0-9]`
29:
30: if [ $? -eq 0 ]; then
1.1.1.3 misho 31: echo "${vers}" | sort -r | head -n 1 | sed 's/^v//'
1.1 misho 32: else
33: cat $1/VERSION
34: fi
35: fi
36:
37: exit 0
38:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>