config.sub revision 2c7c4e3d
12c7c4e3dSmrg#! /bin/sh
22c7c4e3dSmrg# Configuration validation subroutine script.
32c7c4e3dSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
42c7c4e3dSmrg#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
52c7c4e3dSmrg
62c7c4e3dSmrgtimestamp='2003-06-18'
72c7c4e3dSmrg
82c7c4e3dSmrg# This file is (in principle) common to ALL GNU software.
92c7c4e3dSmrg# The presence of a machine in this file suggests that SOME GNU software
102c7c4e3dSmrg# can handle that machine.  It does not imply ALL GNU software can.
112c7c4e3dSmrg#
122c7c4e3dSmrg# This file is free software; you can redistribute it and/or modify
132c7c4e3dSmrg# it under the terms of the GNU General Public License as published by
142c7c4e3dSmrg# the Free Software Foundation; either version 2 of the License, or
152c7c4e3dSmrg# (at your option) any later version.
162c7c4e3dSmrg#
172c7c4e3dSmrg# This program is distributed in the hope that it will be useful,
182c7c4e3dSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
192c7c4e3dSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
202c7c4e3dSmrg# GNU General Public License for more details.
212c7c4e3dSmrg#
222c7c4e3dSmrg# You should have received a copy of the GNU General Public License
232c7c4e3dSmrg# along with this program; if not, write to the Free Software
242c7c4e3dSmrg# Foundation, Inc., 59 Temple Place - Suite 330,
252c7c4e3dSmrg# Boston, MA 02111-1307, USA.
262c7c4e3dSmrg
272c7c4e3dSmrg# As a special exception to the GNU General Public License, if you
282c7c4e3dSmrg# distribute this file as part of a program that contains a
292c7c4e3dSmrg# configuration script generated by Autoconf, you may include it under
302c7c4e3dSmrg# the same distribution terms that you use for the rest of that program.
312c7c4e3dSmrg
322c7c4e3dSmrg# Please send patches to <config-patches@gnu.org>.  Submit a context
332c7c4e3dSmrg# diff and a properly formatted ChangeLog entry.
342c7c4e3dSmrg#
352c7c4e3dSmrg# Configuration subroutine to validate and canonicalize a configuration type.
362c7c4e3dSmrg# Supply the specified configuration type as an argument.
372c7c4e3dSmrg# If it is invalid, we print an error message on stderr and exit with code 1.
382c7c4e3dSmrg# Otherwise, we print the canonical config type on stdout and succeed.
392c7c4e3dSmrg
402c7c4e3dSmrg# This file is supposed to be the same for all GNU packages
412c7c4e3dSmrg# and recognize all the CPU types, system types and aliases
422c7c4e3dSmrg# that are meaningful with *any* GNU software.
432c7c4e3dSmrg# Each package is responsible for reporting which valid configurations
442c7c4e3dSmrg# it does not support.  The user should be able to distinguish
452c7c4e3dSmrg# a failure to support a valid configuration from a meaningless
462c7c4e3dSmrg# configuration.
472c7c4e3dSmrg
482c7c4e3dSmrg# The goal of this file is to map all the various variations of a given
492c7c4e3dSmrg# machine specification into a single specification in the form:
502c7c4e3dSmrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
512c7c4e3dSmrg# or in some cases, the newer four-part form:
522c7c4e3dSmrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
532c7c4e3dSmrg# It is wrong to echo any other type of specification.
542c7c4e3dSmrg
552c7c4e3dSmrgme=`echo "$0" | sed -e 's,.*/,,'`
562c7c4e3dSmrg
572c7c4e3dSmrgusage="\
582c7c4e3dSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
592c7c4e3dSmrg       $0 [OPTION] ALIAS
602c7c4e3dSmrg
612c7c4e3dSmrgCanonicalize a configuration name.
622c7c4e3dSmrg
632c7c4e3dSmrgOperation modes:
642c7c4e3dSmrg  -h, --help         print this help, then exit
652c7c4e3dSmrg  -t, --time-stamp   print date of last modification, then exit
662c7c4e3dSmrg  -v, --version      print version number, then exit
672c7c4e3dSmrg
682c7c4e3dSmrgReport bugs and patches to <config-patches@gnu.org>."
692c7c4e3dSmrg
702c7c4e3dSmrgversion="\
712c7c4e3dSmrgGNU config.sub ($timestamp)
722c7c4e3dSmrg
732c7c4e3dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
742c7c4e3dSmrgFree Software Foundation, Inc.
752c7c4e3dSmrg
762c7c4e3dSmrgThis is free software; see the source for copying conditions.  There is NO
772c7c4e3dSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
782c7c4e3dSmrg
792c7c4e3dSmrghelp="
802c7c4e3dSmrgTry \`$me --help' for more information."
812c7c4e3dSmrg
822c7c4e3dSmrg# Parse command line
832c7c4e3dSmrgwhile test $# -gt 0 ; do
842c7c4e3dSmrg  case $1 in
852c7c4e3dSmrg    --time-stamp | --time* | -t )
862c7c4e3dSmrg       echo "$timestamp" ; exit 0 ;;
872c7c4e3dSmrg    --version | -v )
882c7c4e3dSmrg       echo "$version" ; exit 0 ;;
892c7c4e3dSmrg    --help | --h* | -h )
902c7c4e3dSmrg       echo "$usage"; exit 0 ;;
912c7c4e3dSmrg    -- )     # Stop option processing
922c7c4e3dSmrg       shift; break ;;
932c7c4e3dSmrg    - )	# Use stdin as input.
942c7c4e3dSmrg       break ;;
952c7c4e3dSmrg    -* )
962c7c4e3dSmrg       echo "$me: invalid option $1$help"
972c7c4e3dSmrg       exit 1 ;;
982c7c4e3dSmrg
992c7c4e3dSmrg    *local*)
1002c7c4e3dSmrg       # First pass through any local machine types.
1012c7c4e3dSmrg       echo $1
1022c7c4e3dSmrg       exit 0;;
1032c7c4e3dSmrg
1042c7c4e3dSmrg    * )
1052c7c4e3dSmrg       break ;;
1062c7c4e3dSmrg  esac
1072c7c4e3dSmrgdone
1082c7c4e3dSmrg
1092c7c4e3dSmrgcase $# in
1102c7c4e3dSmrg 0) echo "$me: missing argument$help" >&2
1112c7c4e3dSmrg    exit 1;;
1122c7c4e3dSmrg 1) ;;
1132c7c4e3dSmrg *) echo "$me: too many arguments$help" >&2
1142c7c4e3dSmrg    exit 1;;
1152c7c4e3dSmrgesac
1162c7c4e3dSmrg
1172c7c4e3dSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
1182c7c4e3dSmrg# Here we must recognize all the valid KERNEL-OS combinations.
1192c7c4e3dSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
1202c7c4e3dSmrgcase $maybe_os in
1212c7c4e3dSmrg  nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
1222c7c4e3dSmrg    os=-$maybe_os
1232c7c4e3dSmrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1242c7c4e3dSmrg    ;;
1252c7c4e3dSmrg  *)
1262c7c4e3dSmrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
1272c7c4e3dSmrg    if [ $basic_machine != $1 ]
1282c7c4e3dSmrg    then os=`echo $1 | sed 's/.*-/-/'`
1292c7c4e3dSmrg    else os=; fi
1302c7c4e3dSmrg    ;;
1312c7c4e3dSmrgesac
1322c7c4e3dSmrg
1332c7c4e3dSmrg### Let's recognize common machines as not being operating systems so
1342c7c4e3dSmrg### that things like config.sub decstation-3100 work.  We also
1352c7c4e3dSmrg### recognize some manufacturers as not being operating systems, so we
1362c7c4e3dSmrg### can provide default operating systems below.
1372c7c4e3dSmrgcase $os in
1382c7c4e3dSmrg	-sun*os*)
1392c7c4e3dSmrg		# Prevent following clause from handling this invalid input.
1402c7c4e3dSmrg		;;
1412c7c4e3dSmrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
1422c7c4e3dSmrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1432c7c4e3dSmrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
1442c7c4e3dSmrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
1452c7c4e3dSmrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
1462c7c4e3dSmrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1472c7c4e3dSmrg	-apple | -axis)
1482c7c4e3dSmrg		os=
1492c7c4e3dSmrg		basic_machine=$1
1502c7c4e3dSmrg		;;
1512c7c4e3dSmrg	-sim | -cisco | -oki | -wec | -winbond)
1522c7c4e3dSmrg		os=
1532c7c4e3dSmrg		basic_machine=$1
1542c7c4e3dSmrg		;;
1552c7c4e3dSmrg	-scout)
1562c7c4e3dSmrg		;;
1572c7c4e3dSmrg	-wrs)
1582c7c4e3dSmrg		os=-vxworks
1592c7c4e3dSmrg		basic_machine=$1
1602c7c4e3dSmrg		;;
1612c7c4e3dSmrg	-chorusos*)
1622c7c4e3dSmrg		os=-chorusos
1632c7c4e3dSmrg		basic_machine=$1
1642c7c4e3dSmrg		;;
1652c7c4e3dSmrg 	-chorusrdb)
1662c7c4e3dSmrg 		os=-chorusrdb
1672c7c4e3dSmrg		basic_machine=$1
1682c7c4e3dSmrg 		;;
1692c7c4e3dSmrg	-hiux*)
1702c7c4e3dSmrg		os=-hiuxwe2
1712c7c4e3dSmrg		;;
1722c7c4e3dSmrg	-sco5)
1732c7c4e3dSmrg		os=-sco3.2v5
1742c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1752c7c4e3dSmrg		;;
1762c7c4e3dSmrg	-sco4)
1772c7c4e3dSmrg		os=-sco3.2v4
1782c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1792c7c4e3dSmrg		;;
1802c7c4e3dSmrg	-sco3.2.[4-9]*)
1812c7c4e3dSmrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
1822c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1832c7c4e3dSmrg		;;
1842c7c4e3dSmrg	-sco3.2v[4-9]*)
1852c7c4e3dSmrg		# Don't forget version if it is 3.2v4 or newer.
1862c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1872c7c4e3dSmrg		;;
1882c7c4e3dSmrg	-sco*)
1892c7c4e3dSmrg		os=-sco3.2v2
1902c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1912c7c4e3dSmrg		;;
1922c7c4e3dSmrg	-udk*)
1932c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1942c7c4e3dSmrg		;;
1952c7c4e3dSmrg	-isc)
1962c7c4e3dSmrg		os=-isc2.2
1972c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1982c7c4e3dSmrg		;;
1992c7c4e3dSmrg	-clix*)
2002c7c4e3dSmrg		basic_machine=clipper-intergraph
2012c7c4e3dSmrg		;;
2022c7c4e3dSmrg	-isc*)
2032c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2042c7c4e3dSmrg		;;
2052c7c4e3dSmrg	-lynx*)
2062c7c4e3dSmrg		os=-lynxos
2072c7c4e3dSmrg		;;
2082c7c4e3dSmrg	-ptx*)
2092c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
2102c7c4e3dSmrg		;;
2112c7c4e3dSmrg	-windowsnt*)
2122c7c4e3dSmrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
2132c7c4e3dSmrg		;;
2142c7c4e3dSmrg	-psos*)
2152c7c4e3dSmrg		os=-psos
2162c7c4e3dSmrg		;;
2172c7c4e3dSmrg	-mint | -mint[0-9]*)
2182c7c4e3dSmrg		basic_machine=m68k-atari
2192c7c4e3dSmrg		os=-mint
2202c7c4e3dSmrg		;;
2212c7c4e3dSmrgesac
2222c7c4e3dSmrg
2232c7c4e3dSmrg# Decode aliases for certain CPU-COMPANY combinations.
2242c7c4e3dSmrgcase $basic_machine in
2252c7c4e3dSmrg	# Recognize the basic CPU types without company name.
2262c7c4e3dSmrg	# Some are omitted here because they have special meanings below.
2272c7c4e3dSmrg	1750a | 580 \
2282c7c4e3dSmrg	| a29k \
2292c7c4e3dSmrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
2302c7c4e3dSmrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2312c7c4e3dSmrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
2322c7c4e3dSmrg	| c4x | clipper \
2332c7c4e3dSmrg	| d10v | d30v | dlx | dsp16xx \
2342c7c4e3dSmrg	| fr30 | frv \
2352c7c4e3dSmrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2362c7c4e3dSmrg	| i370 | i860 | i960 | ia64 \
2372c7c4e3dSmrg	| ip2k \
2382c7c4e3dSmrg	| m32r | m68000 | m68k | m88k | mcore \
2392c7c4e3dSmrg	| mips | mipsbe | mipseb | mipsel | mipsle \
2402c7c4e3dSmrg	| mips16 \
2412c7c4e3dSmrg	| mips64 | mips64el \
2422c7c4e3dSmrg	| mips64vr | mips64vrel \
2432c7c4e3dSmrg	| mips64orion | mips64orionel \
2442c7c4e3dSmrg	| mips64vr4100 | mips64vr4100el \
2452c7c4e3dSmrg	| mips64vr4300 | mips64vr4300el \
2462c7c4e3dSmrg	| mips64vr5000 | mips64vr5000el \
2472c7c4e3dSmrg	| mipsisa32 | mipsisa32el \
2482c7c4e3dSmrg	| mipsisa32r2 | mipsisa32r2el \
2492c7c4e3dSmrg	| mipsisa64 | mipsisa64el \
2502c7c4e3dSmrg	| mipsisa64sb1 | mipsisa64sb1el \
2512c7c4e3dSmrg	| mipsisa64sr71k | mipsisa64sr71kel \
2522c7c4e3dSmrg	| mipstx39 | mipstx39el \
2532c7c4e3dSmrg	| mn10200 | mn10300 \
2542c7c4e3dSmrg	| msp430 \
2552c7c4e3dSmrg	| ns16k | ns32k \
2562c7c4e3dSmrg	| openrisc | or32 \
2572c7c4e3dSmrg	| pdp10 | pdp11 | pj | pjl \
2582c7c4e3dSmrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
2592c7c4e3dSmrg	| pyramid \
2602c7c4e3dSmrg	| s390 | s390x \
2612c7c4e3dSmrg	| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
2622c7c4e3dSmrg	| sh64 | sh64le \
2632c7c4e3dSmrg	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
2642c7c4e3dSmrg	| strongarm \
2652c7c4e3dSmrg	| tahoe | thumb | tic4x | tic80 | tron \
2662c7c4e3dSmrg	| v850 | v850e \
2672c7c4e3dSmrg	| we32k \
2682c7c4e3dSmrg	| x86 | xscale | xstormy16 | xtensa \
2692c7c4e3dSmrg	| z8k)
2702c7c4e3dSmrg		basic_machine=$basic_machine-unknown
2712c7c4e3dSmrg		;;
2722c7c4e3dSmrg	m6811 | m68hc11 | m6812 | m68hc12)
2732c7c4e3dSmrg		# Motorola 68HC11/12.
2742c7c4e3dSmrg		basic_machine=$basic_machine-unknown
2752c7c4e3dSmrg		os=-none
2762c7c4e3dSmrg		;;
2772c7c4e3dSmrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
2782c7c4e3dSmrg		;;
2792c7c4e3dSmrg
2802c7c4e3dSmrg	# We use `pc' rather than `unknown'
2812c7c4e3dSmrg	# because (1) that's what they normally are, and
2822c7c4e3dSmrg	# (2) the word "unknown" tends to confuse beginning users.
2832c7c4e3dSmrg	i*86 | x86_64)
2842c7c4e3dSmrg	  basic_machine=$basic_machine-pc
2852c7c4e3dSmrg	  ;;
2862c7c4e3dSmrg	# Object if more than one company name word.
2872c7c4e3dSmrg	*-*-*)
2882c7c4e3dSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
2892c7c4e3dSmrg		exit 1
2902c7c4e3dSmrg		;;
2912c7c4e3dSmrg	# Recognize the basic CPU types with company name.
2922c7c4e3dSmrg	580-* \
2932c7c4e3dSmrg	| a29k-* \
2942c7c4e3dSmrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
2952c7c4e3dSmrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
2962c7c4e3dSmrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
2972c7c4e3dSmrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
2982c7c4e3dSmrg	| avr-* \
2992c7c4e3dSmrg	| bs2000-* \
3002c7c4e3dSmrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
3012c7c4e3dSmrg	| clipper-* | cydra-* \
3022c7c4e3dSmrg	| d10v-* | d30v-* | dlx-* \
3032c7c4e3dSmrg	| elxsi-* \
3042c7c4e3dSmrg	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
3052c7c4e3dSmrg	| h8300-* | h8500-* \
3062c7c4e3dSmrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3072c7c4e3dSmrg	| i*86-* | i860-* | i960-* | ia64-* \
3082c7c4e3dSmrg	| ip2k-* \
3092c7c4e3dSmrg	| m32r-* \
3102c7c4e3dSmrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3112c7c4e3dSmrg	| m88110-* | m88k-* | mcore-* \
3122c7c4e3dSmrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
3132c7c4e3dSmrg	| mips16-* \
3142c7c4e3dSmrg	| mips64-* | mips64el-* \
3152c7c4e3dSmrg	| mips64vr-* | mips64vrel-* \
3162c7c4e3dSmrg	| mips64orion-* | mips64orionel-* \
3172c7c4e3dSmrg	| mips64vr4100-* | mips64vr4100el-* \
3182c7c4e3dSmrg	| mips64vr4300-* | mips64vr4300el-* \
3192c7c4e3dSmrg	| mips64vr5000-* | mips64vr5000el-* \
3202c7c4e3dSmrg	| mipsisa32-* | mipsisa32el-* \
3212c7c4e3dSmrg	| mipsisa32r2-* | mipsisa32r2el-* \
3222c7c4e3dSmrg	| mipsisa64-* | mipsisa64el-* \
3232c7c4e3dSmrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
3242c7c4e3dSmrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
3252c7c4e3dSmrg	| mipstx39-* | mipstx39el-* \
3262c7c4e3dSmrg	| msp430-* \
3272c7c4e3dSmrg	| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
3282c7c4e3dSmrg	| orion-* \
3292c7c4e3dSmrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
3302c7c4e3dSmrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
3312c7c4e3dSmrg	| pyramid-* \
3322c7c4e3dSmrg	| romp-* | rs6000-* \
3332c7c4e3dSmrg	| s390-* | s390x-* \
3342c7c4e3dSmrg	| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
3352c7c4e3dSmrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
3362c7c4e3dSmrg	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
3372c7c4e3dSmrg	| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
3382c7c4e3dSmrg	| tahoe-* | thumb-* \
3392c7c4e3dSmrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
3402c7c4e3dSmrg	| tron-* \
3412c7c4e3dSmrg	| v850-* | v850e-* | vax-* \
3422c7c4e3dSmrg	| we32k-* \
3432c7c4e3dSmrg	| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
3442c7c4e3dSmrg	| xtensa-* \
3452c7c4e3dSmrg	| ymp-* \
3462c7c4e3dSmrg	| z8k-*)
3472c7c4e3dSmrg		;;
3482c7c4e3dSmrg	# Recognize the various machine names and aliases which stand
3492c7c4e3dSmrg	# for a CPU type and a company and sometimes even an OS.
3502c7c4e3dSmrg	386bsd)
3512c7c4e3dSmrg		basic_machine=i386-unknown
3522c7c4e3dSmrg		os=-bsd
3532c7c4e3dSmrg		;;
3542c7c4e3dSmrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
3552c7c4e3dSmrg		basic_machine=m68000-att
3562c7c4e3dSmrg		;;
3572c7c4e3dSmrg	3b*)
3582c7c4e3dSmrg		basic_machine=we32k-att
3592c7c4e3dSmrg		;;
3602c7c4e3dSmrg	a29khif)
3612c7c4e3dSmrg		basic_machine=a29k-amd
3622c7c4e3dSmrg		os=-udi
3632c7c4e3dSmrg		;;
3642c7c4e3dSmrg	adobe68k)
3652c7c4e3dSmrg		basic_machine=m68010-adobe
3662c7c4e3dSmrg		os=-scout
3672c7c4e3dSmrg		;;
3682c7c4e3dSmrg	alliant | fx80)
3692c7c4e3dSmrg		basic_machine=fx80-alliant
3702c7c4e3dSmrg		;;
3712c7c4e3dSmrg	altos | altos3068)
3722c7c4e3dSmrg		basic_machine=m68k-altos
3732c7c4e3dSmrg		;;
3742c7c4e3dSmrg	am29k)
3752c7c4e3dSmrg		basic_machine=a29k-none
3762c7c4e3dSmrg		os=-bsd
3772c7c4e3dSmrg		;;
3782c7c4e3dSmrg	amd64)
3792c7c4e3dSmrg		basic_machine=x86_64-pc
3802c7c4e3dSmrg		;;
3812c7c4e3dSmrg	amdahl)
3822c7c4e3dSmrg		basic_machine=580-amdahl
3832c7c4e3dSmrg		os=-sysv
3842c7c4e3dSmrg		;;
3852c7c4e3dSmrg	amiga | amiga-*)
3862c7c4e3dSmrg		basic_machine=m68k-unknown
3872c7c4e3dSmrg		;;
3882c7c4e3dSmrg	amigaos | amigados)
3892c7c4e3dSmrg		basic_machine=m68k-unknown
3902c7c4e3dSmrg		os=-amigaos
3912c7c4e3dSmrg		;;
3922c7c4e3dSmrg	amigaunix | amix)
3932c7c4e3dSmrg		basic_machine=m68k-unknown
3942c7c4e3dSmrg		os=-sysv4
3952c7c4e3dSmrg		;;
3962c7c4e3dSmrg	apollo68)
3972c7c4e3dSmrg		basic_machine=m68k-apollo
3982c7c4e3dSmrg		os=-sysv
3992c7c4e3dSmrg		;;
4002c7c4e3dSmrg	apollo68bsd)
4012c7c4e3dSmrg		basic_machine=m68k-apollo
4022c7c4e3dSmrg		os=-bsd
4032c7c4e3dSmrg		;;
4042c7c4e3dSmrg	aux)
4052c7c4e3dSmrg		basic_machine=m68k-apple
4062c7c4e3dSmrg		os=-aux
4072c7c4e3dSmrg		;;
4082c7c4e3dSmrg	balance)
4092c7c4e3dSmrg		basic_machine=ns32k-sequent
4102c7c4e3dSmrg		os=-dynix
4112c7c4e3dSmrg		;;
4122c7c4e3dSmrg	c90)
4132c7c4e3dSmrg		basic_machine=c90-cray
4142c7c4e3dSmrg		os=-unicos
4152c7c4e3dSmrg		;;
4162c7c4e3dSmrg	convex-c1)
4172c7c4e3dSmrg		basic_machine=c1-convex
4182c7c4e3dSmrg		os=-bsd
4192c7c4e3dSmrg		;;
4202c7c4e3dSmrg	convex-c2)
4212c7c4e3dSmrg		basic_machine=c2-convex
4222c7c4e3dSmrg		os=-bsd
4232c7c4e3dSmrg		;;
4242c7c4e3dSmrg	convex-c32)
4252c7c4e3dSmrg		basic_machine=c32-convex
4262c7c4e3dSmrg		os=-bsd
4272c7c4e3dSmrg		;;
4282c7c4e3dSmrg	convex-c34)
4292c7c4e3dSmrg		basic_machine=c34-convex
4302c7c4e3dSmrg		os=-bsd
4312c7c4e3dSmrg		;;
4322c7c4e3dSmrg	convex-c38)
4332c7c4e3dSmrg		basic_machine=c38-convex
4342c7c4e3dSmrg		os=-bsd
4352c7c4e3dSmrg		;;
4362c7c4e3dSmrg	cray | j90)
4372c7c4e3dSmrg		basic_machine=j90-cray
4382c7c4e3dSmrg		os=-unicos
4392c7c4e3dSmrg		;;
4402c7c4e3dSmrg	crds | unos)
4412c7c4e3dSmrg		basic_machine=m68k-crds
4422c7c4e3dSmrg		;;
4432c7c4e3dSmrg	cris | cris-* | etrax*)
4442c7c4e3dSmrg		basic_machine=cris-axis
4452c7c4e3dSmrg		;;
4462c7c4e3dSmrg	da30 | da30-*)
4472c7c4e3dSmrg		basic_machine=m68k-da30
4482c7c4e3dSmrg		;;
4492c7c4e3dSmrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
4502c7c4e3dSmrg		basic_machine=mips-dec
4512c7c4e3dSmrg		;;
4522c7c4e3dSmrg	decsystem10* | dec10*)
4532c7c4e3dSmrg		basic_machine=pdp10-dec
4542c7c4e3dSmrg		os=-tops10
4552c7c4e3dSmrg		;;
4562c7c4e3dSmrg	decsystem20* | dec20*)
4572c7c4e3dSmrg		basic_machine=pdp10-dec
4582c7c4e3dSmrg		os=-tops20
4592c7c4e3dSmrg		;;
4602c7c4e3dSmrg	delta | 3300 | motorola-3300 | motorola-delta \
4612c7c4e3dSmrg	      | 3300-motorola | delta-motorola)
4622c7c4e3dSmrg		basic_machine=m68k-motorola
4632c7c4e3dSmrg		;;
4642c7c4e3dSmrg	delta88)
4652c7c4e3dSmrg		basic_machine=m88k-motorola
4662c7c4e3dSmrg		os=-sysv3
4672c7c4e3dSmrg		;;
4682c7c4e3dSmrg	dpx20 | dpx20-*)
4692c7c4e3dSmrg		basic_machine=rs6000-bull
4702c7c4e3dSmrg		os=-bosx
4712c7c4e3dSmrg		;;
4722c7c4e3dSmrg	dpx2* | dpx2*-bull)
4732c7c4e3dSmrg		basic_machine=m68k-bull
4742c7c4e3dSmrg		os=-sysv3
4752c7c4e3dSmrg		;;
4762c7c4e3dSmrg	ebmon29k)
4772c7c4e3dSmrg		basic_machine=a29k-amd
4782c7c4e3dSmrg		os=-ebmon
4792c7c4e3dSmrg		;;
4802c7c4e3dSmrg	elxsi)
4812c7c4e3dSmrg		basic_machine=elxsi-elxsi
4822c7c4e3dSmrg		os=-bsd
4832c7c4e3dSmrg		;;
4842c7c4e3dSmrg	encore | umax | mmax)
4852c7c4e3dSmrg		basic_machine=ns32k-encore
4862c7c4e3dSmrg		;;
4872c7c4e3dSmrg	es1800 | OSE68k | ose68k | ose | OSE)
4882c7c4e3dSmrg		basic_machine=m68k-ericsson
4892c7c4e3dSmrg		os=-ose
4902c7c4e3dSmrg		;;
4912c7c4e3dSmrg	fx2800)
4922c7c4e3dSmrg		basic_machine=i860-alliant
4932c7c4e3dSmrg		;;
4942c7c4e3dSmrg	genix)
4952c7c4e3dSmrg		basic_machine=ns32k-ns
4962c7c4e3dSmrg		;;
4972c7c4e3dSmrg	gmicro)
4982c7c4e3dSmrg		basic_machine=tron-gmicro
4992c7c4e3dSmrg		os=-sysv
5002c7c4e3dSmrg		;;
5012c7c4e3dSmrg	go32)
5022c7c4e3dSmrg		basic_machine=i386-pc
5032c7c4e3dSmrg		os=-go32
5042c7c4e3dSmrg		;;
5052c7c4e3dSmrg	h3050r* | hiux*)
5062c7c4e3dSmrg		basic_machine=hppa1.1-hitachi
5072c7c4e3dSmrg		os=-hiuxwe2
5082c7c4e3dSmrg		;;
5092c7c4e3dSmrg	h8300hms)
5102c7c4e3dSmrg		basic_machine=h8300-hitachi
5112c7c4e3dSmrg		os=-hms
5122c7c4e3dSmrg		;;
5132c7c4e3dSmrg	h8300xray)
5142c7c4e3dSmrg		basic_machine=h8300-hitachi
5152c7c4e3dSmrg		os=-xray
5162c7c4e3dSmrg		;;
5172c7c4e3dSmrg	h8500hms)
5182c7c4e3dSmrg		basic_machine=h8500-hitachi
5192c7c4e3dSmrg		os=-hms
5202c7c4e3dSmrg		;;
5212c7c4e3dSmrg	harris)
5222c7c4e3dSmrg		basic_machine=m88k-harris
5232c7c4e3dSmrg		os=-sysv3
5242c7c4e3dSmrg		;;
5252c7c4e3dSmrg	hp300-*)
5262c7c4e3dSmrg		basic_machine=m68k-hp
5272c7c4e3dSmrg		;;
5282c7c4e3dSmrg	hp300bsd)
5292c7c4e3dSmrg		basic_machine=m68k-hp
5302c7c4e3dSmrg		os=-bsd
5312c7c4e3dSmrg		;;
5322c7c4e3dSmrg	hp300hpux)
5332c7c4e3dSmrg		basic_machine=m68k-hp
5342c7c4e3dSmrg		os=-hpux
5352c7c4e3dSmrg		;;
5362c7c4e3dSmrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
5372c7c4e3dSmrg		basic_machine=hppa1.0-hp
5382c7c4e3dSmrg		;;
5392c7c4e3dSmrg	hp9k2[0-9][0-9] | hp9k31[0-9])
5402c7c4e3dSmrg		basic_machine=m68000-hp
5412c7c4e3dSmrg		;;
5422c7c4e3dSmrg	hp9k3[2-9][0-9])
5432c7c4e3dSmrg		basic_machine=m68k-hp
5442c7c4e3dSmrg		;;
5452c7c4e3dSmrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
5462c7c4e3dSmrg		basic_machine=hppa1.0-hp
5472c7c4e3dSmrg		;;
5482c7c4e3dSmrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
5492c7c4e3dSmrg		basic_machine=hppa1.1-hp
5502c7c4e3dSmrg		;;
5512c7c4e3dSmrg	hp9k78[0-9] | hp78[0-9])
5522c7c4e3dSmrg		# FIXME: really hppa2.0-hp
5532c7c4e3dSmrg		basic_machine=hppa1.1-hp
5542c7c4e3dSmrg		;;
5552c7c4e3dSmrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
5562c7c4e3dSmrg		# FIXME: really hppa2.0-hp
5572c7c4e3dSmrg		basic_machine=hppa1.1-hp
5582c7c4e3dSmrg		;;
5592c7c4e3dSmrg	hp9k8[0-9][13679] | hp8[0-9][13679])
5602c7c4e3dSmrg		basic_machine=hppa1.1-hp
5612c7c4e3dSmrg		;;
5622c7c4e3dSmrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
5632c7c4e3dSmrg		basic_machine=hppa1.0-hp
5642c7c4e3dSmrg		;;
5652c7c4e3dSmrg	hppa-next)
5662c7c4e3dSmrg		os=-nextstep3
5672c7c4e3dSmrg		;;
5682c7c4e3dSmrg	hppaosf)
5692c7c4e3dSmrg		basic_machine=hppa1.1-hp
5702c7c4e3dSmrg		os=-osf
5712c7c4e3dSmrg		;;
5722c7c4e3dSmrg	hppro)
5732c7c4e3dSmrg		basic_machine=hppa1.1-hp
5742c7c4e3dSmrg		os=-proelf
5752c7c4e3dSmrg		;;
5762c7c4e3dSmrg	i370-ibm* | ibm*)
5772c7c4e3dSmrg		basic_machine=i370-ibm
5782c7c4e3dSmrg		;;
5792c7c4e3dSmrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
5802c7c4e3dSmrg	i*86v32)
5812c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
5822c7c4e3dSmrg		os=-sysv32
5832c7c4e3dSmrg		;;
5842c7c4e3dSmrg	i*86v4*)
5852c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
5862c7c4e3dSmrg		os=-sysv4
5872c7c4e3dSmrg		;;
5882c7c4e3dSmrg	i*86v)
5892c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
5902c7c4e3dSmrg		os=-sysv
5912c7c4e3dSmrg		;;
5922c7c4e3dSmrg	i*86sol2)
5932c7c4e3dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
5942c7c4e3dSmrg		os=-solaris2
5952c7c4e3dSmrg		;;
5962c7c4e3dSmrg	i386mach)
5972c7c4e3dSmrg		basic_machine=i386-mach
5982c7c4e3dSmrg		os=-mach
5992c7c4e3dSmrg		;;
6002c7c4e3dSmrg	i386-vsta | vsta)
6012c7c4e3dSmrg		basic_machine=i386-unknown
6022c7c4e3dSmrg		os=-vsta
6032c7c4e3dSmrg		;;
6042c7c4e3dSmrg	iris | iris4d)
6052c7c4e3dSmrg		basic_machine=mips-sgi
6062c7c4e3dSmrg		case $os in
6072c7c4e3dSmrg		    -irix*)
6082c7c4e3dSmrg			;;
6092c7c4e3dSmrg		    *)
6102c7c4e3dSmrg			os=-irix4
6112c7c4e3dSmrg			;;
6122c7c4e3dSmrg		esac
6132c7c4e3dSmrg		;;
6142c7c4e3dSmrg	isi68 | isi)
6152c7c4e3dSmrg		basic_machine=m68k-isi
6162c7c4e3dSmrg		os=-sysv
6172c7c4e3dSmrg		;;
6182c7c4e3dSmrg	m88k-omron*)
6192c7c4e3dSmrg		basic_machine=m88k-omron
6202c7c4e3dSmrg		;;
6212c7c4e3dSmrg	magnum | m3230)
6222c7c4e3dSmrg		basic_machine=mips-mips
6232c7c4e3dSmrg		os=-sysv
6242c7c4e3dSmrg		;;
6252c7c4e3dSmrg	merlin)
6262c7c4e3dSmrg		basic_machine=ns32k-utek
6272c7c4e3dSmrg		os=-sysv
6282c7c4e3dSmrg		;;
6292c7c4e3dSmrg	mingw32)
6302c7c4e3dSmrg		basic_machine=i386-pc
6312c7c4e3dSmrg		os=-mingw32
6322c7c4e3dSmrg		;;
6332c7c4e3dSmrg	miniframe)
6342c7c4e3dSmrg		basic_machine=m68000-convergent
6352c7c4e3dSmrg		;;
6362c7c4e3dSmrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
6372c7c4e3dSmrg		basic_machine=m68k-atari
6382c7c4e3dSmrg		os=-mint
6392c7c4e3dSmrg		;;
6402c7c4e3dSmrg	mips3*-*)
6412c7c4e3dSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
6422c7c4e3dSmrg		;;
6432c7c4e3dSmrg	mips3*)
6442c7c4e3dSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
6452c7c4e3dSmrg		;;
6462c7c4e3dSmrg	mmix*)
6472c7c4e3dSmrg		basic_machine=mmix-knuth
6482c7c4e3dSmrg		os=-mmixware
6492c7c4e3dSmrg		;;
6502c7c4e3dSmrg	monitor)
6512c7c4e3dSmrg		basic_machine=m68k-rom68k
6522c7c4e3dSmrg		os=-coff
6532c7c4e3dSmrg		;;
6542c7c4e3dSmrg	morphos)
6552c7c4e3dSmrg		basic_machine=powerpc-unknown
6562c7c4e3dSmrg		os=-morphos
6572c7c4e3dSmrg		;;
6582c7c4e3dSmrg	msdos)
6592c7c4e3dSmrg		basic_machine=i386-pc
6602c7c4e3dSmrg		os=-msdos
6612c7c4e3dSmrg		;;
6622c7c4e3dSmrg	mvs)
6632c7c4e3dSmrg		basic_machine=i370-ibm
6642c7c4e3dSmrg		os=-mvs
6652c7c4e3dSmrg		;;
6662c7c4e3dSmrg	ncr3000)
6672c7c4e3dSmrg		basic_machine=i486-ncr
6682c7c4e3dSmrg		os=-sysv4
6692c7c4e3dSmrg		;;
6702c7c4e3dSmrg	netbsd386)
6712c7c4e3dSmrg		basic_machine=i386-unknown
6722c7c4e3dSmrg		os=-netbsd
6732c7c4e3dSmrg		;;
6742c7c4e3dSmrg	netwinder)
6752c7c4e3dSmrg		basic_machine=armv4l-rebel
6762c7c4e3dSmrg		os=-linux
6772c7c4e3dSmrg		;;
6782c7c4e3dSmrg	news | news700 | news800 | news900)
6792c7c4e3dSmrg		basic_machine=m68k-sony
6802c7c4e3dSmrg		os=-newsos
6812c7c4e3dSmrg		;;
6822c7c4e3dSmrg	news1000)
6832c7c4e3dSmrg		basic_machine=m68030-sony
6842c7c4e3dSmrg		os=-newsos
6852c7c4e3dSmrg		;;
6862c7c4e3dSmrg	news-3600 | risc-news)
6872c7c4e3dSmrg		basic_machine=mips-sony
6882c7c4e3dSmrg		os=-newsos
6892c7c4e3dSmrg		;;
6902c7c4e3dSmrg	necv70)
6912c7c4e3dSmrg		basic_machine=v70-nec
6922c7c4e3dSmrg		os=-sysv
6932c7c4e3dSmrg		;;
6942c7c4e3dSmrg	next | m*-next )
6952c7c4e3dSmrg		basic_machine=m68k-next
6962c7c4e3dSmrg		case $os in
6972c7c4e3dSmrg		    -nextstep* )
6982c7c4e3dSmrg			;;
6992c7c4e3dSmrg		    -ns2*)
7002c7c4e3dSmrg		      os=-nextstep2
7012c7c4e3dSmrg			;;
7022c7c4e3dSmrg		    *)
7032c7c4e3dSmrg		      os=-nextstep3
7042c7c4e3dSmrg			;;
7052c7c4e3dSmrg		esac
7062c7c4e3dSmrg		;;
7072c7c4e3dSmrg	nh3000)
7082c7c4e3dSmrg		basic_machine=m68k-harris
7092c7c4e3dSmrg		os=-cxux
7102c7c4e3dSmrg		;;
7112c7c4e3dSmrg	nh[45]000)
7122c7c4e3dSmrg		basic_machine=m88k-harris
7132c7c4e3dSmrg		os=-cxux
7142c7c4e3dSmrg		;;
7152c7c4e3dSmrg	nindy960)
7162c7c4e3dSmrg		basic_machine=i960-intel
7172c7c4e3dSmrg		os=-nindy
7182c7c4e3dSmrg		;;
7192c7c4e3dSmrg	mon960)
7202c7c4e3dSmrg		basic_machine=i960-intel
7212c7c4e3dSmrg		os=-mon960
7222c7c4e3dSmrg		;;
7232c7c4e3dSmrg	nonstopux)
7242c7c4e3dSmrg		basic_machine=mips-compaq
7252c7c4e3dSmrg		os=-nonstopux
7262c7c4e3dSmrg		;;
7272c7c4e3dSmrg	np1)
7282c7c4e3dSmrg		basic_machine=np1-gould
7292c7c4e3dSmrg		;;
7302c7c4e3dSmrg	nv1)
7312c7c4e3dSmrg		basic_machine=nv1-cray
7322c7c4e3dSmrg		os=-unicosmp
7332c7c4e3dSmrg		;;
7342c7c4e3dSmrg	nsr-tandem)
7352c7c4e3dSmrg		basic_machine=nsr-tandem
7362c7c4e3dSmrg		;;
7372c7c4e3dSmrg	op50n-* | op60c-*)
7382c7c4e3dSmrg		basic_machine=hppa1.1-oki
7392c7c4e3dSmrg		os=-proelf
7402c7c4e3dSmrg		;;
7412c7c4e3dSmrg	or32 | or32-*)
7422c7c4e3dSmrg		basic_machine=or32-unknown
7432c7c4e3dSmrg		os=-coff
7442c7c4e3dSmrg		;;
7452c7c4e3dSmrg	OSE68000 | ose68000)
7462c7c4e3dSmrg		basic_machine=m68000-ericsson
7472c7c4e3dSmrg		os=-ose
7482c7c4e3dSmrg		;;
7492c7c4e3dSmrg	os68k)
7502c7c4e3dSmrg		basic_machine=m68k-none
7512c7c4e3dSmrg		os=-os68k
7522c7c4e3dSmrg		;;
7532c7c4e3dSmrg	pa-hitachi)
7542c7c4e3dSmrg		basic_machine=hppa1.1-hitachi
7552c7c4e3dSmrg		os=-hiuxwe2
7562c7c4e3dSmrg		;;
7572c7c4e3dSmrg	paragon)
7582c7c4e3dSmrg		basic_machine=i860-intel
7592c7c4e3dSmrg		os=-osf
7602c7c4e3dSmrg		;;
7612c7c4e3dSmrg	pbd)
7622c7c4e3dSmrg		basic_machine=sparc-tti
7632c7c4e3dSmrg		;;
7642c7c4e3dSmrg	pbb)
7652c7c4e3dSmrg		basic_machine=m68k-tti
7662c7c4e3dSmrg		;;
7672c7c4e3dSmrg	pc532 | pc532-*)
7682c7c4e3dSmrg		basic_machine=ns32k-pc532
7692c7c4e3dSmrg		;;
7702c7c4e3dSmrg	pentium | p5 | k5 | k6 | nexgen | viac3)
7712c7c4e3dSmrg		basic_machine=i586-pc
7722c7c4e3dSmrg		;;
7732c7c4e3dSmrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
7742c7c4e3dSmrg		basic_machine=i686-pc
7752c7c4e3dSmrg		;;
7762c7c4e3dSmrg	pentiumii | pentium2 | pentiumiii | pentium3)
7772c7c4e3dSmrg		basic_machine=i686-pc
7782c7c4e3dSmrg		;;
7792c7c4e3dSmrg	pentium4)
7802c7c4e3dSmrg		basic_machine=i786-pc
7812c7c4e3dSmrg		;;
7822c7c4e3dSmrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
7832c7c4e3dSmrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
7842c7c4e3dSmrg		;;
7852c7c4e3dSmrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
7862c7c4e3dSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
7872c7c4e3dSmrg		;;
7882c7c4e3dSmrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
7892c7c4e3dSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
7902c7c4e3dSmrg		;;
7912c7c4e3dSmrg	pentium4-*)
7922c7c4e3dSmrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
7932c7c4e3dSmrg		;;
7942c7c4e3dSmrg	pn)
7952c7c4e3dSmrg		basic_machine=pn-gould
7962c7c4e3dSmrg		;;
7972c7c4e3dSmrg	power)	basic_machine=power-ibm
7982c7c4e3dSmrg		;;
7992c7c4e3dSmrg	ppc)	basic_machine=powerpc-unknown
8002c7c4e3dSmrg		;;
8012c7c4e3dSmrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
8022c7c4e3dSmrg		;;
8032c7c4e3dSmrg	ppcle | powerpclittle | ppc-le | powerpc-little)
8042c7c4e3dSmrg		basic_machine=powerpcle-unknown
8052c7c4e3dSmrg		;;
8062c7c4e3dSmrg	ppcle-* | powerpclittle-*)
8072c7c4e3dSmrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
8082c7c4e3dSmrg		;;
8092c7c4e3dSmrg	ppc64)	basic_machine=powerpc64-unknown
8102c7c4e3dSmrg		;;
8112c7c4e3dSmrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
8122c7c4e3dSmrg		;;
8132c7c4e3dSmrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
8142c7c4e3dSmrg		basic_machine=powerpc64le-unknown
8152c7c4e3dSmrg		;;
8162c7c4e3dSmrg	ppc64le-* | powerpc64little-*)
8172c7c4e3dSmrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
8182c7c4e3dSmrg		;;
8192c7c4e3dSmrg	ps2)
8202c7c4e3dSmrg		basic_machine=i386-ibm
8212c7c4e3dSmrg		;;
8222c7c4e3dSmrg	pw32)
8232c7c4e3dSmrg		basic_machine=i586-unknown
8242c7c4e3dSmrg		os=-pw32
8252c7c4e3dSmrg		;;
8262c7c4e3dSmrg	rom68k)
8272c7c4e3dSmrg		basic_machine=m68k-rom68k
8282c7c4e3dSmrg		os=-coff
8292c7c4e3dSmrg		;;
8302c7c4e3dSmrg	rm[46]00)
8312c7c4e3dSmrg		basic_machine=mips-siemens
8322c7c4e3dSmrg		;;
8332c7c4e3dSmrg	rtpc | rtpc-*)
8342c7c4e3dSmrg		basic_machine=romp-ibm
8352c7c4e3dSmrg		;;
8362c7c4e3dSmrg	sa29200)
8372c7c4e3dSmrg		basic_machine=a29k-amd
8382c7c4e3dSmrg		os=-udi
8392c7c4e3dSmrg		;;
8402c7c4e3dSmrg	sb1)
8412c7c4e3dSmrg		basic_machine=mipsisa64sb1-unknown
8422c7c4e3dSmrg		;;
8432c7c4e3dSmrg	sb1el)
8442c7c4e3dSmrg		basic_machine=mipsisa64sb1el-unknown
8452c7c4e3dSmrg		;;
8462c7c4e3dSmrg	sei)
8472c7c4e3dSmrg		basic_machine=mips-sei
8482c7c4e3dSmrg		os=-seiux
8492c7c4e3dSmrg		;;
8502c7c4e3dSmrg	sequent)
8512c7c4e3dSmrg		basic_machine=i386-sequent
8522c7c4e3dSmrg		;;
8532c7c4e3dSmrg	sh)
8542c7c4e3dSmrg		basic_machine=sh-hitachi
8552c7c4e3dSmrg		os=-hms
8562c7c4e3dSmrg		;;
8572c7c4e3dSmrg	sh64)
8582c7c4e3dSmrg		basic_machine=sh64-unknown
8592c7c4e3dSmrg		;;
8602c7c4e3dSmrg	sparclite-wrs | simso-wrs)
8612c7c4e3dSmrg		basic_machine=sparclite-wrs
8622c7c4e3dSmrg		os=-vxworks
8632c7c4e3dSmrg		;;
8642c7c4e3dSmrg	sps7)
8652c7c4e3dSmrg		basic_machine=m68k-bull
8662c7c4e3dSmrg		os=-sysv2
8672c7c4e3dSmrg		;;
8682c7c4e3dSmrg	spur)
8692c7c4e3dSmrg		basic_machine=spur-unknown
8702c7c4e3dSmrg		;;
8712c7c4e3dSmrg	st2000)
8722c7c4e3dSmrg		basic_machine=m68k-tandem
8732c7c4e3dSmrg		;;
8742c7c4e3dSmrg	stratus)
8752c7c4e3dSmrg		basic_machine=i860-stratus
8762c7c4e3dSmrg		os=-sysv4
8772c7c4e3dSmrg		;;
8782c7c4e3dSmrg	sun2)
8792c7c4e3dSmrg		basic_machine=m68000-sun
8802c7c4e3dSmrg		;;
8812c7c4e3dSmrg	sun2os3)
8822c7c4e3dSmrg		basic_machine=m68000-sun
8832c7c4e3dSmrg		os=-sunos3
8842c7c4e3dSmrg		;;
8852c7c4e3dSmrg	sun2os4)
8862c7c4e3dSmrg		basic_machine=m68000-sun
8872c7c4e3dSmrg		os=-sunos4
8882c7c4e3dSmrg		;;
8892c7c4e3dSmrg	sun3os3)
8902c7c4e3dSmrg		basic_machine=m68k-sun
8912c7c4e3dSmrg		os=-sunos3
8922c7c4e3dSmrg		;;
8932c7c4e3dSmrg	sun3os4)
8942c7c4e3dSmrg		basic_machine=m68k-sun
8952c7c4e3dSmrg		os=-sunos4
8962c7c4e3dSmrg		;;
8972c7c4e3dSmrg	sun4os3)
8982c7c4e3dSmrg		basic_machine=sparc-sun
8992c7c4e3dSmrg		os=-sunos3
9002c7c4e3dSmrg		;;
9012c7c4e3dSmrg	sun4os4)
9022c7c4e3dSmrg		basic_machine=sparc-sun
9032c7c4e3dSmrg		os=-sunos4
9042c7c4e3dSmrg		;;
9052c7c4e3dSmrg	sun4sol2)
9062c7c4e3dSmrg		basic_machine=sparc-sun
9072c7c4e3dSmrg		os=-solaris2
9082c7c4e3dSmrg		;;
9092c7c4e3dSmrg	sun3 | sun3-*)
9102c7c4e3dSmrg		basic_machine=m68k-sun
9112c7c4e3dSmrg		;;
9122c7c4e3dSmrg	sun4)
9132c7c4e3dSmrg		basic_machine=sparc-sun
9142c7c4e3dSmrg		;;
9152c7c4e3dSmrg	sun386 | sun386i | roadrunner)
9162c7c4e3dSmrg		basic_machine=i386-sun
9172c7c4e3dSmrg		;;
9182c7c4e3dSmrg	sv1)
9192c7c4e3dSmrg		basic_machine=sv1-cray
9202c7c4e3dSmrg		os=-unicos
9212c7c4e3dSmrg		;;
9222c7c4e3dSmrg	symmetry)
9232c7c4e3dSmrg		basic_machine=i386-sequent
9242c7c4e3dSmrg		os=-dynix
9252c7c4e3dSmrg		;;
9262c7c4e3dSmrg	t3e)
9272c7c4e3dSmrg		basic_machine=alphaev5-cray
9282c7c4e3dSmrg		os=-unicos
9292c7c4e3dSmrg		;;
9302c7c4e3dSmrg	t90)
9312c7c4e3dSmrg		basic_machine=t90-cray
9322c7c4e3dSmrg		os=-unicos
9332c7c4e3dSmrg		;;
9342c7c4e3dSmrg	tic54x | c54x*)
9352c7c4e3dSmrg		basic_machine=tic54x-unknown
9362c7c4e3dSmrg		os=-coff
9372c7c4e3dSmrg		;;
9382c7c4e3dSmrg	tic55x | c55x*)
9392c7c4e3dSmrg		basic_machine=tic55x-unknown
9402c7c4e3dSmrg		os=-coff
9412c7c4e3dSmrg		;;
9422c7c4e3dSmrg	tic6x | c6x*)
9432c7c4e3dSmrg		basic_machine=tic6x-unknown
9442c7c4e3dSmrg		os=-coff
9452c7c4e3dSmrg		;;
9462c7c4e3dSmrg	tx39)
9472c7c4e3dSmrg		basic_machine=mipstx39-unknown
9482c7c4e3dSmrg		;;
9492c7c4e3dSmrg	tx39el)
9502c7c4e3dSmrg		basic_machine=mipstx39el-unknown
9512c7c4e3dSmrg		;;
9522c7c4e3dSmrg	toad1)
9532c7c4e3dSmrg		basic_machine=pdp10-xkl
9542c7c4e3dSmrg		os=-tops20
9552c7c4e3dSmrg		;;
9562c7c4e3dSmrg	tower | tower-32)
9572c7c4e3dSmrg		basic_machine=m68k-ncr
9582c7c4e3dSmrg		;;
9592c7c4e3dSmrg	udi29k)
9602c7c4e3dSmrg		basic_machine=a29k-amd
9612c7c4e3dSmrg		os=-udi
9622c7c4e3dSmrg		;;
9632c7c4e3dSmrg	ultra3)
9642c7c4e3dSmrg		basic_machine=a29k-nyu
9652c7c4e3dSmrg		os=-sym1
9662c7c4e3dSmrg		;;
9672c7c4e3dSmrg	v810 | necv810)
9682c7c4e3dSmrg		basic_machine=v810-nec
9692c7c4e3dSmrg		os=-none
9702c7c4e3dSmrg		;;
9712c7c4e3dSmrg	vaxv)
9722c7c4e3dSmrg		basic_machine=vax-dec
9732c7c4e3dSmrg		os=-sysv
9742c7c4e3dSmrg		;;
9752c7c4e3dSmrg	vms)
9762c7c4e3dSmrg		basic_machine=vax-dec
9772c7c4e3dSmrg		os=-vms
9782c7c4e3dSmrg		;;
9792c7c4e3dSmrg	vpp*|vx|vx-*)
9802c7c4e3dSmrg		basic_machine=f301-fujitsu
9812c7c4e3dSmrg		;;
9822c7c4e3dSmrg	vxworks960)
9832c7c4e3dSmrg		basic_machine=i960-wrs
9842c7c4e3dSmrg		os=-vxworks
9852c7c4e3dSmrg		;;
9862c7c4e3dSmrg	vxworks68)
9872c7c4e3dSmrg		basic_machine=m68k-wrs
9882c7c4e3dSmrg		os=-vxworks
9892c7c4e3dSmrg		;;
9902c7c4e3dSmrg	vxworks29k)
9912c7c4e3dSmrg		basic_machine=a29k-wrs
9922c7c4e3dSmrg		os=-vxworks
9932c7c4e3dSmrg		;;
9942c7c4e3dSmrg	w65*)
9952c7c4e3dSmrg		basic_machine=w65-wdc
9962c7c4e3dSmrg		os=-none
9972c7c4e3dSmrg		;;
9982c7c4e3dSmrg	w89k-*)
9992c7c4e3dSmrg		basic_machine=hppa1.1-winbond
10002c7c4e3dSmrg		os=-proelf
10012c7c4e3dSmrg		;;
10022c7c4e3dSmrg	xps | xps100)
10032c7c4e3dSmrg		basic_machine=xps100-honeywell
10042c7c4e3dSmrg		;;
10052c7c4e3dSmrg	ymp)
10062c7c4e3dSmrg		basic_machine=ymp-cray
10072c7c4e3dSmrg		os=-unicos
10082c7c4e3dSmrg		;;
10092c7c4e3dSmrg	z8k-*-coff)
10102c7c4e3dSmrg		basic_machine=z8k-unknown
10112c7c4e3dSmrg		os=-sim
10122c7c4e3dSmrg		;;
10132c7c4e3dSmrg	none)
10142c7c4e3dSmrg		basic_machine=none-none
10152c7c4e3dSmrg		os=-none
10162c7c4e3dSmrg		;;
10172c7c4e3dSmrg
10182c7c4e3dSmrg# Here we handle the default manufacturer of certain CPU types.  It is in
10192c7c4e3dSmrg# some cases the only manufacturer, in others, it is the most popular.
10202c7c4e3dSmrg	w89k)
10212c7c4e3dSmrg		basic_machine=hppa1.1-winbond
10222c7c4e3dSmrg		;;
10232c7c4e3dSmrg	op50n)
10242c7c4e3dSmrg		basic_machine=hppa1.1-oki
10252c7c4e3dSmrg		;;
10262c7c4e3dSmrg	op60c)
10272c7c4e3dSmrg		basic_machine=hppa1.1-oki
10282c7c4e3dSmrg		;;
10292c7c4e3dSmrg	romp)
10302c7c4e3dSmrg		basic_machine=romp-ibm
10312c7c4e3dSmrg		;;
10322c7c4e3dSmrg	rs6000)
10332c7c4e3dSmrg		basic_machine=rs6000-ibm
10342c7c4e3dSmrg		;;
10352c7c4e3dSmrg	vax)
10362c7c4e3dSmrg		basic_machine=vax-dec
10372c7c4e3dSmrg		;;
10382c7c4e3dSmrg	pdp10)
10392c7c4e3dSmrg		# there are many clones, so DEC is not a safe bet
10402c7c4e3dSmrg		basic_machine=pdp10-unknown
10412c7c4e3dSmrg		;;
10422c7c4e3dSmrg	pdp11)
10432c7c4e3dSmrg		basic_machine=pdp11-dec
10442c7c4e3dSmrg		;;
10452c7c4e3dSmrg	we32k)
10462c7c4e3dSmrg		basic_machine=we32k-att
10472c7c4e3dSmrg		;;
10482c7c4e3dSmrg	sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
10492c7c4e3dSmrg		basic_machine=sh-unknown
10502c7c4e3dSmrg		;;
10512c7c4e3dSmrg	sh64)
10522c7c4e3dSmrg		basic_machine=sh64-unknown
10532c7c4e3dSmrg		;;
10542c7c4e3dSmrg	sparc | sparcv9 | sparcv9b)
10552c7c4e3dSmrg		basic_machine=sparc-sun
10562c7c4e3dSmrg		;;
10572c7c4e3dSmrg	cydra)
10582c7c4e3dSmrg		basic_machine=cydra-cydrome
10592c7c4e3dSmrg		;;
10602c7c4e3dSmrg	orion)
10612c7c4e3dSmrg		basic_machine=orion-highlevel
10622c7c4e3dSmrg		;;
10632c7c4e3dSmrg	orion105)
10642c7c4e3dSmrg		basic_machine=clipper-highlevel
10652c7c4e3dSmrg		;;
10662c7c4e3dSmrg	mac | mpw | mac-mpw)
10672c7c4e3dSmrg		basic_machine=m68k-apple
10682c7c4e3dSmrg		;;
10692c7c4e3dSmrg	pmac | pmac-mpw)
10702c7c4e3dSmrg		basic_machine=powerpc-apple
10712c7c4e3dSmrg		;;
10722c7c4e3dSmrg	*-unknown)
10732c7c4e3dSmrg		# Make sure to match an already-canonicalized machine name.
10742c7c4e3dSmrg		;;
10752c7c4e3dSmrg	*)
10762c7c4e3dSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
10772c7c4e3dSmrg		exit 1
10782c7c4e3dSmrg		;;
10792c7c4e3dSmrgesac
10802c7c4e3dSmrg
10812c7c4e3dSmrg# Here we canonicalize certain aliases for manufacturers.
10822c7c4e3dSmrgcase $basic_machine in
10832c7c4e3dSmrg	*-digital*)
10842c7c4e3dSmrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
10852c7c4e3dSmrg		;;
10862c7c4e3dSmrg	*-commodore*)
10872c7c4e3dSmrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
10882c7c4e3dSmrg		;;
10892c7c4e3dSmrg	*)
10902c7c4e3dSmrg		;;
10912c7c4e3dSmrgesac
10922c7c4e3dSmrg
10932c7c4e3dSmrg# Decode manufacturer-specific aliases for certain operating systems.
10942c7c4e3dSmrg
10952c7c4e3dSmrgif [ x"$os" != x"" ]
10962c7c4e3dSmrgthen
10972c7c4e3dSmrgcase $os in
10982c7c4e3dSmrg        # First match some system type aliases
10992c7c4e3dSmrg        # that might get confused with valid system types.
11002c7c4e3dSmrg	# -solaris* is a basic system type, with this one exception.
11012c7c4e3dSmrg	-solaris1 | -solaris1.*)
11022c7c4e3dSmrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
11032c7c4e3dSmrg		;;
11042c7c4e3dSmrg	-solaris)
11052c7c4e3dSmrg		os=-solaris2
11062c7c4e3dSmrg		;;
11072c7c4e3dSmrg	-svr4*)
11082c7c4e3dSmrg		os=-sysv4
11092c7c4e3dSmrg		;;
11102c7c4e3dSmrg	-unixware*)
11112c7c4e3dSmrg		os=-sysv4.2uw
11122c7c4e3dSmrg		;;
11132c7c4e3dSmrg	-gnu/linux*)
11142c7c4e3dSmrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
11152c7c4e3dSmrg		;;
11162c7c4e3dSmrg	# First accept the basic system types.
11172c7c4e3dSmrg	# The portable systems comes first.
11182c7c4e3dSmrg	# Each alternative MUST END IN A *, to match a version number.
11192c7c4e3dSmrg	# -sysv* is not here because it comes later, after sysvr4.
11202c7c4e3dSmrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
11212c7c4e3dSmrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
11222c7c4e3dSmrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
11232c7c4e3dSmrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
11242c7c4e3dSmrg	      | -aos* \
11252c7c4e3dSmrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
11262c7c4e3dSmrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
11272c7c4e3dSmrg	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
11282c7c4e3dSmrg	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
11292c7c4e3dSmrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
11302c7c4e3dSmrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
11312c7c4e3dSmrg	      | -chorusos* | -chorusrdb* \
11322c7c4e3dSmrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
11332c7c4e3dSmrg	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
11342c7c4e3dSmrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
11352c7c4e3dSmrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
11362c7c4e3dSmrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
11372c7c4e3dSmrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
11382c7c4e3dSmrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
11392c7c4e3dSmrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
11402c7c4e3dSmrg	# Remember, each alternative MUST END IN *, to match a version number.
11412c7c4e3dSmrg		;;
11422c7c4e3dSmrg	-qnx*)
11432c7c4e3dSmrg		case $basic_machine in
11442c7c4e3dSmrg		    x86-* | i*86-*)
11452c7c4e3dSmrg			;;
11462c7c4e3dSmrg		    *)
11472c7c4e3dSmrg			os=-nto$os
11482c7c4e3dSmrg			;;
11492c7c4e3dSmrg		esac
11502c7c4e3dSmrg		;;
11512c7c4e3dSmrg	-nto-qnx*)
11522c7c4e3dSmrg		;;
11532c7c4e3dSmrg	-nto*)
11542c7c4e3dSmrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
11552c7c4e3dSmrg		;;
11562c7c4e3dSmrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
11572c7c4e3dSmrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
11582c7c4e3dSmrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
11592c7c4e3dSmrg		;;
11602c7c4e3dSmrg	-mac*)
11612c7c4e3dSmrg		os=`echo $os | sed -e 's|mac|macos|'`
11622c7c4e3dSmrg		;;
11632c7c4e3dSmrg	-linux*)
11642c7c4e3dSmrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
11652c7c4e3dSmrg		;;
11662c7c4e3dSmrg	-sunos5*)
11672c7c4e3dSmrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
11682c7c4e3dSmrg		;;
11692c7c4e3dSmrg	-sunos6*)
11702c7c4e3dSmrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
11712c7c4e3dSmrg		;;
11722c7c4e3dSmrg	-opened*)
11732c7c4e3dSmrg		os=-openedition
11742c7c4e3dSmrg		;;
11752c7c4e3dSmrg	-wince*)
11762c7c4e3dSmrg		os=-wince
11772c7c4e3dSmrg		;;
11782c7c4e3dSmrg	-osfrose*)
11792c7c4e3dSmrg		os=-osfrose
11802c7c4e3dSmrg		;;
11812c7c4e3dSmrg	-osf*)
11822c7c4e3dSmrg		os=-osf
11832c7c4e3dSmrg		;;
11842c7c4e3dSmrg	-utek*)
11852c7c4e3dSmrg		os=-bsd
11862c7c4e3dSmrg		;;
11872c7c4e3dSmrg	-dynix*)
11882c7c4e3dSmrg		os=-bsd
11892c7c4e3dSmrg		;;
11902c7c4e3dSmrg	-acis*)
11912c7c4e3dSmrg		os=-aos
11922c7c4e3dSmrg		;;
11932c7c4e3dSmrg	-atheos*)
11942c7c4e3dSmrg		os=-atheos
11952c7c4e3dSmrg		;;
11962c7c4e3dSmrg	-386bsd)
11972c7c4e3dSmrg		os=-bsd
11982c7c4e3dSmrg		;;
11992c7c4e3dSmrg	-ctix* | -uts*)
12002c7c4e3dSmrg		os=-sysv
12012c7c4e3dSmrg		;;
12022c7c4e3dSmrg	-nova*)
12032c7c4e3dSmrg		os=-rtmk-nova
12042c7c4e3dSmrg		;;
12052c7c4e3dSmrg	-ns2 )
12062c7c4e3dSmrg		os=-nextstep2
12072c7c4e3dSmrg		;;
12082c7c4e3dSmrg	-nsk*)
12092c7c4e3dSmrg		os=-nsk
12102c7c4e3dSmrg		;;
12112c7c4e3dSmrg	# Preserve the version number of sinix5.
12122c7c4e3dSmrg	-sinix5.*)
12132c7c4e3dSmrg		os=`echo $os | sed -e 's|sinix|sysv|'`
12142c7c4e3dSmrg		;;
12152c7c4e3dSmrg	-sinix*)
12162c7c4e3dSmrg		os=-sysv4
12172c7c4e3dSmrg		;;
12182c7c4e3dSmrg	-triton*)
12192c7c4e3dSmrg		os=-sysv3
12202c7c4e3dSmrg		;;
12212c7c4e3dSmrg	-oss*)
12222c7c4e3dSmrg		os=-sysv3
12232c7c4e3dSmrg		;;
12242c7c4e3dSmrg	-svr4)
12252c7c4e3dSmrg		os=-sysv4
12262c7c4e3dSmrg		;;
12272c7c4e3dSmrg	-svr3)
12282c7c4e3dSmrg		os=-sysv3
12292c7c4e3dSmrg		;;
12302c7c4e3dSmrg	-sysvr4)
12312c7c4e3dSmrg		os=-sysv4
12322c7c4e3dSmrg		;;
12332c7c4e3dSmrg	# This must come after -sysvr4.
12342c7c4e3dSmrg	-sysv*)
12352c7c4e3dSmrg		;;
12362c7c4e3dSmrg	-ose*)
12372c7c4e3dSmrg		os=-ose
12382c7c4e3dSmrg		;;
12392c7c4e3dSmrg	-es1800*)
12402c7c4e3dSmrg		os=-ose
12412c7c4e3dSmrg		;;
12422c7c4e3dSmrg	-xenix)
12432c7c4e3dSmrg		os=-xenix
12442c7c4e3dSmrg		;;
12452c7c4e3dSmrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
12462c7c4e3dSmrg		os=-mint
12472c7c4e3dSmrg		;;
12482c7c4e3dSmrg	-aros*)
12492c7c4e3dSmrg		os=-aros
12502c7c4e3dSmrg		;;
12512c7c4e3dSmrg	-kaos*)
12522c7c4e3dSmrg		os=-kaos
12532c7c4e3dSmrg		;;
12542c7c4e3dSmrg	-none)
12552c7c4e3dSmrg		;;
12562c7c4e3dSmrg	*)
12572c7c4e3dSmrg		# Get rid of the `-' at the beginning of $os.
12582c7c4e3dSmrg		os=`echo $os | sed 's/[^-]*-//'`
12592c7c4e3dSmrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
12602c7c4e3dSmrg		exit 1
12612c7c4e3dSmrg		;;
12622c7c4e3dSmrgesac
12632c7c4e3dSmrgelse
12642c7c4e3dSmrg
12652c7c4e3dSmrg# Here we handle the default operating systems that come with various machines.
12662c7c4e3dSmrg# The value should be what the vendor currently ships out the door with their
12672c7c4e3dSmrg# machine or put another way, the most popular os provided with the machine.
12682c7c4e3dSmrg
12692c7c4e3dSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
12702c7c4e3dSmrg# "-sun"), then you have to tell the case statement up towards the top
12712c7c4e3dSmrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
12722c7c4e3dSmrg# will signal an error saying that MANUFACTURER isn't an operating
12732c7c4e3dSmrg# system, and we'll never get to this point.
12742c7c4e3dSmrg
12752c7c4e3dSmrgcase $basic_machine in
12762c7c4e3dSmrg	*-acorn)
12772c7c4e3dSmrg		os=-riscix1.2
12782c7c4e3dSmrg		;;
12792c7c4e3dSmrg	arm*-rebel)
12802c7c4e3dSmrg		os=-linux
12812c7c4e3dSmrg		;;
12822c7c4e3dSmrg	arm*-semi)
12832c7c4e3dSmrg		os=-aout
12842c7c4e3dSmrg		;;
12852c7c4e3dSmrg	c4x-* | tic4x-*)
12862c7c4e3dSmrg		os=-coff
12872c7c4e3dSmrg		;;
12882c7c4e3dSmrg	# This must come before the *-dec entry.
12892c7c4e3dSmrg	pdp10-*)
12902c7c4e3dSmrg		os=-tops20
12912c7c4e3dSmrg		;;
12922c7c4e3dSmrg	pdp11-*)
12932c7c4e3dSmrg		os=-none
12942c7c4e3dSmrg		;;
12952c7c4e3dSmrg	*-dec | vax-*)
12962c7c4e3dSmrg		os=-ultrix4.2
12972c7c4e3dSmrg		;;
12982c7c4e3dSmrg	m68*-apollo)
12992c7c4e3dSmrg		os=-domain
13002c7c4e3dSmrg		;;
13012c7c4e3dSmrg	i386-sun)
13022c7c4e3dSmrg		os=-sunos4.0.2
13032c7c4e3dSmrg		;;
13042c7c4e3dSmrg	m68000-sun)
13052c7c4e3dSmrg		os=-sunos3
13062c7c4e3dSmrg		# This also exists in the configure program, but was not the
13072c7c4e3dSmrg		# default.
13082c7c4e3dSmrg		# os=-sunos4
13092c7c4e3dSmrg		;;
13102c7c4e3dSmrg	m68*-cisco)
13112c7c4e3dSmrg		os=-aout
13122c7c4e3dSmrg		;;
13132c7c4e3dSmrg	mips*-cisco)
13142c7c4e3dSmrg		os=-elf
13152c7c4e3dSmrg		;;
13162c7c4e3dSmrg	mips*-*)
13172c7c4e3dSmrg		os=-elf
13182c7c4e3dSmrg		;;
13192c7c4e3dSmrg	or32-*)
13202c7c4e3dSmrg		os=-coff
13212c7c4e3dSmrg		;;
13222c7c4e3dSmrg	*-tti)	# must be before sparc entry or we get the wrong os.
13232c7c4e3dSmrg		os=-sysv3
13242c7c4e3dSmrg		;;
13252c7c4e3dSmrg	sparc-* | *-sun)
13262c7c4e3dSmrg		os=-sunos4.1.1
13272c7c4e3dSmrg		;;
13282c7c4e3dSmrg	*-be)
13292c7c4e3dSmrg		os=-beos
13302c7c4e3dSmrg		;;
13312c7c4e3dSmrg	*-ibm)
13322c7c4e3dSmrg		os=-aix
13332c7c4e3dSmrg		;;
13342c7c4e3dSmrg	*-wec)
13352c7c4e3dSmrg		os=-proelf
13362c7c4e3dSmrg		;;
13372c7c4e3dSmrg	*-winbond)
13382c7c4e3dSmrg		os=-proelf
13392c7c4e3dSmrg		;;
13402c7c4e3dSmrg	*-oki)
13412c7c4e3dSmrg		os=-proelf
13422c7c4e3dSmrg		;;
13432c7c4e3dSmrg	*-hp)
13442c7c4e3dSmrg		os=-hpux
13452c7c4e3dSmrg		;;
13462c7c4e3dSmrg	*-hitachi)
13472c7c4e3dSmrg		os=-hiux
13482c7c4e3dSmrg		;;
13492c7c4e3dSmrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
13502c7c4e3dSmrg		os=-sysv
13512c7c4e3dSmrg		;;
13522c7c4e3dSmrg	*-cbm)
13532c7c4e3dSmrg		os=-amigaos
13542c7c4e3dSmrg		;;
13552c7c4e3dSmrg	*-dg)
13562c7c4e3dSmrg		os=-dgux
13572c7c4e3dSmrg		;;
13582c7c4e3dSmrg	*-dolphin)
13592c7c4e3dSmrg		os=-sysv3
13602c7c4e3dSmrg		;;
13612c7c4e3dSmrg	m68k-ccur)
13622c7c4e3dSmrg		os=-rtu
13632c7c4e3dSmrg		;;
13642c7c4e3dSmrg	m88k-omron*)
13652c7c4e3dSmrg		os=-luna
13662c7c4e3dSmrg		;;
13672c7c4e3dSmrg	*-next )
13682c7c4e3dSmrg		os=-nextstep
13692c7c4e3dSmrg		;;
13702c7c4e3dSmrg	*-sequent)
13712c7c4e3dSmrg		os=-ptx
13722c7c4e3dSmrg		;;
13732c7c4e3dSmrg	*-crds)
13742c7c4e3dSmrg		os=-unos
13752c7c4e3dSmrg		;;
13762c7c4e3dSmrg	*-ns)
13772c7c4e3dSmrg		os=-genix
13782c7c4e3dSmrg		;;
13792c7c4e3dSmrg	i370-*)
13802c7c4e3dSmrg		os=-mvs
13812c7c4e3dSmrg		;;
13822c7c4e3dSmrg	*-next)
13832c7c4e3dSmrg		os=-nextstep3
13842c7c4e3dSmrg		;;
13852c7c4e3dSmrg	*-gould)
13862c7c4e3dSmrg		os=-sysv
13872c7c4e3dSmrg		;;
13882c7c4e3dSmrg	*-highlevel)
13892c7c4e3dSmrg		os=-bsd
13902c7c4e3dSmrg		;;
13912c7c4e3dSmrg	*-encore)
13922c7c4e3dSmrg		os=-bsd
13932c7c4e3dSmrg		;;
13942c7c4e3dSmrg	*-sgi)
13952c7c4e3dSmrg		os=-irix
13962c7c4e3dSmrg		;;
13972c7c4e3dSmrg	*-siemens)
13982c7c4e3dSmrg		os=-sysv4
13992c7c4e3dSmrg		;;
14002c7c4e3dSmrg	*-masscomp)
14012c7c4e3dSmrg		os=-rtu
14022c7c4e3dSmrg		;;
14032c7c4e3dSmrg	f30[01]-fujitsu | f700-fujitsu)
14042c7c4e3dSmrg		os=-uxpv
14052c7c4e3dSmrg		;;
14062c7c4e3dSmrg	*-rom68k)
14072c7c4e3dSmrg		os=-coff
14082c7c4e3dSmrg		;;
14092c7c4e3dSmrg	*-*bug)
14102c7c4e3dSmrg		os=-coff
14112c7c4e3dSmrg		;;
14122c7c4e3dSmrg	*-apple)
14132c7c4e3dSmrg		os=-macos
14142c7c4e3dSmrg		;;
14152c7c4e3dSmrg	*-atari*)
14162c7c4e3dSmrg		os=-mint
14172c7c4e3dSmrg		;;
14182c7c4e3dSmrg	*)
14192c7c4e3dSmrg		os=-none
14202c7c4e3dSmrg		;;
14212c7c4e3dSmrgesac
14222c7c4e3dSmrgfi
14232c7c4e3dSmrg
14242c7c4e3dSmrg# Here we handle the case where we know the os, and the CPU type, but not the
14252c7c4e3dSmrg# manufacturer.  We pick the logical manufacturer.
14262c7c4e3dSmrgvendor=unknown
14272c7c4e3dSmrgcase $basic_machine in
14282c7c4e3dSmrg	*-unknown)
14292c7c4e3dSmrg		case $os in
14302c7c4e3dSmrg			-riscix*)
14312c7c4e3dSmrg				vendor=acorn
14322c7c4e3dSmrg				;;
14332c7c4e3dSmrg			-sunos*)
14342c7c4e3dSmrg				vendor=sun
14352c7c4e3dSmrg				;;
14362c7c4e3dSmrg			-aix*)
14372c7c4e3dSmrg				vendor=ibm
14382c7c4e3dSmrg				;;
14392c7c4e3dSmrg			-beos*)
14402c7c4e3dSmrg				vendor=be
14412c7c4e3dSmrg				;;
14422c7c4e3dSmrg			-hpux*)
14432c7c4e3dSmrg				vendor=hp
14442c7c4e3dSmrg				;;
14452c7c4e3dSmrg			-mpeix*)
14462c7c4e3dSmrg				vendor=hp
14472c7c4e3dSmrg				;;
14482c7c4e3dSmrg			-hiux*)
14492c7c4e3dSmrg				vendor=hitachi
14502c7c4e3dSmrg				;;
14512c7c4e3dSmrg			-unos*)
14522c7c4e3dSmrg				vendor=crds
14532c7c4e3dSmrg				;;
14542c7c4e3dSmrg			-dgux*)
14552c7c4e3dSmrg				vendor=dg
14562c7c4e3dSmrg				;;
14572c7c4e3dSmrg			-luna*)
14582c7c4e3dSmrg				vendor=omron
14592c7c4e3dSmrg				;;
14602c7c4e3dSmrg			-genix*)
14612c7c4e3dSmrg				vendor=ns
14622c7c4e3dSmrg				;;
14632c7c4e3dSmrg			-mvs* | -opened*)
14642c7c4e3dSmrg				vendor=ibm
14652c7c4e3dSmrg				;;
14662c7c4e3dSmrg			-ptx*)
14672c7c4e3dSmrg				vendor=sequent
14682c7c4e3dSmrg				;;
14692c7c4e3dSmrg			-vxsim* | -vxworks* | -windiss*)
14702c7c4e3dSmrg				vendor=wrs
14712c7c4e3dSmrg				;;
14722c7c4e3dSmrg			-aux*)
14732c7c4e3dSmrg				vendor=apple
14742c7c4e3dSmrg				;;
14752c7c4e3dSmrg			-hms*)
14762c7c4e3dSmrg				vendor=hitachi
14772c7c4e3dSmrg				;;
14782c7c4e3dSmrg			-mpw* | -macos*)
14792c7c4e3dSmrg				vendor=apple
14802c7c4e3dSmrg				;;
14812c7c4e3dSmrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
14822c7c4e3dSmrg				vendor=atari
14832c7c4e3dSmrg				;;
14842c7c4e3dSmrg			-vos*)
14852c7c4e3dSmrg				vendor=stratus
14862c7c4e3dSmrg				;;
14872c7c4e3dSmrg		esac
14882c7c4e3dSmrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
14892c7c4e3dSmrg		;;
14902c7c4e3dSmrgesac
14912c7c4e3dSmrg
14922c7c4e3dSmrgecho $basic_machine$os
14932c7c4e3dSmrgexit 0
14942c7c4e3dSmrg
14952c7c4e3dSmrg# Local variables:
14962c7c4e3dSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
14972c7c4e3dSmrg# time-stamp-start: "timestamp='"
14982c7c4e3dSmrg# time-stamp-format: "%:y-%02m-%02d"
14992c7c4e3dSmrg# time-stamp-end: "'"
15002c7c4e3dSmrg# End:
1501