changeset 940:ca9fe5ae412b

test Darwin 8 atomic(3)
author Igor Sysoev <igor@sysoev.ru>
date Fri, 22 Dec 2006 12:54:08 +0000
parents 782cf4c13b8d
children 97489c43e755
files auto/os/conf src/os/unix/ngx_atomic.h
diffstat 2 files changed, 13 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/auto/os/conf
+++ b/auto/os/conf
@@ -42,6 +42,16 @@ case "$NGX_PLATFORM" in
         CORE_INCS="$UNIX_INCS"
         CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
         CORE_SRCS="$UNIX_SRCS"
+
+        ngx_feature="atomic(3)"
+        ngx_feature_name=NGX_DARWIN_ATOMIC
+        ngx_feature_run=no
+        ngx_feature_incs="#include <libkern/OSAtomic.h>"
+        ngx_feature_path=
+        ngx_feature_libs=
+        ngx_feature_test="int32_t  lock, n;
+                          n = OSAtomicCompareAndSwap32Barrier(0, 1, lock)"
+        . auto/feature
     ;;
 
     HP-UX:*)
--- a/src/os/unix/ngx_atomic.h
+++ b/src/os/unix/ngx_atomic.h
@@ -12,11 +12,11 @@
 #include <ngx_core.h>
 
 
-#if (NGX_DARWIN)
+#if (NGX_DARWIN_ATOMIC)
 
 /*
- * use MacOSX atomic(3) and barrier(3) operations
- * optimized at run time for UP and SMP
+ * use Darwin 8 atomic(3) and barrier(3) operations
+ * optimized at run-time for UP and SMP
  */
 
 #include <libkern/OSAtomic.h>