harmonize with 0.9.7-stable and 0.9.8-stable variants of CHANGES
[openssl.git] / config
diff --git a/config b/config
index 7d330e4a54df5a1c26931848c832196283d17f93..82c57efb7c9284d757e1435393b93e6e66e17d85 100755 (executable)
--- a/config
+++ b/config
@@ -84,7 +84,7 @@ if [ "x$XREL" != "x" ]; then
            4.2)
                echo "whatever-whatever-unixware1"; exit 0
                ;;
-           5)
+           5*)
                case "x${VERSION}" in
                    # We hardcode i586 in place of ${MACHINE} for the
                    # following reason. The catch is that even though Pentium
@@ -93,8 +93,7 @@ if [ "x$XREL" != "x" ]; then
                    # with i386 is that it makes ./config pass 386 to
                    # ./Configure, which in turn makes make generate
                    # inefficient SHA-1 (for this moment) code.
-                   x7*)  echo "i586-sco-unixware7";           exit 0 ;;
-                   x8*)  echo "i586-unkn-OpenUNIX${VERSION}"; exit 0 ;;
+                   x[678]*)  echo "i586-sco-unixware7"; exit 0 ;;
                esac
                ;;
        esac
@@ -452,8 +451,6 @@ if [ "$SYSTEM" = "SunOS" ]; then
       echo "         patch #107357-01 or later applied."
       sleep 5
     fi
-  elif [ "$CC" = "cc" -a $CCVER -gt 0 ]; then
-    CC=sc3
   fi
 fi
 
@@ -654,13 +651,20 @@ case "$GUESSOS" in
        ;;
   *-*-sunos4)          OUT="sunos-$CC" ;;
 
-  *86*-*-bsdi4)                OUT="bsdi-elf-gcc"; options="$options no-sse2" ;;
+  *86*-*-bsdi4)                OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;;
   alpha*-*-*bsd*)      OUT="BSD-generic64; options="$options -DL_ENDIAN" ;;
   powerpc64-*-*bsd*)   OUT="BSD-generic64; options="$options -DB_ENDIAN" ;;
   sparc64-*-*bsd*)     OUT="BSD-sparc64" ;;
   ia64-*-*bsd*)                OUT="BSD-ia64" ;;
   amd64-*-*bsd*)       OUT="BSD-x86_64" ;;
-  *86*-*-*bsd*)                case "`(file -L /usr/lib/libc.so.*) 2>/dev/null`" in
+  *86*-*-*bsd*)                # mimic ld behaviour when it's looking for libc...
+                       if [ -L /usr/lib/libc.so ]; then        # [Free|Net]BSD
+                           libc=/usr/lib/libc.so
+                       else                                    # OpenBSD
+                           # ld searches for highest libc.so.* and so do we
+                           libc=`(ls /usr/lib/libc.so.* | tail -1) 2>/dev/null`
+                       fi
+                       case "`(file -L $libc) 2>/dev/null`" in
                        *ELF*)  OUT="BSD-x86-elf" ;;
                        *)      OUT="BSD-x86"; options="$options no-sse2" ;;
                        esac ;;
@@ -668,16 +672,15 @@ case "$GUESSOS" in
 
   *-*-osf)             OUT="osf1-alpha-cc" ;;
   *-*-tru64)           OUT="tru64-alpha-cc" ;;
-  *-*-OpenUNIX*)
+  *-*-[Uu]nix[Ww]are7)
        if [ "$CC" = "gcc" ]; then
-         OUT="OpenUNIX-8-gcc" 
+         OUT="unixware-7-gcc" ; options="$options no-sse2"
        else    
-         OUT="OpenUNIX-8" 
+         OUT="unixware-7" ; options="$options no-sse2 -D__i386__"
        fi
        ;;
-  *-*-[Uu]nix[Ww]are7) OUT="unixware-7" ;;
-  *-*-[Uu]nix[Ww]are20*) OUT="unixware-2.0" ;;
-  *-*-[Uu]nix[Ww]are21*) OUT="unixware-2.1" ;;
+  *-*-[Uu]nix[Ww]are20*) OUT="unixware-2.0"; options="$options no-sse2 no-sha512" ;;
+  *-*-[Uu]nix[Ww]are21*) OUT="unixware-2.1"; options="$options no-sse2 no-sha512" ;;
   *-*-vos)
        options="$options no-threads no-shared no-asm no-dso"
        EXE=".pm"
@@ -742,6 +745,11 @@ case "$GUESSOS" in
                fi
            fi
        fi
+       if (lsattr -E -O -l proc0 | grep -i powerpc) >/dev/null 2>&1; then
+           :   # this applies even to Power3 and later, as they return PowerPC_POWER[345]
+       else
+           options="$options no-asm"
+       fi
        ;;
   # these are all covered by the catchall below
   # *-dgux) OUT="dgux" ;;