summaryrefslogtreecommitdiff
path: root/pr/include/md/_darwin.h
diff options
context:
space:
mode:
Diffstat (limited to 'pr/include/md/_darwin.h')
-rw-r--r--pr/include/md/_darwin.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/pr/include/md/_darwin.h b/pr/include/md/_darwin.h
index d262849c..bad90a65 100644
--- a/pr/include/md/_darwin.h
+++ b/pr/include/md/_darwin.h
@@ -61,6 +61,40 @@
#define _PR_NO_LARGE_FILES
#define PR_HAVE_SYSV_NAMED_SHARED_MEMORY
+#define _PR_INET6
+/*
+ * I'd prefer to use getipnodebyname and getipnodebyaddr but the
+ * getipnodebyname(3) man page on Mac OS X 10.2 says they are not
+ * thread-safe. AI_V4MAPPED|AI_ADDRCONFIG doesn't work either.
+ */
+#define _PR_HAVE_GETHOSTBYNAME2
+/*
+ * On Mac OS X 10.2, gethostbyaddr fails with h_errno=NO_RECOVERY
+ * if you pass an IPv4-mapped IPv6 address to it.
+ */
+#define _PR_GHBA_DISALLOW_V4MAPPED
+/* socket(AF_INET6) fails with EPROTONOSUPPORT on Mac OS X 10.1. */
+#if MACOS_DEPLOYMENT_TARGET < 100200
+#define _PR_INET6_PROBE
+#endif
+/* Mac OS X 10.2 has inet_ntop and inet_pton. */
+#if MACOS_DEPLOYMENT_TARGET >= 100200
+#define _PR_HAVE_INET_NTOP
+#endif
+
+#if defined(__ppc__)
+#define _PR_HAVE_ATOMIC_OPS
+#define _MD_INIT_ATOMIC()
+extern PRInt32 _PR_DarwinPPC_AtomicIncrement(PRInt32 *val);
+#define _MD_ATOMIC_INCREMENT(val) _PR_DarwinPPC_AtomicIncrement(val)
+extern PRInt32 _PR_DarwinPPC_AtomicDecrement(PRInt32 *val);
+#define _MD_ATOMIC_DECREMENT(val) _PR_DarwinPPC_AtomicDecrement(val)
+extern PRInt32 _PR_DarwinPPC_AtomicSet(PRInt32 *val, PRInt32 newval);
+#define _MD_ATOMIC_SET(val, newval) _PR_DarwinPPC_AtomicSet(val, newval)
+extern PRInt32 _PR_DarwinPPC_AtomicAdd(PRInt32 *ptr, PRInt32 val);
+#define _MD_ATOMIC_ADD(ptr, val) _PR_DarwinPPC_AtomicAdd(ptr, val)
+#endif /* __ppc__ */
+
#define USE_SETJMP
#if !defined(_PR_PTHREADS)