Bladeren bron

Initial IRIX compatibility fixes: check for inttypes.h; check for platform cell_t.

svn:r3648
Nick Mathewson 19 jaren geleden
bovenliggende
commit
a68fcbf807
3 gewijzigde bestanden met toevoegingen van 15 en 1 verwijderingen
  1. 6 1
      configure.in
  2. 3 0
      src/common/torint.h
  3. 6 0
      src/or/or.h

+ 6 - 1
configure.in

@@ -149,13 +149,14 @@ AC_CHECK_HEADERS(zlib.h, , AC_MSG_ERROR(Zlib header (zlib.h) not found. Tor requ
 
 dnl These headers are not essential
 
-AC_CHECK_HEADERS(stdint.h sys/types.h inttypes.h sys/param.h sys/wait.h sys/limits.h netinet/in.h arpa/inet.h machine/limits.h syslog.h sys/time.h sys/resource.h pthread.h stddef.h)
+AC_CHECK_HEADERS(stdint.h sys/types.h inttypes.h sys/param.h sys/wait.h sys/limits.h netinet/in.h arpa/inet.h machine/limits.h syslog.h sys/time.h sys/resource.h pthread.h stddef.h inttypes.h)
 
 AC_CHECK_FUNCS(gettimeofday ftime socketpair uname inet_aton strptime getrlimit setrlimit strlcat strlcpy strtoull getpwnam ftello pthread_create gethostbyname_r getaddrinfo)
 AC_FUNC_FSEEKO
 
 AC_CHECK_MEMBERS([struct timeval.tv_sec])
 
+
 dnl In case we aren't given a working stdint.h, we'll need to grow our own.
 dnl Watch out.
 
@@ -180,6 +181,10 @@ AC_CHECK_SIZEOF(long long)
 AC_CHECK_SIZEOF(__int64)
 AC_CHECK_SIZEOF(void *)
 
+# We want to make sure that we _don't_ have a cell_t defined, like IRIX does.
+
+AC_CHECK_SIZEOF(cell_t)
+
 # Now, let's see about alignment requirements.  On some platforms, we override
 # the default.
 case $host in

+ 3 - 0
src/common/torint.h

@@ -33,6 +33,9 @@
 #include <machine/limits.h>
 #endif
 #endif
+#ifdef HAVE_INTTYPES_H
+#include <inttypes.h>
+#endif
 
 #if (SIZEOF_INT8_T != 0)
 #define HAVE_INT8_T

+ 6 - 0
src/or/or.h

@@ -128,6 +128,12 @@
 #include "../common/util.h"
 #include "../common/torgzip.h"
 
+#if (SIZEOF_CELL_T != 0)
+/* On Irix, stdlib.h defines a cell_t type, so we need to make sure
+ * that our stuff always calls cell_t something different. */
+#define cell_t tor_cell_t
+#endif
+
 /** Define this if you want Tor to crash when any problem comes up,
  * so you can get a coredump and track things down. */
 #undef TOR_FRAGILE