diff --git a/configure b/configure index 98a55b59f6c..9d7afbb0223 100755 --- a/configure +++ b/configure @@ -20800,6 +20800,7 @@ fi + { echo "$as_me:$LINENO: checking whether long int is 64 bits" >&5 echo $ECHO_N "checking whether long int is 64 bits... $ECHO_C" >&6; } if test "${pgac_cv_type_long_int_64+set}" = set; then @@ -21064,6 +21065,11 @@ _ACEOF fi + if test x"$HAVE_LONG_LONG_INT_64" = x"no" ; then + { { echo "$as_me:$LINENO: error: Cannot find a working 64-bit integer type." >&5 +echo "$as_me: error: Cannot find a working 64-bit integer type." >&2;} + { (exit 1); exit 1; }; } + fi fi @@ -25066,26 +25072,6 @@ fi -# If the user did not disable integer datetimes, check that -# there is a working 64-bit integral type to use. -if test x"$USE_INTEGER_DATETIMES" = x"yes" && - test x"$HAVE_LONG_INT_64" = x"no" && - test x"$HAVE_LONG_LONG_INT_64" = x"no" && - test x"$HAVE_INT64" = x"no" ; then - { { echo "$as_me:$LINENO: error: -Integer-based datetime support requires a 64-bit integer type, -but no such type could be found. The --disable-integer-datetimes -configure option can be used to disable integer-based storage -of datetime values." >&5 -echo "$as_me: error: -Integer-based datetime support requires a 64-bit integer type, -but no such type could be found. The --disable-integer-datetimes -configure option can be used to disable integer-based storage -of datetime values." >&2;} - { (exit 1); exit 1; }; } -fi - - if test "$PORTNAME" != "win32" then { echo "$as_me:$LINENO: checking for POSIX signal interface" >&5 diff --git a/configure.in b/configure.in index 858c107ff0b..f27ceb44bd7 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -dnl $PostgreSQL: pgsql/configure.in,v 1.602.2.2 2009/12/10 02:56:54 scrappy Exp $ +dnl $PostgreSQL: pgsql/configure.in,v 1.602.2.3 2010/01/07 00:25:17 tgl Exp $ dnl dnl Developers, please strive to achieve this order: dnl @@ -1490,10 +1490,16 @@ dnl If there is no native snprintf() or it does not handle the 64-bit type, dnl we force our own version of snprintf() to be used instead. dnl Note this test must be run after our initial check for snprintf/vsnprintf. +dnl As of Postgres 8.4, we no longer support compilers without a working +dnl 64-bit type. But we still handle the case of snprintf being broken. + PGAC_TYPE_64BIT_INT([long int]) if test x"$HAVE_LONG_INT_64" = x"no" ; then PGAC_TYPE_64BIT_INT([long long int]) + if test x"$HAVE_LONG_LONG_INT_64" = x"no" ; then + AC_MSG_ERROR([Cannot find a working 64-bit integer type.]) + fi fi @@ -1537,10 +1543,10 @@ else fi AC_DEFINE_UNQUOTED(INT64_FORMAT, $INT64_FORMAT, - [Define to the appropriate snprintf format for 64-bit ints, if any.]) + [Define to the appropriate snprintf format for 64-bit ints.]) AC_DEFINE_UNQUOTED(UINT64_FORMAT, $UINT64_FORMAT, - [Define to the appropriate snprintf format for unsigned 64-bit ints, if any.]) + [Define to the appropriate snprintf format for unsigned 64-bit ints.]) # Now we have checked all the reasons to replace snprintf if test $pgac_need_repl_snprintf = yes; then @@ -1625,20 +1631,6 @@ AC_CHECK_TYPES([int8, uint8, int64, uint64], [], [], AC_CHECK_TYPES(sig_atomic_t, [], [], [#include ]) -# If the user did not disable integer datetimes, check that -# there is a working 64-bit integral type to use. -if test x"$USE_INTEGER_DATETIMES" = x"yes" && - test x"$HAVE_LONG_INT_64" = x"no" && - test x"$HAVE_LONG_LONG_INT_64" = x"no" && - test x"$HAVE_INT64" = x"no" ; then - AC_MSG_ERROR([ -Integer-based datetime support requires a 64-bit integer type, -but no such type could be found. The --disable-integer-datetimes -configure option can be used to disable integer-based storage -of datetime values.]) -fi - - if test "$PORTNAME" != "win32" then PGAC_FUNC_POSIX_SIGNALS diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 34732278277..4fd7b4818ed 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -617,7 +617,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_WINLDAP_H -/* Define to the appropriate snprintf format for 64-bit ints, if any. */ +/* Define to the appropriate snprintf format for 64-bit ints. */ #undef INT64_FORMAT /* Define to build with Kerberos 5 support. (--with-krb5) */ @@ -702,8 +702,7 @@ /* Define to 1 if your declares `struct tm'. */ #undef TM_IN_SYS_TIME -/* Define to the appropriate snprintf format for unsigned 64-bit ints, if any. - */ +/* Define to the appropriate snprintf format for unsigned 64-bit ints. */ #undef UINT64_FORMAT /* Define to 1 to build with assertion checks. (--enable-cassert) */