From d3f9e39533ac579cf24e6e3e47195ba717a6f1ef Mon Sep 17 00:00:00 2001 From: Gautier Hattenberger Date: Sun, 21 Dec 2014 01:15:09 +0100 Subject: [PATCH] [build] add build version to the log and print warning if not matching runtime version --- Makefile | 2 ++ Makefile.ac | 9 ++++++++- sw/ground_segment/tmtc/server.ml | 10 +++++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 871b339520..eeab5d0942 100644 --- a/Makefile +++ b/Makefile @@ -108,6 +108,8 @@ print_build_version: @echo "------------------------------------------------------------" @echo "Building Paparazzi version" $(shell ./paparazzi_version) @echo "------------------------------------------------------------" + $(Q)test -d $(PAPARAZZI_HOME)/var || mkdir -p $(PAPARAZZI_HOME)/var + $(Q)./paparazzi_version > $(PAPARAZZI_HOME)/var/build_version.txt update_google_version: -$(MAKE) -C data/maps diff --git a/Makefile.ac b/Makefile.ac index 1a8c58dea5..d892d049d1 100644 --- a/Makefile.ac +++ b/Makefile.ac @@ -84,6 +84,7 @@ ifneq ($(words $(GIT_SHA1)),1) GIT_SHA1 := "UNKNOWN" endif GIT_DESC := $(shell ./paparazzi_version) +BUILD_DESC := $(shell cat $(PAPARAZZI_HOME)/var/build_version.txt) PPRZ_VER := $(shell echo $(GIT_DESC) | sed 's/[^0-9.]*\([0-9.]*\).*/\1/') PPRZ_VER_MAJOR := $(shell echo $(GIT_DESC) | sed 's/v\([0-9]*\).*/\1/') PPRZ_VER_MINOR := $(shell echo $(GIT_DESC) | sed 's/v[0-9]*.\([0-9]*\).*/\1/') @@ -92,11 +93,17 @@ ifneq ($(words $(PPRZ_VER_PATCH)),1) PPRZ_VER_PATCH := 0 endif export GIT_DESC +export BUILD_DESC export GIT_SHA1 export PPRZ_VER_MAJOR export PPRZ_VER_MINOR export PPRZ_VER_PATCH +ifneq ($(GIT_DESC),$(BUILD_DESC)) +VERSION_MATCH = "\nWarning: version differ from build version ($(BUILD_DESC))" +else +VERSION_MATCH = "" +endif # "make Q=''" to get full echo Q=@ @@ -126,7 +133,7 @@ init: print_version: @echo "-----------------------------------------------------------------------" - @echo "Paparazzi version" $(GIT_DESC) + @echo "Paparazzi version" $(GIT_DESC)$(VERSION_MATCH) @echo "-----------------------------------------------------------------------" diff --git a/sw/ground_segment/tmtc/server.ml b/sw/ground_segment/tmtc/server.ml index 91764abc21..a6c47afdc7 100644 --- a/sw/ground_segment/tmtc/server.ml +++ b/sw/ground_segment/tmtc/server.ml @@ -130,7 +130,15 @@ let logger = fun () -> try Str.replace_first (Str.regexp "[ \n]+$") "" (read_process (Env.paparazzi_src ^ "/paparazzi_version")) with _ -> "UNKNOWN" in - output_string f ("\n"); + output_string f ("\n"); + let build_str = + try + let f = open_in (Env.paparazzi_home ^ "/var/build_version.txt") in + let s = input_line f in + close_in f; + s + with _ -> "UNKNOWN" in + output_string f ("\n"); output_string f (Xml.to_string_fmt (log_xml start_time data_name)); close_out f; open_out (logs_path // data_name)