Store git version string to a C file, not a header.
[srvx.git] / src / Makefile.am
index 34456de682cce521696a5793d826f36c2d5446ef..155ccd60e3f76cd86edec271016f64484b01033f 100644 (file)
@@ -15,29 +15,22 @@ noinst_DATA = \
        mod-memoserv.help \
        mod-sockcheck.help
 EXTRA_DIST = $(noinst_DATA)
-BUILT_SOURCES = git-version.h
-noinst_HEADERS = git-version.h
 
 if HAS_GIT
+BUILT_SOURCES = git-version.c
 .PHONY: checkversion
-git-version.h: checkversion
+git-version.c: checkversion
 checkversion:
-       @( cd $(top_srcdir) && $(GIT) symbolic-ref HEAD ) >/dev/null 2>&1 || exit 0; \
-       TMPFILE=`mktemp git-version.h.XXXXXX` || exit 1 ; \
-       ( \
-         cd $(top_srcdir) ; \
-         GIT_DIR=$${GIT_DIR:-.git} ; \
-         HEAD_NAME=`$(GIT) symbolic-ref HEAD` ; \
-         HEAD_SHA1=`cat $${GIT_DIR}/$${HEAD_NAME}` ; \
-         echo "/* Full revision $${HEAD_SHA1} */" ; \
-         echo "#define GIT_VERSION \"$${HEAD_SHA1%????????????????????????????????}\"" ; \
-       ) >> $$TMPFILE ; \
-       if diff -q git-version.h $$TMPFILE >/dev/null 2>&1 ; then \
+       @GIT_VERSION=`$(GIT) describe`; \
+       [ "z$$GIT_VERSION" != "z" ] || exit 0; \
+       TMPFILE=`mktemp git-version.c.XXXXXX` || exit 1 ; \
+       echo "const char git_version[] = \"$${GIT_VERSION}\";" >> $$TMPFILE ; \
+       if diff -q git-version.c $$TMPFILE >/dev/null 2>&1 ; then \
            rm $$TMPFILE ; \
         else \
-           echo "Putting new git version into git-version.h" ; \
-           rm -f git-version.h ; \
-           mv $$TMPFILE git-version.h ; \
+           echo "Putting new git version into git-version.c" ; \
+           rm -f git-version.c ; \
+           mv $$TMPFILE git-version.c ; \
        fi
 endif
 
@@ -63,7 +56,7 @@ EXTRA_srvx_SOURCES = \
 srvx_LDADD = @MODULE_OBJS@
 srvx_DEPENDENCIES = @MODULE_OBJS@
 srvx_SOURCES = \
-       git-version.h \
+       git-version.c \
        chanserv.c chanserv.h \
        compat.c compat.h \
        conf.c conf.h \
@@ -87,6 +80,7 @@ srvx_SOURCES = \
        policer.c policer.h \
        proto.h \
        recdb.c recdb.h \
+       sar.c sar.h \
        saxdb.c saxdb.h \
        timeq.c timeq.h \
        tools.c