Whamcloud - gitweb
don`t set aio methods, use internal compat methods instead.
[fs/lustre-release.git] / build / autoconf / lustre-build-darwin.m4
index 2045c6c..a14ebf8 100644 (file)
@@ -49,9 +49,14 @@ case $target_cpu in
                EXTRA_KLDFLAGS="-arch i386"
                ;;
 esac
+
+# Kernel of OS X is not 64bits(even in Tiger), but -m64 can be taken by gcc in Tiger
+# (Tiger can support 64bits applications), so we have to eliminate -m64 while 
+# building kextensions for and OS X.
+CC=`echo $CC | sed -e "s/\-m64//g"`
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -x c -pipe -Wno-trigraphs -fasm-blocks -g -O0"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -Wno-four-char-constants -Wmost -O0"
-EXTRA_KCFLAGS="$EXTRA_KCFLAGS -fmessage-length=0 -ffix-and-continue"
+EXTRA_KCFLAGS="$EXTRA_KCFLAGS -fmessage-length=0"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -I$kernel_framework/Headers"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -I$kernel_framework/Headers/bsd"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -I$kernel_framework/PrivateHeaders"
@@ -62,6 +67,22 @@ EXTRA_KCFLAGS="$EXTRA_KCFLAGS -msoft-float -static"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -DKERNEL -DKERNEL_PRIVATE"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -DDRIVER_PRIVATE -DAPPLE -DNeXT"
 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -D__KERNEL__ -D__DARWIN__"
+#
+# C flags for Panther/Tiger
+#
+case $target_os in
+        darwin8*)
+                EXTRA_KCFLAGS="$EXTRA_KCFLAGS -D__DARWIN8__"
+       ;;
+        darwin7*)
+                EXTRA_KCFLAGS="$EXTRA_KCFLAGS -ffix-and-continue"
+        ;;
+esac
+
+#
+# Debugging flags. Remove!
+#
+EXTRA_KCFLAGS="$EXTRA_KCFLAGS -O0 -DMACH_ASSERT=1"
 EXTRA_KLDFLAGS="$EXTRA_KLDFLAGS -static -nostdlib -r"
 EXTRA_KLIBS="-lkmodc++ -lkmod -lcc_kext"
 KMODEXT=""
@@ -69,12 +90,16 @@ KMODEXT=""
 AC_SUBST(EXTRA_KLDFLAGS)
 AC_SUBST(EXTRA_KLIBS)
 
-plistdir='/System/Library/Extensions/$(firstword $(macos_PROGRAMS)).kext/Contents'
+kextdir='/System/Library/Extensions/$(firstword $(macos_PROGRAMS)).kext'
+plistdir='$(kextdir)/Contents'
 macosdir='$(plistdir)/MacOS'
 
+AC_SUBST(kextdir)
 AC_SUBST(plistdir)
 AC_SUBST(macosdir)
 
+LN_PROG_DARWIN
+
 LP_PROG_DARWIN
 
 LC_PROG_DARWIN