summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Simonart <xavier.simonart@intel.com>2020-09-14 09:25:05 +0200
committerXavier Simonart <xavier.simonart@intel.com>2020-09-21 10:37:52 +0200
commit80dfeb5c734cc4d681f467e853a541a8a91fe1cf (patch)
tree881818122e62f24ed58a81ee41dd3d23bd04e981
parent9a1e1e9336b39178362c6ccadd4a9716f865047f (diff)
Add git version.
git version is now printed in prox.log file. - git_version.c is always recompiled - If source have been locally changed, the build is shown as dirty - If git is not available on the build system, a message such as 'make: git: Command not found' will be printed, but the build will succeed. Change-Id: If551832c6079f5e3bd04cd4d8ac5f8204e6be8cd Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
-rw-r--r--VNFs/DPPD-PROX/Makefile11
-rw-r--r--VNFs/DPPD-PROX/main.c2
2 files changed, 12 insertions, 1 deletions
diff --git a/VNFs/DPPD-PROX/Makefile b/VNFs/DPPD-PROX/Makefile
index ff75c178..60cea67f 100644
--- a/VNFs/DPPD-PROX/Makefile
+++ b/VNFs/DPPD-PROX/Makefile
@@ -214,12 +214,15 @@ SRCS-y += stats_latency.c stats_global.c stats_core.c stats_task.c stats_prio.c
SRCS-y += cmd_parser.c input.c prox_shared.c prox_lua_types.c
SRCS-y += genl4_bundle.c heap.c genl4_stream_tcp.c genl4_stream_udp.c cdf.c
SRCS-y += stats.c stats_cons_log.c stats_cons_cli.c stats_parser.c hash_set.c prox_lua.c prox_malloc.c prox_ipv6.c prox_compat.c
+SRCS-y += git_version.c
+
+GIT_VERSION := "$(shell git describe --abbrev=8 --dirty --always)"
ifeq ($(FIRST_PROX_MAKE),)
MAKEFLAGS += --no-print-directory
FIRST_PROX_MAKE = 1
export FIRST_PROX_MAKE
-all: libedit_autoconf.h
+all: libedit_autoconf.h git_version.c
@./helper-scripts/trailing.sh
@$(MAKE) $@
clean:
@@ -246,6 +249,12 @@ libedit_autoconf.h: $(AUTO-CONFIG-SCRIPT)
> /dev/null
# auto-conf adds empty line at the end of the file, considered as error by trailing.sh script
$(Q) sed -i '$$ d' '$@'
+
+git_version.c: force
+ @echo 'const char *git_version=$(GIT_VERSION);' | cmp -s - $@ || echo 'const char *git_version=$(GIT_VERSION);' > $@
+ @echo $@
+force:
+
else
include $(RTE_SDK)/mk/rte.extapp.mk
endif
diff --git a/VNFs/DPPD-PROX/main.c b/VNFs/DPPD-PROX/main.c
index aeee288b..5d01845e 100644
--- a/VNFs/DPPD-PROX/main.c
+++ b/VNFs/DPPD-PROX/main.c
@@ -54,6 +54,7 @@
#endif
uint8_t lb_nb_txrings = 0xff;
+extern const char *git_version;
struct rte_ring *ctrl_rings[RTE_MAX_LCORE*MAX_TASKS_PER_CORE];
static void __attribute__((noreturn)) prox_usage(const char *prgname)
@@ -1218,6 +1219,7 @@ int main(int argc, char **argv)
plog_init(prox_cfg.log_name, prox_cfg.log_name_pid);
plog_info("=== " PROGRAM_NAME " %s ===\n", VERSION_STR());
plog_info("\tUsing DPDK %s\n", rte_version() + sizeof(RTE_VER_PREFIX));
+ plog_info("\tgit version %s\n", git_version);
set_term_env();
read_rdt_info();