git build info target for Make
This commit is contained in:
parent
0309985af0
commit
acacb669bb
42
build_info_make_target
Normal file
42
build_info_make_target
Normal file
@ -0,0 +1,42 @@
|
||||
DATESTAMP := $(shell date +"%d%m%Y_%H%M%S")
|
||||
|
||||
# ===========================================
|
||||
# Build information variables
|
||||
# ===========================================
|
||||
|
||||
DATESTAMP := $(shell date +"%Y%m%d_%H%M%S")
|
||||
GITHASH := $(shell git rev-parse --short HEAD 2>/dev/null || echo "no-git")
|
||||
GITORG := $(shell git remote -v)
|
||||
GITBRANCH := $(shell git branch --show-current)
|
||||
HOSTNAME := $(shell hostname)
|
||||
PWD := $(shell pwd)
|
||||
USER := $(shell echo $$USER)
|
||||
|
||||
# Optional: define version manually or via a file
|
||||
VERSION := 1.0.0
|
||||
|
||||
# Path to generated header
|
||||
BUILDINFO_H = build_info.h
|
||||
|
||||
# ===========================================
|
||||
# Rule to auto-generate the header
|
||||
# ===========================================
|
||||
.PHONY: buildinfo
|
||||
buildinfo:
|
||||
@echo "Generating $(BUILDINFO_H)"
|
||||
@echo "/* Auto-generated: DO NOT EDIT */" > $(BUILDINFO_H)
|
||||
@echo "#ifndef BUILD_INFO_H" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_INFO_H" >> $(BUILDINFO_H)
|
||||
@echo "" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_DATE \"$(DATESTAMP)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_GIT_HASH \"$(GITHASH)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_HOST \"$(HOSTNAME)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_PWD \"$(PWD)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_USER \"$(USER)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define BUILD_VERSION \"$(VERSION)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define GITORG \"$(GITORG)\"" >> $(BUILDINFO_H)
|
||||
@echo "#define GITBRANCH \"$(GITBRANCH)\"" >> $(BUILDINFO_H)
|
||||
@echo "" >> $(BUILDINFO_H)
|
||||
@echo "#endif /* BUILD_INFO_H */" >> $(BUILDINFO_H)
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user