X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=version.sh;h=bf91f707147d90c086c49bf51b39b80c2e4be3f7;hp=18981f617b15b65654a6cb1d1d9de8f77eb72e86;hb=5b33aaaaad68b890aacc3ddc4e47812a58d8c1e6;hpb=1060f29056dc0365df63553ab0b225055c8c516d;ds=inline diff --git a/version.sh b/version.sh index 18981f6..bf91f70 100755 --- a/version.sh +++ b/version.sh @@ -5,6 +5,8 @@ version= datefmt='%Y%m%d' +export GIT_DIR=$(dirname $0)/.git/ + if head=$(git rev-parse --short=8 --verify HEAD 2>/dev/null); then suffix='' @@ -21,11 +23,24 @@ if head=$(git rev-parse --short=8 --verify HEAD 2>/dev/null); then # 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}) + version=$(printf "%($datefmt)T.g%s%s" ${date} ${head} ${suffix}) fi else - # Default to current date and time. - version="$(date +dev-$datefmt)" + # 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 + # Default to current date and time. + version="$(date +dev.$datefmt)" + fi fi echo $version