From b52d8eb1e35ac1804d9056a32f0fc817e08873dd Mon Sep 17 00:00:00 2001 From: Antonin Portelli Date: Sat, 1 Sep 2018 19:49:13 +0100 Subject: [PATCH] better Version.h implementation --- .gitignore | 1 - Grid/Makefile.am | 26 ++++++++++++++++++++++++-- Grid/util/Init.cc | 1 - Grid/util/version.cc | 2 +- Makefile.am | 5 ----- 5 files changed, 25 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index e23a1208..45a3ea53 100644 --- a/.gitignore +++ b/.gitignore @@ -114,4 +114,3 @@ gh-pages/ ##################### Grid/qcd/spin/gamma-gen/*.h Grid/qcd/spin/gamma-gen/*.cc -Grid/version.h diff --git a/Grid/Makefile.am b/Grid/Makefile.am index 5cd76b40..fe0832c3 100644 --- a/Grid/Makefile.am +++ b/Grid/Makefile.am @@ -21,6 +21,28 @@ if BUILD_HDF5 extra_headers+=serialisation/Hdf5Type.h endif +all: version-cache + +version-cache: + if [ `git status --porcelain | wc -l` -gt 0 ]; then\ + a="uncommited changes";\ + else\ + a="no uncommitted changes";\ + fi;\ + echo "`git log -n 1 --format=format:"#define GITHASH \\"%H:%d $$a\\"%n" HEAD`" > vertmp;\ + if [ -e version-cache ]; then\ + d=`diff vertmp version-cache`;\ + [ "${d}" != "" ] && mv vertmp version-cache;\ + else\ + mv vertmp version-cache;\ + fi;\ + rm -f vertmp + +Version.h: + echo "`git log -n 1 --format=format:"#define GITHASH \\"%H:%d $$a\\"%n" HEAD`" > Version.h + +.PHONY: version-cache + # # Libraries # @@ -30,8 +52,8 @@ include Eigen.inc lib_LIBRARIES = libGrid.a CCFILES += $(extra_sources) -HFILES += $(extra_headers) +HFILES += $(extra_headers) Config.h Version.h libGrid_a_SOURCES = $(CCFILES) libGrid_adir = $(includedir)/Grid -nobase_dist_pkginclude_HEADERS = $(HFILES) $(eigen_files) $(eigen_unsupp_files) Config.h +nobase_dist_pkginclude_HEADERS = $(HFILES) $(eigen_files) $(eigen_unsupp_files) diff --git a/Grid/util/Init.cc b/Grid/util/Init.cc index 5d93cb64..aed62ed3 100644 --- a/Grid/util/Init.cc +++ b/Grid/util/Init.cc @@ -49,7 +49,6 @@ Author: paboyle #include #include -#include #include diff --git a/Grid/util/version.cc b/Grid/util/version.cc index 19759274..c9507137 100644 --- a/Grid/util/version.cc +++ b/Grid/util/version.cc @@ -1,5 +1,5 @@ #include -#include +#include "Version.h" namespace Grid { void printHash(){ #ifdef GITHASH diff --git a/Makefile.am b/Makefile.am index 1901305b..09ec3029 100644 --- a/Makefile.am +++ b/Makefile.am @@ -5,11 +5,6 @@ include $(top_srcdir)/doxygen.inc bin_SCRIPTS=grid-config -BUILT_SOURCES = version.h - -version.h: - if [ `git status --porcelain | wc -l` -gt 0 ]; then a="uncommited changes"; else a="no uncommitted changes"; fi; echo "`git log -n 1 --format=format:"#define GITHASH \\"%H:%d $$a\\"%n" HEAD`" > $(srcdir)/Grid/version.h - .PHONY: bench check tests doxygen-run doxygen-doc $(DX_PS_GOAL) $(DX_PDF_GOAL) tests-local: all