From 704a47ec921fe3ed95e16b1135cc1a9106f039b3 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Thu, 2 Jan 2014 14:09:09 +0100 Subject: write version to header file --- .gitignore | 1 + Makefile | 17 +++++++++-------- dyndhcpd.c | 1 + 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 22d4a5c..7aa2e29 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ dyndhcpd config.h README.html +version.h diff --git a/Makefile b/Makefile index a1d4e47..d6e87d5 100644 --- a/Makefile +++ b/Makefile @@ -6,21 +6,22 @@ INSTALL := install RM := rm CP := cp CFLAGS += -O2 -Wall -Werror -VERSION := $(shell git describe --tags --long 2>/dev/null) # this is just a fallback in case you do not use git but downloaded # a release tarball... -ifeq ($(VERSION),) VERSION := 0.0.2 -endif all: dyndhcpd README.html config.h: $(CP) config.def.h config.h -dyndhcpd: dyndhcpd.c config.h - $(CC) $(CFLAGS) -o dyndhcpd dyndhcpd.c \ - -DVERSION="\"$(VERSION)\"" +version.h: $(wildcard .git/HEAD .git/index .git/refs/tags/*) Makefile + echo "#ifndef VERSION" > $@ + echo "#define VERSION \"$(shell git describe --tags --long 2>/dev/null || echo ${VERSION})\"" >> $@ + echo "#endif" >> $@ + +dyndhcpd: dyndhcpd.c config.h version.h + $(CC) $(CFLAGS) -o dyndhcpd dyndhcpd.c README.html: README.md $(MD) README.md > README.html @@ -37,7 +38,7 @@ install-doc: README.html $(INSTALL) -D -m0644 README.html $(DESTDIR)/usr/share/doc/dyndhcpd/README.html clean: - $(RM) -f *.o *~ dyndhcpd README.html + $(RM) -f *.o *~ dyndhcpd README.html version.h distclean: - $(RM) -f *.o *~ dyndhcpd README.html config.h + $(RM) -f *.o *~ dyndhcpd README.html version.h config.h diff --git a/dyndhcpd.c b/dyndhcpd.c index be21af6..83bfb0c 100644 --- a/dyndhcpd.c +++ b/dyndhcpd.c @@ -18,6 +18,7 @@ #include #include "config.h" +#include "version.h" /*** str_replace ***/ char * str_replace(char * original, const char * pattern, const char * replacement) { -- cgit v1.2.3-70-g09d2