1fe49c5
Prefer types in <inttypes.h> to our own, because it removes file content
1fe49c5
conflicts between 32- and 64-bit architectures.  RFEd as #2829.
1fe49c5
1fe49c5
--- cyrus-sasl-2.1.21/configure.in	2006-05-16 07:37:52.000000000 -0400
1fe49c5
+++ cyrus-sasl-2.1.21/configure.in	2006-05-16 07:37:52.000000000 -0400
1fe49c5
@@ -1083,6 +1083,10 @@
1fe49c5
 AC_HEADER_DIRENT
1fe49c5
 AC_HEADER_SYS_WAIT
1fe49c5
 AC_CHECK_HEADERS(des.h dlfcn.h fcntl.h limits.h malloc.h paths.h strings.h sys/file.h sys/time.h syslog.h unistd.h inttypes.h sys/uio.h sys/param.h sysexits.h stdarg.h varargs.h)
1fe49c5
+AC_CHECK_TYPES([long long, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t],,,[
1fe49c5
+#ifdef HAVE_INTTYPES_H
1fe49c5
+#include <inttypes.h>
1fe49c5
+#endif])
1fe49c5
 
1fe49c5
 IPv6_CHECK_SS_FAMILY()
1fe49c5
 IPv6_CHECK_SA_LEN()
b02afc8
diff -up cyrus-sasl-2.1.26/configure.sizes cyrus-sasl-2.1.26/configure
b02afc8
--- cyrus-sasl-2.1.26/configure.sizes	2013-11-13 16:40:44.492792539 +0100
b02afc8
+++ cyrus-sasl-2.1.26/configure	2013-11-13 16:40:47.489777836 +0100
b02afc8
@@ -18166,6 +18166,124 @@ fi
b02afc8
 
b02afc8
 done
b02afc8
 
b02afc8
+ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_long_long" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_LONG_LONG 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "int8_t" "ac_cv_type_int8_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_int8_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_INT8_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "uint8_t" "ac_cv_type_uint8_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_uint8_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_UINT8_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "int16_t" "ac_cv_type_int16_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_int16_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_INT16_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "uint16_t" "ac_cv_type_uint16_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_uint16_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_UINT16_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "int32_t" "ac_cv_type_int32_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_int32_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_INT32_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "uint32_t" "ac_cv_type_uint32_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_uint32_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_UINT32_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "int64_t" "ac_cv_type_int64_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_int64_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_INT64_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "
b02afc8
+#ifdef HAVE_INTTYPES_H
b02afc8
+#include <inttypes.h>
b02afc8
+#endif
b02afc8
+"
b02afc8
+if test "x$ac_cv_type_uint64_t" = xyes; then :
b02afc8
+
b02afc8
+cat >>confdefs.h <<_ACEOF
b02afc8
+#define HAVE_UINT64_T 1
b02afc8
+_ACEOF
b02afc8
+
b02afc8
+
b02afc8
+fi
b02afc8
+
b02afc8
 
b02afc8
 
b02afc8
 { $as_echo "$as_me:$LINENO: checking whether you have ss_family in struct sockaddr_storage" >&5
b02afc8
diff -up cyrus-sasl-2.1.26/include/makemd5.c.sizes cyrus-sasl-2.1.26/include/makemd5.c
b02afc8
--- cyrus-sasl-2.1.26/include/makemd5.c.sizes	2012-01-28 00:31:36.000000000 +0100
b02afc8
+++ cyrus-sasl-2.1.26/include/makemd5.c	2013-11-13 16:22:24.195981512 +0100
1fe49c5
@@ -82,12 +82,19 @@
1fe49c5
  */
1fe49c5
 
1fe49c5
 
1fe49c5
+#ifdef HAVE_CONFIG_H
1fe49c5
+#include "../config.h"
1fe49c5
+#endif
1fe49c5
 
1fe49c5
 #include <stdio.h>
1fe49c5
 #include <string.h>
1fe49c5
 #include <stdlib.h>
1fe49c5
 #include <ctype.h>
1fe49c5
 
1fe49c5
+#ifdef HAVE_INTTYPES_H
1fe49c5
+#include <inttypes.h>
1fe49c5
+#endif
1fe49c5
+
1fe49c5
 
1fe49c5
 static void
1fe49c5
 my_strupr(char *s)
1fe49c5
@@ -122,6 +129,18 @@
1fe49c5
 static void
1fe49c5
 try_signed(FILE *f, int len)
1fe49c5
 {
1fe49c5
+#ifdef HAVE_INT8_T
1fe49c5
+    BITSIZE(int8_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_INT16_T
1fe49c5
+    BITSIZE(int16_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_INT32_T
1fe49c5
+    BITSIZE(int32_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_INT64_T
1fe49c5
+    BITSIZE(int64_t);
1fe49c5
+#endif
1fe49c5
     BITSIZE(signed char);
1fe49c5
     BITSIZE(short);
1fe49c5
     BITSIZE(int);
1fe49c5
@@ -135,6 +154,18 @@
1fe49c5
 static void
1fe49c5
 try_unsigned(FILE *f, int len)
1fe49c5
 {
1fe49c5
+#ifdef HAVE_UINT8_T
1fe49c5
+    BITSIZE(uint8_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_UINT16_T
1fe49c5
+    BITSIZE(uint16_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_UINT32_T
1fe49c5
+    BITSIZE(uint32_t);
1fe49c5
+#endif
1fe49c5
+#ifdef HAVE_UINT64_T
1fe49c5
+    BITSIZE(uint64_t);
1fe49c5
+#endif
1fe49c5
     BITSIZE(unsigned char);
1fe49c5
     BITSIZE(unsigned short);
1fe49c5
     BITSIZE(unsigned int);
1fe49c5
@@ -165,6 +196,11 @@
1fe49c5
 	  "/* POINTER defines a generic pointer type */\n"
1fe49c5
 	  "typedef unsigned char *POINTER;\n"
1fe49c5
 	  "\n"
1fe49c5
+#ifdef HAVE_INTTYPES_H
1fe49c5
+	  "/* We try to define integer types for our use */\n"
1fe49c5
+	  "#include <inttypes.h>\n"
1fe49c5
+	  "\n"
1fe49c5
+#endif
1fe49c5
 	  );
1fe49c5
   return 1;
1fe49c5
 }
1fe49c5
@@ -212,31 +248,15 @@
1fe49c5
 
1fe49c5
   print_pre(f);
1fe49c5
 
1fe49c5
-#ifndef HAVE_INT8_T
1fe49c5
     try_signed (f, 8);
1fe49c5
-#endif /* HAVE_INT8_T */
1fe49c5
-#ifndef HAVE_INT16_T
1fe49c5
     try_signed (f, 16);
1fe49c5
-#endif /* HAVE_INT16_T */
1fe49c5
-#ifndef HAVE_INT32_T
1fe49c5
     try_signed (f, 32);
1fe49c5
-#endif /* HAVE_INT32_T */
1fe49c5
-#ifndef HAVE_INT64_T
1fe49c5
     try_signed (f, 64);
1fe49c5
-#endif /* HAVE_INT64_T */
1fe49c5
 
1fe49c5
-#ifndef HAVE_U_INT8_T
1fe49c5
     try_unsigned (f, 8);
1fe49c5
-#endif /* HAVE_INT8_T */
1fe49c5
-#ifndef HAVE_U_INT16_T
1fe49c5
     try_unsigned (f, 16);
1fe49c5
-#endif /* HAVE_U_INT16_T */
1fe49c5
-#ifndef HAVE_U_INT32_T
1fe49c5
     try_unsigned (f, 32);
1fe49c5
-#endif /* HAVE_U_INT32_T */
1fe49c5
-#ifndef HAVE_U_INT64_T
1fe49c5
     try_unsigned (f, 64);
1fe49c5
-#endif /* HAVE_U_INT64_T */
1fe49c5
 
1fe49c5
     print_post(f);
1fe49c5