PREFIX=""
SUFFIX=""
TEST="false"
+EXE=""
# pick up any command line args to config
for i
echo "whatever-whatever-sco5"; exit 0
;;
4.2MP)
- if [ "x$VERSION" = "x2.01" ]; then
- echo "${MACHINE}-whatever-unixware201"; exit 0
- elif [ "x$VERSION" = "x2.02" ]; then
- echo "${MACHINE}-whatever-unixware202"; exit 0
- elif [ "x$VERSION" = "x2.03" ]; then
- echo "${MACHINE}-whatever-unixware203"; exit 0
- elif [ "x$VERSION" = "x2.1.1" ]; then
- echo "${MACHINE}-whatever-unixware211"; exit 0
- elif [ "x$VERSION" = "x2.1.2" ]; then
- echo "${MACHINE}-whatever-unixware212"; exit 0
- elif [ "x$VERSION" = "x2.1.3" ]; then
- echo "${MACHINE}-whatever-unixware213"; exit 0
- else
- echo "${MACHINE}-whatever-unixware2"; exit 0
- fi
+ case "x${VERSION}" in
+ x2.0*) echo "whatever-whatever-unixware20"; exit 0 ;;
+ x2.1*) echo "whatever-whatever-unixware21"; exit 0 ;;
+ x2*) echo "whatever-whatever-unixware2"; exit 0 ;;
+ esac
;;
4.2)
- echo "whatever-whatever-unixware1"; exit 0
- ;;
- OpenUNIX)
- if [ "`echo x$VERSION | sed -e 's/\..*//'`" = "x8" ]; then
- echo "${MACHINE}-unknown-OpenUNIX${VERSION}"; exit 0
- fi
+ echo "i386-whatever-unixware1"; exit 0
;;
5)
- if [ "`echo x$VERSION | sed -e 's/\..*//'`" = "x7" ]; then
- echo "${MACHINE}-sco-unixware7"; exit 0
- fi
+ case "x${VERSION}" in
+ # We hardcode i586 in place of ${MACHINE} for the
+ # following reason. The catch is that even though Pentium
+ # is minimum requirement for platforms in question,
+ # ${MACHINE} gets always assigned to i386. Now, problem
+ # 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 ;;
+ esac
;;
esac
fi
echo "m68k-apple-aux3"; exit 0
;;
- AIX:[3456789]:4:*)
- echo "${MACHINE}-ibm-aix43"; exit 0
+ AIX:[3-9]:4:*)
+ echo "${MACHINE}-ibm-aix"; exit 0
;;
- AIX:*:[56789]:*)
- echo "${MACHINE}-ibm-aix43"; exit 0
+ AIX:*:[5-9]:*)
+ echo "${MACHINE}-ibm-aix"; exit 0
;;
AIX:*)
- echo "${MACHINE}-ibm-aix"; exit 0
+ echo "${MACHINE}-ibm-aix3"; exit 0
;;
dgux:*)
HPUXVER=`echo ${RELEASE}|sed -e 's/[^.]*.[0B]*//'`
case "$HPUXVER" in
1[0-9].*) # HPUX 10 and 11 targets are unified
- echo "${MACHINE}-hp-hpux10"; exit 0
+ echo "${MACHINE}-hp-hpux1x"; exit 0
;;
*)
echo "${MACHINE}-hp-hpux"; exit 0
echo "${MACHINE}-whatever-bsdi"; exit 0
;;
- FreeBSD:*)
+ FreeBSD:*:*:*386*)
VERS=`echo ${RELEASE} | sed -e 's/[-(].*//'`
MACH=`sysctl -n hw.model`
ARCH='whatever'
*486* ) MACH="i486" ;;
Pentium\ II*) MACH="i686" ;;
Pentium* ) MACH="i586" ;;
- Alpha* ) MACH="alpha" ;;
* ) MACH="$MACHINE" ;;
esac
case ${MACH} in
echo "${MACH}-${ARCH}-freebsd${VERS}"; exit 0
;;
+ FreeBSD:*)
+ echo "${MACHINE}-whatever-freebsd"; exit 0
+ ;;
+
NetBSD:*:*:*386*)
echo "`(/usr/sbin/sysctl -n hw.model || /sbin/sysctl -n hw.model) | sed 's,.*\(.\)86-class.*,i\186,'`-whatever-netbsd"; exit 0
;;
;;
QNX:*)
- case "$VERSION" in
+ case "$RELEASE" in
4*)
echo "${MACHINE}-whatever-qnx4"
;;
+ 6*)
+ echo "${MACHINE}-whatever-qnx6"
+ ;;
*)
echo "${MACHINE}-whatever-qnx"
;;
echo "${MACHINE}-whatever-sysv4"; exit 0
;;
+ VOS:*:*:i786)
+ echo "i386-stratus-vos"; exit 0
+ ;;
+
+ VOS:*:*:*)
+ echo "hppa1.1-stratus-vos"; exit 0
+ ;;
+
*:4*:R4*:m88k)
echo "${MACHINE}-whatever-sysv4"; exit 0
;;
echo "mips-sony-newsos4"; exit 0;
;;
+ CYGWIN*)
+ case "$RELEASE" in
+ [bB]*|1.0|1.[12].*)
+ echo "${MACHINE}-whatever-cygwin_pre1.3"
+ ;;
+ *)
+ echo "${MACHINE}-whatever-cygwin"
+ ;;
+ esac
+ exit 0
+ ;;
+
+ *"CRAY T3E")
+ echo "t3e-cray-unicosmk"; exit 0;
+ ;;
+
+ *CRAY*)
+ echo "j90-cray-unicos"; exit 0;
+ ;;
+
+ NONSTOP_KERNEL*)
+ echo "nsr-tandem-nsk"; exit 0;
+ ;;
esac
#
# figure out if gcc is available and if so we use it otherwise
# we fallback to whatever cc does on the system
-GCCVER=`(gcc --version) 2>/dev/null`
+GCCVER=`(gcc -dumpversion) 2>/dev/null`
if [ "$GCCVER" != "" ]; then
CC=gcc
- # then strip off whatever prefix Cygnus prepends the number with...
- GCCVER=`echo $GCCVER | sed 's/^[a-z]*\-//'`
+ # then strip off whatever prefix egcs prepends the number with...
+ # Hopefully, this will work for any future prefixes as well.
+ GCCVER=`echo $GCCVER | sed 's/^[a-zA-Z]*\-//'`
+ # Since gcc 3.1 gcc --version behaviour has changed. gcc -dumpversion
+ # does give us what we want though, so we use that. We just just the
+ # major and minor version numbers.
# peak single digit before and after first dot, e.g. 2.95.1 gives 29
GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'`
else
CC=cc
fi
GCCVER=${GCCVER:-0}
-
+if [ "$SYSTEM" = "HP-UX" ];then
+ # By default gcc is a ILP32 compiler (with long long == 64).
+ GCC_BITS="32"
+ if [ $GCCVER -ge 30 ]; then
+ # PA64 support only came in with gcc 3.0.x.
+ # We check if the preprocessor symbol __LP64__ is defined...
+ if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
+ : # __LP64__ has slipped through, it therefore is not defined
+ else
+ GCC_BITS="64"
+ fi
+ fi
+fi
if [ "$SYSTEM" = "SunOS" ]; then
if [ $GCCVER -ge 30 ]; then
# 64-bit ABI isn't officially supported in gcc 3.0, but it appears
fi
fi
+if [ "${SYSTEM}" = "AIX" ]; then # favor vendor cc over gcc
+ (cc) 2>&1 | grep -iv "not found" > /dev/null && CC=cc
+fi
+
CCVER=${CCVER:-0}
# read the output of the embedded GuessOS
# more time that I want to waste at the moment
case "$GUESSOS" in
mips2-sgi-irix)
- CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
+ CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
CPU=${CPU:-0}
if [ $CPU -ge 4000 ]; then
options="$options -mips2"
OUT="irix-$CC"
;;
mips3-sgi-irix)
- CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
- CPU=${CPU:-0}
- if [ $CPU -ge 5000 ]; then
- options="$options -mips4"
- else
- options="$options -mips3"
- fi
+ #CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
+ #CPU=${CPU:-0}
+ #if [ $CPU -ge 5000 ]; then
+ # options="$options -mips4"
+ #else
+ # options="$options -mips3"
+ #fi
OUT="irix-mips3-$CC"
;;
mips4-sgi-irix64)
echo "WARNING! If you wish to build 64-bit library, then you have to"
echo " invoke './Configure irix64-mips4-$CC' *manually*."
- if [ "$TEST" = "false" ]; then
+ if [ "$TEST" = "false" -a -t 1 ]; then
echo " You have about 5 seconds to press Ctrl-C to abort."
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
- CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
- CPU=${CPU:-0}
- if [ $CPU -ge 5000 ]; then
- options="$options -mips4"
- else
- options="$options -mips3"
- fi
+ #CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
+ #CPU=${CPU:-0}
+ #if [ $CPU -ge 5000 ]; then
+ # options="$options -mips4"
+ #else
+ # options="$options -mips3"
+ #fi
OUT="irix-mips3-$CC"
;;
alpha-*-linux2)
${CC} -o dummy dummy.c && OUT=`./dummy ${MACHINE}`
rm dummy dummy.c
;;
+ ppc64-*-linux2)
+ echo "WARNING! If you wish to build 64-bit library, then you have to"
+ echo " invoke './Configure linux-ppc64' *manually*."
+ if [ "$TEST" = "false" -a -t 1 ]; then
+ echo " You have about 5 seconds to press Ctrl-C to abort."
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
+ fi
+ OUT="linux-ppc"
+ ;;
ppc-*-linux2) OUT="linux-ppc" ;;
m68k-*-linux*) OUT="linux-m68k" ;;
ia64-*-linux?) OUT="linux-ia64" ;;
ppc-apple-darwin*) OUT="darwin-ppc-cc" ;;
i386-apple-darwin*) OUT="darwin-i386-cc" ;;
sparc64-*-linux2)
- #Before we can uncomment following lines we have to wait at least
- #till 64-bit glibc for SPARC is operational:-(
- #echo "WARNING! If you wish to build 64-bit library, then you have to"
- #echo " invoke './Configure linux64-sparcv9' *manually*."
- #echo " Type return if you want to continue, Ctrl-C to abort."
- #read waste < /dev/tty
+ echo "WARNING! If you *know* that your GNU C supports 64-bit/V9 ABI"
+ echo " and wish to build 64-bit library, then you have to"
+ echo " invoke './Configure linux64-sparcv9' *manually*."
+ if [ "$TEST" = "false" -a -t 1 ]; then
+ echo " You have about 5 seconds to press Ctrl-C to abort."
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
+ fi
OUT="linux-sparcv9" ;;
sparc-*-linux2)
KARCH=`awk '/^type/{print$3}' /proc/cpuinfo`
sun4d) OUT="linux-sparcv8" ;;
*) OUT="linux-sparcv7" ;;
esac ;;
- arm*-*-linux2) OUT="linux-elf-arm" ;;
+ parisc-*-linux2)
+ CPUARCH=`awk '/cpu family/{print substr($5,1,3)}' /proc/cpuinfo`
+ CPUSCHEDULE=`awk '/^cpu.[ ]: PA/{print substr($3,3)}' /proc/cpuinfo`
+
+ # ??TODO ?? Model transformations
+ # 0. CPU Architecture for the 1.1 processor has letter suffixes. We strip that off
+ # assuming no further arch. identification will ever be used by GCC.
+ # 1. I'm most concerned about whether is a 7300LC is closer to a 7100 versus a 7100LC.
+ # 2. The variant 64-bit processors cause concern should GCC support explicit schedulers
+ # for these chips in the future.
+ # PA7300LC -> 7100LC (1.1)
+ # PA8200 -> 8000 (2.0)
+ # PA8500 -> 8000 (2.0)
+ # PA8600 -> 8000 (2.0)
+
+ CPUSCHEDULE=`echo $CPUSCHEDULE|sed -e 's/7300LC/7100LC/' -e 's/8?00/8000/'`
+ # Finish Model transformations
+
+ options="$options -mschedule=$CPUSCHEDULE -march=$CPUARCH"
+ OUT="linux-parisc" ;;
+ arm*b-*-linux2) OUT="linux-elf-arm"; options="$options -DB_ENDIAN" ;;
+ arm*l-*-linux2) OUT="linux-elf-arm"; options="$options -DL_ENDIAN" ;;
+ arm*-*-linux2) OUT="linux-elf-arm" ;;
s390-*-linux2) OUT="linux-s390" ;;
+ s390x-*-linux?) OUT="linux-s390x" ;;
+ x86_64-*-linux?) OUT="linux-x86_64" ;;
*-*-linux2) OUT="linux-elf"
if [ "$GCCVER" -gt 28 ]; then
if grep '^model.*Pentium' /proc/cpuinfo >/dev/null ; then
if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then
echo "WARNING! If you wish to build 64-bit library, then you have to"
echo " invoke './Configure solaris64-sparcv9-cc' *manually*."
- if [ "$TEST" = "false" ]; then
+ if [ "$TEST" = "false" -a -t 1 ]; then
echo " You have about 5 seconds to press Ctrl-C to abort."
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then
# $GCC_ARCH denotes default ABI chosen by compiler driver
OUT="solaris64-sparcv9-gcc"
echo "WARNING! If you wish to build 32-bit library, then you have to"
echo " invoke './Configure solaris-sparcv9-gcc' *manually*."
- if [ "$TEST" = "false" ]; then
+ if [ "$TEST" = "false" -a -t 1 ]; then
echo " You have about 5 seconds to press Ctrl-C to abort."
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
elif [ "$GCC_ARCH" = "-m32" ]; then
echo "NOTICE! If you *know* that your GNU C supports 64-bit/V9 ABI"
echo " and wish to build 64-bit library, then you have to"
echo " invoke './Configure solaris64-sparcv9-gcc' *manually*."
- if [ "$TEST" = "false" ]; then
+ if [ "$TEST" = "false" -a -t 1 ]; then
echo " You have about 5 seconds to press Ctrl-C to abort."
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
fi
fi
*86*-*-solaris2) OUT="solaris-x86-$CC" ;;
*-*-sunos4) OUT="sunos-$CC" ;;
alpha*-*-freebsd*) OUT="FreeBSD-alpha" ;;
+ sparc64-*-freebsd*) OUT="FreeBSD-sparc64" ;;
+ ia64-*-freebsd*) OUT="FreeBSD-ia64" ;;
*-freebsd[3-9]*) OUT="FreeBSD-elf" ;;
*-freebsd[1-2]*) OUT="FreeBSD" ;;
*86*-*-netbsd) OUT="NetBSD-x86" ;;
sun3*-*-netbsd) OUT="NetBSD-m68" ;;
*-*-netbsd) OUT="NetBSD-sparc" ;;
- *86*-*-openbsd) OUT="OpenBSD-x86" ;;
alpha*-*-openbsd) OUT="OpenBSD-alpha" ;;
+ *86*-*-openbsd) OUT="OpenBSD-i386" ;;
+ m68k*-*-openbsd) OUT="OpenBSD-m68k" ;;
+ m88k*-*-openbsd) OUT="OpenBSD-m88k" ;;
+ mips*-*-openbsd) OUT="OpenBSD-mips" ;;
pmax*-*-openbsd) OUT="OpenBSD-mips" ;;
+ powerpc*-*-openbsd) OUT="OpenBSD-powerpc" ;;
+ sparc64*-*-openbsd) OUT="OpenBSD-sparc64" ;;
+ sparc*-*-openbsd) OUT="OpenBSD-sparc" ;;
+ vax*-*-openbsd) OUT="OpenBSD-vax" ;;
+ hppa*-*-openbsd) OUT="OpenBSD-hppa" ;;
*-*-openbsd) OUT="OpenBSD" ;;
*86*-*-bsdi4) OUT="bsdi-elf-gcc" ;;
*-*-osf) OUT="alphaold-cc" ;;
*-*-tru64) OUT="alpha-cc" ;;
+ *-*-OpenUNIX*)
+ if [ "$CC" = "gcc" ]; then
+ OUT="OpenUNIX-8-gcc"
+ else
+ OUT="OpenUNIX-8"
+ fi
+ ;;
*-*-unixware7) OUT="unixware-7" ;;
*-*-UnixWare7) OUT="unixware-7" ;;
*-*-Unixware7) OUT="unixware-7" ;;
*-*-UnixWare21*) OUT="unixware-2.1" ;;
*-*-Unixware20*) OUT="unixware-2.0" ;;
*-*-Unixware21*) OUT="unixware-2.1" ;;
+ *-*-vos)
+ options="$options no-threads no-shared no-asm no-dso"
+ EXE=".pm"
+ OUT="vos-$CC" ;;
BS2000-siemens-sysv4) OUT="BS2000-OSD" ;;
RM*-siemens-sysv4) OUT="ReliantUNIX" ;;
*-siemens-sysv4) OUT="SINIX" ;;
*-hpux1*)
- OUT="hpux-parisc-$CC"
+ if [ $CC = "gcc" ];
+ then
+ if [ $GCC_BITS = "64" ]; then
+ OUT="hpux64-parisc2-gcc"
+ else
+ OUT="hpux-parisc-gcc"
+ fi
+ else
+ OUT="hpux-parisc-$CC"
+ fi
KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null`
KERNEL_BITS=${KERNEL_BITS:-32}
CPU_VERSION=`(getconf CPU_VERSION) 2>/dev/null`
CPU_VERSION=${CPU_VERSION:-0}
# See <sys/unistd.h> for further info on CPU_VERSION.
if [ $CPU_VERSION -ge 768 ]; then # IA-64 CPU
- echo "NOTICE! 64-bit is the only ABI currently operational on HP-UXi."
- echo " Post request to openssl-dev@openssl.org for 32-bit support."
- if [ "$TEST" = "false" ]; then
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ echo "WARNING! 64-bit ABI is the default configured ABI on HP-UXi."
+ echo " If you wish to build 32-bit library, the you have to"
+ echo " invoke './Configure hpux-ia64-cc' *manually*."
+ if [ "$TEST" = "false" -a -t 1 ]; then
+ echo " You have about 5 seconds to press Ctrl-C to abort."
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
OUT="hpux64-ia64-cc"
elif [ $CPU_VERSION -ge 532 ]; then # PA-RISC 2.x CPU
if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then
echo "WARNING! If you wish to build 64-bit library then you have to"
echo " invoke './Configure hpux64-parisc2-cc' *manually*."
- if [ "$TEST" = "false" ]; then
+ if [ "$TEST" = "false" -a -t 1 ]; then
echo " You have about 5 seconds to press Ctrl-C to abort."
- (stty -icanon min 0 time 50; read waste) < /dev/tty
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
fi
fi
elif [ $CPU_VERSION -ge 528 ]; then # PA-RISC 1.1+ CPU
fi
options="$options -D_REENTRANT" ;;
*-hpux) OUT="hpux-parisc-$CC" ;;
+ *-aix)
+ KERNEL_BITS=`(getconf KERNEL_BITMODE) 2>/dev/null`
+ KERNEL_BITS=${KERNEL_BITS:-32}
+ OBJECT_MODE=${OBJECT_MODE:-32}
+ if [ "$CC" = "gcc" ]; then
+ OUT="aix-gcc"
+ elif [ $OBJECT_MODE -eq 64 ]; then
+ echo 'Your $OBJECT_MODE was found to be set to 64'
+ OUT="aix64-cc"
+ else
+ OUT="aix-cc"
+ if [ $KERNEL_BITS -eq 64 ]; then
+ echo "WARNING! If you wish to build 64-bit kit, then you have to"
+ echo " invoke './Configure aix64-cc' *manually*."
+ if [ "$TEST" = "false" -a -t 1 ]; then
+ echo " You have ~5 seconds to press Ctrl-C to abort."
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
+ fi
+ fi
+ fi
+ ;;
# these are all covered by the catchall below
- # *-aix) OUT="aix-$CC" ;;
# *-dgux) OUT="dgux" ;;
mips-sony-newsos4) OUT="newsos4-gcc" ;;
+ *-*-cygwin_pre1.3) OUT="Cygwin-pre1.3" ;;
+ *-*-cygwin) OUT="Cygwin" ;;
+ t3e-cray-unicosmk) OUT="cray-t3e" ;;
+ j90-cray-unicos) OUT="cray-j90" ;;
+ nsr-tandem-nsk) OUT="tandem-c89" ;;
*) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
esac
i386-*) options="$options 386" ;;
esac
-for i in bf cast des dh dsa ec hmac md2 md5 mdc2 rc2 rc4 rc5 ripemd rsa sha
+for i in bf cast des dh dsa ec hmac idea md2 md5 mdc2 rc2 rc4 rc5 aes ripemd rsa sha
do
if [ ! -d crypto/$i ]
then
if [ ".$PERL" = . ] ; then
for i in . `echo $PATH | sed 's/:/ /g'`; do
- if [ -f "$i/perl5" ] ; then
- PERL="$i/perl5"
+ if [ -f "$i/perl5$EXE" ] ; then
+ PERL="$i/perl5$EXE"
break;
fi;
done
if [ ".$PERL" = . ] ; then
for i in . `echo $PATH | sed 's/:/ /g'`; do
- if [ -f "$i/perl" ] ; then
- if "$i/perl" -e 'exit($]<5.0)'; then
- PERL="$i/perl"
+ if [ -f "$i/perl$EXE" ] ; then
+ if "$i/perl$EXE" -e 'exit($]<5.0)'; then
+ PERL="$i/perl$EXE"
break;
fi;
fi;