Omit padding in RC4_KEY on IA-64. The idea behind padding was to reserve
[openssl.git] / config
diff --git a/config b/config
index 711af61541a9711181e65ed00b8f1442996ce960..a3ccb5d9d2f1223e8f6e899f34aae5b094aa6b20 100755 (executable)
--- a/config
+++ b/config
@@ -337,6 +337,9 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
        echo "mips-sony-newsos4"; exit 0;
        ;;
 
+    MINGW*)
+       echo "${MACHINE}-whatever-mingw"; exit 0;
+       ;;
     CYGWIN*)
        case "$RELEASE" in
            [bB]*|1.0|1.[12].*)
@@ -442,7 +445,7 @@ if [ "$SYSTEM" = "SunOS" ]; then
        egrep -e '^cc: .* C [0-9]\.[0-9]' | \
        sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'`
   CCVER=${CCVER:-0}
-  if [ $CCVER -gt 40 ]; then
+  if [ $MACHINE != i86pc -a $CCVER -gt 40 ]; then
     CC=cc      # overrides gcc!!!
     if [ $CCVER -eq 50 ]; then
       echo "WARNING! Detected WorkShop C 5.0. Do make sure you have"
@@ -638,18 +641,35 @@ case "$GUESSOS" in
   sun4m-*-solaris2)    OUT="solaris-sparcv8-$CC" ;;
   sun4d-*-solaris2)    OUT="solaris-sparcv8-$CC" ;;
   sun4*-*-solaris2)    OUT="solaris-sparcv7-$CC" ;;
-  *86*-*-solaris2)     OUT="solaris-x86-$CC" ;;
+  *86*-*-solaris2)
+       ISA64=`(isalist) 2>/dev/null | grep amd64`
+       if [ "$ISA64" != "" ]; then
+           OUT="solaris64-x86_64-$CC"
+       else
+           OUT="solaris-x86-$CC"
+           if [ `uname -r | sed -e 's/5\.//'` -lt 10 ]; then
+               options="$options no-sse2"
+           fi
+       fi
+       ;;
   *-*-sunos4)          OUT="sunos-$CC" ;;
 
-  *86*-*-bsdi4)                OUT="bsdi-elf-gcc" ;;
+  *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" ;;
+                       *)      OUT="BSD-x86"; options="$options no-sse2" ;;
                        esac ;;
   *-*-*bsd*)           OUT="BSD-generic32" ;;
 
@@ -662,9 +682,9 @@ case "$GUESSOS" in
          OUT="OpenUNIX-8" 
        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]are7) OUT="unixware-7"; options="$options no-sse2" ;;
+  *-*-[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"