aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2003-08-11 23:21:51 +0000
committerNick Mathewson <nickm@torproject.org>2003-08-11 23:21:51 +0000
commit5126f203f23773f64b51e5c0c7b7e1d702f26ca9 (patch)
tree139b1bbb5f0a3d72d74d4b7d5a1a8ecc876210e9
parent58e2edfb24ed19427ec52d058ffa8aecb5a94cf8 (diff)
downloadtor-5126f203f23773f64b51e5c0c7b7e1d702f26ca9.tar
tor-5126f203f23773f64b51e5c0c7b7e1d702f26ca9.tar.gz
Work on systems with broken AC_CHECK_TYPE
svn:r379
-rw-r--r--configure.in11
-rw-r--r--src/common/torint.h25
2 files changed, 35 insertions, 1 deletions
diff --git a/configure.in b/configure.in
index cf5ab525e..1c2886752 100644
--- a/configure.in
+++ b/configure.in
@@ -142,7 +142,16 @@ AC_CHECK_HEADERS(stdint.h sys/types.h inttypes.h)
dnl In case we aren't given a working stdint.h, we'll need to grow our own.
dnl Watch out.
-AC_CHECK_TYPES([int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t])
+AC_CHECK_SIZEOF(int8_t)
+AC_CHECK_SIZEOF(int16_t)
+AC_CHECK_SIZEOF(int32_t)
+AC_CHECK_SIZEOF(int64_t)
+AC_CHECK_SIZEOF(uint8_t)
+AC_CHECK_SIZEOF(uint16_t)
+AC_CHECK_SIZEOF(uint32_t)
+AC_CHECK_SIZEOF(uint64_t)
+
+dnl AC_CHECK_TYPES([int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t])
AC_CHECK_SIZEOF(char)
AC_CHECK_SIZEOF(short)
diff --git a/src/common/torint.h b/src/common/torint.h
index 75032d8f6..96b1e8333 100644
--- a/src/common/torint.h
+++ b/src/common/torint.h
@@ -15,6 +15,31 @@
#endif
+#if (SIZEOF_INT8_T != 0)
+#define HAVE_INT8_T
+#endif
+#if (SIZEOF_INT16_T != 0)
+#define HAVE_INT16_T
+#endif
+#if (SIZEOF_INT32_T != 0)
+#define HAVE_INT32_T
+#endif
+#if (SIZEOF_INT64_T != 0)
+#define HAVE_INT64_T
+#endif
+#if (SIZEOF_UINT8_T != 0)
+#define HAVE_UINT8_T
+#endif
+#if (SIZEOF_UINT16_T != 0)
+#define HAVE_UINT16_T
+#endif
+#if (SIZEOF_UINT32_T != 0)
+#define HAVE_UINT32_T
+#endif
+#if (SIZEOF_UINT64_T != 0)
+#define HAVE_UINT64_T
+#endif
+
#if (SIZEOF_CHAR == 1)
#ifndef HAVE_INT8_T
typedef signed char int8_t;