From 36aab33de4ecfb1107e3174849ff9c750c84b8a0 Mon Sep 17 00:00:00 2001 From: koplas Date: Fri, 20 Jun 2025 16:50:13 +0200 Subject: [PATCH] Use folder name as version if git describe failed --- Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 163ace5..0ae02b0 100644 --- a/Makefile +++ b/Makefile @@ -47,13 +47,18 @@ tag_checked_out: # In this case we might in some situations see an error like # `/bin/bash: line 1: 2b55bbb: value too great for base (error token is "2b55bbb")` # which can be ignored. -GITDESC := $(shell git describe --tags --always) +GITDESC := $(shell git describe --tags --always 2>/dev/null || true) +CURRENT_FOLDER_NAME := $(notdir $(CURDIR)) +ifeq ($(strip $(GITDESC)),) +SEMVER := $(CURRENT_FOLDER_NAME) +else GITDESCPATCH := $(shell echo '$(GITDESC)' | sed -E 's/v?[0-9]+\.[0-9]+\.([0-9]+)[-+]?.*/\1/') SEMVERPATCH := $(shell echo $$(( $(GITDESCPATCH) + 1 ))) # Hint: The second regexp in the next line only matches # if there is a hyphen (`-`) followed by a number, # by which we assume that git describe has added a string after the tag SEMVER := $(shell echo '$(GITDESC)' | sed -E -e 's/^v//' -e 's/([0-9]+\.[0-9]+\.)([0-9]+)(-[1-9].*)/\1$(SEMVERPATCH)\3/' ) +endif testsemver: @echo from \'$(GITDESC)\' transformed to \'$(SEMVER)\'