Commit | Line | Data |
---|---|---|
692a5d22 JA |
1 | #!/bin/sh |
2 | ||
3 | GVF=FIO-VERSION-FILE | |
d83ac9d3 | 4 | DEF_VER=fio-3.28 |
692a5d22 JA |
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 | |
6418b9cd | 13 | VN=`cat version` || VN="$DEF_VER" |
692a5d22 | 14 | elif test -d .git -o -f .git && |
6418b9cd | 15 | VN=`git describe --match "fio-[0-9]*" --abbrev=4 HEAD 2>/dev/null` && |
692a5d22 JA |
16 | case "$VN" in |
17 | *$LF*) (exit 1) ;; | |
865f7302 | 18 | fio-[0-9]*) |
692a5d22 | 19 | git update-index -q --refresh |
6418b9cd | 20 | test -z "`git diff-index --name-only HEAD --`" || |
692a5d22 JA |
21 | VN="$VN-dirty" ;; |
22 | esac | |
23 | then | |
24 | VN=$VN | |
25 | else | |
26 | VN="$DEF_VER" | |
27 | fi | |
28 | ||
6418b9cd | 29 | VN=`expr "$VN" : v*'\(.*\)'` |
692a5d22 JA |
30 | |
31 | if test -r $GVF | |
32 | then | |
6418b9cd | 33 | VC=`sed -e 's/^FIO_VERSION = //' <$GVF` |
692a5d22 JA |
34 | else |
35 | VC=unset | |
36 | fi | |
37 | test "$VN" = "$VC" || { | |
38 | echo >&2 "FIO_VERSION = $VN" | |
39 | echo "FIO_VERSION = $VN" >$GVF | |
40 | } |