config.sub revision 4fbc8bde
129459361Smrg#! /bin/sh
229459361Smrg# Configuration validation subroutine script.
329459361Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
44fbc8bdeSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
547202d7bSmrg#   Free Software Foundation, Inc.
629459361Smrg
74fbc8bdeSmrgtimestamp='2010-09-11'
829459361Smrg
929459361Smrg# This file is (in principle) common to ALL GNU software.
1029459361Smrg# The presence of a machine in this file suggests that SOME GNU software
1129459361Smrg# can handle that machine.  It does not imply ALL GNU software can.
1229459361Smrg#
1329459361Smrg# This file is free software; you can redistribute it and/or modify
1429459361Smrg# it under the terms of the GNU General Public License as published by
1529459361Smrg# the Free Software Foundation; either version 2 of the License, or
1629459361Smrg# (at your option) any later version.
1729459361Smrg#
1829459361Smrg# This program is distributed in the hope that it will be useful,
1929459361Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
2029459361Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2129459361Smrg# GNU General Public License for more details.
2229459361Smrg#
2329459361Smrg# You should have received a copy of the GNU General Public License
2429459361Smrg# along with this program; if not, write to the Free Software
2529459361Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
2629459361Smrg# 02110-1301, USA.
2729459361Smrg#
2829459361Smrg# As a special exception to the GNU General Public License, if you
2929459361Smrg# distribute this file as part of a program that contains a
3029459361Smrg# configuration script generated by Autoconf, you may include it under
3129459361Smrg# the same distribution terms that you use for the rest of that program.
3229459361Smrg
3329459361Smrg
3429459361Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
354fbc8bdeSmrg# diff and a properly formatted GNU ChangeLog entry.
3629459361Smrg#
3729459361Smrg# Configuration subroutine to validate and canonicalize a configuration type.
3829459361Smrg# Supply the specified configuration type as an argument.
3929459361Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
4029459361Smrg# Otherwise, we print the canonical config type on stdout and succeed.
4129459361Smrg
424fbc8bdeSmrg# You can get the latest version of this script from:
434fbc8bdeSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
444fbc8bdeSmrg
4529459361Smrg# This file is supposed to be the same for all GNU packages
4629459361Smrg# and recognize all the CPU types, system types and aliases
4729459361Smrg# that are meaningful with *any* GNU software.
4829459361Smrg# Each package is responsible for reporting which valid configurations
4929459361Smrg# it does not support.  The user should be able to distinguish
5029459361Smrg# a failure to support a valid configuration from a meaningless
5129459361Smrg# configuration.
5229459361Smrg
5329459361Smrg# The goal of this file is to map all the various variations of a given
5429459361Smrg# machine specification into a single specification in the form:
5529459361Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
5629459361Smrg# or in some cases, the newer four-part form:
5729459361Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
5829459361Smrg# It is wrong to echo any other type of specification.
5929459361Smrg
6029459361Smrgme=`echo "$0" | sed -e 's,.*/,,'`
6129459361Smrg
6229459361Smrgusage="\
6329459361SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
6429459361Smrg       $0 [OPTION] ALIAS
6529459361Smrg
6629459361SmrgCanonicalize a configuration name.
6729459361Smrg
6829459361SmrgOperation modes:
6929459361Smrg  -h, --help         print this help, then exit
7029459361Smrg  -t, --time-stamp   print date of last modification, then exit
7129459361Smrg  -v, --version      print version number, then exit
7229459361Smrg
7329459361SmrgReport bugs and patches to <config-patches@gnu.org>."
7429459361Smrg
7529459361Smrgversion="\
7629459361SmrgGNU config.sub ($timestamp)
7729459361Smrg
784fbc8bdeSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
794fbc8bdeSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
804fbc8bdeSmrgSoftware Foundation, Inc.
8129459361Smrg
8229459361SmrgThis is free software; see the source for copying conditions.  There is NO
8329459361Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
8429459361Smrg
8529459361Smrghelp="
8629459361SmrgTry \`$me --help' for more information."
8729459361Smrg
8829459361Smrg# Parse command line
8929459361Smrgwhile test $# -gt 0 ; do
9029459361Smrg  case $1 in
9129459361Smrg    --time-stamp | --time* | -t )
9229459361Smrg       echo "$timestamp" ; exit ;;
9329459361Smrg    --version | -v )
9429459361Smrg       echo "$version" ; exit ;;
9529459361Smrg    --help | --h* | -h )
9629459361Smrg       echo "$usage"; exit ;;
9729459361Smrg    -- )     # Stop option processing
9829459361Smrg       shift; break ;;
9929459361Smrg    - )	# Use stdin as input.
10029459361Smrg       break ;;
10129459361Smrg    -* )
10229459361Smrg       echo "$me: invalid option $1$help"
10329459361Smrg       exit 1 ;;
10429459361Smrg
10529459361Smrg    *local*)
10629459361Smrg       # First pass through any local machine types.
10729459361Smrg       echo $1
10829459361Smrg       exit ;;
10929459361Smrg
11029459361Smrg    * )
11129459361Smrg       break ;;
11229459361Smrg  esac
11329459361Smrgdone
11429459361Smrg
11529459361Smrgcase $# in
11629459361Smrg 0) echo "$me: missing argument$help" >&2
11729459361Smrg    exit 1;;
11829459361Smrg 1) ;;
11929459361Smrg *) echo "$me: too many arguments$help" >&2
12029459361Smrg    exit 1;;
12129459361Smrgesac
12229459361Smrg
12329459361Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
12429459361Smrg# Here we must recognize all the valid KERNEL-OS combinations.
12529459361Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
12629459361Smrgcase $maybe_os in
1274fbc8bdeSmrg  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
1284fbc8bdeSmrg  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
1294fbc8bdeSmrg  knetbsd*-gnu* | netbsd*-gnu* | \
13047202d7bSmrg  kopensolaris*-gnu* | \
13129459361Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
13229459361Smrg    os=-$maybe_os
13329459361Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
13429459361Smrg    ;;
13529459361Smrg  *)
13629459361Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
13729459361Smrg    if [ $basic_machine != $1 ]
13829459361Smrg    then os=`echo $1 | sed 's/.*-/-/'`
13929459361Smrg    else os=; fi
14029459361Smrg    ;;
14129459361Smrgesac
14229459361Smrg
14329459361Smrg### Let's recognize common machines as not being operating systems so
14429459361Smrg### that things like config.sub decstation-3100 work.  We also
14529459361Smrg### recognize some manufacturers as not being operating systems, so we
14629459361Smrg### can provide default operating systems below.
14729459361Smrgcase $os in
14829459361Smrg	-sun*os*)
14929459361Smrg		# Prevent following clause from handling this invalid input.
15029459361Smrg		;;
15129459361Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
15229459361Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
15329459361Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
15429459361Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
15529459361Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
15629459361Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1574fbc8bdeSmrg	-apple | -axis | -knuth | -cray | -microblaze)
15829459361Smrg		os=
15929459361Smrg		basic_machine=$1
16029459361Smrg		;;
1614fbc8bdeSmrg        -bluegene*)
1624fbc8bdeSmrg	        os=-cnk
1634fbc8bdeSmrg		;;
16429459361Smrg	-sim | -cisco | -oki | -wec | -winbond)
16529459361Smrg		os=
16629459361Smrg		basic_machine=$1
16729459361Smrg		;;
16829459361Smrg	-scout)
16929459361Smrg		;;
17029459361Smrg	-wrs)
17129459361Smrg		os=-vxworks
17229459361Smrg		basic_machine=$1
17329459361Smrg		;;
17429459361Smrg	-chorusos*)
17529459361Smrg		os=-chorusos
17629459361Smrg		basic_machine=$1
17729459361Smrg		;;
17829459361Smrg 	-chorusrdb)
17929459361Smrg 		os=-chorusrdb
18029459361Smrg		basic_machine=$1
18129459361Smrg 		;;
18229459361Smrg	-hiux*)
18329459361Smrg		os=-hiuxwe2
18429459361Smrg		;;
18529459361Smrg	-sco6)
18629459361Smrg		os=-sco5v6
18729459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
18829459361Smrg		;;
18929459361Smrg	-sco5)
19029459361Smrg		os=-sco3.2v5
19129459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19229459361Smrg		;;
19329459361Smrg	-sco4)
19429459361Smrg		os=-sco3.2v4
19529459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19629459361Smrg		;;
19729459361Smrg	-sco3.2.[4-9]*)
19829459361Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
19929459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20029459361Smrg		;;
20129459361Smrg	-sco3.2v[4-9]*)
20229459361Smrg		# Don't forget version if it is 3.2v4 or newer.
20329459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20429459361Smrg		;;
20529459361Smrg	-sco5v6*)
20629459361Smrg		# Don't forget version if it is 3.2v4 or newer.
20729459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20829459361Smrg		;;
20929459361Smrg	-sco*)
21029459361Smrg		os=-sco3.2v2
21129459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21229459361Smrg		;;
21329459361Smrg	-udk*)
21429459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21529459361Smrg		;;
21629459361Smrg	-isc)
21729459361Smrg		os=-isc2.2
21829459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21929459361Smrg		;;
22029459361Smrg	-clix*)
22129459361Smrg		basic_machine=clipper-intergraph
22229459361Smrg		;;
22329459361Smrg	-isc*)
22429459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
22529459361Smrg		;;
22629459361Smrg	-lynx*)
22729459361Smrg		os=-lynxos
22829459361Smrg		;;
22929459361Smrg	-ptx*)
23029459361Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
23129459361Smrg		;;
23229459361Smrg	-windowsnt*)
23329459361Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
23429459361Smrg		;;
23529459361Smrg	-psos*)
23629459361Smrg		os=-psos
23729459361Smrg		;;
23829459361Smrg	-mint | -mint[0-9]*)
23929459361Smrg		basic_machine=m68k-atari
24029459361Smrg		os=-mint
24129459361Smrg		;;
24229459361Smrgesac
24329459361Smrg
24429459361Smrg# Decode aliases for certain CPU-COMPANY combinations.
24529459361Smrgcase $basic_machine in
24629459361Smrg	# Recognize the basic CPU types without company name.
24729459361Smrg	# Some are omitted here because they have special meanings below.
24829459361Smrg	1750a | 580 \
24929459361Smrg	| a29k \
25029459361Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
25129459361Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
25229459361Smrg	| am33_2.0 \
25329459361Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
25429459361Smrg	| bfin \
25529459361Smrg	| c4x | clipper \
25629459361Smrg	| d10v | d30v | dlx | dsp16xx \
25729459361Smrg	| fido | fr30 | frv \
25829459361Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
25929459361Smrg	| i370 | i860 | i960 | ia64 \
26029459361Smrg	| ip2k | iq2000 \
26147202d7bSmrg	| lm32 \
26229459361Smrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
26347202d7bSmrg	| maxq | mb | microblaze | mcore | mep | metag \
26429459361Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
26529459361Smrg	| mips16 \
26629459361Smrg	| mips64 | mips64el \
26747202d7bSmrg	| mips64octeon | mips64octeonel \
26829459361Smrg	| mips64orion | mips64orionel \
26947202d7bSmrg	| mips64r5900 | mips64r5900el \
27047202d7bSmrg	| mips64vr | mips64vrel \
27129459361Smrg	| mips64vr4100 | mips64vr4100el \
27229459361Smrg	| mips64vr4300 | mips64vr4300el \
27329459361Smrg	| mips64vr5000 | mips64vr5000el \
27429459361Smrg	| mips64vr5900 | mips64vr5900el \
27529459361Smrg	| mipsisa32 | mipsisa32el \
27629459361Smrg	| mipsisa32r2 | mipsisa32r2el \
27729459361Smrg	| mipsisa64 | mipsisa64el \
27829459361Smrg	| mipsisa64r2 | mipsisa64r2el \
27929459361Smrg	| mipsisa64sb1 | mipsisa64sb1el \
28029459361Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
28129459361Smrg	| mipstx39 | mipstx39el \
28229459361Smrg	| mn10200 | mn10300 \
28347202d7bSmrg	| moxie \
28429459361Smrg	| mt \
28529459361Smrg	| msp430 \
2864fbc8bdeSmrg	| nds32 | nds32le | nds32be \
28729459361Smrg	| nios | nios2 \
28829459361Smrg	| ns16k | ns32k \
28929459361Smrg	| or32 \
29029459361Smrg	| pdp10 | pdp11 | pj | pjl \
29129459361Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
29229459361Smrg	| pyramid \
2934fbc8bdeSmrg	| rx \
29429459361Smrg	| score \
29547202d7bSmrg	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
29629459361Smrg	| sh64 | sh64le \
29729459361Smrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
29829459361Smrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
29929459361Smrg	| spu | strongarm \
3004fbc8bdeSmrg	| tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
3014fbc8bdeSmrg	| ubicom32 \
30229459361Smrg	| v850 | v850e \
30329459361Smrg	| we32k \
30429459361Smrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
30547202d7bSmrg	| z8k | z80)
30629459361Smrg		basic_machine=$basic_machine-unknown
30729459361Smrg		;;
3084fbc8bdeSmrg	c54x)
3094fbc8bdeSmrg		basic_machine=tic54x-unknown
3104fbc8bdeSmrg		;;
3114fbc8bdeSmrg	c55x)
3124fbc8bdeSmrg		basic_machine=tic55x-unknown
3134fbc8bdeSmrg		;;
3144fbc8bdeSmrg	c6x)
3154fbc8bdeSmrg		basic_machine=tic6x-unknown
3164fbc8bdeSmrg		;;
3174fbc8bdeSmrg	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
31829459361Smrg		# Motorola 68HC11/12.
31929459361Smrg		basic_machine=$basic_machine-unknown
32029459361Smrg		os=-none
32129459361Smrg		;;
32229459361Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
32329459361Smrg		;;
32429459361Smrg	ms1)
32529459361Smrg		basic_machine=mt-unknown
32629459361Smrg		;;
32729459361Smrg
32829459361Smrg	# We use `pc' rather than `unknown'
32929459361Smrg	# because (1) that's what they normally are, and
33029459361Smrg	# (2) the word "unknown" tends to confuse beginning users.
33129459361Smrg	i*86 | x86_64)
33229459361Smrg	  basic_machine=$basic_machine-pc
33329459361Smrg	  ;;
33429459361Smrg	# Object if more than one company name word.
33529459361Smrg	*-*-*)
33629459361Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
33729459361Smrg		exit 1
33829459361Smrg		;;
33929459361Smrg	# Recognize the basic CPU types with company name.
34029459361Smrg	580-* \
34129459361Smrg	| a29k-* \
34229459361Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
34329459361Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
34429459361Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
34529459361Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
34629459361Smrg	| avr-* | avr32-* \
34729459361Smrg	| bfin-* | bs2000-* \
3484fbc8bdeSmrg	| c[123]* | c30-* | [cjt]90-* | c4x-* \
34929459361Smrg	| clipper-* | craynv-* | cydra-* \
35029459361Smrg	| d10v-* | d30v-* | dlx-* \
35129459361Smrg	| elxsi-* \
35229459361Smrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
35329459361Smrg	| h8300-* | h8500-* \
35429459361Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
35529459361Smrg	| i*86-* | i860-* | i960-* | ia64-* \
35629459361Smrg	| ip2k-* | iq2000-* \
35747202d7bSmrg	| lm32-* \
35829459361Smrg	| m32c-* | m32r-* | m32rle-* \
35929459361Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3604fbc8bdeSmrg	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
36129459361Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
36229459361Smrg	| mips16-* \
36329459361Smrg	| mips64-* | mips64el-* \
36447202d7bSmrg	| mips64octeon-* | mips64octeonel-* \
36529459361Smrg	| mips64orion-* | mips64orionel-* \
36647202d7bSmrg	| mips64r5900-* | mips64r5900el-* \
36747202d7bSmrg	| mips64vr-* | mips64vrel-* \
36829459361Smrg	| mips64vr4100-* | mips64vr4100el-* \
36929459361Smrg	| mips64vr4300-* | mips64vr4300el-* \
37029459361Smrg	| mips64vr5000-* | mips64vr5000el-* \
37129459361Smrg	| mips64vr5900-* | mips64vr5900el-* \
37229459361Smrg	| mipsisa32-* | mipsisa32el-* \
37329459361Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
37429459361Smrg	| mipsisa64-* | mipsisa64el-* \
37529459361Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
37629459361Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
37729459361Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
37829459361Smrg	| mipstx39-* | mipstx39el-* \
37929459361Smrg	| mmix-* \
38029459361Smrg	| mt-* \
38129459361Smrg	| msp430-* \
3824fbc8bdeSmrg	| nds32-* | nds32le-* | nds32be-* \
38329459361Smrg	| nios-* | nios2-* \
38429459361Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
38529459361Smrg	| orion-* \
38629459361Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
38729459361Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
38829459361Smrg	| pyramid-* \
3894fbc8bdeSmrg	| romp-* | rs6000-* | rx-* \
39047202d7bSmrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
39129459361Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
39229459361Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
39329459361Smrg	| sparclite-* \
39429459361Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
39529459361Smrg	| tahoe-* | thumb-* \
3964fbc8bdeSmrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
3974fbc8bdeSmrg	| tile-* | tilegx-* \
39829459361Smrg	| tron-* \
3994fbc8bdeSmrg	| ubicom32-* \
40029459361Smrg	| v850-* | v850e-* | vax-* \
40129459361Smrg	| we32k-* \
40229459361Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
40347202d7bSmrg	| xstormy16-* | xtensa*-* \
40429459361Smrg	| ymp-* \
40547202d7bSmrg	| z8k-* | z80-*)
40647202d7bSmrg		;;
40747202d7bSmrg	# Recognize the basic CPU types without company name, with glob match.
40847202d7bSmrg	xtensa*)
40947202d7bSmrg		basic_machine=$basic_machine-unknown
41029459361Smrg		;;
41129459361Smrg	# Recognize the various machine names and aliases which stand
41229459361Smrg	# for a CPU type and a company and sometimes even an OS.
41329459361Smrg	386bsd)
41429459361Smrg		basic_machine=i386-unknown
41529459361Smrg		os=-bsd
41629459361Smrg		;;
41729459361Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
41829459361Smrg		basic_machine=m68000-att
41929459361Smrg		;;
42029459361Smrg	3b*)
42129459361Smrg		basic_machine=we32k-att
42229459361Smrg		;;
42329459361Smrg	a29khif)
42429459361Smrg		basic_machine=a29k-amd
42529459361Smrg		os=-udi
42629459361Smrg		;;
42729459361Smrg    	abacus)
42829459361Smrg		basic_machine=abacus-unknown
42929459361Smrg		;;
43029459361Smrg	adobe68k)
43129459361Smrg		basic_machine=m68010-adobe
43229459361Smrg		os=-scout
43329459361Smrg		;;
43429459361Smrg	alliant | fx80)
43529459361Smrg		basic_machine=fx80-alliant
43629459361Smrg		;;
43729459361Smrg	altos | altos3068)
43829459361Smrg		basic_machine=m68k-altos
43929459361Smrg		;;
44029459361Smrg	am29k)
44129459361Smrg		basic_machine=a29k-none
44229459361Smrg		os=-bsd
44329459361Smrg		;;
44429459361Smrg	amd64)
44529459361Smrg		basic_machine=x86_64-pc
44629459361Smrg		;;
44729459361Smrg	amd64-*)
44829459361Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
44929459361Smrg		;;
45029459361Smrg	amdahl)
45129459361Smrg		basic_machine=580-amdahl
45229459361Smrg		os=-sysv
45329459361Smrg		;;
45429459361Smrg	amiga | amiga-*)
45529459361Smrg		basic_machine=m68k-unknown
45629459361Smrg		;;
45729459361Smrg	amigaos | amigados)
45829459361Smrg		basic_machine=m68k-unknown
45929459361Smrg		os=-amigaos
46029459361Smrg		;;
46129459361Smrg	amigaunix | amix)
46229459361Smrg		basic_machine=m68k-unknown
46329459361Smrg		os=-sysv4
46429459361Smrg		;;
46529459361Smrg	apollo68)
46629459361Smrg		basic_machine=m68k-apollo
46729459361Smrg		os=-sysv
46829459361Smrg		;;
46929459361Smrg	apollo68bsd)
47029459361Smrg		basic_machine=m68k-apollo
47129459361Smrg		os=-bsd
47229459361Smrg		;;
47347202d7bSmrg	aros)
47447202d7bSmrg		basic_machine=i386-pc
47547202d7bSmrg		os=-aros
47647202d7bSmrg		;;
47729459361Smrg	aux)
47829459361Smrg		basic_machine=m68k-apple
47929459361Smrg		os=-aux
48029459361Smrg		;;
48129459361Smrg	balance)
48229459361Smrg		basic_machine=ns32k-sequent
48329459361Smrg		os=-dynix
48429459361Smrg		;;
48547202d7bSmrg	blackfin)
48647202d7bSmrg		basic_machine=bfin-unknown
48747202d7bSmrg		os=-linux
48847202d7bSmrg		;;
48947202d7bSmrg	blackfin-*)
49047202d7bSmrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
49147202d7bSmrg		os=-linux
49247202d7bSmrg		;;
4934fbc8bdeSmrg	bluegene*)
4944fbc8bdeSmrg		basic_machine=powerpc-ibm
4954fbc8bdeSmrg		os=-cnk
4964fbc8bdeSmrg		;;
4974fbc8bdeSmrg	c54x-*)
4984fbc8bdeSmrg		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
4994fbc8bdeSmrg		;;
5004fbc8bdeSmrg	c55x-*)
5014fbc8bdeSmrg		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
5024fbc8bdeSmrg		;;
5034fbc8bdeSmrg	c6x-*)
5044fbc8bdeSmrg		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
5054fbc8bdeSmrg		;;
50629459361Smrg	c90)
50729459361Smrg		basic_machine=c90-cray
50829459361Smrg		os=-unicos
50929459361Smrg		;;
51047202d7bSmrg        cegcc)
51147202d7bSmrg		basic_machine=arm-unknown
51247202d7bSmrg		os=-cegcc
51347202d7bSmrg		;;
51429459361Smrg	convex-c1)
51529459361Smrg		basic_machine=c1-convex
51629459361Smrg		os=-bsd
51729459361Smrg		;;
51829459361Smrg	convex-c2)
51929459361Smrg		basic_machine=c2-convex
52029459361Smrg		os=-bsd
52129459361Smrg		;;
52229459361Smrg	convex-c32)
52329459361Smrg		basic_machine=c32-convex
52429459361Smrg		os=-bsd
52529459361Smrg		;;
52629459361Smrg	convex-c34)
52729459361Smrg		basic_machine=c34-convex
52829459361Smrg		os=-bsd
52929459361Smrg		;;
53029459361Smrg	convex-c38)
53129459361Smrg		basic_machine=c38-convex
53229459361Smrg		os=-bsd
53329459361Smrg		;;
53429459361Smrg	cray | j90)
53529459361Smrg		basic_machine=j90-cray
53629459361Smrg		os=-unicos
53729459361Smrg		;;
53829459361Smrg	craynv)
53929459361Smrg		basic_machine=craynv-cray
54029459361Smrg		os=-unicosmp
54129459361Smrg		;;
54247202d7bSmrg	cr16)
54347202d7bSmrg		basic_machine=cr16-unknown
54429459361Smrg		os=-elf
54529459361Smrg		;;
54629459361Smrg	crds | unos)
54729459361Smrg		basic_machine=m68k-crds
54829459361Smrg		;;
54929459361Smrg	crisv32 | crisv32-* | etraxfs*)
55029459361Smrg		basic_machine=crisv32-axis
55129459361Smrg		;;
55229459361Smrg	cris | cris-* | etrax*)
55329459361Smrg		basic_machine=cris-axis
55429459361Smrg		;;
55529459361Smrg	crx)
55629459361Smrg		basic_machine=crx-unknown
55729459361Smrg		os=-elf
55829459361Smrg		;;
55929459361Smrg	da30 | da30-*)
56029459361Smrg		basic_machine=m68k-da30
56129459361Smrg		;;
56229459361Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
56329459361Smrg		basic_machine=mips-dec
56429459361Smrg		;;
56529459361Smrg	decsystem10* | dec10*)
56629459361Smrg		basic_machine=pdp10-dec
56729459361Smrg		os=-tops10
56829459361Smrg		;;
56929459361Smrg	decsystem20* | dec20*)
57029459361Smrg		basic_machine=pdp10-dec
57129459361Smrg		os=-tops20
57229459361Smrg		;;
57329459361Smrg	delta | 3300 | motorola-3300 | motorola-delta \
57429459361Smrg	      | 3300-motorola | delta-motorola)
57529459361Smrg		basic_machine=m68k-motorola
57629459361Smrg		;;
57729459361Smrg	delta88)
57829459361Smrg		basic_machine=m88k-motorola
57929459361Smrg		os=-sysv3
58029459361Smrg		;;
58147202d7bSmrg	dicos)
58247202d7bSmrg		basic_machine=i686-pc
58347202d7bSmrg		os=-dicos
58447202d7bSmrg		;;
58529459361Smrg	djgpp)
58629459361Smrg		basic_machine=i586-pc
58729459361Smrg		os=-msdosdjgpp
58829459361Smrg		;;
58929459361Smrg	dpx20 | dpx20-*)
59029459361Smrg		basic_machine=rs6000-bull
59129459361Smrg		os=-bosx
59229459361Smrg		;;
59329459361Smrg	dpx2* | dpx2*-bull)
59429459361Smrg		basic_machine=m68k-bull
59529459361Smrg		os=-sysv3
59629459361Smrg		;;
59729459361Smrg	ebmon29k)
59829459361Smrg		basic_machine=a29k-amd
59929459361Smrg		os=-ebmon
60029459361Smrg		;;
60129459361Smrg	elxsi)
60229459361Smrg		basic_machine=elxsi-elxsi
60329459361Smrg		os=-bsd
60429459361Smrg		;;
60529459361Smrg	encore | umax | mmax)
60629459361Smrg		basic_machine=ns32k-encore
60729459361Smrg		;;
60829459361Smrg	es1800 | OSE68k | ose68k | ose | OSE)
60929459361Smrg		basic_machine=m68k-ericsson
61029459361Smrg		os=-ose
61129459361Smrg		;;
61229459361Smrg	fx2800)
61329459361Smrg		basic_machine=i860-alliant
61429459361Smrg		;;
61529459361Smrg	genix)
61629459361Smrg		basic_machine=ns32k-ns
61729459361Smrg		;;
61829459361Smrg	gmicro)
61929459361Smrg		basic_machine=tron-gmicro
62029459361Smrg		os=-sysv
62129459361Smrg		;;
62229459361Smrg	go32)
62329459361Smrg		basic_machine=i386-pc
62429459361Smrg		os=-go32
62529459361Smrg		;;
62629459361Smrg	h3050r* | hiux*)
62729459361Smrg		basic_machine=hppa1.1-hitachi
62829459361Smrg		os=-hiuxwe2
62929459361Smrg		;;
63029459361Smrg	h8300hms)
63129459361Smrg		basic_machine=h8300-hitachi
63229459361Smrg		os=-hms
63329459361Smrg		;;
63429459361Smrg	h8300xray)
63529459361Smrg		basic_machine=h8300-hitachi
63629459361Smrg		os=-xray
63729459361Smrg		;;
63829459361Smrg	h8500hms)
63929459361Smrg		basic_machine=h8500-hitachi
64029459361Smrg		os=-hms
64129459361Smrg		;;
64229459361Smrg	harris)
64329459361Smrg		basic_machine=m88k-harris
64429459361Smrg		os=-sysv3
64529459361Smrg		;;
64629459361Smrg	hp300-*)
64729459361Smrg		basic_machine=m68k-hp
64829459361Smrg		;;
64929459361Smrg	hp300bsd)
65029459361Smrg		basic_machine=m68k-hp
65129459361Smrg		os=-bsd
65229459361Smrg		;;
65329459361Smrg	hp300hpux)
65429459361Smrg		basic_machine=m68k-hp
65529459361Smrg		os=-hpux
65629459361Smrg		;;
65729459361Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
65829459361Smrg		basic_machine=hppa1.0-hp
65929459361Smrg		;;
66029459361Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
66129459361Smrg		basic_machine=m68000-hp
66229459361Smrg		;;
66329459361Smrg	hp9k3[2-9][0-9])
66429459361Smrg		basic_machine=m68k-hp
66529459361Smrg		;;
66629459361Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
66729459361Smrg		basic_machine=hppa1.0-hp
66829459361Smrg		;;
66929459361Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
67029459361Smrg		basic_machine=hppa1.1-hp
67129459361Smrg		;;
67229459361Smrg	hp9k78[0-9] | hp78[0-9])
67329459361Smrg		# FIXME: really hppa2.0-hp
67429459361Smrg		basic_machine=hppa1.1-hp
67529459361Smrg		;;
67629459361Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
67729459361Smrg		# FIXME: really hppa2.0-hp
67829459361Smrg		basic_machine=hppa1.1-hp
67929459361Smrg		;;
68029459361Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
68129459361Smrg		basic_machine=hppa1.1-hp
68229459361Smrg		;;
68329459361Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
68429459361Smrg		basic_machine=hppa1.0-hp
68529459361Smrg		;;
68629459361Smrg	hppa-next)
68729459361Smrg		os=-nextstep3
68829459361Smrg		;;
68929459361Smrg	hppaosf)
69029459361Smrg		basic_machine=hppa1.1-hp
69129459361Smrg		os=-osf
69229459361Smrg		;;
69329459361Smrg	hppro)
69429459361Smrg		basic_machine=hppa1.1-hp
69529459361Smrg		os=-proelf
69629459361Smrg		;;
69729459361Smrg	i370-ibm* | ibm*)
69829459361Smrg		basic_machine=i370-ibm
69929459361Smrg		;;
70029459361Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
70129459361Smrg	i*86v32)
70229459361Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
70329459361Smrg		os=-sysv32
70429459361Smrg		;;
70529459361Smrg	i*86v4*)
70629459361Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
70729459361Smrg		os=-sysv4
70829459361Smrg		;;
70929459361Smrg	i*86v)
71029459361Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
71129459361Smrg		os=-sysv
71229459361Smrg		;;
71329459361Smrg	i*86sol2)
71429459361Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
71529459361Smrg		os=-solaris2
71629459361Smrg		;;
71729459361Smrg	i386mach)
71829459361Smrg		basic_machine=i386-mach
71929459361Smrg		os=-mach
72029459361Smrg		;;
72129459361Smrg	i386-vsta | vsta)
72229459361Smrg		basic_machine=i386-unknown
72329459361Smrg		os=-vsta
72429459361Smrg		;;
72529459361Smrg	iris | iris4d)
72629459361Smrg		basic_machine=mips-sgi
72729459361Smrg		case $os in
72829459361Smrg		    -irix*)
72929459361Smrg			;;
73029459361Smrg		    *)
73129459361Smrg			os=-irix4
73229459361Smrg			;;
73329459361Smrg		esac
73429459361Smrg		;;
73529459361Smrg	isi68 | isi)
73629459361Smrg		basic_machine=m68k-isi
73729459361Smrg		os=-sysv
73829459361Smrg		;;
73947202d7bSmrg	m68knommu)
74047202d7bSmrg		basic_machine=m68k-unknown
74147202d7bSmrg		os=-linux
74247202d7bSmrg		;;
74347202d7bSmrg	m68knommu-*)
74447202d7bSmrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
74547202d7bSmrg		os=-linux
74647202d7bSmrg		;;
74729459361Smrg	m88k-omron*)
74829459361Smrg		basic_machine=m88k-omron
74929459361Smrg		;;
75029459361Smrg	magnum | m3230)
75129459361Smrg		basic_machine=mips-mips
75229459361Smrg		os=-sysv
75329459361Smrg		;;
75429459361Smrg	merlin)
75529459361Smrg		basic_machine=ns32k-utek
75629459361Smrg		os=-sysv
75729459361Smrg		;;
7584fbc8bdeSmrg        microblaze)
7594fbc8bdeSmrg		basic_machine=microblaze-xilinx
7604fbc8bdeSmrg		;;
76129459361Smrg	mingw32)
76229459361Smrg		basic_machine=i386-pc
76329459361Smrg		os=-mingw32
76429459361Smrg		;;
76547202d7bSmrg	mingw32ce)
76647202d7bSmrg		basic_machine=arm-unknown
76747202d7bSmrg		os=-mingw32ce
76847202d7bSmrg		;;
76929459361Smrg	miniframe)
77029459361Smrg		basic_machine=m68000-convergent
77129459361Smrg		;;
77229459361Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
77329459361Smrg		basic_machine=m68k-atari
77429459361Smrg		os=-mint
77529459361Smrg		;;
77629459361Smrg	mips3*-*)
77729459361Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
77829459361Smrg		;;
77929459361Smrg	mips3*)
78029459361Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
78129459361Smrg		;;
78229459361Smrg	monitor)
78329459361Smrg		basic_machine=m68k-rom68k
78429459361Smrg		os=-coff
78529459361Smrg		;;
78629459361Smrg	morphos)
78729459361Smrg		basic_machine=powerpc-unknown
78829459361Smrg		os=-morphos
78929459361Smrg		;;
79029459361Smrg	msdos)
79129459361Smrg		basic_machine=i386-pc
79229459361Smrg		os=-msdos
79329459361Smrg		;;
79429459361Smrg	ms1-*)
79529459361Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
79629459361Smrg		;;
79729459361Smrg	mvs)
79829459361Smrg		basic_machine=i370-ibm
79929459361Smrg		os=-mvs
80029459361Smrg		;;
80129459361Smrg	ncr3000)
80229459361Smrg		basic_machine=i486-ncr
80329459361Smrg		os=-sysv4
80429459361Smrg		;;
80529459361Smrg	netbsd386)
80629459361Smrg		basic_machine=i386-unknown
80729459361Smrg		os=-netbsd
80829459361Smrg		;;
80929459361Smrg	netwinder)
81029459361Smrg		basic_machine=armv4l-rebel
81129459361Smrg		os=-linux
81229459361Smrg		;;
81329459361Smrg	news | news700 | news800 | news900)
81429459361Smrg		basic_machine=m68k-sony
81529459361Smrg		os=-newsos
81629459361Smrg		;;
81729459361Smrg	news1000)
81829459361Smrg		basic_machine=m68030-sony
81929459361Smrg		os=-newsos
82029459361Smrg		;;
82129459361Smrg	news-3600 | risc-news)
82229459361Smrg		basic_machine=mips-sony
82329459361Smrg		os=-newsos
82429459361Smrg		;;
82529459361Smrg	necv70)
82629459361Smrg		basic_machine=v70-nec
82729459361Smrg		os=-sysv
82829459361Smrg		;;
82929459361Smrg	next | m*-next )
83029459361Smrg		basic_machine=m68k-next
83129459361Smrg		case $os in
83229459361Smrg		    -nextstep* )
83329459361Smrg			;;
83429459361Smrg		    -ns2*)
83529459361Smrg		      os=-nextstep2
83629459361Smrg			;;
83729459361Smrg		    *)
83829459361Smrg		      os=-nextstep3
83929459361Smrg			;;
84029459361Smrg		esac
84129459361Smrg		;;
84229459361Smrg	nh3000)
84329459361Smrg		basic_machine=m68k-harris
84429459361Smrg		os=-cxux
84529459361Smrg		;;
84629459361Smrg	nh[45]000)
84729459361Smrg		basic_machine=m88k-harris
84829459361Smrg		os=-cxux
84929459361Smrg		;;
85029459361Smrg	nindy960)
85129459361Smrg		basic_machine=i960-intel
85229459361Smrg		os=-nindy
85329459361Smrg		;;
85429459361Smrg	mon960)
85529459361Smrg		basic_machine=i960-intel
85629459361Smrg		os=-mon960
85729459361Smrg		;;
85829459361Smrg	nonstopux)
85929459361Smrg		basic_machine=mips-compaq
86029459361Smrg		os=-nonstopux
86129459361Smrg		;;
86229459361Smrg	np1)
86329459361Smrg		basic_machine=np1-gould
86429459361Smrg		;;
8654fbc8bdeSmrg        neo-tandem)
8664fbc8bdeSmrg		basic_machine=neo-tandem
8674fbc8bdeSmrg		;;
8684fbc8bdeSmrg        nse-tandem)
8694fbc8bdeSmrg		basic_machine=nse-tandem
8704fbc8bdeSmrg		;;
87129459361Smrg	nsr-tandem)
87229459361Smrg		basic_machine=nsr-tandem
87329459361Smrg		;;
87429459361Smrg	op50n-* | op60c-*)
87529459361Smrg		basic_machine=hppa1.1-oki
87629459361Smrg		os=-proelf
87729459361Smrg		;;
87829459361Smrg	openrisc | openrisc-*)
87929459361Smrg		basic_machine=or32-unknown
88029459361Smrg		;;
88129459361Smrg	os400)
88229459361Smrg		basic_machine=powerpc-ibm
88329459361Smrg		os=-os400
88429459361Smrg		;;
88529459361Smrg	OSE68000 | ose68000)
88629459361Smrg		basic_machine=m68000-ericsson
88729459361Smrg		os=-ose
88829459361Smrg		;;
88929459361Smrg	os68k)
89029459361Smrg		basic_machine=m68k-none
89129459361Smrg		os=-os68k
89229459361Smrg		;;
89329459361Smrg	pa-hitachi)
89429459361Smrg		basic_machine=hppa1.1-hitachi
89529459361Smrg		os=-hiuxwe2
89629459361Smrg		;;
89729459361Smrg	paragon)
89829459361Smrg		basic_machine=i860-intel
89929459361Smrg		os=-osf
90029459361Smrg		;;
90147202d7bSmrg	parisc)
90247202d7bSmrg		basic_machine=hppa-unknown
90347202d7bSmrg		os=-linux
90447202d7bSmrg		;;
90547202d7bSmrg	parisc-*)
90647202d7bSmrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
90747202d7bSmrg		os=-linux
90847202d7bSmrg		;;
90929459361Smrg	pbd)
91029459361Smrg		basic_machine=sparc-tti
91129459361Smrg		;;
91229459361Smrg	pbb)
91329459361Smrg		basic_machine=m68k-tti
91429459361Smrg		;;
91529459361Smrg	pc532 | pc532-*)
91629459361Smrg		basic_machine=ns32k-pc532
91729459361Smrg		;;
91829459361Smrg	pc98)
91929459361Smrg		basic_machine=i386-pc
92029459361Smrg		;;
92129459361Smrg	pc98-*)
92229459361Smrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
92329459361Smrg		;;
92429459361Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
92529459361Smrg		basic_machine=i586-pc
92629459361Smrg		;;
92729459361Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
92829459361Smrg		basic_machine=i686-pc
92929459361Smrg		;;
93029459361Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
93129459361Smrg		basic_machine=i686-pc
93229459361Smrg		;;
93329459361Smrg	pentium4)
93429459361Smrg		basic_machine=i786-pc
93529459361Smrg		;;
93629459361Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
93729459361Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
93829459361Smrg		;;
93929459361Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
94029459361Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
94129459361Smrg		;;
94229459361Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
94329459361Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
94429459361Smrg		;;
94529459361Smrg	pentium4-*)
94629459361Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
94729459361Smrg		;;
94829459361Smrg	pn)
94929459361Smrg		basic_machine=pn-gould
95029459361Smrg		;;
95129459361Smrg	power)	basic_machine=power-ibm
95229459361Smrg		;;
95329459361Smrg	ppc)	basic_machine=powerpc-unknown
95429459361Smrg		;;
95529459361Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
95629459361Smrg		;;
95729459361Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
95829459361Smrg		basic_machine=powerpcle-unknown
95929459361Smrg		;;
96029459361Smrg	ppcle-* | powerpclittle-*)
96129459361Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
96229459361Smrg		;;
96329459361Smrg	ppc64)	basic_machine=powerpc64-unknown
96429459361Smrg		;;
96529459361Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
96629459361Smrg		;;
96729459361Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
96829459361Smrg		basic_machine=powerpc64le-unknown
96929459361Smrg		;;
97029459361Smrg	ppc64le-* | powerpc64little-*)
97129459361Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
97229459361Smrg		;;
97329459361Smrg	ps2)
97429459361Smrg		basic_machine=i386-ibm
97529459361Smrg		;;
97629459361Smrg	pw32)
97729459361Smrg		basic_machine=i586-unknown
97829459361Smrg		os=-pw32
97929459361Smrg		;;
98029459361Smrg	rdos)
98129459361Smrg		basic_machine=i386-pc
98229459361Smrg		os=-rdos
98329459361Smrg		;;
98429459361Smrg	rom68k)
98529459361Smrg		basic_machine=m68k-rom68k
98629459361Smrg		os=-coff
98729459361Smrg		;;
98829459361Smrg	rm[46]00)
98929459361Smrg		basic_machine=mips-siemens
99029459361Smrg		;;
99129459361Smrg	rtpc | rtpc-*)
99229459361Smrg		basic_machine=romp-ibm
99329459361Smrg		;;
99429459361Smrg	s390 | s390-*)
99529459361Smrg		basic_machine=s390-ibm
99629459361Smrg		;;
99729459361Smrg	s390x | s390x-*)
99829459361Smrg		basic_machine=s390x-ibm
99929459361Smrg		;;
100029459361Smrg	sa29200)
100129459361Smrg		basic_machine=a29k-amd
100229459361Smrg		os=-udi
100329459361Smrg		;;
100429459361Smrg	sb1)
100529459361Smrg		basic_machine=mipsisa64sb1-unknown
100629459361Smrg		;;
100729459361Smrg	sb1el)
100829459361Smrg		basic_machine=mipsisa64sb1el-unknown
100929459361Smrg		;;
101029459361Smrg	sde)
101129459361Smrg		basic_machine=mipsisa32-sde
101229459361Smrg		os=-elf
101329459361Smrg		;;
101429459361Smrg	sei)
101529459361Smrg		basic_machine=mips-sei
101629459361Smrg		os=-seiux
101729459361Smrg		;;
101829459361Smrg	sequent)
101929459361Smrg		basic_machine=i386-sequent
102029459361Smrg		;;
102129459361Smrg	sh)
102229459361Smrg		basic_machine=sh-hitachi
102329459361Smrg		os=-hms
102429459361Smrg		;;
102529459361Smrg	sh5el)
102629459361Smrg		basic_machine=sh5le-unknown
102729459361Smrg		;;
102829459361Smrg	sh64)
102929459361Smrg		basic_machine=sh64-unknown
103029459361Smrg		;;
103129459361Smrg	sparclite-wrs | simso-wrs)
103229459361Smrg		basic_machine=sparclite-wrs
103329459361Smrg		os=-vxworks
103429459361Smrg		;;
103529459361Smrg	sps7)
103629459361Smrg		basic_machine=m68k-bull
103729459361Smrg		os=-sysv2
103829459361Smrg		;;
103929459361Smrg	spur)
104029459361Smrg		basic_machine=spur-unknown
104129459361Smrg		;;
104229459361Smrg	st2000)
104329459361Smrg		basic_machine=m68k-tandem
104429459361Smrg		;;
104529459361Smrg	stratus)
104629459361Smrg		basic_machine=i860-stratus
104729459361Smrg		os=-sysv4
104829459361Smrg		;;
104929459361Smrg	sun2)
105029459361Smrg		basic_machine=m68000-sun
105129459361Smrg		;;
105229459361Smrg	sun2os3)
105329459361Smrg		basic_machine=m68000-sun
105429459361Smrg		os=-sunos3
105529459361Smrg		;;
105629459361Smrg	sun2os4)
105729459361Smrg		basic_machine=m68000-sun
105829459361Smrg		os=-sunos4
105929459361Smrg		;;
106029459361Smrg	sun3os3)
106129459361Smrg		basic_machine=m68k-sun
106229459361Smrg		os=-sunos3
106329459361Smrg		;;
106429459361Smrg	sun3os4)
106529459361Smrg		basic_machine=m68k-sun
106629459361Smrg		os=-sunos4
106729459361Smrg		;;
106829459361Smrg	sun4os3)
106929459361Smrg		basic_machine=sparc-sun
107029459361Smrg		os=-sunos3
107129459361Smrg		;;
107229459361Smrg	sun4os4)
107329459361Smrg		basic_machine=sparc-sun
107429459361Smrg		os=-sunos4
107529459361Smrg		;;
107629459361Smrg	sun4sol2)
107729459361Smrg		basic_machine=sparc-sun
107829459361Smrg		os=-solaris2
107929459361Smrg		;;
108029459361Smrg	sun3 | sun3-*)
108129459361Smrg		basic_machine=m68k-sun
108229459361Smrg		;;
108329459361Smrg	sun4)
108429459361Smrg		basic_machine=sparc-sun
108529459361Smrg		;;
108629459361Smrg	sun386 | sun386i | roadrunner)
108729459361Smrg		basic_machine=i386-sun
108829459361Smrg		;;
108929459361Smrg	sv1)
109029459361Smrg		basic_machine=sv1-cray
109129459361Smrg		os=-unicos
109229459361Smrg		;;
109329459361Smrg	symmetry)
109429459361Smrg		basic_machine=i386-sequent
109529459361Smrg		os=-dynix
109629459361Smrg		;;
109729459361Smrg	t3e)
109829459361Smrg		basic_machine=alphaev5-cray
109929459361Smrg		os=-unicos
110029459361Smrg		;;
110129459361Smrg	t90)
110229459361Smrg		basic_machine=t90-cray
110329459361Smrg		os=-unicos
110429459361Smrg		;;
11054fbc8bdeSmrg        # This must be matched before tile*.
11064fbc8bdeSmrg        tilegx*)
11074fbc8bdeSmrg		basic_machine=tilegx-unknown
11084fbc8bdeSmrg		os=-linux-gnu
110929459361Smrg		;;
111047202d7bSmrg	tile*)
111147202d7bSmrg		basic_machine=tile-unknown
111247202d7bSmrg		os=-linux-gnu
111347202d7bSmrg		;;
111429459361Smrg	tx39)
111529459361Smrg		basic_machine=mipstx39-unknown
111629459361Smrg		;;
111729459361Smrg	tx39el)
111829459361Smrg		basic_machine=mipstx39el-unknown
111929459361Smrg		;;
112029459361Smrg	toad1)
112129459361Smrg		basic_machine=pdp10-xkl
112229459361Smrg		os=-tops20
112329459361Smrg		;;
112429459361Smrg	tower | tower-32)
112529459361Smrg		basic_machine=m68k-ncr
112629459361Smrg		;;
112729459361Smrg	tpf)
112829459361Smrg		basic_machine=s390x-ibm
112929459361Smrg		os=-tpf
113029459361Smrg		;;
113129459361Smrg	udi29k)
113229459361Smrg		basic_machine=a29k-amd
113329459361Smrg		os=-udi
113429459361Smrg		;;
113529459361Smrg	ultra3)
113629459361Smrg		basic_machine=a29k-nyu
113729459361Smrg		os=-sym1
113829459361Smrg		;;
113929459361Smrg	v810 | necv810)
114029459361Smrg		basic_machine=v810-nec
114129459361Smrg		os=-none
114229459361Smrg		;;
114329459361Smrg	vaxv)
114429459361Smrg		basic_machine=vax-dec
114529459361Smrg		os=-sysv
114629459361Smrg		;;
114729459361Smrg	vms)
114829459361Smrg		basic_machine=vax-dec
114929459361Smrg		os=-vms
115029459361Smrg		;;
115129459361Smrg	vpp*|vx|vx-*)
115229459361Smrg		basic_machine=f301-fujitsu
115329459361Smrg		;;
115429459361Smrg	vxworks960)
115529459361Smrg		basic_machine=i960-wrs
115629459361Smrg		os=-vxworks
115729459361Smrg		;;
115829459361Smrg	vxworks68)
115929459361Smrg		basic_machine=m68k-wrs
116029459361Smrg		os=-vxworks
116129459361Smrg		;;
116229459361Smrg	vxworks29k)
116329459361Smrg		basic_machine=a29k-wrs
116429459361Smrg		os=-vxworks
116529459361Smrg		;;
116629459361Smrg	w65*)
116729459361Smrg		basic_machine=w65-wdc
116829459361Smrg		os=-none
116929459361Smrg		;;
117029459361Smrg	w89k-*)
117129459361Smrg		basic_machine=hppa1.1-winbond
117229459361Smrg		os=-proelf
117329459361Smrg		;;
117429459361Smrg	xbox)
117529459361Smrg		basic_machine=i686-pc
117629459361Smrg		os=-mingw32
117729459361Smrg		;;
117829459361Smrg	xps | xps100)
117929459361Smrg		basic_machine=xps100-honeywell
118029459361Smrg		;;
118129459361Smrg	ymp)
118229459361Smrg		basic_machine=ymp-cray
118329459361Smrg		os=-unicos
118429459361Smrg		;;
118529459361Smrg	z8k-*-coff)
118629459361Smrg		basic_machine=z8k-unknown
118729459361Smrg		os=-sim
118829459361Smrg		;;
118947202d7bSmrg	z80-*-coff)
119047202d7bSmrg		basic_machine=z80-unknown
119147202d7bSmrg		os=-sim
119247202d7bSmrg		;;
119329459361Smrg	none)
119429459361Smrg		basic_machine=none-none
119529459361Smrg		os=-none
119629459361Smrg		;;
119729459361Smrg
119829459361Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
119929459361Smrg# some cases the only manufacturer, in others, it is the most popular.
120029459361Smrg	w89k)
120129459361Smrg		basic_machine=hppa1.1-winbond
120229459361Smrg		;;
120329459361Smrg	op50n)
120429459361Smrg		basic_machine=hppa1.1-oki
120529459361Smrg		;;
120629459361Smrg	op60c)
120729459361Smrg		basic_machine=hppa1.1-oki
120829459361Smrg		;;
120929459361Smrg	romp)
121029459361Smrg		basic_machine=romp-ibm
121129459361Smrg		;;
121229459361Smrg	mmix)
121329459361Smrg		basic_machine=mmix-knuth
121429459361Smrg		;;
121529459361Smrg	rs6000)
121629459361Smrg		basic_machine=rs6000-ibm
121729459361Smrg		;;
121829459361Smrg	vax)
121929459361Smrg		basic_machine=vax-dec
122029459361Smrg		;;
122129459361Smrg	pdp10)
122229459361Smrg		# there are many clones, so DEC is not a safe bet
122329459361Smrg		basic_machine=pdp10-unknown
122429459361Smrg		;;
122529459361Smrg	pdp11)
122629459361Smrg		basic_machine=pdp11-dec
122729459361Smrg		;;
122829459361Smrg	we32k)
122929459361Smrg		basic_machine=we32k-att
123029459361Smrg		;;
123147202d7bSmrg	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
123229459361Smrg		basic_machine=sh-unknown
123329459361Smrg		;;
123429459361Smrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
123529459361Smrg		basic_machine=sparc-sun
123629459361Smrg		;;
123729459361Smrg	cydra)
123829459361Smrg		basic_machine=cydra-cydrome
123929459361Smrg		;;
124029459361Smrg	orion)
124129459361Smrg		basic_machine=orion-highlevel
124229459361Smrg		;;
124329459361Smrg	orion105)
124429459361Smrg		basic_machine=clipper-highlevel
124529459361Smrg		;;
124629459361Smrg	mac | mpw | mac-mpw)
124729459361Smrg		basic_machine=m68k-apple
124829459361Smrg		;;
124929459361Smrg	pmac | pmac-mpw)
125029459361Smrg		basic_machine=powerpc-apple
125129459361Smrg		;;
125229459361Smrg	*-unknown)
125329459361Smrg		# Make sure to match an already-canonicalized machine name.
125429459361Smrg		;;
125529459361Smrg	*)
125629459361Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
125729459361Smrg		exit 1
125829459361Smrg		;;
125929459361Smrgesac
126029459361Smrg
126129459361Smrg# Here we canonicalize certain aliases for manufacturers.
126229459361Smrgcase $basic_machine in
126329459361Smrg	*-digital*)
126429459361Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
126529459361Smrg		;;
126629459361Smrg	*-commodore*)
126729459361Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
126829459361Smrg		;;
126929459361Smrg	*)
127029459361Smrg		;;
127129459361Smrgesac
127229459361Smrg
127329459361Smrg# Decode manufacturer-specific aliases for certain operating systems.
127429459361Smrg
127529459361Smrgif [ x"$os" != x"" ]
127629459361Smrgthen
127729459361Smrgcase $os in
127829459361Smrg        # First match some system type aliases
127929459361Smrg        # that might get confused with valid system types.
128029459361Smrg	# -solaris* is a basic system type, with this one exception.
12814fbc8bdeSmrg        -auroraux)
12824fbc8bdeSmrg	        os=-auroraux
12834fbc8bdeSmrg		;;
128429459361Smrg	-solaris1 | -solaris1.*)
128529459361Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
128629459361Smrg		;;
128729459361Smrg	-solaris)
128829459361Smrg		os=-solaris2
128929459361Smrg		;;
129029459361Smrg	-svr4*)
129129459361Smrg		os=-sysv4
129229459361Smrg		;;
129329459361Smrg	-unixware*)
129429459361Smrg		os=-sysv4.2uw
129529459361Smrg		;;
129629459361Smrg	-gnu/linux*)
129729459361Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
129829459361Smrg		;;
129929459361Smrg	# First accept the basic system types.
130029459361Smrg	# The portable systems comes first.
130129459361Smrg	# Each alternative MUST END IN A *, to match a version number.
130229459361Smrg	# -sysv* is not here because it comes later, after sysvr4.
130329459361Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
13044fbc8bdeSmrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
13054fbc8bdeSmrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
13064fbc8bdeSmrg	      | -sym* | -kopensolaris* \
130729459361Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
130847202d7bSmrg	      | -aos* | -aros* \
130929459361Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
131029459361Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
131129459361Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
131229459361Smrg	      | -openbsd* | -solidbsd* \
131329459361Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
131429459361Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
131529459361Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
131629459361Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
131747202d7bSmrg	      | -chorusos* | -chorusrdb* | -cegcc* \
131829459361Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
13194fbc8bdeSmrg	      | -mingw32* | -linux-gnu* | -linux-android* \
13204fbc8bdeSmrg	      | -linux-newlib* | -linux-uclibc* \
132129459361Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
132229459361Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
132329459361Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
132429459361Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
132529459361Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
132629459361Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
132729459361Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
13284fbc8bdeSmrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
132929459361Smrg	# Remember, each alternative MUST END IN *, to match a version number.
133029459361Smrg		;;
133129459361Smrg	-qnx*)
133229459361Smrg		case $basic_machine in
133329459361Smrg		    x86-* | i*86-*)
133429459361Smrg			;;
133529459361Smrg		    *)
133629459361Smrg			os=-nto$os
133729459361Smrg			;;
133829459361Smrg		esac
133929459361Smrg		;;
134029459361Smrg	-nto-qnx*)
134129459361Smrg		;;
134229459361Smrg	-nto*)
134329459361Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
134429459361Smrg		;;
134529459361Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
134629459361Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
134729459361Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
134829459361Smrg		;;
134929459361Smrg	-mac*)
135029459361Smrg		os=`echo $os | sed -e 's|mac|macos|'`
135129459361Smrg		;;
135229459361Smrg	-linux-dietlibc)
135329459361Smrg		os=-linux-dietlibc
135429459361Smrg		;;
135529459361Smrg	-linux*)
135629459361Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
135729459361Smrg		;;
135829459361Smrg	-sunos5*)
135929459361Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
136029459361Smrg		;;
136129459361Smrg	-sunos6*)
136229459361Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
136329459361Smrg		;;
136429459361Smrg	-opened*)
136529459361Smrg		os=-openedition
136629459361Smrg		;;
136729459361Smrg        -os400*)
136829459361Smrg		os=-os400
136929459361Smrg		;;
137029459361Smrg	-wince*)
137129459361Smrg		os=-wince
137229459361Smrg		;;
137329459361Smrg	-osfrose*)
137429459361Smrg		os=-osfrose
137529459361Smrg		;;
137629459361Smrg	-osf*)
137729459361Smrg		os=-osf
137829459361Smrg		;;
137929459361Smrg	-utek*)
138029459361Smrg		os=-bsd
138129459361Smrg		;;
138229459361Smrg	-dynix*)
138329459361Smrg		os=-bsd
138429459361Smrg		;;
138529459361Smrg	-acis*)
138629459361Smrg		os=-aos
138729459361Smrg		;;
138829459361Smrg	-atheos*)
138929459361Smrg		os=-atheos
139029459361Smrg		;;
139129459361Smrg	-syllable*)
139229459361Smrg		os=-syllable
139329459361Smrg		;;
139429459361Smrg	-386bsd)
139529459361Smrg		os=-bsd
139629459361Smrg		;;
139729459361Smrg	-ctix* | -uts*)
139829459361Smrg		os=-sysv
139929459361Smrg		;;
140029459361Smrg	-nova*)
140129459361Smrg		os=-rtmk-nova
140229459361Smrg		;;
140329459361Smrg	-ns2 )
140429459361Smrg		os=-nextstep2
140529459361Smrg		;;
140629459361Smrg	-nsk*)
140729459361Smrg		os=-nsk
140829459361Smrg		;;
140929459361Smrg	# Preserve the version number of sinix5.
141029459361Smrg	-sinix5.*)
141129459361Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
141229459361Smrg		;;
141329459361Smrg	-sinix*)
141429459361Smrg		os=-sysv4
141529459361Smrg		;;
141629459361Smrg        -tpf*)
141729459361Smrg		os=-tpf
141829459361Smrg		;;
141929459361Smrg	-triton*)
142029459361Smrg		os=-sysv3
142129459361Smrg		;;
142229459361Smrg	-oss*)
142329459361Smrg		os=-sysv3
142429459361Smrg		;;
142529459361Smrg	-svr4)
142629459361Smrg		os=-sysv4
142729459361Smrg		;;
142829459361Smrg	-svr3)
142929459361Smrg		os=-sysv3
143029459361Smrg		;;
143129459361Smrg	-sysvr4)
143229459361Smrg		os=-sysv4
143329459361Smrg		;;
143429459361Smrg	# This must come after -sysvr4.
143529459361Smrg	-sysv*)
143629459361Smrg		;;
143729459361Smrg	-ose*)
143829459361Smrg		os=-ose
143929459361Smrg		;;
144029459361Smrg	-es1800*)
144129459361Smrg		os=-ose
144229459361Smrg		;;
144329459361Smrg	-xenix)
144429459361Smrg		os=-xenix
144529459361Smrg		;;
144629459361Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
144729459361Smrg		os=-mint
144829459361Smrg		;;
144929459361Smrg	-aros*)
145029459361Smrg		os=-aros
145129459361Smrg		;;
145229459361Smrg	-kaos*)
145329459361Smrg		os=-kaos
145429459361Smrg		;;
145529459361Smrg	-zvmoe)
145629459361Smrg		os=-zvmoe
145729459361Smrg		;;
145847202d7bSmrg	-dicos*)
145947202d7bSmrg		os=-dicos
146047202d7bSmrg		;;
14614fbc8bdeSmrg        -nacl*)
14624fbc8bdeSmrg	        ;;
146329459361Smrg	-none)
146429459361Smrg		;;
146529459361Smrg	*)
146629459361Smrg		# Get rid of the `-' at the beginning of $os.
146729459361Smrg		os=`echo $os | sed 's/[^-]*-//'`
146829459361Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
146929459361Smrg		exit 1
147029459361Smrg		;;
147129459361Smrgesac
147229459361Smrgelse
147329459361Smrg
147429459361Smrg# Here we handle the default operating systems that come with various machines.
147529459361Smrg# The value should be what the vendor currently ships out the door with their
147629459361Smrg# machine or put another way, the most popular os provided with the machine.
147729459361Smrg
147829459361Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
147929459361Smrg# "-sun"), then you have to tell the case statement up towards the top
148029459361Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
148129459361Smrg# will signal an error saying that MANUFACTURER isn't an operating
148229459361Smrg# system, and we'll never get to this point.
148329459361Smrg
148429459361Smrgcase $basic_machine in
148529459361Smrg        score-*)
148629459361Smrg		os=-elf
148729459361Smrg		;;
148829459361Smrg        spu-*)
148929459361Smrg		os=-elf
149029459361Smrg		;;
149129459361Smrg	*-acorn)
149229459361Smrg		os=-riscix1.2
149329459361Smrg		;;
149429459361Smrg	arm*-rebel)
149529459361Smrg		os=-linux
149629459361Smrg		;;
149729459361Smrg	arm*-semi)
149829459361Smrg		os=-aout
149929459361Smrg		;;
150029459361Smrg        c4x-* | tic4x-*)
150129459361Smrg        	os=-coff
150229459361Smrg		;;
15034fbc8bdeSmrg	tic54x-*)
15044fbc8bdeSmrg		os=-coff
15054fbc8bdeSmrg		;;
15064fbc8bdeSmrg	tic55x-*)
15074fbc8bdeSmrg		os=-coff
15084fbc8bdeSmrg		;;
15094fbc8bdeSmrg	tic6x-*)
15104fbc8bdeSmrg		os=-coff
15114fbc8bdeSmrg		;;
151229459361Smrg	# This must come before the *-dec entry.
151329459361Smrg	pdp10-*)
151429459361Smrg		os=-tops20
151529459361Smrg		;;
151629459361Smrg	pdp11-*)
151729459361Smrg		os=-none
151829459361Smrg		;;
151929459361Smrg	*-dec | vax-*)
152029459361Smrg		os=-ultrix4.2
152129459361Smrg		;;
152229459361Smrg	m68*-apollo)
152329459361Smrg		os=-domain
152429459361Smrg		;;
152529459361Smrg	i386-sun)
152629459361Smrg		os=-sunos4.0.2
152729459361Smrg		;;
152829459361Smrg	m68000-sun)
152929459361Smrg		os=-sunos3
153029459361Smrg		# This also exists in the configure program, but was not the
153129459361Smrg		# default.
153229459361Smrg		# os=-sunos4
153329459361Smrg		;;
153429459361Smrg	m68*-cisco)
153529459361Smrg		os=-aout
153629459361Smrg		;;
153747202d7bSmrg        mep-*)
153847202d7bSmrg		os=-elf
153947202d7bSmrg		;;
154029459361Smrg	mips*-cisco)
154129459361Smrg		os=-elf
154229459361Smrg		;;
154329459361Smrg	mips*-*)
154429459361Smrg		os=-elf
154529459361Smrg		;;
154629459361Smrg	or32-*)
154729459361Smrg		os=-coff
154829459361Smrg		;;
154929459361Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
155029459361Smrg		os=-sysv3
155129459361Smrg		;;
155229459361Smrg	sparc-* | *-sun)
155329459361Smrg		os=-sunos4.1.1
155429459361Smrg		;;
155529459361Smrg	*-be)
155629459361Smrg		os=-beos
155729459361Smrg		;;
155829459361Smrg	*-haiku)
155929459361Smrg		os=-haiku
156029459361Smrg		;;
156129459361Smrg	*-ibm)
156229459361Smrg		os=-aix
156329459361Smrg		;;
156429459361Smrg    	*-knuth)
156529459361Smrg		os=-mmixware
156629459361Smrg		;;
156729459361Smrg	*-wec)
156829459361Smrg		os=-proelf
156929459361Smrg		;;
157029459361Smrg	*-winbond)
157129459361Smrg		os=-proelf
157229459361Smrg		;;
157329459361Smrg	*-oki)
157429459361Smrg		os=-proelf
157529459361Smrg		;;
157629459361Smrg	*-hp)
157729459361Smrg		os=-hpux
157829459361Smrg		;;
157929459361Smrg	*-hitachi)
158029459361Smrg		os=-hiux
158129459361Smrg		;;
158229459361Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
158329459361Smrg		os=-sysv
158429459361Smrg		;;
158529459361Smrg	*-cbm)
158629459361Smrg		os=-amigaos
158729459361Smrg		;;
158829459361Smrg	*-dg)
158929459361Smrg		os=-dgux
159029459361Smrg		;;
159129459361Smrg	*-dolphin)
159229459361Smrg		os=-sysv3
159329459361Smrg		;;
159429459361Smrg	m68k-ccur)
159529459361Smrg		os=-rtu
159629459361Smrg		;;
159729459361Smrg	m88k-omron*)
159829459361Smrg		os=-luna
159929459361Smrg		;;
160029459361Smrg	*-next )
160129459361Smrg		os=-nextstep
160229459361Smrg		;;
160329459361Smrg	*-sequent)
160429459361Smrg		os=-ptx
160529459361Smrg		;;
160629459361Smrg	*-crds)
160729459361Smrg		os=-unos
160829459361Smrg		;;
160929459361Smrg	*-ns)
161029459361Smrg		os=-genix
161129459361Smrg		;;
161229459361Smrg	i370-*)
161329459361Smrg		os=-mvs
161429459361Smrg		;;
161529459361Smrg	*-next)
161629459361Smrg		os=-nextstep3
161729459361Smrg		;;
161829459361Smrg	*-gould)
161929459361Smrg		os=-sysv
162029459361Smrg		;;
162129459361Smrg	*-highlevel)
162229459361Smrg		os=-bsd
162329459361Smrg		;;
162429459361Smrg	*-encore)
162529459361Smrg		os=-bsd
162629459361Smrg		;;
162729459361Smrg	*-sgi)
162829459361Smrg		os=-irix
162929459361Smrg		;;
163029459361Smrg	*-siemens)
163129459361Smrg		os=-sysv4
163229459361Smrg		;;
163329459361Smrg	*-masscomp)
163429459361Smrg		os=-rtu
163529459361Smrg		;;
163629459361Smrg	f30[01]-fujitsu | f700-fujitsu)
163729459361Smrg		os=-uxpv
163829459361Smrg		;;
163929459361Smrg	*-rom68k)
164029459361Smrg		os=-coff
164129459361Smrg		;;
164229459361Smrg	*-*bug)
164329459361Smrg		os=-coff
164429459361Smrg		;;
164529459361Smrg	*-apple)
164629459361Smrg		os=-macos
164729459361Smrg		;;
164829459361Smrg	*-atari*)
164929459361Smrg		os=-mint
165029459361Smrg		;;
165129459361Smrg	*)
165229459361Smrg		os=-none
165329459361Smrg		;;
165429459361Smrgesac
165529459361Smrgfi
165629459361Smrg
165729459361Smrg# Here we handle the case where we know the os, and the CPU type, but not the
165829459361Smrg# manufacturer.  We pick the logical manufacturer.
165929459361Smrgvendor=unknown
166029459361Smrgcase $basic_machine in
166129459361Smrg	*-unknown)
166229459361Smrg		case $os in
166329459361Smrg			-riscix*)
166429459361Smrg				vendor=acorn
166529459361Smrg				;;
166629459361Smrg			-sunos*)
166729459361Smrg				vendor=sun
166829459361Smrg				;;
16694fbc8bdeSmrg			-cnk*|-aix*)
167029459361Smrg				vendor=ibm
167129459361Smrg				;;
167229459361Smrg			-beos*)
167329459361Smrg				vendor=be
167429459361Smrg				;;
167529459361Smrg			-hpux*)
167629459361Smrg				vendor=hp
167729459361Smrg				;;
167829459361Smrg			-mpeix*)
167929459361Smrg				vendor=hp
168029459361Smrg				;;
168129459361Smrg			-hiux*)
168229459361Smrg				vendor=hitachi
168329459361Smrg				;;
168429459361Smrg			-unos*)
168529459361Smrg				vendor=crds
168629459361Smrg				;;
168729459361Smrg			-dgux*)
168829459361Smrg				vendor=dg
168929459361Smrg				;;
169029459361Smrg			-luna*)
169129459361Smrg				vendor=omron
169229459361Smrg				;;
169329459361Smrg			-genix*)
169429459361Smrg				vendor=ns
169529459361Smrg				;;
169629459361Smrg			-mvs* | -opened*)
169729459361Smrg				vendor=ibm
169829459361Smrg				;;
169929459361Smrg			-os400*)
170029459361Smrg				vendor=ibm
170129459361Smrg				;;
170229459361Smrg			-ptx*)
170329459361Smrg				vendor=sequent
170429459361Smrg				;;
170529459361Smrg			-tpf*)
170629459361Smrg				vendor=ibm
170729459361Smrg				;;
170829459361Smrg			-vxsim* | -vxworks* | -windiss*)
170929459361Smrg				vendor=wrs
171029459361Smrg				;;
171129459361Smrg			-aux*)
171229459361Smrg				vendor=apple
171329459361Smrg				;;
171429459361Smrg			-hms*)
171529459361Smrg				vendor=hitachi
171629459361Smrg				;;
171729459361Smrg			-mpw* | -macos*)
171829459361Smrg				vendor=apple
171929459361Smrg				;;
172029459361Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
172129459361Smrg				vendor=atari
172229459361Smrg				;;
172329459361Smrg			-vos*)
172429459361Smrg				vendor=stratus
172529459361Smrg				;;
172629459361Smrg		esac
172729459361Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
172829459361Smrg		;;
172929459361Smrgesac
173029459361Smrg
173129459361Smrgecho $basic_machine$os
173229459361Smrgexit
173329459361Smrg
173429459361Smrg# Local variables:
173529459361Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
173629459361Smrg# time-stamp-start: "timestamp='"
173729459361Smrg# time-stamp-format: "%:y-%02m-%02d"
173829459361Smrg# time-stamp-end: "'"
173929459361Smrg# End:
1740