config.sub revision 40c5823b
1bbe1b32bSmrg#! /bin/sh
2bbe1b32bSmrg# Configuration validation subroutine script.
340c5823bSmrg#   Copyright 1992-2017 Free Software Foundation, Inc.
4bbe1b32bSmrg
540c5823bSmrgtimestamp='2017-04-02'
6bbe1b32bSmrg
78f34cbf9Ssnj# This file is free software; you can redistribute it and/or modify it
88f34cbf9Ssnj# under the terms of the GNU General Public License as published by
98f34cbf9Ssnj# the Free Software Foundation; either version 3 of the License, or
10bbe1b32bSmrg# (at your option) any later version.
11bbe1b32bSmrg#
128f34cbf9Ssnj# This program is distributed in the hope that it will be useful, but
138f34cbf9Ssnj# WITHOUT ANY WARRANTY; without even the implied warranty of
148f34cbf9Ssnj# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
158f34cbf9Ssnj# General Public License for more details.
16bbe1b32bSmrg#
17bbe1b32bSmrg# You should have received a copy of the GNU General Public License
188f34cbf9Ssnj# along with this program; if not, see <http://www.gnu.org/licenses/>.
19bbe1b32bSmrg#
20bbe1b32bSmrg# As a special exception to the GNU General Public License, if you
21bbe1b32bSmrg# distribute this file as part of a program that contains a
22bbe1b32bSmrg# configuration script generated by Autoconf, you may include it under
238f34cbf9Ssnj# the same distribution terms that you use for the rest of that
248f34cbf9Ssnj# program.  This Exception is an additional permission under section 7
258f34cbf9Ssnj# of the GNU General Public License, version 3 ("GPLv3").
26bbe1b32bSmrg
27bbe1b32bSmrg
2840c5823bSmrg# Please send patches to <config-patches@gnu.org>.
29bbe1b32bSmrg#
30bbe1b32bSmrg# Configuration subroutine to validate and canonicalize a configuration type.
31bbe1b32bSmrg# Supply the specified configuration type as an argument.
32bbe1b32bSmrg# If it is invalid, we print an error message on stderr and exit with code 1.
33bbe1b32bSmrg# Otherwise, we print the canonical config type on stdout and succeed.
34bbe1b32bSmrg
3530f8ce46Smrg# You can get the latest version of this script from:
3640c5823bSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
3730f8ce46Smrg
38bbe1b32bSmrg# This file is supposed to be the same for all GNU packages
39bbe1b32bSmrg# and recognize all the CPU types, system types and aliases
40bbe1b32bSmrg# that are meaningful with *any* GNU software.
41bbe1b32bSmrg# Each package is responsible for reporting which valid configurations
42bbe1b32bSmrg# it does not support.  The user should be able to distinguish
43bbe1b32bSmrg# a failure to support a valid configuration from a meaningless
44bbe1b32bSmrg# configuration.
45bbe1b32bSmrg
46bbe1b32bSmrg# The goal of this file is to map all the various variations of a given
47bbe1b32bSmrg# machine specification into a single specification in the form:
48bbe1b32bSmrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
49bbe1b32bSmrg# or in some cases, the newer four-part form:
50bbe1b32bSmrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
51bbe1b32bSmrg# It is wrong to echo any other type of specification.
52bbe1b32bSmrg
53bbe1b32bSmrgme=`echo "$0" | sed -e 's,.*/,,'`
54bbe1b32bSmrg
55bbe1b32bSmrgusage="\
5640c5823bSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
57bbe1b32bSmrg
58bbe1b32bSmrgCanonicalize a configuration name.
59bbe1b32bSmrg
60bbe1b32bSmrgOperation modes:
61bbe1b32bSmrg  -h, --help         print this help, then exit
62bbe1b32bSmrg  -t, --time-stamp   print date of last modification, then exit
63bbe1b32bSmrg  -v, --version      print version number, then exit
64bbe1b32bSmrg
65bbe1b32bSmrgReport bugs and patches to <config-patches@gnu.org>."
66bbe1b32bSmrg
67bbe1b32bSmrgversion="\
68bbe1b32bSmrgGNU config.sub ($timestamp)
69bbe1b32bSmrg
7040c5823bSmrgCopyright 1992-2017 Free Software Foundation, Inc.
71bbe1b32bSmrg
72bbe1b32bSmrgThis is free software; see the source for copying conditions.  There is NO
73bbe1b32bSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
74bbe1b32bSmrg
75bbe1b32bSmrghelp="
76bbe1b32bSmrgTry \`$me --help' for more information."
77bbe1b32bSmrg
78bbe1b32bSmrg# Parse command line
79bbe1b32bSmrgwhile test $# -gt 0 ; do
80bbe1b32bSmrg  case $1 in
81bbe1b32bSmrg    --time-stamp | --time* | -t )
82bbe1b32bSmrg       echo "$timestamp" ; exit ;;
83bbe1b32bSmrg    --version | -v )
84bbe1b32bSmrg       echo "$version" ; exit ;;
85bbe1b32bSmrg    --help | --h* | -h )
86bbe1b32bSmrg       echo "$usage"; exit ;;
87bbe1b32bSmrg    -- )     # Stop option processing
88bbe1b32bSmrg       shift; break ;;
89bbe1b32bSmrg    - )	# Use stdin as input.
90bbe1b32bSmrg       break ;;
91bbe1b32bSmrg    -* )
92bbe1b32bSmrg       echo "$me: invalid option $1$help"
93bbe1b32bSmrg       exit 1 ;;
94bbe1b32bSmrg
95bbe1b32bSmrg    *local*)
96bbe1b32bSmrg       # First pass through any local machine types.
97bbe1b32bSmrg       echo $1
98bbe1b32bSmrg       exit ;;
99bbe1b32bSmrg
100bbe1b32bSmrg    * )
101bbe1b32bSmrg       break ;;
102bbe1b32bSmrg  esac
103bbe1b32bSmrgdone
104bbe1b32bSmrg
105bbe1b32bSmrgcase $# in
106bbe1b32bSmrg 0) echo "$me: missing argument$help" >&2
107bbe1b32bSmrg    exit 1;;
108bbe1b32bSmrg 1) ;;
109bbe1b32bSmrg *) echo "$me: too many arguments$help" >&2
110bbe1b32bSmrg    exit 1;;
111bbe1b32bSmrgesac
112bbe1b32bSmrg
113bbe1b32bSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
114bbe1b32bSmrg# Here we must recognize all the valid KERNEL-OS combinations.
115bbe1b32bSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
116bbe1b32bSmrgcase $maybe_os in
11730f8ce46Smrg  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
1188f34cbf9Ssnj  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
11940c5823bSmrg  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
12040c5823bSmrg  kopensolaris*-gnu* | cloudabi*-eabi* | \
121bbe1b32bSmrg  storm-chaos* | os2-emx* | rtmk-nova*)
122bbe1b32bSmrg    os=-$maybe_os
123bbe1b32bSmrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
124bbe1b32bSmrg    ;;
1258f34cbf9Ssnj  android-linux)
1268f34cbf9Ssnj    os=-linux-android
1278f34cbf9Ssnj    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
1288f34cbf9Ssnj    ;;
129bbe1b32bSmrg  *)
130bbe1b32bSmrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131bbe1b32bSmrg    if [ $basic_machine != $1 ]
132bbe1b32bSmrg    then os=`echo $1 | sed 's/.*-/-/'`
133bbe1b32bSmrg    else os=; fi
134bbe1b32bSmrg    ;;
135bbe1b32bSmrgesac
136bbe1b32bSmrg
137bbe1b32bSmrg### Let's recognize common machines as not being operating systems so
138bbe1b32bSmrg### that things like config.sub decstation-3100 work.  We also
139bbe1b32bSmrg### recognize some manufacturers as not being operating systems, so we
140bbe1b32bSmrg### can provide default operating systems below.
141bbe1b32bSmrgcase $os in
142bbe1b32bSmrg	-sun*os*)
143bbe1b32bSmrg		# Prevent following clause from handling this invalid input.
144bbe1b32bSmrg		;;
145bbe1b32bSmrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146bbe1b32bSmrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147bbe1b32bSmrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148bbe1b32bSmrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149bbe1b32bSmrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150bbe1b32bSmrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1518f34cbf9Ssnj	-apple | -axis | -knuth | -cray | -microblaze*)
152bbe1b32bSmrg		os=
153bbe1b32bSmrg		basic_machine=$1
154bbe1b32bSmrg		;;
15534f90d55Smrg	-bluegene*)
15634f90d55Smrg		os=-cnk
15730f8ce46Smrg		;;
158bbe1b32bSmrg	-sim | -cisco | -oki | -wec | -winbond)
159bbe1b32bSmrg		os=
160bbe1b32bSmrg		basic_machine=$1
161bbe1b32bSmrg		;;
162bbe1b32bSmrg	-scout)
163bbe1b32bSmrg		;;
164bbe1b32bSmrg	-wrs)
165bbe1b32bSmrg		os=-vxworks
166bbe1b32bSmrg		basic_machine=$1
167bbe1b32bSmrg		;;
168bbe1b32bSmrg	-chorusos*)
169bbe1b32bSmrg		os=-chorusos
170bbe1b32bSmrg		basic_machine=$1
171bbe1b32bSmrg		;;
17234f90d55Smrg	-chorusrdb)
17334f90d55Smrg		os=-chorusrdb
174bbe1b32bSmrg		basic_machine=$1
17534f90d55Smrg		;;
176bbe1b32bSmrg	-hiux*)
177bbe1b32bSmrg		os=-hiuxwe2
178bbe1b32bSmrg		;;
179bbe1b32bSmrg	-sco6)
180bbe1b32bSmrg		os=-sco5v6
181bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
182bbe1b32bSmrg		;;
183bbe1b32bSmrg	-sco5)
184bbe1b32bSmrg		os=-sco3.2v5
185bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
186bbe1b32bSmrg		;;
187bbe1b32bSmrg	-sco4)
188bbe1b32bSmrg		os=-sco3.2v4
189bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190bbe1b32bSmrg		;;
191bbe1b32bSmrg	-sco3.2.[4-9]*)
192bbe1b32bSmrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
193bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194bbe1b32bSmrg		;;
195bbe1b32bSmrg	-sco3.2v[4-9]*)
196bbe1b32bSmrg		# Don't forget version if it is 3.2v4 or newer.
197bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198bbe1b32bSmrg		;;
199bbe1b32bSmrg	-sco5v6*)
200bbe1b32bSmrg		# Don't forget version if it is 3.2v4 or newer.
201bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202bbe1b32bSmrg		;;
203bbe1b32bSmrg	-sco*)
204bbe1b32bSmrg		os=-sco3.2v2
205bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206bbe1b32bSmrg		;;
207bbe1b32bSmrg	-udk*)
208bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
209bbe1b32bSmrg		;;
210bbe1b32bSmrg	-isc)
211bbe1b32bSmrg		os=-isc2.2
212bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
213bbe1b32bSmrg		;;
214bbe1b32bSmrg	-clix*)
215bbe1b32bSmrg		basic_machine=clipper-intergraph
216bbe1b32bSmrg		;;
217bbe1b32bSmrg	-isc*)
218bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
219bbe1b32bSmrg		;;
2208f34cbf9Ssnj	-lynx*178)
2218f34cbf9Ssnj		os=-lynxos178
2228f34cbf9Ssnj		;;
2238f34cbf9Ssnj	-lynx*5)
2248f34cbf9Ssnj		os=-lynxos5
2258f34cbf9Ssnj		;;
226bbe1b32bSmrg	-lynx*)
227bbe1b32bSmrg		os=-lynxos
228bbe1b32bSmrg		;;
229bbe1b32bSmrg	-ptx*)
230bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
231bbe1b32bSmrg		;;
232bbe1b32bSmrg	-windowsnt*)
233bbe1b32bSmrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
234bbe1b32bSmrg		;;
235bbe1b32bSmrg	-psos*)
236bbe1b32bSmrg		os=-psos
237bbe1b32bSmrg		;;
238bbe1b32bSmrg	-mint | -mint[0-9]*)
239bbe1b32bSmrg		basic_machine=m68k-atari
240bbe1b32bSmrg		os=-mint
241bbe1b32bSmrg		;;
242bbe1b32bSmrgesac
243bbe1b32bSmrg
244bbe1b32bSmrg# Decode aliases for certain CPU-COMPANY combinations.
245bbe1b32bSmrgcase $basic_machine in
246bbe1b32bSmrg	# Recognize the basic CPU types without company name.
247bbe1b32bSmrg	# Some are omitted here because they have special meanings below.
248bbe1b32bSmrg	1750a | 580 \
249bbe1b32bSmrg	| a29k \
2508f34cbf9Ssnj	| aarch64 | aarch64_be \
251bbe1b32bSmrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
252bbe1b32bSmrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
253bbe1b32bSmrg	| am33_2.0 \
2548f34cbf9Ssnj	| arc | arceb \
2558f34cbf9Ssnj	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
2568f34cbf9Ssnj	| avr | avr32 \
25740c5823bSmrg	| ba \
2588f34cbf9Ssnj	| be32 | be64 \
259bbe1b32bSmrg	| bfin \
2608f34cbf9Ssnj	| c4x | c8051 | clipper \
261bbe1b32bSmrg	| d10v | d30v | dlx | dsp16xx \
26240c5823bSmrg	| e2k | epiphany \
26340c5823bSmrg	| fido | fr30 | frv | ft32 \
264bbe1b32bSmrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
26534f90d55Smrg	| hexagon \
26640c5823bSmrg	| i370 | i860 | i960 | ia16 | ia64 \
267bbe1b32bSmrg	| ip2k | iq2000 \
2688f34cbf9Ssnj	| k1om \
26934f90d55Smrg	| le32 | le64 \
27030f8ce46Smrg	| lm32 \
271bbe1b32bSmrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
2728f34cbf9Ssnj	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
273bbe1b32bSmrg	| mips | mipsbe | mipseb | mipsel | mipsle \
274bbe1b32bSmrg	| mips16 \
275bbe1b32bSmrg	| mips64 | mips64el \
27630f8ce46Smrg	| mips64octeon | mips64octeonel \
277bbe1b32bSmrg	| mips64orion | mips64orionel \
27830f8ce46Smrg	| mips64r5900 | mips64r5900el \
27930f8ce46Smrg	| mips64vr | mips64vrel \
280bbe1b32bSmrg	| mips64vr4100 | mips64vr4100el \
281bbe1b32bSmrg	| mips64vr4300 | mips64vr4300el \
282bbe1b32bSmrg	| mips64vr5000 | mips64vr5000el \
283bbe1b32bSmrg	| mips64vr5900 | mips64vr5900el \
284bbe1b32bSmrg	| mipsisa32 | mipsisa32el \
285bbe1b32bSmrg	| mipsisa32r2 | mipsisa32r2el \
28640c5823bSmrg	| mipsisa32r6 | mipsisa32r6el \
287bbe1b32bSmrg	| mipsisa64 | mipsisa64el \
288bbe1b32bSmrg	| mipsisa64r2 | mipsisa64r2el \
28940c5823bSmrg	| mipsisa64r6 | mipsisa64r6el \
290bbe1b32bSmrg	| mipsisa64sb1 | mipsisa64sb1el \
291bbe1b32bSmrg	| mipsisa64sr71k | mipsisa64sr71kel \
2928f34cbf9Ssnj	| mipsr5900 | mipsr5900el \
293bbe1b32bSmrg	| mipstx39 | mipstx39el \
294bbe1b32bSmrg	| mn10200 | mn10300 \
29530f8ce46Smrg	| moxie \
296bbe1b32bSmrg	| mt \
297bbe1b32bSmrg	| msp430 \
29830f8ce46Smrg	| nds32 | nds32le | nds32be \
2998f34cbf9Ssnj	| nios | nios2 | nios2eb | nios2el \
300bbe1b32bSmrg	| ns16k | ns32k \
30140c5823bSmrg	| open8 | or1k | or1knd | or32 \
302bbe1b32bSmrg	| pdp10 | pdp11 | pj | pjl \
30334f90d55Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle \
30440c5823bSmrg	| pru \
305bbe1b32bSmrg	| pyramid \
30640c5823bSmrg	| riscv32 | riscv64 \
30734f90d55Smrg	| rl78 | rx \
308bbe1b32bSmrg	| score \
30940c5823bSmrg	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
310bbe1b32bSmrg	| sh64 | sh64le \
311bbe1b32bSmrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
312bbe1b32bSmrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
31334f90d55Smrg	| spu \
31434f90d55Smrg	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
31530f8ce46Smrg	| ubicom32 \
31634f90d55Smrg	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
31740c5823bSmrg	| visium \
31840c5823bSmrg	| wasm32 \
319bbe1b32bSmrg	| we32k \
32034f90d55Smrg	| x86 | xc16x | xstormy16 | xtensa \
32130f8ce46Smrg	| z8k | z80)
322bbe1b32bSmrg		basic_machine=$basic_machine-unknown
323bbe1b32bSmrg		;;
32430f8ce46Smrg	c54x)
32530f8ce46Smrg		basic_machine=tic54x-unknown
32630f8ce46Smrg		;;
32730f8ce46Smrg	c55x)
32830f8ce46Smrg		basic_machine=tic55x-unknown
32930f8ce46Smrg		;;
33030f8ce46Smrg	c6x)
33130f8ce46Smrg		basic_machine=tic6x-unknown
33230f8ce46Smrg		;;
33340c5823bSmrg	leon|leon[3-9])
33440c5823bSmrg		basic_machine=sparc-$basic_machine
33540c5823bSmrg		;;
3368f34cbf9Ssnj	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
337bbe1b32bSmrg		basic_machine=$basic_machine-unknown
338bbe1b32bSmrg		os=-none
339bbe1b32bSmrg		;;
340bbe1b32bSmrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
341bbe1b32bSmrg		;;
342bbe1b32bSmrg	ms1)
343bbe1b32bSmrg		basic_machine=mt-unknown
344bbe1b32bSmrg		;;
345bbe1b32bSmrg
34634f90d55Smrg	strongarm | thumb | xscale)
34734f90d55Smrg		basic_machine=arm-unknown
34834f90d55Smrg		;;
3498f34cbf9Ssnj	xgate)
3508f34cbf9Ssnj		basic_machine=$basic_machine-unknown
3518f34cbf9Ssnj		os=-none
3528f34cbf9Ssnj		;;
35334f90d55Smrg	xscaleeb)
35434f90d55Smrg		basic_machine=armeb-unknown
35534f90d55Smrg		;;
35634f90d55Smrg
35734f90d55Smrg	xscaleel)
35834f90d55Smrg		basic_machine=armel-unknown
35934f90d55Smrg		;;
36034f90d55Smrg
361bbe1b32bSmrg	# We use `pc' rather than `unknown'
362bbe1b32bSmrg	# because (1) that's what they normally are, and
363bbe1b32bSmrg	# (2) the word "unknown" tends to confuse beginning users.
364bbe1b32bSmrg	i*86 | x86_64)
365bbe1b32bSmrg	  basic_machine=$basic_machine-pc
366bbe1b32bSmrg	  ;;
367bbe1b32bSmrg	# Object if more than one company name word.
368bbe1b32bSmrg	*-*-*)
369bbe1b32bSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
370bbe1b32bSmrg		exit 1
371bbe1b32bSmrg		;;
372bbe1b32bSmrg	# Recognize the basic CPU types with company name.
373bbe1b32bSmrg	580-* \
374bbe1b32bSmrg	| a29k-* \
3758f34cbf9Ssnj	| aarch64-* | aarch64_be-* \
376bbe1b32bSmrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
377bbe1b32bSmrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3788f34cbf9Ssnj	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
379bbe1b32bSmrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
380bbe1b32bSmrg	| avr-* | avr32-* \
38140c5823bSmrg	| ba-* \
38234f90d55Smrg	| be32-* | be64-* \
383bbe1b32bSmrg	| bfin-* | bs2000-* \
38430f8ce46Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* \
3858f34cbf9Ssnj	| c8051-* | clipper-* | craynv-* | cydra-* \
386bbe1b32bSmrg	| d10v-* | d30v-* | dlx-* \
38740c5823bSmrg	| e2k-* | elxsi-* \
38830f8ce46Smrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
389bbe1b32bSmrg	| h8300-* | h8500-* \
390bbe1b32bSmrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
39134f90d55Smrg	| hexagon-* \
39240c5823bSmrg	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
393bbe1b32bSmrg	| ip2k-* | iq2000-* \
3948f34cbf9Ssnj	| k1om-* \
39534f90d55Smrg	| le32-* | le64-* \
39630f8ce46Smrg	| lm32-* \
397bbe1b32bSmrg	| m32c-* | m32r-* | m32rle-* \
398bbe1b32bSmrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3998f34cbf9Ssnj	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
4008f34cbf9Ssnj	| microblaze-* | microblazeel-* \
401bbe1b32bSmrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
402bbe1b32bSmrg	| mips16-* \
403bbe1b32bSmrg	| mips64-* | mips64el-* \
40430f8ce46Smrg	| mips64octeon-* | mips64octeonel-* \
405bbe1b32bSmrg	| mips64orion-* | mips64orionel-* \
40630f8ce46Smrg	| mips64r5900-* | mips64r5900el-* \
40730f8ce46Smrg	| mips64vr-* | mips64vrel-* \
408bbe1b32bSmrg	| mips64vr4100-* | mips64vr4100el-* \
409bbe1b32bSmrg	| mips64vr4300-* | mips64vr4300el-* \
410bbe1b32bSmrg	| mips64vr5000-* | mips64vr5000el-* \
411bbe1b32bSmrg	| mips64vr5900-* | mips64vr5900el-* \
412bbe1b32bSmrg	| mipsisa32-* | mipsisa32el-* \
413bbe1b32bSmrg	| mipsisa32r2-* | mipsisa32r2el-* \
41440c5823bSmrg	| mipsisa32r6-* | mipsisa32r6el-* \
415bbe1b32bSmrg	| mipsisa64-* | mipsisa64el-* \
416bbe1b32bSmrg	| mipsisa64r2-* | mipsisa64r2el-* \
41740c5823bSmrg	| mipsisa64r6-* | mipsisa64r6el-* \
418bbe1b32bSmrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
419bbe1b32bSmrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
4208f34cbf9Ssnj	| mipsr5900-* | mipsr5900el-* \
421bbe1b32bSmrg	| mipstx39-* | mipstx39el-* \
422bbe1b32bSmrg	| mmix-* \
423bbe1b32bSmrg	| mt-* \
424bbe1b32bSmrg	| msp430-* \
42530f8ce46Smrg	| nds32-* | nds32le-* | nds32be-* \
4268f34cbf9Ssnj	| nios-* | nios2-* | nios2eb-* | nios2el-* \
427bbe1b32bSmrg	| none-* | np1-* | ns16k-* | ns32k-* \
42834f90d55Smrg	| open8-* \
42940c5823bSmrg	| or1k*-* \
430bbe1b32bSmrg	| orion-* \
431bbe1b32bSmrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
43234f90d55Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
43340c5823bSmrg	| pru-* \
434bbe1b32bSmrg	| pyramid-* \
43540c5823bSmrg	| riscv32-* | riscv64-* \
43634f90d55Smrg	| rl78-* | romp-* | rs6000-* | rx-* \
43730f8ce46Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
438bbe1b32bSmrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
439bbe1b32bSmrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
440bbe1b32bSmrg	| sparclite-* \
44140c5823bSmrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
44234f90d55Smrg	| tahoe-* \
443bbe1b32bSmrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
44434f90d55Smrg	| tile*-* \
445bbe1b32bSmrg	| tron-* \
44630f8ce46Smrg	| ubicom32-* \
44734f90d55Smrg	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
44834f90d55Smrg	| vax-* \
44940c5823bSmrg	| visium-* \
45040c5823bSmrg	| wasm32-* \
451bbe1b32bSmrg	| we32k-* \
45234f90d55Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* \
45330f8ce46Smrg	| xstormy16-* | xtensa*-* \
454bbe1b32bSmrg	| ymp-* \
45530f8ce46Smrg	| z8k-* | z80-*)
45630f8ce46Smrg		;;
45730f8ce46Smrg	# Recognize the basic CPU types without company name, with glob match.
45830f8ce46Smrg	xtensa*)
45930f8ce46Smrg		basic_machine=$basic_machine-unknown
460bbe1b32bSmrg		;;
461bbe1b32bSmrg	# Recognize the various machine names and aliases which stand
462bbe1b32bSmrg	# for a CPU type and a company and sometimes even an OS.
463bbe1b32bSmrg	386bsd)
464bbe1b32bSmrg		basic_machine=i386-unknown
465bbe1b32bSmrg		os=-bsd
466bbe1b32bSmrg		;;
467bbe1b32bSmrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
468bbe1b32bSmrg		basic_machine=m68000-att
469bbe1b32bSmrg		;;
470bbe1b32bSmrg	3b*)
471bbe1b32bSmrg		basic_machine=we32k-att
472bbe1b32bSmrg		;;
473bbe1b32bSmrg	a29khif)
474bbe1b32bSmrg		basic_machine=a29k-amd
475bbe1b32bSmrg		os=-udi
476bbe1b32bSmrg		;;
47734f90d55Smrg	abacus)
478bbe1b32bSmrg		basic_machine=abacus-unknown
479bbe1b32bSmrg		;;
480bbe1b32bSmrg	adobe68k)
481bbe1b32bSmrg		basic_machine=m68010-adobe
482bbe1b32bSmrg		os=-scout
483bbe1b32bSmrg		;;
484bbe1b32bSmrg	alliant | fx80)
485bbe1b32bSmrg		basic_machine=fx80-alliant
486bbe1b32bSmrg		;;
487bbe1b32bSmrg	altos | altos3068)
488bbe1b32bSmrg		basic_machine=m68k-altos
489bbe1b32bSmrg		;;
490bbe1b32bSmrg	am29k)
491bbe1b32bSmrg		basic_machine=a29k-none
492bbe1b32bSmrg		os=-bsd
493bbe1b32bSmrg		;;
494bbe1b32bSmrg	amd64)
495bbe1b32bSmrg		basic_machine=x86_64-pc
496bbe1b32bSmrg		;;
497bbe1b32bSmrg	amd64-*)
498bbe1b32bSmrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
499bbe1b32bSmrg		;;
500bbe1b32bSmrg	amdahl)
501bbe1b32bSmrg		basic_machine=580-amdahl
502bbe1b32bSmrg		os=-sysv
503bbe1b32bSmrg		;;
504bbe1b32bSmrg	amiga | amiga-*)
505bbe1b32bSmrg		basic_machine=m68k-unknown
506bbe1b32bSmrg		;;
507bbe1b32bSmrg	amigaos | amigados)
508bbe1b32bSmrg		basic_machine=m68k-unknown
509bbe1b32bSmrg		os=-amigaos
510bbe1b32bSmrg		;;
511bbe1b32bSmrg	amigaunix | amix)
512bbe1b32bSmrg		basic_machine=m68k-unknown
513bbe1b32bSmrg		os=-sysv4
514bbe1b32bSmrg		;;
515bbe1b32bSmrg	apollo68)
516bbe1b32bSmrg		basic_machine=m68k-apollo
517bbe1b32bSmrg		os=-sysv
518bbe1b32bSmrg		;;
519bbe1b32bSmrg	apollo68bsd)
520bbe1b32bSmrg		basic_machine=m68k-apollo
521bbe1b32bSmrg		os=-bsd
522bbe1b32bSmrg		;;
52330f8ce46Smrg	aros)
52430f8ce46Smrg		basic_machine=i386-pc
52530f8ce46Smrg		os=-aros
52630f8ce46Smrg		;;
52740c5823bSmrg	asmjs)
52840c5823bSmrg		basic_machine=asmjs-unknown
52940c5823bSmrg		;;
530bbe1b32bSmrg	aux)
531bbe1b32bSmrg		basic_machine=m68k-apple
532bbe1b32bSmrg		os=-aux
533bbe1b32bSmrg		;;
534bbe1b32bSmrg	balance)
535bbe1b32bSmrg		basic_machine=ns32k-sequent
536bbe1b32bSmrg		os=-dynix
537bbe1b32bSmrg		;;
53830f8ce46Smrg	blackfin)
53930f8ce46Smrg		basic_machine=bfin-unknown
54030f8ce46Smrg		os=-linux
54130f8ce46Smrg		;;
54230f8ce46Smrg	blackfin-*)
54330f8ce46Smrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
54430f8ce46Smrg		os=-linux
54530f8ce46Smrg		;;
54630f8ce46Smrg	bluegene*)
54730f8ce46Smrg		basic_machine=powerpc-ibm
54830f8ce46Smrg		os=-cnk
54930f8ce46Smrg		;;
55030f8ce46Smrg	c54x-*)
55130f8ce46Smrg		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
55230f8ce46Smrg		;;
55330f8ce46Smrg	c55x-*)
55430f8ce46Smrg		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
55530f8ce46Smrg		;;
55630f8ce46Smrg	c6x-*)
55730f8ce46Smrg		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
55830f8ce46Smrg		;;
559bbe1b32bSmrg	c90)
560bbe1b32bSmrg		basic_machine=c90-cray
561bbe1b32bSmrg		os=-unicos
562bbe1b32bSmrg		;;
56334f90d55Smrg	cegcc)
56430f8ce46Smrg		basic_machine=arm-unknown
56530f8ce46Smrg		os=-cegcc
56630f8ce46Smrg		;;
567bbe1b32bSmrg	convex-c1)
568bbe1b32bSmrg		basic_machine=c1-convex
569bbe1b32bSmrg		os=-bsd
570bbe1b32bSmrg		;;
571bbe1b32bSmrg	convex-c2)
572bbe1b32bSmrg		basic_machine=c2-convex
573bbe1b32bSmrg		os=-bsd
574bbe1b32bSmrg		;;
575bbe1b32bSmrg	convex-c32)
576bbe1b32bSmrg		basic_machine=c32-convex
577bbe1b32bSmrg		os=-bsd
578bbe1b32bSmrg		;;
579bbe1b32bSmrg	convex-c34)
580bbe1b32bSmrg		basic_machine=c34-convex
581bbe1b32bSmrg		os=-bsd
582bbe1b32bSmrg		;;
583bbe1b32bSmrg	convex-c38)
584bbe1b32bSmrg		basic_machine=c38-convex
585bbe1b32bSmrg		os=-bsd
586bbe1b32bSmrg		;;
587bbe1b32bSmrg	cray | j90)
588bbe1b32bSmrg		basic_machine=j90-cray
589bbe1b32bSmrg		os=-unicos
590bbe1b32bSmrg		;;
591bbe1b32bSmrg	craynv)
592bbe1b32bSmrg		basic_machine=craynv-cray
593bbe1b32bSmrg		os=-unicosmp
594bbe1b32bSmrg		;;
59534f90d55Smrg	cr16 | cr16-*)
59630f8ce46Smrg		basic_machine=cr16-unknown
597bbe1b32bSmrg		os=-elf
598bbe1b32bSmrg		;;
599bbe1b32bSmrg	crds | unos)
600bbe1b32bSmrg		basic_machine=m68k-crds
601bbe1b32bSmrg		;;
602bbe1b32bSmrg	crisv32 | crisv32-* | etraxfs*)
603bbe1b32bSmrg		basic_machine=crisv32-axis
604bbe1b32bSmrg		;;
605bbe1b32bSmrg	cris | cris-* | etrax*)
606bbe1b32bSmrg		basic_machine=cris-axis
607bbe1b32bSmrg		;;
608bbe1b32bSmrg	crx)
609bbe1b32bSmrg		basic_machine=crx-unknown
610bbe1b32bSmrg		os=-elf
611bbe1b32bSmrg		;;
612bbe1b32bSmrg	da30 | da30-*)
613bbe1b32bSmrg		basic_machine=m68k-da30
614bbe1b32bSmrg		;;
615bbe1b32bSmrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
616bbe1b32bSmrg		basic_machine=mips-dec
617bbe1b32bSmrg		;;
618bbe1b32bSmrg	decsystem10* | dec10*)
619bbe1b32bSmrg		basic_machine=pdp10-dec
620bbe1b32bSmrg		os=-tops10
621bbe1b32bSmrg		;;
622bbe1b32bSmrg	decsystem20* | dec20*)
623bbe1b32bSmrg		basic_machine=pdp10-dec
624bbe1b32bSmrg		os=-tops20
625bbe1b32bSmrg		;;
626bbe1b32bSmrg	delta | 3300 | motorola-3300 | motorola-delta \
627bbe1b32bSmrg	      | 3300-motorola | delta-motorola)
628bbe1b32bSmrg		basic_machine=m68k-motorola
629bbe1b32bSmrg		;;
630bbe1b32bSmrg	delta88)
631bbe1b32bSmrg		basic_machine=m88k-motorola
632bbe1b32bSmrg		os=-sysv3
633bbe1b32bSmrg		;;
63430f8ce46Smrg	dicos)
63530f8ce46Smrg		basic_machine=i686-pc
63630f8ce46Smrg		os=-dicos
63730f8ce46Smrg		;;
638bbe1b32bSmrg	djgpp)
639bbe1b32bSmrg		basic_machine=i586-pc
640bbe1b32bSmrg		os=-msdosdjgpp
641bbe1b32bSmrg		;;
642bbe1b32bSmrg	dpx20 | dpx20-*)
643bbe1b32bSmrg		basic_machine=rs6000-bull
644bbe1b32bSmrg		os=-bosx
645bbe1b32bSmrg		;;
646bbe1b32bSmrg	dpx2* | dpx2*-bull)
647bbe1b32bSmrg		basic_machine=m68k-bull
648bbe1b32bSmrg		os=-sysv3
649bbe1b32bSmrg		;;
65040c5823bSmrg	e500v[12])
65140c5823bSmrg		basic_machine=powerpc-unknown
65240c5823bSmrg		os=$os"spe"
65340c5823bSmrg		;;
65440c5823bSmrg	e500v[12]-*)
65540c5823bSmrg		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
65640c5823bSmrg		os=$os"spe"
65740c5823bSmrg		;;
658bbe1b32bSmrg	ebmon29k)
659bbe1b32bSmrg		basic_machine=a29k-amd
660bbe1b32bSmrg		os=-ebmon
661bbe1b32bSmrg		;;
662bbe1b32bSmrg	elxsi)
663bbe1b32bSmrg		basic_machine=elxsi-elxsi
664bbe1b32bSmrg		os=-bsd
665bbe1b32bSmrg		;;
666bbe1b32bSmrg	encore | umax | mmax)
667bbe1b32bSmrg		basic_machine=ns32k-encore
668bbe1b32bSmrg		;;
669bbe1b32bSmrg	es1800 | OSE68k | ose68k | ose | OSE)
670bbe1b32bSmrg		basic_machine=m68k-ericsson
671bbe1b32bSmrg		os=-ose
672bbe1b32bSmrg		;;
673bbe1b32bSmrg	fx2800)
674bbe1b32bSmrg		basic_machine=i860-alliant
675bbe1b32bSmrg		;;
676bbe1b32bSmrg	genix)
677bbe1b32bSmrg		basic_machine=ns32k-ns
678bbe1b32bSmrg		;;
679bbe1b32bSmrg	gmicro)
680bbe1b32bSmrg		basic_machine=tron-gmicro
681bbe1b32bSmrg		os=-sysv
682bbe1b32bSmrg		;;
683bbe1b32bSmrg	go32)
684bbe1b32bSmrg		basic_machine=i386-pc
685bbe1b32bSmrg		os=-go32
686bbe1b32bSmrg		;;
687bbe1b32bSmrg	h3050r* | hiux*)
688bbe1b32bSmrg		basic_machine=hppa1.1-hitachi
689bbe1b32bSmrg		os=-hiuxwe2
690bbe1b32bSmrg		;;
691bbe1b32bSmrg	h8300hms)
692bbe1b32bSmrg		basic_machine=h8300-hitachi
693bbe1b32bSmrg		os=-hms
694bbe1b32bSmrg		;;
695bbe1b32bSmrg	h8300xray)
696bbe1b32bSmrg		basic_machine=h8300-hitachi
697bbe1b32bSmrg		os=-xray
698bbe1b32bSmrg		;;
699bbe1b32bSmrg	h8500hms)
700bbe1b32bSmrg		basic_machine=h8500-hitachi
701bbe1b32bSmrg		os=-hms
702bbe1b32bSmrg		;;
703bbe1b32bSmrg	harris)
704bbe1b32bSmrg		basic_machine=m88k-harris
705bbe1b32bSmrg		os=-sysv3
706bbe1b32bSmrg		;;
707bbe1b32bSmrg	hp300-*)
708bbe1b32bSmrg		basic_machine=m68k-hp
709bbe1b32bSmrg		;;
710bbe1b32bSmrg	hp300bsd)
711bbe1b32bSmrg		basic_machine=m68k-hp
712bbe1b32bSmrg		os=-bsd
713bbe1b32bSmrg		;;
714bbe1b32bSmrg	hp300hpux)
715bbe1b32bSmrg		basic_machine=m68k-hp
716bbe1b32bSmrg		os=-hpux
717bbe1b32bSmrg		;;
718bbe1b32bSmrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
719bbe1b32bSmrg		basic_machine=hppa1.0-hp
720bbe1b32bSmrg		;;
721bbe1b32bSmrg	hp9k2[0-9][0-9] | hp9k31[0-9])
722bbe1b32bSmrg		basic_machine=m68000-hp
723bbe1b32bSmrg		;;
724bbe1b32bSmrg	hp9k3[2-9][0-9])
725bbe1b32bSmrg		basic_machine=m68k-hp
726bbe1b32bSmrg		;;
727bbe1b32bSmrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
728bbe1b32bSmrg		basic_machine=hppa1.0-hp
729bbe1b32bSmrg		;;
730bbe1b32bSmrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
731bbe1b32bSmrg		basic_machine=hppa1.1-hp
732bbe1b32bSmrg		;;
733bbe1b32bSmrg	hp9k78[0-9] | hp78[0-9])
734bbe1b32bSmrg		# FIXME: really hppa2.0-hp
735bbe1b32bSmrg		basic_machine=hppa1.1-hp
736bbe1b32bSmrg		;;
737bbe1b32bSmrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
738bbe1b32bSmrg		# FIXME: really hppa2.0-hp
739bbe1b32bSmrg		basic_machine=hppa1.1-hp
740bbe1b32bSmrg		;;
741bbe1b32bSmrg	hp9k8[0-9][13679] | hp8[0-9][13679])
742bbe1b32bSmrg		basic_machine=hppa1.1-hp
743bbe1b32bSmrg		;;
744bbe1b32bSmrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
745bbe1b32bSmrg		basic_machine=hppa1.0-hp
746bbe1b32bSmrg		;;
747bbe1b32bSmrg	hppa-next)
748bbe1b32bSmrg		os=-nextstep3
749bbe1b32bSmrg		;;
750bbe1b32bSmrg	hppaosf)
751bbe1b32bSmrg		basic_machine=hppa1.1-hp
752bbe1b32bSmrg		os=-osf
753bbe1b32bSmrg		;;
754bbe1b32bSmrg	hppro)
755bbe1b32bSmrg		basic_machine=hppa1.1-hp
756bbe1b32bSmrg		os=-proelf
757bbe1b32bSmrg		;;
758bbe1b32bSmrg	i370-ibm* | ibm*)
759bbe1b32bSmrg		basic_machine=i370-ibm
760bbe1b32bSmrg		;;
761bbe1b32bSmrg	i*86v32)
762bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
763bbe1b32bSmrg		os=-sysv32
764bbe1b32bSmrg		;;
765bbe1b32bSmrg	i*86v4*)
766bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
767bbe1b32bSmrg		os=-sysv4
768bbe1b32bSmrg		;;
769bbe1b32bSmrg	i*86v)
770bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
771bbe1b32bSmrg		os=-sysv
772bbe1b32bSmrg		;;
773bbe1b32bSmrg	i*86sol2)
774bbe1b32bSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
775bbe1b32bSmrg		os=-solaris2
776bbe1b32bSmrg		;;
777bbe1b32bSmrg	i386mach)
778bbe1b32bSmrg		basic_machine=i386-mach
779bbe1b32bSmrg		os=-mach
780bbe1b32bSmrg		;;
781bbe1b32bSmrg	i386-vsta | vsta)
782bbe1b32bSmrg		basic_machine=i386-unknown
783bbe1b32bSmrg		os=-vsta
784bbe1b32bSmrg		;;
785bbe1b32bSmrg	iris | iris4d)
786bbe1b32bSmrg		basic_machine=mips-sgi
787bbe1b32bSmrg		case $os in
788bbe1b32bSmrg		    -irix*)
789bbe1b32bSmrg			;;
790bbe1b32bSmrg		    *)
791bbe1b32bSmrg			os=-irix4
792bbe1b32bSmrg			;;
793bbe1b32bSmrg		esac
794bbe1b32bSmrg		;;
795bbe1b32bSmrg	isi68 | isi)
796bbe1b32bSmrg		basic_machine=m68k-isi
797bbe1b32bSmrg		os=-sysv
798bbe1b32bSmrg		;;
79940c5823bSmrg	leon-*|leon[3-9]-*)
80040c5823bSmrg		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
80140c5823bSmrg		;;
80230f8ce46Smrg	m68knommu)
80330f8ce46Smrg		basic_machine=m68k-unknown
80430f8ce46Smrg		os=-linux
80530f8ce46Smrg		;;
80630f8ce46Smrg	m68knommu-*)
80730f8ce46Smrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
80830f8ce46Smrg		os=-linux
80930f8ce46Smrg		;;
810bbe1b32bSmrg	m88k-omron*)
811bbe1b32bSmrg		basic_machine=m88k-omron
812bbe1b32bSmrg		;;
813bbe1b32bSmrg	magnum | m3230)
814bbe1b32bSmrg		basic_machine=mips-mips
815bbe1b32bSmrg		os=-sysv
816bbe1b32bSmrg		;;
817bbe1b32bSmrg	merlin)
818bbe1b32bSmrg		basic_machine=ns32k-utek
819bbe1b32bSmrg		os=-sysv
820bbe1b32bSmrg		;;
8218f34cbf9Ssnj	microblaze*)
82230f8ce46Smrg		basic_machine=microblaze-xilinx
82330f8ce46Smrg		;;
8248f34cbf9Ssnj	mingw64)
8258f34cbf9Ssnj		basic_machine=x86_64-pc
8268f34cbf9Ssnj		os=-mingw64
8278f34cbf9Ssnj		;;
828bbe1b32bSmrg	mingw32)
8298f34cbf9Ssnj		basic_machine=i686-pc
830bbe1b32bSmrg		os=-mingw32
831bbe1b32bSmrg		;;
83230f8ce46Smrg	mingw32ce)
83330f8ce46Smrg		basic_machine=arm-unknown
83430f8ce46Smrg		os=-mingw32ce
83530f8ce46Smrg		;;
836bbe1b32bSmrg	miniframe)
837bbe1b32bSmrg		basic_machine=m68000-convergent
838bbe1b32bSmrg		;;
839bbe1b32bSmrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
840bbe1b32bSmrg		basic_machine=m68k-atari
841bbe1b32bSmrg		os=-mint
842bbe1b32bSmrg		;;
843bbe1b32bSmrg	mips3*-*)
844bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
845bbe1b32bSmrg		;;
846bbe1b32bSmrg	mips3*)
847bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
848bbe1b32bSmrg		;;
849bbe1b32bSmrg	monitor)
850bbe1b32bSmrg		basic_machine=m68k-rom68k
851bbe1b32bSmrg		os=-coff
852bbe1b32bSmrg		;;
853bbe1b32bSmrg	morphos)
854bbe1b32bSmrg		basic_machine=powerpc-unknown
855bbe1b32bSmrg		os=-morphos
856bbe1b32bSmrg		;;
85740c5823bSmrg	moxiebox)
85840c5823bSmrg		basic_machine=moxie-unknown
85940c5823bSmrg		os=-moxiebox
86040c5823bSmrg		;;
861bbe1b32bSmrg	msdos)
862bbe1b32bSmrg		basic_machine=i386-pc
863bbe1b32bSmrg		os=-msdos
864bbe1b32bSmrg		;;
865bbe1b32bSmrg	ms1-*)
866bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
867bbe1b32bSmrg		;;
86834f90d55Smrg	msys)
8698f34cbf9Ssnj		basic_machine=i686-pc
87034f90d55Smrg		os=-msys
87134f90d55Smrg		;;
872bbe1b32bSmrg	mvs)
873bbe1b32bSmrg		basic_machine=i370-ibm
874bbe1b32bSmrg		os=-mvs
875bbe1b32bSmrg		;;
87634f90d55Smrg	nacl)
87734f90d55Smrg		basic_machine=le32-unknown
87834f90d55Smrg		os=-nacl
87934f90d55Smrg		;;
880bbe1b32bSmrg	ncr3000)
881bbe1b32bSmrg		basic_machine=i486-ncr
882bbe1b32bSmrg		os=-sysv4
883bbe1b32bSmrg		;;
884bbe1b32bSmrg	netbsd386)
885bbe1b32bSmrg		basic_machine=i386-unknown
886bbe1b32bSmrg		os=-netbsd
887bbe1b32bSmrg		;;
888bbe1b32bSmrg	netwinder)
889bbe1b32bSmrg		basic_machine=armv4l-rebel
890bbe1b32bSmrg		os=-linux
891bbe1b32bSmrg		;;
892bbe1b32bSmrg	news | news700 | news800 | news900)
893bbe1b32bSmrg		basic_machine=m68k-sony
894bbe1b32bSmrg		os=-newsos
895bbe1b32bSmrg		;;
896bbe1b32bSmrg	news1000)
897bbe1b32bSmrg		basic_machine=m68030-sony
898bbe1b32bSmrg		os=-newsos
899bbe1b32bSmrg		;;
900bbe1b32bSmrg	news-3600 | risc-news)
901bbe1b32bSmrg		basic_machine=mips-sony
902bbe1b32bSmrg		os=-newsos
903bbe1b32bSmrg		;;
904bbe1b32bSmrg	necv70)
905bbe1b32bSmrg		basic_machine=v70-nec
906bbe1b32bSmrg		os=-sysv
907bbe1b32bSmrg		;;
908bbe1b32bSmrg	next | m*-next )
909bbe1b32bSmrg		basic_machine=m68k-next
910bbe1b32bSmrg		case $os in
911bbe1b32bSmrg		    -nextstep* )
912bbe1b32bSmrg			;;
913bbe1b32bSmrg		    -ns2*)
914bbe1b32bSmrg		      os=-nextstep2
915bbe1b32bSmrg			;;
916bbe1b32bSmrg		    *)
917bbe1b32bSmrg		      os=-nextstep3
918bbe1b32bSmrg			;;
919bbe1b32bSmrg		esac
920bbe1b32bSmrg		;;
921bbe1b32bSmrg	nh3000)
922bbe1b32bSmrg		basic_machine=m68k-harris
923bbe1b32bSmrg		os=-cxux
924bbe1b32bSmrg		;;
925bbe1b32bSmrg	nh[45]000)
926bbe1b32bSmrg		basic_machine=m88k-harris
927bbe1b32bSmrg		os=-cxux
928bbe1b32bSmrg		;;
929bbe1b32bSmrg	nindy960)
930bbe1b32bSmrg		basic_machine=i960-intel
931bbe1b32bSmrg		os=-nindy
932bbe1b32bSmrg		;;
933bbe1b32bSmrg	mon960)
934bbe1b32bSmrg		basic_machine=i960-intel
935bbe1b32bSmrg		os=-mon960
936bbe1b32bSmrg		;;
937bbe1b32bSmrg	nonstopux)
938bbe1b32bSmrg		basic_machine=mips-compaq
939bbe1b32bSmrg		os=-nonstopux
940bbe1b32bSmrg		;;
941bbe1b32bSmrg	np1)
942bbe1b32bSmrg		basic_machine=np1-gould
943bbe1b32bSmrg		;;
94434f90d55Smrg	neo-tandem)
94530f8ce46Smrg		basic_machine=neo-tandem
94630f8ce46Smrg		;;
94734f90d55Smrg	nse-tandem)
94830f8ce46Smrg		basic_machine=nse-tandem
94930f8ce46Smrg		;;
950bbe1b32bSmrg	nsr-tandem)
951bbe1b32bSmrg		basic_machine=nsr-tandem
952bbe1b32bSmrg		;;
95340c5823bSmrg	nsx-tandem)
95440c5823bSmrg		basic_machine=nsx-tandem
95540c5823bSmrg		;;
956bbe1b32bSmrg	op50n-* | op60c-*)
957bbe1b32bSmrg		basic_machine=hppa1.1-oki
958bbe1b32bSmrg		os=-proelf
959bbe1b32bSmrg		;;
960bbe1b32bSmrg	openrisc | openrisc-*)
961bbe1b32bSmrg		basic_machine=or32-unknown
962bbe1b32bSmrg		;;
963bbe1b32bSmrg	os400)
964bbe1b32bSmrg		basic_machine=powerpc-ibm
965bbe1b32bSmrg		os=-os400
966bbe1b32bSmrg		;;
967bbe1b32bSmrg	OSE68000 | ose68000)
968bbe1b32bSmrg		basic_machine=m68000-ericsson
969bbe1b32bSmrg		os=-ose
970bbe1b32bSmrg		;;
971bbe1b32bSmrg	os68k)
972bbe1b32bSmrg		basic_machine=m68k-none
973bbe1b32bSmrg		os=-os68k
974bbe1b32bSmrg		;;
975bbe1b32bSmrg	pa-hitachi)
976bbe1b32bSmrg		basic_machine=hppa1.1-hitachi
977bbe1b32bSmrg		os=-hiuxwe2
978bbe1b32bSmrg		;;
979bbe1b32bSmrg	paragon)
980bbe1b32bSmrg		basic_machine=i860-intel
981bbe1b32bSmrg		os=-osf
982bbe1b32bSmrg		;;
98330f8ce46Smrg	parisc)
98430f8ce46Smrg		basic_machine=hppa-unknown
98530f8ce46Smrg		os=-linux
98630f8ce46Smrg		;;
98730f8ce46Smrg	parisc-*)
98830f8ce46Smrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
98930f8ce46Smrg		os=-linux
99030f8ce46Smrg		;;
991bbe1b32bSmrg	pbd)
992bbe1b32bSmrg		basic_machine=sparc-tti
993bbe1b32bSmrg		;;
994bbe1b32bSmrg	pbb)
995bbe1b32bSmrg		basic_machine=m68k-tti
996bbe1b32bSmrg		;;
997bbe1b32bSmrg	pc532 | pc532-*)
998bbe1b32bSmrg		basic_machine=ns32k-pc532
999bbe1b32bSmrg		;;
1000bbe1b32bSmrg	pc98)
1001bbe1b32bSmrg		basic_machine=i386-pc
1002bbe1b32bSmrg		;;
1003bbe1b32bSmrg	pc98-*)
1004bbe1b32bSmrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
1005bbe1b32bSmrg		;;
1006bbe1b32bSmrg	pentium | p5 | k5 | k6 | nexgen | viac3)
1007bbe1b32bSmrg		basic_machine=i586-pc
1008bbe1b32bSmrg		;;
1009bbe1b32bSmrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
1010bbe1b32bSmrg		basic_machine=i686-pc
1011bbe1b32bSmrg		;;
1012bbe1b32bSmrg	pentiumii | pentium2 | pentiumiii | pentium3)
1013bbe1b32bSmrg		basic_machine=i686-pc
1014bbe1b32bSmrg		;;
1015bbe1b32bSmrg	pentium4)
1016bbe1b32bSmrg		basic_machine=i786-pc
1017bbe1b32bSmrg		;;
1018bbe1b32bSmrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1019bbe1b32bSmrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
1020bbe1b32bSmrg		;;
1021bbe1b32bSmrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
1022bbe1b32bSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1023bbe1b32bSmrg		;;
1024bbe1b32bSmrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1025bbe1b32bSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1026bbe1b32bSmrg		;;
1027bbe1b32bSmrg	pentium4-*)
1028bbe1b32bSmrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
1029bbe1b32bSmrg		;;
1030bbe1b32bSmrg	pn)
1031bbe1b32bSmrg		basic_machine=pn-gould
1032bbe1b32bSmrg		;;
1033bbe1b32bSmrg	power)	basic_machine=power-ibm
1034bbe1b32bSmrg		;;
103534f90d55Smrg	ppc | ppcbe)	basic_machine=powerpc-unknown
1036bbe1b32bSmrg		;;
103734f90d55Smrg	ppc-* | ppcbe-*)
103834f90d55Smrg		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
1039bbe1b32bSmrg		;;
104040c5823bSmrg	ppcle | powerpclittle)
1041bbe1b32bSmrg		basic_machine=powerpcle-unknown
1042bbe1b32bSmrg		;;
1043bbe1b32bSmrg	ppcle-* | powerpclittle-*)
1044bbe1b32bSmrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1045bbe1b32bSmrg		;;
1046bbe1b32bSmrg	ppc64)	basic_machine=powerpc64-unknown
1047bbe1b32bSmrg		;;
104840c5823bSmrg	ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1049bbe1b32bSmrg		;;
105040c5823bSmrg	ppc64le | powerpc64little)
1051bbe1b32bSmrg		basic_machine=powerpc64le-unknown
1052bbe1b32bSmrg		;;
1053bbe1b32bSmrg	ppc64le-* | powerpc64little-*)
1054bbe1b32bSmrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1055bbe1b32bSmrg		;;
1056bbe1b32bSmrg	ps2)
1057bbe1b32bSmrg		basic_machine=i386-ibm
1058bbe1b32bSmrg		;;
1059bbe1b32bSmrg	pw32)
1060bbe1b32bSmrg		basic_machine=i586-unknown
1061bbe1b32bSmrg		os=-pw32
1062bbe1b32bSmrg		;;
10638f34cbf9Ssnj	rdos | rdos64)
10648f34cbf9Ssnj		basic_machine=x86_64-pc
10658f34cbf9Ssnj		os=-rdos
10668f34cbf9Ssnj		;;
10678f34cbf9Ssnj	rdos32)
1068bbe1b32bSmrg		basic_machine=i386-pc
1069bbe1b32bSmrg		os=-rdos
1070bbe1b32bSmrg		;;
1071bbe1b32bSmrg	rom68k)
1072bbe1b32bSmrg		basic_machine=m68k-rom68k
1073bbe1b32bSmrg		os=-coff
1074bbe1b32bSmrg		;;
1075bbe1b32bSmrg	rm[46]00)
1076bbe1b32bSmrg		basic_machine=mips-siemens
1077bbe1b32bSmrg		;;
1078bbe1b32bSmrg	rtpc | rtpc-*)
1079bbe1b32bSmrg		basic_machine=romp-ibm
1080bbe1b32bSmrg		;;
1081bbe1b32bSmrg	s390 | s390-*)
1082bbe1b32bSmrg		basic_machine=s390-ibm
1083bbe1b32bSmrg		;;
1084bbe1b32bSmrg	s390x | s390x-*)
1085bbe1b32bSmrg		basic_machine=s390x-ibm
1086bbe1b32bSmrg		;;
1087bbe1b32bSmrg	sa29200)
1088bbe1b32bSmrg		basic_machine=a29k-amd
1089bbe1b32bSmrg		os=-udi
1090bbe1b32bSmrg		;;
1091bbe1b32bSmrg	sb1)
1092bbe1b32bSmrg		basic_machine=mipsisa64sb1-unknown
1093bbe1b32bSmrg		;;
1094bbe1b32bSmrg	sb1el)
1095bbe1b32bSmrg		basic_machine=mipsisa64sb1el-unknown
1096bbe1b32bSmrg		;;
1097bbe1b32bSmrg	sde)
1098bbe1b32bSmrg		basic_machine=mipsisa32-sde
1099bbe1b32bSmrg		os=-elf
1100bbe1b32bSmrg		;;
1101bbe1b32bSmrg	sei)
1102bbe1b32bSmrg		basic_machine=mips-sei
1103bbe1b32bSmrg		os=-seiux
1104bbe1b32bSmrg		;;
1105bbe1b32bSmrg	sequent)
1106bbe1b32bSmrg		basic_machine=i386-sequent
1107bbe1b32bSmrg		;;
1108bbe1b32bSmrg	sh)
1109bbe1b32bSmrg		basic_machine=sh-hitachi
1110bbe1b32bSmrg		os=-hms
1111bbe1b32bSmrg		;;
111230f8ce46Smrg	sh5el)
111330f8ce46Smrg		basic_machine=sh5le-unknown
111430f8ce46Smrg		;;
1115bbe1b32bSmrg	sh64)
1116bbe1b32bSmrg		basic_machine=sh64-unknown
1117bbe1b32bSmrg		;;
1118bbe1b32bSmrg	sparclite-wrs | simso-wrs)
1119bbe1b32bSmrg		basic_machine=sparclite-wrs
1120bbe1b32bSmrg		os=-vxworks
1121bbe1b32bSmrg		;;
1122bbe1b32bSmrg	sps7)
1123bbe1b32bSmrg		basic_machine=m68k-bull
1124bbe1b32bSmrg		os=-sysv2
1125bbe1b32bSmrg		;;
1126bbe1b32bSmrg	spur)
1127bbe1b32bSmrg		basic_machine=spur-unknown
1128bbe1b32bSmrg		;;
1129bbe1b32bSmrg	st2000)
1130bbe1b32bSmrg		basic_machine=m68k-tandem
1131bbe1b32bSmrg		;;
1132bbe1b32bSmrg	stratus)
1133bbe1b32bSmrg		basic_machine=i860-stratus
1134bbe1b32bSmrg		os=-sysv4
1135bbe1b32bSmrg		;;
113634f90d55Smrg	strongarm-* | thumb-*)
113734f90d55Smrg		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
113834f90d55Smrg		;;
1139bbe1b32bSmrg	sun2)
1140bbe1b32bSmrg		basic_machine=m68000-sun
1141bbe1b32bSmrg		;;
1142bbe1b32bSmrg	sun2os3)
1143bbe1b32bSmrg		basic_machine=m68000-sun
1144bbe1b32bSmrg		os=-sunos3
1145bbe1b32bSmrg		;;
1146bbe1b32bSmrg	sun2os4)
1147bbe1b32bSmrg		basic_machine=m68000-sun
1148bbe1b32bSmrg		os=-sunos4
1149bbe1b32bSmrg		;;
1150bbe1b32bSmrg	sun3os3)
1151bbe1b32bSmrg		basic_machine=m68k-sun
1152bbe1b32bSmrg		os=-sunos3
1153bbe1b32bSmrg		;;
1154bbe1b32bSmrg	sun3os4)
1155bbe1b32bSmrg		basic_machine=m68k-sun
1156bbe1b32bSmrg		os=-sunos4
1157bbe1b32bSmrg		;;
1158bbe1b32bSmrg	sun4os3)
1159bbe1b32bSmrg		basic_machine=sparc-sun
1160bbe1b32bSmrg		os=-sunos3
1161bbe1b32bSmrg		;;
1162bbe1b32bSmrg	sun4os4)
1163bbe1b32bSmrg		basic_machine=sparc-sun
1164bbe1b32bSmrg		os=-sunos4
1165bbe1b32bSmrg		;;
1166bbe1b32bSmrg	sun4sol2)
1167bbe1b32bSmrg		basic_machine=sparc-sun
1168bbe1b32bSmrg		os=-solaris2
1169bbe1b32bSmrg		;;
1170bbe1b32bSmrg	sun3 | sun3-*)
1171bbe1b32bSmrg		basic_machine=m68k-sun
1172bbe1b32bSmrg		;;
1173bbe1b32bSmrg	sun4)
1174bbe1b32bSmrg		basic_machine=sparc-sun
1175bbe1b32bSmrg		;;
1176bbe1b32bSmrg	sun386 | sun386i | roadrunner)
1177bbe1b32bSmrg		basic_machine=i386-sun
1178bbe1b32bSmrg		;;
1179bbe1b32bSmrg	sv1)
1180bbe1b32bSmrg		basic_machine=sv1-cray
1181bbe1b32bSmrg		os=-unicos
1182bbe1b32bSmrg		;;
1183bbe1b32bSmrg	symmetry)
1184bbe1b32bSmrg		basic_machine=i386-sequent
1185bbe1b32bSmrg		os=-dynix
1186bbe1b32bSmrg		;;
1187bbe1b32bSmrg	t3e)
1188bbe1b32bSmrg		basic_machine=alphaev5-cray
1189bbe1b32bSmrg		os=-unicos
1190bbe1b32bSmrg		;;
1191bbe1b32bSmrg	t90)
1192bbe1b32bSmrg		basic_machine=t90-cray
1193bbe1b32bSmrg		os=-unicos
1194bbe1b32bSmrg		;;
119530f8ce46Smrg	tile*)
119634f90d55Smrg		basic_machine=$basic_machine-unknown
119730f8ce46Smrg		os=-linux-gnu
1198bbe1b32bSmrg		;;
1199bbe1b32bSmrg	tx39)
1200bbe1b32bSmrg		basic_machine=mipstx39-unknown
1201bbe1b32bSmrg		;;
1202bbe1b32bSmrg	tx39el)
1203bbe1b32bSmrg		basic_machine=mipstx39el-unknown
1204bbe1b32bSmrg		;;
1205bbe1b32bSmrg	toad1)
1206bbe1b32bSmrg		basic_machine=pdp10-xkl
1207bbe1b32bSmrg		os=-tops20
1208bbe1b32bSmrg		;;
1209bbe1b32bSmrg	tower | tower-32)
1210bbe1b32bSmrg		basic_machine=m68k-ncr
1211bbe1b32bSmrg		;;
1212bbe1b32bSmrg	tpf)
1213bbe1b32bSmrg		basic_machine=s390x-ibm
1214bbe1b32bSmrg		os=-tpf
1215bbe1b32bSmrg		;;
1216bbe1b32bSmrg	udi29k)
1217bbe1b32bSmrg		basic_machine=a29k-amd
1218bbe1b32bSmrg		os=-udi
1219bbe1b32bSmrg		;;
1220bbe1b32bSmrg	ultra3)
1221bbe1b32bSmrg		basic_machine=a29k-nyu
1222bbe1b32bSmrg		os=-sym1
1223bbe1b32bSmrg		;;
1224bbe1b32bSmrg	v810 | necv810)
1225bbe1b32bSmrg		basic_machine=v810-nec
1226bbe1b32bSmrg		os=-none
1227bbe1b32bSmrg		;;
1228bbe1b32bSmrg	vaxv)
1229bbe1b32bSmrg		basic_machine=vax-dec
1230bbe1b32bSmrg		os=-sysv
1231bbe1b32bSmrg		;;
1232bbe1b32bSmrg	vms)
1233bbe1b32bSmrg		basic_machine=vax-dec
1234bbe1b32bSmrg		os=-vms
1235bbe1b32bSmrg		;;
1236bbe1b32bSmrg	vpp*|vx|vx-*)
1237bbe1b32bSmrg		basic_machine=f301-fujitsu
1238bbe1b32bSmrg		;;
1239bbe1b32bSmrg	vxworks960)
1240bbe1b32bSmrg		basic_machine=i960-wrs
1241bbe1b32bSmrg		os=-vxworks
1242bbe1b32bSmrg		;;
1243bbe1b32bSmrg	vxworks68)
1244bbe1b32bSmrg		basic_machine=m68k-wrs
1245bbe1b32bSmrg		os=-vxworks
1246bbe1b32bSmrg		;;
1247bbe1b32bSmrg	vxworks29k)
1248bbe1b32bSmrg		basic_machine=a29k-wrs
1249bbe1b32bSmrg		os=-vxworks
1250bbe1b32bSmrg		;;
125140c5823bSmrg	wasm32)
125240c5823bSmrg		basic_machine=wasm32-unknown
125340c5823bSmrg		;;
1254bbe1b32bSmrg	w65*)
1255bbe1b32bSmrg		basic_machine=w65-wdc
1256bbe1b32bSmrg		os=-none
1257bbe1b32bSmrg		;;
1258bbe1b32bSmrg	w89k-*)
1259bbe1b32bSmrg		basic_machine=hppa1.1-winbond
1260bbe1b32bSmrg		os=-proelf
1261bbe1b32bSmrg		;;
1262bbe1b32bSmrg	xbox)
1263bbe1b32bSmrg		basic_machine=i686-pc
1264bbe1b32bSmrg		os=-mingw32
1265bbe1b32bSmrg		;;
1266bbe1b32bSmrg	xps | xps100)
1267bbe1b32bSmrg		basic_machine=xps100-honeywell
1268bbe1b32bSmrg		;;
126934f90d55Smrg	xscale-* | xscalee[bl]-*)
127034f90d55Smrg		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
127134f90d55Smrg		;;
1272bbe1b32bSmrg	ymp)
1273bbe1b32bSmrg		basic_machine=ymp-cray
1274bbe1b32bSmrg		os=-unicos
1275bbe1b32bSmrg		;;
1276bbe1b32bSmrg	z8k-*-coff)
1277bbe1b32bSmrg		basic_machine=z8k-unknown
1278bbe1b32bSmrg		os=-sim
1279bbe1b32bSmrg		;;
128030f8ce46Smrg	z80-*-coff)
128130f8ce46Smrg		basic_machine=z80-unknown
128230f8ce46Smrg		os=-sim
128330f8ce46Smrg		;;
1284bbe1b32bSmrg	none)
1285bbe1b32bSmrg		basic_machine=none-none
1286bbe1b32bSmrg		os=-none
1287bbe1b32bSmrg		;;
1288bbe1b32bSmrg
1289bbe1b32bSmrg# Here we handle the default manufacturer of certain CPU types.  It is in
1290bbe1b32bSmrg# some cases the only manufacturer, in others, it is the most popular.
1291bbe1b32bSmrg	w89k)
1292bbe1b32bSmrg		basic_machine=hppa1.1-winbond
1293bbe1b32bSmrg		;;
1294bbe1b32bSmrg	op50n)
1295bbe1b32bSmrg		basic_machine=hppa1.1-oki
1296bbe1b32bSmrg		;;
1297bbe1b32bSmrg	op60c)
1298bbe1b32bSmrg		basic_machine=hppa1.1-oki
1299bbe1b32bSmrg		;;
1300bbe1b32bSmrg	romp)
1301bbe1b32bSmrg		basic_machine=romp-ibm
1302bbe1b32bSmrg		;;
1303bbe1b32bSmrg	mmix)
1304bbe1b32bSmrg		basic_machine=mmix-knuth
1305bbe1b32bSmrg		;;
1306bbe1b32bSmrg	rs6000)
1307bbe1b32bSmrg		basic_machine=rs6000-ibm
1308bbe1b32bSmrg		;;
1309bbe1b32bSmrg	vax)
1310bbe1b32bSmrg		basic_machine=vax-dec
1311bbe1b32bSmrg		;;
1312bbe1b32bSmrg	pdp10)
1313bbe1b32bSmrg		# there are many clones, so DEC is not a safe bet
1314bbe1b32bSmrg		basic_machine=pdp10-unknown
1315bbe1b32bSmrg		;;
1316bbe1b32bSmrg	pdp11)
1317bbe1b32bSmrg		basic_machine=pdp11-dec
1318bbe1b32bSmrg		;;
1319bbe1b32bSmrg	we32k)
1320bbe1b32bSmrg		basic_machine=we32k-att
1321bbe1b32bSmrg		;;
132230f8ce46Smrg	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1323bbe1b32bSmrg		basic_machine=sh-unknown
1324bbe1b32bSmrg		;;
1325bbe1b32bSmrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1326bbe1b32bSmrg		basic_machine=sparc-sun
1327bbe1b32bSmrg		;;
1328bbe1b32bSmrg	cydra)
1329bbe1b32bSmrg		basic_machine=cydra-cydrome
1330bbe1b32bSmrg		;;
1331bbe1b32bSmrg	orion)
1332bbe1b32bSmrg		basic_machine=orion-highlevel
1333bbe1b32bSmrg		;;
1334bbe1b32bSmrg	orion105)
1335bbe1b32bSmrg		basic_machine=clipper-highlevel
1336bbe1b32bSmrg		;;
1337bbe1b32bSmrg	mac | mpw | mac-mpw)
1338bbe1b32bSmrg		basic_machine=m68k-apple
1339bbe1b32bSmrg		;;
1340bbe1b32bSmrg	pmac | pmac-mpw)
1341bbe1b32bSmrg		basic_machine=powerpc-apple
1342bbe1b32bSmrg		;;
1343bbe1b32bSmrg	*-unknown)
1344bbe1b32bSmrg		# Make sure to match an already-canonicalized machine name.
1345bbe1b32bSmrg		;;
1346bbe1b32bSmrg	*)
1347bbe1b32bSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1348bbe1b32bSmrg		exit 1
1349bbe1b32bSmrg		;;
1350bbe1b32bSmrgesac
1351bbe1b32bSmrg
1352bbe1b32bSmrg# Here we canonicalize certain aliases for manufacturers.
1353bbe1b32bSmrgcase $basic_machine in
1354bbe1b32bSmrg	*-digital*)
1355bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1356bbe1b32bSmrg		;;
1357bbe1b32bSmrg	*-commodore*)
1358bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1359bbe1b32bSmrg		;;
1360bbe1b32bSmrg	*)
1361bbe1b32bSmrg		;;
1362bbe1b32bSmrgesac
1363bbe1b32bSmrg
1364bbe1b32bSmrg# Decode manufacturer-specific aliases for certain operating systems.
1365bbe1b32bSmrg
1366bbe1b32bSmrgif [ x"$os" != x"" ]
1367bbe1b32bSmrgthen
1368bbe1b32bSmrgcase $os in
136934f90d55Smrg	# First match some system type aliases
137034f90d55Smrg	# that might get confused with valid system types.
1371bbe1b32bSmrg	# -solaris* is a basic system type, with this one exception.
137234f90d55Smrg	-auroraux)
137334f90d55Smrg		os=-auroraux
137430f8ce46Smrg		;;
1375bbe1b32bSmrg	-solaris1 | -solaris1.*)
1376bbe1b32bSmrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1377bbe1b32bSmrg		;;
1378bbe1b32bSmrg	-solaris)
1379bbe1b32bSmrg		os=-solaris2
1380bbe1b32bSmrg		;;
1381bbe1b32bSmrg	-svr4*)
1382bbe1b32bSmrg		os=-sysv4
1383bbe1b32bSmrg		;;
1384bbe1b32bSmrg	-unixware*)
1385bbe1b32bSmrg		os=-sysv4.2uw
1386bbe1b32bSmrg		;;
1387bbe1b32bSmrg	-gnu/linux*)
1388bbe1b32bSmrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1389bbe1b32bSmrg		;;
1390bbe1b32bSmrg	# First accept the basic system types.
1391bbe1b32bSmrg	# The portable systems comes first.
1392bbe1b32bSmrg	# Each alternative MUST END IN A *, to match a version number.
1393bbe1b32bSmrg	# -sysv* is not here because it comes later, after sysvr4.
1394bbe1b32bSmrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
139530f8ce46Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
139630f8ce46Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
13978f34cbf9Ssnj	      | -sym* | -kopensolaris* | -plan9* \
1398bbe1b32bSmrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
139940c5823bSmrg	      | -aos* | -aros* | -cloudabi* | -sortix* \
1400bbe1b32bSmrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1401bbe1b32bSmrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1402bbe1b32bSmrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
140340c5823bSmrg	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
1404bbe1b32bSmrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1405bbe1b32bSmrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1406bbe1b32bSmrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1407bbe1b32bSmrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
140840c5823bSmrg	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
140934f90d55Smrg	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
141040c5823bSmrg	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
14118f34cbf9Ssnj	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
141240c5823bSmrg	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
1413bbe1b32bSmrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1414bbe1b32bSmrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1415bbe1b32bSmrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1416bbe1b32bSmrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1417bbe1b32bSmrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1418bbe1b32bSmrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
141940c5823bSmrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
142040c5823bSmrg	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
1421bbe1b32bSmrg	# Remember, each alternative MUST END IN *, to match a version number.
1422bbe1b32bSmrg		;;
1423bbe1b32bSmrg	-qnx*)
1424bbe1b32bSmrg		case $basic_machine in
1425bbe1b32bSmrg		    x86-* | i*86-*)
1426bbe1b32bSmrg			;;
1427bbe1b32bSmrg		    *)
1428bbe1b32bSmrg			os=-nto$os
1429bbe1b32bSmrg			;;
1430bbe1b32bSmrg		esac
1431bbe1b32bSmrg		;;
1432bbe1b32bSmrg	-nto-qnx*)
1433bbe1b32bSmrg		;;
1434bbe1b32bSmrg	-nto*)
1435bbe1b32bSmrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1436bbe1b32bSmrg		;;
1437bbe1b32bSmrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1438bbe1b32bSmrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1439bbe1b32bSmrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1440bbe1b32bSmrg		;;
1441bbe1b32bSmrg	-mac*)
1442bbe1b32bSmrg		os=`echo $os | sed -e 's|mac|macos|'`
1443bbe1b32bSmrg		;;
1444bbe1b32bSmrg	-linux-dietlibc)
1445bbe1b32bSmrg		os=-linux-dietlibc
1446bbe1b32bSmrg		;;
1447bbe1b32bSmrg	-linux*)
1448bbe1b32bSmrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1449bbe1b32bSmrg		;;
1450bbe1b32bSmrg	-sunos5*)
1451bbe1b32bSmrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1452bbe1b32bSmrg		;;
1453bbe1b32bSmrg	-sunos6*)
1454bbe1b32bSmrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1455bbe1b32bSmrg		;;
1456bbe1b32bSmrg	-opened*)
1457bbe1b32bSmrg		os=-openedition
1458bbe1b32bSmrg		;;
145934f90d55Smrg	-os400*)
1460bbe1b32bSmrg		os=-os400
1461bbe1b32bSmrg		;;
1462bbe1b32bSmrg	-wince*)
1463bbe1b32bSmrg		os=-wince
1464bbe1b32bSmrg		;;
1465bbe1b32bSmrg	-osfrose*)
1466bbe1b32bSmrg		os=-osfrose
1467bbe1b32bSmrg		;;
1468bbe1b32bSmrg	-osf*)
1469bbe1b32bSmrg		os=-osf
1470bbe1b32bSmrg		;;
1471bbe1b32bSmrg	-utek*)
1472bbe1b32bSmrg		os=-bsd
1473bbe1b32bSmrg		;;
1474bbe1b32bSmrg	-dynix*)
1475bbe1b32bSmrg		os=-bsd
1476bbe1b32bSmrg		;;
1477bbe1b32bSmrg	-acis*)
1478bbe1b32bSmrg		os=-aos
1479bbe1b32bSmrg		;;
1480bbe1b32bSmrg	-atheos*)
1481bbe1b32bSmrg		os=-atheos
1482bbe1b32bSmrg		;;
1483bbe1b32bSmrg	-syllable*)
1484bbe1b32bSmrg		os=-syllable
1485bbe1b32bSmrg		;;
1486bbe1b32bSmrg	-386bsd)
1487bbe1b32bSmrg		os=-bsd
1488bbe1b32bSmrg		;;
1489bbe1b32bSmrg	-ctix* | -uts*)
1490bbe1b32bSmrg		os=-sysv
1491bbe1b32bSmrg		;;
1492bbe1b32bSmrg	-nova*)
1493bbe1b32bSmrg		os=-rtmk-nova
1494bbe1b32bSmrg		;;
1495bbe1b32bSmrg	-ns2 )
1496bbe1b32bSmrg		os=-nextstep2
1497bbe1b32bSmrg		;;
1498bbe1b32bSmrg	-nsk*)
1499bbe1b32bSmrg		os=-nsk
1500bbe1b32bSmrg		;;
1501bbe1b32bSmrg	# Preserve the version number of sinix5.
1502bbe1b32bSmrg	-sinix5.*)
1503bbe1b32bSmrg		os=`echo $os | sed -e 's|sinix|sysv|'`
1504bbe1b32bSmrg		;;
1505bbe1b32bSmrg	-sinix*)
1506bbe1b32bSmrg		os=-sysv4
1507bbe1b32bSmrg		;;
150834f90d55Smrg	-tpf*)
1509bbe1b32bSmrg		os=-tpf
1510bbe1b32bSmrg		;;
1511bbe1b32bSmrg	-triton*)
1512bbe1b32bSmrg		os=-sysv3
1513bbe1b32bSmrg		;;
1514bbe1b32bSmrg	-oss*)
1515bbe1b32bSmrg		os=-sysv3
1516bbe1b32bSmrg		;;
1517bbe1b32bSmrg	-svr4)
1518bbe1b32bSmrg		os=-sysv4
1519bbe1b32bSmrg		;;
1520bbe1b32bSmrg	-svr3)
1521bbe1b32bSmrg		os=-sysv3
1522bbe1b32bSmrg		;;
1523bbe1b32bSmrg	-sysvr4)
1524bbe1b32bSmrg		os=-sysv4
1525bbe1b32bSmrg		;;
1526bbe1b32bSmrg	# This must come after -sysvr4.
1527bbe1b32bSmrg	-sysv*)
1528bbe1b32bSmrg		;;
1529bbe1b32bSmrg	-ose*)
1530bbe1b32bSmrg		os=-ose
1531bbe1b32bSmrg		;;
1532bbe1b32bSmrg	-es1800*)
1533bbe1b32bSmrg		os=-ose
1534bbe1b32bSmrg		;;
1535bbe1b32bSmrg	-xenix)
1536bbe1b32bSmrg		os=-xenix
1537bbe1b32bSmrg		;;
1538bbe1b32bSmrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1539bbe1b32bSmrg		os=-mint
1540bbe1b32bSmrg		;;
1541bbe1b32bSmrg	-aros*)
1542bbe1b32bSmrg		os=-aros
1543bbe1b32bSmrg		;;
1544bbe1b32bSmrg	-zvmoe)
1545bbe1b32bSmrg		os=-zvmoe
1546bbe1b32bSmrg		;;
154730f8ce46Smrg	-dicos*)
154830f8ce46Smrg		os=-dicos
154930f8ce46Smrg		;;
155034f90d55Smrg	-nacl*)
155134f90d55Smrg		;;
155240c5823bSmrg	-ios)
155340c5823bSmrg		;;
1554bbe1b32bSmrg	-none)
1555bbe1b32bSmrg		;;
1556bbe1b32bSmrg	*)
1557bbe1b32bSmrg		# Get rid of the `-' at the beginning of $os.
1558bbe1b32bSmrg		os=`echo $os | sed 's/[^-]*-//'`
1559bbe1b32bSmrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1560bbe1b32bSmrg		exit 1
1561bbe1b32bSmrg		;;
1562bbe1b32bSmrgesac
1563bbe1b32bSmrgelse
1564bbe1b32bSmrg
1565bbe1b32bSmrg# Here we handle the default operating systems that come with various machines.
1566bbe1b32bSmrg# The value should be what the vendor currently ships out the door with their
1567bbe1b32bSmrg# machine or put another way, the most popular os provided with the machine.
1568bbe1b32bSmrg
1569bbe1b32bSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
1570bbe1b32bSmrg# "-sun"), then you have to tell the case statement up towards the top
1571bbe1b32bSmrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
1572bbe1b32bSmrg# will signal an error saying that MANUFACTURER isn't an operating
1573bbe1b32bSmrg# system, and we'll never get to this point.
1574bbe1b32bSmrg
1575bbe1b32bSmrgcase $basic_machine in
157634f90d55Smrg	score-*)
1577bbe1b32bSmrg		os=-elf
1578bbe1b32bSmrg		;;
157934f90d55Smrg	spu-*)
1580bbe1b32bSmrg		os=-elf
1581bbe1b32bSmrg		;;
1582bbe1b32bSmrg	*-acorn)
1583bbe1b32bSmrg		os=-riscix1.2
1584bbe1b32bSmrg		;;
1585bbe1b32bSmrg	arm*-rebel)
1586bbe1b32bSmrg		os=-linux
1587bbe1b32bSmrg		;;
1588bbe1b32bSmrg	arm*-semi)
1589bbe1b32bSmrg		os=-aout
1590bbe1b32bSmrg		;;
159134f90d55Smrg	c4x-* | tic4x-*)
159234f90d55Smrg		os=-coff
1593bbe1b32bSmrg		;;
15948f34cbf9Ssnj	c8051-*)
15958f34cbf9Ssnj		os=-elf
15968f34cbf9Ssnj		;;
15978f34cbf9Ssnj	hexagon-*)
15988f34cbf9Ssnj		os=-elf
15998f34cbf9Ssnj		;;
160030f8ce46Smrg	tic54x-*)
160130f8ce46Smrg		os=-coff
160230f8ce46Smrg		;;
160330f8ce46Smrg	tic55x-*)
160430f8ce46Smrg		os=-coff
160530f8ce46Smrg		;;
160630f8ce46Smrg	tic6x-*)
160730f8ce46Smrg		os=-coff
160830f8ce46Smrg		;;
1609bbe1b32bSmrg	# This must come before the *-dec entry.
1610bbe1b32bSmrg	pdp10-*)
1611bbe1b32bSmrg		os=-tops20
1612bbe1b32bSmrg		;;
1613bbe1b32bSmrg	pdp11-*)
1614bbe1b32bSmrg		os=-none
1615bbe1b32bSmrg		;;
1616bbe1b32bSmrg	*-dec | vax-*)
1617bbe1b32bSmrg		os=-ultrix4.2
1618bbe1b32bSmrg		;;
1619bbe1b32bSmrg	m68*-apollo)
1620bbe1b32bSmrg		os=-domain
1621bbe1b32bSmrg		;;
1622bbe1b32bSmrg	i386-sun)
1623bbe1b32bSmrg		os=-sunos4.0.2
1624bbe1b32bSmrg		;;
1625bbe1b32bSmrg	m68000-sun)
1626bbe1b32bSmrg		os=-sunos3
1627bbe1b32bSmrg		;;
1628bbe1b32bSmrg	m68*-cisco)
1629bbe1b32bSmrg		os=-aout
1630bbe1b32bSmrg		;;
163134f90d55Smrg	mep-*)
163230f8ce46Smrg		os=-elf
163330f8ce46Smrg		;;
1634bbe1b32bSmrg	mips*-cisco)
1635bbe1b32bSmrg		os=-elf
1636bbe1b32bSmrg		;;
1637bbe1b32bSmrg	mips*-*)
1638bbe1b32bSmrg		os=-elf
1639bbe1b32bSmrg		;;
1640bbe1b32bSmrg	or32-*)
1641bbe1b32bSmrg		os=-coff
1642bbe1b32bSmrg		;;
1643bbe1b32bSmrg	*-tti)	# must be before sparc entry or we get the wrong os.
1644bbe1b32bSmrg		os=-sysv3
1645bbe1b32bSmrg		;;
1646bbe1b32bSmrg	sparc-* | *-sun)
1647bbe1b32bSmrg		os=-sunos4.1.1
1648bbe1b32bSmrg		;;
164940c5823bSmrg	pru-*)
165040c5823bSmrg		os=-elf
165140c5823bSmrg		;;
1652bbe1b32bSmrg	*-be)
1653bbe1b32bSmrg		os=-beos
1654bbe1b32bSmrg		;;
1655bbe1b32bSmrg	*-haiku)
1656bbe1b32bSmrg		os=-haiku
1657bbe1b32bSmrg		;;
1658bbe1b32bSmrg	*-ibm)
1659bbe1b32bSmrg		os=-aix
1660bbe1b32bSmrg		;;
166134f90d55Smrg	*-knuth)
1662bbe1b32bSmrg		os=-mmixware
1663bbe1b32bSmrg		;;
1664bbe1b32bSmrg	*-wec)
1665bbe1b32bSmrg		os=-proelf
1666bbe1b32bSmrg		;;
1667bbe1b32bSmrg	*-winbond)
1668bbe1b32bSmrg		os=-proelf
1669bbe1b32bSmrg		;;
1670bbe1b32bSmrg	*-oki)
1671bbe1b32bSmrg		os=-proelf
1672bbe1b32bSmrg		;;
1673bbe1b32bSmrg	*-hp)
1674bbe1b32bSmrg		os=-hpux
1675bbe1b32bSmrg		;;
1676bbe1b32bSmrg	*-hitachi)
1677bbe1b32bSmrg		os=-hiux
1678bbe1b32bSmrg		;;
1679bbe1b32bSmrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1680bbe1b32bSmrg		os=-sysv
1681bbe1b32bSmrg		;;
1682bbe1b32bSmrg	*-cbm)
1683bbe1b32bSmrg		os=-amigaos
1684bbe1b32bSmrg		;;
1685bbe1b32bSmrg	*-dg)
1686bbe1b32bSmrg		os=-dgux
1687bbe1b32bSmrg		;;
1688bbe1b32bSmrg	*-dolphin)
1689bbe1b32bSmrg		os=-sysv3
1690bbe1b32bSmrg		;;
1691bbe1b32bSmrg	m68k-ccur)
1692bbe1b32bSmrg		os=-rtu
1693bbe1b32bSmrg		;;
1694bbe1b32bSmrg	m88k-omron*)
1695bbe1b32bSmrg		os=-luna
1696bbe1b32bSmrg		;;
1697bbe1b32bSmrg	*-next )
1698bbe1b32bSmrg		os=-nextstep
1699bbe1b32bSmrg		;;
1700bbe1b32bSmrg	*-sequent)
1701bbe1b32bSmrg		os=-ptx
1702bbe1b32bSmrg		;;
1703bbe1b32bSmrg	*-crds)
1704bbe1b32bSmrg		os=-unos
1705bbe1b32bSmrg		;;
1706bbe1b32bSmrg	*-ns)
1707bbe1b32bSmrg		os=-genix
1708bbe1b32bSmrg		;;
1709bbe1b32bSmrg	i370-*)
1710bbe1b32bSmrg		os=-mvs
1711bbe1b32bSmrg		;;
1712bbe1b32bSmrg	*-next)
1713bbe1b32bSmrg		os=-nextstep3
1714bbe1b32bSmrg		;;
1715bbe1b32bSmrg	*-gould)
1716bbe1b32bSmrg		os=-sysv
1717bbe1b32bSmrg		;;
1718bbe1b32bSmrg	*-highlevel)
1719bbe1b32bSmrg		os=-bsd
1720bbe1b32bSmrg		;;
1721bbe1b32bSmrg	*-encore)
1722bbe1b32bSmrg		os=-bsd
1723bbe1b32bSmrg		;;
1724bbe1b32bSmrg	*-sgi)
1725bbe1b32bSmrg		os=-irix
1726bbe1b32bSmrg		;;
1727bbe1b32bSmrg	*-siemens)
1728bbe1b32bSmrg		os=-sysv4
1729bbe1b32bSmrg		;;
1730bbe1b32bSmrg	*-masscomp)
1731bbe1b32bSmrg		os=-rtu
1732bbe1b32bSmrg		;;
1733bbe1b32bSmrg	f30[01]-fujitsu | f700-fujitsu)
1734bbe1b32bSmrg		os=-uxpv
1735bbe1b32bSmrg		;;
1736bbe1b32bSmrg	*-rom68k)
1737bbe1b32bSmrg		os=-coff
1738bbe1b32bSmrg		;;
1739bbe1b32bSmrg	*-*bug)
1740bbe1b32bSmrg		os=-coff
1741bbe1b32bSmrg		;;
1742bbe1b32bSmrg	*-apple)
1743bbe1b32bSmrg		os=-macos
1744bbe1b32bSmrg		;;
1745bbe1b32bSmrg	*-atari*)
1746bbe1b32bSmrg		os=-mint
1747bbe1b32bSmrg		;;
1748bbe1b32bSmrg	*)
1749bbe1b32bSmrg		os=-none
1750bbe1b32bSmrg		;;
1751bbe1b32bSmrgesac
1752bbe1b32bSmrgfi
1753bbe1b32bSmrg
1754bbe1b32bSmrg# Here we handle the case where we know the os, and the CPU type, but not the
1755bbe1b32bSmrg# manufacturer.  We pick the logical manufacturer.
1756bbe1b32bSmrgvendor=unknown
1757bbe1b32bSmrgcase $basic_machine in
1758bbe1b32bSmrg	*-unknown)
1759bbe1b32bSmrg		case $os in
1760bbe1b32bSmrg			-riscix*)
1761bbe1b32bSmrg				vendor=acorn
1762bbe1b32bSmrg				;;
1763bbe1b32bSmrg			-sunos*)
1764bbe1b32bSmrg				vendor=sun
1765bbe1b32bSmrg				;;
176630f8ce46Smrg			-cnk*|-aix*)
1767bbe1b32bSmrg				vendor=ibm
1768bbe1b32bSmrg				;;
1769bbe1b32bSmrg			-beos*)
1770bbe1b32bSmrg				vendor=be
1771bbe1b32bSmrg				;;
1772bbe1b32bSmrg			-hpux*)
1773bbe1b32bSmrg				vendor=hp
1774bbe1b32bSmrg				;;
1775bbe1b32bSmrg			-mpeix*)
1776bbe1b32bSmrg				vendor=hp
1777bbe1b32bSmrg				;;
1778bbe1b32bSmrg			-hiux*)
1779bbe1b32bSmrg				vendor=hitachi
1780bbe1b32bSmrg				;;
1781bbe1b32bSmrg			-unos*)
1782bbe1b32bSmrg				vendor=crds
1783bbe1b32bSmrg				;;
1784bbe1b32bSmrg			-dgux*)
1785bbe1b32bSmrg				vendor=dg
1786bbe1b32bSmrg				;;
1787bbe1b32bSmrg			-luna*)
1788bbe1b32bSmrg				vendor=omron
1789bbe1b32bSmrg				;;
1790bbe1b32bSmrg			-genix*)
1791bbe1b32bSmrg				vendor=ns
1792bbe1b32bSmrg				;;
1793bbe1b32bSmrg			-mvs* | -opened*)
1794bbe1b32bSmrg				vendor=ibm
1795bbe1b32bSmrg				;;
1796bbe1b32bSmrg			-os400*)
1797bbe1b32bSmrg				vendor=ibm
1798bbe1b32bSmrg				;;
1799bbe1b32bSmrg			-ptx*)
1800bbe1b32bSmrg				vendor=sequent
1801bbe1b32bSmrg				;;
1802bbe1b32bSmrg			-tpf*)
1803bbe1b32bSmrg				vendor=ibm
1804bbe1b32bSmrg				;;
1805bbe1b32bSmrg			-vxsim* | -vxworks* | -windiss*)
1806bbe1b32bSmrg				vendor=wrs
1807bbe1b32bSmrg				;;
1808bbe1b32bSmrg			-aux*)
1809bbe1b32bSmrg				vendor=apple
1810bbe1b32bSmrg				;;
1811bbe1b32bSmrg			-hms*)
1812bbe1b32bSmrg				vendor=hitachi
1813bbe1b32bSmrg				;;
1814bbe1b32bSmrg			-mpw* | -macos*)
1815bbe1b32bSmrg				vendor=apple
1816bbe1b32bSmrg				;;
1817bbe1b32bSmrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1818bbe1b32bSmrg				vendor=atari
1819bbe1b32bSmrg				;;
1820bbe1b32bSmrg			-vos*)
1821bbe1b32bSmrg				vendor=stratus
1822bbe1b32bSmrg				;;
1823bbe1b32bSmrg		esac
1824bbe1b32bSmrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1825bbe1b32bSmrg		;;
1826bbe1b32bSmrgesac
1827bbe1b32bSmrg
1828bbe1b32bSmrgecho $basic_machine$os
1829bbe1b32bSmrgexit
1830bbe1b32bSmrg
1831bbe1b32bSmrg# Local variables:
1832bbe1b32bSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1833bbe1b32bSmrg# time-stamp-start: "timestamp='"
1834bbe1b32bSmrg# time-stamp-format: "%:y-%02m-%02d"
1835bbe1b32bSmrg# time-stamp-end: "'"
1836bbe1b32bSmrg# End:
1837