X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=version.sh;h=83cda7a01a816a9ba656ca15927fc33e00ee440f;hp=4f6f8619502917ca8b4cd02b022cf49025272f08;hb=3abf853d2cc6f5ef137eedae64779790e3b472b7;hpb=3c49b3fa6e6038fd226253e71cb082e09b4ff7a5 diff --git a/version.sh b/version.sh index 4f6f861..83cda7a 100755 --- a/version.sh +++ b/version.sh @@ -5,7 +5,7 @@ version= datefmt='%Y%m%d' -export GIT_DIR=$(basename $0)/.git/ +export GIT_DIR=$(dirname $0)/.git/ if head=$(git rev-parse --short=8 --verify HEAD 2>/dev/null); then @@ -15,19 +15,24 @@ if head=$(git rev-parse --short=8 --verify HEAD 2>/dev/null); then suffix=-dirty fi - if tag=$(git describe --tags --exact-match 2>/dev/null); then - # use a tag; remove any 'v' prefix from v tags - tag=${tag#v} - version=$(printf "%s%s" ${tag} ${suffix}) + tag=$(git describe --tags 2>/dev/null) + version=$(printf "%s%s" ${tag} ${suffix}) +else + # Check if a specific version is set, eg: by buildroot + if [ ! -z "$PETITBOOT_VERSION" ]; + then + # Full git hash + len=$(echo -n "${PETITBOOT_VERSION}" | wc -c) + if [[ ${len} == 40 ]]; then + version=`echo -n ${PETITBOOT_VERSION} | \ + sed "s/^\([0-9a-f]\{7\}\).*/\1/;"` + else + version="$PETITBOOT_VERSION" + fi else - # Use the git commit revision for the package version, and add - # a date prefix for easy comparisons. - date=$(git log --pretty=format:"%ct" -1 HEAD) - version=$(printf "%($datefmt)T-g%s%s" ${date} ${head} ${suffix}) + # Default to current date and time. + version="$(date +dev.$datefmt)" fi -else - # Default to current date and time. - version="$(date +dev-$datefmt)" fi echo $version