configure: Always apply zlib crc32() rename fix.
authorBen Pfaff <blp@cs.stanford.edu>
Fri, 26 Feb 2010 17:09:45 +0000 (09:09 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Fri, 26 Feb 2010 17:09:45 +0000 (09:09 -0800)
PSPP can link against zlib indirectly even if it doesn't link directly, so
it is simplest to always rename gnulib's crc32() to gl_crc32().

Reported by John Darrington.

configure.ac

index 97dbbcf4f0d62ba31442569bbbc581a241b941aa..8f4ca63ba084f9c4e6341bf409caa1a4be5d8f94 100644 (file)
@@ -150,12 +150,12 @@ dnl crc32() function, which have different signatures.  PSPP calls
 dnl only gnulib's crc32() directly, but it calls zlib's crc32()
 dnl indirectly through other zlib calls.  If we don't rename gnulib's
 dnl crc32(), then zlib will call gnulib's version instead of its own,
-dnl causing failures.
-if test $HAVE_ZLIB = yes; then
-  AC_DEFINE(
-    [crc32], [gl_crc32],
-    [Avoid making zlib call gnulib's crc32() instead of its own.])
-fi
+dnl causing failures.  (This can happen even if zlib isn't detected
+dnl directly, because other libraries that PSPP uses, e.g. libpng,
+dnl sometimes use zlib themselves.)
+AC_DEFINE(
+  [crc32], [gl_crc32],
+  [Avoid making zlib call gnulib's crc32() instead of its own.])
 
 dnl Gnumeric support requires libxml2 and zlib.
 if test $HAVE_LIBXML2 = yes && test $HAVE_ZLIB = yes; then