summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile17
1 files changed, 9 insertions, 8 deletions
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