summaryrefslogtreecommitdiffstats
path: root/NVME-VERSION-GEN
diff options
context:
space:
mode:
Diffstat (limited to 'NVME-VERSION-GEN')
-rwxr-xr-xNVME-VERSION-GEN42
1 files changed, 42 insertions, 0 deletions
diff --git a/NVME-VERSION-GEN b/NVME-VERSION-GEN
new file mode 100755
index 0000000..75b13d1
--- /dev/null
+++ b/NVME-VERSION-GEN
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+GVF=NVME-VERSION-FILE
+DEF_VER=v1.12
+
+LF='
+'
+
+# First see if there is a version file (included in release tarballs),
+# then try git-describe, then default.
+if test -f version
+then
+ VN=$(cat version) || VN="$DEF_VER"
+elif test -d .git -o -f .git &&
+ VN=$(git describe --tags --match "v[0-9]*" --abbrev=4 HEAD 2>/dev/null) &&
+ case "$VN" in
+ *$LF*) (exit 1) ;;
+ v[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
+
+VN=$(expr "$VN" : v*'\(.*\)')
+
+if test -r $GVF
+then
+ VC=$(sed -e 's/^NVME_VERSION = //' <$GVF)
+else
+ VC=unset
+fi
+test "$VN" = "$VC" || {
+ echo >&2 "NVME_VERSION = $VN"
+ echo "NVME_VERSION = $VN" >$GVF
+}
+
+