From 46ef67502db83597cc06ce2c93ff23de8bcab662 Mon Sep 17 00:00:00 2001 From: Perry Gibson Date: Mon, 22 Sep 2025 12:17:22 +0100 Subject: [PATCH] feat: add git version check --- makefile | 6 ++++++ src/yabai.c | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/makefile b/makefile index ba47be3a..0baf01b7 100644 --- a/makefile +++ b/makefile @@ -14,6 +14,12 @@ OSAX_PATH = ./src/osax INFO_PLIST = $(ASSET_PATH)/Info.plist BINS = $(BUILD_PATH)/yabai +# Embed the current git commit hash (short) if available +GIT_HASH := $(shell git rev-parse --short HEAD 2>/dev/null || echo "") +ifneq ($(GIT_HASH),) +CLI_FLAGS += -DGIT_COMMIT_HASH=\"$(GIT_HASH)\" +endif + .PHONY: all asan tsan install man icon archive publish sign clean-build clean all: clean-build $(BINS) diff --git a/src/yabai.c b/src/yabai.c index 41af895b..3a7b75c7 100644 --- a/src/yabai.c +++ b/src/yabai.c @@ -202,7 +202,11 @@ static void parse_arguments(int argc, char **argv) if ((string_equals(argv[1], VERSION_OPT_LONG)) || (string_equals(argv[1], VERSION_OPT_SHRT))) { +#ifdef GIT_COMMIT_HASH + fprintf(stdout, "yabai-v%d.%d.%d-%s\n", MAJOR, MINOR, PATCH, GIT_COMMIT_HASH); +#else fprintf(stdout, "yabai-v%d.%d.%d\n", MAJOR, MINOR, PATCH); +#endif exit(EXIT_SUCCESS); }