config.sub revision 86bbecbe
153354cdbSmrg#! /bin/sh
253354cdbSmrg# Configuration validation subroutine script.
353354cdbSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
486bbecbeSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
553354cdbSmrg#   Free Software Foundation, Inc.
653354cdbSmrg
786bbecbeSmrgtimestamp='2010-09-11'
853354cdbSmrg
953354cdbSmrg# This file is (in principle) common to ALL GNU software.
1053354cdbSmrg# The presence of a machine in this file suggests that SOME GNU software
1153354cdbSmrg# can handle that machine.  It does not imply ALL GNU software can.
1253354cdbSmrg#
1353354cdbSmrg# This file is free software; you can redistribute it and/or modify
1453354cdbSmrg# it under the terms of the GNU General Public License as published by
1553354cdbSmrg# the Free Software Foundation; either version 2 of the License, or
1653354cdbSmrg# (at your option) any later version.
1753354cdbSmrg#
1853354cdbSmrg# This program is distributed in the hope that it will be useful,
1953354cdbSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
2053354cdbSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2153354cdbSmrg# GNU General Public License for more details.
2253354cdbSmrg#
2353354cdbSmrg# You should have received a copy of the GNU General Public License
2453354cdbSmrg# along with this program; if not, write to the Free Software
2553354cdbSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
2653354cdbSmrg# 02110-1301, USA.
2753354cdbSmrg#
2853354cdbSmrg# As a special exception to the GNU General Public License, if you
2953354cdbSmrg# distribute this file as part of a program that contains a
3053354cdbSmrg# configuration script generated by Autoconf, you may include it under
3153354cdbSmrg# the same distribution terms that you use for the rest of that program.
3253354cdbSmrg
3353354cdbSmrg
3453354cdbSmrg# Please send patches to <config-patches@gnu.org>.  Submit a context
3586bbecbeSmrg# diff and a properly formatted GNU ChangeLog entry.
3653354cdbSmrg#
3753354cdbSmrg# Configuration subroutine to validate and canonicalize a configuration type.
3853354cdbSmrg# Supply the specified configuration type as an argument.
3953354cdbSmrg# If it is invalid, we print an error message on stderr and exit with code 1.
4053354cdbSmrg# Otherwise, we print the canonical config type on stdout and succeed.
4153354cdbSmrg
4286bbecbeSmrg# You can get the latest version of this script from:
4386bbecbeSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
4486bbecbeSmrg
4553354cdbSmrg# This file is supposed to be the same for all GNU packages
4653354cdbSmrg# and recognize all the CPU types, system types and aliases
4753354cdbSmrg# that are meaningful with *any* GNU software.
4853354cdbSmrg# Each package is responsible for reporting which valid configurations
4953354cdbSmrg# it does not support.  The user should be able to distinguish
5053354cdbSmrg# a failure to support a valid configuration from a meaningless
5153354cdbSmrg# configuration.
5253354cdbSmrg
5353354cdbSmrg# The goal of this file is to map all the various variations of a given
5453354cdbSmrg# machine specification into a single specification in the form:
5553354cdbSmrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
5653354cdbSmrg# or in some cases, the newer four-part form:
5753354cdbSmrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
5853354cdbSmrg# It is wrong to echo any other type of specification.
5953354cdbSmrg
6053354cdbSmrgme=`echo "$0" | sed -e 's,.*/,,'`
6153354cdbSmrg
6253354cdbSmrgusage="\
6353354cdbSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
6453354cdbSmrg       $0 [OPTION] ALIAS
6553354cdbSmrg
6653354cdbSmrgCanonicalize a configuration name.
6753354cdbSmrg
6853354cdbSmrgOperation modes:
6953354cdbSmrg  -h, --help         print this help, then exit
7053354cdbSmrg  -t, --time-stamp   print date of last modification, then exit
7153354cdbSmrg  -v, --version      print version number, then exit
7253354cdbSmrg
7353354cdbSmrgReport bugs and patches to <config-patches@gnu.org>."
7453354cdbSmrg
7553354cdbSmrgversion="\
7653354cdbSmrgGNU config.sub ($timestamp)
7753354cdbSmrg
7886bbecbeSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
7986bbecbeSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
8086bbecbeSmrgSoftware Foundation, Inc.
8153354cdbSmrg
8253354cdbSmrgThis is free software; see the source for copying conditions.  There is NO
8353354cdbSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
8453354cdbSmrg
8553354cdbSmrghelp="
8653354cdbSmrgTry \`$me --help' for more information."
8753354cdbSmrg
8853354cdbSmrg# Parse command line
8953354cdbSmrgwhile test $# -gt 0 ; do
9053354cdbSmrg  case $1 in
9153354cdbSmrg    --time-stamp | --time* | -t )
9253354cdbSmrg       echo "$timestamp" ; exit ;;
9353354cdbSmrg    --version | -v )
9453354cdbSmrg       echo "$version" ; exit ;;
9553354cdbSmrg    --help | --h* | -h )
9653354cdbSmrg       echo "$usage"; exit ;;
9753354cdbSmrg    -- )     # Stop option processing
9853354cdbSmrg       shift; break ;;
9953354cdbSmrg    - )	# Use stdin as input.
10053354cdbSmrg       break ;;
10153354cdbSmrg    -* )
10253354cdbSmrg       echo "$me: invalid option $1$help"
10353354cdbSmrg       exit 1 ;;
10453354cdbSmrg
10553354cdbSmrg    *local*)
10653354cdbSmrg       # First pass through any local machine types.
10753354cdbSmrg       echo $1
10853354cdbSmrg       exit ;;
10953354cdbSmrg
11053354cdbSmrg    * )
11153354cdbSmrg       break ;;
11253354cdbSmrg  esac
11353354cdbSmrgdone
11453354cdbSmrg
11553354cdbSmrgcase $# in
11653354cdbSmrg 0) echo "$me: missing argument$help" >&2
11753354cdbSmrg    exit 1;;
11853354cdbSmrg 1) ;;
11953354cdbSmrg *) echo "$me: too many arguments$help" >&2
12053354cdbSmrg    exit 1;;
12153354cdbSmrgesac
12253354cdbSmrg
12353354cdbSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
12453354cdbSmrg# Here we must recognize all the valid KERNEL-OS combinations.
12553354cdbSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
12653354cdbSmrgcase $maybe_os in
12786bbecbeSmrg  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
12886bbecbeSmrg  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
12986bbecbeSmrg  knetbsd*-gnu* | netbsd*-gnu* | \
13086bbecbeSmrg  kopensolaris*-gnu* | \
13153354cdbSmrg  storm-chaos* | os2-emx* | rtmk-nova*)
13253354cdbSmrg    os=-$maybe_os
13353354cdbSmrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
13453354cdbSmrg    ;;
13553354cdbSmrg  *)
13653354cdbSmrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
13753354cdbSmrg    if [ $basic_machine != $1 ]
13853354cdbSmrg    then os=`echo $1 | sed 's/.*-/-/'`
13953354cdbSmrg    else os=; fi
14053354cdbSmrg    ;;
14153354cdbSmrgesac
14253354cdbSmrg
14353354cdbSmrg### Let's recognize common machines as not being operating systems so
14453354cdbSmrg### that things like config.sub decstation-3100 work.  We also
14553354cdbSmrg### recognize some manufacturers as not being operating systems, so we
14653354cdbSmrg### can provide default operating systems below.
14753354cdbSmrgcase $os in
14853354cdbSmrg	-sun*os*)
14953354cdbSmrg		# Prevent following clause from handling this invalid input.
15053354cdbSmrg		;;
15153354cdbSmrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
15253354cdbSmrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
15353354cdbSmrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
15453354cdbSmrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
15553354cdbSmrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
15653354cdbSmrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
15786bbecbeSmrg	-apple | -axis | -knuth | -cray | -microblaze)
15853354cdbSmrg		os=
15953354cdbSmrg		basic_machine=$1
16053354cdbSmrg		;;
16186bbecbeSmrg        -bluegene*)
16286bbecbeSmrg	        os=-cnk
16386bbecbeSmrg		;;
16453354cdbSmrg	-sim | -cisco | -oki | -wec | -winbond)
16553354cdbSmrg		os=
16653354cdbSmrg		basic_machine=$1
16753354cdbSmrg		;;
16853354cdbSmrg	-scout)
16953354cdbSmrg		;;
17053354cdbSmrg	-wrs)
17153354cdbSmrg		os=-vxworks
17253354cdbSmrg		basic_machine=$1
17353354cdbSmrg		;;
17453354cdbSmrg	-chorusos*)
17553354cdbSmrg		os=-chorusos
17653354cdbSmrg		basic_machine=$1
17753354cdbSmrg		;;
17853354cdbSmrg 	-chorusrdb)
17953354cdbSmrg 		os=-chorusrdb
18053354cdbSmrg		basic_machine=$1
18153354cdbSmrg 		;;
18253354cdbSmrg	-hiux*)
18353354cdbSmrg		os=-hiuxwe2
18453354cdbSmrg		;;
18553354cdbSmrg	-sco6)
18653354cdbSmrg		os=-sco5v6
18753354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
18853354cdbSmrg		;;
18953354cdbSmrg	-sco5)
19053354cdbSmrg		os=-sco3.2v5
19153354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19253354cdbSmrg		;;
19353354cdbSmrg	-sco4)
19453354cdbSmrg		os=-sco3.2v4
19553354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19653354cdbSmrg		;;
19753354cdbSmrg	-sco3.2.[4-9]*)
19853354cdbSmrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
19953354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20053354cdbSmrg		;;
20153354cdbSmrg	-sco3.2v[4-9]*)
20253354cdbSmrg		# Don't forget version if it is 3.2v4 or newer.
20353354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20453354cdbSmrg		;;
20553354cdbSmrg	-sco5v6*)
20653354cdbSmrg		# Don't forget version if it is 3.2v4 or newer.
20753354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20853354cdbSmrg		;;
20953354cdbSmrg	-sco*)
21053354cdbSmrg		os=-sco3.2v2
21153354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21253354cdbSmrg		;;
21353354cdbSmrg	-udk*)
21453354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21553354cdbSmrg		;;
21653354cdbSmrg	-isc)
21753354cdbSmrg		os=-isc2.2
21853354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21953354cdbSmrg		;;
22053354cdbSmrg	-clix*)
22153354cdbSmrg		basic_machine=clipper-intergraph
22253354cdbSmrg		;;
22353354cdbSmrg	-isc*)
22453354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
22553354cdbSmrg		;;
22653354cdbSmrg	-lynx*)
22753354cdbSmrg		os=-lynxos
22853354cdbSmrg		;;
22953354cdbSmrg	-ptx*)
23053354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
23153354cdbSmrg		;;
23253354cdbSmrg	-windowsnt*)
23353354cdbSmrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
23453354cdbSmrg		;;
23553354cdbSmrg	-psos*)
23653354cdbSmrg		os=-psos
23753354cdbSmrg		;;
23853354cdbSmrg	-mint | -mint[0-9]*)
23953354cdbSmrg		basic_machine=m68k-atari
24053354cdbSmrg		os=-mint
24153354cdbSmrg		;;
24253354cdbSmrgesac
24353354cdbSmrg
24453354cdbSmrg# Decode aliases for certain CPU-COMPANY combinations.
24553354cdbSmrgcase $basic_machine in
24653354cdbSmrg	# Recognize the basic CPU types without company name.
24753354cdbSmrg	# Some are omitted here because they have special meanings below.
24853354cdbSmrg	1750a | 580 \
24953354cdbSmrg	| a29k \
25053354cdbSmrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
25153354cdbSmrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
25253354cdbSmrg	| am33_2.0 \
25353354cdbSmrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
25453354cdbSmrg	| bfin \
25553354cdbSmrg	| c4x | clipper \
25653354cdbSmrg	| d10v | d30v | dlx | dsp16xx \
25753354cdbSmrg	| fido | fr30 | frv \
25853354cdbSmrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
25953354cdbSmrg	| i370 | i860 | i960 | ia64 \
26053354cdbSmrg	| ip2k | iq2000 \
26186bbecbeSmrg	| lm32 \
26253354cdbSmrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
26386bbecbeSmrg	| maxq | mb | microblaze | mcore | mep | metag \
26453354cdbSmrg	| mips | mipsbe | mipseb | mipsel | mipsle \
26553354cdbSmrg	| mips16 \
26653354cdbSmrg	| mips64 | mips64el \
26786bbecbeSmrg	| mips64octeon | mips64octeonel \
26853354cdbSmrg	| mips64orion | mips64orionel \
26986bbecbeSmrg	| mips64r5900 | mips64r5900el \
27086bbecbeSmrg	| mips64vr | mips64vrel \
27153354cdbSmrg	| mips64vr4100 | mips64vr4100el \
27253354cdbSmrg	| mips64vr4300 | mips64vr4300el \
27353354cdbSmrg	| mips64vr5000 | mips64vr5000el \
27453354cdbSmrg	| mips64vr5900 | mips64vr5900el \
27553354cdbSmrg	| mipsisa32 | mipsisa32el \
27653354cdbSmrg	| mipsisa32r2 | mipsisa32r2el \
27753354cdbSmrg	| mipsisa64 | mipsisa64el \
27853354cdbSmrg	| mipsisa64r2 | mipsisa64r2el \
27953354cdbSmrg	| mipsisa64sb1 | mipsisa64sb1el \
28053354cdbSmrg	| mipsisa64sr71k | mipsisa64sr71kel \
28153354cdbSmrg	| mipstx39 | mipstx39el \
28253354cdbSmrg	| mn10200 | mn10300 \
28386bbecbeSmrg	| moxie \
28453354cdbSmrg	| mt \
28553354cdbSmrg	| msp430 \
28686bbecbeSmrg	| nds32 | nds32le | nds32be \
28753354cdbSmrg	| nios | nios2 \
28853354cdbSmrg	| ns16k | ns32k \
28953354cdbSmrg	| or32 \
29053354cdbSmrg	| pdp10 | pdp11 | pj | pjl \
29153354cdbSmrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
29253354cdbSmrg	| pyramid \
29386bbecbeSmrg	| rx \
29453354cdbSmrg	| score \
29586bbecbeSmrg	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
29653354cdbSmrg	| sh64 | sh64le \
29753354cdbSmrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
29853354cdbSmrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
29953354cdbSmrg	| spu | strongarm \
30086bbecbeSmrg	| tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
30186bbecbeSmrg	| ubicom32 \
30253354cdbSmrg	| v850 | v850e \
30353354cdbSmrg	| we32k \
30453354cdbSmrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
30586bbecbeSmrg	| z8k | z80)
30653354cdbSmrg		basic_machine=$basic_machine-unknown
30753354cdbSmrg		;;
30886bbecbeSmrg	c54x)
30986bbecbeSmrg		basic_machine=tic54x-unknown
31086bbecbeSmrg		;;
31186bbecbeSmrg	c55x)
31286bbecbeSmrg		basic_machine=tic55x-unknown
31386bbecbeSmrg		;;
31486bbecbeSmrg	c6x)
31586bbecbeSmrg		basic_machine=tic6x-unknown
31686bbecbeSmrg		;;
31786bbecbeSmrg	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
31853354cdbSmrg		# Motorola 68HC11/12.
31953354cdbSmrg		basic_machine=$basic_machine-unknown
32053354cdbSmrg		os=-none
32153354cdbSmrg		;;
32253354cdbSmrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
32353354cdbSmrg		;;
32453354cdbSmrg	ms1)
32553354cdbSmrg		basic_machine=mt-unknown
32653354cdbSmrg		;;
32753354cdbSmrg
32853354cdbSmrg	# We use `pc' rather than `unknown'
32953354cdbSmrg	# because (1) that's what they normally are, and
33053354cdbSmrg	# (2) the word "unknown" tends to confuse beginning users.
33153354cdbSmrg	i*86 | x86_64)
33253354cdbSmrg	  basic_machine=$basic_machine-pc
33353354cdbSmrg	  ;;
33453354cdbSmrg	# Object if more than one company name word.
33553354cdbSmrg	*-*-*)
33653354cdbSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
33753354cdbSmrg		exit 1
33853354cdbSmrg		;;
33953354cdbSmrg	# Recognize the basic CPU types with company name.
34053354cdbSmrg	580-* \
34153354cdbSmrg	| a29k-* \
34253354cdbSmrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
34353354cdbSmrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
34453354cdbSmrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
34553354cdbSmrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
34653354cdbSmrg	| avr-* | avr32-* \
34753354cdbSmrg	| bfin-* | bs2000-* \
34886bbecbeSmrg	| c[123]* | c30-* | [cjt]90-* | c4x-* \
34953354cdbSmrg	| clipper-* | craynv-* | cydra-* \
35053354cdbSmrg	| d10v-* | d30v-* | dlx-* \
35153354cdbSmrg	| elxsi-* \
35253354cdbSmrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
35353354cdbSmrg	| h8300-* | h8500-* \
35453354cdbSmrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
35553354cdbSmrg	| i*86-* | i860-* | i960-* | ia64-* \
35653354cdbSmrg	| ip2k-* | iq2000-* \
35786bbecbeSmrg	| lm32-* \
35853354cdbSmrg	| m32c-* | m32r-* | m32rle-* \
35953354cdbSmrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
36086bbecbeSmrg	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
36153354cdbSmrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
36253354cdbSmrg	| mips16-* \
36353354cdbSmrg	| mips64-* | mips64el-* \
36486bbecbeSmrg	| mips64octeon-* | mips64octeonel-* \
36553354cdbSmrg	| mips64orion-* | mips64orionel-* \
36686bbecbeSmrg	| mips64r5900-* | mips64r5900el-* \
36786bbecbeSmrg	| mips64vr-* | mips64vrel-* \
36853354cdbSmrg	| mips64vr4100-* | mips64vr4100el-* \
36953354cdbSmrg	| mips64vr4300-* | mips64vr4300el-* \
37053354cdbSmrg	| mips64vr5000-* | mips64vr5000el-* \
37153354cdbSmrg	| mips64vr5900-* | mips64vr5900el-* \
37253354cdbSmrg	| mipsisa32-* | mipsisa32el-* \
37353354cdbSmrg	| mipsisa32r2-* | mipsisa32r2el-* \
37453354cdbSmrg	| mipsisa64-* | mipsisa64el-* \
37553354cdbSmrg	| mipsisa64r2-* | mipsisa64r2el-* \
37653354cdbSmrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
37753354cdbSmrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
37853354cdbSmrg	| mipstx39-* | mipstx39el-* \
37953354cdbSmrg	| mmix-* \
38053354cdbSmrg	| mt-* \
38153354cdbSmrg	| msp430-* \
38286bbecbeSmrg	| nds32-* | nds32le-* | nds32be-* \
38353354cdbSmrg	| nios-* | nios2-* \
38453354cdbSmrg	| none-* | np1-* | ns16k-* | ns32k-* \
38553354cdbSmrg	| orion-* \
38653354cdbSmrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
38753354cdbSmrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
38853354cdbSmrg	| pyramid-* \
38986bbecbeSmrg	| romp-* | rs6000-* | rx-* \
39086bbecbeSmrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
39153354cdbSmrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
39253354cdbSmrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
39353354cdbSmrg	| sparclite-* \
39453354cdbSmrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
39553354cdbSmrg	| tahoe-* | thumb-* \
39653354cdbSmrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
39786bbecbeSmrg	| tile-* | tilegx-* \
39853354cdbSmrg	| tron-* \
39986bbecbeSmrg	| ubicom32-* \
40053354cdbSmrg	| v850-* | v850e-* | vax-* \
40153354cdbSmrg	| we32k-* \
40253354cdbSmrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
40353354cdbSmrg	| xstormy16-* | xtensa*-* \
40453354cdbSmrg	| ymp-* \
40586bbecbeSmrg	| z8k-* | z80-*)
40653354cdbSmrg		;;
40753354cdbSmrg	# Recognize the basic CPU types without company name, with glob match.
40853354cdbSmrg	xtensa*)
40953354cdbSmrg		basic_machine=$basic_machine-unknown
41053354cdbSmrg		;;
41153354cdbSmrg	# Recognize the various machine names and aliases which stand
41253354cdbSmrg	# for a CPU type and a company and sometimes even an OS.
41353354cdbSmrg	386bsd)
41453354cdbSmrg		basic_machine=i386-unknown
41553354cdbSmrg		os=-bsd
41653354cdbSmrg		;;
41753354cdbSmrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
41853354cdbSmrg		basic_machine=m68000-att
41953354cdbSmrg		;;
42053354cdbSmrg	3b*)
42153354cdbSmrg		basic_machine=we32k-att
42253354cdbSmrg		;;
42353354cdbSmrg	a29khif)
42453354cdbSmrg		basic_machine=a29k-amd
42553354cdbSmrg		os=-udi
42653354cdbSmrg		;;
42753354cdbSmrg    	abacus)
42853354cdbSmrg		basic_machine=abacus-unknown
42953354cdbSmrg		;;
43053354cdbSmrg	adobe68k)
43153354cdbSmrg		basic_machine=m68010-adobe
43253354cdbSmrg		os=-scout
43353354cdbSmrg		;;
43453354cdbSmrg	alliant | fx80)
43553354cdbSmrg		basic_machine=fx80-alliant
43653354cdbSmrg		;;
43753354cdbSmrg	altos | altos3068)
43853354cdbSmrg		basic_machine=m68k-altos
43953354cdbSmrg		;;
44053354cdbSmrg	am29k)
44153354cdbSmrg		basic_machine=a29k-none
44253354cdbSmrg		os=-bsd
44353354cdbSmrg		;;
44453354cdbSmrg	amd64)
44553354cdbSmrg		basic_machine=x86_64-pc
44653354cdbSmrg		;;
44753354cdbSmrg	amd64-*)
44853354cdbSmrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
44953354cdbSmrg		;;
45053354cdbSmrg	amdahl)
45153354cdbSmrg		basic_machine=580-amdahl
45253354cdbSmrg		os=-sysv
45353354cdbSmrg		;;
45453354cdbSmrg	amiga | amiga-*)
45553354cdbSmrg		basic_machine=m68k-unknown
45653354cdbSmrg		;;
45753354cdbSmrg	amigaos | amigados)
45853354cdbSmrg		basic_machine=m68k-unknown
45953354cdbSmrg		os=-amigaos
46053354cdbSmrg		;;
46153354cdbSmrg	amigaunix | amix)
46253354cdbSmrg		basic_machine=m68k-unknown
46353354cdbSmrg		os=-sysv4
46453354cdbSmrg		;;
46553354cdbSmrg	apollo68)
46653354cdbSmrg		basic_machine=m68k-apollo
46753354cdbSmrg		os=-sysv
46853354cdbSmrg		;;
46953354cdbSmrg	apollo68bsd)
47053354cdbSmrg		basic_machine=m68k-apollo
47153354cdbSmrg		os=-bsd
47253354cdbSmrg		;;
47386bbecbeSmrg	aros)
47486bbecbeSmrg		basic_machine=i386-pc
47586bbecbeSmrg		os=-aros
47686bbecbeSmrg		;;
47753354cdbSmrg	aux)
47853354cdbSmrg		basic_machine=m68k-apple
47953354cdbSmrg		os=-aux
48053354cdbSmrg		;;
48153354cdbSmrg	balance)
48253354cdbSmrg		basic_machine=ns32k-sequent
48353354cdbSmrg		os=-dynix
48453354cdbSmrg		;;
48553354cdbSmrg	blackfin)
48653354cdbSmrg		basic_machine=bfin-unknown
48753354cdbSmrg		os=-linux
48853354cdbSmrg		;;
48953354cdbSmrg	blackfin-*)
49053354cdbSmrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
49153354cdbSmrg		os=-linux
49253354cdbSmrg		;;
49386bbecbeSmrg	bluegene*)
49486bbecbeSmrg		basic_machine=powerpc-ibm
49586bbecbeSmrg		os=-cnk
49686bbecbeSmrg		;;
49786bbecbeSmrg	c54x-*)
49886bbecbeSmrg		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
49986bbecbeSmrg		;;
50086bbecbeSmrg	c55x-*)
50186bbecbeSmrg		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
50286bbecbeSmrg		;;
50386bbecbeSmrg	c6x-*)
50486bbecbeSmrg		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
50586bbecbeSmrg		;;
50653354cdbSmrg	c90)
50753354cdbSmrg		basic_machine=c90-cray
50853354cdbSmrg		os=-unicos
50953354cdbSmrg		;;
51086bbecbeSmrg        cegcc)
51186bbecbeSmrg		basic_machine=arm-unknown
51286bbecbeSmrg		os=-cegcc
51386bbecbeSmrg		;;
51453354cdbSmrg	convex-c1)
51553354cdbSmrg		basic_machine=c1-convex
51653354cdbSmrg		os=-bsd
51753354cdbSmrg		;;
51853354cdbSmrg	convex-c2)
51953354cdbSmrg		basic_machine=c2-convex
52053354cdbSmrg		os=-bsd
52153354cdbSmrg		;;
52253354cdbSmrg	convex-c32)
52353354cdbSmrg		basic_machine=c32-convex
52453354cdbSmrg		os=-bsd
52553354cdbSmrg		;;
52653354cdbSmrg	convex-c34)
52753354cdbSmrg		basic_machine=c34-convex
52853354cdbSmrg		os=-bsd
52953354cdbSmrg		;;
53053354cdbSmrg	convex-c38)
53153354cdbSmrg		basic_machine=c38-convex
53253354cdbSmrg		os=-bsd
53353354cdbSmrg		;;
53453354cdbSmrg	cray | j90)
53553354cdbSmrg		basic_machine=j90-cray
53653354cdbSmrg		os=-unicos
53753354cdbSmrg		;;
53853354cdbSmrg	craynv)
53953354cdbSmrg		basic_machine=craynv-cray
54053354cdbSmrg		os=-unicosmp
54153354cdbSmrg		;;
54253354cdbSmrg	cr16)
54353354cdbSmrg		basic_machine=cr16-unknown
54453354cdbSmrg		os=-elf
54553354cdbSmrg		;;
54653354cdbSmrg	crds | unos)
54753354cdbSmrg		basic_machine=m68k-crds
54853354cdbSmrg		;;
54953354cdbSmrg	crisv32 | crisv32-* | etraxfs*)
55053354cdbSmrg		basic_machine=crisv32-axis
55153354cdbSmrg		;;
55253354cdbSmrg	cris | cris-* | etrax*)
55353354cdbSmrg		basic_machine=cris-axis
55453354cdbSmrg		;;
55553354cdbSmrg	crx)
55653354cdbSmrg		basic_machine=crx-unknown
55753354cdbSmrg		os=-elf
55853354cdbSmrg		;;
55953354cdbSmrg	da30 | da30-*)
56053354cdbSmrg		basic_machine=m68k-da30
56153354cdbSmrg		;;
56253354cdbSmrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
56353354cdbSmrg		basic_machine=mips-dec
56453354cdbSmrg		;;
56553354cdbSmrg	decsystem10* | dec10*)
56653354cdbSmrg		basic_machine=pdp10-dec
56753354cdbSmrg		os=-tops10
56853354cdbSmrg		;;
56953354cdbSmrg	decsystem20* | dec20*)
57053354cdbSmrg		basic_machine=pdp10-dec
57153354cdbSmrg		os=-tops20
57253354cdbSmrg		;;
57353354cdbSmrg	delta | 3300 | motorola-3300 | motorola-delta \
57453354cdbSmrg	      | 3300-motorola | delta-motorola)
57553354cdbSmrg		basic_machine=m68k-motorola
57653354cdbSmrg		;;
57753354cdbSmrg	delta88)
57853354cdbSmrg		basic_machine=m88k-motorola
57953354cdbSmrg		os=-sysv3
58053354cdbSmrg		;;
58186bbecbeSmrg	dicos)
58286bbecbeSmrg		basic_machine=i686-pc
58386bbecbeSmrg		os=-dicos
58486bbecbeSmrg		;;
58553354cdbSmrg	djgpp)
58653354cdbSmrg		basic_machine=i586-pc
58753354cdbSmrg		os=-msdosdjgpp
58853354cdbSmrg		;;
58953354cdbSmrg	dpx20 | dpx20-*)
59053354cdbSmrg		basic_machine=rs6000-bull
59153354cdbSmrg		os=-bosx
59253354cdbSmrg		;;
59353354cdbSmrg	dpx2* | dpx2*-bull)
59453354cdbSmrg		basic_machine=m68k-bull
59553354cdbSmrg		os=-sysv3
59653354cdbSmrg		;;
59753354cdbSmrg	ebmon29k)
59853354cdbSmrg		basic_machine=a29k-amd
59953354cdbSmrg		os=-ebmon
60053354cdbSmrg		;;
60153354cdbSmrg	elxsi)
60253354cdbSmrg		basic_machine=elxsi-elxsi
60353354cdbSmrg		os=-bsd
60453354cdbSmrg		;;
60553354cdbSmrg	encore | umax | mmax)
60653354cdbSmrg		basic_machine=ns32k-encore
60753354cdbSmrg		;;
60853354cdbSmrg	es1800 | OSE68k | ose68k | ose | OSE)
60953354cdbSmrg		basic_machine=m68k-ericsson
61053354cdbSmrg		os=-ose
61153354cdbSmrg		;;
61253354cdbSmrg	fx2800)
61353354cdbSmrg		basic_machine=i860-alliant
61453354cdbSmrg		;;
61553354cdbSmrg	genix)
61653354cdbSmrg		basic_machine=ns32k-ns
61753354cdbSmrg		;;
61853354cdbSmrg	gmicro)
61953354cdbSmrg		basic_machine=tron-gmicro
62053354cdbSmrg		os=-sysv
62153354cdbSmrg		;;
62253354cdbSmrg	go32)
62353354cdbSmrg		basic_machine=i386-pc
62453354cdbSmrg		os=-go32
62553354cdbSmrg		;;
62653354cdbSmrg	h3050r* | hiux*)
62753354cdbSmrg		basic_machine=hppa1.1-hitachi
62853354cdbSmrg		os=-hiuxwe2
62953354cdbSmrg		;;
63053354cdbSmrg	h8300hms)
63153354cdbSmrg		basic_machine=h8300-hitachi
63253354cdbSmrg		os=-hms
63353354cdbSmrg		;;
63453354cdbSmrg	h8300xray)
63553354cdbSmrg		basic_machine=h8300-hitachi
63653354cdbSmrg		os=-xray
63753354cdbSmrg		;;
63853354cdbSmrg	h8500hms)
63953354cdbSmrg		basic_machine=h8500-hitachi
64053354cdbSmrg		os=-hms
64153354cdbSmrg		;;
64253354cdbSmrg	harris)
64353354cdbSmrg		basic_machine=m88k-harris
64453354cdbSmrg		os=-sysv3
64553354cdbSmrg		;;
64653354cdbSmrg	hp300-*)
64753354cdbSmrg		basic_machine=m68k-hp
64853354cdbSmrg		;;
64953354cdbSmrg	hp300bsd)
65053354cdbSmrg		basic_machine=m68k-hp
65153354cdbSmrg		os=-bsd
65253354cdbSmrg		;;
65353354cdbSmrg	hp300hpux)
65453354cdbSmrg		basic_machine=m68k-hp
65553354cdbSmrg		os=-hpux
65653354cdbSmrg		;;
65753354cdbSmrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
65853354cdbSmrg		basic_machine=hppa1.0-hp
65953354cdbSmrg		;;
66053354cdbSmrg	hp9k2[0-9][0-9] | hp9k31[0-9])
66153354cdbSmrg		basic_machine=m68000-hp
66253354cdbSmrg		;;
66353354cdbSmrg	hp9k3[2-9][0-9])
66453354cdbSmrg		basic_machine=m68k-hp
66553354cdbSmrg		;;
66653354cdbSmrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
66753354cdbSmrg		basic_machine=hppa1.0-hp
66853354cdbSmrg		;;
66953354cdbSmrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
67053354cdbSmrg		basic_machine=hppa1.1-hp
67153354cdbSmrg		;;
67253354cdbSmrg	hp9k78[0-9] | hp78[0-9])
67353354cdbSmrg		# FIXME: really hppa2.0-hp
67453354cdbSmrg		basic_machine=hppa1.1-hp
67553354cdbSmrg		;;
67653354cdbSmrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
67753354cdbSmrg		# FIXME: really hppa2.0-hp
67853354cdbSmrg		basic_machine=hppa1.1-hp
67953354cdbSmrg		;;
68053354cdbSmrg	hp9k8[0-9][13679] | hp8[0-9][13679])
68153354cdbSmrg		basic_machine=hppa1.1-hp
68253354cdbSmrg		;;
68353354cdbSmrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
68453354cdbSmrg		basic_machine=hppa1.0-hp
68553354cdbSmrg		;;
68653354cdbSmrg	hppa-next)
68753354cdbSmrg		os=-nextstep3
68853354cdbSmrg		;;
68953354cdbSmrg	hppaosf)
69053354cdbSmrg		basic_machine=hppa1.1-hp
69153354cdbSmrg		os=-osf
69253354cdbSmrg		;;
69353354cdbSmrg	hppro)
69453354cdbSmrg		basic_machine=hppa1.1-hp
69553354cdbSmrg		os=-proelf
69653354cdbSmrg		;;
69753354cdbSmrg	i370-ibm* | ibm*)
69853354cdbSmrg		basic_machine=i370-ibm
69953354cdbSmrg		;;
70053354cdbSmrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
70153354cdbSmrg	i*86v32)
70253354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
70353354cdbSmrg		os=-sysv32
70453354cdbSmrg		;;
70553354cdbSmrg	i*86v4*)
70653354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
70753354cdbSmrg		os=-sysv4
70853354cdbSmrg		;;
70953354cdbSmrg	i*86v)
71053354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
71153354cdbSmrg		os=-sysv
71253354cdbSmrg		;;
71353354cdbSmrg	i*86sol2)
71453354cdbSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
71553354cdbSmrg		os=-solaris2
71653354cdbSmrg		;;
71753354cdbSmrg	i386mach)
71853354cdbSmrg		basic_machine=i386-mach
71953354cdbSmrg		os=-mach
72053354cdbSmrg		;;
72153354cdbSmrg	i386-vsta | vsta)
72253354cdbSmrg		basic_machine=i386-unknown
72353354cdbSmrg		os=-vsta
72453354cdbSmrg		;;
72553354cdbSmrg	iris | iris4d)
72653354cdbSmrg		basic_machine=mips-sgi
72753354cdbSmrg		case $os in
72853354cdbSmrg		    -irix*)
72953354cdbSmrg			;;
73053354cdbSmrg		    *)
73153354cdbSmrg			os=-irix4
73253354cdbSmrg			;;
73353354cdbSmrg		esac
73453354cdbSmrg		;;
73553354cdbSmrg	isi68 | isi)
73653354cdbSmrg		basic_machine=m68k-isi
73753354cdbSmrg		os=-sysv
73853354cdbSmrg		;;
73953354cdbSmrg	m68knommu)
74053354cdbSmrg		basic_machine=m68k-unknown
74153354cdbSmrg		os=-linux
74253354cdbSmrg		;;
74353354cdbSmrg	m68knommu-*)
74453354cdbSmrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
74553354cdbSmrg		os=-linux
74653354cdbSmrg		;;
74753354cdbSmrg	m88k-omron*)
74853354cdbSmrg		basic_machine=m88k-omron
74953354cdbSmrg		;;
75053354cdbSmrg	magnum | m3230)
75153354cdbSmrg		basic_machine=mips-mips
75253354cdbSmrg		os=-sysv
75353354cdbSmrg		;;
75453354cdbSmrg	merlin)
75553354cdbSmrg		basic_machine=ns32k-utek
75653354cdbSmrg		os=-sysv
75753354cdbSmrg		;;
75886bbecbeSmrg        microblaze)
75986bbecbeSmrg		basic_machine=microblaze-xilinx
76086bbecbeSmrg		;;
76153354cdbSmrg	mingw32)
76253354cdbSmrg		basic_machine=i386-pc
76353354cdbSmrg		os=-mingw32
76453354cdbSmrg		;;
76553354cdbSmrg	mingw32ce)
76653354cdbSmrg		basic_machine=arm-unknown
76753354cdbSmrg		os=-mingw32ce
76853354cdbSmrg		;;
76953354cdbSmrg	miniframe)
77053354cdbSmrg		basic_machine=m68000-convergent
77153354cdbSmrg		;;
77253354cdbSmrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
77353354cdbSmrg		basic_machine=m68k-atari
77453354cdbSmrg		os=-mint
77553354cdbSmrg		;;
77653354cdbSmrg	mips3*-*)
77753354cdbSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
77853354cdbSmrg		;;
77953354cdbSmrg	mips3*)
78053354cdbSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
78153354cdbSmrg		;;
78253354cdbSmrg	monitor)
78353354cdbSmrg		basic_machine=m68k-rom68k
78453354cdbSmrg		os=-coff
78553354cdbSmrg		;;
78653354cdbSmrg	morphos)
78753354cdbSmrg		basic_machine=powerpc-unknown
78853354cdbSmrg		os=-morphos
78953354cdbSmrg		;;
79053354cdbSmrg	msdos)
79153354cdbSmrg		basic_machine=i386-pc
79253354cdbSmrg		os=-msdos
79353354cdbSmrg		;;
79453354cdbSmrg	ms1-*)
79553354cdbSmrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
79653354cdbSmrg		;;
79753354cdbSmrg	mvs)
79853354cdbSmrg		basic_machine=i370-ibm
79953354cdbSmrg		os=-mvs
80053354cdbSmrg		;;
80153354cdbSmrg	ncr3000)
80253354cdbSmrg		basic_machine=i486-ncr
80353354cdbSmrg		os=-sysv4
80453354cdbSmrg		;;
80553354cdbSmrg	netbsd386)
80653354cdbSmrg		basic_machine=i386-unknown
80753354cdbSmrg		os=-netbsd
80853354cdbSmrg		;;
80953354cdbSmrg	netwinder)
81053354cdbSmrg		basic_machine=armv4l-rebel
81153354cdbSmrg		os=-linux
81253354cdbSmrg		;;
81353354cdbSmrg	news | news700 | news800 | news900)
81453354cdbSmrg		basic_machine=m68k-sony
81553354cdbSmrg		os=-newsos
81653354cdbSmrg		;;
81753354cdbSmrg	news1000)
81853354cdbSmrg		basic_machine=m68030-sony
81953354cdbSmrg		os=-newsos
82053354cdbSmrg		;;
82153354cdbSmrg	news-3600 | risc-news)
82253354cdbSmrg		basic_machine=mips-sony
82353354cdbSmrg		os=-newsos
82453354cdbSmrg		;;
82553354cdbSmrg	necv70)
82653354cdbSmrg		basic_machine=v70-nec
82753354cdbSmrg		os=-sysv
82853354cdbSmrg		;;
82953354cdbSmrg	next | m*-next )
83053354cdbSmrg		basic_machine=m68k-next
83153354cdbSmrg		case $os in
83253354cdbSmrg		    -nextstep* )
83353354cdbSmrg			;;
83453354cdbSmrg		    -ns2*)
83553354cdbSmrg		      os=-nextstep2
83653354cdbSmrg			;;
83753354cdbSmrg		    *)
83853354cdbSmrg		      os=-nextstep3
83953354cdbSmrg			;;
84053354cdbSmrg		esac
84153354cdbSmrg		;;
84253354cdbSmrg	nh3000)
84353354cdbSmrg		basic_machine=m68k-harris
84453354cdbSmrg		os=-cxux
84553354cdbSmrg		;;
84653354cdbSmrg	nh[45]000)
84753354cdbSmrg		basic_machine=m88k-harris
84853354cdbSmrg		os=-cxux
84953354cdbSmrg		;;
85053354cdbSmrg	nindy960)
85153354cdbSmrg		basic_machine=i960-intel
85253354cdbSmrg		os=-nindy
85353354cdbSmrg		;;
85453354cdbSmrg	mon960)
85553354cdbSmrg		basic_machine=i960-intel
85653354cdbSmrg		os=-mon960
85753354cdbSmrg		;;
85853354cdbSmrg	nonstopux)
85953354cdbSmrg		basic_machine=mips-compaq
86053354cdbSmrg		os=-nonstopux
86153354cdbSmrg		;;
86253354cdbSmrg	np1)
86353354cdbSmrg		basic_machine=np1-gould
86453354cdbSmrg		;;
86586bbecbeSmrg        neo-tandem)
86686bbecbeSmrg		basic_machine=neo-tandem
86786bbecbeSmrg		;;
86886bbecbeSmrg        nse-tandem)
86986bbecbeSmrg		basic_machine=nse-tandem
87086bbecbeSmrg		;;
87153354cdbSmrg	nsr-tandem)
87253354cdbSmrg		basic_machine=nsr-tandem
87353354cdbSmrg		;;
87453354cdbSmrg	op50n-* | op60c-*)
87553354cdbSmrg		basic_machine=hppa1.1-oki
87653354cdbSmrg		os=-proelf
87753354cdbSmrg		;;
87853354cdbSmrg	openrisc | openrisc-*)
87953354cdbSmrg		basic_machine=or32-unknown
88053354cdbSmrg		;;
88153354cdbSmrg	os400)
88253354cdbSmrg		basic_machine=powerpc-ibm
88353354cdbSmrg		os=-os400
88453354cdbSmrg		;;
88553354cdbSmrg	OSE68000 | ose68000)
88653354cdbSmrg		basic_machine=m68000-ericsson
88753354cdbSmrg		os=-ose
88853354cdbSmrg		;;
88953354cdbSmrg	os68k)
89053354cdbSmrg		basic_machine=m68k-none
89153354cdbSmrg		os=-os68k
89253354cdbSmrg		;;
89353354cdbSmrg	pa-hitachi)
89453354cdbSmrg		basic_machine=hppa1.1-hitachi
89553354cdbSmrg		os=-hiuxwe2
89653354cdbSmrg		;;
89753354cdbSmrg	paragon)
89853354cdbSmrg		basic_machine=i860-intel
89953354cdbSmrg		os=-osf
90053354cdbSmrg		;;
90153354cdbSmrg	parisc)
90253354cdbSmrg		basic_machine=hppa-unknown
90353354cdbSmrg		os=-linux
90453354cdbSmrg		;;
90553354cdbSmrg	parisc-*)
90653354cdbSmrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
90753354cdbSmrg		os=-linux
90853354cdbSmrg		;;
90953354cdbSmrg	pbd)
91053354cdbSmrg		basic_machine=sparc-tti
91153354cdbSmrg		;;
91253354cdbSmrg	pbb)
91353354cdbSmrg		basic_machine=m68k-tti
91453354cdbSmrg		;;
91553354cdbSmrg	pc532 | pc532-*)
91653354cdbSmrg		basic_machine=ns32k-pc532
91753354cdbSmrg		;;
91853354cdbSmrg	pc98)
91953354cdbSmrg		basic_machine=i386-pc
92053354cdbSmrg		;;
92153354cdbSmrg	pc98-*)
92253354cdbSmrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
92353354cdbSmrg		;;
92453354cdbSmrg	pentium | p5 | k5 | k6 | nexgen | viac3)
92553354cdbSmrg		basic_machine=i586-pc
92653354cdbSmrg		;;
92753354cdbSmrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
92853354cdbSmrg		basic_machine=i686-pc
92953354cdbSmrg		;;
93053354cdbSmrg	pentiumii | pentium2 | pentiumiii | pentium3)
93153354cdbSmrg		basic_machine=i686-pc
93253354cdbSmrg		;;
93353354cdbSmrg	pentium4)
93453354cdbSmrg		basic_machine=i786-pc
93553354cdbSmrg		;;
93653354cdbSmrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
93753354cdbSmrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
93853354cdbSmrg		;;
93953354cdbSmrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
94053354cdbSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
94153354cdbSmrg		;;
94253354cdbSmrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
94353354cdbSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
94453354cdbSmrg		;;
94553354cdbSmrg	pentium4-*)
94653354cdbSmrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
94753354cdbSmrg		;;
94853354cdbSmrg	pn)
94953354cdbSmrg		basic_machine=pn-gould
95053354cdbSmrg		;;
95153354cdbSmrg	power)	basic_machine=power-ibm
95253354cdbSmrg		;;
95353354cdbSmrg	ppc)	basic_machine=powerpc-unknown
95453354cdbSmrg		;;
95553354cdbSmrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
95653354cdbSmrg		;;
95753354cdbSmrg	ppcle | powerpclittle | ppc-le | powerpc-little)
95853354cdbSmrg		basic_machine=powerpcle-unknown
95953354cdbSmrg		;;
96053354cdbSmrg	ppcle-* | powerpclittle-*)
96153354cdbSmrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
96253354cdbSmrg		;;
96353354cdbSmrg	ppc64)	basic_machine=powerpc64-unknown
96453354cdbSmrg		;;
96553354cdbSmrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
96653354cdbSmrg		;;
96753354cdbSmrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
96853354cdbSmrg		basic_machine=powerpc64le-unknown
96953354cdbSmrg		;;
97053354cdbSmrg	ppc64le-* | powerpc64little-*)
97153354cdbSmrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
97253354cdbSmrg		;;
97353354cdbSmrg	ps2)
97453354cdbSmrg		basic_machine=i386-ibm
97553354cdbSmrg		;;
97653354cdbSmrg	pw32)
97753354cdbSmrg		basic_machine=i586-unknown
97853354cdbSmrg		os=-pw32
97953354cdbSmrg		;;
98053354cdbSmrg	rdos)
98153354cdbSmrg		basic_machine=i386-pc
98253354cdbSmrg		os=-rdos
98353354cdbSmrg		;;
98453354cdbSmrg	rom68k)
98553354cdbSmrg		basic_machine=m68k-rom68k
98653354cdbSmrg		os=-coff
98753354cdbSmrg		;;
98853354cdbSmrg	rm[46]00)
98953354cdbSmrg		basic_machine=mips-siemens
99053354cdbSmrg		;;
99153354cdbSmrg	rtpc | rtpc-*)
99253354cdbSmrg		basic_machine=romp-ibm
99353354cdbSmrg		;;
99453354cdbSmrg	s390 | s390-*)
99553354cdbSmrg		basic_machine=s390-ibm
99653354cdbSmrg		;;
99753354cdbSmrg	s390x | s390x-*)
99853354cdbSmrg		basic_machine=s390x-ibm
99953354cdbSmrg		;;
100053354cdbSmrg	sa29200)
100153354cdbSmrg		basic_machine=a29k-amd
100253354cdbSmrg		os=-udi
100353354cdbSmrg		;;
100453354cdbSmrg	sb1)
100553354cdbSmrg		basic_machine=mipsisa64sb1-unknown
100653354cdbSmrg		;;
100753354cdbSmrg	sb1el)
100853354cdbSmrg		basic_machine=mipsisa64sb1el-unknown
100953354cdbSmrg		;;
101053354cdbSmrg	sde)
101153354cdbSmrg		basic_machine=mipsisa32-sde
101253354cdbSmrg		os=-elf
101353354cdbSmrg		;;
101453354cdbSmrg	sei)
101553354cdbSmrg		basic_machine=mips-sei
101653354cdbSmrg		os=-seiux
101753354cdbSmrg		;;
101853354cdbSmrg	sequent)
101953354cdbSmrg		basic_machine=i386-sequent
102053354cdbSmrg		;;
102153354cdbSmrg	sh)
102253354cdbSmrg		basic_machine=sh-hitachi
102353354cdbSmrg		os=-hms
102453354cdbSmrg		;;
102553354cdbSmrg	sh5el)
102653354cdbSmrg		basic_machine=sh5le-unknown
102753354cdbSmrg		;;
102853354cdbSmrg	sh64)
102953354cdbSmrg		basic_machine=sh64-unknown
103053354cdbSmrg		;;
103153354cdbSmrg	sparclite-wrs | simso-wrs)
103253354cdbSmrg		basic_machine=sparclite-wrs
103353354cdbSmrg		os=-vxworks
103453354cdbSmrg		;;
103553354cdbSmrg	sps7)
103653354cdbSmrg		basic_machine=m68k-bull
103753354cdbSmrg		os=-sysv2
103853354cdbSmrg		;;
103953354cdbSmrg	spur)
104053354cdbSmrg		basic_machine=spur-unknown
104153354cdbSmrg		;;
104253354cdbSmrg	st2000)
104353354cdbSmrg		basic_machine=m68k-tandem
104453354cdbSmrg		;;
104553354cdbSmrg	stratus)
104653354cdbSmrg		basic_machine=i860-stratus
104753354cdbSmrg		os=-sysv4
104853354cdbSmrg		;;
104953354cdbSmrg	sun2)
105053354cdbSmrg		basic_machine=m68000-sun
105153354cdbSmrg		;;
105253354cdbSmrg	sun2os3)
105353354cdbSmrg		basic_machine=m68000-sun
105453354cdbSmrg		os=-sunos3
105553354cdbSmrg		;;
105653354cdbSmrg	sun2os4)
105753354cdbSmrg		basic_machine=m68000-sun
105853354cdbSmrg		os=-sunos4
105953354cdbSmrg		;;
106053354cdbSmrg	sun3os3)
106153354cdbSmrg		basic_machine=m68k-sun
106253354cdbSmrg		os=-sunos3
106353354cdbSmrg		;;
106453354cdbSmrg	sun3os4)
106553354cdbSmrg		basic_machine=m68k-sun
106653354cdbSmrg		os=-sunos4
106753354cdbSmrg		;;
106853354cdbSmrg	sun4os3)
106953354cdbSmrg		basic_machine=sparc-sun
107053354cdbSmrg		os=-sunos3
107153354cdbSmrg		;;
107253354cdbSmrg	sun4os4)
107353354cdbSmrg		basic_machine=sparc-sun
107453354cdbSmrg		os=-sunos4
107553354cdbSmrg		;;
107653354cdbSmrg	sun4sol2)
107753354cdbSmrg		basic_machine=sparc-sun
107853354cdbSmrg		os=-solaris2
107953354cdbSmrg		;;
108053354cdbSmrg	sun3 | sun3-*)
108153354cdbSmrg		basic_machine=m68k-sun
108253354cdbSmrg		;;
108353354cdbSmrg	sun4)
108453354cdbSmrg		basic_machine=sparc-sun
108553354cdbSmrg		;;
108653354cdbSmrg	sun386 | sun386i | roadrunner)
108753354cdbSmrg		basic_machine=i386-sun
108853354cdbSmrg		;;
108953354cdbSmrg	sv1)
109053354cdbSmrg		basic_machine=sv1-cray
109153354cdbSmrg		os=-unicos
109253354cdbSmrg		;;
109353354cdbSmrg	symmetry)
109453354cdbSmrg		basic_machine=i386-sequent
109553354cdbSmrg		os=-dynix
109653354cdbSmrg		;;
109753354cdbSmrg	t3e)
109853354cdbSmrg		basic_machine=alphaev5-cray
109953354cdbSmrg		os=-unicos
110053354cdbSmrg		;;
110153354cdbSmrg	t90)
110253354cdbSmrg		basic_machine=t90-cray
110353354cdbSmrg		os=-unicos
110453354cdbSmrg		;;
110586bbecbeSmrg        # This must be matched before tile*.
110686bbecbeSmrg        tilegx*)
110786bbecbeSmrg		basic_machine=tilegx-unknown
110886bbecbeSmrg		os=-linux-gnu
110953354cdbSmrg		;;
111086bbecbeSmrg	tile*)
111186bbecbeSmrg		basic_machine=tile-unknown
111286bbecbeSmrg		os=-linux-gnu
111353354cdbSmrg		;;
111453354cdbSmrg	tx39)
111553354cdbSmrg		basic_machine=mipstx39-unknown
111653354cdbSmrg		;;
111753354cdbSmrg	tx39el)
111853354cdbSmrg		basic_machine=mipstx39el-unknown
111953354cdbSmrg		;;
112053354cdbSmrg	toad1)
112153354cdbSmrg		basic_machine=pdp10-xkl
112253354cdbSmrg		os=-tops20
112353354cdbSmrg		;;
112453354cdbSmrg	tower | tower-32)
112553354cdbSmrg		basic_machine=m68k-ncr
112653354cdbSmrg		;;
112753354cdbSmrg	tpf)
112853354cdbSmrg		basic_machine=s390x-ibm
112953354cdbSmrg		os=-tpf
113053354cdbSmrg		;;
113153354cdbSmrg	udi29k)
113253354cdbSmrg		basic_machine=a29k-amd
113353354cdbSmrg		os=-udi
113453354cdbSmrg		;;
113553354cdbSmrg	ultra3)
113653354cdbSmrg		basic_machine=a29k-nyu
113753354cdbSmrg		os=-sym1
113853354cdbSmrg		;;
113953354cdbSmrg	v810 | necv810)
114053354cdbSmrg		basic_machine=v810-nec
114153354cdbSmrg		os=-none
114253354cdbSmrg		;;
114353354cdbSmrg	vaxv)
114453354cdbSmrg		basic_machine=vax-dec
114553354cdbSmrg		os=-sysv
114653354cdbSmrg		;;
114753354cdbSmrg	vms)
114853354cdbSmrg		basic_machine=vax-dec
114953354cdbSmrg		os=-vms
115053354cdbSmrg		;;
115153354cdbSmrg	vpp*|vx|vx-*)
115253354cdbSmrg		basic_machine=f301-fujitsu
115353354cdbSmrg		;;
115453354cdbSmrg	vxworks960)
115553354cdbSmrg		basic_machine=i960-wrs
115653354cdbSmrg		os=-vxworks
115753354cdbSmrg		;;
115853354cdbSmrg	vxworks68)
115953354cdbSmrg		basic_machine=m68k-wrs
116053354cdbSmrg		os=-vxworks
116153354cdbSmrg		;;
116253354cdbSmrg	vxworks29k)
116353354cdbSmrg		basic_machine=a29k-wrs
116453354cdbSmrg		os=-vxworks
116553354cdbSmrg		;;
116653354cdbSmrg	w65*)
116753354cdbSmrg		basic_machine=w65-wdc
116853354cdbSmrg		os=-none
116953354cdbSmrg		;;
117053354cdbSmrg	w89k-*)
117153354cdbSmrg		basic_machine=hppa1.1-winbond
117253354cdbSmrg		os=-proelf
117353354cdbSmrg		;;
117453354cdbSmrg	xbox)
117553354cdbSmrg		basic_machine=i686-pc
117653354cdbSmrg		os=-mingw32
117753354cdbSmrg		;;
117853354cdbSmrg	xps | xps100)
117953354cdbSmrg		basic_machine=xps100-honeywell
118053354cdbSmrg		;;
118153354cdbSmrg	ymp)
118253354cdbSmrg		basic_machine=ymp-cray
118353354cdbSmrg		os=-unicos
118453354cdbSmrg		;;
118553354cdbSmrg	z8k-*-coff)
118653354cdbSmrg		basic_machine=z8k-unknown
118753354cdbSmrg		os=-sim
118853354cdbSmrg		;;
118986bbecbeSmrg	z80-*-coff)
119086bbecbeSmrg		basic_machine=z80-unknown
119186bbecbeSmrg		os=-sim
119286bbecbeSmrg		;;
119353354cdbSmrg	none)
119453354cdbSmrg		basic_machine=none-none
119553354cdbSmrg		os=-none
119653354cdbSmrg		;;
119753354cdbSmrg
119853354cdbSmrg# Here we handle the default manufacturer of certain CPU types.  It is in
119953354cdbSmrg# some cases the only manufacturer, in others, it is the most popular.
120053354cdbSmrg	w89k)
120153354cdbSmrg		basic_machine=hppa1.1-winbond
120253354cdbSmrg		;;
120353354cdbSmrg	op50n)
120453354cdbSmrg		basic_machine=hppa1.1-oki
120553354cdbSmrg		;;
120653354cdbSmrg	op60c)
120753354cdbSmrg		basic_machine=hppa1.1-oki
120853354cdbSmrg		;;
120953354cdbSmrg	romp)
121053354cdbSmrg		basic_machine=romp-ibm
121153354cdbSmrg		;;
121253354cdbSmrg	mmix)
121353354cdbSmrg		basic_machine=mmix-knuth
121453354cdbSmrg		;;
121553354cdbSmrg	rs6000)
121653354cdbSmrg		basic_machine=rs6000-ibm
121753354cdbSmrg		;;
121853354cdbSmrg	vax)
121953354cdbSmrg		basic_machine=vax-dec
122053354cdbSmrg		;;
122153354cdbSmrg	pdp10)
122253354cdbSmrg		# there are many clones, so DEC is not a safe bet
122353354cdbSmrg		basic_machine=pdp10-unknown
122453354cdbSmrg		;;
122553354cdbSmrg	pdp11)
122653354cdbSmrg		basic_machine=pdp11-dec
122753354cdbSmrg		;;
122853354cdbSmrg	we32k)
122953354cdbSmrg		basic_machine=we32k-att
123053354cdbSmrg		;;
123186bbecbeSmrg	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
123253354cdbSmrg		basic_machine=sh-unknown
123353354cdbSmrg		;;
123453354cdbSmrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
123553354cdbSmrg		basic_machine=sparc-sun
123653354cdbSmrg		;;
123753354cdbSmrg	cydra)
123853354cdbSmrg		basic_machine=cydra-cydrome
123953354cdbSmrg		;;
124053354cdbSmrg	orion)
124153354cdbSmrg		basic_machine=orion-highlevel
124253354cdbSmrg		;;
124353354cdbSmrg	orion105)
124453354cdbSmrg		basic_machine=clipper-highlevel
124553354cdbSmrg		;;
124653354cdbSmrg	mac | mpw | mac-mpw)
124753354cdbSmrg		basic_machine=m68k-apple
124853354cdbSmrg		;;
124953354cdbSmrg	pmac | pmac-mpw)
125053354cdbSmrg		basic_machine=powerpc-apple
125153354cdbSmrg		;;
125253354cdbSmrg	*-unknown)
125353354cdbSmrg		# Make sure to match an already-canonicalized machine name.
125453354cdbSmrg		;;
125553354cdbSmrg	*)
125653354cdbSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
125753354cdbSmrg		exit 1
125853354cdbSmrg		;;
125953354cdbSmrgesac
126053354cdbSmrg
126153354cdbSmrg# Here we canonicalize certain aliases for manufacturers.
126253354cdbSmrgcase $basic_machine in
126353354cdbSmrg	*-digital*)
126453354cdbSmrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
126553354cdbSmrg		;;
126653354cdbSmrg	*-commodore*)
126753354cdbSmrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
126853354cdbSmrg		;;
126953354cdbSmrg	*)
127053354cdbSmrg		;;
127153354cdbSmrgesac
127253354cdbSmrg
127353354cdbSmrg# Decode manufacturer-specific aliases for certain operating systems.
127453354cdbSmrg
127553354cdbSmrgif [ x"$os" != x"" ]
127653354cdbSmrgthen
127753354cdbSmrgcase $os in
127853354cdbSmrg        # First match some system type aliases
127953354cdbSmrg        # that might get confused with valid system types.
128053354cdbSmrg	# -solaris* is a basic system type, with this one exception.
128186bbecbeSmrg        -auroraux)
128286bbecbeSmrg	        os=-auroraux
128386bbecbeSmrg		;;
128453354cdbSmrg	-solaris1 | -solaris1.*)
128553354cdbSmrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
128653354cdbSmrg		;;
128753354cdbSmrg	-solaris)
128853354cdbSmrg		os=-solaris2
128953354cdbSmrg		;;
129053354cdbSmrg	-svr4*)
129153354cdbSmrg		os=-sysv4
129253354cdbSmrg		;;
129353354cdbSmrg	-unixware*)
129453354cdbSmrg		os=-sysv4.2uw
129553354cdbSmrg		;;
129653354cdbSmrg	-gnu/linux*)
129753354cdbSmrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
129853354cdbSmrg		;;
129953354cdbSmrg	# First accept the basic system types.
130053354cdbSmrg	# The portable systems comes first.
130153354cdbSmrg	# Each alternative MUST END IN A *, to match a version number.
130253354cdbSmrg	# -sysv* is not here because it comes later, after sysvr4.
130353354cdbSmrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
130486bbecbeSmrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
130586bbecbeSmrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
130686bbecbeSmrg	      | -sym* | -kopensolaris* \
130753354cdbSmrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
130886bbecbeSmrg	      | -aos* | -aros* \
130953354cdbSmrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
131053354cdbSmrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
131153354cdbSmrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
131253354cdbSmrg	      | -openbsd* | -solidbsd* \
131353354cdbSmrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
131453354cdbSmrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
131553354cdbSmrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
131653354cdbSmrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
131786bbecbeSmrg	      | -chorusos* | -chorusrdb* | -cegcc* \
131853354cdbSmrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
131986bbecbeSmrg	      | -mingw32* | -linux-gnu* | -linux-android* \
132086bbecbeSmrg	      | -linux-newlib* | -linux-uclibc* \
132153354cdbSmrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
132253354cdbSmrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
132353354cdbSmrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
132453354cdbSmrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
132553354cdbSmrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
132653354cdbSmrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
132753354cdbSmrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
132886bbecbeSmrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
132953354cdbSmrg	# Remember, each alternative MUST END IN *, to match a version number.
133053354cdbSmrg		;;
133153354cdbSmrg	-qnx*)
133253354cdbSmrg		case $basic_machine in
133353354cdbSmrg		    x86-* | i*86-*)
133453354cdbSmrg			;;
133553354cdbSmrg		    *)
133653354cdbSmrg			os=-nto$os
133753354cdbSmrg			;;
133853354cdbSmrg		esac
133953354cdbSmrg		;;
134053354cdbSmrg	-nto-qnx*)
134153354cdbSmrg		;;
134253354cdbSmrg	-nto*)
134353354cdbSmrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
134453354cdbSmrg		;;
134553354cdbSmrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
134653354cdbSmrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
134753354cdbSmrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
134853354cdbSmrg		;;
134953354cdbSmrg	-mac*)
135053354cdbSmrg		os=`echo $os | sed -e 's|mac|macos|'`
135153354cdbSmrg		;;
135253354cdbSmrg	-linux-dietlibc)
135353354cdbSmrg		os=-linux-dietlibc
135453354cdbSmrg		;;
135553354cdbSmrg	-linux*)
135653354cdbSmrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
135753354cdbSmrg		;;
135853354cdbSmrg	-sunos5*)
135953354cdbSmrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
136053354cdbSmrg		;;
136153354cdbSmrg	-sunos6*)
136253354cdbSmrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
136353354cdbSmrg		;;
136453354cdbSmrg	-opened*)
136553354cdbSmrg		os=-openedition
136653354cdbSmrg		;;
136753354cdbSmrg        -os400*)
136853354cdbSmrg		os=-os400
136953354cdbSmrg		;;
137053354cdbSmrg	-wince*)
137153354cdbSmrg		os=-wince
137253354cdbSmrg		;;
137353354cdbSmrg	-osfrose*)
137453354cdbSmrg		os=-osfrose
137553354cdbSmrg		;;
137653354cdbSmrg	-osf*)
137753354cdbSmrg		os=-osf
137853354cdbSmrg		;;
137953354cdbSmrg	-utek*)
138053354cdbSmrg		os=-bsd
138153354cdbSmrg		;;
138253354cdbSmrg	-dynix*)
138353354cdbSmrg		os=-bsd
138453354cdbSmrg		;;
138553354cdbSmrg	-acis*)
138653354cdbSmrg		os=-aos
138753354cdbSmrg		;;
138853354cdbSmrg	-atheos*)
138953354cdbSmrg		os=-atheos
139053354cdbSmrg		;;
139153354cdbSmrg	-syllable*)
139253354cdbSmrg		os=-syllable
139353354cdbSmrg		;;
139453354cdbSmrg	-386bsd)
139553354cdbSmrg		os=-bsd
139653354cdbSmrg		;;
139753354cdbSmrg	-ctix* | -uts*)
139853354cdbSmrg		os=-sysv
139953354cdbSmrg		;;
140053354cdbSmrg	-nova*)
140153354cdbSmrg		os=-rtmk-nova
140253354cdbSmrg		;;
140353354cdbSmrg	-ns2 )
140453354cdbSmrg		os=-nextstep2
140553354cdbSmrg		;;
140653354cdbSmrg	-nsk*)
140753354cdbSmrg		os=-nsk
140853354cdbSmrg		;;
140953354cdbSmrg	# Preserve the version number of sinix5.
141053354cdbSmrg	-sinix5.*)
141153354cdbSmrg		os=`echo $os | sed -e 's|sinix|sysv|'`
141253354cdbSmrg		;;
141353354cdbSmrg	-sinix*)
141453354cdbSmrg		os=-sysv4
141553354cdbSmrg		;;
141653354cdbSmrg        -tpf*)
141753354cdbSmrg		os=-tpf
141853354cdbSmrg		;;
141953354cdbSmrg	-triton*)
142053354cdbSmrg		os=-sysv3
142153354cdbSmrg		;;
142253354cdbSmrg	-oss*)
142353354cdbSmrg		os=-sysv3
142453354cdbSmrg		;;
142553354cdbSmrg	-svr4)
142653354cdbSmrg		os=-sysv4
142753354cdbSmrg		;;
142853354cdbSmrg	-svr3)
142953354cdbSmrg		os=-sysv3
143053354cdbSmrg		;;
143153354cdbSmrg	-sysvr4)
143253354cdbSmrg		os=-sysv4
143353354cdbSmrg		;;
143453354cdbSmrg	# This must come after -sysvr4.
143553354cdbSmrg	-sysv*)
143653354cdbSmrg		;;
143753354cdbSmrg	-ose*)
143853354cdbSmrg		os=-ose
143953354cdbSmrg		;;
144053354cdbSmrg	-es1800*)
144153354cdbSmrg		os=-ose
144253354cdbSmrg		;;
144353354cdbSmrg	-xenix)
144453354cdbSmrg		os=-xenix
144553354cdbSmrg		;;
144653354cdbSmrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
144753354cdbSmrg		os=-mint
144853354cdbSmrg		;;
144953354cdbSmrg	-aros*)
145053354cdbSmrg		os=-aros
145153354cdbSmrg		;;
145253354cdbSmrg	-kaos*)
145353354cdbSmrg		os=-kaos
145453354cdbSmrg		;;
145553354cdbSmrg	-zvmoe)
145653354cdbSmrg		os=-zvmoe
145753354cdbSmrg		;;
145886bbecbeSmrg	-dicos*)
145986bbecbeSmrg		os=-dicos
146086bbecbeSmrg		;;
146186bbecbeSmrg        -nacl*)
146286bbecbeSmrg	        ;;
146353354cdbSmrg	-none)
146453354cdbSmrg		;;
146553354cdbSmrg	*)
146653354cdbSmrg		# Get rid of the `-' at the beginning of $os.
146753354cdbSmrg		os=`echo $os | sed 's/[^-]*-//'`
146853354cdbSmrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
146953354cdbSmrg		exit 1
147053354cdbSmrg		;;
147153354cdbSmrgesac
147253354cdbSmrgelse
147353354cdbSmrg
147453354cdbSmrg# Here we handle the default operating systems that come with various machines.
147553354cdbSmrg# The value should be what the vendor currently ships out the door with their
147653354cdbSmrg# machine or put another way, the most popular os provided with the machine.
147753354cdbSmrg
147853354cdbSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
147953354cdbSmrg# "-sun"), then you have to tell the case statement up towards the top
148053354cdbSmrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
148153354cdbSmrg# will signal an error saying that MANUFACTURER isn't an operating
148253354cdbSmrg# system, and we'll never get to this point.
148353354cdbSmrg
148453354cdbSmrgcase $basic_machine in
148553354cdbSmrg        score-*)
148653354cdbSmrg		os=-elf
148753354cdbSmrg		;;
148853354cdbSmrg        spu-*)
148953354cdbSmrg		os=-elf
149053354cdbSmrg		;;
149153354cdbSmrg	*-acorn)
149253354cdbSmrg		os=-riscix1.2
149353354cdbSmrg		;;
149453354cdbSmrg	arm*-rebel)
149553354cdbSmrg		os=-linux
149653354cdbSmrg		;;
149753354cdbSmrg	arm*-semi)
149853354cdbSmrg		os=-aout
149953354cdbSmrg		;;
150053354cdbSmrg        c4x-* | tic4x-*)
150153354cdbSmrg        	os=-coff
150253354cdbSmrg		;;
150386bbecbeSmrg	tic54x-*)
150486bbecbeSmrg		os=-coff
150586bbecbeSmrg		;;
150686bbecbeSmrg	tic55x-*)
150786bbecbeSmrg		os=-coff
150886bbecbeSmrg		;;
150986bbecbeSmrg	tic6x-*)
151086bbecbeSmrg		os=-coff
151186bbecbeSmrg		;;
151253354cdbSmrg	# This must come before the *-dec entry.
151353354cdbSmrg	pdp10-*)
151453354cdbSmrg		os=-tops20
151553354cdbSmrg		;;
151653354cdbSmrg	pdp11-*)
151753354cdbSmrg		os=-none
151853354cdbSmrg		;;
151953354cdbSmrg	*-dec | vax-*)
152053354cdbSmrg		os=-ultrix4.2
152153354cdbSmrg		;;
152253354cdbSmrg	m68*-apollo)
152353354cdbSmrg		os=-domain
152453354cdbSmrg		;;
152553354cdbSmrg	i386-sun)
152653354cdbSmrg		os=-sunos4.0.2
152753354cdbSmrg		;;
152853354cdbSmrg	m68000-sun)
152953354cdbSmrg		os=-sunos3
153053354cdbSmrg		# This also exists in the configure program, but was not the
153153354cdbSmrg		# default.
153253354cdbSmrg		# os=-sunos4
153353354cdbSmrg		;;
153453354cdbSmrg	m68*-cisco)
153553354cdbSmrg		os=-aout
153653354cdbSmrg		;;
153753354cdbSmrg        mep-*)
153853354cdbSmrg		os=-elf
153953354cdbSmrg		;;
154053354cdbSmrg	mips*-cisco)
154153354cdbSmrg		os=-elf
154253354cdbSmrg		;;
154353354cdbSmrg	mips*-*)
154453354cdbSmrg		os=-elf
154553354cdbSmrg		;;
154653354cdbSmrg	or32-*)
154753354cdbSmrg		os=-coff
154853354cdbSmrg		;;
154953354cdbSmrg	*-tti)	# must be before sparc entry or we get the wrong os.
155053354cdbSmrg		os=-sysv3
155153354cdbSmrg		;;
155253354cdbSmrg	sparc-* | *-sun)
155353354cdbSmrg		os=-sunos4.1.1
155453354cdbSmrg		;;
155553354cdbSmrg	*-be)
155653354cdbSmrg		os=-beos
155753354cdbSmrg		;;
155853354cdbSmrg	*-haiku)
155953354cdbSmrg		os=-haiku
156053354cdbSmrg		;;
156153354cdbSmrg	*-ibm)
156253354cdbSmrg		os=-aix
156353354cdbSmrg		;;
156453354cdbSmrg    	*-knuth)
156553354cdbSmrg		os=-mmixware
156653354cdbSmrg		;;
156753354cdbSmrg	*-wec)
156853354cdbSmrg		os=-proelf
156953354cdbSmrg		;;
157053354cdbSmrg	*-winbond)
157153354cdbSmrg		os=-proelf
157253354cdbSmrg		;;
157353354cdbSmrg	*-oki)
157453354cdbSmrg		os=-proelf
157553354cdbSmrg		;;
157653354cdbSmrg	*-hp)
157753354cdbSmrg		os=-hpux
157853354cdbSmrg		;;
157953354cdbSmrg	*-hitachi)
158053354cdbSmrg		os=-hiux
158153354cdbSmrg		;;
158253354cdbSmrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
158353354cdbSmrg		os=-sysv
158453354cdbSmrg		;;
158553354cdbSmrg	*-cbm)
158653354cdbSmrg		os=-amigaos
158753354cdbSmrg		;;
158853354cdbSmrg	*-dg)
158953354cdbSmrg		os=-dgux
159053354cdbSmrg		;;
159153354cdbSmrg	*-dolphin)
159253354cdbSmrg		os=-sysv3
159353354cdbSmrg		;;
159453354cdbSmrg	m68k-ccur)
159553354cdbSmrg		os=-rtu
159653354cdbSmrg		;;
159753354cdbSmrg	m88k-omron*)
159853354cdbSmrg		os=-luna
159953354cdbSmrg		;;
160053354cdbSmrg	*-next )
160153354cdbSmrg		os=-nextstep
160253354cdbSmrg		;;
160353354cdbSmrg	*-sequent)
160453354cdbSmrg		os=-ptx
160553354cdbSmrg		;;
160653354cdbSmrg	*-crds)
160753354cdbSmrg		os=-unos
160853354cdbSmrg		;;
160953354cdbSmrg	*-ns)
161053354cdbSmrg		os=-genix
161153354cdbSmrg		;;
161253354cdbSmrg	i370-*)
161353354cdbSmrg		os=-mvs
161453354cdbSmrg		;;
161553354cdbSmrg	*-next)
161653354cdbSmrg		os=-nextstep3
161753354cdbSmrg		;;
161853354cdbSmrg	*-gould)
161953354cdbSmrg		os=-sysv
162053354cdbSmrg		;;
162153354cdbSmrg	*-highlevel)
162253354cdbSmrg		os=-bsd
162353354cdbSmrg		;;
162453354cdbSmrg	*-encore)
162553354cdbSmrg		os=-bsd
162653354cdbSmrg		;;
162753354cdbSmrg	*-sgi)
162853354cdbSmrg		os=-irix
162953354cdbSmrg		;;
163053354cdbSmrg	*-siemens)
163153354cdbSmrg		os=-sysv4
163253354cdbSmrg		;;
163353354cdbSmrg	*-masscomp)
163453354cdbSmrg		os=-rtu
163553354cdbSmrg		;;
163653354cdbSmrg	f30[01]-fujitsu | f700-fujitsu)
163753354cdbSmrg		os=-uxpv
163853354cdbSmrg		;;
163953354cdbSmrg	*-rom68k)
164053354cdbSmrg		os=-coff
164153354cdbSmrg		;;
164253354cdbSmrg	*-*bug)
164353354cdbSmrg		os=-coff
164453354cdbSmrg		;;
164553354cdbSmrg	*-apple)
164653354cdbSmrg		os=-macos
164753354cdbSmrg		;;
164853354cdbSmrg	*-atari*)
164953354cdbSmrg		os=-mint
165053354cdbSmrg		;;
165153354cdbSmrg	*)
165253354cdbSmrg		os=-none
165353354cdbSmrg		;;
165453354cdbSmrgesac
165553354cdbSmrgfi
165653354cdbSmrg
165753354cdbSmrg# Here we handle the case where we know the os, and the CPU type, but not the
165853354cdbSmrg# manufacturer.  We pick the logical manufacturer.
165953354cdbSmrgvendor=unknown
166053354cdbSmrgcase $basic_machine in
166153354cdbSmrg	*-unknown)
166253354cdbSmrg		case $os in
166353354cdbSmrg			-riscix*)
166453354cdbSmrg				vendor=acorn
166553354cdbSmrg				;;
166653354cdbSmrg			-sunos*)
166753354cdbSmrg				vendor=sun
166853354cdbSmrg				;;
166986bbecbeSmrg			-cnk*|-aix*)
167053354cdbSmrg				vendor=ibm
167153354cdbSmrg				;;
167253354cdbSmrg			-beos*)
167353354cdbSmrg				vendor=be
167453354cdbSmrg				;;
167553354cdbSmrg			-hpux*)
167653354cdbSmrg				vendor=hp
167753354cdbSmrg				;;
167853354cdbSmrg			-mpeix*)
167953354cdbSmrg				vendor=hp
168053354cdbSmrg				;;
168153354cdbSmrg			-hiux*)
168253354cdbSmrg				vendor=hitachi
168353354cdbSmrg				;;
168453354cdbSmrg			-unos*)
168553354cdbSmrg				vendor=crds
168653354cdbSmrg				;;
168753354cdbSmrg			-dgux*)
168853354cdbSmrg				vendor=dg
168953354cdbSmrg				;;
169053354cdbSmrg			-luna*)
169153354cdbSmrg				vendor=omron
169253354cdbSmrg				;;
169353354cdbSmrg			-genix*)
169453354cdbSmrg				vendor=ns
169553354cdbSmrg				;;
169653354cdbSmrg			-mvs* | -opened*)
169753354cdbSmrg				vendor=ibm
169853354cdbSmrg				;;
169953354cdbSmrg			-os400*)
170053354cdbSmrg				vendor=ibm
170153354cdbSmrg				;;
170253354cdbSmrg			-ptx*)
170353354cdbSmrg				vendor=sequent
170453354cdbSmrg				;;
170553354cdbSmrg			-tpf*)
170653354cdbSmrg				vendor=ibm
170753354cdbSmrg				;;
170853354cdbSmrg			-vxsim* | -vxworks* | -windiss*)
170953354cdbSmrg				vendor=wrs
171053354cdbSmrg				;;
171153354cdbSmrg			-aux*)
171253354cdbSmrg				vendor=apple
171353354cdbSmrg				;;
171453354cdbSmrg			-hms*)
171553354cdbSmrg				vendor=hitachi
171653354cdbSmrg				;;
171753354cdbSmrg			-mpw* | -macos*)
171853354cdbSmrg				vendor=apple
171953354cdbSmrg				;;
172053354cdbSmrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
172153354cdbSmrg				vendor=atari
172253354cdbSmrg				;;
172353354cdbSmrg			-vos*)
172453354cdbSmrg				vendor=stratus
172553354cdbSmrg				;;
172653354cdbSmrg		esac
172753354cdbSmrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
172853354cdbSmrg		;;
172953354cdbSmrgesac
173053354cdbSmrg
173153354cdbSmrgecho $basic_machine$os
173253354cdbSmrgexit
173353354cdbSmrg
173453354cdbSmrg# Local variables:
173553354cdbSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
173653354cdbSmrg# time-stamp-start: "timestamp='"
173753354cdbSmrg# time-stamp-format: "%:y-%02m-%02d"
173853354cdbSmrg# time-stamp-end: "'"
173953354cdbSmrg# End:
1740