Index: configure
===================================================================
--- configure   (revision 9448)
+++ configure   (working copy)
@@ -221,6 +221,22 @@
     processor_flags=`cat /proc/cpuinfo | grep "flags" | head -n 1`
 fi
 
+if test -f /usr/bin/hostinfo ; then
+    if test x"$processor" = x"" -o x"$processor" = x"$cpu_raw" -o \
+            x"$processor" = x"unknown" -o x"$processor" = x"powerpc" ; then
+        processor=`/usr/bin/hostinfo | grep "Processor type:"`
+        processor=${processor#Processor type: *}
+        processor=${processor% (*}
+        if test x"${processor:0:3}" = x"ppc" ; then
+            tune=$processor
+        else
+            processor=`/usr/sbin/sysctl -n machdep.cpu.model_string`
+            processor_flags=`/usr/sbin/sysctl -n machdep.cpu.features`
+            processor_flags=`echo $processor_flags | tr "[A-Z]" "[a-z]"`
+        fi
+    fi
+fi
+
 # These have to be looked up early for some types of cross-compiling to work
 cpu_overide="no"
 for opt do
@@ -1202,6 +1218,9 @@
        ARCHFLAGS="-march=pentium4"
    elif expr "$processor" : ".*Pentium(R) [4MD]" > /dev/null ; then
        ARCHFLAGS="-march=pentium4"
+   elif expr "$processor" : ".*Intel P6 Family" > /dev/null ; then
+       cpu_raw="i686"
+       ARCHFLAGS="-march=pentium4"
    elif expr "$processor" : ".*Xeon(TM) CPU" > /dev/null ; then
        ARCHFLAGS="-march=pentium4"
    elif expr "$processor" : ".*Celeron(R) M processor" > /dev/null ; then
@@ -1551,7 +1570,7 @@
 $cc -o $TMPE $TMPC 2> /dev/null || _memalign=no
 fi
 
-if test "$_memalign" = "no" -a "$mmx" = "yes" -a "$memalignhack" != "yes"; then
+if test "$_memalign" = "no" -a "$mmx" = "yes" -a "$memalignhack" != "yes" -a "$darwin" != "yes" ; then
     echo "error, no memalign() but sse enabled, either disable it or use --enable-memalign-hack"
     exit 1
 fi

