Home | History | Annotate | Download | only in fio
      1 #!/bin/sh
      2 
      3 GVF=FIO-VERSION-FILE
      4 DEF_VER=fio-2.2.6
      5 
      6 LF='
      7 '
      8 
      9 # First see if there is a version file (included in release tarballs),
     10 # then try git-describe, then default.
     11 if test -f version
     12 then
     13 	VN=`cat version` || VN="$DEF_VER"
     14 elif test -d .git -o -f .git &&
     15 	VN=`git describe --match "fio-[0-9]*" --abbrev=4 HEAD 2>/dev/null` &&
     16 	case "$VN" in
     17 	*$LF*) (exit 1) ;;
     18 	v[0-9]*)
     19 		git update-index -q --refresh
     20 		test -z "`git diff-index --name-only HEAD --`" ||
     21 		VN="$VN-dirty" ;;
     22 	esac
     23 then
     24 	VN=$VN
     25 else
     26 	VN="$DEF_VER"
     27 fi
     28 
     29 VN=`expr "$VN" : v*'\(.*\)'`
     30 
     31 if test -r $GVF
     32 then
     33 	VC=`sed -e 's/^FIO_VERSION = //' <$GVF`
     34 else
     35 	VC=unset
     36 fi
     37 test "$VN" = "$VC" || {
     38 	echo >&2 "FIO_VERSION = $VN"
     39 	echo "FIO_VERSION = $VN" >$GVF
     40 }
     41 
     42 
     43