On Thu, Jul 06, 2006 at 05:27:53PM -0600, Michael Fuhr wrote:
> On Solaris 9, gcc 3.4.2 with -ansi doesn't define int64_t (even
> when including <inttypes.h>), and with -pedantic it warns about
> long long.  With -ansi -pedantic -Wno-long-long it recognizes long
> long without complaint.

I just noticed that the conftest program is compiled without the
options that will be used for the build.  I had edited acsite.m4 and
changed <stdint.h> to <inttypes.h>, which resulted in configure
finding int64_t because the conftest compile didn't use -ansi; but
then when the build used -ansi the compiler failed, complaining that
int64_t isn't a type.  Setting CFLAGS before the PGAC_TYPE_64BIT_INT
tests in configure.in fixed that problem (configure then found long
long int as the 64-bit type).

Here's a summary of what works on Solaris 9/sparc with gcc 3.4.2:

* In acsite.m4 include <inttypes.h> instead of <stdint.h>.

* In configure.in, before the PGAC_TYPE_64BIT_INT tests, set CFLAGS
  to have the same options that will be used for the actual build.

With these changes (and after replacing a buggy libtool) GEOS builds
and passes all tests on Solaris 9/sparc 32-bit.  I haven't done a
64-bit build yet.

-- 
Michael Fuhr
_______________________________________________
geos-devel mailing list
geos-devel@geos.refractions.net
http://geos.refractions.net/mailman/listinfo/geos-devel

Reply via email to