summaryrefslogtreecommitdiff
path: root/src/Makefile.am
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2011-05-28 05:51:01 +0000
committerMorgan Deters <mdeters@gmail.com>2011-05-28 05:51:01 +0000
commitcac515ace0282dc5f3ee4de854ca1a5223bdf29a (patch)
treea3f337ea871f380dcb835b1f4b26997fd634ba7f /src/Makefile.am
parentbb22eb1a5f9c3bcd5a043eb8c48f28fada58f370 (diff)
include subversion information used for each build in the --show-config output and as a banner in --interactive mode; intended to resolve confusion in cases where you don't know where a CVC4 binary came from
Diffstat (limited to 'src/Makefile.am')
-rw-r--r--src/Makefile.am28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index d65ddc570..bf20c9f77 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -29,7 +29,7 @@ libcvc4_la_LDFLAGS = -version-info $(LIBCVC4_VERSION)
nodist_EXTRA_libcvc4_noinst_la_SOURCES = dummy.cpp
nodist_EXTRA_libcvc4_la_SOURCES = dummy.cpp
libcvc4_noinst_la_SOURCES =
-libcvc4_la_SOURCES =
+libcvc4_la_SOURCES = subversion_versioninfo.cpp
libcvc4_la_LIBADD = \
@builddir@/util/libutil.la \
@builddir@/expr/libexpr.la \
@@ -61,6 +61,32 @@ publicheaders = \
include/cvc4_public.h \
include/cvc4parser_public.h
+subversion_versioninfo.cpp: svninfo
+ $(AM_V_GEN)( \
+ if test -s svninfo; then \
+ issvn=true; \
+ branch=`grep '^URL: ' svninfo | sed 's,.*/cvc4/,,'`; \
+ rev=`grep '^Revision: ' svninfo | awk '{print$$2}'`; \
+ mods=`grep '^Modifications: ' svninfo | awk '{print$$2}'`; \
+ else \
+ issvn=false; \
+ branch=unknown; \
+ rev=0; \
+ mods=false; \
+ fi; \
+ echo "#include \"util/configuration.h\""; \
+ echo "const bool ::CVC4::Configuration::IS_SUBVERSION_BUILD = $$issvn;"; \
+ echo "const char* const ::CVC4::Configuration::SUBVERSION_BRANCH_NAME = \"$$branch\";"; \
+ echo "const unsigned ::CVC4::Configuration::SUBVERSION_REVISION = $$rev;"; \
+ echo "const bool ::CVC4::Configuration::SUBVERSION_HAS_MODIFICATIONS = $$mods;"; \
+ ) >"$@"
+svninfo: svninfo.tmp
+ $(AM_V_GEN)diff -q svninfo.tmp svninfo &>/dev/null || mv svninfo.tmp svninfo || true
+# .PHONY ensures it's always rebuilt
+.PHONY: svninfo.tmp
+svninfo.tmp:
+ $(AM_V_GEN)(cd "$(top_srcdir)" && svn info && echo "Modifications: `test -z \"\`svn status -q\`\" && echo false || echo true`") >"$@" 2>/dev/null || true
+
install-data-local: $(publicheaders)
$(mkinstalldirs) $(DESTDIR)$(prefix)$(includedir)/cvc4
@for f in $(publicheaders); do \
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback