PATCH: configure.in fixes; minor doc fix; bug report

Changes:

  - Add memcpy to AC_CHECK_FUNCS, as HAVE_MEMCPY is tested for in
    a number of source files.

  - Fixes to get installed libjpeg and libpng recognized with recent gcc
    versions.  On my system (gcc-2.95.2), running gcc -E on `x SYMBOL x'
    gives `x EXPANSION  x'; note the extra space after the expansion,
    which the existing configure script wasn't expecting.

  - Amaya/README: correct punctuation and doc location.


Note: after applying this patch, a couple of existing problems are
highlighted:

  i) libjpeg and libpng are built even when external libjpeg and/or
     libpng are to be used.

     This is the easiest problem to fix; probably it would suffice to
     fix the ../bin/print dependencies in thotlib/Makefile.in.


  ii) `-I../../libpng -I../../libpng/zlib' is being used even when
      external libpng and zlib are to be used.

      Comments in configure.in suggest that this is because Amaya is
      using a modified png header file, but there's no note as to which
      header file is modified or why.  Using a header file of one
      version and linking against a library of another version is asking
      for trouble (and indeed may have contributed to item iii in this
      list).

      I couldn't find version 1.0.1 of libpng to do a diff against,
      but comparing with 1.0.2, my best guess is that the one and only
      change is to make it not be a compile error to have already
      #include'd setjmp.h before #include'ing pngconf.h.  Judging by
      the comment added by the Debian maintainer to pngconf.h, it
      would appear that the change wasn't even desirable in the first
      place:

	#    ifdef _SETJMP_H
	/* Explanation added by debian maintainer Philippe Troin <phil@fifi.org>.
	   There are two versions of setjmp, depending wether or not we compile for
	   BSD. They are incompatible and can cause crashes. The PNG people force
	   here a unique behavior for setjmp. It you get the error below,
	   then include <png.h> before <setjmp.h>.
	*/
	#error png.h already includes setjmp.h with some additional fixup.
	#    endif


  iii) png_read_init bombs out in current libpng (unless libpng was
       compiled with PNG_LEGACY_SUPPORTED; see pngread.c in current
       libpng distribution).


Given problems ii and iii above, you might want to make the png test
pattern be `1\.0\.1' instead of `1\.0\..*'.  (I don't know what the upper
limit for problems is; maybe make it `1\.0\.[1-7]' and reduce the range
when people report errors.)

pjm.


diff -dur amaya-4.2.1/Amaya/README amaya-4.2.1-pjm/Amaya/README
--- amaya-4.2.1/Amaya/README	Wed Mar 10 10:05:39 1999
+++ amaya-4.2.1-pjm/Amaya/README	Thu Jan 11 04:51:09 2001
@@ -8,6 +8,6 @@
 form are Thot Editor (http://www.inrialpes.fr/opera/Thot) and Amaya (see
 http://www.w3.org/Amaya for more information).
 
-For more information about Amaya. see the README.amaya file
-and the documentation located in Thot/doc/amaya.
+For more information about Amaya, see the README.amaya file
+and the documentation located in doc/amaya.
 
diff -dur amaya-4.2.1/Amaya/configure.in amaya-4.2.1-pjm/Amaya/configure.in
--- amaya-4.2.1/Amaya/configure.in	Tue Dec  5 14:10:21 2000
+++ amaya-4.2.1-pjm/Amaya/configure.in	Thu Jan 11 05:24:45 2001
@@ -56,7 +56,7 @@
 if test "$with_included_jpeg" != "yes" ; then
 dnl
     AC_MSG_CHECKING([for libjpeg version = 6b])
-    AC_EGREP_CPP([x 62 x],
+    AC_EGREP_CPP([x 62  *x],
         [#include <jpeglib.h>
          x JPEG_LIB_VERSION x],
 dnl
@@ -70,7 +70,7 @@
 dnl    
 dnl
     AC_MSG_CHECKING([for libpng version = 1.0.x])
-    AC_EGREP_CPP([x \"1.0\..*\" x],
+    AC_EGREP_CPP([x \"1.0\..*\"  *x],
         [#include <png.h>
 	x PNG_LIBPNG_VER_STRING x],
 dnl
@@ -229,7 +229,7 @@
 AC_FUNC_MMAP
 AC_TYPE_SIGNAL
 AC_FUNC_VPRINTF
-AC_CHECK_FUNCS(getcwd gethostname gettimeofday getwd mkdir mktime putenv select socket strdup strerror strftime strstr strtod strtol uname lstat strcasecmp strncasecmp strchr)
+AC_CHECK_FUNCS(getcwd gethostname gettimeofday getwd mkdir mktime putenv select socket strdup strerror strftime strstr strtod strtol uname lstat strcasecmp strncasecmp strchr memcpy)
 
 dnl
 dnl Checking for Motif libraries and includes

Received on Thursday, 11 January 2001 08:40:20 UTC