config revision 76866
155714Skris#!/bin/sh 255714Skris# 355714Skris# OpenSSL config: determine the operating system and run ./Configure 455714Skris# 555714Skris# "config -h" for usage information. 655714Skris# 755714Skris# this is a merge of minarch and GuessOS from the Apache Group. 855714Skris# Originally written by Tim Hudson <tjh@cryptsoft.com>. 955714Skris 1055714Skris# Original Apache Group comments on GuessOS 1155714Skris 1255714Skris# Simple OS/Platform guesser. Similar to config.guess but 1355714Skris# much, much smaller. Since it was developed for use with 1455714Skris# Apache, it follows under Apache's regular licensing 1555714Skris# with one specific addition: Any changes or additions 1655714Skris# to this script should be Emailed to the Apache 1755714Skris# group (apache@apache.org) in general and to 1855714Skris# Jim Jagielski (jim@jaguNET.com) in specific. 1955714Skris# 2055714Skris# Be as similar to the output of config.guess/config.sub 2155714Skris# as possible. 2255714Skris 2355714Skris# First get uname entries that we use below 2455714Skris 2555714SkrisMACHINE=`(uname -m) 2>/dev/null` || MACHINE="unknown" 2655714SkrisRELEASE=`(uname -r) 2>/dev/null` || RELEASE="unknown" 2755714SkrisSYSTEM=`(uname -s) 2>/dev/null` || SYSTEM="unknown" 2855714SkrisVERSION=`(uname -v) 2>/dev/null` || VERSION="unknown" 2955714Skris 3059191Skris 3155714Skris# Now test for ISC and SCO, since it is has a braindamaged uname. 3255714Skris# 3355714Skris# We need to work around FreeBSD 1.1.5.1 3455714Skris( 3555714SkrisXREL=`uname -X 2>/dev/null | grep "^Release" | awk '{print $3}'` 3655714Skrisif [ "x$XREL" != "x" ]; then 3755714Skris if [ -f /etc/kconfig ]; then 3855714Skris case "$XREL" in 3955714Skris 4.0|4.1) 4055714Skris echo "${MACHINE}-whatever-isc4"; exit 0 4155714Skris ;; 4255714Skris esac 4355714Skris else 4455714Skris case "$XREL" in 4555714Skris 3.2v4.2) 4655714Skris echo "whatever-whatever-sco3"; exit 0 4755714Skris ;; 4855714Skris 3.2v5.0*) 4955714Skris echo "whatever-whatever-sco5"; exit 0 5055714Skris ;; 5155714Skris 4.2MP) 5276866Skris if [ "x$VERSION" = "x2.01" ]; then 5376866Skris echo "${MACHINE}-whatever-unixware201"; exit 0 5476866Skris elif [ "x$VERSION" = "x2.02" ]; then 5576866Skris echo "${MACHINE}-whatever-unixware202"; exit 0 5676866Skris elif [ "x$VERSION" = "x2.03" ]; then 5776866Skris echo "${MACHINE}-whatever-unixware203"; exit 0 5876866Skris elif [ "x$VERSION" = "x2.1.1" ]; then 5955714Skris echo "${MACHINE}-whatever-unixware211"; exit 0 6059191Skris elif [ "x$VERSION" = "x2.1.2" ]; then 6159191Skris echo "${MACHINE}-whatever-unixware212"; exit 0 6276866Skris elif [ "x$VERSION" = "x2.1.3" ]; then 6376866Skris echo "${MACHINE}-whatever-unixware213"; exit 0 6455714Skris else 6555714Skris echo "${MACHINE}-whatever-unixware2"; exit 0 6655714Skris fi 6755714Skris ;; 6855714Skris 4.2) 6955714Skris echo "whatever-whatever-unixware1"; exit 0 7055714Skris ;; 7159191Skris 5) 7259191Skris if [ "`echo x$VERSION | sed -e 's/\..*//'`" = "x7" ]; then 7359191Skris echo "${MACHINE}-sco-unixware7"; exit 0 7459191Skris fi 7559191Skris ;; 7655714Skris esac 7755714Skris fi 7855714Skrisfi 7955714Skris# Now we simply scan though... In most cases, the SYSTEM info is enough 8055714Skris# 8155714Skriscase "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in 8268651Skris MPE/iX:*) 8368651Skris MACHINE=`echo "$MACHINE" | sed -e 's/-/_/g'` 8468651Skris echo "parisc-hp-MPE/iX"; exit 0 8568651Skris ;; 8655714Skris A/UX:*) 8755714Skris echo "m68k-apple-aux3"; exit 0 8855714Skris ;; 8955714Skris 9076866Skris AIX:[3456789]:4:*) 9176866Skris echo "${MACHINE}-ibm-aix43"; exit 0 9276866Skris ;; 9376866Skris 9476866Skris AIX:*:[56789]:*) 9576866Skris echo "${MACHINE}-ibm-aix43"; exit 0 9676866Skris ;; 9776866Skris 9855714Skris AIX:*) 9955714Skris echo "${MACHINE}-ibm-aix"; exit 0 10055714Skris ;; 10155714Skris 10255714Skris dgux:*) 10355714Skris echo "${MACHINE}-dg-dgux"; exit 0 10455714Skris ;; 10555714Skris 10655714Skris HI-UX:*) 10755714Skris echo "${MACHINE}-hi-hiux"; exit 0 10855714Skris ;; 10955714Skris 11055714Skris HP-UX:*) 11155714Skris HPUXVER=`echo ${RELEASE}|sed -e 's/[^.]*.[0B]*//'` 11255714Skris case "$HPUXVER" in 11355714Skris 11.*) 11455714Skris echo "${MACHINE}-hp-hpux11"; exit 0 11555714Skris ;; 11655714Skris 10.*) 11755714Skris echo "${MACHINE}-hp-hpux10"; exit 0 11855714Skris ;; 11955714Skris *) 12055714Skris echo "${MACHINE}-hp-hpux"; exit 0 12155714Skris ;; 12255714Skris esac 12355714Skris ;; 12455714Skris 12555714Skris IRIX:5.*) 12655714Skris echo "mips2-sgi-irix"; exit 0 12755714Skris ;; 12855714Skris 12955714Skris IRIX:6.*) 13055714Skris echo "mips3-sgi-irix"; exit 0 13155714Skris ;; 13255714Skris 13355714Skris IRIX64:*) 13455714Skris echo "mips4-sgi-irix64"; exit 0 13555714Skris ;; 13655714Skris 13755714Skris Linux:[2-9].*) 13855714Skris echo "${MACHINE}-whatever-linux2"; exit 0 13955714Skris ;; 14055714Skris 14155714Skris Linux:1.*) 14255714Skris echo "${MACHINE}-whatever-linux1"; exit 0 14355714Skris ;; 14455714Skris 14555714Skris LynxOS:*) 14655714Skris echo "${MACHINE}-lynx-lynxos"; exit 0 14755714Skris ;; 14855714Skris 14955714Skris BSD/OS:4.*) # BSD/OS always says 386 15055714Skris echo "i486-whatever-bsdi4"; exit 0 15155714Skris ;; 15255714Skris 15355714Skris BSD/386:*:*:*486*|BSD/OS:*:*:*:*486*) 15455714Skris case `/sbin/sysctl -n hw.model` in 15555714Skris Pentium*) 15655714Skris echo "i586-whatever-bsdi"; exit 0 15755714Skris ;; 15855714Skris *) 15955714Skris echo "i386-whatever-bsdi"; exit 0 16055714Skris ;; 16155714Skris esac; 16255714Skris ;; 16355714Skris 16455714Skris BSD/386:*|BSD/OS:*) 16555714Skris echo "${MACHINE}-whatever-bsdi"; exit 0 16655714Skris ;; 16755714Skris 16855714Skris FreeBSD:*) 16955714Skris VERS=`echo ${RELEASE} | sed -e 's/[-(].*//'` 17055714Skris MACH=`sysctl -n hw.model` 17155714Skris ARCH='whatever' 17255714Skris case ${MACH} in 17355714Skris *386* ) MACH="i386" ;; 17455714Skris *486* ) MACH="i486" ;; 17555714Skris Pentium\ II*) MACH="i686" ;; 17655714Skris Pentium* ) MACH="i586" ;; 17755714Skris Alpha* ) MACH="alpha" ;; 17855714Skris * ) MACH="$MACHINE" ;; 17955714Skris esac 18055714Skris case ${MACH} in 18155714Skris i[0-9]86 ) ARCH="pc" ;; 18255714Skris esac 18355714Skris echo "${MACH}-${ARCH}-freebsd${VERS}"; exit 0 18455714Skris ;; 18555714Skris 18655714Skris NetBSD:*:*:*386*) 18772613Skris echo "`(/usr/sbin/sysctl -n hw.model || /sbin/sysctl -n hw.model) | sed 's,.*\(.\)86-class.*,i\186,'`-whatever-netbsd"; exit 0 18855714Skris ;; 18955714Skris 19055714Skris NetBSD:*) 19155714Skris echo "${MACHINE}-whatever-netbsd"; exit 0 19255714Skris ;; 19355714Skris 19455714Skris OpenBSD:*) 19555714Skris echo "${MACHINE}-whatever-openbsd"; exit 0 19655714Skris ;; 19755714Skris 19855714Skris OSF1:*:*:*alpha*) 19955714Skris echo "${MACHINE}-dec-osf"; exit 0 20055714Skris ;; 20155714Skris 20255714Skris QNX:*) 20355714Skris case "$VERSION" in 20468651Skris 4*) 20568651Skris echo "${MACHINE}-whatever-qnx4" 20655714Skris ;; 20755714Skris *) 20868651Skris echo "${MACHINE}-whatever-qnx" 20955714Skris ;; 21055714Skris esac 21155714Skris exit 0 21255714Skris ;; 21355714Skris 21455714Skris Paragon*:*:*:*) 21555714Skris echo "i860-intel-osf1"; exit 0 21655714Skris ;; 21755714Skris 21859191Skris Rhapsody:*) 21959191Skris echo "ppc-apple-rhapsody"; exit 0 22059191Skris ;; 22159191Skris 22255714Skris SunOS:5.*) 22368651Skris echo "${MACHINE}-whatever-solaris2"; exit 0 22455714Skris ;; 22555714Skris 22655714Skris SunOS:*) 22755714Skris echo "${MACHINE}-sun-sunos4"; exit 0 22855714Skris ;; 22955714Skris 23055714Skris UNIX_System_V:4.*:*) 23155714Skris echo "${MACHINE}-whatever-sysv4"; exit 0 23255714Skris ;; 23355714Skris 23455714Skris *:4*:R4*:m88k) 23555714Skris echo "${MACHINE}-whatever-sysv4"; exit 0 23655714Skris ;; 23755714Skris 23855714Skris DYNIX/ptx:4*:*) 23955714Skris echo "${MACHINE}-whatever-sysv4"; exit 0 24055714Skris ;; 24155714Skris 24255714Skris *:4.0:3.0:3[34]?? | *:4.0:3.0:3[34]??,*) 24355714Skris echo "i486-ncr-sysv4"; exit 0 24455714Skris ;; 24555714Skris 24655714Skris ULTRIX:*) 24755714Skris echo "${MACHINE}-unknown-ultrix"; exit 0 24855714Skris ;; 24955714Skris 25055714Skris SINIX*|ReliantUNIX*) 25155714Skris echo "${MACHINE}-siemens-sysv4"; exit 0 25255714Skris ;; 25355714Skris 25455714Skris POSIX-BC*) 25555714Skris echo "${MACHINE}-siemens-sysv4"; exit 0 # Here, $MACHINE == "BS2000" 25655714Skris ;; 25755714Skris 25855714Skris machten:*) 25955714Skris echo "${MACHINE}-tenon-${SYSTEM}"; exit 0; 26055714Skris ;; 26155714Skris 26255714Skris library:*) 26355714Skris echo "${MACHINE}-ncr-sysv4"; exit 0 26455714Skris ;; 26555714Skris 26655714Skris ConvexOS:*:11.0:*) 26755714Skris echo "${MACHINE}-v11-${SYSTEM}"; exit 0; 26855714Skris ;; 26955714Skris 27068651Skris NEWS-OS:4.*) 27168651Skris echo "mips-sony-newsos4"; exit 0; 27268651Skris ;; 27368651Skris 27455714Skrisesac 27555714Skris 27655714Skris# 27755714Skris# Ugg. These are all we can determine by what we know about 27855714Skris# the output of uname. Be more creative: 27955714Skris# 28055714Skris 28155714Skris# Do the Apollo stuff first. Here, we just simply assume 28255714Skris# that the existance of the /usr/apollo directory is proof 28355714Skris# enough 28455714Skrisif [ -d /usr/apollo ]; then 28555714Skris echo "whatever-apollo-whatever" 28655714Skris exit 0 28755714Skrisfi 28855714Skris 28955714Skris# Now NeXT 29055714SkrisISNEXT=`hostinfo 2>/dev/null` 29155714Skriscase "$ISNEXT" in 29255714Skris *'NeXT Mach 3.3'*) 29355714Skris echo "whatever-next-nextstep3.3"; exit 0 29455714Skris ;; 29555714Skris *NeXT*) 29655714Skris echo "whatever-next-nextstep"; exit 0 29755714Skris ;; 29855714Skrisesac 29955714Skris 30055714Skris# At this point we gone through all the one's 30155714Skris# we know of: Punt 30255714Skris 30355714Skrisecho "${MACHINE}-whatever-${SYSTEM}" 30455714Skrisexit 0 30555714Skris) 2>/dev/null | ( 30655714Skris 30755714Skris# --------------------------------------------------------------------------- 30855714Skris# this is where the translation occurs into SSLeay terms 30955714Skris# --------------------------------------------------------------------------- 31055714Skris 31155714SkrisPREFIX="" 31255714SkrisSUFFIX="" 31355714SkrisTEST="false" 31455714Skris 31555714Skris# pick up any command line args to config 31655714Skrisfor i 31755714Skrisdo 31855714Skriscase "$i" in 31955714Skris-d*) PREFIX="debug-";; 32055714Skris-t*) TEST="true";; 32155714Skris-h*) TEST="true"; cat <<EOF 32255714SkrisUsage: config [options] 32355714Skris -d Add a debug- prefix to machine choice. 32455714Skris -t Test mode, do not run the Configure perl script. 32555714Skris -h This help. 32655714Skris 32755714SkrisAny other text will be passed to the Configure perl script. 32855714SkrisSee INSTALL for instructions. 32955714Skris 33055714SkrisEOF 33155714Skris;; 33255714Skris*) options=$options" $i" ;; 33355714Skrisesac 33455714Skrisdone 33555714Skris 33655714Skris# figure out if gcc is available and if so we use it otherwise 33755714Skris# we fallback to whatever cc does on the system 33855714SkrisGCCVER=`(gcc --version) 2>/dev/null` 33955714Skrisif [ "$GCCVER" != "" ]; then 34055714Skris CC=gcc 34155714Skris # then strip off whatever prefix Cygnus prepends the number with... 34255714Skris GCCVER=`echo $GCCVER | sed 's/^[a-z]*\-//'` 34355714Skris # peak single digit before and after first dot, e.g. 2.95.1 gives 29 34455714Skris GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'` 34555714Skriselse 34655714Skris CC=cc 34755714Skrisfi 34855714Skris 34955714Skrisif [ "$SYSTEM" = "SunOS" ]; then 35059191Skris # check for WorkShop C, expected output is "cc: blah-blah C x.x" 35155714Skris CCVER=`(cc -V 2>&1) 2>/dev/null | \ 35255714Skris egrep -e '^cc: .* C [0-9]\.[0-9]' | \ 35355714Skris sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'` 35455714Skris CCVER=${CCVER:-0} 35555714Skris if [ $CCVER -gt 40 ]; then 35655714Skris CC=cc # overrides gcc!!! 35755714Skris if [ $CCVER -eq 50 ]; then 35855714Skris echo "WARNING! Detected WorkShop C 5.0. Do make sure you have" 35955714Skris echo " patch #107357-01 or later applied." 36055714Skris sleep 5 36155714Skris fi 36255714Skris elif [ "$CC" = "cc" -a $CCVER -gt 0 ]; then 36355714Skris CC=sc3 36455714Skris fi 36555714Skrisfi 36655714Skris 36759191Skrisif [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then 36859191Skris # check for Compaq C, expected output is "blah-blah C Vx.x" 36959191Skris CCCVER=`(ccc -V 2>&1) 2>/dev/null | \ 37059191Skris egrep -e '.* C V[0-9]\.[0-9]' | \ 37159191Skris sed 's/.* C V\([0-9]\)\.\([0-9]\).*/\1\2/'` 37259191Skris CCCVER=${CCCVER:-0} 37359191Skris if [ $CCCVER -gt 60 ]; then 37459191Skris CC=ccc # overrides gcc!!! well, ccc outperforms inoticeably 37559191Skris # only on hash routines and des, otherwise gcc (2.95) 37659191Skris # keeps along rather tight... 37759191Skris fi 37859191Skrisfi 37959191Skris 38055714SkrisGCCVER=${GCCVER:-0} 38155714SkrisCCVER=${CCVER:-0} 38255714Skris 38355714Skris# read the output of the embedded GuessOS 38455714Skrisread GUESSOS 38555714Skris 38655714Skrisecho Operating system: $GUESSOS 38755714Skris 38855714Skris# now map the output into SSLeay terms ... really should hack into the 38955714Skris# script above so we end up with values in vars but that would take 39055714Skris# more time that I want to waste at the moment 39155714Skriscase "$GUESSOS" in 39255714Skris mips2-sgi-irix) 39355714Skris CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'` 39455714Skris CPU=${CPU:-0} 39555714Skris if [ $CPU -ge 4000 ]; then 39655714Skris options="$options -mips2" 39755714Skris fi 39855714Skris OUT="irix-$CC" 39955714Skris ;; 40055714Skris mips3-sgi-irix) 40155714Skris CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'` 40255714Skris CPU=${CPU:-0} 40355714Skris if [ $CPU -ge 5000 ]; then 40455714Skris options="$options -mips4" 40555714Skris else 40655714Skris options="$options -mips3" 40755714Skris fi 40855714Skris OUT="irix-mips3-$CC" 40955714Skris ;; 41055714Skris mips4-sgi-irix64) 41155714Skris echo "WARNING! If you wish to build 64-bit library, then you have to" 41276866Skris echo " invoke './Configure irix64-mips4-$CC' *manually*." 41372613Skris echo " Type return if you want to continue, Ctrl-C to abort." 41455714Skris read waste < /dev/tty 41576866Skris CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'` 41676866Skris CPU=${CPU:-0} 41776866Skris if [ $CPU -ge 5000 ]; then 41876866Skris options="$options -mips4" 41976866Skris else 42076866Skris options="$options -mips3" 42176866Skris fi 42255714Skris OUT="irix-mips3-$CC" 42355714Skris ;; 42459191Skris alpha-*-linux2) 42559191Skris ISA=`awk '/cpu model/{print$4}' /proc/cpuinfo` 42659191Skris case ${ISA:-generic} in 42759191Skris *[67]) OUT="linux-alpha+bwx-$CC" ;; 42859191Skris *) OUT="linux-alpha-$CC" ;; 42959191Skris esac 43059191Skris if [ "$CC" = "gcc" ]; then 43159191Skris case ${ISA:-generic} in 43259191Skris EV5|EV45) options="$options -mcpu=ev5";; 43359191Skris EV56|PCA56) options="$options -mcpu=ev56";; 43459191Skris EV6|EV67|PCA57) options="$options -mcpu=ev6";; 43559191Skris esac 43659191Skris fi 43759191Skris ;; 43859191Skris mips-*-linux?) OUT="linux-mips" ;; 43959191Skris ppc-*-linux2) OUT="linux-ppc" ;; 44068651Skris m68k-*-linux*) OUT="linux-m68k" ;; 44159191Skris ia64-*-linux?) OUT="linux-ia64" ;; 44259191Skris ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;; 44355714Skris sparc64-*-linux2) 44455714Skris #Before we can uncomment following lines we have to wait at least 44555714Skris #till 64-bit glibc for SPARC is operational:-( 44655714Skris #echo "WARNING! If you wish to build 64-bit library, then you have to" 44755714Skris #echo " invoke './Configure linux64-sparcv9' *manually*." 44872613Skris #echo " Type return if you want to continue, Ctrl-C to abort." 44955714Skris #read waste < /dev/tty 45055714Skris OUT="linux-sparcv9" ;; 45155714Skris sparc-*-linux2) 45272613Skris KARCH=`awk '/^type/{print$3}' /proc/cpuinfo` 45355714Skris case ${KARCH:-sun4} in 45455714Skris sun4u*) OUT="linux-sparcv9" ;; 45555714Skris sun4m) OUT="linux-sparcv8" ;; 45655714Skris sun4d) OUT="linux-sparcv8" ;; 45755714Skris *) OUT="linux-sparcv7" ;; 45855714Skris esac ;; 45968651Skris arm*-*-linux2) OUT="linux-elf-arm" ;; 46072613Skris s390-*-linux2) OUT="linux-s390" ;; 46155714Skris *-*-linux2) OUT="linux-elf" ;; 46255714Skris *-*-linux1) OUT="linux-aout" ;; 46368651Skris sun4u*-*-solaris2) 46455714Skris ISA64=`(isalist) 2>/dev/null | grep sparcv9` 46555714Skris if [ "$ISA64" != "" -a "$CC" = "cc" -a $CCVER -ge 50 ]; then 46655714Skris echo "WARNING! If you wish to build 64-bit library, then you have to" 46755714Skris echo " invoke './Configure solaris64-sparcv9-cc' *manually*." 46872613Skris echo " Type return if you want to continue, Ctrl-C to abort." 46955714Skris read waste < /dev/tty 47055714Skris fi 47155714Skris OUT="solaris-sparcv9-$CC" ;; 47268651Skris sun4m-*-solaris2) OUT="solaris-sparcv8-$CC" ;; 47368651Skris sun4d-*-solaris2) OUT="solaris-sparcv8-$CC" ;; 47468651Skris sun4*-*-solaris2) OUT="solaris-sparcv7-$CC" ;; 47568651Skris *86*-*-solaris2) OUT="solaris-x86-$CC" ;; 47655714Skris *-*-sunos4) OUT="sunos-$CC" ;; 47755714Skris alpha*-*-freebsd*) OUT="FreeBSD-alpha" ;; 47855714Skris *-freebsd[3-9]*) OUT="FreeBSD-elf" ;; 47955714Skris *-freebsd[1-2]*) OUT="FreeBSD" ;; 48055714Skris *86*-*-netbsd) OUT="NetBSD-x86" ;; 48155714Skris sun3*-*-netbsd) OUT="NetBSD-m68" ;; 48255714Skris *-*-netbsd) OUT="NetBSD-sparc" ;; 48355714Skris *86*-*-openbsd) OUT="OpenBSD-x86" ;; 48455714Skris alpha*-*-openbsd) OUT="OpenBSD-alpha" ;; 48555714Skris pmax*-*-openbsd) OUT="OpenBSD-mips" ;; 48655714Skris *-*-openbsd) OUT="OpenBSD" ;; 48755714Skris *86*-*-bsdi4) OUT="bsdi-elf-gcc" ;; 48855714Skris *-*-osf) OUT="alpha-cc" ;; 48959191Skris *-*-unixware7) OUT="unixware-7" ;; 49059191Skris *-*-UnixWare7) OUT="unixware-7" ;; 49159191Skris *-*-Unixware7) OUT="unixware-7" ;; 49276866Skris *-*-unixware20*) OUT="unixware-2.0" ;; 49376866Skris *-*-unixware21*) OUT="unixware-2.1" ;; 49476866Skris *-*-UnixWare20*) OUT="unixware-2.0" ;; 49576866Skris *-*-UnixWare21*) OUT="unixware-2.1" ;; 49676866Skris *-*-Unixware20*) OUT="unixware-2.0" ;; 49776866Skris *-*-Unixware21*) OUT="unixware-2.1" ;; 49855714Skris BS2000-siemens-sysv4) OUT="BS2000-OSD" ;; 49955714Skris RM*-siemens-sysv4) OUT="ReliantUNIX" ;; 50055714Skris *-siemens-sysv4) OUT="SINIX" ;; 50159191Skris *-hpux1*) OUT="hpux-parisc-$CC" 50259191Skris options="$options -D_REENTRANT" ;; 50359191Skris *-hpux) OUT="hpux-parisc-$CC" ;; 50455714Skris # these are all covered by the catchall below 50555714Skris # *-aix) OUT="aix-$CC" ;; 50655714Skris # *-dgux) OUT="dgux" ;; 50768651Skris mips-sony-newsos4) OUT="newsos4-gcc" ;; 50855714Skris *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;; 50955714Skrisesac 51055714Skris 51159191Skris# See whether we can compile Atalla support 51259191Skrisif [ -f /usr/include/atasi.h ] 51359191Skristhen 51459191Skris options="$options -DATALLA" 51559191Skrisfi 51659191Skris 51755714Skris# gcc < 2.8 does not support -mcpu=ultrasparc 51855714Skrisif [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ] 51955714Skristhen 52055714Skris echo "WARNING! Do consider upgrading to gcc-2.8 or later." 52155714Skris sleep 5 52255714Skris OUT=solaris-sparcv9-gcc27 52355714Skrisfi 52455714Skrisif [ "$OUT" = "linux-sparcv9" -a $GCCVER -lt 28 ] 52555714Skristhen 52655714Skris echo "WARNING! Falling down to 'linux-sparcv8'." 52755714Skris echo " Upgrade to gcc-2.8 or later." 52855714Skris sleep 5 52955714Skris OUT=linux-sparcv8 53055714Skrisfi 53155714Skris 53255714Skriscase "$GUESSOS" in 53355714Skris i386-*) options="$options 386" ;; 53455714Skrisesac 53555714Skris 53655714Skrisfor i in bf cast des dh dsa hmac md2 md5 mdc2 rc2 rc4 rc5 ripemd rsa sha 53755714Skrisdo 53855714Skris if [ ! -d crypto/$i ] 53955714Skris then 54055714Skris options="$options no-$i" 54155714Skris fi 54255714Skrisdone 54355714Skris 54455714Skrisif [ -z "$OUT" ]; then 54555714Skris OUT="$CC" 54655714Skrisfi 54755714Skris 54855714Skrisif [ ".$PERL" = . ] ; then 54955714Skris for i in . `echo $PATH | sed 's/:/ /g'`; do 55055714Skris if [ -f "$i/perl5" ] ; then 55155714Skris PERL="$i/perl5" 55255714Skris break; 55355714Skris fi; 55455714Skris done 55555714Skrisfi 55655714Skris 55755714Skrisif [ ".$PERL" = . ] ; then 55855714Skris for i in . `echo $PATH | sed 's/:/ /g'`; do 55955714Skris if [ -f "$i/perl" ] ; then 56055714Skris if "$i/perl" -e 'exit($]<5.0)'; then 56155714Skris PERL="$i/perl" 56255714Skris break; 56355714Skris fi; 56455714Skris fi; 56555714Skris done 56655714Skrisfi 56755714Skris 56855714Skrisif [ ".$PERL" = . ] ; then 56955714Skris echo "You need Perl 5." 57055714Skris exit 1 57155714Skrisfi 57255714Skris 57355714Skris# run Configure to check to see if we need to specify the 57455714Skris# compiler for the platform ... in which case we add it on 57555714Skris# the end ... otherwise we leave it off 57655714Skris 57759191Skris$PERL ./Configure LIST | grep "$OUT-$CC" > /dev/null 57855714Skrisif [ $? = "0" ]; then 57955714Skris OUT="$OUT-$CC" 58055714Skrisfi 58155714Skris 58255714SkrisOUT="$PREFIX$OUT" 58355714Skris 58459191Skris$PERL ./Configure LIST | grep "$OUT" > /dev/null 58555714Skrisif [ $? = "0" ]; then 58672613Skris echo Configuring for $OUT 58755714Skris 58855714Skris if [ "$TEST" = "true" ]; then 58955714Skris echo $PERL ./Configure $OUT $options 59055714Skris else 59155714Skris $PERL ./Configure $OUT $options 59255714Skris fi 59355714Skriselse 59455714Skris echo "This system ($OUT) is not supported. See file INSTALL for details." 59555714Skrisfi 59655714Skris) 597