config.sub revision 224014
1217309Snwhitehorn#! /bin/sh
2217309Snwhitehorn# Configuration validation subroutine script.
3217309Snwhitehorn#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4217309Snwhitehorn#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5224014Snwhitehorn#   2011 Free Software Foundation, Inc.
6217309Snwhitehorn
7224014Snwhitehorntimestamp='2011-04-01'
8217309Snwhitehorn
9217309Snwhitehorn# This file is (in principle) common to ALL GNU software.
10217309Snwhitehorn# The presence of a machine in this file suggests that SOME GNU software
11217309Snwhitehorn# can handle that machine.  It does not imply ALL GNU software can.
12217309Snwhitehorn#
13217309Snwhitehorn# This file is free software; you can redistribute it and/or modify
14217309Snwhitehorn# it under the terms of the GNU General Public License as published by
15217309Snwhitehorn# the Free Software Foundation; either version 2 of the License, or
16217309Snwhitehorn# (at your option) any later version.
17217309Snwhitehorn#
18217309Snwhitehorn# This program is distributed in the hope that it will be useful,
19217309Snwhitehorn# but WITHOUT ANY WARRANTY; without even the implied warranty of
20217309Snwhitehorn# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21217309Snwhitehorn# GNU General Public License for more details.
22217309Snwhitehorn#
23217309Snwhitehorn# You should have received a copy of the GNU General Public License
24217309Snwhitehorn# along with this program; if not, write to the Free Software
25217309Snwhitehorn# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
26217309Snwhitehorn# 02110-1301, USA.
27217309Snwhitehorn#
28217309Snwhitehorn# As a special exception to the GNU General Public License, if you
29217309Snwhitehorn# distribute this file as part of a program that contains a
30217309Snwhitehorn# configuration script generated by Autoconf, you may include it under
31217309Snwhitehorn# the same distribution terms that you use for the rest of that program.
32217309Snwhitehorn
33217309Snwhitehorn
34217309Snwhitehorn# Please send patches to <config-patches@gnu.org>.  Submit a context
35217309Snwhitehorn# diff and a properly formatted GNU ChangeLog entry.
36217309Snwhitehorn#
37217309Snwhitehorn# Configuration subroutine to validate and canonicalize a configuration type.
38217309Snwhitehorn# Supply the specified configuration type as an argument.
39217309Snwhitehorn# If it is invalid, we print an error message on stderr and exit with code 1.
40217309Snwhitehorn# Otherwise, we print the canonical config type on stdout and succeed.
41217309Snwhitehorn
42217309Snwhitehorn# You can get the latest version of this script from:
43217309Snwhitehorn# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
44217309Snwhitehorn
45217309Snwhitehorn# This file is supposed to be the same for all GNU packages
46217309Snwhitehorn# and recognize all the CPU types, system types and aliases
47217309Snwhitehorn# that are meaningful with *any* GNU software.
48217309Snwhitehorn# Each package is responsible for reporting which valid configurations
49217309Snwhitehorn# it does not support.  The user should be able to distinguish
50217309Snwhitehorn# a failure to support a valid configuration from a meaningless
51217309Snwhitehorn# configuration.
52217309Snwhitehorn
53217309Snwhitehorn# The goal of this file is to map all the various variations of a given
54217309Snwhitehorn# machine specification into a single specification in the form:
55217309Snwhitehorn#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
56217309Snwhitehorn# or in some cases, the newer four-part form:
57217309Snwhitehorn#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
58217309Snwhitehorn# It is wrong to echo any other type of specification.
59217309Snwhitehorn
60217309Snwhitehornme=`echo "$0" | sed -e 's,.*/,,'`
61217309Snwhitehorn
62217309Snwhitehornusage="\
63217309SnwhitehornUsage: $0 [OPTION] CPU-MFR-OPSYS
64217309Snwhitehorn       $0 [OPTION] ALIAS
65217309Snwhitehorn
66217309SnwhitehornCanonicalize a configuration name.
67217309Snwhitehorn
68217309SnwhitehornOperation modes:
69217309Snwhitehorn  -h, --help         print this help, then exit
70217309Snwhitehorn  -t, --time-stamp   print date of last modification, then exit
71217309Snwhitehorn  -v, --version      print version number, then exit
72217309Snwhitehorn
73217309SnwhitehornReport bugs and patches to <config-patches@gnu.org>."
74217309Snwhitehorn
75217309Snwhitehornversion="\
76217309SnwhitehornGNU config.sub ($timestamp)
77217309Snwhitehorn
78217309SnwhitehornCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
79224014Snwhitehorn2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
80224014SnwhitehornFree Software Foundation, Inc.
81217309Snwhitehorn
82217309SnwhitehornThis is free software; see the source for copying conditions.  There is NO
83217309Snwhitehornwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
84217309Snwhitehorn
85217309Snwhitehornhelp="
86217309SnwhitehornTry \`$me --help' for more information."
87217309Snwhitehorn
88217309Snwhitehorn# Parse command line
89217309Snwhitehornwhile test $# -gt 0 ; do
90217309Snwhitehorn  case $1 in
91217309Snwhitehorn    --time-stamp | --time* | -t )
92217309Snwhitehorn       echo "$timestamp" ; exit ;;
93217309Snwhitehorn    --version | -v )
94217309Snwhitehorn       echo "$version" ; exit ;;
95217309Snwhitehorn    --help | --h* | -h )
96217309Snwhitehorn       echo "$usage"; exit ;;
97217309Snwhitehorn    -- )     # Stop option processing
98217309Snwhitehorn       shift; break ;;
99217309Snwhitehorn    - )	# Use stdin as input.
100217309Snwhitehorn       break ;;
101217309Snwhitehorn    -* )
102217309Snwhitehorn       echo "$me: invalid option $1$help"
103217309Snwhitehorn       exit 1 ;;
104217309Snwhitehorn
105217309Snwhitehorn    *local*)
106217309Snwhitehorn       # First pass through any local machine types.
107217309Snwhitehorn       echo $1
108217309Snwhitehorn       exit ;;
109217309Snwhitehorn
110217309Snwhitehorn    * )
111217309Snwhitehorn       break ;;
112217309Snwhitehorn  esac
113217309Snwhitehorndone
114217309Snwhitehorn
115217309Snwhitehorncase $# in
116217309Snwhitehorn 0) echo "$me: missing argument$help" >&2
117217309Snwhitehorn    exit 1;;
118217309Snwhitehorn 1) ;;
119217309Snwhitehorn *) echo "$me: too many arguments$help" >&2
120217309Snwhitehorn    exit 1;;
121217309Snwhitehornesac
122217309Snwhitehorn
123217309Snwhitehorn# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
124217309Snwhitehorn# Here we must recognize all the valid KERNEL-OS combinations.
125217309Snwhitehornmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
126217309Snwhitehorncase $maybe_os in
127220749Snwhitehorn  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
128220749Snwhitehorn  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
129220749Snwhitehorn  knetbsd*-gnu* | netbsd*-gnu* | \
130217309Snwhitehorn  kopensolaris*-gnu* | \
131217309Snwhitehorn  storm-chaos* | os2-emx* | rtmk-nova*)
132217309Snwhitehorn    os=-$maybe_os
133217309Snwhitehorn    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
134217309Snwhitehorn    ;;
135217309Snwhitehorn  *)
136217309Snwhitehorn    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
137217309Snwhitehorn    if [ $basic_machine != $1 ]
138217309Snwhitehorn    then os=`echo $1 | sed 's/.*-/-/'`
139217309Snwhitehorn    else os=; fi
140217309Snwhitehorn    ;;
141217309Snwhitehornesac
142217309Snwhitehorn
143217309Snwhitehorn### Let's recognize common machines as not being operating systems so
144217309Snwhitehorn### that things like config.sub decstation-3100 work.  We also
145217309Snwhitehorn### recognize some manufacturers as not being operating systems, so we
146217309Snwhitehorn### can provide default operating systems below.
147217309Snwhitehorncase $os in
148217309Snwhitehorn	-sun*os*)
149217309Snwhitehorn		# Prevent following clause from handling this invalid input.
150217309Snwhitehorn		;;
151217309Snwhitehorn	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
152217309Snwhitehorn	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
153217309Snwhitehorn	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
154217309Snwhitehorn	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
155217309Snwhitehorn	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
156217309Snwhitehorn	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
157217309Snwhitehorn	-apple | -axis | -knuth | -cray | -microblaze)
158217309Snwhitehorn		os=
159217309Snwhitehorn		basic_machine=$1
160217309Snwhitehorn		;;
161220749Snwhitehorn	-bluegene*)
162220749Snwhitehorn		os=-cnk
163217309Snwhitehorn		;;
164217309Snwhitehorn	-sim | -cisco | -oki | -wec | -winbond)
165217309Snwhitehorn		os=
166217309Snwhitehorn		basic_machine=$1
167217309Snwhitehorn		;;
168217309Snwhitehorn	-scout)
169217309Snwhitehorn		;;
170217309Snwhitehorn	-wrs)
171217309Snwhitehorn		os=-vxworks
172217309Snwhitehorn		basic_machine=$1
173217309Snwhitehorn		;;
174217309Snwhitehorn	-chorusos*)
175217309Snwhitehorn		os=-chorusos
176217309Snwhitehorn		basic_machine=$1
177217309Snwhitehorn		;;
178224014Snwhitehorn	-chorusrdb)
179224014Snwhitehorn		os=-chorusrdb
180217309Snwhitehorn		basic_machine=$1
181224014Snwhitehorn		;;
182217309Snwhitehorn	-hiux*)
183217309Snwhitehorn		os=-hiuxwe2
184217309Snwhitehorn		;;
185217309Snwhitehorn	-sco6)
186217309Snwhitehorn		os=-sco5v6
187217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
188217309Snwhitehorn		;;
189217309Snwhitehorn	-sco5)
190217309Snwhitehorn		os=-sco3.2v5
191217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
192217309Snwhitehorn		;;
193217309Snwhitehorn	-sco4)
194217309Snwhitehorn		os=-sco3.2v4
195217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
196217309Snwhitehorn		;;
197217309Snwhitehorn	-sco3.2.[4-9]*)
198217309Snwhitehorn		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
199217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
200217309Snwhitehorn		;;
201217309Snwhitehorn	-sco3.2v[4-9]*)
202217309Snwhitehorn		# Don't forget version if it is 3.2v4 or newer.
203217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
204217309Snwhitehorn		;;
205217309Snwhitehorn	-sco5v6*)
206217309Snwhitehorn		# Don't forget version if it is 3.2v4 or newer.
207217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
208217309Snwhitehorn		;;
209217309Snwhitehorn	-sco*)
210217309Snwhitehorn		os=-sco3.2v2
211217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
212217309Snwhitehorn		;;
213217309Snwhitehorn	-udk*)
214217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
215217309Snwhitehorn		;;
216217309Snwhitehorn	-isc)
217217309Snwhitehorn		os=-isc2.2
218217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
219217309Snwhitehorn		;;
220217309Snwhitehorn	-clix*)
221217309Snwhitehorn		basic_machine=clipper-intergraph
222217309Snwhitehorn		;;
223217309Snwhitehorn	-isc*)
224217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
225217309Snwhitehorn		;;
226217309Snwhitehorn	-lynx*)
227217309Snwhitehorn		os=-lynxos
228217309Snwhitehorn		;;
229217309Snwhitehorn	-ptx*)
230217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
231217309Snwhitehorn		;;
232217309Snwhitehorn	-windowsnt*)
233217309Snwhitehorn		os=`echo $os | sed -e 's/windowsnt/winnt/'`
234217309Snwhitehorn		;;
235217309Snwhitehorn	-psos*)
236217309Snwhitehorn		os=-psos
237217309Snwhitehorn		;;
238217309Snwhitehorn	-mint | -mint[0-9]*)
239217309Snwhitehorn		basic_machine=m68k-atari
240217309Snwhitehorn		os=-mint
241217309Snwhitehorn		;;
242217309Snwhitehornesac
243217309Snwhitehorn
244217309Snwhitehorn# Decode aliases for certain CPU-COMPANY combinations.
245217309Snwhitehorncase $basic_machine in
246217309Snwhitehorn	# Recognize the basic CPU types without company name.
247217309Snwhitehorn	# Some are omitted here because they have special meanings below.
248217309Snwhitehorn	1750a | 580 \
249217309Snwhitehorn	| a29k \
250217309Snwhitehorn	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
251217309Snwhitehorn	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
252217309Snwhitehorn	| am33_2.0 \
253217309Snwhitehorn	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
254217309Snwhitehorn	| bfin \
255217309Snwhitehorn	| c4x | clipper \
256217309Snwhitehorn	| d10v | d30v | dlx | dsp16xx \
257217309Snwhitehorn	| fido | fr30 | frv \
258217309Snwhitehorn	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
259217309Snwhitehorn	| i370 | i860 | i960 | ia64 \
260217309Snwhitehorn	| ip2k | iq2000 \
261217309Snwhitehorn	| lm32 \
262217309Snwhitehorn	| m32c | m32r | m32rle | m68000 | m68k | m88k \
263217309Snwhitehorn	| maxq | mb | microblaze | mcore | mep | metag \
264217309Snwhitehorn	| mips | mipsbe | mipseb | mipsel | mipsle \
265217309Snwhitehorn	| mips16 \
266217309Snwhitehorn	| mips64 | mips64el \
267217309Snwhitehorn	| mips64octeon | mips64octeonel \
268217309Snwhitehorn	| mips64orion | mips64orionel \
269217309Snwhitehorn	| mips64r5900 | mips64r5900el \
270217309Snwhitehorn	| mips64vr | mips64vrel \
271217309Snwhitehorn	| mips64vr4100 | mips64vr4100el \
272217309Snwhitehorn	| mips64vr4300 | mips64vr4300el \
273217309Snwhitehorn	| mips64vr5000 | mips64vr5000el \
274217309Snwhitehorn	| mips64vr5900 | mips64vr5900el \
275217309Snwhitehorn	| mipsisa32 | mipsisa32el \
276217309Snwhitehorn	| mipsisa32r2 | mipsisa32r2el \
277217309Snwhitehorn	| mipsisa64 | mipsisa64el \
278217309Snwhitehorn	| mipsisa64r2 | mipsisa64r2el \
279217309Snwhitehorn	| mipsisa64sb1 | mipsisa64sb1el \
280217309Snwhitehorn	| mipsisa64sr71k | mipsisa64sr71kel \
281217309Snwhitehorn	| mipstx39 | mipstx39el \
282217309Snwhitehorn	| mn10200 | mn10300 \
283217309Snwhitehorn	| moxie \
284217309Snwhitehorn	| mt \
285217309Snwhitehorn	| msp430 \
286224014Snwhitehorn	| nds32 | nds32le | nds32be \
287217309Snwhitehorn	| nios | nios2 \
288217309Snwhitehorn	| ns16k | ns32k \
289224014Snwhitehorn	| open8 \
290217309Snwhitehorn	| or32 \
291217309Snwhitehorn	| pdp10 | pdp11 | pj | pjl \
292224014Snwhitehorn	| powerpc | powerpc64 | powerpc64le | powerpcle \
293217309Snwhitehorn	| pyramid \
294217309Snwhitehorn	| rx \
295217309Snwhitehorn	| score \
296217309Snwhitehorn	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
297217309Snwhitehorn	| sh64 | sh64le \
298217309Snwhitehorn	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
299217309Snwhitehorn	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
300224014Snwhitehorn	| spu \
301224014Snwhitehorn	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
302217309Snwhitehorn	| ubicom32 \
303217309Snwhitehorn	| v850 | v850e \
304217309Snwhitehorn	| we32k \
305224014Snwhitehorn	| x86 | xc16x | xstormy16 | xtensa \
306217309Snwhitehorn	| z8k | z80)
307217309Snwhitehorn		basic_machine=$basic_machine-unknown
308217309Snwhitehorn		;;
309220749Snwhitehorn	c54x)
310220749Snwhitehorn		basic_machine=tic54x-unknown
311220749Snwhitehorn		;;
312220749Snwhitehorn	c55x)
313220749Snwhitehorn		basic_machine=tic55x-unknown
314220749Snwhitehorn		;;
315220749Snwhitehorn	c6x)
316220749Snwhitehorn		basic_machine=tic6x-unknown
317220749Snwhitehorn		;;
318217309Snwhitehorn	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
319217309Snwhitehorn		# Motorola 68HC11/12.
320217309Snwhitehorn		basic_machine=$basic_machine-unknown
321217309Snwhitehorn		os=-none
322217309Snwhitehorn		;;
323217309Snwhitehorn	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
324217309Snwhitehorn		;;
325217309Snwhitehorn	ms1)
326217309Snwhitehorn		basic_machine=mt-unknown
327217309Snwhitehorn		;;
328224014Snwhitehorn	strongarm | thumb | xscale)
329224014Snwhitehorn		basic_machine=arm-unknown
330224014Snwhitehorn		;;
331224014Snwhitehorn	xscaleeb)
332224014Snwhitehorn		basic_machine=armeb-unknown
333224014Snwhitehorn		;;
334224014Snwhitehorn	xscaleel)
335224014Snwhitehorn		basic_machine=armel-unknown
336224014Snwhitehorn		;;
337217309Snwhitehorn	# We use `pc' rather than `unknown'
338217309Snwhitehorn	# because (1) that's what they normally are, and
339217309Snwhitehorn	# (2) the word "unknown" tends to confuse beginning users.
340217309Snwhitehorn	i*86 | x86_64)
341220749Snwhitehorn		basic_machine=$basic_machine-pc
342220749Snwhitehorn		;;
343217309Snwhitehorn	# Object if more than one company name word.
344217309Snwhitehorn	*-*-*)
345217309Snwhitehorn		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
346217309Snwhitehorn		exit 1
347217309Snwhitehorn		;;
348217309Snwhitehorn	# Recognize the basic CPU types with company name.
349217309Snwhitehorn	580-* \
350217309Snwhitehorn	| a29k-* \
351217309Snwhitehorn	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
352217309Snwhitehorn	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
353217309Snwhitehorn	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
354217309Snwhitehorn	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
355217309Snwhitehorn	| avr-* | avr32-* \
356217309Snwhitehorn	| bfin-* | bs2000-* \
357220749Snwhitehorn	| c[123]* | c30-* | [cjt]90-* | c4x-* \
358217309Snwhitehorn	| clipper-* | craynv-* | cydra-* \
359217309Snwhitehorn	| d10v-* | d30v-* | dlx-* \
360217309Snwhitehorn	| elxsi-* \
361217309Snwhitehorn	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
362217309Snwhitehorn	| h8300-* | h8500-* \
363217309Snwhitehorn	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
364217309Snwhitehorn	| i*86-* | i860-* | i960-* | ia64-* \
365217309Snwhitehorn	| ip2k-* | iq2000-* \
366217309Snwhitehorn	| lm32-* \
367217309Snwhitehorn	| m32c-* | m32r-* | m32rle-* \
368217309Snwhitehorn	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
369217309Snwhitehorn	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
370217309Snwhitehorn	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
371217309Snwhitehorn	| mips16-* \
372217309Snwhitehorn	| mips64-* | mips64el-* \
373217309Snwhitehorn	| mips64octeon-* | mips64octeonel-* \
374217309Snwhitehorn	| mips64orion-* | mips64orionel-* \
375217309Snwhitehorn	| mips64r5900-* | mips64r5900el-* \
376217309Snwhitehorn	| mips64vr-* | mips64vrel-* \
377217309Snwhitehorn	| mips64vr4100-* | mips64vr4100el-* \
378217309Snwhitehorn	| mips64vr4300-* | mips64vr4300el-* \
379217309Snwhitehorn	| mips64vr5000-* | mips64vr5000el-* \
380217309Snwhitehorn	| mips64vr5900-* | mips64vr5900el-* \
381217309Snwhitehorn	| mipsisa32-* | mipsisa32el-* \
382217309Snwhitehorn	| mipsisa32r2-* | mipsisa32r2el-* \
383217309Snwhitehorn	| mipsisa64-* | mipsisa64el-* \
384217309Snwhitehorn	| mipsisa64r2-* | mipsisa64r2el-* \
385217309Snwhitehorn	| mipsisa64sb1-* | mipsisa64sb1el-* \
386217309Snwhitehorn	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
387217309Snwhitehorn	| mipstx39-* | mipstx39el-* \
388217309Snwhitehorn	| mmix-* \
389217309Snwhitehorn	| mt-* \
390217309Snwhitehorn	| msp430-* \
391220749Snwhitehorn	| nds32-* | nds32le-* | nds32be-* \
392217309Snwhitehorn	| nios-* | nios2-* \
393217309Snwhitehorn	| none-* | np1-* | ns16k-* | ns32k-* \
394224014Snwhitehorn	| open8-* \
395217309Snwhitehorn	| orion-* \
396217309Snwhitehorn	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
397224014Snwhitehorn	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
398217309Snwhitehorn	| pyramid-* \
399217309Snwhitehorn	| romp-* | rs6000-* | rx-* \
400217309Snwhitehorn	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
401217309Snwhitehorn	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
402217309Snwhitehorn	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
403217309Snwhitehorn	| sparclite-* \
404224014Snwhitehorn	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
405224014Snwhitehorn	| tahoe-* \
406220749Snwhitehorn	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
407220749Snwhitehorn	| tile-* | tilegx-* \
408217309Snwhitehorn	| tron-* \
409217309Snwhitehorn	| ubicom32-* \
410217309Snwhitehorn	| v850-* | v850e-* | vax-* \
411217309Snwhitehorn	| we32k-* \
412224014Snwhitehorn	| x86-* | x86_64-* | xc16x-* | xps100-* \
413217309Snwhitehorn	| xstormy16-* | xtensa*-* \
414217309Snwhitehorn	| ymp-* \
415217309Snwhitehorn	| z8k-* | z80-*)
416217309Snwhitehorn		;;
417217309Snwhitehorn	# Recognize the basic CPU types without company name, with glob match.
418217309Snwhitehorn	xtensa*)
419217309Snwhitehorn		basic_machine=$basic_machine-unknown
420217309Snwhitehorn		;;
421217309Snwhitehorn	# Recognize the various machine names and aliases which stand
422217309Snwhitehorn	# for a CPU type and a company and sometimes even an OS.
423217309Snwhitehorn	386bsd)
424217309Snwhitehorn		basic_machine=i386-unknown
425217309Snwhitehorn		os=-bsd
426217309Snwhitehorn		;;
427217309Snwhitehorn	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
428217309Snwhitehorn		basic_machine=m68000-att
429217309Snwhitehorn		;;
430217309Snwhitehorn	3b*)
431217309Snwhitehorn		basic_machine=we32k-att
432217309Snwhitehorn		;;
433217309Snwhitehorn	a29khif)
434217309Snwhitehorn		basic_machine=a29k-amd
435217309Snwhitehorn		os=-udi
436217309Snwhitehorn		;;
437220749Snwhitehorn	abacus)
438217309Snwhitehorn		basic_machine=abacus-unknown
439217309Snwhitehorn		;;
440217309Snwhitehorn	adobe68k)
441217309Snwhitehorn		basic_machine=m68010-adobe
442217309Snwhitehorn		os=-scout
443217309Snwhitehorn		;;
444217309Snwhitehorn	alliant | fx80)
445217309Snwhitehorn		basic_machine=fx80-alliant
446217309Snwhitehorn		;;
447217309Snwhitehorn	altos | altos3068)
448217309Snwhitehorn		basic_machine=m68k-altos
449217309Snwhitehorn		;;
450217309Snwhitehorn	am29k)
451217309Snwhitehorn		basic_machine=a29k-none
452217309Snwhitehorn		os=-bsd
453217309Snwhitehorn		;;
454217309Snwhitehorn	amd64)
455217309Snwhitehorn		basic_machine=x86_64-pc
456217309Snwhitehorn		;;
457217309Snwhitehorn	amd64-*)
458217309Snwhitehorn		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
459217309Snwhitehorn		;;
460217309Snwhitehorn	amdahl)
461217309Snwhitehorn		basic_machine=580-amdahl
462217309Snwhitehorn		os=-sysv
463217309Snwhitehorn		;;
464217309Snwhitehorn	amiga | amiga-*)
465217309Snwhitehorn		basic_machine=m68k-unknown
466217309Snwhitehorn		;;
467217309Snwhitehorn	amigaos | amigados)
468217309Snwhitehorn		basic_machine=m68k-unknown
469217309Snwhitehorn		os=-amigaos
470217309Snwhitehorn		;;
471217309Snwhitehorn	amigaunix | amix)
472217309Snwhitehorn		basic_machine=m68k-unknown
473217309Snwhitehorn		os=-sysv4
474217309Snwhitehorn		;;
475217309Snwhitehorn	apollo68)
476217309Snwhitehorn		basic_machine=m68k-apollo
477217309Snwhitehorn		os=-sysv
478217309Snwhitehorn		;;
479217309Snwhitehorn	apollo68bsd)
480217309Snwhitehorn		basic_machine=m68k-apollo
481217309Snwhitehorn		os=-bsd
482217309Snwhitehorn		;;
483217309Snwhitehorn	aros)
484217309Snwhitehorn		basic_machine=i386-pc
485217309Snwhitehorn		os=-aros
486217309Snwhitehorn		;;
487217309Snwhitehorn	aux)
488217309Snwhitehorn		basic_machine=m68k-apple
489217309Snwhitehorn		os=-aux
490217309Snwhitehorn		;;
491217309Snwhitehorn	balance)
492217309Snwhitehorn		basic_machine=ns32k-sequent
493217309Snwhitehorn		os=-dynix
494217309Snwhitehorn		;;
495217309Snwhitehorn	blackfin)
496217309Snwhitehorn		basic_machine=bfin-unknown
497217309Snwhitehorn		os=-linux
498217309Snwhitehorn		;;
499217309Snwhitehorn	blackfin-*)
500217309Snwhitehorn		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
501217309Snwhitehorn		os=-linux
502217309Snwhitehorn		;;
503217309Snwhitehorn	bluegene*)
504217309Snwhitehorn		basic_machine=powerpc-ibm
505217309Snwhitehorn		os=-cnk
506217309Snwhitehorn		;;
507220749Snwhitehorn	c54x-*)
508220749Snwhitehorn		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
509220749Snwhitehorn		;;
510220749Snwhitehorn	c55x-*)
511220749Snwhitehorn		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
512220749Snwhitehorn		;;
513220749Snwhitehorn	c6x-*)
514220749Snwhitehorn		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
515220749Snwhitehorn		;;
516217309Snwhitehorn	c90)
517217309Snwhitehorn		basic_machine=c90-cray
518217309Snwhitehorn		os=-unicos
519217309Snwhitehorn		;;
520220749Snwhitehorn	cegcc)
521217309Snwhitehorn		basic_machine=arm-unknown
522217309Snwhitehorn		os=-cegcc
523217309Snwhitehorn		;;
524217309Snwhitehorn	convex-c1)
525217309Snwhitehorn		basic_machine=c1-convex
526217309Snwhitehorn		os=-bsd
527217309Snwhitehorn		;;
528217309Snwhitehorn	convex-c2)
529217309Snwhitehorn		basic_machine=c2-convex
530217309Snwhitehorn		os=-bsd
531217309Snwhitehorn		;;
532217309Snwhitehorn	convex-c32)
533217309Snwhitehorn		basic_machine=c32-convex
534217309Snwhitehorn		os=-bsd
535217309Snwhitehorn		;;
536217309Snwhitehorn	convex-c34)
537217309Snwhitehorn		basic_machine=c34-convex
538217309Snwhitehorn		os=-bsd
539217309Snwhitehorn		;;
540217309Snwhitehorn	convex-c38)
541217309Snwhitehorn		basic_machine=c38-convex
542217309Snwhitehorn		os=-bsd
543217309Snwhitehorn		;;
544217309Snwhitehorn	cray | j90)
545217309Snwhitehorn		basic_machine=j90-cray
546217309Snwhitehorn		os=-unicos
547217309Snwhitehorn		;;
548217309Snwhitehorn	craynv)
549217309Snwhitehorn		basic_machine=craynv-cray
550217309Snwhitehorn		os=-unicosmp
551217309Snwhitehorn		;;
552224014Snwhitehorn	cr16 | cr16-*)
553217309Snwhitehorn		basic_machine=cr16-unknown
554217309Snwhitehorn		os=-elf
555217309Snwhitehorn		;;
556217309Snwhitehorn	crds | unos)
557217309Snwhitehorn		basic_machine=m68k-crds
558217309Snwhitehorn		;;
559217309Snwhitehorn	crisv32 | crisv32-* | etraxfs*)
560217309Snwhitehorn		basic_machine=crisv32-axis
561217309Snwhitehorn		;;
562217309Snwhitehorn	cris | cris-* | etrax*)
563217309Snwhitehorn		basic_machine=cris-axis
564217309Snwhitehorn		;;
565217309Snwhitehorn	crx)
566217309Snwhitehorn		basic_machine=crx-unknown
567217309Snwhitehorn		os=-elf
568217309Snwhitehorn		;;
569217309Snwhitehorn	da30 | da30-*)
570217309Snwhitehorn		basic_machine=m68k-da30
571217309Snwhitehorn		;;
572217309Snwhitehorn	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
573217309Snwhitehorn		basic_machine=mips-dec
574217309Snwhitehorn		;;
575217309Snwhitehorn	decsystem10* | dec10*)
576217309Snwhitehorn		basic_machine=pdp10-dec
577217309Snwhitehorn		os=-tops10
578217309Snwhitehorn		;;
579217309Snwhitehorn	decsystem20* | dec20*)
580217309Snwhitehorn		basic_machine=pdp10-dec
581217309Snwhitehorn		os=-tops20
582217309Snwhitehorn		;;
583217309Snwhitehorn	delta | 3300 | motorola-3300 | motorola-delta \
584217309Snwhitehorn	      | 3300-motorola | delta-motorola)
585217309Snwhitehorn		basic_machine=m68k-motorola
586217309Snwhitehorn		;;
587217309Snwhitehorn	delta88)
588217309Snwhitehorn		basic_machine=m88k-motorola
589217309Snwhitehorn		os=-sysv3
590217309Snwhitehorn		;;
591217309Snwhitehorn	dicos)
592217309Snwhitehorn		basic_machine=i686-pc
593217309Snwhitehorn		os=-dicos
594217309Snwhitehorn		;;
595217309Snwhitehorn	djgpp)
596217309Snwhitehorn		basic_machine=i586-pc
597217309Snwhitehorn		os=-msdosdjgpp
598217309Snwhitehorn		;;
599217309Snwhitehorn	dpx20 | dpx20-*)
600217309Snwhitehorn		basic_machine=rs6000-bull
601217309Snwhitehorn		os=-bosx
602217309Snwhitehorn		;;
603217309Snwhitehorn	dpx2* | dpx2*-bull)
604217309Snwhitehorn		basic_machine=m68k-bull
605217309Snwhitehorn		os=-sysv3
606217309Snwhitehorn		;;
607217309Snwhitehorn	ebmon29k)
608217309Snwhitehorn		basic_machine=a29k-amd
609217309Snwhitehorn		os=-ebmon
610217309Snwhitehorn		;;
611217309Snwhitehorn	elxsi)
612217309Snwhitehorn		basic_machine=elxsi-elxsi
613217309Snwhitehorn		os=-bsd
614217309Snwhitehorn		;;
615217309Snwhitehorn	encore | umax | mmax)
616217309Snwhitehorn		basic_machine=ns32k-encore
617217309Snwhitehorn		;;
618217309Snwhitehorn	es1800 | OSE68k | ose68k | ose | OSE)
619217309Snwhitehorn		basic_machine=m68k-ericsson
620217309Snwhitehorn		os=-ose
621217309Snwhitehorn		;;
622217309Snwhitehorn	fx2800)
623217309Snwhitehorn		basic_machine=i860-alliant
624217309Snwhitehorn		;;
625217309Snwhitehorn	genix)
626217309Snwhitehorn		basic_machine=ns32k-ns
627217309Snwhitehorn		;;
628217309Snwhitehorn	gmicro)
629217309Snwhitehorn		basic_machine=tron-gmicro
630217309Snwhitehorn		os=-sysv
631217309Snwhitehorn		;;
632217309Snwhitehorn	go32)
633217309Snwhitehorn		basic_machine=i386-pc
634217309Snwhitehorn		os=-go32
635217309Snwhitehorn		;;
636217309Snwhitehorn	h3050r* | hiux*)
637217309Snwhitehorn		basic_machine=hppa1.1-hitachi
638217309Snwhitehorn		os=-hiuxwe2
639217309Snwhitehorn		;;
640217309Snwhitehorn	h8300hms)
641217309Snwhitehorn		basic_machine=h8300-hitachi
642217309Snwhitehorn		os=-hms
643217309Snwhitehorn		;;
644217309Snwhitehorn	h8300xray)
645217309Snwhitehorn		basic_machine=h8300-hitachi
646217309Snwhitehorn		os=-xray
647217309Snwhitehorn		;;
648217309Snwhitehorn	h8500hms)
649217309Snwhitehorn		basic_machine=h8500-hitachi
650217309Snwhitehorn		os=-hms
651217309Snwhitehorn		;;
652217309Snwhitehorn	harris)
653217309Snwhitehorn		basic_machine=m88k-harris
654217309Snwhitehorn		os=-sysv3
655217309Snwhitehorn		;;
656217309Snwhitehorn	hp300-*)
657217309Snwhitehorn		basic_machine=m68k-hp
658217309Snwhitehorn		;;
659217309Snwhitehorn	hp300bsd)
660217309Snwhitehorn		basic_machine=m68k-hp
661217309Snwhitehorn		os=-bsd
662217309Snwhitehorn		;;
663217309Snwhitehorn	hp300hpux)
664217309Snwhitehorn		basic_machine=m68k-hp
665217309Snwhitehorn		os=-hpux
666217309Snwhitehorn		;;
667217309Snwhitehorn	hp3k9[0-9][0-9] | hp9[0-9][0-9])
668217309Snwhitehorn		basic_machine=hppa1.0-hp
669217309Snwhitehorn		;;
670217309Snwhitehorn	hp9k2[0-9][0-9] | hp9k31[0-9])
671217309Snwhitehorn		basic_machine=m68000-hp
672217309Snwhitehorn		;;
673217309Snwhitehorn	hp9k3[2-9][0-9])
674217309Snwhitehorn		basic_machine=m68k-hp
675217309Snwhitehorn		;;
676217309Snwhitehorn	hp9k6[0-9][0-9] | hp6[0-9][0-9])
677217309Snwhitehorn		basic_machine=hppa1.0-hp
678217309Snwhitehorn		;;
679217309Snwhitehorn	hp9k7[0-79][0-9] | hp7[0-79][0-9])
680217309Snwhitehorn		basic_machine=hppa1.1-hp
681217309Snwhitehorn		;;
682217309Snwhitehorn	hp9k78[0-9] | hp78[0-9])
683217309Snwhitehorn		# FIXME: really hppa2.0-hp
684217309Snwhitehorn		basic_machine=hppa1.1-hp
685217309Snwhitehorn		;;
686217309Snwhitehorn	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
687217309Snwhitehorn		# FIXME: really hppa2.0-hp
688217309Snwhitehorn		basic_machine=hppa1.1-hp
689217309Snwhitehorn		;;
690217309Snwhitehorn	hp9k8[0-9][13679] | hp8[0-9][13679])
691217309Snwhitehorn		basic_machine=hppa1.1-hp
692217309Snwhitehorn		;;
693217309Snwhitehorn	hp9k8[0-9][0-9] | hp8[0-9][0-9])
694217309Snwhitehorn		basic_machine=hppa1.0-hp
695217309Snwhitehorn		;;
696217309Snwhitehorn	hppa-next)
697217309Snwhitehorn		os=-nextstep3
698217309Snwhitehorn		;;
699217309Snwhitehorn	hppaosf)
700217309Snwhitehorn		basic_machine=hppa1.1-hp
701217309Snwhitehorn		os=-osf
702217309Snwhitehorn		;;
703217309Snwhitehorn	hppro)
704217309Snwhitehorn		basic_machine=hppa1.1-hp
705217309Snwhitehorn		os=-proelf
706217309Snwhitehorn		;;
707217309Snwhitehorn	i370-ibm* | ibm*)
708217309Snwhitehorn		basic_machine=i370-ibm
709217309Snwhitehorn		;;
710217309Snwhitehorn# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
711217309Snwhitehorn	i*86v32)
712217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
713217309Snwhitehorn		os=-sysv32
714217309Snwhitehorn		;;
715217309Snwhitehorn	i*86v4*)
716217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
717217309Snwhitehorn		os=-sysv4
718217309Snwhitehorn		;;
719217309Snwhitehorn	i*86v)
720217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
721217309Snwhitehorn		os=-sysv
722217309Snwhitehorn		;;
723217309Snwhitehorn	i*86sol2)
724217309Snwhitehorn		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
725217309Snwhitehorn		os=-solaris2
726217309Snwhitehorn		;;
727217309Snwhitehorn	i386mach)
728217309Snwhitehorn		basic_machine=i386-mach
729217309Snwhitehorn		os=-mach
730217309Snwhitehorn		;;
731217309Snwhitehorn	i386-vsta | vsta)
732217309Snwhitehorn		basic_machine=i386-unknown
733217309Snwhitehorn		os=-vsta
734217309Snwhitehorn		;;
735217309Snwhitehorn	iris | iris4d)
736217309Snwhitehorn		basic_machine=mips-sgi
737217309Snwhitehorn		case $os in
738217309Snwhitehorn		    -irix*)
739217309Snwhitehorn			;;
740217309Snwhitehorn		    *)
741217309Snwhitehorn			os=-irix4
742217309Snwhitehorn			;;
743217309Snwhitehorn		esac
744217309Snwhitehorn		;;
745217309Snwhitehorn	isi68 | isi)
746217309Snwhitehorn		basic_machine=m68k-isi
747217309Snwhitehorn		os=-sysv
748217309Snwhitehorn		;;
749217309Snwhitehorn	m68knommu)
750217309Snwhitehorn		basic_machine=m68k-unknown
751217309Snwhitehorn		os=-linux
752217309Snwhitehorn		;;
753217309Snwhitehorn	m68knommu-*)
754217309Snwhitehorn		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
755217309Snwhitehorn		os=-linux
756217309Snwhitehorn		;;
757217309Snwhitehorn	m88k-omron*)
758217309Snwhitehorn		basic_machine=m88k-omron
759217309Snwhitehorn		;;
760217309Snwhitehorn	magnum | m3230)
761217309Snwhitehorn		basic_machine=mips-mips
762217309Snwhitehorn		os=-sysv
763217309Snwhitehorn		;;
764217309Snwhitehorn	merlin)
765217309Snwhitehorn		basic_machine=ns32k-utek
766217309Snwhitehorn		os=-sysv
767217309Snwhitehorn		;;
768220749Snwhitehorn	microblaze)
769217309Snwhitehorn		basic_machine=microblaze-xilinx
770217309Snwhitehorn		;;
771217309Snwhitehorn	mingw32)
772217309Snwhitehorn		basic_machine=i386-pc
773217309Snwhitehorn		os=-mingw32
774217309Snwhitehorn		;;
775217309Snwhitehorn	mingw32ce)
776217309Snwhitehorn		basic_machine=arm-unknown
777217309Snwhitehorn		os=-mingw32ce
778217309Snwhitehorn		;;
779217309Snwhitehorn	miniframe)
780217309Snwhitehorn		basic_machine=m68000-convergent
781217309Snwhitehorn		;;
782217309Snwhitehorn	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
783217309Snwhitehorn		basic_machine=m68k-atari
784217309Snwhitehorn		os=-mint
785217309Snwhitehorn		;;
786217309Snwhitehorn	mips3*-*)
787217309Snwhitehorn		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
788217309Snwhitehorn		;;
789217309Snwhitehorn	mips3*)
790217309Snwhitehorn		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
791217309Snwhitehorn		;;
792217309Snwhitehorn	monitor)
793217309Snwhitehorn		basic_machine=m68k-rom68k
794217309Snwhitehorn		os=-coff
795217309Snwhitehorn		;;
796217309Snwhitehorn	morphos)
797217309Snwhitehorn		basic_machine=powerpc-unknown
798217309Snwhitehorn		os=-morphos
799217309Snwhitehorn		;;
800217309Snwhitehorn	msdos)
801217309Snwhitehorn		basic_machine=i386-pc
802217309Snwhitehorn		os=-msdos
803217309Snwhitehorn		;;
804217309Snwhitehorn	ms1-*)
805217309Snwhitehorn		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
806217309Snwhitehorn		;;
807217309Snwhitehorn	mvs)
808217309Snwhitehorn		basic_machine=i370-ibm
809217309Snwhitehorn		os=-mvs
810217309Snwhitehorn		;;
811217309Snwhitehorn	ncr3000)
812217309Snwhitehorn		basic_machine=i486-ncr
813217309Snwhitehorn		os=-sysv4
814217309Snwhitehorn		;;
815217309Snwhitehorn	netbsd386)
816217309Snwhitehorn		basic_machine=i386-unknown
817217309Snwhitehorn		os=-netbsd
818217309Snwhitehorn		;;
819217309Snwhitehorn	netwinder)
820217309Snwhitehorn		basic_machine=armv4l-rebel
821217309Snwhitehorn		os=-linux
822217309Snwhitehorn		;;
823217309Snwhitehorn	news | news700 | news800 | news900)
824217309Snwhitehorn		basic_machine=m68k-sony
825217309Snwhitehorn		os=-newsos
826217309Snwhitehorn		;;
827217309Snwhitehorn	news1000)
828217309Snwhitehorn		basic_machine=m68030-sony
829217309Snwhitehorn		os=-newsos
830217309Snwhitehorn		;;
831217309Snwhitehorn	news-3600 | risc-news)
832217309Snwhitehorn		basic_machine=mips-sony
833217309Snwhitehorn		os=-newsos
834217309Snwhitehorn		;;
835217309Snwhitehorn	necv70)
836217309Snwhitehorn		basic_machine=v70-nec
837217309Snwhitehorn		os=-sysv
838217309Snwhitehorn		;;
839224014Snwhitehorn	next | m*-next)
840217309Snwhitehorn		basic_machine=m68k-next
841217309Snwhitehorn		case $os in
842224014Snwhitehorn		    -nextstep*)
843217309Snwhitehorn			;;
844217309Snwhitehorn		    -ns2*)
845217309Snwhitehorn		      os=-nextstep2
846217309Snwhitehorn			;;
847217309Snwhitehorn		    *)
848217309Snwhitehorn		      os=-nextstep3
849217309Snwhitehorn			;;
850217309Snwhitehorn		esac
851217309Snwhitehorn		;;
852217309Snwhitehorn	nh3000)
853217309Snwhitehorn		basic_machine=m68k-harris
854217309Snwhitehorn		os=-cxux
855217309Snwhitehorn		;;
856217309Snwhitehorn	nh[45]000)
857217309Snwhitehorn		basic_machine=m88k-harris
858217309Snwhitehorn		os=-cxux
859217309Snwhitehorn		;;
860217309Snwhitehorn	nindy960)
861217309Snwhitehorn		basic_machine=i960-intel
862217309Snwhitehorn		os=-nindy
863217309Snwhitehorn		;;
864217309Snwhitehorn	mon960)
865217309Snwhitehorn		basic_machine=i960-intel
866217309Snwhitehorn		os=-mon960
867217309Snwhitehorn		;;
868217309Snwhitehorn	nonstopux)
869217309Snwhitehorn		basic_machine=mips-compaq
870217309Snwhitehorn		os=-nonstopux
871217309Snwhitehorn		;;
872217309Snwhitehorn	np1)
873217309Snwhitehorn		basic_machine=np1-gould
874217309Snwhitehorn		;;
875220749Snwhitehorn	neo-tandem)
876220749Snwhitehorn		basic_machine=neo-tandem
877220749Snwhitehorn		;;
878220749Snwhitehorn	nse-tandem)
879220749Snwhitehorn		basic_machine=nse-tandem
880220749Snwhitehorn		;;
881217309Snwhitehorn	nsr-tandem)
882217309Snwhitehorn		basic_machine=nsr-tandem
883217309Snwhitehorn		;;
884217309Snwhitehorn	op50n-* | op60c-*)
885217309Snwhitehorn		basic_machine=hppa1.1-oki
886217309Snwhitehorn		os=-proelf
887217309Snwhitehorn		;;
888217309Snwhitehorn	openrisc | openrisc-*)
889217309Snwhitehorn		basic_machine=or32-unknown
890217309Snwhitehorn		;;
891217309Snwhitehorn	os400)
892217309Snwhitehorn		basic_machine=powerpc-ibm
893217309Snwhitehorn		os=-os400
894217309Snwhitehorn		;;
895217309Snwhitehorn	OSE68000 | ose68000)
896217309Snwhitehorn		basic_machine=m68000-ericsson
897217309Snwhitehorn		os=-ose
898217309Snwhitehorn		;;
899217309Snwhitehorn	os68k)
900217309Snwhitehorn		basic_machine=m68k-none
901217309Snwhitehorn		os=-os68k
902217309Snwhitehorn		;;
903217309Snwhitehorn	pa-hitachi)
904217309Snwhitehorn		basic_machine=hppa1.1-hitachi
905217309Snwhitehorn		os=-hiuxwe2
906217309Snwhitehorn		;;
907217309Snwhitehorn	paragon)
908217309Snwhitehorn		basic_machine=i860-intel
909217309Snwhitehorn		os=-osf
910217309Snwhitehorn		;;
911217309Snwhitehorn	parisc)
912217309Snwhitehorn		basic_machine=hppa-unknown
913217309Snwhitehorn		os=-linux
914217309Snwhitehorn		;;
915217309Snwhitehorn	parisc-*)
916217309Snwhitehorn		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
917217309Snwhitehorn		os=-linux
918217309Snwhitehorn		;;
919217309Snwhitehorn	pbd)
920217309Snwhitehorn		basic_machine=sparc-tti
921217309Snwhitehorn		;;
922217309Snwhitehorn	pbb)
923217309Snwhitehorn		basic_machine=m68k-tti
924217309Snwhitehorn		;;
925217309Snwhitehorn	pc532 | pc532-*)
926217309Snwhitehorn		basic_machine=ns32k-pc532
927217309Snwhitehorn		;;
928217309Snwhitehorn	pc98)
929217309Snwhitehorn		basic_machine=i386-pc
930217309Snwhitehorn		;;
931217309Snwhitehorn	pc98-*)
932217309Snwhitehorn		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
933217309Snwhitehorn		;;
934217309Snwhitehorn	pentium | p5 | k5 | k6 | nexgen | viac3)
935217309Snwhitehorn		basic_machine=i586-pc
936217309Snwhitehorn		;;
937217309Snwhitehorn	pentiumpro | p6 | 6x86 | athlon | athlon_*)
938217309Snwhitehorn		basic_machine=i686-pc
939217309Snwhitehorn		;;
940217309Snwhitehorn	pentiumii | pentium2 | pentiumiii | pentium3)
941217309Snwhitehorn		basic_machine=i686-pc
942217309Snwhitehorn		;;
943217309Snwhitehorn	pentium4)
944217309Snwhitehorn		basic_machine=i786-pc
945217309Snwhitehorn		;;
946217309Snwhitehorn	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
947217309Snwhitehorn		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
948217309Snwhitehorn		;;
949217309Snwhitehorn	pentiumpro-* | p6-* | 6x86-* | athlon-*)
950217309Snwhitehorn		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
951217309Snwhitehorn		;;
952217309Snwhitehorn	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
953217309Snwhitehorn		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
954217309Snwhitehorn		;;
955217309Snwhitehorn	pentium4-*)
956217309Snwhitehorn		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
957217309Snwhitehorn		;;
958217309Snwhitehorn	pn)
959217309Snwhitehorn		basic_machine=pn-gould
960217309Snwhitehorn		;;
961224014Snwhitehorn	power)
962224014Snwhitehorn		basic_machine=power-ibm
963217309Snwhitehorn		;;
964224014Snwhitehorn	ppc | ppcbe)
965224014Snwhitehorn		basic_machine=powerpc-unknown
966217309Snwhitehorn		;;
967224014Snwhitehorn	ppc-* | ppcbe-*)
968224014Snwhitehorn		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
969217309Snwhitehorn		;;
970217309Snwhitehorn	ppcle | powerpclittle | ppc-le | powerpc-little)
971217309Snwhitehorn		basic_machine=powerpcle-unknown
972217309Snwhitehorn		;;
973217309Snwhitehorn	ppcle-* | powerpclittle-*)
974217309Snwhitehorn		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
975217309Snwhitehorn		;;
976224014Snwhitehorn	ppc64)
977224014Snwhitehorn		basic_machine=powerpc64-unknown
978217309Snwhitehorn		;;
979224014Snwhitehorn	ppc64-*)
980224014Snwhitehorn		basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
981217309Snwhitehorn		;;
982217309Snwhitehorn	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
983217309Snwhitehorn		basic_machine=powerpc64le-unknown
984217309Snwhitehorn		;;
985217309Snwhitehorn	ppc64le-* | powerpc64little-*)
986217309Snwhitehorn		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
987217309Snwhitehorn		;;
988217309Snwhitehorn	ps2)
989217309Snwhitehorn		basic_machine=i386-ibm
990217309Snwhitehorn		;;
991217309Snwhitehorn	pw32)
992217309Snwhitehorn		basic_machine=i586-unknown
993217309Snwhitehorn		os=-pw32
994217309Snwhitehorn		;;
995217309Snwhitehorn	rdos)
996217309Snwhitehorn		basic_machine=i386-pc
997217309Snwhitehorn		os=-rdos
998217309Snwhitehorn		;;
999217309Snwhitehorn	rom68k)
1000217309Snwhitehorn		basic_machine=m68k-rom68k
1001217309Snwhitehorn		os=-coff
1002217309Snwhitehorn		;;
1003217309Snwhitehorn	rm[46]00)
1004217309Snwhitehorn		basic_machine=mips-siemens
1005217309Snwhitehorn		;;
1006217309Snwhitehorn	rtpc | rtpc-*)
1007217309Snwhitehorn		basic_machine=romp-ibm
1008217309Snwhitehorn		;;
1009217309Snwhitehorn	s390 | s390-*)
1010217309Snwhitehorn		basic_machine=s390-ibm
1011217309Snwhitehorn		;;
1012217309Snwhitehorn	s390x | s390x-*)
1013217309Snwhitehorn		basic_machine=s390x-ibm
1014217309Snwhitehorn		;;
1015217309Snwhitehorn	sa29200)
1016217309Snwhitehorn		basic_machine=a29k-amd
1017217309Snwhitehorn		os=-udi
1018217309Snwhitehorn		;;
1019217309Snwhitehorn	sb1)
1020217309Snwhitehorn		basic_machine=mipsisa64sb1-unknown
1021217309Snwhitehorn		;;
1022217309Snwhitehorn	sb1el)
1023217309Snwhitehorn		basic_machine=mipsisa64sb1el-unknown
1024217309Snwhitehorn		;;
1025217309Snwhitehorn	sde)
1026217309Snwhitehorn		basic_machine=mipsisa32-sde
1027217309Snwhitehorn		os=-elf
1028217309Snwhitehorn		;;
1029217309Snwhitehorn	sei)
1030217309Snwhitehorn		basic_machine=mips-sei
1031217309Snwhitehorn		os=-seiux
1032217309Snwhitehorn		;;
1033217309Snwhitehorn	sequent)
1034217309Snwhitehorn		basic_machine=i386-sequent
1035217309Snwhitehorn		;;
1036217309Snwhitehorn	sh)
1037217309Snwhitehorn		basic_machine=sh-hitachi
1038217309Snwhitehorn		os=-hms
1039217309Snwhitehorn		;;
1040217309Snwhitehorn	sh5el)
1041217309Snwhitehorn		basic_machine=sh5le-unknown
1042217309Snwhitehorn		;;
1043217309Snwhitehorn	sh64)
1044217309Snwhitehorn		basic_machine=sh64-unknown
1045217309Snwhitehorn		;;
1046217309Snwhitehorn	sparclite-wrs | simso-wrs)
1047217309Snwhitehorn		basic_machine=sparclite-wrs
1048217309Snwhitehorn		os=-vxworks
1049217309Snwhitehorn		;;
1050217309Snwhitehorn	sps7)
1051217309Snwhitehorn		basic_machine=m68k-bull
1052217309Snwhitehorn		os=-sysv2
1053217309Snwhitehorn		;;
1054217309Snwhitehorn	spur)
1055217309Snwhitehorn		basic_machine=spur-unknown
1056217309Snwhitehorn		;;
1057217309Snwhitehorn	st2000)
1058217309Snwhitehorn		basic_machine=m68k-tandem
1059217309Snwhitehorn		;;
1060217309Snwhitehorn	stratus)
1061217309Snwhitehorn		basic_machine=i860-stratus
1062217309Snwhitehorn		os=-sysv4
1063217309Snwhitehorn		;;
1064224014Snwhitehorn	strongarm-* | thumb-*)
1065224014Snwhitehorn		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1066224014Snwhitehorn		;;
1067217309Snwhitehorn	sun2)
1068217309Snwhitehorn		basic_machine=m68000-sun
1069217309Snwhitehorn		;;
1070217309Snwhitehorn	sun2os3)
1071217309Snwhitehorn		basic_machine=m68000-sun
1072217309Snwhitehorn		os=-sunos3
1073217309Snwhitehorn		;;
1074217309Snwhitehorn	sun2os4)
1075217309Snwhitehorn		basic_machine=m68000-sun
1076217309Snwhitehorn		os=-sunos4
1077217309Snwhitehorn		;;
1078217309Snwhitehorn	sun3os3)
1079217309Snwhitehorn		basic_machine=m68k-sun
1080217309Snwhitehorn		os=-sunos3
1081217309Snwhitehorn		;;
1082217309Snwhitehorn	sun3os4)
1083217309Snwhitehorn		basic_machine=m68k-sun
1084217309Snwhitehorn		os=-sunos4
1085217309Snwhitehorn		;;
1086217309Snwhitehorn	sun4os3)
1087217309Snwhitehorn		basic_machine=sparc-sun
1088217309Snwhitehorn		os=-sunos3
1089217309Snwhitehorn		;;
1090217309Snwhitehorn	sun4os4)
1091217309Snwhitehorn		basic_machine=sparc-sun
1092217309Snwhitehorn		os=-sunos4
1093217309Snwhitehorn		;;
1094217309Snwhitehorn	sun4sol2)
1095217309Snwhitehorn		basic_machine=sparc-sun
1096217309Snwhitehorn		os=-solaris2
1097217309Snwhitehorn		;;
1098217309Snwhitehorn	sun3 | sun3-*)
1099217309Snwhitehorn		basic_machine=m68k-sun
1100217309Snwhitehorn		;;
1101217309Snwhitehorn	sun4)
1102217309Snwhitehorn		basic_machine=sparc-sun
1103217309Snwhitehorn		;;
1104217309Snwhitehorn	sun386 | sun386i | roadrunner)
1105217309Snwhitehorn		basic_machine=i386-sun
1106217309Snwhitehorn		;;
1107217309Snwhitehorn	sv1)
1108217309Snwhitehorn		basic_machine=sv1-cray
1109217309Snwhitehorn		os=-unicos
1110217309Snwhitehorn		;;
1111217309Snwhitehorn	symmetry)
1112217309Snwhitehorn		basic_machine=i386-sequent
1113217309Snwhitehorn		os=-dynix
1114217309Snwhitehorn		;;
1115217309Snwhitehorn	t3e)
1116217309Snwhitehorn		basic_machine=alphaev5-cray
1117217309Snwhitehorn		os=-unicos
1118217309Snwhitehorn		;;
1119217309Snwhitehorn	t90)
1120217309Snwhitehorn		basic_machine=t90-cray
1121217309Snwhitehorn		os=-unicos
1122217309Snwhitehorn		;;
1123220749Snwhitehorn	# This must be matched before tile*.
1124220749Snwhitehorn	tilegx*)
1125220749Snwhitehorn		basic_machine=tilegx-unknown
1126220749Snwhitehorn		os=-linux-gnu
1127217309Snwhitehorn		;;
1128217309Snwhitehorn	tile*)
1129217309Snwhitehorn		basic_machine=tile-unknown
1130217309Snwhitehorn		os=-linux-gnu
1131217309Snwhitehorn		;;
1132217309Snwhitehorn	tx39)
1133217309Snwhitehorn		basic_machine=mipstx39-unknown
1134217309Snwhitehorn		;;
1135217309Snwhitehorn	tx39el)
1136217309Snwhitehorn		basic_machine=mipstx39el-unknown
1137217309Snwhitehorn		;;
1138217309Snwhitehorn	toad1)
1139217309Snwhitehorn		basic_machine=pdp10-xkl
1140217309Snwhitehorn		os=-tops20
1141217309Snwhitehorn		;;
1142217309Snwhitehorn	tower | tower-32)
1143217309Snwhitehorn		basic_machine=m68k-ncr
1144217309Snwhitehorn		;;
1145217309Snwhitehorn	tpf)
1146217309Snwhitehorn		basic_machine=s390x-ibm
1147217309Snwhitehorn		os=-tpf
1148217309Snwhitehorn		;;
1149217309Snwhitehorn	udi29k)
1150217309Snwhitehorn		basic_machine=a29k-amd
1151217309Snwhitehorn		os=-udi
1152217309Snwhitehorn		;;
1153217309Snwhitehorn	ultra3)
1154217309Snwhitehorn		basic_machine=a29k-nyu
1155217309Snwhitehorn		os=-sym1
1156217309Snwhitehorn		;;
1157217309Snwhitehorn	v810 | necv810)
1158217309Snwhitehorn		basic_machine=v810-nec
1159217309Snwhitehorn		os=-none
1160217309Snwhitehorn		;;
1161217309Snwhitehorn	vaxv)
1162217309Snwhitehorn		basic_machine=vax-dec
1163217309Snwhitehorn		os=-sysv
1164217309Snwhitehorn		;;
1165217309Snwhitehorn	vms)
1166217309Snwhitehorn		basic_machine=vax-dec
1167217309Snwhitehorn		os=-vms
1168217309Snwhitehorn		;;
1169217309Snwhitehorn	vpp*|vx|vx-*)
1170217309Snwhitehorn		basic_machine=f301-fujitsu
1171217309Snwhitehorn		;;
1172217309Snwhitehorn	vxworks960)
1173217309Snwhitehorn		basic_machine=i960-wrs
1174217309Snwhitehorn		os=-vxworks
1175217309Snwhitehorn		;;
1176217309Snwhitehorn	vxworks68)
1177217309Snwhitehorn		basic_machine=m68k-wrs
1178217309Snwhitehorn		os=-vxworks
1179217309Snwhitehorn		;;
1180217309Snwhitehorn	vxworks29k)
1181217309Snwhitehorn		basic_machine=a29k-wrs
1182217309Snwhitehorn		os=-vxworks
1183217309Snwhitehorn		;;
1184217309Snwhitehorn	w65*)
1185217309Snwhitehorn		basic_machine=w65-wdc
1186217309Snwhitehorn		os=-none
1187217309Snwhitehorn		;;
1188217309Snwhitehorn	w89k-*)
1189217309Snwhitehorn		basic_machine=hppa1.1-winbond
1190217309Snwhitehorn		os=-proelf
1191217309Snwhitehorn		;;
1192217309Snwhitehorn	xbox)
1193217309Snwhitehorn		basic_machine=i686-pc
1194217309Snwhitehorn		os=-mingw32
1195217309Snwhitehorn		;;
1196217309Snwhitehorn	xps | xps100)
1197217309Snwhitehorn		basic_machine=xps100-honeywell
1198217309Snwhitehorn		;;
1199224014Snwhitehorn	xscale-* | xscalee[bl]-*)
1200224014Snwhitehorn		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1201224014Snwhitehorn		;;
1202217309Snwhitehorn	ymp)
1203217309Snwhitehorn		basic_machine=ymp-cray
1204217309Snwhitehorn		os=-unicos
1205217309Snwhitehorn		;;
1206217309Snwhitehorn	z8k-*-coff)
1207217309Snwhitehorn		basic_machine=z8k-unknown
1208217309Snwhitehorn		os=-sim
1209217309Snwhitehorn		;;
1210217309Snwhitehorn	z80-*-coff)
1211217309Snwhitehorn		basic_machine=z80-unknown
1212217309Snwhitehorn		os=-sim
1213217309Snwhitehorn		;;
1214217309Snwhitehorn	none)
1215217309Snwhitehorn		basic_machine=none-none
1216217309Snwhitehorn		os=-none
1217217309Snwhitehorn		;;
1218217309Snwhitehorn
1219217309Snwhitehorn# Here we handle the default manufacturer of certain CPU types.  It is in
1220217309Snwhitehorn# some cases the only manufacturer, in others, it is the most popular.
1221217309Snwhitehorn	w89k)
1222217309Snwhitehorn		basic_machine=hppa1.1-winbond
1223217309Snwhitehorn		;;
1224217309Snwhitehorn	op50n)
1225217309Snwhitehorn		basic_machine=hppa1.1-oki
1226217309Snwhitehorn		;;
1227217309Snwhitehorn	op60c)
1228217309Snwhitehorn		basic_machine=hppa1.1-oki
1229217309Snwhitehorn		;;
1230217309Snwhitehorn	romp)
1231217309Snwhitehorn		basic_machine=romp-ibm
1232217309Snwhitehorn		;;
1233217309Snwhitehorn	mmix)
1234217309Snwhitehorn		basic_machine=mmix-knuth
1235217309Snwhitehorn		;;
1236217309Snwhitehorn	rs6000)
1237217309Snwhitehorn		basic_machine=rs6000-ibm
1238217309Snwhitehorn		;;
1239217309Snwhitehorn	vax)
1240217309Snwhitehorn		basic_machine=vax-dec
1241217309Snwhitehorn		;;
1242217309Snwhitehorn	pdp10)
1243217309Snwhitehorn		# there are many clones, so DEC is not a safe bet
1244217309Snwhitehorn		basic_machine=pdp10-unknown
1245217309Snwhitehorn		;;
1246217309Snwhitehorn	pdp11)
1247217309Snwhitehorn		basic_machine=pdp11-dec
1248217309Snwhitehorn		;;
1249217309Snwhitehorn	we32k)
1250217309Snwhitehorn		basic_machine=we32k-att
1251217309Snwhitehorn		;;
1252217309Snwhitehorn	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1253217309Snwhitehorn		basic_machine=sh-unknown
1254217309Snwhitehorn		;;
1255217309Snwhitehorn	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1256217309Snwhitehorn		basic_machine=sparc-sun
1257217309Snwhitehorn		;;
1258217309Snwhitehorn	cydra)
1259217309Snwhitehorn		basic_machine=cydra-cydrome
1260217309Snwhitehorn		;;
1261217309Snwhitehorn	orion)
1262217309Snwhitehorn		basic_machine=orion-highlevel
1263217309Snwhitehorn		;;
1264217309Snwhitehorn	orion105)
1265217309Snwhitehorn		basic_machine=clipper-highlevel
1266217309Snwhitehorn		;;
1267217309Snwhitehorn	mac | mpw | mac-mpw)
1268217309Snwhitehorn		basic_machine=m68k-apple
1269217309Snwhitehorn		;;
1270217309Snwhitehorn	pmac | pmac-mpw)
1271217309Snwhitehorn		basic_machine=powerpc-apple
1272217309Snwhitehorn		;;
1273217309Snwhitehorn	*-unknown)
1274217309Snwhitehorn		# Make sure to match an already-canonicalized machine name.
1275217309Snwhitehorn		;;
1276217309Snwhitehorn	*)
1277217309Snwhitehorn		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1278217309Snwhitehorn		exit 1
1279217309Snwhitehorn		;;
1280217309Snwhitehornesac
1281217309Snwhitehorn
1282217309Snwhitehorn# Here we canonicalize certain aliases for manufacturers.
1283217309Snwhitehorncase $basic_machine in
1284217309Snwhitehorn	*-digital*)
1285217309Snwhitehorn		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1286217309Snwhitehorn		;;
1287217309Snwhitehorn	*-commodore*)
1288217309Snwhitehorn		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1289217309Snwhitehorn		;;
1290217309Snwhitehorn	*)
1291217309Snwhitehorn		;;
1292217309Snwhitehornesac
1293217309Snwhitehorn
1294217309Snwhitehorn# Decode manufacturer-specific aliases for certain operating systems.
1295217309Snwhitehorn
1296217309Snwhitehornif [ x"$os" != x"" ]
1297217309Snwhitehornthen
1298217309Snwhitehorncase $os in
1299220749Snwhitehorn	# First match some system type aliases
1300220749Snwhitehorn	# that might get confused with valid system types.
1301217309Snwhitehorn	# -solaris* is a basic system type, with this one exception.
1302220749Snwhitehorn	-auroraux)
1303220749Snwhitehorn		os=-auroraux
1304217309Snwhitehorn		;;
1305217309Snwhitehorn	-solaris1 | -solaris1.*)
1306217309Snwhitehorn		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1307217309Snwhitehorn		;;
1308217309Snwhitehorn	-solaris)
1309217309Snwhitehorn		os=-solaris2
1310217309Snwhitehorn		;;
1311217309Snwhitehorn	-svr4*)
1312217309Snwhitehorn		os=-sysv4
1313217309Snwhitehorn		;;
1314217309Snwhitehorn	-unixware*)
1315217309Snwhitehorn		os=-sysv4.2uw
1316217309Snwhitehorn		;;
1317217309Snwhitehorn	-gnu/linux*)
1318217309Snwhitehorn		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1319217309Snwhitehorn		;;
1320217309Snwhitehorn	# First accept the basic system types.
1321217309Snwhitehorn	# The portable systems comes first.
1322217309Snwhitehorn	# Each alternative MUST END IN A *, to match a version number.
1323217309Snwhitehorn	# -sysv* is not here because it comes later, after sysvr4.
1324217309Snwhitehorn	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1325217309Snwhitehorn	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1326217309Snwhitehorn	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1327217309Snwhitehorn	      | -sym* | -kopensolaris* \
1328217309Snwhitehorn	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1329217309Snwhitehorn	      | -aos* | -aros* \
1330217309Snwhitehorn	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1331217309Snwhitehorn	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1332217309Snwhitehorn	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1333217309Snwhitehorn	      | -openbsd* | -solidbsd* \
1334217309Snwhitehorn	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1335217309Snwhitehorn	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1336217309Snwhitehorn	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1337217309Snwhitehorn	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1338217309Snwhitehorn	      | -chorusos* | -chorusrdb* | -cegcc* \
1339217309Snwhitehorn	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1340220749Snwhitehorn	      | -mingw32* | -linux-gnu* | -linux-android* \
1341220749Snwhitehorn	      | -linux-newlib* | -linux-uclibc* \
1342217309Snwhitehorn	      | -uxpv* | -beos* | -mpeix* | -udk* \
1343217309Snwhitehorn	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1344217309Snwhitehorn	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1345217309Snwhitehorn	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1346217309Snwhitehorn	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1347217309Snwhitehorn	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1348217309Snwhitehorn	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1349217309Snwhitehorn	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1350217309Snwhitehorn	# Remember, each alternative MUST END IN *, to match a version number.
1351217309Snwhitehorn		;;
1352217309Snwhitehorn	-qnx*)
1353217309Snwhitehorn		case $basic_machine in
1354217309Snwhitehorn		    x86-* | i*86-*)
1355217309Snwhitehorn			;;
1356217309Snwhitehorn		    *)
1357217309Snwhitehorn			os=-nto$os
1358217309Snwhitehorn			;;
1359217309Snwhitehorn		esac
1360217309Snwhitehorn		;;
1361217309Snwhitehorn	-nto-qnx*)
1362217309Snwhitehorn		;;
1363217309Snwhitehorn	-nto*)
1364217309Snwhitehorn		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1365217309Snwhitehorn		;;
1366217309Snwhitehorn	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1367217309Snwhitehorn	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1368217309Snwhitehorn	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1369217309Snwhitehorn		;;
1370217309Snwhitehorn	-mac*)
1371217309Snwhitehorn		os=`echo $os | sed -e 's|mac|macos|'`
1372217309Snwhitehorn		;;
1373217309Snwhitehorn	-linux-dietlibc)
1374217309Snwhitehorn		os=-linux-dietlibc
1375217309Snwhitehorn		;;
1376217309Snwhitehorn	-linux*)
1377217309Snwhitehorn		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1378217309Snwhitehorn		;;
1379217309Snwhitehorn	-sunos5*)
1380217309Snwhitehorn		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1381217309Snwhitehorn		;;
1382217309Snwhitehorn	-sunos6*)
1383217309Snwhitehorn		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1384217309Snwhitehorn		;;
1385217309Snwhitehorn	-opened*)
1386217309Snwhitehorn		os=-openedition
1387217309Snwhitehorn		;;
1388220749Snwhitehorn	-os400*)
1389217309Snwhitehorn		os=-os400
1390217309Snwhitehorn		;;
1391217309Snwhitehorn	-wince*)
1392217309Snwhitehorn		os=-wince
1393217309Snwhitehorn		;;
1394217309Snwhitehorn	-osfrose*)
1395217309Snwhitehorn		os=-osfrose
1396217309Snwhitehorn		;;
1397217309Snwhitehorn	-osf*)
1398217309Snwhitehorn		os=-osf
1399217309Snwhitehorn		;;
1400217309Snwhitehorn	-utek*)
1401217309Snwhitehorn		os=-bsd
1402217309Snwhitehorn		;;
1403217309Snwhitehorn	-dynix*)
1404217309Snwhitehorn		os=-bsd
1405217309Snwhitehorn		;;
1406217309Snwhitehorn	-acis*)
1407217309Snwhitehorn		os=-aos
1408217309Snwhitehorn		;;
1409217309Snwhitehorn	-atheos*)
1410217309Snwhitehorn		os=-atheos
1411217309Snwhitehorn		;;
1412217309Snwhitehorn	-syllable*)
1413217309Snwhitehorn		os=-syllable
1414217309Snwhitehorn		;;
1415217309Snwhitehorn	-386bsd)
1416217309Snwhitehorn		os=-bsd
1417217309Snwhitehorn		;;
1418217309Snwhitehorn	-ctix* | -uts*)
1419217309Snwhitehorn		os=-sysv
1420217309Snwhitehorn		;;
1421217309Snwhitehorn	-nova*)
1422217309Snwhitehorn		os=-rtmk-nova
1423217309Snwhitehorn		;;
1424224014Snwhitehorn	-ns2)
1425217309Snwhitehorn		os=-nextstep2
1426217309Snwhitehorn		;;
1427217309Snwhitehorn	-nsk*)
1428217309Snwhitehorn		os=-nsk
1429217309Snwhitehorn		;;
1430217309Snwhitehorn	# Preserve the version number of sinix5.
1431217309Snwhitehorn	-sinix5.*)
1432217309Snwhitehorn		os=`echo $os | sed -e 's|sinix|sysv|'`
1433217309Snwhitehorn		;;
1434217309Snwhitehorn	-sinix*)
1435217309Snwhitehorn		os=-sysv4
1436217309Snwhitehorn		;;
1437220749Snwhitehorn	-tpf*)
1438217309Snwhitehorn		os=-tpf
1439217309Snwhitehorn		;;
1440217309Snwhitehorn	-triton*)
1441217309Snwhitehorn		os=-sysv3
1442217309Snwhitehorn		;;
1443217309Snwhitehorn	-oss*)
1444217309Snwhitehorn		os=-sysv3
1445217309Snwhitehorn		;;
1446217309Snwhitehorn	-svr4)
1447217309Snwhitehorn		os=-sysv4
1448217309Snwhitehorn		;;
1449217309Snwhitehorn	-svr3)
1450217309Snwhitehorn		os=-sysv3
1451217309Snwhitehorn		;;
1452217309Snwhitehorn	-sysvr4)
1453217309Snwhitehorn		os=-sysv4
1454217309Snwhitehorn		;;
1455217309Snwhitehorn	# This must come after -sysvr4.
1456217309Snwhitehorn	-sysv*)
1457217309Snwhitehorn		;;
1458217309Snwhitehorn	-ose*)
1459217309Snwhitehorn		os=-ose
1460217309Snwhitehorn		;;
1461217309Snwhitehorn	-es1800*)
1462217309Snwhitehorn		os=-ose
1463217309Snwhitehorn		;;
1464217309Snwhitehorn	-xenix)
1465217309Snwhitehorn		os=-xenix
1466217309Snwhitehorn		;;
1467217309Snwhitehorn	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1468217309Snwhitehorn		os=-mint
1469217309Snwhitehorn		;;
1470217309Snwhitehorn	-aros*)
1471217309Snwhitehorn		os=-aros
1472217309Snwhitehorn		;;
1473217309Snwhitehorn	-kaos*)
1474217309Snwhitehorn		os=-kaos
1475217309Snwhitehorn		;;
1476217309Snwhitehorn	-zvmoe)
1477217309Snwhitehorn		os=-zvmoe
1478217309Snwhitehorn		;;
1479217309Snwhitehorn	-dicos*)
1480217309Snwhitehorn		os=-dicos
1481217309Snwhitehorn		;;
1482220749Snwhitehorn	-nacl*)
1483220749Snwhitehorn		;;
1484217309Snwhitehorn	-none)
1485217309Snwhitehorn		;;
1486217309Snwhitehorn	*)
1487217309Snwhitehorn		# Get rid of the `-' at the beginning of $os.
1488217309Snwhitehorn		os=`echo $os | sed 's/[^-]*-//'`
1489217309Snwhitehorn		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1490217309Snwhitehorn		exit 1
1491217309Snwhitehorn		;;
1492217309Snwhitehornesac
1493217309Snwhitehornelse
1494217309Snwhitehorn
1495217309Snwhitehorn# Here we handle the default operating systems that come with various machines.
1496217309Snwhitehorn# The value should be what the vendor currently ships out the door with their
1497217309Snwhitehorn# machine or put another way, the most popular os provided with the machine.
1498217309Snwhitehorn
1499217309Snwhitehorn# Note that if you're going to try to match "-MANUFACTURER" here (say,
1500217309Snwhitehorn# "-sun"), then you have to tell the case statement up towards the top
1501217309Snwhitehorn# that MANUFACTURER isn't an operating system.  Otherwise, code above
1502217309Snwhitehorn# will signal an error saying that MANUFACTURER isn't an operating
1503217309Snwhitehorn# system, and we'll never get to this point.
1504217309Snwhitehorn
1505217309Snwhitehorncase $basic_machine in
1506220749Snwhitehorn	score-*)
1507217309Snwhitehorn		os=-elf
1508217309Snwhitehorn		;;
1509220749Snwhitehorn	spu-*)
1510217309Snwhitehorn		os=-elf
1511217309Snwhitehorn		;;
1512217309Snwhitehorn	*-acorn)
1513217309Snwhitehorn		os=-riscix1.2
1514217309Snwhitehorn		;;
1515217309Snwhitehorn	arm*-rebel)
1516217309Snwhitehorn		os=-linux
1517217309Snwhitehorn		;;
1518217309Snwhitehorn	arm*-semi)
1519217309Snwhitehorn		os=-aout
1520217309Snwhitehorn		;;
1521220749Snwhitehorn	c4x-* | tic4x-*)
1522220749Snwhitehorn		os=-coff
1523217309Snwhitehorn		;;
1524220749Snwhitehorn	tic54x-*)
1525220749Snwhitehorn		os=-coff
1526220749Snwhitehorn		;;
1527220749Snwhitehorn	tic55x-*)
1528220749Snwhitehorn		os=-coff
1529220749Snwhitehorn		;;
1530220749Snwhitehorn	tic6x-*)
1531220749Snwhitehorn		os=-coff
1532220749Snwhitehorn		;;
1533217309Snwhitehorn	# This must come before the *-dec entry.
1534217309Snwhitehorn	pdp10-*)
1535217309Snwhitehorn		os=-tops20
1536217309Snwhitehorn		;;
1537217309Snwhitehorn	pdp11-*)
1538217309Snwhitehorn		os=-none
1539217309Snwhitehorn		;;
1540217309Snwhitehorn	*-dec | vax-*)
1541217309Snwhitehorn		os=-ultrix4.2
1542217309Snwhitehorn		;;
1543217309Snwhitehorn	m68*-apollo)
1544217309Snwhitehorn		os=-domain
1545217309Snwhitehorn		;;
1546217309Snwhitehorn	i386-sun)
1547217309Snwhitehorn		os=-sunos4.0.2
1548217309Snwhitehorn		;;
1549217309Snwhitehorn	m68000-sun)
1550217309Snwhitehorn		os=-sunos3
1551217309Snwhitehorn		# This also exists in the configure program, but was not the
1552217309Snwhitehorn		# default.
1553217309Snwhitehorn		# os=-sunos4
1554217309Snwhitehorn		;;
1555217309Snwhitehorn	m68*-cisco)
1556217309Snwhitehorn		os=-aout
1557217309Snwhitehorn		;;
1558220749Snwhitehorn	mep-*)
1559217309Snwhitehorn		os=-elf
1560217309Snwhitehorn		;;
1561217309Snwhitehorn	mips*-cisco)
1562217309Snwhitehorn		os=-elf
1563217309Snwhitehorn		;;
1564217309Snwhitehorn	mips*-*)
1565217309Snwhitehorn		os=-elf
1566217309Snwhitehorn		;;
1567217309Snwhitehorn	or32-*)
1568217309Snwhitehorn		os=-coff
1569217309Snwhitehorn		;;
1570217309Snwhitehorn	*-tti)	# must be before sparc entry or we get the wrong os.
1571217309Snwhitehorn		os=-sysv3
1572217309Snwhitehorn		;;
1573217309Snwhitehorn	sparc-* | *-sun)
1574217309Snwhitehorn		os=-sunos4.1.1
1575217309Snwhitehorn		;;
1576217309Snwhitehorn	*-be)
1577217309Snwhitehorn		os=-beos
1578217309Snwhitehorn		;;
1579217309Snwhitehorn	*-haiku)
1580217309Snwhitehorn		os=-haiku
1581217309Snwhitehorn		;;
1582217309Snwhitehorn	*-ibm)
1583217309Snwhitehorn		os=-aix
1584217309Snwhitehorn		;;
1585220749Snwhitehorn	*-knuth)
1586217309Snwhitehorn		os=-mmixware
1587217309Snwhitehorn		;;
1588217309Snwhitehorn	*-wec)
1589217309Snwhitehorn		os=-proelf
1590217309Snwhitehorn		;;
1591217309Snwhitehorn	*-winbond)
1592217309Snwhitehorn		os=-proelf
1593217309Snwhitehorn		;;
1594217309Snwhitehorn	*-oki)
1595217309Snwhitehorn		os=-proelf
1596217309Snwhitehorn		;;
1597217309Snwhitehorn	*-hp)
1598217309Snwhitehorn		os=-hpux
1599217309Snwhitehorn		;;
1600217309Snwhitehorn	*-hitachi)
1601217309Snwhitehorn		os=-hiux
1602217309Snwhitehorn		;;
1603217309Snwhitehorn	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1604217309Snwhitehorn		os=-sysv
1605217309Snwhitehorn		;;
1606217309Snwhitehorn	*-cbm)
1607217309Snwhitehorn		os=-amigaos
1608217309Snwhitehorn		;;
1609217309Snwhitehorn	*-dg)
1610217309Snwhitehorn		os=-dgux
1611217309Snwhitehorn		;;
1612217309Snwhitehorn	*-dolphin)
1613217309Snwhitehorn		os=-sysv3
1614217309Snwhitehorn		;;
1615217309Snwhitehorn	m68k-ccur)
1616217309Snwhitehorn		os=-rtu
1617217309Snwhitehorn		;;
1618217309Snwhitehorn	m88k-omron*)
1619217309Snwhitehorn		os=-luna
1620217309Snwhitehorn		;;
1621224014Snwhitehorn	*-next)
1622217309Snwhitehorn		os=-nextstep
1623217309Snwhitehorn		;;
1624217309Snwhitehorn	*-sequent)
1625217309Snwhitehorn		os=-ptx
1626217309Snwhitehorn		;;
1627217309Snwhitehorn	*-crds)
1628217309Snwhitehorn		os=-unos
1629217309Snwhitehorn		;;
1630217309Snwhitehorn	*-ns)
1631217309Snwhitehorn		os=-genix
1632217309Snwhitehorn		;;
1633217309Snwhitehorn	i370-*)
1634217309Snwhitehorn		os=-mvs
1635217309Snwhitehorn		;;
1636217309Snwhitehorn	*-next)
1637217309Snwhitehorn		os=-nextstep3
1638217309Snwhitehorn		;;
1639217309Snwhitehorn	*-gould)
1640217309Snwhitehorn		os=-sysv
1641217309Snwhitehorn		;;
1642217309Snwhitehorn	*-highlevel)
1643217309Snwhitehorn		os=-bsd
1644217309Snwhitehorn		;;
1645217309Snwhitehorn	*-encore)
1646217309Snwhitehorn		os=-bsd
1647217309Snwhitehorn		;;
1648217309Snwhitehorn	*-sgi)
1649217309Snwhitehorn		os=-irix
1650217309Snwhitehorn		;;
1651217309Snwhitehorn	*-siemens)
1652217309Snwhitehorn		os=-sysv4
1653217309Snwhitehorn		;;
1654217309Snwhitehorn	*-masscomp)
1655217309Snwhitehorn		os=-rtu
1656217309Snwhitehorn		;;
1657217309Snwhitehorn	f30[01]-fujitsu | f700-fujitsu)
1658217309Snwhitehorn		os=-uxpv
1659217309Snwhitehorn		;;
1660217309Snwhitehorn	*-rom68k)
1661217309Snwhitehorn		os=-coff
1662217309Snwhitehorn		;;
1663217309Snwhitehorn	*-*bug)
1664217309Snwhitehorn		os=-coff
1665217309Snwhitehorn		;;
1666217309Snwhitehorn	*-apple)
1667217309Snwhitehorn		os=-macos
1668217309Snwhitehorn		;;
1669217309Snwhitehorn	*-atari*)
1670217309Snwhitehorn		os=-mint
1671217309Snwhitehorn		;;
1672217309Snwhitehorn	*)
1673217309Snwhitehorn		os=-none
1674217309Snwhitehorn		;;
1675217309Snwhitehornesac
1676217309Snwhitehornfi
1677217309Snwhitehorn
1678217309Snwhitehorn# Here we handle the case where we know the os, and the CPU type, but not the
1679217309Snwhitehorn# manufacturer.  We pick the logical manufacturer.
1680217309Snwhitehornvendor=unknown
1681217309Snwhitehorncase $basic_machine in
1682217309Snwhitehorn	*-unknown)
1683217309Snwhitehorn		case $os in
1684217309Snwhitehorn			-riscix*)
1685217309Snwhitehorn				vendor=acorn
1686217309Snwhitehorn				;;
1687217309Snwhitehorn			-sunos*)
1688217309Snwhitehorn				vendor=sun
1689217309Snwhitehorn				;;
1690217309Snwhitehorn			-cnk*|-aix*)
1691217309Snwhitehorn				vendor=ibm
1692217309Snwhitehorn				;;
1693217309Snwhitehorn			-beos*)
1694217309Snwhitehorn				vendor=be
1695217309Snwhitehorn				;;
1696217309Snwhitehorn			-hpux*)
1697217309Snwhitehorn				vendor=hp
1698217309Snwhitehorn				;;
1699217309Snwhitehorn			-mpeix*)
1700217309Snwhitehorn				vendor=hp
1701217309Snwhitehorn				;;
1702217309Snwhitehorn			-hiux*)
1703217309Snwhitehorn				vendor=hitachi
1704217309Snwhitehorn				;;
1705217309Snwhitehorn			-unos*)
1706217309Snwhitehorn				vendor=crds
1707217309Snwhitehorn				;;
1708217309Snwhitehorn			-dgux*)
1709217309Snwhitehorn				vendor=dg
1710217309Snwhitehorn				;;
1711217309Snwhitehorn			-luna*)
1712217309Snwhitehorn				vendor=omron
1713217309Snwhitehorn				;;
1714217309Snwhitehorn			-genix*)
1715217309Snwhitehorn				vendor=ns
1716217309Snwhitehorn				;;
1717217309Snwhitehorn			-mvs* | -opened*)
1718217309Snwhitehorn				vendor=ibm
1719217309Snwhitehorn				;;
1720217309Snwhitehorn			-os400*)
1721217309Snwhitehorn				vendor=ibm
1722217309Snwhitehorn				;;
1723217309Snwhitehorn			-ptx*)
1724217309Snwhitehorn				vendor=sequent
1725217309Snwhitehorn				;;
1726217309Snwhitehorn			-tpf*)
1727217309Snwhitehorn				vendor=ibm
1728217309Snwhitehorn				;;
1729217309Snwhitehorn			-vxsim* | -vxworks* | -windiss*)
1730217309Snwhitehorn				vendor=wrs
1731217309Snwhitehorn				;;
1732217309Snwhitehorn			-aux*)
1733217309Snwhitehorn				vendor=apple
1734217309Snwhitehorn				;;
1735217309Snwhitehorn			-hms*)
1736217309Snwhitehorn				vendor=hitachi
1737217309Snwhitehorn				;;
1738217309Snwhitehorn			-mpw* | -macos*)
1739217309Snwhitehorn				vendor=apple
1740217309Snwhitehorn				;;
1741217309Snwhitehorn			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1742217309Snwhitehorn				vendor=atari
1743217309Snwhitehorn				;;
1744217309Snwhitehorn			-vos*)
1745217309Snwhitehorn				vendor=stratus
1746217309Snwhitehorn				;;
1747217309Snwhitehorn		esac
1748217309Snwhitehorn		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1749217309Snwhitehorn		;;
1750217309Snwhitehornesac
1751217309Snwhitehorn
1752217309Snwhitehornecho $basic_machine$os
1753217309Snwhitehornexit
1754217309Snwhitehorn
1755217309Snwhitehorn# Local variables:
1756217309Snwhitehorn# eval: (add-hook 'write-file-hooks 'time-stamp)
1757217309Snwhitehorn# time-stamp-start: "timestamp='"
1758217309Snwhitehorn# time-stamp-format: "%:y-%02m-%02d"
1759217309Snwhitehorn# time-stamp-end: "'"
1760217309Snwhitehorn# End:
1761