#!/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 | \
	   grep -E '^HEAD[[:space:]]+(.*~[0-9]*|undefined)$' > /dev/null; then
	        git describe | awk -F- '{printf("-%05d-%s", $(NF-1),$(NF))}'
	fi

	# Are there uncommitted changes?
	git update-index --refresh --unmerged > /dev/null
	if git diff-index --name-only HEAD | grep -v "^scripts/package" \
	    | read dummy; then
		printf '%s' -dirty
	fi

	# Is this git on svn?
	if git config --get svn-remote.svn.url >/dev/null; then
		printf -- '-svn%s' "`git svn find-rev $head`"
	fi
fi

# Check for svn and a svn repo.
if rev=`svn info 2>/dev/null` ; then
	rev=`echo "${rev}" | grep '^Revision' | awk '{print $NF}'`
	printf -- '-svn%s' $rev
fi

# Check for any localversion-* files
printf '%s' "`cat localversion-* 2>/dev/null`"
