@@ 3,15 3,32 @@
FALLBACKVER=${FALLBACKVER:-unknown}
if [ -d .got ] && command -v got >/dev/null 2>&1; then
- lastcommit=$(got log | awk '/^commit/ {print substr($2,1,9); exit}')
- lasttagcom=$(got tag -l |
- awk '/^object: commit/ { print substr($3,1,9); exit}')
- ver=$(got tag -l |
- awk '/^tag/ { sub(/^v/,"",$2); print $2; exit }')
- if [ "$lastcommit" != "$lasttagcom" ]; then
- ver="${ver}-$lastcommit"
- fi
- printf "%s\n" "$ver" >version.new
+ lastcommit=$(got log |
+ awk '/^commit/ {print substr($2,1,9); exit}')
+ got tag -l |
+ awk -v lastcommit="$lastcommit" '
+ /^object: commit/ {
+ if (!lasttagcom)
+ {
+ lasttagcom = substr($3,1,9)
+ }
+ next
+ }
+ /^tag/ {
+ if (!ver)
+ {
+ sub(/^v/,"",$2)
+ ver = $2
+ }
+ next
+ }
+ END {
+ printf "%s", ver
+ if (lastcommit != lasttagcom)
+ {
+ printf "-g%s", lastcommit
+ }
+ }' >version.new
elif [ -d .git ] && command -v git >/dev/null 2>&1; then
LC_ALL=C
export LC_ALL