198937Sdes#! /bin/sh
298937Sdes# Configuration validation subroutine script.
3106121Sdes#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4225825Sdes#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5255670Sdes#   2011, 2012, 2013 Free Software Foundation, Inc.
698937Sdes
7255670Sdestimestamp='2012-12-23'
898937Sdes
998937Sdes# This file is (in principle) common to ALL GNU software.
1098937Sdes# The presence of a machine in this file suggests that SOME GNU software
1198937Sdes# can handle that machine.  It does not imply ALL GNU software can.
1298937Sdes#
1398937Sdes# This file is free software; you can redistribute it and/or modify
1498937Sdes# it under the terms of the GNU General Public License as published by
1598937Sdes# the Free Software Foundation; either version 2 of the License, or
1698937Sdes# (at your option) any later version.
1798937Sdes#
1898937Sdes# This program is distributed in the hope that it will be useful,
1998937Sdes# but WITHOUT ANY WARRANTY; without even the implied warranty of
2098937Sdes# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2198937Sdes# GNU General Public License for more details.
2298937Sdes#
2398937Sdes# You should have received a copy of the GNU General Public License
24255670Sdes# along with this program; if not, see <http://www.gnu.org/licenses/>.
25149749Sdes#
2698937Sdes# As a special exception to the GNU General Public License, if you
2798937Sdes# distribute this file as part of a program that contains a
2898937Sdes# configuration script generated by Autoconf, you may include it under
2998937Sdes# the same distribution terms that you use for the rest of that program.
3098937Sdes
31149749Sdes
32106121Sdes# Please send patches to <config-patches@gnu.org>.  Submit a context
33204861Sdes# diff and a properly formatted GNU ChangeLog entry.
3498937Sdes#
3598937Sdes# Configuration subroutine to validate and canonicalize a configuration type.
3698937Sdes# Supply the specified configuration type as an argument.
3798937Sdes# If it is invalid, we print an error message on stderr and exit with code 1.
3898937Sdes# Otherwise, we print the canonical config type on stdout and succeed.
3998937Sdes
40204861Sdes# You can get the latest version of this script from:
41204861Sdes# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
42204861Sdes
4398937Sdes# This file is supposed to be the same for all GNU packages
4498937Sdes# and recognize all the CPU types, system types and aliases
4598937Sdes# that are meaningful with *any* GNU software.
4698937Sdes# Each package is responsible for reporting which valid configurations
4798937Sdes# it does not support.  The user should be able to distinguish
4898937Sdes# a failure to support a valid configuration from a meaningless
4998937Sdes# configuration.
5098937Sdes
5198937Sdes# The goal of this file is to map all the various variations of a given
5298937Sdes# machine specification into a single specification in the form:
5398937Sdes#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
5498937Sdes# or in some cases, the newer four-part form:
5598937Sdes#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
5698937Sdes# It is wrong to echo any other type of specification.
5798937Sdes
5898937Sdesme=`echo "$0" | sed -e 's,.*/,,'`
5998937Sdes
6098937Sdesusage="\
6198937SdesUsage: $0 [OPTION] CPU-MFR-OPSYS
6298937Sdes       $0 [OPTION] ALIAS
6398937Sdes
6498937SdesCanonicalize a configuration name.
6598937Sdes
6698937SdesOperation modes:
6798937Sdes  -h, --help         print this help, then exit
6898937Sdes  -t, --time-stamp   print date of last modification, then exit
6998937Sdes  -v, --version      print version number, then exit
7098937Sdes
7198937SdesReport bugs and patches to <config-patches@gnu.org>."
7298937Sdes
7398937Sdesversion="\
7498937SdesGNU config.sub ($timestamp)
7598937Sdes
76204861SdesCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
77255670Sdes2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
78255670Sdes2012, 2013 Free Software Foundation, Inc.
7998937Sdes
8098937SdesThis is free software; see the source for copying conditions.  There is NO
8198937Sdeswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
8298937Sdes
8398937Sdeshelp="
8498937SdesTry \`$me --help' for more information."
8598937Sdes
8698937Sdes# Parse command line
8798937Sdeswhile test $# -gt 0 ; do
8898937Sdes  case $1 in
8998937Sdes    --time-stamp | --time* | -t )
90149749Sdes       echo "$timestamp" ; exit ;;
9198937Sdes    --version | -v )
92149749Sdes       echo "$version" ; exit ;;
9398937Sdes    --help | --h* | -h )
94149749Sdes       echo "$usage"; exit ;;
9598937Sdes    -- )     # Stop option processing
9698937Sdes       shift; break ;;
9798937Sdes    - )	# Use stdin as input.
9898937Sdes       break ;;
9998937Sdes    -* )
10098937Sdes       echo "$me: invalid option $1$help"
10198937Sdes       exit 1 ;;
10298937Sdes
10398937Sdes    *local*)
10498937Sdes       # First pass through any local machine types.
10598937Sdes       echo $1
106149749Sdes       exit ;;
10798937Sdes
10898937Sdes    * )
10998937Sdes       break ;;
11098937Sdes  esac
11198937Sdesdone
11298937Sdes
11398937Sdescase $# in
11498937Sdes 0) echo "$me: missing argument$help" >&2
11598937Sdes    exit 1;;
11698937Sdes 1) ;;
11798937Sdes *) echo "$me: too many arguments$help" >&2
11898937Sdes    exit 1;;
11998937Sdesesac
12098937Sdes
12198937Sdes# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
12298937Sdes# Here we must recognize all the valid KERNEL-OS combinations.
12398937Sdesmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
12498937Sdescase $maybe_os in
125225825Sdes  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
126255670Sdes  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
127225825Sdes  knetbsd*-gnu* | netbsd*-gnu* | \
128204861Sdes  kopensolaris*-gnu* | \
129189006Sdes  storm-chaos* | os2-emx* | rtmk-nova*)
13098937Sdes    os=-$maybe_os
13198937Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
13298937Sdes    ;;
133255670Sdes  android-linux)
134255670Sdes    os=-linux-android
135255670Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
136255670Sdes    ;;
13798937Sdes  *)
13898937Sdes    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
13998937Sdes    if [ $basic_machine != $1 ]
14098937Sdes    then os=`echo $1 | sed 's/.*-/-/'`
14198937Sdes    else os=; fi
14298937Sdes    ;;
14398937Sdesesac
14498937Sdes
14598937Sdes### Let's recognize common machines as not being operating systems so
14698937Sdes### that things like config.sub decstation-3100 work.  We also
14798937Sdes### recognize some manufacturers as not being operating systems, so we
14898937Sdes### can provide default operating systems below.
14998937Sdescase $os in
15098937Sdes	-sun*os*)
15198937Sdes		# Prevent following clause from handling this invalid input.
15298937Sdes		;;
15398937Sdes	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
15498937Sdes	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
15598937Sdes	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
15698937Sdes	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
15798937Sdes	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
15898937Sdes	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
159255670Sdes	-apple | -axis | -knuth | -cray | -microblaze*)
16098937Sdes		os=
16198937Sdes		basic_machine=$1
16298937Sdes		;;
163255670Sdes	-bluegene*)
164255670Sdes		os=-cnk
165204861Sdes		;;
16698937Sdes	-sim | -cisco | -oki | -wec | -winbond)
16798937Sdes		os=
16898937Sdes		basic_machine=$1
16998937Sdes		;;
17098937Sdes	-scout)
17198937Sdes		;;
17298937Sdes	-wrs)
17398937Sdes		os=-vxworks
17498937Sdes		basic_machine=$1
17598937Sdes		;;
176106121Sdes	-chorusos*)
177106121Sdes		os=-chorusos
178106121Sdes		basic_machine=$1
179106121Sdes		;;
180255670Sdes	-chorusrdb)
181255670Sdes		os=-chorusrdb
182106121Sdes		basic_machine=$1
183255670Sdes		;;
18498937Sdes	-hiux*)
18598937Sdes		os=-hiuxwe2
18698937Sdes		;;
187189006Sdes	-sco6)
188189006Sdes		os=-sco5v6
189189006Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190189006Sdes		;;
19198937Sdes	-sco5)
19298937Sdes		os=-sco3.2v5
19398937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19498937Sdes		;;
19598937Sdes	-sco4)
19698937Sdes		os=-sco3.2v4
19798937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19898937Sdes		;;
19998937Sdes	-sco3.2.[4-9]*)
20098937Sdes		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
20198937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20298937Sdes		;;
20398937Sdes	-sco3.2v[4-9]*)
20498937Sdes		# Don't forget version if it is 3.2v4 or newer.
20598937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
20698937Sdes		;;
207189006Sdes	-sco5v6*)
208189006Sdes		# Don't forget version if it is 3.2v4 or newer.
209189006Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210189006Sdes		;;
21198937Sdes	-sco*)
21298937Sdes		os=-sco3.2v2
21398937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21498937Sdes		;;
21598937Sdes	-udk*)
21698937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
21798937Sdes		;;
21898937Sdes	-isc)
21998937Sdes		os=-isc2.2
22098937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
22198937Sdes		;;
22298937Sdes	-clix*)
22398937Sdes		basic_machine=clipper-intergraph
22498937Sdes		;;
22598937Sdes	-isc*)
22698937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
22798937Sdes		;;
228255670Sdes	-lynx*178)
229255670Sdes		os=-lynxos178
230255670Sdes		;;
231255670Sdes	-lynx*5)
232255670Sdes		os=-lynxos5
233255670Sdes		;;
23498937Sdes	-lynx*)
23598937Sdes		os=-lynxos
23698937Sdes		;;
23798937Sdes	-ptx*)
23898937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
23998937Sdes		;;
24098937Sdes	-windowsnt*)
24198937Sdes		os=`echo $os | sed -e 's/windowsnt/winnt/'`
24298937Sdes		;;
24398937Sdes	-psos*)
24498937Sdes		os=-psos
24598937Sdes		;;
24698937Sdes	-mint | -mint[0-9]*)
24798937Sdes		basic_machine=m68k-atari
24898937Sdes		os=-mint
24998937Sdes		;;
25098937Sdesesac
25198937Sdes
25298937Sdes# Decode aliases for certain CPU-COMPANY combinations.
25398937Sdescase $basic_machine in
25498937Sdes	# Recognize the basic CPU types without company name.
25598937Sdes	# Some are omitted here because they have special meanings below.
256106121Sdes	1750a | 580 \
257106121Sdes	| a29k \
258255670Sdes	| aarch64 | aarch64_be \
259106121Sdes	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
260106121Sdes	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
261137015Sdes	| am33_2.0 \
262255670Sdes	| arc \
263255670Sdes	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
264255670Sdes	| avr | avr32 \
265255670Sdes	| be32 | be64 \
266149749Sdes	| bfin \
267106121Sdes	| c4x | clipper \
268106121Sdes	| d10v | d30v | dlx | dsp16xx \
269255670Sdes	| epiphany \
270189006Sdes	| fido | fr30 | frv \
271106121Sdes	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
272255670Sdes	| hexagon \
273106121Sdes	| i370 | i860 | i960 | ia64 \
274137015Sdes	| ip2k | iq2000 \
275255670Sdes	| le32 | le64 \
276204861Sdes	| lm32 \
277189006Sdes	| m32c | m32r | m32rle | m68000 | m68k | m88k \
278255670Sdes	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
279106121Sdes	| mips | mipsbe | mipseb | mipsel | mipsle \
280106121Sdes	| mips16 \
281106121Sdes	| mips64 | mips64el \
282189006Sdes	| mips64octeon | mips64octeonel \
283189006Sdes	| mips64orion | mips64orionel \
284189006Sdes	| mips64r5900 | mips64r5900el \
285137015Sdes	| mips64vr | mips64vrel \
286106121Sdes	| mips64vr4100 | mips64vr4100el \
287106121Sdes	| mips64vr4300 | mips64vr4300el \
288106121Sdes	| mips64vr5000 | mips64vr5000el \
289189006Sdes	| mips64vr5900 | mips64vr5900el \
290106121Sdes	| mipsisa32 | mipsisa32el \
291137015Sdes	| mipsisa32r2 | mipsisa32r2el \
292106121Sdes	| mipsisa64 | mipsisa64el \
293137015Sdes	| mipsisa64r2 | mipsisa64r2el \
294106121Sdes	| mipsisa64sb1 | mipsisa64sb1el \
295137015Sdes	| mipsisa64sr71k | mipsisa64sr71kel \
296106121Sdes	| mipstx39 | mipstx39el \
297106121Sdes	| mn10200 | mn10300 \
298204861Sdes	| moxie \
299189006Sdes	| mt \
300137015Sdes	| msp430 \
301225825Sdes	| nds32 | nds32le | nds32be \
302189006Sdes	| nios | nios2 \
303106121Sdes	| ns16k | ns32k \
304255670Sdes	| open8 \
305189006Sdes	| or32 \
306106121Sdes	| pdp10 | pdp11 | pj | pjl \
307255670Sdes	| powerpc | powerpc64 | powerpc64le | powerpcle \
308106121Sdes	| pyramid \
309255670Sdes	| rl78 | rx \
310189006Sdes	| score \
311204861Sdes	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
312106121Sdes	| sh64 | sh64le \
313189006Sdes	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
314189006Sdes	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
315255670Sdes	| spu \
316255670Sdes	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
317204861Sdes	| ubicom32 \
318255670Sdes	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
319106121Sdes	| we32k \
320255670Sdes	| x86 | xc16x | xstormy16 | xtensa \
321204861Sdes	| z8k | z80)
32298937Sdes		basic_machine=$basic_machine-unknown
32398937Sdes		;;
324225825Sdes	c54x)
325225825Sdes		basic_machine=tic54x-unknown
326225825Sdes		;;
327225825Sdes	c55x)
328225825Sdes		basic_machine=tic55x-unknown
329225825Sdes		;;
330225825Sdes	c6x)
331225825Sdes		basic_machine=tic6x-unknown
332225825Sdes		;;
333255670Sdes	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
33498937Sdes		basic_machine=$basic_machine-unknown
33598937Sdes		os=-none
33698937Sdes		;;
337106121Sdes	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
33898937Sdes		;;
339189006Sdes	ms1)
340189006Sdes		basic_machine=mt-unknown
341189006Sdes		;;
34298937Sdes
343255670Sdes	strongarm | thumb | xscale)
344255670Sdes		basic_machine=arm-unknown
345255670Sdes		;;
346255670Sdes	xgate)
347255670Sdes		basic_machine=$basic_machine-unknown
348255670Sdes		os=-none
349255670Sdes		;;
350255670Sdes	xscaleeb)
351255670Sdes		basic_machine=armeb-unknown
352255670Sdes		;;
353255670Sdes
354255670Sdes	xscaleel)
355255670Sdes		basic_machine=armel-unknown
356255670Sdes		;;
357255670Sdes
35898937Sdes	# We use `pc' rather than `unknown'
35998937Sdes	# because (1) that's what they normally are, and
36098937Sdes	# (2) the word "unknown" tends to confuse beginning users.
36198937Sdes	i*86 | x86_64)
36298937Sdes	  basic_machine=$basic_machine-pc
36398937Sdes	  ;;
36498937Sdes	# Object if more than one company name word.
36598937Sdes	*-*-*)
36698937Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
36798937Sdes		exit 1
36898937Sdes		;;
36998937Sdes	# Recognize the basic CPU types with company name.
370106121Sdes	580-* \
371106121Sdes	| a29k-* \
372255670Sdes	| aarch64-* | aarch64_be-* \
373106121Sdes	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
374106121Sdes	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
375106121Sdes	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
376106121Sdes	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
377189006Sdes	| avr-* | avr32-* \
378255670Sdes	| be32-* | be64-* \
379149749Sdes	| bfin-* | bs2000-* \
380225825Sdes	| c[123]* | c30-* | [cjt]90-* | c4x-* \
381149749Sdes	| clipper-* | craynv-* | cydra-* \
382106121Sdes	| d10v-* | d30v-* | dlx-* \
383106121Sdes	| elxsi-* \
384189006Sdes	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
385106121Sdes	| h8300-* | h8500-* \
386106121Sdes	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
387255670Sdes	| hexagon-* \
388106121Sdes	| i*86-* | i860-* | i960-* | ia64-* \
389137015Sdes	| ip2k-* | iq2000-* \
390255670Sdes	| le32-* | le64-* \
391204861Sdes	| lm32-* \
392189006Sdes	| m32c-* | m32r-* | m32rle-* \
393106121Sdes	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
394255670Sdes	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
395255670Sdes	| microblaze-* | microblazeel-* \
396106121Sdes	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
397106121Sdes	| mips16-* \
398106121Sdes	| mips64-* | mips64el-* \
399189006Sdes	| mips64octeon-* | mips64octeonel-* \
400189006Sdes	| mips64orion-* | mips64orionel-* \
401189006Sdes	| mips64r5900-* | mips64r5900el-* \
402137015Sdes	| mips64vr-* | mips64vrel-* \
403106121Sdes	| mips64vr4100-* | mips64vr4100el-* \
404106121Sdes	| mips64vr4300-* | mips64vr4300el-* \
405106121Sdes	| mips64vr5000-* | mips64vr5000el-* \
406189006Sdes	| mips64vr5900-* | mips64vr5900el-* \
407106121Sdes	| mipsisa32-* | mipsisa32el-* \
408137015Sdes	| mipsisa32r2-* | mipsisa32r2el-* \
409106121Sdes	| mipsisa64-* | mipsisa64el-* \
410137015Sdes	| mipsisa64r2-* | mipsisa64r2el-* \
411106121Sdes	| mipsisa64sb1-* | mipsisa64sb1el-* \
412137015Sdes	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
413137015Sdes	| mipstx39-* | mipstx39el-* \
414149749Sdes	| mmix-* \
415189006Sdes	| mt-* \
416137015Sdes	| msp430-* \
417225825Sdes	| nds32-* | nds32le-* | nds32be-* \
418189006Sdes	| nios-* | nios2-* \
419149749Sdes	| none-* | np1-* | ns16k-* | ns32k-* \
420255670Sdes	| open8-* \
421106121Sdes	| orion-* \
422106121Sdes	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
423255670Sdes	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
424106121Sdes	| pyramid-* \
425255670Sdes	| rl78-* | romp-* | rs6000-* | rx-* \
426204861Sdes	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
427106121Sdes	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
428189006Sdes	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
429149749Sdes	| sparclite-* \
430255670Sdes	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
431255670Sdes	| tahoe-* \
432204861Sdes	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
433255670Sdes	| tile*-* \
434137015Sdes	| tron-* \
435204861Sdes	| ubicom32-* \
436255670Sdes	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
437255670Sdes	| vax-* \
438106121Sdes	| we32k-* \
439255670Sdes	| x86-* | x86_64-* | xc16x-* | xps100-* \
440189006Sdes	| xstormy16-* | xtensa*-* \
441106121Sdes	| ymp-* \
442204861Sdes	| z8k-* | z80-*)
44398937Sdes		;;
444189006Sdes	# Recognize the basic CPU types without company name, with glob match.
445189006Sdes	xtensa*)
446189006Sdes		basic_machine=$basic_machine-unknown
447189006Sdes		;;
44898937Sdes	# Recognize the various machine names and aliases which stand
44998937Sdes	# for a CPU type and a company and sometimes even an OS.
45098937Sdes	386bsd)
45198937Sdes		basic_machine=i386-unknown
45298937Sdes		os=-bsd
45398937Sdes		;;
45498937Sdes	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
45598937Sdes		basic_machine=m68000-att
45698937Sdes		;;
45798937Sdes	3b*)
45898937Sdes		basic_machine=we32k-att
45998937Sdes		;;
46098937Sdes	a29khif)
46198937Sdes		basic_machine=a29k-amd
46298937Sdes		os=-udi
46398937Sdes		;;
464255670Sdes	abacus)
465149749Sdes		basic_machine=abacus-unknown
466149749Sdes		;;
46798937Sdes	adobe68k)
46898937Sdes		basic_machine=m68010-adobe
46998937Sdes		os=-scout
47098937Sdes		;;
47198937Sdes	alliant | fx80)
47298937Sdes		basic_machine=fx80-alliant
47398937Sdes		;;
47498937Sdes	altos | altos3068)
47598937Sdes		basic_machine=m68k-altos
47698937Sdes		;;
47798937Sdes	am29k)
47898937Sdes		basic_machine=a29k-none
47998937Sdes		os=-bsd
48098937Sdes		;;
481137015Sdes	amd64)
482137015Sdes		basic_machine=x86_64-pc
483137015Sdes		;;
484149749Sdes	amd64-*)
485149749Sdes		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
486149749Sdes		;;
48798937Sdes	amdahl)
48898937Sdes		basic_machine=580-amdahl
48998937Sdes		os=-sysv
49098937Sdes		;;
49198937Sdes	amiga | amiga-*)
49298937Sdes		basic_machine=m68k-unknown
49398937Sdes		;;
49498937Sdes	amigaos | amigados)
49598937Sdes		basic_machine=m68k-unknown
49698937Sdes		os=-amigaos
49798937Sdes		;;
49898937Sdes	amigaunix | amix)
49998937Sdes		basic_machine=m68k-unknown
50098937Sdes		os=-sysv4
50198937Sdes		;;
50298937Sdes	apollo68)
50398937Sdes		basic_machine=m68k-apollo
50498937Sdes		os=-sysv
50598937Sdes		;;
50698937Sdes	apollo68bsd)
50798937Sdes		basic_machine=m68k-apollo
50898937Sdes		os=-bsd
50998937Sdes		;;
510204861Sdes	aros)
511204861Sdes		basic_machine=i386-pc
512204861Sdes		os=-aros
513204861Sdes		;;
51498937Sdes	aux)
51598937Sdes		basic_machine=m68k-apple
51698937Sdes		os=-aux
51798937Sdes		;;
51898937Sdes	balance)
51998937Sdes		basic_machine=ns32k-sequent
52098937Sdes		os=-dynix
52198937Sdes		;;
522189006Sdes	blackfin)
523189006Sdes		basic_machine=bfin-unknown
524189006Sdes		os=-linux
525189006Sdes		;;
526189006Sdes	blackfin-*)
527189006Sdes		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
528189006Sdes		os=-linux
529189006Sdes		;;
530204861Sdes	bluegene*)
531204861Sdes		basic_machine=powerpc-ibm
532204861Sdes		os=-cnk
533204861Sdes		;;
534225825Sdes	c54x-*)
535225825Sdes		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
536225825Sdes		;;
537225825Sdes	c55x-*)
538225825Sdes		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
539225825Sdes		;;
540225825Sdes	c6x-*)
541225825Sdes		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
542225825Sdes		;;
543106121Sdes	c90)
544106121Sdes		basic_machine=c90-cray
545106121Sdes		os=-unicos
546106121Sdes		;;
547255670Sdes	cegcc)
548189006Sdes		basic_machine=arm-unknown
549189006Sdes		os=-cegcc
550189006Sdes		;;
55198937Sdes	convex-c1)
55298937Sdes		basic_machine=c1-convex
55398937Sdes		os=-bsd
55498937Sdes		;;
55598937Sdes	convex-c2)
55698937Sdes		basic_machine=c2-convex
55798937Sdes		os=-bsd
55898937Sdes		;;
55998937Sdes	convex-c32)
56098937Sdes		basic_machine=c32-convex
56198937Sdes		os=-bsd
56298937Sdes		;;
56398937Sdes	convex-c34)
56498937Sdes		basic_machine=c34-convex
56598937Sdes		os=-bsd
56698937Sdes		;;
56798937Sdes	convex-c38)
56898937Sdes		basic_machine=c38-convex
56998937Sdes		os=-bsd
57098937Sdes		;;
571106121Sdes	cray | j90)
572106121Sdes		basic_machine=j90-cray
57398937Sdes		os=-unicos
57498937Sdes		;;
575149749Sdes	craynv)
576149749Sdes		basic_machine=craynv-cray
577149749Sdes		os=-unicosmp
578149749Sdes		;;
579225825Sdes	cr16 | cr16-*)
580189006Sdes		basic_machine=cr16-unknown
581149749Sdes		os=-elf
582149749Sdes		;;
58398937Sdes	crds | unos)
58498937Sdes		basic_machine=m68k-crds
58598937Sdes		;;
586149749Sdes	crisv32 | crisv32-* | etraxfs*)
587149749Sdes		basic_machine=crisv32-axis
588149749Sdes		;;
58998937Sdes	cris | cris-* | etrax*)
59098937Sdes		basic_machine=cris-axis
59198937Sdes		;;
592149749Sdes	crx)
593149749Sdes		basic_machine=crx-unknown
594149749Sdes		os=-elf
595149749Sdes		;;
59698937Sdes	da30 | da30-*)
59798937Sdes		basic_machine=m68k-da30
59898937Sdes		;;
59998937Sdes	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
60098937Sdes		basic_machine=mips-dec
60198937Sdes		;;
602106121Sdes	decsystem10* | dec10*)
603106121Sdes		basic_machine=pdp10-dec
604106121Sdes		os=-tops10
605106121Sdes		;;
606106121Sdes	decsystem20* | dec20*)
607106121Sdes		basic_machine=pdp10-dec
608106121Sdes		os=-tops20
609106121Sdes		;;
61098937Sdes	delta | 3300 | motorola-3300 | motorola-delta \
61198937Sdes	      | 3300-motorola | delta-motorola)
61298937Sdes		basic_machine=m68k-motorola
61398937Sdes		;;
61498937Sdes	delta88)
61598937Sdes		basic_machine=m88k-motorola
61698937Sdes		os=-sysv3
61798937Sdes		;;
618189006Sdes	dicos)
619189006Sdes		basic_machine=i686-pc
620189006Sdes		os=-dicos
621189006Sdes		;;
622149749Sdes	djgpp)
623149749Sdes		basic_machine=i586-pc
624149749Sdes		os=-msdosdjgpp
625149749Sdes		;;
62698937Sdes	dpx20 | dpx20-*)
62798937Sdes		basic_machine=rs6000-bull
62898937Sdes		os=-bosx
62998937Sdes		;;
63098937Sdes	dpx2* | dpx2*-bull)
63198937Sdes		basic_machine=m68k-bull
63298937Sdes		os=-sysv3
63398937Sdes		;;
63498937Sdes	ebmon29k)
63598937Sdes		basic_machine=a29k-amd
63698937Sdes		os=-ebmon
63798937Sdes		;;
63898937Sdes	elxsi)
63998937Sdes		basic_machine=elxsi-elxsi
64098937Sdes		os=-bsd
64198937Sdes		;;
64298937Sdes	encore | umax | mmax)
64398937Sdes		basic_machine=ns32k-encore
64498937Sdes		;;
64598937Sdes	es1800 | OSE68k | ose68k | ose | OSE)
64698937Sdes		basic_machine=m68k-ericsson
64798937Sdes		os=-ose
64898937Sdes		;;
64998937Sdes	fx2800)
65098937Sdes		basic_machine=i860-alliant
65198937Sdes		;;
65298937Sdes	genix)
65398937Sdes		basic_machine=ns32k-ns
65498937Sdes		;;
65598937Sdes	gmicro)
65698937Sdes		basic_machine=tron-gmicro
65798937Sdes		os=-sysv
65898937Sdes		;;
65998937Sdes	go32)
66098937Sdes		basic_machine=i386-pc
66198937Sdes		os=-go32
66298937Sdes		;;
66398937Sdes	h3050r* | hiux*)
66498937Sdes		basic_machine=hppa1.1-hitachi
66598937Sdes		os=-hiuxwe2
66698937Sdes		;;
66798937Sdes	h8300hms)
66898937Sdes		basic_machine=h8300-hitachi
66998937Sdes		os=-hms
67098937Sdes		;;
67198937Sdes	h8300xray)
67298937Sdes		basic_machine=h8300-hitachi
67398937Sdes		os=-xray
67498937Sdes		;;
67598937Sdes	h8500hms)
67698937Sdes		basic_machine=h8500-hitachi
67798937Sdes		os=-hms
67898937Sdes		;;
67998937Sdes	harris)
68098937Sdes		basic_machine=m88k-harris
68198937Sdes		os=-sysv3
68298937Sdes		;;
68398937Sdes	hp300-*)
68498937Sdes		basic_machine=m68k-hp
68598937Sdes		;;
68698937Sdes	hp300bsd)
68798937Sdes		basic_machine=m68k-hp
68898937Sdes		os=-bsd
68998937Sdes		;;
69098937Sdes	hp300hpux)
69198937Sdes		basic_machine=m68k-hp
69298937Sdes		os=-hpux
69398937Sdes		;;
69498937Sdes	hp3k9[0-9][0-9] | hp9[0-9][0-9])
69598937Sdes		basic_machine=hppa1.0-hp
69698937Sdes		;;
69798937Sdes	hp9k2[0-9][0-9] | hp9k31[0-9])
69898937Sdes		basic_machine=m68000-hp
69998937Sdes		;;
70098937Sdes	hp9k3[2-9][0-9])
70198937Sdes		basic_machine=m68k-hp
70298937Sdes		;;
70398937Sdes	hp9k6[0-9][0-9] | hp6[0-9][0-9])
70498937Sdes		basic_machine=hppa1.0-hp
70598937Sdes		;;
70698937Sdes	hp9k7[0-79][0-9] | hp7[0-79][0-9])
70798937Sdes		basic_machine=hppa1.1-hp
70898937Sdes		;;
70998937Sdes	hp9k78[0-9] | hp78[0-9])
71098937Sdes		# FIXME: really hppa2.0-hp
71198937Sdes		basic_machine=hppa1.1-hp
71298937Sdes		;;
71398937Sdes	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
71498937Sdes		# FIXME: really hppa2.0-hp
71598937Sdes		basic_machine=hppa1.1-hp
71698937Sdes		;;
71798937Sdes	hp9k8[0-9][13679] | hp8[0-9][13679])
71898937Sdes		basic_machine=hppa1.1-hp
71998937Sdes		;;
72098937Sdes	hp9k8[0-9][0-9] | hp8[0-9][0-9])
72198937Sdes		basic_machine=hppa1.0-hp
72298937Sdes		;;
72398937Sdes	hppa-next)
72498937Sdes		os=-nextstep3
72598937Sdes		;;
72698937Sdes	hppaosf)
72798937Sdes		basic_machine=hppa1.1-hp
72898937Sdes		os=-osf
72998937Sdes		;;
73098937Sdes	hppro)
73198937Sdes		basic_machine=hppa1.1-hp
73298937Sdes		os=-proelf
73398937Sdes		;;
73498937Sdes	i370-ibm* | ibm*)
73598937Sdes		basic_machine=i370-ibm
73698937Sdes		;;
73798937Sdes	i*86v32)
73898937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
73998937Sdes		os=-sysv32
74098937Sdes		;;
74198937Sdes	i*86v4*)
74298937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
74398937Sdes		os=-sysv4
74498937Sdes		;;
74598937Sdes	i*86v)
74698937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
74798937Sdes		os=-sysv
74898937Sdes		;;
74998937Sdes	i*86sol2)
75098937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
75198937Sdes		os=-solaris2
75298937Sdes		;;
75398937Sdes	i386mach)
75498937Sdes		basic_machine=i386-mach
75598937Sdes		os=-mach
75698937Sdes		;;
75798937Sdes	i386-vsta | vsta)
75898937Sdes		basic_machine=i386-unknown
75998937Sdes		os=-vsta
76098937Sdes		;;
76198937Sdes	iris | iris4d)
76298937Sdes		basic_machine=mips-sgi
76398937Sdes		case $os in
76498937Sdes		    -irix*)
76598937Sdes			;;
76698937Sdes		    *)
76798937Sdes			os=-irix4
76898937Sdes			;;
76998937Sdes		esac
77098937Sdes		;;
77198937Sdes	isi68 | isi)
77298937Sdes		basic_machine=m68k-isi
77398937Sdes		os=-sysv
77498937Sdes		;;
775189006Sdes	m68knommu)
776189006Sdes		basic_machine=m68k-unknown
777189006Sdes		os=-linux
778189006Sdes		;;
779189006Sdes	m68knommu-*)
780189006Sdes		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
781189006Sdes		os=-linux
782189006Sdes		;;
78398937Sdes	m88k-omron*)
78498937Sdes		basic_machine=m88k-omron
78598937Sdes		;;
78698937Sdes	magnum | m3230)
78798937Sdes		basic_machine=mips-mips
78898937Sdes		os=-sysv
78998937Sdes		;;
79098937Sdes	merlin)
79198937Sdes		basic_machine=ns32k-utek
79298937Sdes		os=-sysv
79398937Sdes		;;
794255670Sdes	microblaze*)
795204861Sdes		basic_machine=microblaze-xilinx
796204861Sdes		;;
797255670Sdes	mingw64)
798255670Sdes		basic_machine=x86_64-pc
799255670Sdes		os=-mingw64
800255670Sdes		;;
80198937Sdes	mingw32)
80298937Sdes		basic_machine=i386-pc
80398937Sdes		os=-mingw32
80498937Sdes		;;
805189006Sdes	mingw32ce)
806189006Sdes		basic_machine=arm-unknown
807189006Sdes		os=-mingw32ce
808189006Sdes		;;
80998937Sdes	miniframe)
81098937Sdes		basic_machine=m68000-convergent
81198937Sdes		;;
81298937Sdes	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
81398937Sdes		basic_machine=m68k-atari
81498937Sdes		os=-mint
81598937Sdes		;;
81698937Sdes	mips3*-*)
81798937Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
81898937Sdes		;;
81998937Sdes	mips3*)
82098937Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
82198937Sdes		;;
82298937Sdes	monitor)
82398937Sdes		basic_machine=m68k-rom68k
82498937Sdes		os=-coff
82598937Sdes		;;
826106121Sdes	morphos)
827106121Sdes		basic_machine=powerpc-unknown
828106121Sdes		os=-morphos
829106121Sdes		;;
83098937Sdes	msdos)
83198937Sdes		basic_machine=i386-pc
83298937Sdes		os=-msdos
83398937Sdes		;;
834189006Sdes	ms1-*)
835189006Sdes		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
836189006Sdes		;;
837255670Sdes	msys)
838255670Sdes		basic_machine=i386-pc
839255670Sdes		os=-msys
840255670Sdes		;;
84198937Sdes	mvs)
84298937Sdes		basic_machine=i370-ibm
84398937Sdes		os=-mvs
84498937Sdes		;;
845255670Sdes	nacl)
846255670Sdes		basic_machine=le32-unknown
847255670Sdes		os=-nacl
848255670Sdes		;;
84998937Sdes	ncr3000)
85098937Sdes		basic_machine=i486-ncr
85198937Sdes		os=-sysv4
85298937Sdes		;;
85398937Sdes	netbsd386)
85498937Sdes		basic_machine=i386-unknown
85598937Sdes		os=-netbsd
85698937Sdes		;;
85798937Sdes	netwinder)
85898937Sdes		basic_machine=armv4l-rebel
85998937Sdes		os=-linux
86098937Sdes		;;
86198937Sdes	news | news700 | news800 | news900)
86298937Sdes		basic_machine=m68k-sony
86398937Sdes		os=-newsos
86498937Sdes		;;
86598937Sdes	news1000)
86698937Sdes		basic_machine=m68030-sony
86798937Sdes		os=-newsos
86898937Sdes		;;
86998937Sdes	news-3600 | risc-news)
87098937Sdes		basic_machine=mips-sony
87198937Sdes		os=-newsos
87298937Sdes		;;
87398937Sdes	necv70)
87498937Sdes		basic_machine=v70-nec
87598937Sdes		os=-sysv
87698937Sdes		;;
87798937Sdes	next | m*-next )
87898937Sdes		basic_machine=m68k-next
87998937Sdes		case $os in
88098937Sdes		    -nextstep* )
88198937Sdes			;;
88298937Sdes		    -ns2*)
88398937Sdes		      os=-nextstep2
88498937Sdes			;;
88598937Sdes		    *)
88698937Sdes		      os=-nextstep3
88798937Sdes			;;
88898937Sdes		esac
88998937Sdes		;;
89098937Sdes	nh3000)
89198937Sdes		basic_machine=m68k-harris
89298937Sdes		os=-cxux
89398937Sdes		;;
89498937Sdes	nh[45]000)
89598937Sdes		basic_machine=m88k-harris
89698937Sdes		os=-cxux
89798937Sdes		;;
89898937Sdes	nindy960)
89998937Sdes		basic_machine=i960-intel
90098937Sdes		os=-nindy
90198937Sdes		;;
90298937Sdes	mon960)
90398937Sdes		basic_machine=i960-intel
90498937Sdes		os=-mon960
90598937Sdes		;;
90698937Sdes	nonstopux)
90798937Sdes		basic_machine=mips-compaq
90898937Sdes		os=-nonstopux
90998937Sdes		;;
91098937Sdes	np1)
91198937Sdes		basic_machine=np1-gould
91298937Sdes		;;
913255670Sdes	neo-tandem)
914225825Sdes		basic_machine=neo-tandem
915225825Sdes		;;
916255670Sdes	nse-tandem)
917225825Sdes		basic_machine=nse-tandem
918225825Sdes		;;
91998937Sdes	nsr-tandem)
92098937Sdes		basic_machine=nsr-tandem
92198937Sdes		;;
92298937Sdes	op50n-* | op60c-*)
92398937Sdes		basic_machine=hppa1.1-oki
92498937Sdes		os=-proelf
92598937Sdes		;;
926189006Sdes	openrisc | openrisc-*)
927106121Sdes		basic_machine=or32-unknown
928106121Sdes		;;
929149749Sdes	os400)
930149749Sdes		basic_machine=powerpc-ibm
931149749Sdes		os=-os400
932149749Sdes		;;
93398937Sdes	OSE68000 | ose68000)
93498937Sdes		basic_machine=m68000-ericsson
93598937Sdes		os=-ose
93698937Sdes		;;
93798937Sdes	os68k)
93898937Sdes		basic_machine=m68k-none
93998937Sdes		os=-os68k
94098937Sdes		;;
94198937Sdes	pa-hitachi)
94298937Sdes		basic_machine=hppa1.1-hitachi
94398937Sdes		os=-hiuxwe2
94498937Sdes		;;
94598937Sdes	paragon)
94698937Sdes		basic_machine=i860-intel
94798937Sdes		os=-osf
94898937Sdes		;;
949189006Sdes	parisc)
950189006Sdes		basic_machine=hppa-unknown
951189006Sdes		os=-linux
952189006Sdes		;;
953189006Sdes	parisc-*)
954189006Sdes		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
955189006Sdes		os=-linux
956189006Sdes		;;
95798937Sdes	pbd)
95898937Sdes		basic_machine=sparc-tti
95998937Sdes		;;
96098937Sdes	pbb)
96198937Sdes		basic_machine=m68k-tti
96298937Sdes		;;
963126274Sdes	pc532 | pc532-*)
96498937Sdes		basic_machine=ns32k-pc532
96598937Sdes		;;
966189006Sdes	pc98)
967189006Sdes		basic_machine=i386-pc
968189006Sdes		;;
969189006Sdes	pc98-*)
970189006Sdes		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
971189006Sdes		;;
972106121Sdes	pentium | p5 | k5 | k6 | nexgen | viac3)
97398937Sdes		basic_machine=i586-pc
97498937Sdes		;;
975137015Sdes	pentiumpro | p6 | 6x86 | athlon | athlon_*)
97698937Sdes		basic_machine=i686-pc
97798937Sdes		;;
978137015Sdes	pentiumii | pentium2 | pentiumiii | pentium3)
97998937Sdes		basic_machine=i686-pc
98098937Sdes		;;
981137015Sdes	pentium4)
982137015Sdes		basic_machine=i786-pc
983137015Sdes		;;
984106121Sdes	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
98598937Sdes		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
98698937Sdes		;;
98798937Sdes	pentiumpro-* | p6-* | 6x86-* | athlon-*)
98898937Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
98998937Sdes		;;
990137015Sdes	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
99198937Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
99298937Sdes		;;
993137015Sdes	pentium4-*)
994137015Sdes		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
995137015Sdes		;;
99698937Sdes	pn)
99798937Sdes		basic_machine=pn-gould
99898937Sdes		;;
99998937Sdes	power)	basic_machine=power-ibm
100098937Sdes		;;
1001255670Sdes	ppc | ppcbe)	basic_machine=powerpc-unknown
1002126274Sdes		;;
1003255670Sdes	ppc-* | ppcbe-*)
1004255670Sdes		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
100598937Sdes		;;
100698937Sdes	ppcle | powerpclittle | ppc-le | powerpc-little)
100798937Sdes		basic_machine=powerpcle-unknown
1008126274Sdes		;;
100998937Sdes	ppcle-* | powerpclittle-*)
101098937Sdes		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
101198937Sdes		;;
1012106121Sdes	ppc64)	basic_machine=powerpc64-unknown
1013126274Sdes		;;
1014106121Sdes	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1015106121Sdes		;;
1016106121Sdes	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1017106121Sdes		basic_machine=powerpc64le-unknown
1018126274Sdes		;;
1019106121Sdes	ppc64le-* | powerpc64little-*)
1020106121Sdes		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1021106121Sdes		;;
102298937Sdes	ps2)
102398937Sdes		basic_machine=i386-ibm
102498937Sdes		;;
102598937Sdes	pw32)
102698937Sdes		basic_machine=i586-unknown
102798937Sdes		os=-pw32
102898937Sdes		;;
1029255670Sdes	rdos | rdos64)
1030255670Sdes		basic_machine=x86_64-pc
1031255670Sdes		os=-rdos
1032255670Sdes		;;
1033255670Sdes	rdos32)
1034189006Sdes		basic_machine=i386-pc
1035189006Sdes		os=-rdos
1036189006Sdes		;;
103798937Sdes	rom68k)
103898937Sdes		basic_machine=m68k-rom68k
103998937Sdes		os=-coff
104098937Sdes		;;
104198937Sdes	rm[46]00)
104298937Sdes		basic_machine=mips-siemens
104398937Sdes		;;
104498937Sdes	rtpc | rtpc-*)
104598937Sdes		basic_machine=romp-ibm
104698937Sdes		;;
1047106121Sdes	s390 | s390-*)
1048106121Sdes		basic_machine=s390-ibm
1049106121Sdes		;;
1050106121Sdes	s390x | s390x-*)
1051106121Sdes		basic_machine=s390x-ibm
1052106121Sdes		;;
105398937Sdes	sa29200)
105498937Sdes		basic_machine=a29k-amd
105598937Sdes		os=-udi
105698937Sdes		;;
1057137015Sdes	sb1)
1058137015Sdes		basic_machine=mipsisa64sb1-unknown
1059137015Sdes		;;
1060137015Sdes	sb1el)
1061137015Sdes		basic_machine=mipsisa64sb1el-unknown
1062137015Sdes		;;
1063189006Sdes	sde)
1064189006Sdes		basic_machine=mipsisa32-sde
1065189006Sdes		os=-elf
1066189006Sdes		;;
1067137015Sdes	sei)
1068137015Sdes		basic_machine=mips-sei
1069137015Sdes		os=-seiux
1070137015Sdes		;;
107198937Sdes	sequent)
107298937Sdes		basic_machine=i386-sequent
107398937Sdes		;;
107498937Sdes	sh)
107598937Sdes		basic_machine=sh-hitachi
107698937Sdes		os=-hms
107798937Sdes		;;
1078189006Sdes	sh5el)
1079189006Sdes		basic_machine=sh5le-unknown
1080189006Sdes		;;
1081137015Sdes	sh64)
1082137015Sdes		basic_machine=sh64-unknown
1083137015Sdes		;;
1084106121Sdes	sparclite-wrs | simso-wrs)
108598937Sdes		basic_machine=sparclite-wrs
108698937Sdes		os=-vxworks
108798937Sdes		;;
108898937Sdes	sps7)
108998937Sdes		basic_machine=m68k-bull
109098937Sdes		os=-sysv2
109198937Sdes		;;
109298937Sdes	spur)
109398937Sdes		basic_machine=spur-unknown
109498937Sdes		;;
109598937Sdes	st2000)
109698937Sdes		basic_machine=m68k-tandem
109798937Sdes		;;
109898937Sdes	stratus)
109998937Sdes		basic_machine=i860-stratus
110098937Sdes		os=-sysv4
110198937Sdes		;;
1102255670Sdes	strongarm-* | thumb-*)
1103255670Sdes		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1104255670Sdes		;;
110598937Sdes	sun2)
110698937Sdes		basic_machine=m68000-sun
110798937Sdes		;;
110898937Sdes	sun2os3)
110998937Sdes		basic_machine=m68000-sun
111098937Sdes		os=-sunos3
111198937Sdes		;;
111298937Sdes	sun2os4)
111398937Sdes		basic_machine=m68000-sun
111498937Sdes		os=-sunos4
111598937Sdes		;;
111698937Sdes	sun3os3)
111798937Sdes		basic_machine=m68k-sun
111898937Sdes		os=-sunos3
111998937Sdes		;;
112098937Sdes	sun3os4)
112198937Sdes		basic_machine=m68k-sun
112298937Sdes		os=-sunos4
112398937Sdes		;;
112498937Sdes	sun4os3)
112598937Sdes		basic_machine=sparc-sun
112698937Sdes		os=-sunos3
112798937Sdes		;;
112898937Sdes	sun4os4)
112998937Sdes		basic_machine=sparc-sun
113098937Sdes		os=-sunos4
113198937Sdes		;;
113298937Sdes	sun4sol2)
113398937Sdes		basic_machine=sparc-sun
113498937Sdes		os=-solaris2
113598937Sdes		;;
113698937Sdes	sun3 | sun3-*)
113798937Sdes		basic_machine=m68k-sun
113898937Sdes		;;
113998937Sdes	sun4)
114098937Sdes		basic_machine=sparc-sun
114198937Sdes		;;
114298937Sdes	sun386 | sun386i | roadrunner)
114398937Sdes		basic_machine=i386-sun
114498937Sdes		;;
1145126274Sdes	sv1)
114698937Sdes		basic_machine=sv1-cray
114798937Sdes		os=-unicos
114898937Sdes		;;
114998937Sdes	symmetry)
115098937Sdes		basic_machine=i386-sequent
115198937Sdes		os=-dynix
115298937Sdes		;;
115398937Sdes	t3e)
1154106121Sdes		basic_machine=alphaev5-cray
115598937Sdes		os=-unicos
115698937Sdes		;;
1157106121Sdes	t90)
1158106121Sdes		basic_machine=t90-cray
1159106121Sdes		os=-unicos
1160106121Sdes		;;
1161189006Sdes	tile*)
1162255670Sdes		basic_machine=$basic_machine-unknown
1163189006Sdes		os=-linux-gnu
1164189006Sdes		;;
116598937Sdes	tx39)
116698937Sdes		basic_machine=mipstx39-unknown
116798937Sdes		;;
116898937Sdes	tx39el)
116998937Sdes		basic_machine=mipstx39el-unknown
117098937Sdes		;;
1171106121Sdes	toad1)
1172106121Sdes		basic_machine=pdp10-xkl
1173106121Sdes		os=-tops20
1174106121Sdes		;;
117598937Sdes	tower | tower-32)
117698937Sdes		basic_machine=m68k-ncr
117798937Sdes		;;
1178149749Sdes	tpf)
1179149749Sdes		basic_machine=s390x-ibm
1180149749Sdes		os=-tpf
1181149749Sdes		;;
118298937Sdes	udi29k)
118398937Sdes		basic_machine=a29k-amd
118498937Sdes		os=-udi
118598937Sdes		;;
118698937Sdes	ultra3)
118798937Sdes		basic_machine=a29k-nyu
118898937Sdes		os=-sym1
118998937Sdes		;;
119098937Sdes	v810 | necv810)
119198937Sdes		basic_machine=v810-nec
119298937Sdes		os=-none
119398937Sdes		;;
119498937Sdes	vaxv)
119598937Sdes		basic_machine=vax-dec
119698937Sdes		os=-sysv
119798937Sdes		;;
119898937Sdes	vms)
119998937Sdes		basic_machine=vax-dec
120098937Sdes		os=-vms
120198937Sdes		;;
120298937Sdes	vpp*|vx|vx-*)
1203137015Sdes		basic_machine=f301-fujitsu
1204137015Sdes		;;
120598937Sdes	vxworks960)
120698937Sdes		basic_machine=i960-wrs
120798937Sdes		os=-vxworks
120898937Sdes		;;
120998937Sdes	vxworks68)
121098937Sdes		basic_machine=m68k-wrs
121198937Sdes		os=-vxworks
121298937Sdes		;;
121398937Sdes	vxworks29k)
121498937Sdes		basic_machine=a29k-wrs
121598937Sdes		os=-vxworks
121698937Sdes		;;
121798937Sdes	w65*)
121898937Sdes		basic_machine=w65-wdc
121998937Sdes		os=-none
122098937Sdes		;;
122198937Sdes	w89k-*)
122298937Sdes		basic_machine=hppa1.1-winbond
122398937Sdes		os=-proelf
122498937Sdes		;;
1225149749Sdes	xbox)
1226149749Sdes		basic_machine=i686-pc
1227149749Sdes		os=-mingw32
1228149749Sdes		;;
1229126274Sdes	xps | xps100)
123098937Sdes		basic_machine=xps100-honeywell
123198937Sdes		;;
1232255670Sdes	xscale-* | xscalee[bl]-*)
1233255670Sdes		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1234255670Sdes		;;
1235106121Sdes	ymp)
1236106121Sdes		basic_machine=ymp-cray
1237106121Sdes		os=-unicos
1238106121Sdes		;;
123998937Sdes	z8k-*-coff)
124098937Sdes		basic_machine=z8k-unknown
124198937Sdes		os=-sim
124298937Sdes		;;
1243204861Sdes	z80-*-coff)
1244204861Sdes		basic_machine=z80-unknown
1245204861Sdes		os=-sim
1246204861Sdes		;;
124798937Sdes	none)
124898937Sdes		basic_machine=none-none
124998937Sdes		os=-none
125098937Sdes		;;
125198937Sdes
125298937Sdes# Here we handle the default manufacturer of certain CPU types.  It is in
125398937Sdes# some cases the only manufacturer, in others, it is the most popular.
125498937Sdes	w89k)
125598937Sdes		basic_machine=hppa1.1-winbond
125698937Sdes		;;
125798937Sdes	op50n)
125898937Sdes		basic_machine=hppa1.1-oki
125998937Sdes		;;
126098937Sdes	op60c)
126198937Sdes		basic_machine=hppa1.1-oki
126298937Sdes		;;
126398937Sdes	romp)
126498937Sdes		basic_machine=romp-ibm
126598937Sdes		;;
1266149749Sdes	mmix)
1267149749Sdes		basic_machine=mmix-knuth
1268149749Sdes		;;
126998937Sdes	rs6000)
127098937Sdes		basic_machine=rs6000-ibm
127198937Sdes		;;
127298937Sdes	vax)
127398937Sdes		basic_machine=vax-dec
127498937Sdes		;;
127598937Sdes	pdp10)
127698937Sdes		# there are many clones, so DEC is not a safe bet
127798937Sdes		basic_machine=pdp10-unknown
127898937Sdes		;;
127998937Sdes	pdp11)
128098937Sdes		basic_machine=pdp11-dec
128198937Sdes		;;
128298937Sdes	we32k)
128398937Sdes		basic_machine=we32k-att
128498937Sdes		;;
1285204861Sdes	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
128698937Sdes		basic_machine=sh-unknown
128798937Sdes		;;
1288189006Sdes	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
128998937Sdes		basic_machine=sparc-sun
129098937Sdes		;;
1291126274Sdes	cydra)
129298937Sdes		basic_machine=cydra-cydrome
129398937Sdes		;;
129498937Sdes	orion)
129598937Sdes		basic_machine=orion-highlevel
129698937Sdes		;;
129798937Sdes	orion105)
129898937Sdes		basic_machine=clipper-highlevel
129998937Sdes		;;
130098937Sdes	mac | mpw | mac-mpw)
130198937Sdes		basic_machine=m68k-apple
130298937Sdes		;;
130398937Sdes	pmac | pmac-mpw)
130498937Sdes		basic_machine=powerpc-apple
130598937Sdes		;;
130698937Sdes	*-unknown)
130798937Sdes		# Make sure to match an already-canonicalized machine name.
130898937Sdes		;;
130998937Sdes	*)
131098937Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
131198937Sdes		exit 1
131298937Sdes		;;
131398937Sdesesac
131498937Sdes
131598937Sdes# Here we canonicalize certain aliases for manufacturers.
131698937Sdescase $basic_machine in
131798937Sdes	*-digital*)
131898937Sdes		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
131998937Sdes		;;
132098937Sdes	*-commodore*)
132198937Sdes		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
132298937Sdes		;;
132398937Sdes	*)
132498937Sdes		;;
132598937Sdesesac
132698937Sdes
132798937Sdes# Decode manufacturer-specific aliases for certain operating systems.
132898937Sdes
132998937Sdesif [ x"$os" != x"" ]
133098937Sdesthen
133198937Sdescase $os in
1332255670Sdes	# First match some system type aliases
1333255670Sdes	# that might get confused with valid system types.
133498937Sdes	# -solaris* is a basic system type, with this one exception.
1335255670Sdes	-auroraux)
1336255670Sdes		os=-auroraux
1337204861Sdes		;;
133898937Sdes	-solaris1 | -solaris1.*)
133998937Sdes		os=`echo $os | sed -e 's|solaris1|sunos4|'`
134098937Sdes		;;
134198937Sdes	-solaris)
134298937Sdes		os=-solaris2
134398937Sdes		;;
134498937Sdes	-svr4*)
134598937Sdes		os=-sysv4
134698937Sdes		;;
134798937Sdes	-unixware*)
134898937Sdes		os=-sysv4.2uw
134998937Sdes		;;
135098937Sdes	-gnu/linux*)
135198937Sdes		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
135298937Sdes		;;
135398937Sdes	# First accept the basic system types.
135498937Sdes	# The portable systems comes first.
135598937Sdes	# Each alternative MUST END IN A *, to match a version number.
135698937Sdes	# -sysv* is not here because it comes later, after sysvr4.
135798937Sdes	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1358204861Sdes	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1359204861Sdes	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1360204861Sdes	      | -sym* | -kopensolaris* \
136198937Sdes	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1362204861Sdes	      | -aos* | -aros* \
136398937Sdes	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
136498937Sdes	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1365189006Sdes	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1366255670Sdes	      | -bitrig* | -openbsd* | -solidbsd* \
1367149749Sdes	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1368149749Sdes	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
136998937Sdes	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
137098937Sdes	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1371189006Sdes	      | -chorusos* | -chorusrdb* | -cegcc* \
1372255670Sdes	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1373255670Sdes	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1374255670Sdes	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1375189006Sdes	      | -uxpv* | -beos* | -mpeix* | -udk* \
1376137015Sdes	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
137798937Sdes	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1378106121Sdes	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1379106121Sdes	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1380137015Sdes	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1381189006Sdes	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1382204861Sdes	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
138398937Sdes	# Remember, each alternative MUST END IN *, to match a version number.
138498937Sdes		;;
138598937Sdes	-qnx*)
138698937Sdes		case $basic_machine in
138798937Sdes		    x86-* | i*86-*)
138898937Sdes			;;
138998937Sdes		    *)
139098937Sdes			os=-nto$os
139198937Sdes			;;
139298937Sdes		esac
139398937Sdes		;;
1394137015Sdes	-nto-qnx*)
1395137015Sdes		;;
139698937Sdes	-nto*)
1397137015Sdes		os=`echo $os | sed -e 's|nto|nto-qnx|'`
139898937Sdes		;;
139998937Sdes	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1400189006Sdes	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
140198937Sdes	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
140298937Sdes		;;
140398937Sdes	-mac*)
140498937Sdes		os=`echo $os | sed -e 's|mac|macos|'`
140598937Sdes		;;
1406137015Sdes	-linux-dietlibc)
1407137015Sdes		os=-linux-dietlibc
1408137015Sdes		;;
140998937Sdes	-linux*)
141098937Sdes		os=`echo $os | sed -e 's|linux|linux-gnu|'`
141198937Sdes		;;
141298937Sdes	-sunos5*)
141398937Sdes		os=`echo $os | sed -e 's|sunos5|solaris2|'`
141498937Sdes		;;
141598937Sdes	-sunos6*)
141698937Sdes		os=`echo $os | sed -e 's|sunos6|solaris3|'`
141798937Sdes		;;
141898937Sdes	-opened*)
141998937Sdes		os=-openedition
142098937Sdes		;;
1421255670Sdes	-os400*)
1422149749Sdes		os=-os400
1423149749Sdes		;;
142498937Sdes	-wince*)
142598937Sdes		os=-wince
142698937Sdes		;;
142798937Sdes	-osfrose*)
142898937Sdes		os=-osfrose
142998937Sdes		;;
143098937Sdes	-osf*)
143198937Sdes		os=-osf
143298937Sdes		;;
143398937Sdes	-utek*)
143498937Sdes		os=-bsd
143598937Sdes		;;
143698937Sdes	-dynix*)
143798937Sdes		os=-bsd
143898937Sdes		;;
143998937Sdes	-acis*)
144098937Sdes		os=-aos
144198937Sdes		;;
1442106121Sdes	-atheos*)
1443106121Sdes		os=-atheos
1444106121Sdes		;;
1445149749Sdes	-syllable*)
1446149749Sdes		os=-syllable
1447149749Sdes		;;
144898937Sdes	-386bsd)
144998937Sdes		os=-bsd
145098937Sdes		;;
145198937Sdes	-ctix* | -uts*)
145298937Sdes		os=-sysv
145398937Sdes		;;
1454106121Sdes	-nova*)
1455106121Sdes		os=-rtmk-nova
1456106121Sdes		;;
145798937Sdes	-ns2 )
1458126274Sdes		os=-nextstep2
145998937Sdes		;;
146098937Sdes	-nsk*)
146198937Sdes		os=-nsk
146298937Sdes		;;
146398937Sdes	# Preserve the version number of sinix5.
146498937Sdes	-sinix5.*)
146598937Sdes		os=`echo $os | sed -e 's|sinix|sysv|'`
146698937Sdes		;;
146798937Sdes	-sinix*)
146898937Sdes		os=-sysv4
146998937Sdes		;;
1470255670Sdes	-tpf*)
1471149749Sdes		os=-tpf
1472149749Sdes		;;
147398937Sdes	-triton*)
147498937Sdes		os=-sysv3
147598937Sdes		;;
147698937Sdes	-oss*)
147798937Sdes		os=-sysv3
147898937Sdes		;;
147998937Sdes	-svr4)
148098937Sdes		os=-sysv4
148198937Sdes		;;
148298937Sdes	-svr3)
148398937Sdes		os=-sysv3
148498937Sdes		;;
148598937Sdes	-sysvr4)
148698937Sdes		os=-sysv4
148798937Sdes		;;
148898937Sdes	# This must come after -sysvr4.
148998937Sdes	-sysv*)
149098937Sdes		;;
149198937Sdes	-ose*)
149298937Sdes		os=-ose
149398937Sdes		;;
149498937Sdes	-es1800*)
149598937Sdes		os=-ose
149698937Sdes		;;
149798937Sdes	-xenix)
149898937Sdes		os=-xenix
149998937Sdes		;;
1500126274Sdes	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1501126274Sdes		os=-mint
150298937Sdes		;;
1503137015Sdes	-aros*)
1504137015Sdes		os=-aros
1505137015Sdes		;;
1506137015Sdes	-kaos*)
1507137015Sdes		os=-kaos
1508137015Sdes		;;
1509149749Sdes	-zvmoe)
1510149749Sdes		os=-zvmoe
1511149749Sdes		;;
1512189006Sdes	-dicos*)
1513189006Sdes		os=-dicos
1514189006Sdes		;;
1515255670Sdes	-nacl*)
1516255670Sdes		;;
151798937Sdes	-none)
151898937Sdes		;;
151998937Sdes	*)
152098937Sdes		# Get rid of the `-' at the beginning of $os.
152198937Sdes		os=`echo $os | sed 's/[^-]*-//'`
152298937Sdes		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
152398937Sdes		exit 1
152498937Sdes		;;
152598937Sdesesac
152698937Sdeselse
152798937Sdes
152898937Sdes# Here we handle the default operating systems that come with various machines.
152998937Sdes# The value should be what the vendor currently ships out the door with their
153098937Sdes# machine or put another way, the most popular os provided with the machine.
153198937Sdes
153298937Sdes# Note that if you're going to try to match "-MANUFACTURER" here (say,
153398937Sdes# "-sun"), then you have to tell the case statement up towards the top
153498937Sdes# that MANUFACTURER isn't an operating system.  Otherwise, code above
153598937Sdes# will signal an error saying that MANUFACTURER isn't an operating
153698937Sdes# system, and we'll never get to this point.
153798937Sdes
153898937Sdescase $basic_machine in
1539255670Sdes	score-*)
1540189006Sdes		os=-elf
1541189006Sdes		;;
1542255670Sdes	spu-*)
1543189006Sdes		os=-elf
1544189006Sdes		;;
154598937Sdes	*-acorn)
154698937Sdes		os=-riscix1.2
154798937Sdes		;;
154898937Sdes	arm*-rebel)
154998937Sdes		os=-linux
155098937Sdes		;;
155198937Sdes	arm*-semi)
155298937Sdes		os=-aout
155398937Sdes		;;
1554255670Sdes	c4x-* | tic4x-*)
1555255670Sdes		os=-coff
1556189006Sdes		;;
1557255670Sdes	hexagon-*)
1558255670Sdes		os=-elf
1559255670Sdes		;;
1560225825Sdes	tic54x-*)
1561225825Sdes		os=-coff
1562225825Sdes		;;
1563225825Sdes	tic55x-*)
1564225825Sdes		os=-coff
1565225825Sdes		;;
1566225825Sdes	tic6x-*)
1567225825Sdes		os=-coff
1568225825Sdes		;;
1569106121Sdes	# This must come before the *-dec entry.
157098937Sdes	pdp10-*)
157198937Sdes		os=-tops20
157298937Sdes		;;
1573126274Sdes	pdp11-*)
157498937Sdes		os=-none
157598937Sdes		;;
157698937Sdes	*-dec | vax-*)
157798937Sdes		os=-ultrix4.2
157898937Sdes		;;
157998937Sdes	m68*-apollo)
158098937Sdes		os=-domain
158198937Sdes		;;
158298937Sdes	i386-sun)
158398937Sdes		os=-sunos4.0.2
158498937Sdes		;;
158598937Sdes	m68000-sun)
158698937Sdes		os=-sunos3
158798937Sdes		;;
158898937Sdes	m68*-cisco)
158998937Sdes		os=-aout
159098937Sdes		;;
1591255670Sdes	mep-*)
1592189006Sdes		os=-elf
1593189006Sdes		;;
159498937Sdes	mips*-cisco)
159598937Sdes		os=-elf
159698937Sdes		;;
159798937Sdes	mips*-*)
159898937Sdes		os=-elf
159998937Sdes		;;
1600106121Sdes	or32-*)
1601106121Sdes		os=-coff
1602106121Sdes		;;
160398937Sdes	*-tti)	# must be before sparc entry or we get the wrong os.
160498937Sdes		os=-sysv3
160598937Sdes		;;
160698937Sdes	sparc-* | *-sun)
160798937Sdes		os=-sunos4.1.1
160898937Sdes		;;
160998937Sdes	*-be)
161098937Sdes		os=-beos
161198937Sdes		;;
1612189006Sdes	*-haiku)
1613189006Sdes		os=-haiku
1614189006Sdes		;;
161598937Sdes	*-ibm)
161698937Sdes		os=-aix
161798937Sdes		;;
1618255670Sdes	*-knuth)
1619149749Sdes		os=-mmixware
1620149749Sdes		;;
162198937Sdes	*-wec)
162298937Sdes		os=-proelf
162398937Sdes		;;
162498937Sdes	*-winbond)
162598937Sdes		os=-proelf
162698937Sdes		;;
162798937Sdes	*-oki)
162898937Sdes		os=-proelf
162998937Sdes		;;
163098937Sdes	*-hp)
163198937Sdes		os=-hpux
163298937Sdes		;;
163398937Sdes	*-hitachi)
163498937Sdes		os=-hiux
163598937Sdes		;;
163698937Sdes	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
163798937Sdes		os=-sysv
163898937Sdes		;;
163998937Sdes	*-cbm)
164098937Sdes		os=-amigaos
164198937Sdes		;;
164298937Sdes	*-dg)
164398937Sdes		os=-dgux
164498937Sdes		;;
164598937Sdes	*-dolphin)
164698937Sdes		os=-sysv3
164798937Sdes		;;
164898937Sdes	m68k-ccur)
164998937Sdes		os=-rtu
165098937Sdes		;;
165198937Sdes	m88k-omron*)
165298937Sdes		os=-luna
165398937Sdes		;;
165498937Sdes	*-next )
165598937Sdes		os=-nextstep
165698937Sdes		;;
165798937Sdes	*-sequent)
165898937Sdes		os=-ptx
165998937Sdes		;;
166098937Sdes	*-crds)
166198937Sdes		os=-unos
166298937Sdes		;;
166398937Sdes	*-ns)
166498937Sdes		os=-genix
166598937Sdes		;;
166698937Sdes	i370-*)
166798937Sdes		os=-mvs
166898937Sdes		;;
166998937Sdes	*-next)
167098937Sdes		os=-nextstep3
167198937Sdes		;;
1672126274Sdes	*-gould)
167398937Sdes		os=-sysv
167498937Sdes		;;
1675126274Sdes	*-highlevel)
167698937Sdes		os=-bsd
167798937Sdes		;;
167898937Sdes	*-encore)
167998937Sdes		os=-bsd
168098937Sdes		;;
1681126274Sdes	*-sgi)
168298937Sdes		os=-irix
168398937Sdes		;;
1684126274Sdes	*-siemens)
168598937Sdes		os=-sysv4
168698937Sdes		;;
168798937Sdes	*-masscomp)
168898937Sdes		os=-rtu
168998937Sdes		;;
169098937Sdes	f30[01]-fujitsu | f700-fujitsu)
169198937Sdes		os=-uxpv
169298937Sdes		;;
169398937Sdes	*-rom68k)
169498937Sdes		os=-coff
169598937Sdes		;;
169698937Sdes	*-*bug)
169798937Sdes		os=-coff
169898937Sdes		;;
169998937Sdes	*-apple)
170098937Sdes		os=-macos
170198937Sdes		;;
170298937Sdes	*-atari*)
170398937Sdes		os=-mint
170498937Sdes		;;
170598937Sdes	*)
170698937Sdes		os=-none
170798937Sdes		;;
170898937Sdesesac
170998937Sdesfi
171098937Sdes
171198937Sdes# Here we handle the case where we know the os, and the CPU type, but not the
171298937Sdes# manufacturer.  We pick the logical manufacturer.
171398937Sdesvendor=unknown
171498937Sdescase $basic_machine in
171598937Sdes	*-unknown)
171698937Sdes		case $os in
171798937Sdes			-riscix*)
171898937Sdes				vendor=acorn
171998937Sdes				;;
172098937Sdes			-sunos*)
172198937Sdes				vendor=sun
172298937Sdes				;;
1723204861Sdes			-cnk*|-aix*)
172498937Sdes				vendor=ibm
172598937Sdes				;;
172698937Sdes			-beos*)
172798937Sdes				vendor=be
172898937Sdes				;;
172998937Sdes			-hpux*)
173098937Sdes				vendor=hp
173198937Sdes				;;
173298937Sdes			-mpeix*)
173398937Sdes				vendor=hp
173498937Sdes				;;
173598937Sdes			-hiux*)
173698937Sdes				vendor=hitachi
173798937Sdes				;;
173898937Sdes			-unos*)
173998937Sdes				vendor=crds
174098937Sdes				;;
174198937Sdes			-dgux*)
174298937Sdes				vendor=dg
174398937Sdes				;;
174498937Sdes			-luna*)
174598937Sdes				vendor=omron
174698937Sdes				;;
174798937Sdes			-genix*)
174898937Sdes				vendor=ns
174998937Sdes				;;
175098937Sdes			-mvs* | -opened*)
175198937Sdes				vendor=ibm
175298937Sdes				;;
1753149749Sdes			-os400*)
1754149749Sdes				vendor=ibm
1755149749Sdes				;;
175698937Sdes			-ptx*)
175798937Sdes				vendor=sequent
175898937Sdes				;;
1759149749Sdes			-tpf*)
1760149749Sdes				vendor=ibm
1761149749Sdes				;;
1762106121Sdes			-vxsim* | -vxworks* | -windiss*)
176398937Sdes				vendor=wrs
176498937Sdes				;;
176598937Sdes			-aux*)
176698937Sdes				vendor=apple
176798937Sdes				;;
176898937Sdes			-hms*)
176998937Sdes				vendor=hitachi
177098937Sdes				;;
177198937Sdes			-mpw* | -macos*)
177298937Sdes				vendor=apple
177398937Sdes				;;
177498937Sdes			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
177598937Sdes				vendor=atari
177698937Sdes				;;
1777106121Sdes			-vos*)
1778106121Sdes				vendor=stratus
1779106121Sdes				;;
178098937Sdes		esac
178198937Sdes		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
178298937Sdes		;;
178398937Sdesesac
178498937Sdes
178598937Sdesecho $basic_machine$os
1786149749Sdesexit
178798937Sdes
178898937Sdes# Local variables:
178998937Sdes# eval: (add-hook 'write-file-hooks 'time-stamp)
179098937Sdes# time-stamp-start: "timestamp='"
179198937Sdes# time-stamp-format: "%:y-%02m-%02d"
179298937Sdes# time-stamp-end: "'"
179398937Sdes# End:
1794