#!/bin/bash

GVF=VERSION-FILE
DEF_VER=1.2.1
LF='
'

if test -d .git -o -f .git &&
    VN=$(git describe --tags --match '[0-9]*' --match 'v[0-9]*' --abbrev=4 HEAD 2>/dev/null) &&
    case "$VN" in
	*$LF*) (exit 1) ;;
	[0-9]*)
	    git update-index -q --refresh
	    test -z "$(git diff-index --name-only HEAD --)" || VN="$VN-dirty"
    esac
then
    VN=$(echo "$VN" | sed -e 's/-/./g');
else
    VN="$DEF_VER"
fi

# strip "v" prefix
VN=$(expr "$VN" : v*'\(.*\)')

if test -r $GVF
then
	VC=$(sed -e 's/^IPTRAF_VERSION = //' <$GVF)
else
	VC=unset
fi
test "$VN" = "$VC" || {
	echo >&2 "IPTRAF_VERSION = $VN"
	echo "IPTRAF_VERSION = $VN" >$GVF
}
