config.sub revision 2a75d1c4
1f7ec340bSmacallan#! /bin/sh
2f7ec340bSmacallan# Configuration validation subroutine script.
3f7ec340bSmacallan#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
42a75d1c4Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
52a75d1c4Smrg#   2011, 2012 Free Software Foundation, Inc.
6f7ec340bSmacallan
72a75d1c4Smrgtimestamp='2012-08-18'
8f7ec340bSmacallan
9f7ec340bSmacallan# This file is (in principle) common to ALL GNU software.
10f7ec340bSmacallan# The presence of a machine in this file suggests that SOME GNU software
11f7ec340bSmacallan# can handle that machine.  It does not imply ALL GNU software can.
12f7ec340bSmacallan#
13f7ec340bSmacallan# This file is free software; you can redistribute it and/or modify
14f7ec340bSmacallan# it under the terms of the GNU General Public License as published by
15f7ec340bSmacallan# the Free Software Foundation; either version 2 of the License, or
16f7ec340bSmacallan# (at your option) any later version.
17f7ec340bSmacallan#
18f7ec340bSmacallan# This program is distributed in the hope that it will be useful,
19f7ec340bSmacallan# but WITHOUT ANY WARRANTY; without even the implied warranty of
20f7ec340bSmacallan# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21f7ec340bSmacallan# GNU General Public License for more details.
22f7ec340bSmacallan#
23f7ec340bSmacallan# You should have received a copy of the GNU General Public License
242a75d1c4Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>.
257ce7e03cSmrg#
26f7ec340bSmacallan# As a special exception to the GNU General Public License, if you
27f7ec340bSmacallan# distribute this file as part of a program that contains a
28f7ec340bSmacallan# configuration script generated by Autoconf, you may include it under
29f7ec340bSmacallan# the same distribution terms that you use for the rest of that program.
30f7ec340bSmacallan
317ce7e03cSmrg
32f7ec340bSmacallan# Please send patches to <config-patches@gnu.org>.  Submit a context
332a75d1c4Smrg# diff and a properly formatted GNU ChangeLog entry.
34f7ec340bSmacallan#
35f7ec340bSmacallan# Configuration subroutine to validate and canonicalize a configuration type.
36f7ec340bSmacallan# Supply the specified configuration type as an argument.
37f7ec340bSmacallan# If it is invalid, we print an error message on stderr and exit with code 1.
38f7ec340bSmacallan# Otherwise, we print the canonical config type on stdout and succeed.
39f7ec340bSmacallan
402a75d1c4Smrg# You can get the latest version of this script from:
412a75d1c4Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
422a75d1c4Smrg
43f7ec340bSmacallan# This file is supposed to be the same for all GNU packages
44f7ec340bSmacallan# and recognize all the CPU types, system types and aliases
45f7ec340bSmacallan# that are meaningful with *any* GNU software.
46f7ec340bSmacallan# Each package is responsible for reporting which valid configurations
47f7ec340bSmacallan# it does not support.  The user should be able to distinguish
48f7ec340bSmacallan# a failure to support a valid configuration from a meaningless
49f7ec340bSmacallan# configuration.
50f7ec340bSmacallan
51f7ec340bSmacallan# The goal of this file is to map all the various variations of a given
52f7ec340bSmacallan# machine specification into a single specification in the form:
53f7ec340bSmacallan#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
54f7ec340bSmacallan# or in some cases, the newer four-part form:
55f7ec340bSmacallan#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
56f7ec340bSmacallan# It is wrong to echo any other type of specification.
57f7ec340bSmacallan
58f7ec340bSmacallanme=`echo "$0" | sed -e 's,.*/,,'`
59f7ec340bSmacallan
60f7ec340bSmacallanusage="\
61f7ec340bSmacallanUsage: $0 [OPTION] CPU-MFR-OPSYS
62f7ec340bSmacallan       $0 [OPTION] ALIAS
63f7ec340bSmacallan
64f7ec340bSmacallanCanonicalize a configuration name.
65f7ec340bSmacallan
66f7ec340bSmacallanOperation modes:
67f7ec340bSmacallan  -h, --help         print this help, then exit
68f7ec340bSmacallan  -t, --time-stamp   print date of last modification, then exit
69f7ec340bSmacallan  -v, --version      print version number, then exit
70f7ec340bSmacallan
71f7ec340bSmacallanReport bugs and patches to <config-patches@gnu.org>."
72f7ec340bSmacallan
73f7ec340bSmacallanversion="\
74f7ec340bSmacallanGNU config.sub ($timestamp)
75f7ec340bSmacallan
762a75d1c4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
772a75d1c4Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
782a75d1c4SmrgFree Software Foundation, Inc.
79f7ec340bSmacallan
80f7ec340bSmacallanThis is free software; see the source for copying conditions.  There is NO
81f7ec340bSmacallanwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
82f7ec340bSmacallan
83f7ec340bSmacallanhelp="
84f7ec340bSmacallanTry \`$me --help' for more information."
85f7ec340bSmacallan
86f7ec340bSmacallan# Parse command line
87f7ec340bSmacallanwhile test $# -gt 0 ; do
88f7ec340bSmacallan  case $1 in
89f7ec340bSmacallan    --time-stamp | --time* | -t )
907ce7e03cSmrg       echo "$timestamp" ; exit ;;
91f7ec340bSmacallan    --version | -v )
927ce7e03cSmrg       echo "$version" ; exit ;;
93f7ec340bSmacallan    --help | --h* | -h )
947ce7e03cSmrg       echo "$usage"; exit ;;
95f7ec340bSmacallan    -- )     # Stop option processing
96f7ec340bSmacallan       shift; break ;;
97f7ec340bSmacallan    - )	# Use stdin as input.
98f7ec340bSmacallan       break ;;
99f7ec340bSmacallan    -* )
100f7ec340bSmacallan       echo "$me: invalid option $1$help"
101f7ec340bSmacallan       exit 1 ;;
102f7ec340bSmacallan
103f7ec340bSmacallan    *local*)
104f7ec340bSmacallan       # First pass through any local machine types.
105f7ec340bSmacallan       echo $1
1067ce7e03cSmrg       exit ;;
107f7ec340bSmacallan
108f7ec340bSmacallan    * )
109f7ec340bSmacallan       break ;;
110f7ec340bSmacallan  esac
111f7ec340bSmacallandone
112f7ec340bSmacallan
113f7ec340bSmacallancase $# in
114f7ec340bSmacallan 0) echo "$me: missing argument$help" >&2
115f7ec340bSmacallan    exit 1;;
116f7ec340bSmacallan 1) ;;
117f7ec340bSmacallan *) echo "$me: too many arguments$help" >&2
118f7ec340bSmacallan    exit 1;;
119f7ec340bSmacallanesac
120f7ec340bSmacallan
121f7ec340bSmacallan# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
122f7ec340bSmacallan# Here we must recognize all the valid KERNEL-OS combinations.
123f7ec340bSmacallanmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
124f7ec340bSmacallancase $maybe_os in
1252a75d1c4Smrg  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
1262a75d1c4Smrg  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
1272a75d1c4Smrg  knetbsd*-gnu* | netbsd*-gnu* | \
1282a75d1c4Smrg  kopensolaris*-gnu* | \
1297ce7e03cSmrg  storm-chaos* | os2-emx* | rtmk-nova*)
130f7ec340bSmacallan    os=-$maybe_os
131f7ec340bSmacallan    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
132f7ec340bSmacallan    ;;
1332a75d1c4Smrg  android-linux)
1342a75d1c4Smrg    os=-linux-android
1352a75d1c4Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
1362a75d1c4Smrg    ;;
137f7ec340bSmacallan  *)
138f7ec340bSmacallan    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
139f7ec340bSmacallan    if [ $basic_machine != $1 ]
140f7ec340bSmacallan    then os=`echo $1 | sed 's/.*-/-/'`
141f7ec340bSmacallan    else os=; fi
142f7ec340bSmacallan    ;;
143f7ec340bSmacallanesac
144f7ec340bSmacallan
145f7ec340bSmacallan### Let's recognize common machines as not being operating systems so
146f7ec340bSmacallan### that things like config.sub decstation-3100 work.  We also
147f7ec340bSmacallan### recognize some manufacturers as not being operating systems, so we
148f7ec340bSmacallan### can provide default operating systems below.
149f7ec340bSmacallancase $os in
150f7ec340bSmacallan	-sun*os*)
151f7ec340bSmacallan		# Prevent following clause from handling this invalid input.
152f7ec340bSmacallan		;;
153f7ec340bSmacallan	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
154f7ec340bSmacallan	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
155f7ec340bSmacallan	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
156f7ec340bSmacallan	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
157f7ec340bSmacallan	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
158f7ec340bSmacallan	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1592a75d1c4Smrg	-apple | -axis | -knuth | -cray | -microblaze)
160f7ec340bSmacallan		os=
161f7ec340bSmacallan		basic_machine=$1
162f7ec340bSmacallan		;;
1632a75d1c4Smrg	-bluegene*)
1642a75d1c4Smrg		os=-cnk
1652a75d1c4Smrg		;;
166f7ec340bSmacallan	-sim | -cisco | -oki | -wec | -winbond)
167f7ec340bSmacallan		os=
168f7ec340bSmacallan		basic_machine=$1
169f7ec340bSmacallan		;;
170f7ec340bSmacallan	-scout)
171f7ec340bSmacallan		;;
172f7ec340bSmacallan	-wrs)
173f7ec340bSmacallan		os=-vxworks
174f7ec340bSmacallan		basic_machine=$1
175f7ec340bSmacallan		;;
176f7ec340bSmacallan	-chorusos*)
177f7ec340bSmacallan		os=-chorusos
178f7ec340bSmacallan		basic_machine=$1
179f7ec340bSmacallan		;;
1802a75d1c4Smrg	-chorusrdb)
1812a75d1c4Smrg		os=-chorusrdb
182f7ec340bSmacallan		basic_machine=$1
1832a75d1c4Smrg		;;
184f7ec340bSmacallan	-hiux*)
185f7ec340bSmacallan		os=-hiuxwe2
186f7ec340bSmacallan		;;
1877ce7e03cSmrg	-sco6)
1887ce7e03cSmrg		os=-sco5v6
1897ce7e03cSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1907ce7e03cSmrg		;;
191f7ec340bSmacallan	-sco5)
192f7ec340bSmacallan		os=-sco3.2v5
193f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194f7ec340bSmacallan		;;
195f7ec340bSmacallan	-sco4)
196f7ec340bSmacallan		os=-sco3.2v4
197f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198f7ec340bSmacallan		;;
199f7ec340bSmacallan	-sco3.2.[4-9]*)
200f7ec340bSmacallan		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
201f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202f7ec340bSmacallan		;;
203f7ec340bSmacallan	-sco3.2v[4-9]*)
204f7ec340bSmacallan		# Don't forget version if it is 3.2v4 or newer.
205f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206f7ec340bSmacallan		;;
2077ce7e03cSmrg	-sco5v6*)
2087ce7e03cSmrg		# Don't forget version if it is 3.2v4 or newer.
2097ce7e03cSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2107ce7e03cSmrg		;;
211f7ec340bSmacallan	-sco*)
212f7ec340bSmacallan		os=-sco3.2v2
213f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214f7ec340bSmacallan		;;
215f7ec340bSmacallan	-udk*)
216f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
217f7ec340bSmacallan		;;
218f7ec340bSmacallan	-isc)
219f7ec340bSmacallan		os=-isc2.2
220f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
221f7ec340bSmacallan		;;
222f7ec340bSmacallan	-clix*)
223f7ec340bSmacallan		basic_machine=clipper-intergraph
224f7ec340bSmacallan		;;
225f7ec340bSmacallan	-isc*)
226f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
227f7ec340bSmacallan		;;
2282a75d1c4Smrg	-lynx*178)
2292a75d1c4Smrg		os=-lynxos178
2302a75d1c4Smrg		;;
2312a75d1c4Smrg	-lynx*5)
2322a75d1c4Smrg		os=-lynxos5
2332a75d1c4Smrg		;;
234f7ec340bSmacallan	-lynx*)
235f7ec340bSmacallan		os=-lynxos
236f7ec340bSmacallan		;;
237f7ec340bSmacallan	-ptx*)
238f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
239f7ec340bSmacallan		;;
240f7ec340bSmacallan	-windowsnt*)
241f7ec340bSmacallan		os=`echo $os | sed -e 's/windowsnt/winnt/'`
242f7ec340bSmacallan		;;
243f7ec340bSmacallan	-psos*)
244f7ec340bSmacallan		os=-psos
245f7ec340bSmacallan		;;
246f7ec340bSmacallan	-mint | -mint[0-9]*)
247f7ec340bSmacallan		basic_machine=m68k-atari
248f7ec340bSmacallan		os=-mint
249f7ec340bSmacallan		;;
250f7ec340bSmacallanesac
251f7ec340bSmacallan
252f7ec340bSmacallan# Decode aliases for certain CPU-COMPANY combinations.
253f7ec340bSmacallancase $basic_machine in
254f7ec340bSmacallan	# Recognize the basic CPU types without company name.
255f7ec340bSmacallan	# Some are omitted here because they have special meanings below.
256f7ec340bSmacallan	1750a | 580 \
257f7ec340bSmacallan	| a29k \
2582a75d1c4Smrg	| aarch64 | aarch64_be \
259f7ec340bSmacallan	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
260f7ec340bSmacallan	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2617ce7e03cSmrg	| am33_2.0 \
2627ce7e03cSmrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
2632a75d1c4Smrg        | be32 | be64 \
2647ce7e03cSmrg	| bfin \
265f7ec340bSmacallan	| c4x | clipper \
2662a75d1c4Smrg	| d10v | d30v | dlx | dsp16xx | dvp \
2672a75d1c4Smrg	| epiphany \
2687ce7e03cSmrg	| fido | fr30 | frv \
269f7ec340bSmacallan	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2702a75d1c4Smrg	| hexagon \
271f7ec340bSmacallan	| i370 | i860 | i960 | ia64 \
2727ce7e03cSmrg	| ip2k | iq2000 \
2732a75d1c4Smrg	| le32 | le64 \
2742a75d1c4Smrg	| lm32 \
2757ce7e03cSmrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
2762a75d1c4Smrg	| maxq | mb | microblaze | mcore | mep | metag \
277f7ec340bSmacallan	| mips | mipsbe | mipseb | mipsel | mipsle \
278f7ec340bSmacallan	| mips16 \
279f7ec340bSmacallan	| mips64 | mips64el \
2802a75d1c4Smrg	| mips64octeon | mips64octeonel \
281f7ec340bSmacallan	| mips64orion | mips64orionel \
2822a75d1c4Smrg	| mips64r5900 | mips64r5900el \
2832a75d1c4Smrg	| mips64vr | mips64vrel \
284f7ec340bSmacallan	| mips64vr4100 | mips64vr4100el \
285f7ec340bSmacallan	| mips64vr4300 | mips64vr4300el \
286f7ec340bSmacallan	| mips64vr5000 | mips64vr5000el \
2877ce7e03cSmrg	| mips64vr5900 | mips64vr5900el \
288f7ec340bSmacallan	| mipsisa32 | mipsisa32el \
289f7ec340bSmacallan	| mipsisa32r2 | mipsisa32r2el \
290f7ec340bSmacallan	| mipsisa64 | mipsisa64el \
2917ce7e03cSmrg	| mipsisa64r2 | mipsisa64r2el \
292f7ec340bSmacallan	| mipsisa64sb1 | mipsisa64sb1el \
293f7ec340bSmacallan	| mipsisa64sr71k | mipsisa64sr71kel \
294f7ec340bSmacallan	| mipstx39 | mipstx39el \
295f7ec340bSmacallan	| mn10200 | mn10300 \
2962a75d1c4Smrg	| moxie \
2977ce7e03cSmrg	| mt \
298f7ec340bSmacallan	| msp430 \
2992a75d1c4Smrg	| nds32 | nds32le | nds32be \
3007ce7e03cSmrg	| nios | nios2 \
301f7ec340bSmacallan	| ns16k | ns32k \
3022a75d1c4Smrg	| open8 \
3037ce7e03cSmrg	| or32 \
304f7ec340bSmacallan	| pdp10 | pdp11 | pj | pjl \
3052a75d1c4Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle \
306f7ec340bSmacallan	| pyramid \
3072a75d1c4Smrg	| rl78 | rx \
3087ce7e03cSmrg	| score \
3092a75d1c4Smrg	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
310f7ec340bSmacallan	| sh64 | sh64le \
3117ce7e03cSmrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
3127ce7e03cSmrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
3132a75d1c4Smrg	| spu \
3142a75d1c4Smrg	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
3152a75d1c4Smrg	| ubicom32 \
3162a75d1c4Smrg	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
317f7ec340bSmacallan	| we32k \
3182a75d1c4Smrg	| x86 | xc16x | xstormy16 | xtensa \
3192a75d1c4Smrg	| z8k | z80)
320f7ec340bSmacallan		basic_machine=$basic_machine-unknown
321f7ec340bSmacallan		;;
3222a75d1c4Smrg	c54x)
3232a75d1c4Smrg		basic_machine=tic54x-unknown
3242a75d1c4Smrg		;;
3252a75d1c4Smrg	c55x)
3262a75d1c4Smrg		basic_machine=tic55x-unknown
3272a75d1c4Smrg		;;
3282a75d1c4Smrg	c6x)
3292a75d1c4Smrg		basic_machine=tic6x-unknown
3302a75d1c4Smrg		;;
3312a75d1c4Smrg	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
332f7ec340bSmacallan		basic_machine=$basic_machine-unknown
333f7ec340bSmacallan		os=-none
334f7ec340bSmacallan		;;
335f7ec340bSmacallan	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
336f7ec340bSmacallan		;;
3377ce7e03cSmrg	ms1)
3387ce7e03cSmrg		basic_machine=mt-unknown
3397ce7e03cSmrg		;;
340f7ec340bSmacallan
3412a75d1c4Smrg	strongarm | thumb | xscale)
3422a75d1c4Smrg		basic_machine=arm-unknown
3432a75d1c4Smrg		;;
3442a75d1c4Smrg	xgate)
3452a75d1c4Smrg		basic_machine=$basic_machine-unknown
3462a75d1c4Smrg		os=-none
3472a75d1c4Smrg		;;
3482a75d1c4Smrg	xscaleeb)
3492a75d1c4Smrg		basic_machine=armeb-unknown
3502a75d1c4Smrg		;;
3512a75d1c4Smrg
3522a75d1c4Smrg	xscaleel)
3532a75d1c4Smrg		basic_machine=armel-unknown
3542a75d1c4Smrg		;;
3552a75d1c4Smrg
356f7ec340bSmacallan	# We use `pc' rather than `unknown'
357f7ec340bSmacallan	# because (1) that's what they normally are, and
358f7ec340bSmacallan	# (2) the word "unknown" tends to confuse beginning users.
359f7ec340bSmacallan	i*86 | x86_64)
360f7ec340bSmacallan	  basic_machine=$basic_machine-pc
361f7ec340bSmacallan	  ;;
362f7ec340bSmacallan	# Object if more than one company name word.
363f7ec340bSmacallan	*-*-*)
364f7ec340bSmacallan		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
365f7ec340bSmacallan		exit 1
366f7ec340bSmacallan		;;
367f7ec340bSmacallan	# Recognize the basic CPU types with company name.
368f7ec340bSmacallan	580-* \
369f7ec340bSmacallan	| a29k-* \
3702a75d1c4Smrg	| aarch64-* | aarch64_be-* \
371f7ec340bSmacallan	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
372f7ec340bSmacallan	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
373f7ec340bSmacallan	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
374f7ec340bSmacallan	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
3757ce7e03cSmrg	| avr-* | avr32-* \
3762a75d1c4Smrg	| be32-* | be64-* \
3777ce7e03cSmrg	| bfin-* | bs2000-* \
3782a75d1c4Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* \
3797ce7e03cSmrg	| clipper-* | craynv-* | cydra-* \
380f7ec340bSmacallan	| d10v-* | d30v-* | dlx-* \
381f7ec340bSmacallan	| elxsi-* \
3827ce7e03cSmrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
383f7ec340bSmacallan	| h8300-* | h8500-* \
384f7ec340bSmacallan	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3852a75d1c4Smrg	| hexagon-* \
386f7ec340bSmacallan	| i*86-* | i860-* | i960-* | ia64-* \
3877ce7e03cSmrg	| ip2k-* | iq2000-* \
3882a75d1c4Smrg	| le32-* | le64-* \
3892a75d1c4Smrg	| lm32-* \
3907ce7e03cSmrg	| m32c-* | m32r-* | m32rle-* \
391f7ec340bSmacallan	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3922a75d1c4Smrg	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
393f7ec340bSmacallan	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
394f7ec340bSmacallan	| mips16-* \
395f7ec340bSmacallan	| mips64-* | mips64el-* \
3962a75d1c4Smrg	| mips64octeon-* | mips64octeonel-* \
397f7ec340bSmacallan	| mips64orion-* | mips64orionel-* \
3982a75d1c4Smrg	| mips64r5900-* | mips64r5900el-* \
3992a75d1c4Smrg	| mips64vr-* | mips64vrel-* \
400f7ec340bSmacallan	| mips64vr4100-* | mips64vr4100el-* \
401f7ec340bSmacallan	| mips64vr4300-* | mips64vr4300el-* \
402f7ec340bSmacallan	| mips64vr5000-* | mips64vr5000el-* \
4037ce7e03cSmrg	| mips64vr5900-* | mips64vr5900el-* \
404f7ec340bSmacallan	| mipsisa32-* | mipsisa32el-* \
405f7ec340bSmacallan	| mipsisa32r2-* | mipsisa32r2el-* \
406f7ec340bSmacallan	| mipsisa64-* | mipsisa64el-* \
4077ce7e03cSmrg	| mipsisa64r2-* | mipsisa64r2el-* \
408f7ec340bSmacallan	| mipsisa64sb1-* | mipsisa64sb1el-* \
409f7ec340bSmacallan	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
410f7ec340bSmacallan	| mipstx39-* | mipstx39el-* \
4117ce7e03cSmrg	| mmix-* \
4127ce7e03cSmrg	| mt-* \
413f7ec340bSmacallan	| msp430-* \
4142a75d1c4Smrg	| nds32-* | nds32le-* | nds32be-* \
4157ce7e03cSmrg	| nios-* | nios2-* \
4167ce7e03cSmrg	| none-* | np1-* | ns16k-* | ns32k-* \
4172a75d1c4Smrg	| open8-* \
418f7ec340bSmacallan	| orion-* \
419f7ec340bSmacallan	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
4202a75d1c4Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
421f7ec340bSmacallan	| pyramid-* \
4222a75d1c4Smrg	| rl78-* | romp-* | rs6000-* | rx-* \
4232a75d1c4Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
424f7ec340bSmacallan	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
4257ce7e03cSmrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
4267ce7e03cSmrg	| sparclite-* \
4272a75d1c4Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
4282a75d1c4Smrg	| tahoe-* \
429f7ec340bSmacallan	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
4302a75d1c4Smrg	| tile*-* \
431f7ec340bSmacallan	| tron-* \
4322a75d1c4Smrg	| ubicom32-* \
4332a75d1c4Smrg	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
4342a75d1c4Smrg	| vax-* \
435f7ec340bSmacallan	| we32k-* \
4362a75d1c4Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* \
4377ce7e03cSmrg	| xstormy16-* | xtensa*-* \
438f7ec340bSmacallan	| ymp-* \
4392a75d1c4Smrg	| z8k-* | z80-*)
440f7ec340bSmacallan		;;
4417ce7e03cSmrg	# Recognize the basic CPU types without company name, with glob match.
4427ce7e03cSmrg	xtensa*)
4437ce7e03cSmrg		basic_machine=$basic_machine-unknown
4447ce7e03cSmrg		;;
445f7ec340bSmacallan	# Recognize the various machine names and aliases which stand
446f7ec340bSmacallan	# for a CPU type and a company and sometimes even an OS.
447f7ec340bSmacallan	386bsd)
448f7ec340bSmacallan		basic_machine=i386-unknown
449f7ec340bSmacallan		os=-bsd
450f7ec340bSmacallan		;;
451f7ec340bSmacallan	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
452f7ec340bSmacallan		basic_machine=m68000-att
453f7ec340bSmacallan		;;
454f7ec340bSmacallan	3b*)
455f7ec340bSmacallan		basic_machine=we32k-att
456f7ec340bSmacallan		;;
457f7ec340bSmacallan	a29khif)
458f7ec340bSmacallan		basic_machine=a29k-amd
459f7ec340bSmacallan		os=-udi
460f7ec340bSmacallan		;;
4612a75d1c4Smrg	abacus)
4627ce7e03cSmrg		basic_machine=abacus-unknown
4637ce7e03cSmrg		;;
464f7ec340bSmacallan	adobe68k)
465f7ec340bSmacallan		basic_machine=m68010-adobe
466f7ec340bSmacallan		os=-scout
467f7ec340bSmacallan		;;
468f7ec340bSmacallan	alliant | fx80)
469f7ec340bSmacallan		basic_machine=fx80-alliant
470f7ec340bSmacallan		;;
471f7ec340bSmacallan	altos | altos3068)
472f7ec340bSmacallan		basic_machine=m68k-altos
473f7ec340bSmacallan		;;
474f7ec340bSmacallan	am29k)
475f7ec340bSmacallan		basic_machine=a29k-none
476f7ec340bSmacallan		os=-bsd
477f7ec340bSmacallan		;;
478f7ec340bSmacallan	amd64)
479f7ec340bSmacallan		basic_machine=x86_64-pc
480f7ec340bSmacallan		;;
4817ce7e03cSmrg	amd64-*)
4827ce7e03cSmrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
4837ce7e03cSmrg		;;
484f7ec340bSmacallan	amdahl)
485f7ec340bSmacallan		basic_machine=580-amdahl
486f7ec340bSmacallan		os=-sysv
487f7ec340bSmacallan		;;
488f7ec340bSmacallan	amiga | amiga-*)
489f7ec340bSmacallan		basic_machine=m68k-unknown
490f7ec340bSmacallan		;;
491f7ec340bSmacallan	amigaos | amigados)
492f7ec340bSmacallan		basic_machine=m68k-unknown
493f7ec340bSmacallan		os=-amigaos
494f7ec340bSmacallan		;;
495f7ec340bSmacallan	amigaunix | amix)
496f7ec340bSmacallan		basic_machine=m68k-unknown
497f7ec340bSmacallan		os=-sysv4
498f7ec340bSmacallan		;;
499f7ec340bSmacallan	apollo68)
500f7ec340bSmacallan		basic_machine=m68k-apollo
501f7ec340bSmacallan		os=-sysv
502f7ec340bSmacallan		;;
503f7ec340bSmacallan	apollo68bsd)
504f7ec340bSmacallan		basic_machine=m68k-apollo
505f7ec340bSmacallan		os=-bsd
506f7ec340bSmacallan		;;
5072a75d1c4Smrg	aros)
5082a75d1c4Smrg		basic_machine=i386-pc
5092a75d1c4Smrg		os=-aros
5102a75d1c4Smrg		;;
511f7ec340bSmacallan	aux)
512f7ec340bSmacallan		basic_machine=m68k-apple
513f7ec340bSmacallan		os=-aux
514f7ec340bSmacallan		;;
515f7ec340bSmacallan	balance)
516f7ec340bSmacallan		basic_machine=ns32k-sequent
517f7ec340bSmacallan		os=-dynix
518f7ec340bSmacallan		;;
5197ce7e03cSmrg	blackfin)
5207ce7e03cSmrg		basic_machine=bfin-unknown
5217ce7e03cSmrg		os=-linux
5227ce7e03cSmrg		;;
5237ce7e03cSmrg	blackfin-*)
5247ce7e03cSmrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
5257ce7e03cSmrg		os=-linux
5267ce7e03cSmrg		;;
5272a75d1c4Smrg	bluegene*)
5282a75d1c4Smrg		basic_machine=powerpc-ibm
5292a75d1c4Smrg		os=-cnk
5302a75d1c4Smrg		;;
5312a75d1c4Smrg	c54x-*)
5322a75d1c4Smrg		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
5332a75d1c4Smrg		;;
5342a75d1c4Smrg	c55x-*)
5352a75d1c4Smrg		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
5362a75d1c4Smrg		;;
5372a75d1c4Smrg	c6x-*)
5382a75d1c4Smrg		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
5392a75d1c4Smrg		;;
540f7ec340bSmacallan	c90)
541f7ec340bSmacallan		basic_machine=c90-cray
542f7ec340bSmacallan		os=-unicos
543f7ec340bSmacallan		;;
5442a75d1c4Smrg	cegcc)
5452a75d1c4Smrg		basic_machine=arm-unknown
5462a75d1c4Smrg		os=-cegcc
5472a75d1c4Smrg		;;
548f7ec340bSmacallan	convex-c1)
549f7ec340bSmacallan		basic_machine=c1-convex
550f7ec340bSmacallan		os=-bsd
551f7ec340bSmacallan		;;
552f7ec340bSmacallan	convex-c2)
553f7ec340bSmacallan		basic_machine=c2-convex
554f7ec340bSmacallan		os=-bsd
555f7ec340bSmacallan		;;
556f7ec340bSmacallan	convex-c32)
557f7ec340bSmacallan		basic_machine=c32-convex
558f7ec340bSmacallan		os=-bsd
559f7ec340bSmacallan		;;
560f7ec340bSmacallan	convex-c34)
561f7ec340bSmacallan		basic_machine=c34-convex
562f7ec340bSmacallan		os=-bsd
563f7ec340bSmacallan		;;
564f7ec340bSmacallan	convex-c38)
565f7ec340bSmacallan		basic_machine=c38-convex
566f7ec340bSmacallan		os=-bsd
567f7ec340bSmacallan		;;
568f7ec340bSmacallan	cray | j90)
569f7ec340bSmacallan		basic_machine=j90-cray
570f7ec340bSmacallan		os=-unicos
571f7ec340bSmacallan		;;
5727ce7e03cSmrg	craynv)
5737ce7e03cSmrg		basic_machine=craynv-cray
5747ce7e03cSmrg		os=-unicosmp
5757ce7e03cSmrg		;;
5762a75d1c4Smrg	cr16 | cr16-*)
5777ce7e03cSmrg		basic_machine=cr16-unknown
5787ce7e03cSmrg		os=-elf
5797ce7e03cSmrg		;;
580f7ec340bSmacallan	crds | unos)
581f7ec340bSmacallan		basic_machine=m68k-crds
582f7ec340bSmacallan		;;
5837ce7e03cSmrg	crisv32 | crisv32-* | etraxfs*)
5847ce7e03cSmrg		basic_machine=crisv32-axis
5857ce7e03cSmrg		;;
586f7ec340bSmacallan	cris | cris-* | etrax*)
587f7ec340bSmacallan		basic_machine=cris-axis
588f7ec340bSmacallan		;;
5897ce7e03cSmrg	crx)
5907ce7e03cSmrg		basic_machine=crx-unknown
5917ce7e03cSmrg		os=-elf
5927ce7e03cSmrg		;;
593f7ec340bSmacallan	da30 | da30-*)
594f7ec340bSmacallan		basic_machine=m68k-da30
595f7ec340bSmacallan		;;
596f7ec340bSmacallan	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
597f7ec340bSmacallan		basic_machine=mips-dec
598f7ec340bSmacallan		;;
599f7ec340bSmacallan	decsystem10* | dec10*)
600f7ec340bSmacallan		basic_machine=pdp10-dec
601f7ec340bSmacallan		os=-tops10
602f7ec340bSmacallan		;;
603f7ec340bSmacallan	decsystem20* | dec20*)
604f7ec340bSmacallan		basic_machine=pdp10-dec
605f7ec340bSmacallan		os=-tops20
606f7ec340bSmacallan		;;
607f7ec340bSmacallan	delta | 3300 | motorola-3300 | motorola-delta \
608f7ec340bSmacallan	      | 3300-motorola | delta-motorola)
609f7ec340bSmacallan		basic_machine=m68k-motorola
610f7ec340bSmacallan		;;
611f7ec340bSmacallan	delta88)
612f7ec340bSmacallan		basic_machine=m88k-motorola
613f7ec340bSmacallan		os=-sysv3
614f7ec340bSmacallan		;;
6152a75d1c4Smrg	dicos)
6162a75d1c4Smrg		basic_machine=i686-pc
6172a75d1c4Smrg		os=-dicos
6182a75d1c4Smrg		;;
6197ce7e03cSmrg	djgpp)
6207ce7e03cSmrg		basic_machine=i586-pc
6217ce7e03cSmrg		os=-msdosdjgpp
6227ce7e03cSmrg		;;
623f7ec340bSmacallan	dpx20 | dpx20-*)
624f7ec340bSmacallan		basic_machine=rs6000-bull
625f7ec340bSmacallan		os=-bosx
626f7ec340bSmacallan		;;
627f7ec340bSmacallan	dpx2* | dpx2*-bull)
628f7ec340bSmacallan		basic_machine=m68k-bull
629f7ec340bSmacallan		os=-sysv3
630f7ec340bSmacallan		;;
631f7ec340bSmacallan	ebmon29k)
632f7ec340bSmacallan		basic_machine=a29k-amd
633f7ec340bSmacallan		os=-ebmon
634f7ec340bSmacallan		;;
635f7ec340bSmacallan	elxsi)
636f7ec340bSmacallan		basic_machine=elxsi-elxsi
637f7ec340bSmacallan		os=-bsd
638f7ec340bSmacallan		;;
639f7ec340bSmacallan	encore | umax | mmax)
640f7ec340bSmacallan		basic_machine=ns32k-encore
641f7ec340bSmacallan		;;
642f7ec340bSmacallan	es1800 | OSE68k | ose68k | ose | OSE)
643f7ec340bSmacallan		basic_machine=m68k-ericsson
644f7ec340bSmacallan		os=-ose
645f7ec340bSmacallan		;;
646f7ec340bSmacallan	fx2800)
647f7ec340bSmacallan		basic_machine=i860-alliant
648f7ec340bSmacallan		;;
649f7ec340bSmacallan	genix)
650f7ec340bSmacallan		basic_machine=ns32k-ns
651f7ec340bSmacallan		;;
652f7ec340bSmacallan	gmicro)
653f7ec340bSmacallan		basic_machine=tron-gmicro
654f7ec340bSmacallan		os=-sysv
655f7ec340bSmacallan		;;
656f7ec340bSmacallan	go32)
657f7ec340bSmacallan		basic_machine=i386-pc
658f7ec340bSmacallan		os=-go32
659f7ec340bSmacallan		;;
660f7ec340bSmacallan	h3050r* | hiux*)
661f7ec340bSmacallan		basic_machine=hppa1.1-hitachi
662f7ec340bSmacallan		os=-hiuxwe2
663f7ec340bSmacallan		;;
664f7ec340bSmacallan	h8300hms)
665f7ec340bSmacallan		basic_machine=h8300-hitachi
666f7ec340bSmacallan		os=-hms
667f7ec340bSmacallan		;;
668f7ec340bSmacallan	h8300xray)
669f7ec340bSmacallan		basic_machine=h8300-hitachi
670f7ec340bSmacallan		os=-xray
671f7ec340bSmacallan		;;
672f7ec340bSmacallan	h8500hms)
673f7ec340bSmacallan		basic_machine=h8500-hitachi
674f7ec340bSmacallan		os=-hms
675f7ec340bSmacallan		;;
676f7ec340bSmacallan	harris)
677f7ec340bSmacallan		basic_machine=m88k-harris
678f7ec340bSmacallan		os=-sysv3
679f7ec340bSmacallan		;;
680f7ec340bSmacallan	hp300-*)
681f7ec340bSmacallan		basic_machine=m68k-hp
682f7ec340bSmacallan		;;
683f7ec340bSmacallan	hp300bsd)
684f7ec340bSmacallan		basic_machine=m68k-hp
685f7ec340bSmacallan		os=-bsd
686f7ec340bSmacallan		;;
687f7ec340bSmacallan	hp300hpux)
688f7ec340bSmacallan		basic_machine=m68k-hp
689f7ec340bSmacallan		os=-hpux
690f7ec340bSmacallan		;;
691f7ec340bSmacallan	hp3k9[0-9][0-9] | hp9[0-9][0-9])
692f7ec340bSmacallan		basic_machine=hppa1.0-hp
693f7ec340bSmacallan		;;
694f7ec340bSmacallan	hp9k2[0-9][0-9] | hp9k31[0-9])
695f7ec340bSmacallan		basic_machine=m68000-hp
696f7ec340bSmacallan		;;
697f7ec340bSmacallan	hp9k3[2-9][0-9])
698f7ec340bSmacallan		basic_machine=m68k-hp
699f7ec340bSmacallan		;;
700f7ec340bSmacallan	hp9k6[0-9][0-9] | hp6[0-9][0-9])
701f7ec340bSmacallan		basic_machine=hppa1.0-hp
702f7ec340bSmacallan		;;
703f7ec340bSmacallan	hp9k7[0-79][0-9] | hp7[0-79][0-9])
704f7ec340bSmacallan		basic_machine=hppa1.1-hp
705f7ec340bSmacallan		;;
706f7ec340bSmacallan	hp9k78[0-9] | hp78[0-9])
707f7ec340bSmacallan		# FIXME: really hppa2.0-hp
708f7ec340bSmacallan		basic_machine=hppa1.1-hp
709f7ec340bSmacallan		;;
710f7ec340bSmacallan	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
711f7ec340bSmacallan		# FIXME: really hppa2.0-hp
712f7ec340bSmacallan		basic_machine=hppa1.1-hp
713f7ec340bSmacallan		;;
714f7ec340bSmacallan	hp9k8[0-9][13679] | hp8[0-9][13679])
715f7ec340bSmacallan		basic_machine=hppa1.1-hp
716f7ec340bSmacallan		;;
717f7ec340bSmacallan	hp9k8[0-9][0-9] | hp8[0-9][0-9])
718f7ec340bSmacallan		basic_machine=hppa1.0-hp
719f7ec340bSmacallan		;;
720f7ec340bSmacallan	hppa-next)
721f7ec340bSmacallan		os=-nextstep3
722f7ec340bSmacallan		;;
723f7ec340bSmacallan	hppaosf)
724f7ec340bSmacallan		basic_machine=hppa1.1-hp
725f7ec340bSmacallan		os=-osf
726f7ec340bSmacallan		;;
727f7ec340bSmacallan	hppro)
728f7ec340bSmacallan		basic_machine=hppa1.1-hp
729f7ec340bSmacallan		os=-proelf
730f7ec340bSmacallan		;;
731f7ec340bSmacallan	i370-ibm* | ibm*)
732f7ec340bSmacallan		basic_machine=i370-ibm
733f7ec340bSmacallan		;;
734f7ec340bSmacallan	i*86v32)
735f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
736f7ec340bSmacallan		os=-sysv32
737f7ec340bSmacallan		;;
738f7ec340bSmacallan	i*86v4*)
739f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
740f7ec340bSmacallan		os=-sysv4
741f7ec340bSmacallan		;;
742f7ec340bSmacallan	i*86v)
743f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
744f7ec340bSmacallan		os=-sysv
745f7ec340bSmacallan		;;
746f7ec340bSmacallan	i*86sol2)
747f7ec340bSmacallan		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
748f7ec340bSmacallan		os=-solaris2
749f7ec340bSmacallan		;;
750f7ec340bSmacallan	i386mach)
751f7ec340bSmacallan		basic_machine=i386-mach
752f7ec340bSmacallan		os=-mach
753f7ec340bSmacallan		;;
754f7ec340bSmacallan	i386-vsta | vsta)
755f7ec340bSmacallan		basic_machine=i386-unknown
756f7ec340bSmacallan		os=-vsta
757f7ec340bSmacallan		;;
758f7ec340bSmacallan	iris | iris4d)
759f7ec340bSmacallan		basic_machine=mips-sgi
760f7ec340bSmacallan		case $os in
761f7ec340bSmacallan		    -irix*)
762f7ec340bSmacallan			;;
763f7ec340bSmacallan		    *)
764f7ec340bSmacallan			os=-irix4
765f7ec340bSmacallan			;;
766f7ec340bSmacallan		esac
767f7ec340bSmacallan		;;
768f7ec340bSmacallan	isi68 | isi)
769f7ec340bSmacallan		basic_machine=m68k-isi
770f7ec340bSmacallan		os=-sysv
771f7ec340bSmacallan		;;
7727ce7e03cSmrg	m68knommu)
7737ce7e03cSmrg		basic_machine=m68k-unknown
7747ce7e03cSmrg		os=-linux
7757ce7e03cSmrg		;;
7767ce7e03cSmrg	m68knommu-*)
7777ce7e03cSmrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
7787ce7e03cSmrg		os=-linux
7797ce7e03cSmrg		;;
780f7ec340bSmacallan	m88k-omron*)
781f7ec340bSmacallan		basic_machine=m88k-omron
782f7ec340bSmacallan		;;
783f7ec340bSmacallan	magnum | m3230)
784f7ec340bSmacallan		basic_machine=mips-mips
785f7ec340bSmacallan		os=-sysv
786f7ec340bSmacallan		;;
787f7ec340bSmacallan	merlin)
788f7ec340bSmacallan		basic_machine=ns32k-utek
789f7ec340bSmacallan		os=-sysv
790f7ec340bSmacallan		;;
7912a75d1c4Smrg	microblaze)
7922a75d1c4Smrg		basic_machine=microblaze-xilinx
7932a75d1c4Smrg		;;
7942a75d1c4Smrg	mingw64)
7952a75d1c4Smrg		basic_machine=x86_64-pc
7962a75d1c4Smrg		os=-mingw64
7972a75d1c4Smrg		;;
798f7ec340bSmacallan	mingw32)
799f7ec340bSmacallan		basic_machine=i386-pc
800f7ec340bSmacallan		os=-mingw32
801f7ec340bSmacallan		;;
8027ce7e03cSmrg	mingw32ce)
8037ce7e03cSmrg		basic_machine=arm-unknown
8047ce7e03cSmrg		os=-mingw32ce
8057ce7e03cSmrg		;;
806f7ec340bSmacallan	miniframe)
807f7ec340bSmacallan		basic_machine=m68000-convergent
808f7ec340bSmacallan		;;
809f7ec340bSmacallan	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
810f7ec340bSmacallan		basic_machine=m68k-atari
811f7ec340bSmacallan		os=-mint
812f7ec340bSmacallan		;;
8132a75d1c4Smrg	mipsEE* | ee | ps2)
8142a75d1c4Smrg		basic_machine=mips64r5900el-scei
8152a75d1c4Smrg		case $os in
8162a75d1c4Smrg		    -linux*)
8172a75d1c4Smrg			;;
8182a75d1c4Smrg		    *)
8192a75d1c4Smrg			os=-elf
8202a75d1c4Smrg			;;
8212a75d1c4Smrg		esac
8222a75d1c4Smrg		;;
8232a75d1c4Smrg	iop)
8242a75d1c4Smrg		basic_machine=mipsel-scei
8252a75d1c4Smrg		os=-irx
8262a75d1c4Smrg		;;
8272a75d1c4Smrg	dvp)
8282a75d1c4Smrg		basic_machine=dvp-scei
8292a75d1c4Smrg		os=-elf
8302a75d1c4Smrg		;;
831f7ec340bSmacallan	mips3*-*)
832f7ec340bSmacallan		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
833f7ec340bSmacallan		;;
834f7ec340bSmacallan	mips3*)
835f7ec340bSmacallan		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
836f7ec340bSmacallan		;;
837f7ec340bSmacallan	monitor)
838f7ec340bSmacallan		basic_machine=m68k-rom68k
839f7ec340bSmacallan		os=-coff
840f7ec340bSmacallan		;;
841f7ec340bSmacallan	morphos)
842f7ec340bSmacallan		basic_machine=powerpc-unknown
843f7ec340bSmacallan		os=-morphos
844f7ec340bSmacallan		;;
845f7ec340bSmacallan	msdos)
846f7ec340bSmacallan		basic_machine=i386-pc
847f7ec340bSmacallan		os=-msdos
848f7ec340bSmacallan		;;
8497ce7e03cSmrg	ms1-*)
8507ce7e03cSmrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
8517ce7e03cSmrg		;;
8522a75d1c4Smrg	msys)
8532a75d1c4Smrg		basic_machine=i386-pc
8542a75d1c4Smrg		os=-msys
8552a75d1c4Smrg		;;
856f7ec340bSmacallan	mvs)
857f7ec340bSmacallan		basic_machine=i370-ibm
858f7ec340bSmacallan		os=-mvs
859f7ec340bSmacallan		;;
8602a75d1c4Smrg	nacl)
8612a75d1c4Smrg		basic_machine=le32-unknown
8622a75d1c4Smrg		os=-nacl
8632a75d1c4Smrg		;;
864f7ec340bSmacallan	ncr3000)
865f7ec340bSmacallan		basic_machine=i486-ncr
866f7ec340bSmacallan		os=-sysv4
867f7ec340bSmacallan		;;
868f7ec340bSmacallan	netbsd386)
869f7ec340bSmacallan		basic_machine=i386-unknown
870f7ec340bSmacallan		os=-netbsd
871f7ec340bSmacallan		;;
872f7ec340bSmacallan	netwinder)
873f7ec340bSmacallan		basic_machine=armv4l-rebel
874f7ec340bSmacallan		os=-linux
875f7ec340bSmacallan		;;
876f7ec340bSmacallan	news | news700 | news800 | news900)
877f7ec340bSmacallan		basic_machine=m68k-sony
878f7ec340bSmacallan		os=-newsos
879f7ec340bSmacallan		;;
880f7ec340bSmacallan	news1000)
881f7ec340bSmacallan		basic_machine=m68030-sony
882f7ec340bSmacallan		os=-newsos
883f7ec340bSmacallan		;;
884f7ec340bSmacallan	news-3600 | risc-news)
885f7ec340bSmacallan		basic_machine=mips-sony
886f7ec340bSmacallan		os=-newsos
887f7ec340bSmacallan		;;
888f7ec340bSmacallan	necv70)
889f7ec340bSmacallan		basic_machine=v70-nec
890f7ec340bSmacallan		os=-sysv
891f7ec340bSmacallan		;;
892f7ec340bSmacallan	next | m*-next )
893f7ec340bSmacallan		basic_machine=m68k-next
894f7ec340bSmacallan		case $os in
895f7ec340bSmacallan		    -nextstep* )
896f7ec340bSmacallan			;;
897f7ec340bSmacallan		    -ns2*)
898f7ec340bSmacallan		      os=-nextstep2
899f7ec340bSmacallan			;;
900f7ec340bSmacallan		    *)
901f7ec340bSmacallan		      os=-nextstep3
902f7ec340bSmacallan			;;
903f7ec340bSmacallan		esac
904f7ec340bSmacallan		;;
905f7ec340bSmacallan	nh3000)
906f7ec340bSmacallan		basic_machine=m68k-harris
907f7ec340bSmacallan		os=-cxux
908f7ec340bSmacallan		;;
909f7ec340bSmacallan	nh[45]000)
910f7ec340bSmacallan		basic_machine=m88k-harris
911f7ec340bSmacallan		os=-cxux
912f7ec340bSmacallan		;;
913f7ec340bSmacallan	nindy960)
914f7ec340bSmacallan		basic_machine=i960-intel
915f7ec340bSmacallan		os=-nindy
916f7ec340bSmacallan		;;
917f7ec340bSmacallan	mon960)
918f7ec340bSmacallan		basic_machine=i960-intel
919f7ec340bSmacallan		os=-mon960
920f7ec340bSmacallan		;;
921f7ec340bSmacallan	nonstopux)
922f7ec340bSmacallan		basic_machine=mips-compaq
923f7ec340bSmacallan		os=-nonstopux
924f7ec340bSmacallan		;;
925f7ec340bSmacallan	np1)
926f7ec340bSmacallan		basic_machine=np1-gould
927f7ec340bSmacallan		;;
9282a75d1c4Smrg	neo-tandem)
9292a75d1c4Smrg		basic_machine=neo-tandem
9302a75d1c4Smrg		;;
9312a75d1c4Smrg	nse-tandem)
9322a75d1c4Smrg		basic_machine=nse-tandem
9332a75d1c4Smrg		;;
934f7ec340bSmacallan	nsr-tandem)
935f7ec340bSmacallan		basic_machine=nsr-tandem
936f7ec340bSmacallan		;;
937f7ec340bSmacallan	op50n-* | op60c-*)
938f7ec340bSmacallan		basic_machine=hppa1.1-oki
939f7ec340bSmacallan		os=-proelf
940f7ec340bSmacallan		;;
9417ce7e03cSmrg	openrisc | openrisc-*)
942f7ec340bSmacallan		basic_machine=or32-unknown
9437ce7e03cSmrg		;;
9447ce7e03cSmrg	os400)
9457ce7e03cSmrg		basic_machine=powerpc-ibm
9467ce7e03cSmrg		os=-os400
947f7ec340bSmacallan		;;
948f7ec340bSmacallan	OSE68000 | ose68000)
949f7ec340bSmacallan		basic_machine=m68000-ericsson
950f7ec340bSmacallan		os=-ose
951f7ec340bSmacallan		;;
952f7ec340bSmacallan	os68k)
953f7ec340bSmacallan		basic_machine=m68k-none
954f7ec340bSmacallan		os=-os68k
955f7ec340bSmacallan		;;
956f7ec340bSmacallan	pa-hitachi)
957f7ec340bSmacallan		basic_machine=hppa1.1-hitachi
958f7ec340bSmacallan		os=-hiuxwe2
959f7ec340bSmacallan		;;
960f7ec340bSmacallan	paragon)
961f7ec340bSmacallan		basic_machine=i860-intel
962f7ec340bSmacallan		os=-osf
963f7ec340bSmacallan		;;
9647ce7e03cSmrg	parisc)
9657ce7e03cSmrg		basic_machine=hppa-unknown
9667ce7e03cSmrg		os=-linux
9677ce7e03cSmrg		;;
9687ce7e03cSmrg	parisc-*)
9697ce7e03cSmrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
9707ce7e03cSmrg		os=-linux
9717ce7e03cSmrg		;;
972f7ec340bSmacallan	pbd)
973f7ec340bSmacallan		basic_machine=sparc-tti
974f7ec340bSmacallan		;;
975f7ec340bSmacallan	pbb)
976f7ec340bSmacallan		basic_machine=m68k-tti
977f7ec340bSmacallan		;;
978f7ec340bSmacallan	pc532 | pc532-*)
979f7ec340bSmacallan		basic_machine=ns32k-pc532
980f7ec340bSmacallan		;;
9817ce7e03cSmrg	pc98)
9827ce7e03cSmrg		basic_machine=i386-pc
9837ce7e03cSmrg		;;
9847ce7e03cSmrg	pc98-*)
9857ce7e03cSmrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
9867ce7e03cSmrg		;;
987f7ec340bSmacallan	pentium | p5 | k5 | k6 | nexgen | viac3)
988f7ec340bSmacallan		basic_machine=i586-pc
989f7ec340bSmacallan		;;
990f7ec340bSmacallan	pentiumpro | p6 | 6x86 | athlon | athlon_*)
991f7ec340bSmacallan		basic_machine=i686-pc
992f7ec340bSmacallan		;;
993f7ec340bSmacallan	pentiumii | pentium2 | pentiumiii | pentium3)
994f7ec340bSmacallan		basic_machine=i686-pc
995f7ec340bSmacallan		;;
996f7ec340bSmacallan	pentium4)
997f7ec340bSmacallan		basic_machine=i786-pc
998f7ec340bSmacallan		;;
999f7ec340bSmacallan	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1000f7ec340bSmacallan		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
1001f7ec340bSmacallan		;;
1002f7ec340bSmacallan	pentiumpro-* | p6-* | 6x86-* | athlon-*)
1003f7ec340bSmacallan		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1004f7ec340bSmacallan		;;
1005f7ec340bSmacallan	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1006f7ec340bSmacallan		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1007f7ec340bSmacallan		;;
1008f7ec340bSmacallan	pentium4-*)
1009f7ec340bSmacallan		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
1010f7ec340bSmacallan		;;
1011f7ec340bSmacallan	pn)
1012f7ec340bSmacallan		basic_machine=pn-gould
1013f7ec340bSmacallan		;;
1014f7ec340bSmacallan	power)	basic_machine=power-ibm
1015f7ec340bSmacallan		;;
10162a75d1c4Smrg	ppc | ppcbe)	basic_machine=powerpc-unknown
1017f7ec340bSmacallan		;;
10182a75d1c4Smrg	ppc-* | ppcbe-*)
10192a75d1c4Smrg		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
1020f7ec340bSmacallan		;;
1021f7ec340bSmacallan	ppcle | powerpclittle | ppc-le | powerpc-little)
1022f7ec340bSmacallan		basic_machine=powerpcle-unknown
1023f7ec340bSmacallan		;;
1024f7ec340bSmacallan	ppcle-* | powerpclittle-*)
1025f7ec340bSmacallan		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1026f7ec340bSmacallan		;;
1027f7ec340bSmacallan	ppc64)	basic_machine=powerpc64-unknown
1028f7ec340bSmacallan		;;
1029f7ec340bSmacallan	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1030f7ec340bSmacallan		;;
1031f7ec340bSmacallan	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1032f7ec340bSmacallan		basic_machine=powerpc64le-unknown
1033f7ec340bSmacallan		;;
1034f7ec340bSmacallan	ppc64le-* | powerpc64little-*)
1035f7ec340bSmacallan		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1036f7ec340bSmacallan		;;
1037f7ec340bSmacallan	ps2)
1038f7ec340bSmacallan		basic_machine=i386-ibm
1039f7ec340bSmacallan		;;
1040f7ec340bSmacallan	pw32)
1041f7ec340bSmacallan		basic_machine=i586-unknown
1042f7ec340bSmacallan		os=-pw32
1043f7ec340bSmacallan		;;
10447ce7e03cSmrg	rdos)
10457ce7e03cSmrg		basic_machine=i386-pc
10467ce7e03cSmrg		os=-rdos
10477ce7e03cSmrg		;;
1048f7ec340bSmacallan	rom68k)
1049f7ec340bSmacallan		basic_machine=m68k-rom68k
1050f7ec340bSmacallan		os=-coff
1051f7ec340bSmacallan		;;
1052f7ec340bSmacallan	rm[46]00)
1053f7ec340bSmacallan		basic_machine=mips-siemens
1054f7ec340bSmacallan		;;
1055f7ec340bSmacallan	rtpc | rtpc-*)
1056f7ec340bSmacallan		basic_machine=romp-ibm
1057f7ec340bSmacallan		;;
10587ce7e03cSmrg	s390 | s390-*)
10597ce7e03cSmrg		basic_machine=s390-ibm
10607ce7e03cSmrg		;;
10617ce7e03cSmrg	s390x | s390x-*)
10627ce7e03cSmrg		basic_machine=s390x-ibm
10637ce7e03cSmrg		;;
1064f7ec340bSmacallan	sa29200)
1065f7ec340bSmacallan		basic_machine=a29k-amd
1066f7ec340bSmacallan		os=-udi
1067f7ec340bSmacallan		;;
1068f7ec340bSmacallan	sb1)
1069f7ec340bSmacallan		basic_machine=mipsisa64sb1-unknown
1070f7ec340bSmacallan		;;
1071f7ec340bSmacallan	sb1el)
1072f7ec340bSmacallan		basic_machine=mipsisa64sb1el-unknown
1073f7ec340bSmacallan		;;
10747ce7e03cSmrg	sde)
10757ce7e03cSmrg		basic_machine=mipsisa32-sde
10767ce7e03cSmrg		os=-elf
10777ce7e03cSmrg		;;
1078f7ec340bSmacallan	sei)
1079f7ec340bSmacallan		basic_machine=mips-sei
1080f7ec340bSmacallan		os=-seiux
1081f7ec340bSmacallan		;;
1082f7ec340bSmacallan	sequent)
1083f7ec340bSmacallan		basic_machine=i386-sequent
1084f7ec340bSmacallan		;;
1085f7ec340bSmacallan	sh)
1086f7ec340bSmacallan		basic_machine=sh-hitachi
1087f7ec340bSmacallan		os=-hms
1088f7ec340bSmacallan		;;
10897ce7e03cSmrg	sh5el)
10907ce7e03cSmrg		basic_machine=sh5le-unknown
10917ce7e03cSmrg		;;
1092f7ec340bSmacallan	sh64)
1093f7ec340bSmacallan		basic_machine=sh64-unknown
1094f7ec340bSmacallan		;;
1095f7ec340bSmacallan	sparclite-wrs | simso-wrs)
1096f7ec340bSmacallan		basic_machine=sparclite-wrs
1097f7ec340bSmacallan		os=-vxworks
1098f7ec340bSmacallan		;;
1099f7ec340bSmacallan	sps7)
1100f7ec340bSmacallan		basic_machine=m68k-bull
1101f7ec340bSmacallan		os=-sysv2
1102f7ec340bSmacallan		;;
1103f7ec340bSmacallan	spur)
1104f7ec340bSmacallan		basic_machine=spur-unknown
1105f7ec340bSmacallan		;;
1106f7ec340bSmacallan	st2000)
1107f7ec340bSmacallan		basic_machine=m68k-tandem
1108f7ec340bSmacallan		;;
1109f7ec340bSmacallan	stratus)
1110f7ec340bSmacallan		basic_machine=i860-stratus
1111f7ec340bSmacallan		os=-sysv4
1112f7ec340bSmacallan		;;
11132a75d1c4Smrg	strongarm-* | thumb-*)
11142a75d1c4Smrg		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
11152a75d1c4Smrg		;;
1116f7ec340bSmacallan	sun2)
1117f7ec340bSmacallan		basic_machine=m68000-sun
1118f7ec340bSmacallan		;;
1119f7ec340bSmacallan	sun2os3)
1120f7ec340bSmacallan		basic_machine=m68000-sun
1121f7ec340bSmacallan		os=-sunos3
1122f7ec340bSmacallan		;;
1123f7ec340bSmacallan	sun2os4)
1124f7ec340bSmacallan		basic_machine=m68000-sun
1125f7ec340bSmacallan		os=-sunos4
1126f7ec340bSmacallan		;;
1127f7ec340bSmacallan	sun3os3)
1128f7ec340bSmacallan		basic_machine=m68k-sun
1129f7ec340bSmacallan		os=-sunos3
1130f7ec340bSmacallan		;;
1131f7ec340bSmacallan	sun3os4)
1132f7ec340bSmacallan		basic_machine=m68k-sun
1133f7ec340bSmacallan		os=-sunos4
1134f7ec340bSmacallan		;;
1135f7ec340bSmacallan	sun4os3)
1136f7ec340bSmacallan		basic_machine=sparc-sun
1137f7ec340bSmacallan		os=-sunos3
1138f7ec340bSmacallan		;;
1139f7ec340bSmacallan	sun4os4)
1140f7ec340bSmacallan		basic_machine=sparc-sun
1141f7ec340bSmacallan		os=-sunos4
1142f7ec340bSmacallan		;;
1143f7ec340bSmacallan	sun4sol2)
1144f7ec340bSmacallan		basic_machine=sparc-sun
1145f7ec340bSmacallan		os=-solaris2
1146f7ec340bSmacallan		;;
1147f7ec340bSmacallan	sun3 | sun3-*)
1148f7ec340bSmacallan		basic_machine=m68k-sun
1149f7ec340bSmacallan		;;
1150f7ec340bSmacallan	sun4)
1151f7ec340bSmacallan		basic_machine=sparc-sun
1152f7ec340bSmacallan		;;
1153f7ec340bSmacallan	sun386 | sun386i | roadrunner)
1154f7ec340bSmacallan		basic_machine=i386-sun
1155f7ec340bSmacallan		;;
1156f7ec340bSmacallan	sv1)
1157f7ec340bSmacallan		basic_machine=sv1-cray
1158f7ec340bSmacallan		os=-unicos
1159f7ec340bSmacallan		;;
1160f7ec340bSmacallan	symmetry)
1161f7ec340bSmacallan		basic_machine=i386-sequent
1162f7ec340bSmacallan		os=-dynix
1163f7ec340bSmacallan		;;
1164f7ec340bSmacallan	t3e)
1165f7ec340bSmacallan		basic_machine=alphaev5-cray
1166f7ec340bSmacallan		os=-unicos
1167f7ec340bSmacallan		;;
1168f7ec340bSmacallan	t90)
1169f7ec340bSmacallan		basic_machine=t90-cray
1170f7ec340bSmacallan		os=-unicos
1171f7ec340bSmacallan		;;
11727ce7e03cSmrg	tile*)
11732a75d1c4Smrg		basic_machine=$basic_machine-unknown
11747ce7e03cSmrg		os=-linux-gnu
11757ce7e03cSmrg		;;
1176f7ec340bSmacallan	tx39)
1177f7ec340bSmacallan		basic_machine=mipstx39-unknown
1178f7ec340bSmacallan		;;
1179f7ec340bSmacallan	tx39el)
1180f7ec340bSmacallan		basic_machine=mipstx39el-unknown
1181f7ec340bSmacallan		;;
1182f7ec340bSmacallan	toad1)
1183f7ec340bSmacallan		basic_machine=pdp10-xkl
1184f7ec340bSmacallan		os=-tops20
1185f7ec340bSmacallan		;;
1186f7ec340bSmacallan	tower | tower-32)
1187f7ec340bSmacallan		basic_machine=m68k-ncr
1188f7ec340bSmacallan		;;
11897ce7e03cSmrg	tpf)
11907ce7e03cSmrg		basic_machine=s390x-ibm
11917ce7e03cSmrg		os=-tpf
11927ce7e03cSmrg		;;
1193f7ec340bSmacallan	udi29k)
1194f7ec340bSmacallan		basic_machine=a29k-amd
1195f7ec340bSmacallan		os=-udi
1196f7ec340bSmacallan		;;
1197f7ec340bSmacallan	ultra3)
1198f7ec340bSmacallan		basic_machine=a29k-nyu
1199f7ec340bSmacallan		os=-sym1
1200f7ec340bSmacallan		;;
1201f7ec340bSmacallan	v810 | necv810)
1202f7ec340bSmacallan		basic_machine=v810-nec
1203f7ec340bSmacallan		os=-none
1204f7ec340bSmacallan		;;
1205f7ec340bSmacallan	vaxv)
1206f7ec340bSmacallan		basic_machine=vax-dec
1207f7ec340bSmacallan		os=-sysv
1208f7ec340bSmacallan		;;
1209f7ec340bSmacallan	vms)
1210f7ec340bSmacallan		basic_machine=vax-dec
1211f7ec340bSmacallan		os=-vms
1212f7ec340bSmacallan		;;
1213f7ec340bSmacallan	vpp*|vx|vx-*)
1214f7ec340bSmacallan		basic_machine=f301-fujitsu
1215f7ec340bSmacallan		;;
1216f7ec340bSmacallan	vxworks960)
1217f7ec340bSmacallan		basic_machine=i960-wrs
1218f7ec340bSmacallan		os=-vxworks
1219f7ec340bSmacallan		;;
1220f7ec340bSmacallan	vxworks68)
1221f7ec340bSmacallan		basic_machine=m68k-wrs
1222f7ec340bSmacallan		os=-vxworks
1223f7ec340bSmacallan		;;
1224f7ec340bSmacallan	vxworks29k)
1225f7ec340bSmacallan		basic_machine=a29k-wrs
1226f7ec340bSmacallan		os=-vxworks
1227f7ec340bSmacallan		;;
1228f7ec340bSmacallan	w65*)
1229f7ec340bSmacallan		basic_machine=w65-wdc
1230f7ec340bSmacallan		os=-none
1231f7ec340bSmacallan		;;
1232f7ec340bSmacallan	w89k-*)
1233f7ec340bSmacallan		basic_machine=hppa1.1-winbond
1234f7ec340bSmacallan		os=-proelf
1235f7ec340bSmacallan		;;
12367ce7e03cSmrg	xbox)
12377ce7e03cSmrg		basic_machine=i686-pc
12387ce7e03cSmrg		os=-mingw32
12397ce7e03cSmrg		;;
1240f7ec340bSmacallan	xps | xps100)
1241f7ec340bSmacallan		basic_machine=xps100-honeywell
1242f7ec340bSmacallan		;;
12432a75d1c4Smrg	xscale-* | xscalee[bl]-*)
12442a75d1c4Smrg		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
12452a75d1c4Smrg		;;
1246f7ec340bSmacallan	ymp)
1247f7ec340bSmacallan		basic_machine=ymp-cray
1248f7ec340bSmacallan		os=-unicos
1249f7ec340bSmacallan		;;
1250f7ec340bSmacallan	z8k-*-coff)
1251f7ec340bSmacallan		basic_machine=z8k-unknown
1252f7ec340bSmacallan		os=-sim
1253f7ec340bSmacallan		;;
12542a75d1c4Smrg	z80-*-coff)
12552a75d1c4Smrg		basic_machine=z80-unknown
12562a75d1c4Smrg		os=-sim
12572a75d1c4Smrg		;;
1258f7ec340bSmacallan	none)
1259f7ec340bSmacallan		basic_machine=none-none
1260f7ec340bSmacallan		os=-none
1261f7ec340bSmacallan		;;
1262f7ec340bSmacallan
1263f7ec340bSmacallan# Here we handle the default manufacturer of certain CPU types.  It is in
1264f7ec340bSmacallan# some cases the only manufacturer, in others, it is the most popular.
1265f7ec340bSmacallan	w89k)
1266f7ec340bSmacallan		basic_machine=hppa1.1-winbond
1267f7ec340bSmacallan		;;
1268f7ec340bSmacallan	op50n)
1269f7ec340bSmacallan		basic_machine=hppa1.1-oki
1270f7ec340bSmacallan		;;
1271f7ec340bSmacallan	op60c)
1272f7ec340bSmacallan		basic_machine=hppa1.1-oki
1273f7ec340bSmacallan		;;
1274f7ec340bSmacallan	romp)
1275f7ec340bSmacallan		basic_machine=romp-ibm
1276f7ec340bSmacallan		;;
12777ce7e03cSmrg	mmix)
12787ce7e03cSmrg		basic_machine=mmix-knuth
12797ce7e03cSmrg		;;
1280f7ec340bSmacallan	rs6000)
1281f7ec340bSmacallan		basic_machine=rs6000-ibm
1282f7ec340bSmacallan		;;
1283f7ec340bSmacallan	vax)
1284f7ec340bSmacallan		basic_machine=vax-dec
1285f7ec340bSmacallan		;;
1286f7ec340bSmacallan	pdp10)
1287f7ec340bSmacallan		# there are many clones, so DEC is not a safe bet
1288f7ec340bSmacallan		basic_machine=pdp10-unknown
1289f7ec340bSmacallan		;;
1290f7ec340bSmacallan	pdp11)
1291f7ec340bSmacallan		basic_machine=pdp11-dec
1292f7ec340bSmacallan		;;
1293f7ec340bSmacallan	we32k)
1294f7ec340bSmacallan		basic_machine=we32k-att
1295f7ec340bSmacallan		;;
12962a75d1c4Smrg	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1297f7ec340bSmacallan		basic_machine=sh-unknown
1298f7ec340bSmacallan		;;
12997ce7e03cSmrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1300f7ec340bSmacallan		basic_machine=sparc-sun
1301f7ec340bSmacallan		;;
1302f7ec340bSmacallan	cydra)
1303f7ec340bSmacallan		basic_machine=cydra-cydrome
1304f7ec340bSmacallan		;;
1305f7ec340bSmacallan	orion)
1306f7ec340bSmacallan		basic_machine=orion-highlevel
1307f7ec340bSmacallan		;;
1308f7ec340bSmacallan	orion105)
1309f7ec340bSmacallan		basic_machine=clipper-highlevel
1310f7ec340bSmacallan		;;
1311f7ec340bSmacallan	mac | mpw | mac-mpw)
1312f7ec340bSmacallan		basic_machine=m68k-apple
1313f7ec340bSmacallan		;;
1314f7ec340bSmacallan	pmac | pmac-mpw)
1315f7ec340bSmacallan		basic_machine=powerpc-apple
1316f7ec340bSmacallan		;;
1317f7ec340bSmacallan	*-unknown)
1318f7ec340bSmacallan		# Make sure to match an already-canonicalized machine name.
1319f7ec340bSmacallan		;;
1320f7ec340bSmacallan	*)
1321f7ec340bSmacallan		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1322f7ec340bSmacallan		exit 1
1323f7ec340bSmacallan		;;
1324f7ec340bSmacallanesac
1325f7ec340bSmacallan
1326f7ec340bSmacallan# Here we canonicalize certain aliases for manufacturers.
1327f7ec340bSmacallancase $basic_machine in
1328f7ec340bSmacallan	*-digital*)
1329f7ec340bSmacallan		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1330f7ec340bSmacallan		;;
1331f7ec340bSmacallan	*-commodore*)
1332f7ec340bSmacallan		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1333f7ec340bSmacallan		;;
1334f7ec340bSmacallan	*)
1335f7ec340bSmacallan		;;
1336f7ec340bSmacallanesac
1337f7ec340bSmacallan
1338f7ec340bSmacallan# Decode manufacturer-specific aliases for certain operating systems.
1339f7ec340bSmacallan
1340f7ec340bSmacallanif [ x"$os" != x"" ]
1341f7ec340bSmacallanthen
1342f7ec340bSmacallancase $os in
13432a75d1c4Smrg	# First match some system type aliases
13442a75d1c4Smrg	# that might get confused with valid system types.
1345f7ec340bSmacallan	# -solaris* is a basic system type, with this one exception.
13462a75d1c4Smrg	-auroraux)
13472a75d1c4Smrg		os=-auroraux
13482a75d1c4Smrg		;;
1349f7ec340bSmacallan	-solaris1 | -solaris1.*)
1350f7ec340bSmacallan		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1351f7ec340bSmacallan		;;
1352f7ec340bSmacallan	-solaris)
1353f7ec340bSmacallan		os=-solaris2
1354f7ec340bSmacallan		;;
1355f7ec340bSmacallan	-svr4*)
1356f7ec340bSmacallan		os=-sysv4
1357f7ec340bSmacallan		;;
1358f7ec340bSmacallan	-unixware*)
1359f7ec340bSmacallan		os=-sysv4.2uw
1360f7ec340bSmacallan		;;
1361f7ec340bSmacallan	-gnu/linux*)
1362f7ec340bSmacallan		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1363f7ec340bSmacallan		;;
1364f7ec340bSmacallan	# First accept the basic system types.
1365f7ec340bSmacallan	# The portable systems comes first.
1366f7ec340bSmacallan	# Each alternative MUST END IN A *, to match a version number.
1367f7ec340bSmacallan	# -sysv* is not here because it comes later, after sysvr4.
1368f7ec340bSmacallan	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
13692a75d1c4Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
13702a75d1c4Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
13712a75d1c4Smrg	      | -sym* | -kopensolaris* \
1372f7ec340bSmacallan	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
13732a75d1c4Smrg	      | -aos* | -aros* \
1374f7ec340bSmacallan	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1375f7ec340bSmacallan	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
13767ce7e03cSmrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
13772a75d1c4Smrg	      | -bitrig* | -openbsd* | -solidbsd* \
13787ce7e03cSmrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
13797ce7e03cSmrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1380f7ec340bSmacallan	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1381f7ec340bSmacallan	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
13822a75d1c4Smrg	      | -chorusos* | -chorusrdb* | -cegcc* \
13832a75d1c4Smrg	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
13842a75d1c4Smrg	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
13852a75d1c4Smrg	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
13867ce7e03cSmrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
1387f7ec340bSmacallan	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1388f7ec340bSmacallan	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
13892a75d1c4Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \
1390f7ec340bSmacallan	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1391f7ec340bSmacallan	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
13927ce7e03cSmrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
13932a75d1c4Smrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1394f7ec340bSmacallan	# Remember, each alternative MUST END IN *, to match a version number.
1395f7ec340bSmacallan		;;
1396f7ec340bSmacallan	-qnx*)
1397f7ec340bSmacallan		case $basic_machine in
1398f7ec340bSmacallan		    x86-* | i*86-*)
1399f7ec340bSmacallan			;;
1400f7ec340bSmacallan		    *)
1401f7ec340bSmacallan			os=-nto$os
1402f7ec340bSmacallan			;;
1403f7ec340bSmacallan		esac
1404f7ec340bSmacallan		;;
1405f7ec340bSmacallan	-nto-qnx*)
1406f7ec340bSmacallan		;;
1407f7ec340bSmacallan	-nto*)
1408f7ec340bSmacallan		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1409f7ec340bSmacallan		;;
1410f7ec340bSmacallan	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
14117ce7e03cSmrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1412f7ec340bSmacallan	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1413f7ec340bSmacallan		;;
1414f7ec340bSmacallan	-mac*)
1415f7ec340bSmacallan		os=`echo $os | sed -e 's|mac|macos|'`
1416f7ec340bSmacallan		;;
14177ce7e03cSmrg	-linux-dietlibc)
14187ce7e03cSmrg		os=-linux-dietlibc
14197ce7e03cSmrg		;;
1420f7ec340bSmacallan	-linux*)
1421f7ec340bSmacallan		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1422f7ec340bSmacallan		;;
1423f7ec340bSmacallan	-sunos5*)
1424f7ec340bSmacallan		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1425f7ec340bSmacallan		;;
1426f7ec340bSmacallan	-sunos6*)
1427f7ec340bSmacallan		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1428f7ec340bSmacallan		;;
1429f7ec340bSmacallan	-opened*)
1430f7ec340bSmacallan		os=-openedition
1431f7ec340bSmacallan		;;
14322a75d1c4Smrg	-os400*)
14337ce7e03cSmrg		os=-os400
14347ce7e03cSmrg		;;
1435f7ec340bSmacallan	-wince*)
1436f7ec340bSmacallan		os=-wince
1437f7ec340bSmacallan		;;
1438f7ec340bSmacallan	-osfrose*)
1439f7ec340bSmacallan		os=-osfrose
1440f7ec340bSmacallan		;;
1441f7ec340bSmacallan	-osf*)
1442f7ec340bSmacallan		os=-osf
1443f7ec340bSmacallan		;;
1444f7ec340bSmacallan	-utek*)
1445f7ec340bSmacallan		os=-bsd
1446f7ec340bSmacallan		;;
1447f7ec340bSmacallan	-dynix*)
1448f7ec340bSmacallan		os=-bsd
1449f7ec340bSmacallan		;;
1450f7ec340bSmacallan	-acis*)
1451f7ec340bSmacallan		os=-aos
1452f7ec340bSmacallan		;;
1453f7ec340bSmacallan	-atheos*)
1454f7ec340bSmacallan		os=-atheos
1455f7ec340bSmacallan		;;
14567ce7e03cSmrg	-syllable*)
14577ce7e03cSmrg		os=-syllable
14587ce7e03cSmrg		;;
1459f7ec340bSmacallan	-386bsd)
1460f7ec340bSmacallan		os=-bsd
1461f7ec340bSmacallan		;;
1462f7ec340bSmacallan	-ctix* | -uts*)
1463f7ec340bSmacallan		os=-sysv
1464f7ec340bSmacallan		;;
1465f7ec340bSmacallan	-nova*)
1466f7ec340bSmacallan		os=-rtmk-nova
1467f7ec340bSmacallan		;;
1468f7ec340bSmacallan	-ns2 )
1469f7ec340bSmacallan		os=-nextstep2
1470f7ec340bSmacallan		;;
1471f7ec340bSmacallan	-nsk*)
1472f7ec340bSmacallan		os=-nsk
1473f7ec340bSmacallan		;;
1474f7ec340bSmacallan	# Preserve the version number of sinix5.
1475f7ec340bSmacallan	-sinix5.*)
1476f7ec340bSmacallan		os=`echo $os | sed -e 's|sinix|sysv|'`
1477f7ec340bSmacallan		;;
1478f7ec340bSmacallan	-sinix*)
1479f7ec340bSmacallan		os=-sysv4
1480f7ec340bSmacallan		;;
14812a75d1c4Smrg	-tpf*)
14827ce7e03cSmrg		os=-tpf
14837ce7e03cSmrg		;;
1484f7ec340bSmacallan	-triton*)
1485f7ec340bSmacallan		os=-sysv3
1486f7ec340bSmacallan		;;
1487f7ec340bSmacallan	-oss*)
1488f7ec340bSmacallan		os=-sysv3
1489f7ec340bSmacallan		;;
1490f7ec340bSmacallan	-svr4)
1491f7ec340bSmacallan		os=-sysv4
1492f7ec340bSmacallan		;;
1493f7ec340bSmacallan	-svr3)
1494f7ec340bSmacallan		os=-sysv3
1495f7ec340bSmacallan		;;
1496f7ec340bSmacallan	-sysvr4)
1497f7ec340bSmacallan		os=-sysv4
1498f7ec340bSmacallan		;;
1499f7ec340bSmacallan	# This must come after -sysvr4.
1500f7ec340bSmacallan	-sysv*)
1501f7ec340bSmacallan		;;
1502f7ec340bSmacallan	-ose*)
1503f7ec340bSmacallan		os=-ose
1504f7ec340bSmacallan		;;
1505f7ec340bSmacallan	-es1800*)
1506f7ec340bSmacallan		os=-ose
1507f7ec340bSmacallan		;;
1508f7ec340bSmacallan	-xenix)
1509f7ec340bSmacallan		os=-xenix
1510f7ec340bSmacallan		;;
1511f7ec340bSmacallan	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1512f7ec340bSmacallan		os=-mint
1513f7ec340bSmacallan		;;
1514f7ec340bSmacallan	-aros*)
1515f7ec340bSmacallan		os=-aros
1516f7ec340bSmacallan		;;
1517f7ec340bSmacallan	-kaos*)
1518f7ec340bSmacallan		os=-kaos
1519f7ec340bSmacallan		;;
15207ce7e03cSmrg	-zvmoe)
15217ce7e03cSmrg		os=-zvmoe
15227ce7e03cSmrg		;;
15232a75d1c4Smrg	-dicos*)
15242a75d1c4Smrg		os=-dicos
15252a75d1c4Smrg		;;
15262a75d1c4Smrg	-nacl*)
15272a75d1c4Smrg		;;
1528f7ec340bSmacallan	-none)
1529f7ec340bSmacallan		;;
1530f7ec340bSmacallan	*)
1531f7ec340bSmacallan		# Get rid of the `-' at the beginning of $os.
1532f7ec340bSmacallan		os=`echo $os | sed 's/[^-]*-//'`
1533f7ec340bSmacallan		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1534f7ec340bSmacallan		exit 1
1535f7ec340bSmacallan		;;
1536f7ec340bSmacallanesac
1537f7ec340bSmacallanelse
1538f7ec340bSmacallan
1539f7ec340bSmacallan# Here we handle the default operating systems that come with various machines.
1540f7ec340bSmacallan# The value should be what the vendor currently ships out the door with their
1541f7ec340bSmacallan# machine or put another way, the most popular os provided with the machine.
1542f7ec340bSmacallan
1543f7ec340bSmacallan# Note that if you're going to try to match "-MANUFACTURER" here (say,
1544f7ec340bSmacallan# "-sun"), then you have to tell the case statement up towards the top
1545f7ec340bSmacallan# that MANUFACTURER isn't an operating system.  Otherwise, code above
1546f7ec340bSmacallan# will signal an error saying that MANUFACTURER isn't an operating
1547f7ec340bSmacallan# system, and we'll never get to this point.
1548f7ec340bSmacallan
1549f7ec340bSmacallancase $basic_machine in
15502a75d1c4Smrg	score-*)
15517ce7e03cSmrg		os=-elf
15527ce7e03cSmrg		;;
15532a75d1c4Smrg	spu-*)
15547ce7e03cSmrg		os=-elf
15557ce7e03cSmrg		;;
1556f7ec340bSmacallan	*-acorn)
1557f7ec340bSmacallan		os=-riscix1.2
1558f7ec340bSmacallan		;;
1559f7ec340bSmacallan	arm*-rebel)
1560f7ec340bSmacallan		os=-linux
1561f7ec340bSmacallan		;;
1562f7ec340bSmacallan	arm*-semi)
1563f7ec340bSmacallan		os=-aout
1564f7ec340bSmacallan		;;
15652a75d1c4Smrg	c4x-* | tic4x-*)
15662a75d1c4Smrg		os=-coff
15672a75d1c4Smrg		;;
15682a75d1c4Smrg	hexagon-*)
15692a75d1c4Smrg		os=-elf
15702a75d1c4Smrg		;;
15712a75d1c4Smrg	tic54x-*)
15722a75d1c4Smrg		os=-coff
15732a75d1c4Smrg		;;
15742a75d1c4Smrg	tic55x-*)
15752a75d1c4Smrg		os=-coff
15762a75d1c4Smrg		;;
15772a75d1c4Smrg	tic6x-*)
15782a75d1c4Smrg		os=-coff
1579f7ec340bSmacallan		;;
1580f7ec340bSmacallan	# This must come before the *-dec entry.
1581f7ec340bSmacallan	pdp10-*)
1582f7ec340bSmacallan		os=-tops20
1583f7ec340bSmacallan		;;
1584f7ec340bSmacallan	pdp11-*)
1585f7ec340bSmacallan		os=-none
1586f7ec340bSmacallan		;;
1587f7ec340bSmacallan	*-dec | vax-*)
1588f7ec340bSmacallan		os=-ultrix4.2
1589f7ec340bSmacallan		;;
1590f7ec340bSmacallan	m68*-apollo)
1591f7ec340bSmacallan		os=-domain
1592f7ec340bSmacallan		;;
1593f7ec340bSmacallan	i386-sun)
1594f7ec340bSmacallan		os=-sunos4.0.2
1595f7ec340bSmacallan		;;
1596f7ec340bSmacallan	m68000-sun)
1597f7ec340bSmacallan		os=-sunos3
1598f7ec340bSmacallan		;;
1599f7ec340bSmacallan	m68*-cisco)
1600f7ec340bSmacallan		os=-aout
1601f7ec340bSmacallan		;;
16022a75d1c4Smrg	mep-*)
16037ce7e03cSmrg		os=-elf
16047ce7e03cSmrg		;;
1605f7ec340bSmacallan	mips*-cisco)
1606f7ec340bSmacallan		os=-elf
1607f7ec340bSmacallan		;;
1608f7ec340bSmacallan	mips*-*)
1609f7ec340bSmacallan		os=-elf
1610f7ec340bSmacallan		;;
1611f7ec340bSmacallan	or32-*)
1612f7ec340bSmacallan		os=-coff
1613f7ec340bSmacallan		;;
1614f7ec340bSmacallan	*-tti)	# must be before sparc entry or we get the wrong os.
1615f7ec340bSmacallan		os=-sysv3
1616f7ec340bSmacallan		;;
1617f7ec340bSmacallan	sparc-* | *-sun)
1618f7ec340bSmacallan		os=-sunos4.1.1
1619f7ec340bSmacallan		;;
1620f7ec340bSmacallan	*-be)
1621f7ec340bSmacallan		os=-beos
1622f7ec340bSmacallan		;;
16237ce7e03cSmrg	*-haiku)
16247ce7e03cSmrg		os=-haiku
16257ce7e03cSmrg		;;
1626f7ec340bSmacallan	*-ibm)
1627f7ec340bSmacallan		os=-aix
1628f7ec340bSmacallan		;;
16292a75d1c4Smrg	*-knuth)
16307ce7e03cSmrg		os=-mmixware
16317ce7e03cSmrg		;;
1632f7ec340bSmacallan	*-wec)
1633f7ec340bSmacallan		os=-proelf
1634f7ec340bSmacallan		;;
1635f7ec340bSmacallan	*-winbond)
1636f7ec340bSmacallan		os=-proelf
1637f7ec340bSmacallan		;;
1638f7ec340bSmacallan	*-oki)
1639f7ec340bSmacallan		os=-proelf
1640f7ec340bSmacallan		;;
1641f7ec340bSmacallan	*-hp)
1642f7ec340bSmacallan		os=-hpux
1643f7ec340bSmacallan		;;
1644f7ec340bSmacallan	*-hitachi)
1645f7ec340bSmacallan		os=-hiux
1646f7ec340bSmacallan		;;
1647f7ec340bSmacallan	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1648f7ec340bSmacallan		os=-sysv
1649f7ec340bSmacallan		;;
1650f7ec340bSmacallan	*-cbm)
1651f7ec340bSmacallan		os=-amigaos
1652f7ec340bSmacallan		;;
1653f7ec340bSmacallan	*-dg)
1654f7ec340bSmacallan		os=-dgux
1655f7ec340bSmacallan		;;
1656f7ec340bSmacallan	*-dolphin)
1657f7ec340bSmacallan		os=-sysv3
1658f7ec340bSmacallan		;;
1659f7ec340bSmacallan	m68k-ccur)
1660f7ec340bSmacallan		os=-rtu
1661f7ec340bSmacallan		;;
1662f7ec340bSmacallan	m88k-omron*)
1663f7ec340bSmacallan		os=-luna
1664f7ec340bSmacallan		;;
1665f7ec340bSmacallan	*-next )
1666f7ec340bSmacallan		os=-nextstep
1667f7ec340bSmacallan		;;
1668f7ec340bSmacallan	*-sequent)
1669f7ec340bSmacallan		os=-ptx
1670f7ec340bSmacallan		;;
1671f7ec340bSmacallan	*-crds)
1672f7ec340bSmacallan		os=-unos
1673f7ec340bSmacallan		;;
1674f7ec340bSmacallan	*-ns)
1675f7ec340bSmacallan		os=-genix
1676f7ec340bSmacallan		;;
1677f7ec340bSmacallan	i370-*)
1678f7ec340bSmacallan		os=-mvs
1679f7ec340bSmacallan		;;
1680f7ec340bSmacallan	*-next)
1681f7ec340bSmacallan		os=-nextstep3
1682f7ec340bSmacallan		;;
1683f7ec340bSmacallan	*-gould)
1684f7ec340bSmacallan		os=-sysv
1685f7ec340bSmacallan		;;
1686f7ec340bSmacallan	*-highlevel)
1687f7ec340bSmacallan		os=-bsd
1688f7ec340bSmacallan		;;
1689f7ec340bSmacallan	*-encore)
1690f7ec340bSmacallan		os=-bsd
1691f7ec340bSmacallan		;;
1692f7ec340bSmacallan	*-sgi)
1693f7ec340bSmacallan		os=-irix
1694f7ec340bSmacallan		;;
1695f7ec340bSmacallan	*-siemens)
1696f7ec340bSmacallan		os=-sysv4
1697f7ec340bSmacallan		;;
1698f7ec340bSmacallan	*-masscomp)
1699f7ec340bSmacallan		os=-rtu
1700f7ec340bSmacallan		;;
1701f7ec340bSmacallan	f30[01]-fujitsu | f700-fujitsu)
1702f7ec340bSmacallan		os=-uxpv
1703f7ec340bSmacallan		;;
1704f7ec340bSmacallan	*-rom68k)
1705f7ec340bSmacallan		os=-coff
1706f7ec340bSmacallan		;;
1707f7ec340bSmacallan	*-*bug)
1708f7ec340bSmacallan		os=-coff
1709f7ec340bSmacallan		;;
1710f7ec340bSmacallan	*-apple)
1711f7ec340bSmacallan		os=-macos
1712f7ec340bSmacallan		;;
1713f7ec340bSmacallan	*-atari*)
1714f7ec340bSmacallan		os=-mint
1715f7ec340bSmacallan		;;
1716f7ec340bSmacallan	*)
1717f7ec340bSmacallan		os=-none
1718f7ec340bSmacallan		;;
1719f7ec340bSmacallanesac
1720f7ec340bSmacallanfi
1721f7ec340bSmacallan
1722f7ec340bSmacallan# Here we handle the case where we know the os, and the CPU type, but not the
1723f7ec340bSmacallan# manufacturer.  We pick the logical manufacturer.
1724f7ec340bSmacallanvendor=unknown
1725f7ec340bSmacallancase $basic_machine in
1726f7ec340bSmacallan	*-unknown)
1727f7ec340bSmacallan		case $os in
1728f7ec340bSmacallan			-riscix*)
1729f7ec340bSmacallan				vendor=acorn
1730f7ec340bSmacallan				;;
1731f7ec340bSmacallan			-sunos*)
1732f7ec340bSmacallan				vendor=sun
1733f7ec340bSmacallan				;;
17342a75d1c4Smrg			-cnk*|-aix*)
1735f7ec340bSmacallan				vendor=ibm
1736f7ec340bSmacallan				;;
1737f7ec340bSmacallan			-beos*)
1738f7ec340bSmacallan				vendor=be
1739f7ec340bSmacallan				;;
1740f7ec340bSmacallan			-hpux*)
1741f7ec340bSmacallan				vendor=hp
1742f7ec340bSmacallan				;;
1743f7ec340bSmacallan			-mpeix*)
1744f7ec340bSmacallan				vendor=hp
1745f7ec340bSmacallan				;;
1746f7ec340bSmacallan			-hiux*)
1747f7ec340bSmacallan				vendor=hitachi
1748f7ec340bSmacallan				;;
1749f7ec340bSmacallan			-unos*)
1750f7ec340bSmacallan				vendor=crds
1751f7ec340bSmacallan				;;
1752f7ec340bSmacallan			-dgux*)
1753f7ec340bSmacallan				vendor=dg
1754f7ec340bSmacallan				;;
1755f7ec340bSmacallan			-luna*)
1756f7ec340bSmacallan				vendor=omron
1757f7ec340bSmacallan				;;
1758f7ec340bSmacallan			-genix*)
1759f7ec340bSmacallan				vendor=ns
1760f7ec340bSmacallan				;;
1761f7ec340bSmacallan			-mvs* | -opened*)
1762f7ec340bSmacallan				vendor=ibm
1763f7ec340bSmacallan				;;
17647ce7e03cSmrg			-os400*)
17657ce7e03cSmrg				vendor=ibm
17667ce7e03cSmrg				;;
1767f7ec340bSmacallan			-ptx*)
1768f7ec340bSmacallan				vendor=sequent
1769f7ec340bSmacallan				;;
17707ce7e03cSmrg			-tpf*)
17717ce7e03cSmrg				vendor=ibm
17727ce7e03cSmrg				;;
1773f7ec340bSmacallan			-vxsim* | -vxworks* | -windiss*)
1774f7ec340bSmacallan				vendor=wrs
1775f7ec340bSmacallan				;;
1776f7ec340bSmacallan			-aux*)
1777f7ec340bSmacallan				vendor=apple
1778f7ec340bSmacallan				;;
1779f7ec340bSmacallan			-hms*)
1780f7ec340bSmacallan				vendor=hitachi
1781f7ec340bSmacallan				;;
1782f7ec340bSmacallan			-mpw* | -macos*)
1783f7ec340bSmacallan				vendor=apple
1784f7ec340bSmacallan				;;
1785f7ec340bSmacallan			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1786f7ec340bSmacallan				vendor=atari
1787f7ec340bSmacallan				;;
1788f7ec340bSmacallan			-vos*)
1789f7ec340bSmacallan				vendor=stratus
1790f7ec340bSmacallan				;;
1791f7ec340bSmacallan		esac
1792f7ec340bSmacallan		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1793f7ec340bSmacallan		;;
1794f7ec340bSmacallanesac
1795f7ec340bSmacallan
1796f7ec340bSmacallanecho $basic_machine$os
17977ce7e03cSmrgexit
1798f7ec340bSmacallan
1799f7ec340bSmacallan# Local variables:
1800f7ec340bSmacallan# eval: (add-hook 'write-file-hooks 'time-stamp)
1801f7ec340bSmacallan# time-stamp-start: "timestamp='"
1802f7ec340bSmacallan# time-stamp-format: "%:y-%02m-%02d"
1803f7ec340bSmacallan# time-stamp-end: "'"
1804f7ec340bSmacallan# End:
1805