THRIFT-770. build: Get 'make dist' to work without first compiling source code
This patch ditches the old print_version.sh method and instead generates the compiler's version.h via the Makefile.
Patch: Anthony Molinaro
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@940630 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/compiler/cpp/Makefile.am b/compiler/cpp/Makefile.am
index 1d39a35..892b9a0 100644
--- a/compiler/cpp/Makefile.am
+++ b/compiler/cpp/Makefile.am
@@ -118,29 +118,3 @@
$(RM) thriftl.cc thrifty.cc thrifty.h version.h
src/main.cc: version.h
-
-# Adding this to BUILT_SOURCES will cause version.h to be
-# regenerated on every "make all" or "make check", which is
-# necessary because it changes whenever we "svn up" or similar.
-# Ideally, we would like this to be regenerated whenever the
-# compiler is rebuilt, but every way we could think of to do
-# that caused unnecessary rebuilds of the compiler.
-BUILT_SOURCES += regen_version_h
-
-THRIFT_VERSION=$(shell /bin/sh $(top_srcdir)/print_version.sh -v)
-THRIFT_REVISION=$(shell /bin/sh $(top_srcdir)/print_version.sh -r)
-
-regen_version_h:
- @printf "Regenerating version.h... "
- @TMPFILE=`mktemp ./version_h.tmp_XXXXXX` ; \
- echo "// AUTOGENERATED, DO NOT EDIT" > $$TMPFILE ; \
- echo '#define THRIFT_VERSION "$(THRIFT_VERSION)"' >> $$TMPFILE ; \
- echo '#define THRIFT_REVISION "$(THRIFT_REVISION)"' >> $$TMPFILE ; \
- if cmp $$TMPFILE version.h >/dev/null ; \
- then \
- rm -f $$TMPFILE ; \
- echo "No changes." ; \
- else \
- mv $$TMPFILE version.h ; \
- echo "Updated." ; \
- fi
diff --git a/compiler/cpp/src/main.cc b/compiler/cpp/src/main.cc
index 2c83690..512245b 100644
--- a/compiler/cpp/src/main.cc
+++ b/compiler/cpp/src/main.cc
@@ -618,7 +618,7 @@
* Prints the version number
*/
void version() {
- printf("Thrift version %s-%s\n", THRIFT_VERSION, THRIFT_REVISION);
+ printf("Thrift version %s\n", THRIFT_VERSION);
}
/**
diff --git a/compiler/cpp/version.h.in b/compiler/cpp/version.h.in
new file mode 100644
index 0000000..5770ec9
--- /dev/null
+++ b/compiler/cpp/version.h.in
@@ -0,0 +1 @@
+#define THRIFT_VERSION "@PACKAGE_VERSION@"