Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql/configure.in,v
retrieving revision 1.151
diff -c -r1.151 configure.in
*** configure.in	2001/11/06 20:12:07	1.151
--- configure.in	2001/11/15 02:48:55
***************
*** 1169,1174 ****
--- 1169,1183 ----
  fi
  AC_DEFINE_UNQUOTED(MAXIMUM_ALIGNOF, $MAX_ALIGNOF, [Define as the maximum alignment requirement of any type])
  
+ 
+ # Some platforms predefine the types int8, int16, etc.  Only check
+ # a (hopefully) representative subset.  Don't use AC_CHECK_TYPE, which
+ # doesn't work the way we want to.
+ AC_CHECK_SIZEOF(int8, 0)
+ AC_CHECK_SIZEOF(uint8, 0)
+ AC_CHECK_SIZEOF(int64, 0)
+ 
+ 
  PGAC_FUNC_POSIX_SIGNALS
  
  
Index: src/include/c.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/c.h,v
retrieving revision 1.109
diff -c -r1.109 c.h
*** src/include/c.h	2001/11/12 01:52:46	1.109
--- src/include/c.h	2001/11/15 02:48:59
***************
*** 205,215 ****
   *		used for numerical computations and the
   *		frontend/backend protocol.
   */
! #ifndef __BEOS__				/* this shouldn't be required, but is is! */
  typedef signed char int8;		/* == 8 bits */
  typedef signed short int16;		/* == 16 bits */
  typedef signed int int32;		/* == 32 bits */
! #endif   /* __BEOS__ */
  
  /*
   * uintN
--- 205,215 ----
   *		used for numerical computations and the
   *		frontend/backend protocol.
   */
! #if SIZEOF_INT8 == 0
  typedef signed char int8;		/* == 8 bits */
  typedef signed short int16;		/* == 16 bits */
  typedef signed int int32;		/* == 32 bits */
! #endif
  
  /*
   * uintN
***************
*** 218,228 ****
   *		frontend/backend protocol.
   */
  /* Also defined in interfaces/odbc/md5.h */
! #ifndef __BEOS__				/* this shouldn't be required, but is is! */
  typedef unsigned char uint8;	/* == 8 bits */
  typedef unsigned short uint16;	/* == 16 bits */
  typedef unsigned int uint32;	/* == 32 bits */
! #endif   /* __BEOS__ */
  
  /*
   * boolN
--- 218,228 ----
   *		frontend/backend protocol.
   */
  /* Also defined in interfaces/odbc/md5.h */
! #if SIZEOF_UINT8 == 0
  typedef unsigned char uint8;	/* == 8 bits */
  typedef unsigned short uint16;	/* == 16 bits */
  typedef unsigned int uint32;	/* == 32 bits */
! #endif
  
  /*
   * boolN
***************
*** 268,294 ****
  /*
   * 64-bit integers
   */
! #ifndef __BEOS__				/* this is already defined on BeOS */
! #ifdef HAVE_LONG_INT_64
  /* Plain "long int" fits, use it */
  typedef long int int64;
  typedef unsigned long int uint64;
  
! #else
! #ifdef HAVE_LONG_LONG_INT_64
  /* We have working support for "long long int", use that */
  typedef long long int int64;
  typedef unsigned long long int uint64;
  
! #else
  /* Won't actually work, but fall back to long int so that code compiles */
  typedef long int int64;
  typedef unsigned long int uint64;
  
! #define INT64_IS_BUSTED
! #endif
! #endif
! #endif   /* __BEOS__ */
  
  /*
   * Size
--- 268,292 ----
  /*
   * 64-bit integers
   */
! #if SIZEOF_INT64 == 0
! # if defined(HAVE_LONG_INT_64)
  /* Plain "long int" fits, use it */
  typedef long int int64;
  typedef unsigned long int uint64;
  
! # elif defined(HAVE_LONG_LONG_INT_64)
  /* We have working support for "long long int", use that */
  typedef long long int int64;
  typedef unsigned long long int uint64;
  
! # else
  /* Won't actually work, but fall back to long int so that code compiles */
  typedef long int int64;
  typedef unsigned long int uint64;
  
! #  define INT64_IS_BUSTED
! # endif
! #endif /* SIZEOF_INT64 == 0 */
  
  /*
   * Size
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql/src/include/pg_config.h.in,v
retrieving revision 1.11
diff -c -r1.11 pg_config.h.in
*** src/include/pg_config.h.in	2001/10/20 17:57:39	1.11
--- src/include/pg_config.h.in	2001/11/15 02:49:00
***************
*** 697,702 ****
--- 697,707 ----
  /* Define if you have on_exit() */
  #undef HAVE_ON_EXIT
  
+ #undef SIZEOF_INT8
+ #undef SIZEOF_UINT8
+ #undef SIZEOF_INT64
+ 
+ 
  /*
   *------------------------------------------------------------------------
   * Part 4: pull in system-specific declarations.
