aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-03-15 16:12:51 +0000
committerrsc <devnull@localhost>2005-03-15 16:12:51 +0000
commitaaa502d3a330a84ac835fd902b01f2834e2fc40a (patch)
treec2f2e5b4666dbe9c3b6eeade0325434a371ca8bb /include
parent1f8a80722f44d9c24c4a48d21a944947c9a34b96 (diff)
downloadplan9port-aaa502d3a330a84ac835fd902b01f2834e2fc40a.tar.gz
plan9port-aaa502d3a330a84ac835fd902b01f2834e2fc40a.tar.bz2
plan9port-aaa502d3a330a84ac835fd902b01f2834e2fc40a.zip
appease sun - nil is now just 0 instead of (void*)0
to fix function pointer problems.
Diffstat (limited to 'include')
-rw-r--r--include/libc.h2
-rw-r--r--include/u.h26
2 files changed, 16 insertions, 12 deletions
diff --git a/include/libc.h b/include/libc.h
index e495a535..ac8ffa9d 100644
--- a/include/libc.h
+++ b/include/libc.h
@@ -13,7 +13,9 @@ extern "C" {
* Begin usual libc.h
*/
+#ifndef nil
#define nil ((void*)0)
+#endif
#define nelem(x) (sizeof(x)/sizeof((x)[0]))
#ifndef offsetof
diff --git a/include/u.h b/include/u.h
index dd9b1682..54f4df59 100644
--- a/include/u.h
+++ b/include/u.h
@@ -39,38 +39,44 @@ typedef long p9jmp_buf[sizeof(sigjmp_buf)/sizeof(long)];
#if defined(__linux__)
# include <sys/types.h>
+# if defined(__Linux26__)
+# include <pthread.h>
+# define PLAN9PORT_USING_PTHREADS 1
+# endif
# if defined(__USE_MISC)
# undef _NEEDUSHORT
# undef _NEEDUINT
# undef _NEEDULONG
# endif
-# if defined(__Linux26__)
-# define PLAN9PORT_USING_PTHREADS 1
-# endif
#elif defined(__sun__)
# include <sys/types.h>
+# include <pthread.h>
+# define PLAN9PORT_USING_PTHREADS 1
# undef _NEEDUSHORT
# undef _NEEDUINT
# undef _NEEDULONG
-# define PLAN9PORT_USING_PTHREADS 1
+# define nil 0 /* no cast to void* */
#elif defined(__FreeBSD__)
# include <sys/types.h>
# include <osreldate.h>
+# if __FreeBSD_version >= 500000
+# define PLAN9PORT_USING_PTHREADS 1
+# include <pthread.h>
+# endif
# if !defined(_POSIX_SOURCE)
# undef _NEEDUSHORT
# undef _NEEDUINT
# endif
-# if __FreeBSD_version >= 500000
-# define PLAN9PORT_USING_PTHREADS 1
-# endif
#elif defined(__APPLE__)
# include <sys/types.h>
+# include <pthread.h>
+# define PLAN9PORT_USING_PTHREADS 1
# undef _NEEDUSHORT
# undef _NEEDUINT
# define _NEEDLL 1
-# define PLAN9PORT_USING_PTHREADS 1
#else
/* No idea what system this is -- try some defaults */
+# include <pthread.h>
# define PLAN9PORT_USING_PTHREADS 1
#endif
@@ -78,10 +84,6 @@ typedef long p9jmp_buf[sizeof(sigjmp_buf)/sizeof(long)];
#define O_DIRECT 0
#endif
-#ifdef PLAN9PORT_USING_PTHREADS
-#include <pthread.h>
-#endif
-
typedef signed char schar;
typedef unsigned int u32int;
typedef int s32int;