From 9b34d3cb8ea7d7651fc65d264b0dcfd867cc044b Mon Sep 17 00:00:00 2001 From: frosty Date: Sat, 19 Sep 2026 22:59:12 -0400 Subject: chore: change how versions are handled --- Makefile | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index b63fc83..910cd50 100644 --- a/Makefile +++ b/Makefile @@ -4,6 +4,14 @@ PREFIX ?= /usr/local BINDIR ?= $(PREFIX)/bin DESTDIR ?= +GIT_HASH := $(shell git rev-parse --short HEAD) +GIT_DATE := $(shell git log -1 --format='%ad' --date='format:%y.%m.%d') +GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD) +GIT_REMOTE := $(shell git remote get-url origin) +GIT_TAG := $(shell git describe --tags --exact-match HEAD 2>/dev/null) + +VERSION := $(if $(GIT_TAG),$(GIT_TAG),$(GIT_DATE)+$(GIT_HASH)_$(GIT_BRANCH)) + TARGET := bin/yapssg SOURCES := src/Main.c $(wildcard src/*/*.c) OBJECTS := $(patsubst src/%.c,obj/%.o,$(SOURCES)) @@ -12,7 +20,7 @@ CPPFLAGS += -Isrc $(shell $(PKG_CONFIG) --cflags libxml-2.0 luajit) CFLAGS ?= -O2 -Wall -Wextra -Werror -std=c99 LDLIBS += $(shell $(PKG_CONFIG) --libs libxml-2.0 luajit) -.PHONY: all clean install +.PHONY: all clean install FORCE all: $(TARGET) @@ -23,6 +31,11 @@ obj/%.o: src/%.c mkdir -p $(@D) $(CC) $(CPPFLAGS) $(CFLAGS) -MMD -MP -c $< -o $@ +obj/Version/Version.o: CPPFLAGS += -DYAPSSG_VERSION=\"$(VERSION)\" +obj/Version/Version.o: FORCE + +FORCE: + bin: mkdir -p $@ -- cgit v1.3