~strahinja/table

008b702526937d8a409b97977f738780664bd80b — Страхиња Радић 3 months ago a8f78ce
lib/makeversion: Fix version output
1 files changed, 26 insertions(+), 9 deletions(-)

M lib/makeversion
M lib/makeversion => lib/makeversion +26 -9
@@ 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