Tue, 3 Aug 2010 10:44:32 -0800 Google Inc. <opensource@google.com>
Release version 0.8 with the following changes:
* Issue #12: Truncate decoded_target_ after decoding each window, rather than
after each call to DecodeChunk(). This helps limit memory usage when
processing multiple windows.
* Issue #22: To work around a bug in the gold linker
(http://sourceware.org/bugzilla/show_bug.cgi?id=10238), list all direct
library dependencies in Makefile.am.
* Issue #23: Add an option for the encoder to produce simple JSON output
instead of VCDIFF (RFC 3284) format.
* Issue #25: Enable VCDIFF_USE_BLOCK_COMPARE_WORDS for the PowerPC
architecture as well as for x86. The test
BlockContentsMatchIsAsFastAsBlockCompareWords failed on a PowerPC machine
running AIX 5.3.8.
* Issue #28: Only call string::reserve() when the required capacity is greater
than the string's current capacity.
* Get rid of ExitFatal(). It is no longer used for anything since the custom
test framework was replaced with gtest.
* Get rid of the match count feature.
* Rename the log macros: for example, LOG(ERROR) is now VCD_ERROR.
Rename COMPILE_ASSERT to VCD_COMPILE_ASSERT.
* Simplify RollingHash by performing its sanity checks at compile time.
* The googletest package is now referenced as an svn:externals property.
Remove the branched googletest sources from src/gtest and instead reference
the source files in the top-level gtest directory.
* Likewise, the google-gflags package is now referenced as an svn:externals
property. Remove the branched gflags sources from src/gflags and instead
reference the source files in the top-level gflags directory.
* Use version 1.11 of Automake.
* Explicitly include the m4 directory in configuration scripts.
* Call LT_INIT from configure.ac as suggested by libtool.
* Don't distribute gflags and gtest documents whose names conflict with the
same documents in the open-vcdiff package.
* Only define _XOPEN_SOURCE if not already defined.
* Fix warnings that appeared when compiling on RedHat 9 with gcc 3.2.2:
src/encodetable_test.cc:111: warning: cannot pass objects of non-POD
type `struct std::string' through `...'; call will abort at runtime
* Fix Visual Studio compiler warning about mismatch between size_t and int
in blockhash_test.cc.
* Add contributors' names to THANKS file.
Fri, 09 Oct 2009 10:32:10 -0700 Google Inc. <opensource@google.com>
git-svn-id: http://open-vcdiff.googlecode.com/svn/trunk@35 132ac840-3546-0410-a738-d3f8764196be
diff --git a/configure.ac b/configure.ac
index feaa972..a71136a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,8 +4,9 @@
# make sure we're interpreted by some minimal autoconf
AC_PREREQ(2.57)
-AC_INIT(open-vcdiff, 0.7, opensource@google.com)
+AC_INIT(open-vcdiff, 0.8, opensource@google.com)
AC_CONFIG_SRCDIR(README)
+AC_CONFIG_MACRO_DIR([m4 gflags/m4])
AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(src/config.h)
@@ -22,16 +23,17 @@
# Using this option means an extra link step is executed during "make install".
AC_DISABLE_FAST_INSTALL
+LT_INIT
AC_PROG_LIBTOOL
AC_SUBST(LIBTOOL_DEPS)
# Check whether some low-level functions/files are available
AC_HEADER_STDC
-# Built-in memcmp can be inefficient when gcc compiles for x86 processors.
-# In those cases, use an alternative function instead of memcmp.
+# Built-in memcmp can be inefficient when gcc compiles for x86 or PowerPC
+# processors. In those cases, use an alternative function instead of memcmp.
case $host_cpu in
- *86*)
+ *86*|powerpc*)
if test "$GCC" = "yes"; then
AC_DEFINE(VCDIFF_USE_BLOCK_COMPARE_WORDS, 1,
Use custom compare function instead of memcmp)
@@ -52,12 +54,57 @@
# Start of definitions needed by gflags package
-AC_CHECK_HEADERS([stdint.h sys/types.h inttypes.h])
+# These are tested for by AC_HEADER_STDC, but I check again to set the var
+AC_CHECK_HEADER(stdint.h, ac_cv_have_stdint_h=1, ac_cv_have_stdint_h=0)
+AC_CHECK_HEADER(sys/types.h, ac_cv_have_systypes_h=1, ac_cv_have_systypes_h=0)
+AC_CHECK_HEADER(inttypes.h, ac_cv_have_inttypes_h=1, ac_cv_have_inttypes_h=0)
AC_CHECK_HEADERS([fnmatch.h])
+
+# These are the types I need. We look for them in either stdint.h,
+# sys/types.h, or inttypes.h, all of which are part of the default-includes.
+AC_CHECK_TYPE(uint16_t, ac_cv_have_uint16_t=1, ac_cv_have_uint16_t=0)
+AC_CHECK_TYPE(u_int16_t, ac_cv_have_u_int16_t=1, ac_cv_have_u_int16_t=0)
+AC_CHECK_TYPE(__int16, ac_cv_have___int16=1, ac_cv_have___int16=0)
+
AC_CHECK_FUNCS([strtoll strtoq])
-AC_CHECK_TYPES([uint16_t, u_int16_t, __int16])
+AC_CHECK_FUNCS([setenv putenv]) # MinGW has putenv but not setenv
AX_C___ATTRIBUTE__
+# We only care about __attribute__ ((unused))
+if test x"$ac_cv___attribute__" = x"yes"; then
+ ac_cv___attribute__unused="__attribute__ ((unused))"
+else
+ ac_cv___attribute__unused=
+fi
+
+ACX_PTHREAD
+
+# Find out what namespace 'normal' STL code lives in, and also what namespace
+# the user wants our classes to be defined in
+AC_CXX_STL_NAMESPACE
+AC_DEFINE_GOOGLE_NAMESPACE(google)
+
+# These are what's needed by gflags.h.in
+AC_SUBST(ac_google_start_namespace)
+AC_SUBST(ac_google_end_namespace)
+AC_SUBST(ac_google_namespace)
+AC_SUBST(ac_cv___attribute__unused)
+AC_SUBST(ac_cv_have_stdint_h)
+AC_SUBST(ac_cv_have_systypes_h)
+AC_SUBST(ac_cv_have_inttypes_h)
+AC_SUBST(ac_cv_have_uint16_t)
+AC_SUBST(ac_cv_have_u_int16_t)
+AC_SUBST(ac_cv_have___int16)
+
+# For windows, this has a non-trivial value (__declspec(export)), but any
+# system that uses configure wants this to be the empty string.
+AC_DEFINE(GFLAGS_DLL_DECL,,
+ [Always the empty-string on non-windows systems.
+ On windows, should be "__declspec(dllexport)".
+ This way, when we compile the dll, we export our functions/classes.
+ It's safe to define this here because config.h is only used
+ internally, to compile the DLL, and every DLL source file
+ #includes "config.h" before anything else.])
# End of definitions needed by gflags package
@@ -70,5 +117,7 @@
fi
AC_SUBST(LIBSTDCXX_LA_LINKER_FLAG)
-AC_CONFIG_FILES([Makefile])
+AC_CONFIG_FILES([Makefile
+ gflags/src/gflags/gflags.h
+ gflags/src/gflags/gflags_completions.h])
AC_OUTPUT