summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2017-12-13 19:18:30 +0100
committerOndrej Zajicek (work) <santiago@crfreenet.org>2017-12-13 19:18:30 +0100
commitc36a298c21f1aa5b4e61d2d4740811529175df09 (patch)
tree67ea7fed85ed947547779762613bc5561e9d7796
parentd807ea087f8d60e25eaef8c10168a40ca6545c57 (diff)
Use git describe for BIRD version
Based on patch from Pavel Tvrdik
-rw-r--r--Makefile.in5
-rw-r--r--sysdep/config.h7
2 files changed, 12 insertions, 0 deletions
diff --git a/Makefile.in b/Makefile.in
index e1f8d9c2..fdd5e6c7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -21,6 +21,11 @@ INSTALL=@INSTALL@
INSTALL_PROGRAM=@INSTALL_PROGRAM@
INSTALL_DATA=@INSTALL_DATA@
+git-label:=$(strip $(shell git describe --always --dirty=-x 2>/dev/null))
+ifneq ($(git-label),)
+ CFLAGS += -DGIT_LABEL="$(git-label)"
+endif
+
client=$(addprefix $(exedir)/,@CLIENT@)
daemon=$(exedir)/bird
protocols=@protocols@
diff --git a/sysdep/config.h b/sysdep/config.h
index 460cac8b..96e371f8 100644
--- a/sysdep/config.h
+++ b/sysdep/config.h
@@ -6,8 +6,15 @@
#ifndef _BIRD_CONFIG_H_
#define _BIRD_CONFIG_H_
+#define XSTR2(X) #X
+#define XSTR1(X) XSTR2(X)
+
/* BIRD version */
+#ifdef GIT_LABEL
+#define BIRD_VERSION XSTR1(GIT_LABEL)
+#else
#define BIRD_VERSION "2.0.0"
+#endif
/* Include parameters determined by configure script */
#include "sysdep/autoconf.h"