diff options
Diffstat (limited to 'tools/setlocalversion')
-rwxr-xr-x | tools/setlocalversion | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/setlocalversion b/tools/setlocalversion new file mode 100755 index 0000000..9a23825 --- /dev/null +++ b/tools/setlocalversion @@ -0,0 +1,22 @@ +#!/bin/sh +# Print additional version information for non-release trees. + +usage() { + echo "Usage: $0 [srctree]" >&2 + exit 1 +} + +cd "${1:-.}" || usage + +# Check for git and a git repo. +if head=`git rev-parse --verify HEAD 2>/dev/null`; then + # Do we have an untagged version? + if [ "`git name-rev --tags HEAD`" = "HEAD undefined" ]; then + printf '%s%s' -g `echo "$head" | cut -c1-8` + fi + + # Are there uncommitted changes? + if git diff-files | read dummy; then + printf '%s' -dirty + fi +fi |