xref: /freebsd/crypto/openssl/config (revision 74664626283603849f4acbd49e8c8288c08cff4d)
174664626SKris Kennaway#!/bin/sh
274664626SKris Kennaway#
374664626SKris Kennaway# OpenSSL config: determine the operating system and run ./Configure
474664626SKris Kennaway#
574664626SKris Kennaway# "config -h" for usage information.
674664626SKris Kennaway#
774664626SKris Kennaway#          this is a merge of minarch and GuessOS from the Apache Group.
874664626SKris Kennaway#          Originally written by Tim Hudson <tjh@cryptsoft.com>.
974664626SKris Kennaway
1074664626SKris Kennaway# Original Apache Group comments on GuessOS
1174664626SKris Kennaway
1274664626SKris Kennaway# Simple OS/Platform guesser. Similar to config.guess but
1374664626SKris Kennaway# much, much smaller. Since it was developed for use with
1474664626SKris Kennaway# Apache, it follows under Apache's regular licensing
1574664626SKris Kennaway# with one specific addition: Any changes or additions
1674664626SKris Kennaway# to this script should be Emailed to the Apache
1774664626SKris Kennaway# group (apache@apache.org) in general and to
1874664626SKris Kennaway# Jim Jagielski (jim@jaguNET.com) in specific.
1974664626SKris Kennaway#
2074664626SKris Kennaway# Be as similar to the output of config.guess/config.sub
2174664626SKris Kennaway# as possible.
2274664626SKris Kennaway
2374664626SKris Kennaway# First get uname entries that we use below
2474664626SKris Kennaway
2574664626SKris KennawayMACHINE=`(uname -m) 2>/dev/null` || MACHINE="unknown"
2674664626SKris KennawayRELEASE=`(uname -r) 2>/dev/null` || RELEASE="unknown"
2774664626SKris KennawaySYSTEM=`(uname -s) 2>/dev/null`  || SYSTEM="unknown"
2874664626SKris KennawayVERSION=`(uname -v) 2>/dev/null` || VERSION="unknown"
2974664626SKris Kennaway
3074664626SKris Kennaway# Now test for ISC and SCO, since it is has a braindamaged uname.
3174664626SKris Kennaway#
3274664626SKris Kennaway# We need to work around FreeBSD 1.1.5.1
3374664626SKris Kennaway(
3474664626SKris KennawayXREL=`uname -X 2>/dev/null | grep "^Release" | awk '{print $3}'`
3574664626SKris Kennawayif [ "x$XREL" != "x" ]; then
3674664626SKris Kennaway    if [ -f /etc/kconfig ]; then
3774664626SKris Kennaway	case "$XREL" in
3874664626SKris Kennaway	    4.0|4.1)
3974664626SKris Kennaway		    echo "${MACHINE}-whatever-isc4"; exit 0
4074664626SKris Kennaway		;;
4174664626SKris Kennaway	esac
4274664626SKris Kennaway    else
4374664626SKris Kennaway	case "$XREL" in
4474664626SKris Kennaway	    3.2v4.2)
4574664626SKris Kennaway		echo "whatever-whatever-sco3"; exit 0
4674664626SKris Kennaway		;;
4774664626SKris Kennaway	    3.2v5.0*)
4874664626SKris Kennaway		echo "whatever-whatever-sco5"; exit 0
4974664626SKris Kennaway		;;
5074664626SKris Kennaway	    4.2MP)
5174664626SKris Kennaway		if [ "x$VERSION" = "x2.1.1" ]; then
5274664626SKris Kennaway		    echo "${MACHINE}-whatever-unixware211"; exit 0
5374664626SKris Kennaway		else
5474664626SKris Kennaway		    echo "${MACHINE}-whatever-unixware2"; exit 0
5574664626SKris Kennaway		fi
5674664626SKris Kennaway		;;
5774664626SKris Kennaway	    4.2)
5874664626SKris Kennaway		echo "whatever-whatever-unixware1"; exit 0
5974664626SKris Kennaway		;;
6074664626SKris Kennaway	esac
6174664626SKris Kennaway    fi
6274664626SKris Kennawayfi
6374664626SKris Kennaway# Now we simply scan though... In most cases, the SYSTEM info is enough
6474664626SKris Kennaway#
6574664626SKris Kennawaycase "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
6674664626SKris Kennaway    A/UX:*)
6774664626SKris Kennaway	echo "m68k-apple-aux3"; exit 0
6874664626SKris Kennaway	;;
6974664626SKris Kennaway
7074664626SKris Kennaway    AIX:*)
7174664626SKris Kennaway	echo "${MACHINE}-ibm-aix"; exit 0
7274664626SKris Kennaway	;;
7374664626SKris Kennaway
7474664626SKris Kennaway    dgux:*)
7574664626SKris Kennaway	echo "${MACHINE}-dg-dgux"; exit 0
7674664626SKris Kennaway	;;
7774664626SKris Kennaway
7874664626SKris Kennaway    HI-UX:*)
7974664626SKris Kennaway	echo "${MACHINE}-hi-hiux"; exit 0
8074664626SKris Kennaway	;;
8174664626SKris Kennaway
8274664626SKris Kennaway    HP-UX:*)
8374664626SKris Kennaway	HPUXVER=`echo ${RELEASE}|sed -e 's/[^.]*.[0B]*//'`
8474664626SKris Kennaway	case "$HPUXVER" in
8574664626SKris Kennaway	    11.*)
8674664626SKris Kennaway		echo "${MACHINE}-hp-hpux11"; exit 0
8774664626SKris Kennaway		;;
8874664626SKris Kennaway	    10.*)
8974664626SKris Kennaway		echo "${MACHINE}-hp-hpux10"; exit 0
9074664626SKris Kennaway		;;
9174664626SKris Kennaway	    *)
9274664626SKris Kennaway		echo "${MACHINE}-hp-hpux"; exit 0
9374664626SKris Kennaway		;;
9474664626SKris Kennaway	esac
9574664626SKris Kennaway	;;
9674664626SKris Kennaway
9774664626SKris Kennaway    IRIX:5.*)
9874664626SKris Kennaway	echo "mips2-sgi-irix"; exit 0
9974664626SKris Kennaway	;;
10074664626SKris Kennaway
10174664626SKris Kennaway    IRIX:6.*)
10274664626SKris Kennaway	echo "mips3-sgi-irix"; exit 0
10374664626SKris Kennaway	;;
10474664626SKris Kennaway
10574664626SKris Kennaway    IRIX64:*)
10674664626SKris Kennaway	echo "mips4-sgi-irix64"; exit 0
10774664626SKris Kennaway	;;
10874664626SKris Kennaway
10974664626SKris Kennaway    Linux:[2-9].*)
11074664626SKris Kennaway	echo "${MACHINE}-whatever-linux2"; exit 0
11174664626SKris Kennaway	;;
11274664626SKris Kennaway
11374664626SKris Kennaway    Linux:1.*)
11474664626SKris Kennaway	echo "${MACHINE}-whatever-linux1"; exit 0
11574664626SKris Kennaway	;;
11674664626SKris Kennaway
11774664626SKris Kennaway    LynxOS:*)
11874664626SKris Kennaway	echo "${MACHINE}-lynx-lynxos"; exit 0
11974664626SKris Kennaway	;;
12074664626SKris Kennaway
12174664626SKris Kennaway    BSD/OS:4.*)  # BSD/OS always says 386
12274664626SKris Kennaway	echo "i486-whatever-bsdi4"; exit 0
12374664626SKris Kennaway	;;
12474664626SKris Kennaway
12574664626SKris Kennaway    BSD/386:*:*:*486*|BSD/OS:*:*:*:*486*)
12674664626SKris Kennaway        case `/sbin/sysctl -n hw.model` in
12774664626SKris Kennaway	    Pentium*)
12874664626SKris Kennaway                echo "i586-whatever-bsdi"; exit 0
12974664626SKris Kennaway                ;;
13074664626SKris Kennaway            *)
13174664626SKris Kennaway                echo "i386-whatever-bsdi"; exit 0
13274664626SKris Kennaway                ;;
13374664626SKris Kennaway            esac;
13474664626SKris Kennaway	;;
13574664626SKris Kennaway
13674664626SKris Kennaway    BSD/386:*|BSD/OS:*)
13774664626SKris Kennaway	echo "${MACHINE}-whatever-bsdi"; exit 0
13874664626SKris Kennaway	;;
13974664626SKris Kennaway
14074664626SKris Kennaway    FreeBSD:*)
14174664626SKris Kennaway        VERS=`echo ${RELEASE} | sed -e 's/[-(].*//'`
14274664626SKris Kennaway        MACH=`sysctl -n hw.model`
14374664626SKris Kennaway        ARCH='whatever'
14474664626SKris Kennaway        case ${MACH} in
14574664626SKris Kennaway           *386*       ) MACH="i386"     ;;
14674664626SKris Kennaway           *486*       ) MACH="i486"     ;;
14774664626SKris Kennaway           Pentium\ II*) MACH="i686"     ;;
14874664626SKris Kennaway           Pentium*    ) MACH="i586"     ;;
14974664626SKris Kennaway           Alpha*      ) MACH="alpha"    ;;
15074664626SKris Kennaway           *           ) MACH="$MACHINE" ;;
15174664626SKris Kennaway        esac
15274664626SKris Kennaway        case ${MACH} in
15374664626SKris Kennaway           i[0-9]86 ) ARCH="pc" ;;
15474664626SKris Kennaway        esac
15574664626SKris Kennaway        echo "${MACH}-${ARCH}-freebsd${VERS}"; exit 0
15674664626SKris Kennaway        ;;
15774664626SKris Kennaway
15874664626SKris Kennaway    NetBSD:*:*:*386*)
15974664626SKris Kennaway        echo "`sysctl -n hw.model | sed 's,.*\(.\)86-class.*,i\186,'`-whateve\r-netbsd"; exit 0
16074664626SKris Kennaway	;;
16174664626SKris Kennaway
16274664626SKris Kennaway    NetBSD:*)
16374664626SKris Kennaway	echo "${MACHINE}-whatever-netbsd"; exit 0
16474664626SKris Kennaway	;;
16574664626SKris Kennaway
16674664626SKris Kennaway    OpenBSD:*)
16774664626SKris Kennaway	echo "${MACHINE}-whatever-openbsd"; exit 0
16874664626SKris Kennaway	;;
16974664626SKris Kennaway
17074664626SKris Kennaway    OSF1:*:*:*alpha*)
17174664626SKris Kennaway	echo "${MACHINE}-dec-osf"; exit 0
17274664626SKris Kennaway	;;
17374664626SKris Kennaway
17474664626SKris Kennaway    QNX:*)
17574664626SKris Kennaway	case "$VERSION" in
17674664626SKris Kennaway	    423)
17774664626SKris Kennaway		echo "${MACHINE}-qssl-qnx32"
17874664626SKris Kennaway		;;
17974664626SKris Kennaway	    *)
18074664626SKris Kennaway		echo "${MACHINE}-qssl-qnx"
18174664626SKris Kennaway		;;
18274664626SKris Kennaway	esac
18374664626SKris Kennaway	exit 0
18474664626SKris Kennaway	;;
18574664626SKris Kennaway
18674664626SKris Kennaway    Paragon*:*:*:*)
18774664626SKris Kennaway	echo "i860-intel-osf1"; exit 0
18874664626SKris Kennaway	;;
18974664626SKris Kennaway
19074664626SKris Kennaway    SunOS:5.*)
19174664626SKris Kennaway	echo "${MACHINE}-sun-solaris2"; exit 0
19274664626SKris Kennaway	;;
19374664626SKris Kennaway
19474664626SKris Kennaway    SunOS:*)
19574664626SKris Kennaway	echo "${MACHINE}-sun-sunos4"; exit 0
19674664626SKris Kennaway	;;
19774664626SKris Kennaway
19874664626SKris Kennaway    UNIX_System_V:4.*:*)
19974664626SKris Kennaway	echo "${MACHINE}-whatever-sysv4"; exit 0
20074664626SKris Kennaway	;;
20174664626SKris Kennaway
20274664626SKris Kennaway    *:4*:R4*:m88k)
20374664626SKris Kennaway	echo "${MACHINE}-whatever-sysv4"; exit 0
20474664626SKris Kennaway	;;
20574664626SKris Kennaway
20674664626SKris Kennaway    DYNIX/ptx:4*:*)
20774664626SKris Kennaway	echo "${MACHINE}-whatever-sysv4"; exit 0
20874664626SKris Kennaway	;;
20974664626SKris Kennaway
21074664626SKris Kennaway    *:4.0:3.0:3[34]?? | *:4.0:3.0:3[34]??,*)
21174664626SKris Kennaway	echo "i486-ncr-sysv4"; exit 0
21274664626SKris Kennaway	;;
21374664626SKris Kennaway
21474664626SKris Kennaway    ULTRIX:*)
21574664626SKris Kennaway	echo "${MACHINE}-unknown-ultrix"; exit 0
21674664626SKris Kennaway	;;
21774664626SKris Kennaway
21874664626SKris Kennaway    SINIX*|ReliantUNIX*)
21974664626SKris Kennaway	echo "${MACHINE}-siemens-sysv4"; exit 0
22074664626SKris Kennaway	;;
22174664626SKris Kennaway
22274664626SKris Kennaway    POSIX-BC*)
22374664626SKris Kennaway	echo "${MACHINE}-siemens-sysv4"; exit 0   # Here, $MACHINE == "BS2000"
22474664626SKris Kennaway	;;
22574664626SKris Kennaway
22674664626SKris Kennaway    machten:*)
22774664626SKris Kennaway       echo "${MACHINE}-tenon-${SYSTEM}"; exit 0;
22874664626SKris Kennaway       ;;
22974664626SKris Kennaway
23074664626SKris Kennaway    library:*)
23174664626SKris Kennaway	echo "${MACHINE}-ncr-sysv4"; exit 0
23274664626SKris Kennaway	;;
23374664626SKris Kennaway
23474664626SKris Kennaway    ConvexOS:*:11.0:*)
23574664626SKris Kennaway	echo "${MACHINE}-v11-${SYSTEM}"; exit 0;
23674664626SKris Kennaway	;;
23774664626SKris Kennaway
23874664626SKris Kennawayesac
23974664626SKris Kennaway
24074664626SKris Kennaway#
24174664626SKris Kennaway# Ugg. These are all we can determine by what we know about
24274664626SKris Kennaway# the output of uname. Be more creative:
24374664626SKris Kennaway#
24474664626SKris Kennaway
24574664626SKris Kennaway# Do the Apollo stuff first. Here, we just simply assume
24674664626SKris Kennaway# that the existance of the /usr/apollo directory is proof
24774664626SKris Kennaway# enough
24874664626SKris Kennawayif [ -d /usr/apollo ]; then
24974664626SKris Kennaway    echo "whatever-apollo-whatever"
25074664626SKris Kennaway    exit 0
25174664626SKris Kennawayfi
25274664626SKris Kennaway
25374664626SKris Kennaway# Now NeXT
25474664626SKris KennawayISNEXT=`hostinfo 2>/dev/null`
25574664626SKris Kennawaycase "$ISNEXT" in
25674664626SKris Kennaway    *'NeXT Mach 3.3'*)
25774664626SKris Kennaway	echo "whatever-next-nextstep3.3"; exit 0
25874664626SKris Kennaway	;;
25974664626SKris Kennaway    *NeXT*)
26074664626SKris Kennaway	echo "whatever-next-nextstep"; exit 0
26174664626SKris Kennaway	;;
26274664626SKris Kennawayesac
26374664626SKris Kennaway
26474664626SKris Kennaway# At this point we gone through all the one's
26574664626SKris Kennaway# we know of: Punt
26674664626SKris Kennaway
26774664626SKris Kennawayecho "${MACHINE}-whatever-${SYSTEM}"
26874664626SKris Kennawayexit 0
26974664626SKris Kennaway) 2>/dev/null | (
27074664626SKris Kennaway
27174664626SKris Kennaway# ---------------------------------------------------------------------------
27274664626SKris Kennaway# this is where the translation occurs into SSLeay terms
27374664626SKris Kennaway# ---------------------------------------------------------------------------
27474664626SKris Kennaway
27574664626SKris KennawayPREFIX=""
27674664626SKris KennawaySUFFIX=""
27774664626SKris KennawayTEST="false"
27874664626SKris Kennaway
27974664626SKris Kennaway# pick up any command line args to config
28074664626SKris Kennawayfor i
28174664626SKris Kennawaydo
28274664626SKris Kennawaycase "$i" in
28374664626SKris Kennaway-d*) PREFIX="debug-";;
28474664626SKris Kennaway-t*) TEST="true";;
28574664626SKris Kennaway-h*) TEST="true"; cat <<EOF
28674664626SKris KennawayUsage: config [options]
28774664626SKris Kennaway -d	Add a debug- prefix to machine choice.
28874664626SKris Kennaway -t	Test mode, do not run the Configure perl script.
28974664626SKris Kennaway -h	This help.
29074664626SKris Kennaway
29174664626SKris KennawayAny other text will be passed to the Configure perl script.
29274664626SKris KennawaySee INSTALL for instructions.
29374664626SKris Kennaway
29474664626SKris KennawayEOF
29574664626SKris Kennaway;;
29674664626SKris Kennaway*) options=$options" $i" ;;
29774664626SKris Kennawayesac
29874664626SKris Kennawaydone
29974664626SKris Kennaway
30074664626SKris Kennaway# figure out if gcc is available and if so we use it otherwise
30174664626SKris Kennaway# we fallback to whatever cc does on the system
30274664626SKris KennawayGCCVER=`(gcc --version) 2>/dev/null`
30374664626SKris Kennawayif [ "$GCCVER" != "" ]; then
30474664626SKris Kennaway  CC=gcc
30574664626SKris Kennaway  # then strip off whatever prefix Cygnus prepends the number with...
30674664626SKris Kennaway  GCCVER=`echo $GCCVER | sed 's/^[a-z]*\-//'`
30774664626SKris Kennaway  # peak single digit before and after first dot, e.g. 2.95.1 gives 29
30874664626SKris Kennaway  GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'`
30974664626SKris Kennawayelse
31074664626SKris Kennaway  CC=cc
31174664626SKris Kennawayfi
31274664626SKris Kennaway
31374664626SKris Kennawayif [ "$SYSTEM" = "SunOS" ]; then
31474664626SKris Kennaway  # assume output is "blah-blah C x.x"
31574664626SKris Kennaway  CCVER=`(cc -V 2>&1) 2>/dev/null | \
31674664626SKris Kennaway  	egrep -e '^cc: .* C [0-9]\.[0-9]' | \
31774664626SKris Kennaway	sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'`
31874664626SKris Kennaway  CCVER=${CCVER:-0}
31974664626SKris Kennaway  if [ $CCVER -gt 40 ]; then
32074664626SKris Kennaway    CC=cc	# overrides gcc!!!
32174664626SKris Kennaway    if [ $CCVER -eq 50 ]; then
32274664626SKris Kennaway      echo "WARNING! Detected WorkShop C 5.0. Do make sure you have"
32374664626SKris Kennaway      echo "         patch #107357-01 or later applied."
32474664626SKris Kennaway      sleep 5
32574664626SKris Kennaway    fi
32674664626SKris Kennaway  elif [ "$CC" = "cc" -a $CCVER -gt 0 ]; then
32774664626SKris Kennaway    CC=sc3
32874664626SKris Kennaway  fi
32974664626SKris Kennawayfi
33074664626SKris Kennaway
33174664626SKris KennawayGCCVER=${GCCVER:-0}
33274664626SKris KennawayCCVER=${CCVER:-0}
33374664626SKris Kennaway
33474664626SKris Kennaway# read the output of the embedded GuessOS
33574664626SKris Kennawayread GUESSOS
33674664626SKris Kennaway
33774664626SKris Kennawayecho Operating system: $GUESSOS
33874664626SKris Kennaway
33974664626SKris Kennaway# now map the output into SSLeay terms ... really should hack into the
34074664626SKris Kennaway# script above so we end up with values in vars but that would take
34174664626SKris Kennaway# more time that I want to waste at the moment
34274664626SKris Kennawaycase "$GUESSOS" in
34374664626SKris Kennaway  alpha-*-linux2) OUT="alpha-gcc" ;;
34474664626SKris Kennaway  ppc-*-linux2) OUT="linux-ppc" ;;
34574664626SKris Kennaway  mips-*-linux?) OUT="linux-mips" ;;
34674664626SKris Kennaway  mips2-sgi-irix)
34774664626SKris Kennaway	CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
34874664626SKris Kennaway	CPU=${CPU:-0}
34974664626SKris Kennaway	if [ $CPU -ge 4000 ]; then
35074664626SKris Kennaway		options="$options -mips2"
35174664626SKris Kennaway	fi
35274664626SKris Kennaway	OUT="irix-$CC"
35374664626SKris Kennaway	;;
35474664626SKris Kennaway  mips3-sgi-irix)
35574664626SKris Kennaway	CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
35674664626SKris Kennaway	CPU=${CPU:-0}
35774664626SKris Kennaway	if [ $CPU -ge 5000 ]; then
35874664626SKris Kennaway		options="$options -mips4"
35974664626SKris Kennaway	else
36074664626SKris Kennaway		options="$options -mips3"
36174664626SKris Kennaway	fi
36274664626SKris Kennaway	OUT="irix-mips3-$CC"
36374664626SKris Kennaway	;;
36474664626SKris Kennaway  mips4-sgi-irix64)
36574664626SKris Kennaway	echo "WARNING! If you wish to build 64-bit library, then you have to"
36674664626SKris Kennaway	echo "         invoke './Configre irix64-mips4-$CC' *manually*."
36774664626SKris Kennaway	echo "         Type Ctrl-C if you don't want to continue."
36874664626SKris Kennaway	read waste < /dev/tty
36974664626SKris Kennaway	options="$options -mips4"
37074664626SKris Kennaway	OUT="irix-mips3-$CC"
37174664626SKris Kennaway	;;
37274664626SKris Kennaway  sparc64-*-linux2)
37374664626SKris Kennaway	#Before we can uncomment following lines we have to wait at least
37474664626SKris Kennaway	#till 64-bit glibc for SPARC is operational:-(
37574664626SKris Kennaway	#echo "WARNING! If you wish to build 64-bit library, then you have to"
37674664626SKris Kennaway	#echo "         invoke './Configure linux64-sparcv9' *manually*."
37774664626SKris Kennaway	#echo "         Type Ctrl-C if you don't want to continue."
37874664626SKris Kennaway	#read waste < /dev/tty
37974664626SKris Kennaway	OUT="linux-sparcv9" ;;
38074664626SKris Kennaway  sparc-*-linux2)
38174664626SKris Kennaway	KARCH=`awk '/type/{print$3}' /proc/cpuinfo`
38274664626SKris Kennaway	case ${KARCH:-sun4} in
38374664626SKris Kennaway	sun4u*)	OUT="linux-sparcv9" ;;
38474664626SKris Kennaway	sun4m)	OUT="linux-sparcv8" ;;
38574664626SKris Kennaway	sun4d)	OUT="linux-sparcv8" ;;
38674664626SKris Kennaway	*)	OUT="linux-sparcv7" ;;
38774664626SKris Kennaway	esac ;;
38874664626SKris Kennaway  *-*-linux2) OUT="linux-elf" ;;
38974664626SKris Kennaway  *-*-linux1) OUT="linux-aout" ;;
39074664626SKris Kennaway  sun4u*-sun-solaris2)
39174664626SKris Kennaway	ISA64=`(isalist) 2>/dev/null | grep sparcv9`
39274664626SKris Kennaway	if [ "$ISA64" != "" -a "$CC" = "cc" -a $CCVER -ge 50 ]; then
39374664626SKris Kennaway		echo "WARNING! If you wish to build 64-bit library, then you have to"
39474664626SKris Kennaway		echo "         invoke './Configure solaris64-sparcv9-cc' *manually*."
39574664626SKris Kennaway		echo "         Type Ctrl-C if you don't want to continue."
39674664626SKris Kennaway		read waste < /dev/tty
39774664626SKris Kennaway	fi
39874664626SKris Kennaway	OUT="solaris-sparcv9-$CC" ;;
39974664626SKris Kennaway  sun4m-sun-solaris2)	OUT="solaris-sparcv8-$CC" ;;
40074664626SKris Kennaway  sun4d-sun-solaris2)	OUT="solaris-sparcv8-$CC" ;;
40174664626SKris Kennaway  sun4*-sun-solaris2)	OUT="solaris-sparcv7-$CC" ;;
40274664626SKris Kennaway  *86*-sun-solaris2) OUT="solaris-x86-$CC" ;;
40374664626SKris Kennaway  *-*-sunos4) OUT="sunos-$CC" ;;
40474664626SKris Kennaway  alpha*-*-freebsd*) OUT="FreeBSD-alpha" ;;
40574664626SKris Kennaway  *-freebsd[3-9]*) OUT="FreeBSD-elf" ;;
40674664626SKris Kennaway  *-freebsd[1-2]*) OUT="FreeBSD" ;;
40774664626SKris Kennaway  *86*-*-netbsd) OUT="NetBSD-x86" ;;
40874664626SKris Kennaway  sun3*-*-netbsd) OUT="NetBSD-m68" ;;
40974664626SKris Kennaway  *-*-netbsd) OUT="NetBSD-sparc" ;;
41074664626SKris Kennaway  *86*-*-openbsd) OUT="OpenBSD-x86" ;;
41174664626SKris Kennaway  alpha*-*-openbsd) OUT="OpenBSD-alpha" ;;
41274664626SKris Kennaway  pmax*-*-openbsd) OUT="OpenBSD-mips" ;;
41374664626SKris Kennaway  *-*-openbsd) OUT="OpenBSD" ;;
41474664626SKris Kennaway  *86*-*-bsdi4) OUT="bsdi-elf-gcc" ;;
41574664626SKris Kennaway  *-*-osf) OUT="alpha-cc" ;;
41674664626SKris Kennaway  *-*-unixware*) OUT="unixware-2.0" ;;
41774664626SKris Kennaway  BS2000-siemens-sysv4) OUT="BS2000-OSD" ;;
41874664626SKris Kennaway  RM*-siemens-sysv4) OUT="ReliantUNIX" ;;
41974664626SKris Kennaway  *-siemens-sysv4) OUT="SINIX" ;;
42074664626SKris Kennaway  # these are all covered by the catchall below
42174664626SKris Kennaway  # *-hpux*) OUT="hpux-$CC" ;;
42274664626SKris Kennaway  # *-aix) OUT="aix-$CC" ;;
42374664626SKris Kennaway  # *-dgux) OUT="dgux" ;;
42474664626SKris Kennaway  *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
42574664626SKris Kennawayesac
42674664626SKris Kennaway
42774664626SKris Kennaway# gcc < 2.8 does not support -mcpu=ultrasparc
42874664626SKris Kennawayif [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ]
42974664626SKris Kennawaythen
43074664626SKris Kennaway  echo "WARNING! Do consider upgrading to gcc-2.8 or later."
43174664626SKris Kennaway  sleep 5
43274664626SKris Kennaway  OUT=solaris-sparcv9-gcc27
43374664626SKris Kennawayfi
43474664626SKris Kennawayif [ "$OUT" = "linux-sparcv9" -a $GCCVER -lt 28 ]
43574664626SKris Kennawaythen
43674664626SKris Kennaway  echo "WARNING! Falling down to 'linux-sparcv8'."
43774664626SKris Kennaway  echo "         Upgrade to gcc-2.8 or later."
43874664626SKris Kennaway  sleep 5
43974664626SKris Kennaway  OUT=linux-sparcv8
44074664626SKris Kennawayfi
44174664626SKris Kennaway
44274664626SKris Kennawaycase "$GUESSOS" in
44374664626SKris Kennaway  i386-*) options="$options 386" ;;
44474664626SKris Kennawayesac
44574664626SKris Kennaway
44674664626SKris Kennawayfor i in bf cast des dh dsa hmac md2 md5 mdc2 rc2 rc4 rc5 ripemd rsa sha
44774664626SKris Kennawaydo
44874664626SKris Kennaway  if [ ! -d crypto/$i ]
44974664626SKris Kennaway  then
45074664626SKris Kennaway    options="$options no-$i"
45174664626SKris Kennaway  fi
45274664626SKris Kennawaydone
45374664626SKris Kennaway
45474664626SKris Kennawayif [ -z "$OUT" ]; then
45574664626SKris Kennaway  OUT="$CC"
45674664626SKris Kennawayfi
45774664626SKris Kennaway
45874664626SKris Kennawayif [ ".$PERL" = . ] ; then
45974664626SKris Kennaway	for i in . `echo $PATH | sed 's/:/ /g'`; do
46074664626SKris Kennaway		if [ -f "$i/perl5" ] ; then
46174664626SKris Kennaway			PERL="$i/perl5"
46274664626SKris Kennaway			break;
46374664626SKris Kennaway		fi;
46474664626SKris Kennaway	done
46574664626SKris Kennawayfi
46674664626SKris Kennaway
46774664626SKris Kennawayif [ ".$PERL" = . ] ; then
46874664626SKris Kennaway	for i in . `echo $PATH | sed 's/:/ /g'`; do
46974664626SKris Kennaway		if [ -f "$i/perl" ] ; then
47074664626SKris Kennaway			if "$i/perl" -e 'exit($]<5.0)'; then
47174664626SKris Kennaway				PERL="$i/perl"
47274664626SKris Kennaway				break;
47374664626SKris Kennaway			fi;
47474664626SKris Kennaway		fi;
47574664626SKris Kennaway	done
47674664626SKris Kennawayfi
47774664626SKris Kennaway
47874664626SKris Kennawayif [ ".$PERL" = . ] ; then
47974664626SKris Kennaway	echo "You need Perl 5."
48074664626SKris Kennaway	exit 1
48174664626SKris Kennawayfi
48274664626SKris Kennaway
48374664626SKris Kennaway# run Configure to check to see if we need to specify the
48474664626SKris Kennaway# compiler for the platform ... in which case we add it on
48574664626SKris Kennaway# the end ... otherwise we leave it off
48674664626SKris Kennaway
48774664626SKris Kennaway$PERL ./Configure 2>&1 | grep "$OUT-$CC" > /dev/null
48874664626SKris Kennawayif [ $? = "0" ]; then
48974664626SKris Kennaway  OUT="$OUT-$CC"
49074664626SKris Kennawayfi
49174664626SKris Kennaway
49274664626SKris KennawayOUT="$PREFIX$OUT"
49374664626SKris Kennaway
49474664626SKris Kennaway$PERL ./Configure 2>&1 | grep "$OUT" > /dev/null
49574664626SKris Kennawayif [ $? = "0" ]; then
49674664626SKris Kennaway  echo Configuring for $OUT
49774664626SKris Kennaway
49874664626SKris Kennaway  if [ "$TEST" = "true" ]; then
49974664626SKris Kennaway    echo $PERL ./Configure $OUT $options
50074664626SKris Kennaway  else
50174664626SKris Kennaway    $PERL ./Configure $OUT $options
50274664626SKris Kennaway  fi
50374664626SKris Kennawayelse
50474664626SKris Kennaway  echo "This system ($OUT) is not supported. See file INSTALL for details."
50574664626SKris Kennawayfi
50674664626SKris Kennaway)
507