| #!/bin/bash |
| |
| usage() { |
| echo "$0 [ prefix ]" |
| echo -e "\t Optionally specify a prefix other than 'skiboot'" |
| echo |
| } |
| |
| if [ "$1" = "-h" -o "$1" = "--help" ] ; |
| then |
| usage |
| exit 1; |
| fi |
| |
| if test -e .git || git rev-parse --is-inside-work-tree > /dev/null 2>&1; |
| then |
| version=`git describe --exact-match 2>/dev/null` |
| if [ -z "$version" ]; |
| then |
| version=`git describe 2>/dev/null` |
| fi |
| if [ -z "$version" ]; |
| then |
| version=`git rev-parse --verify --short HEAD 2>/dev/null` |
| fi |
| if [ ! -z "$EXTRA_VERSION" ]; |
| then |
| version="$version-$EXTRA_VERSION" |
| fi |
| if git diff-index --name-only HEAD |grep -qv '.git'; |
| then |
| if [ ! -z "$USER" ]; |
| then |
| version="$version-$USER" |
| fi |
| version="$version-dirty" |
| diffsha=`git diff|sha1sum` |
| diffsha=`cut -c-7 <<< "$diffsha"` |
| version="$version-$diffsha" |
| fi |
| |
| if [ $# -eq 1 ]; |
| then |
| version=`echo $version | sed s/skiboot/$1/` |
| fi |
| |
| echo $version |
| else |
| if [ ! -z "$SKIBOOT_VERSION" ]; |
| then |
| echo $SKIBOOT_VERSION |
| else |
| if [ ! -z "`cat .version`" ]; |
| then |
| cat .version |
| else |
| exit 1; |
| fi |
| fi |
| fi |