1238104Sdes#! /bin/sh
2238104Sdes# Configuration validation subroutine script.
3238104Sdes#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4238104Sdes#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5238104Sdes#   2011, 2012 Free Software Foundation, Inc.
6238104Sdes
7238104Sdestimestamp='2012-02-10'
8238104Sdes
9238104Sdes# This file is (in principle) common to ALL GNU software.
10238104Sdes# The presence of a machine in this file suggests that SOME GNU software
11238104Sdes# can handle that machine.  It does not imply ALL GNU software can.
12238104Sdes#
13238104Sdes# This file is free software; you can redistribute it and/or modify
14238104Sdes# it under the terms of the GNU General Public License as published by
15238104Sdes# the Free Software Foundation; either version 2 of the License, or
16238104Sdes# (at your option) any later version.
17238104Sdes#
18238104Sdes# This program is distributed in the hope that it will be useful,
19238104Sdes# but WITHOUT ANY WARRANTY; without even the implied warranty of
20238104Sdes# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21238104Sdes# GNU General Public License for more details.
22238104Sdes#
23238104Sdes# You should have received a copy of the GNU General Public License
24238104Sdes# along with this program; if not, see <http://www.gnu.org/licenses/>.
25238104Sdes#
26238104Sdes# As a special exception to the GNU General Public License, if you
27238104Sdes# distribute this file as part of a program that contains a
28238104Sdes# configuration script generated by Autoconf, you may include it under
29238104Sdes# the same distribution terms that you use for the rest of that program.
30238104Sdes
31238104Sdes
32238104Sdes# Please send patches to <config-patches@gnu.org>.  Submit a context
33238104Sdes# diff and a properly formatted GNU ChangeLog entry.
34238104Sdes#
35238104Sdes# Configuration subroutine to validate and canonicalize a configuration type.
36238104Sdes# Supply the specified configuration type as an argument.
37238104Sdes# If it is invalid, we print an error message on stderr and exit with code 1.
38238104Sdes# Otherwise, we print the canonical config type on stdout and succeed.
39238104Sdes
40238104Sdes# You can get the latest version of this script from:
41238104Sdes# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
42238104Sdes
43238104Sdes# This file is supposed to be the same for all GNU packages
44238104Sdes# and recognize all the CPU types, system types and aliases
45238104Sdes# that are meaningful with *any* GNU software.
46238104Sdes# Each package is responsible for reporting which valid configurations
47238104Sdes# it does not support.  The user should be able to distinguish
48238104Sdes# a failure to support a valid configuration from a meaningless
49238104Sdes# configuration.
50238104Sdes
51238104Sdes# The goal of this file is to map all the various variations of a given
52238104Sdes# machine specification into a single specification in the form:
53238104Sdes#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
54238104Sdes# or in some cases, the newer four-part form:
55238104Sdes#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
56238104Sdes# It is wrong to echo any other type of specification.
57238104Sdes
58238104Sdesme=`echo "$0" | sed -e 's,.*/,,'`
59238104Sdes
60238104Sdesusage="\
61238104SdesUsage: $0 [OPTION] CPU-MFR-OPSYS
62238104Sdes       $0 [OPTION] ALIAS
63238104Sdes
64238104SdesCanonicalize a configuration name.
65238104Sdes
66238104SdesOperation modes:
67238104Sdes  -h, --help         print this help, then exit
68238104Sdes  -t, --time-stamp   print date of last modification, then exit
69238104Sdes  -v, --version      print version number, then exit
70238104Sdes
71238104SdesReport bugs and patches to <config-patches@gnu.org>."
72238104Sdes
73238104Sdesversion="\
74238104SdesGNU config.sub ($timestamp)
75238104Sdes
76238104SdesCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
77238104Sdes2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
78238104SdesFree Software Foundation, Inc.
79238104Sdes
80238104SdesThis is free software; see the source for copying conditions.  There is NO
81238104Sdeswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
82238104Sdes
83238104Sdeshelp="
84238104SdesTry \`$me --help' for more information."
85238104Sdes
86238104Sdes# Parse command line
87238104Sdeswhile test $# -gt 0 ; do
88238104Sdes  case $1 in
89238104Sdes    --time-stamp | --time* | -t )
90238104Sdes       echo "$timestamp" ; exit ;;
91238104Sdes    --version | -v )
92238104Sdes       echo "$version" ; exit ;;
93238104Sdes    --help | --h* | -h )
94238104Sdes       echo "$usage"; exit ;;
95238104Sdes    -- )     # Stop option processing
96238104Sdes       shift; break ;;
97238104Sdes    - )	# Use stdin as input.
98238104Sdes       break ;;
99238104Sdes    -* )
100238104Sdes       echo "$me: invalid option $1$help"
101238104Sdes       exit 1 ;;
102238104Sdes
103238104Sdes    *local*)
104238104Sdes       # First pass through any local machine types.
105238104Sdes       echo $1
106238104Sdes       exit ;;
107238104Sdes
108238104Sdes    * )
109238104Sdes       break ;;
110238104Sdes  esac
111238104Sdesdone
112238104Sdes
113238104Sdescase $# in
114238104Sdes 0) echo "$me: missing argument$help" >&2
115238104Sdes    exit 1;;
116238104Sdes 1) ;;
117238104Sdes *) echo "$me: too many arguments$help" >&2
118238104Sdes    exit 1;;
119238104Sdesesac
120238104Sdes
121238104Sdes# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
122238104Sdes# Here we must recognize all the valid KERNEL-OS combinations.
123238104Sdesmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
124238104Sdescase $maybe_os in
125238104Sdes  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
126238104Sdes  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
127238104Sdes  knetbsd*-gnu* | netbsd*-gnu* | \
128238104Sdes  kopensolaris*-gnu* | \
129238104Sdes  storm-chaos* | os2-emx* | rtmk-nova*)
130238104Sdes    os=-$maybe_os
131238104Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
132238104Sdes    ;;
133238104Sdes  android-linux)
134238104Sdes    os=-linux-android
135238104Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
136238104Sdes    ;;
137238104Sdes  *)
138238104Sdes    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
139238104Sdes    if [ $basic_machine != $1 ]
140238104Sdes    then os=`echo $1 | sed 's/.*-/-/'`
141238104Sdes    else os=; fi
142238104Sdes    ;;
143238104Sdesesac
144238104Sdes
145238104Sdes### Let's recognize common machines as not being operating systems so
146238104Sdes### that things like config.sub decstation-3100 work.  We also
147238104Sdes### recognize some manufacturers as not being operating systems, so we
148238104Sdes### can provide default operating systems below.
149238104Sdescase $os in
150238104Sdes	-sun*os*)
151238104Sdes		# Prevent following clause from handling this invalid input.
152238104Sdes		;;
153238104Sdes	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
154238104Sdes	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
155238104Sdes	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
156238104Sdes	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
157238104Sdes	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
158238104Sdes	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
159238104Sdes	-apple | -axis | -knuth | -cray | -microblaze)
160238104Sdes		os=
161238104Sdes		basic_machine=$1
162238104Sdes		;;
163238104Sdes	-bluegene*)
164238104Sdes		os=-cnk
165238104Sdes		;;
166238104Sdes	-sim | -cisco | -oki | -wec | -winbond)
167238104Sdes		os=
168238104Sdes		basic_machine=$1
169238104Sdes		;;
170238104Sdes	-scout)
171238104Sdes		;;
172238104Sdes	-wrs)
173238104Sdes		os=-vxworks
174238104Sdes		basic_machine=$1
175238104Sdes		;;
176238104Sdes	-chorusos*)
177238104Sdes		os=-chorusos
178238104Sdes		basic_machine=$1
179238104Sdes		;;
180238104Sdes	-chorusrdb)
181238104Sdes		os=-chorusrdb
182238104Sdes		basic_machine=$1
183238104Sdes		;;
184238104Sdes	-hiux*)
185238104Sdes		os=-hiuxwe2
186238104Sdes		;;
187238104Sdes	-sco6)
188238104Sdes		os=-sco5v6
189238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190238104Sdes		;;
191238104Sdes	-sco5)
192238104Sdes		os=-sco3.2v5
193238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194238104Sdes		;;
195238104Sdes	-sco4)
196238104Sdes		os=-sco3.2v4
197238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198238104Sdes		;;
199238104Sdes	-sco3.2.[4-9]*)
200238104Sdes		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
201238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202238104Sdes		;;
203238104Sdes	-sco3.2v[4-9]*)
204238104Sdes		# Don't forget version if it is 3.2v4 or newer.
205238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206238104Sdes		;;
207238104Sdes	-sco5v6*)
208238104Sdes		# Don't forget version if it is 3.2v4 or newer.
209238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210238104Sdes		;;
211238104Sdes	-sco*)
212238104Sdes		os=-sco3.2v2
213238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214238104Sdes		;;
215238104Sdes	-udk*)
216238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
217238104Sdes		;;
218238104Sdes	-isc)
219238104Sdes		os=-isc2.2
220238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
221238104Sdes		;;
222238104Sdes	-clix*)
223238104Sdes		basic_machine=clipper-intergraph
224238104Sdes		;;
225238104Sdes	-isc*)
226238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
227238104Sdes		;;
228238104Sdes	-lynx*)
229238104Sdes		os=-lynxos
230238104Sdes		;;
231238104Sdes	-ptx*)
232238104Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
233238104Sdes		;;
234238104Sdes	-windowsnt*)
235238104Sdes		os=`echo $os | sed -e 's/windowsnt/winnt/'`
236238104Sdes		;;
237238104Sdes	-psos*)
238238104Sdes		os=-psos
239238104Sdes		;;
240238104Sdes	-mint | -mint[0-9]*)
241238104Sdes		basic_machine=m68k-atari
242238104Sdes		os=-mint
243238104Sdes		;;
244238104Sdesesac
245238104Sdes
246238104Sdes# Decode aliases for certain CPU-COMPANY combinations.
247238104Sdescase $basic_machine in
248238104Sdes	# Recognize the basic CPU types without company name.
249238104Sdes	# Some are omitted here because they have special meanings below.
250238104Sdes	1750a | 580 \
251238104Sdes	| a29k \
252238104Sdes	| aarch64 | aarch64_be \
253238104Sdes	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
254238104Sdes	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
255238104Sdes	| am33_2.0 \
256238104Sdes	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
257238104Sdes        | be32 | be64 \
258238104Sdes	| bfin \
259238104Sdes	| c4x | clipper \
260238104Sdes	| d10v | d30v | dlx | dsp16xx \
261238104Sdes	| epiphany \
262238104Sdes	| fido | fr30 | frv \
263238104Sdes	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
264238104Sdes	| hexagon \
265238104Sdes	| i370 | i860 | i960 | ia64 \
266238104Sdes	| ip2k | iq2000 \
267238104Sdes	| le32 | le64 \
268238104Sdes	| lm32 \
269238104Sdes	| m32c | m32r | m32rle | m68000 | m68k | m88k \
270238104Sdes	| maxq | mb | microblaze | mcore | mep | metag \
271238104Sdes	| mips | mipsbe | mipseb | mipsel | mipsle \
272238104Sdes	| mips16 \
273238104Sdes	| mips64 | mips64el \
274238104Sdes	| mips64octeon | mips64octeonel \
275238104Sdes	| mips64orion | mips64orionel \
276238104Sdes	| mips64r5900 | mips64r5900el \
277238104Sdes	| mips64vr | mips64vrel \
278238104Sdes	| mips64vr4100 | mips64vr4100el \
279238104Sdes	| mips64vr4300 | mips64vr4300el \
280238104Sdes	| mips64vr5000 | mips64vr5000el \
281238104Sdes	| mips64vr5900 | mips64vr5900el \
282238104Sdes	| mipsisa32 | mipsisa32el \
283238104Sdes	| mipsisa32r2 | mipsisa32r2el \
284238104Sdes	| mipsisa64 | mipsisa64el \
285238104Sdes	| mipsisa64r2 | mipsisa64r2el \
286238104Sdes	| mipsisa64sb1 | mipsisa64sb1el \
287238104Sdes	| mipsisa64sr71k | mipsisa64sr71kel \
288238104Sdes	| mipstx39 | mipstx39el \
289238104Sdes	| mn10200 | mn10300 \
290238104Sdes	| moxie \
291238104Sdes	| mt \
292238104Sdes	| msp430 \
293238104Sdes	| nds32 | nds32le | nds32be \
294238104Sdes	| nios | nios2 \
295238104Sdes	| ns16k | ns32k \
296238104Sdes	| open8 \
297238104Sdes	| or32 \
298238104Sdes	| pdp10 | pdp11 | pj | pjl \
299238104Sdes	| powerpc | powerpc64 | powerpc64le | powerpcle \
300238104Sdes	| pyramid \
301238104Sdes	| rl78 | rx \
302238104Sdes	| score \
303238104Sdes	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
304238104Sdes	| sh64 | sh64le \
305238104Sdes	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
306238104Sdes	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
307238104Sdes	| spu \
308238104Sdes	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
309238104Sdes	| ubicom32 \
310238104Sdes	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
311238104Sdes	| we32k \
312238104Sdes	| x86 | xc16x | xstormy16 | xtensa \
313238104Sdes	| z8k | z80)
314238104Sdes		basic_machine=$basic_machine-unknown
315238104Sdes		;;
316238104Sdes	c54x)
317238104Sdes		basic_machine=tic54x-unknown
318238104Sdes		;;
319238104Sdes	c55x)
320238104Sdes		basic_machine=tic55x-unknown
321238104Sdes		;;
322238104Sdes	c6x)
323238104Sdes		basic_machine=tic6x-unknown
324238104Sdes		;;
325238104Sdes	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
326238104Sdes		basic_machine=$basic_machine-unknown
327238104Sdes		os=-none
328238104Sdes		;;
329238104Sdes	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
330238104Sdes		;;
331238104Sdes	ms1)
332238104Sdes		basic_machine=mt-unknown
333238104Sdes		;;
334238104Sdes
335238104Sdes	strongarm | thumb | xscale)
336238104Sdes		basic_machine=arm-unknown
337238104Sdes		;;
338238104Sdes	xgate)
339238104Sdes		basic_machine=$basic_machine-unknown
340238104Sdes		os=-none
341238104Sdes		;;
342238104Sdes	xscaleeb)
343238104Sdes		basic_machine=armeb-unknown
344238104Sdes		;;
345238104Sdes
346238104Sdes	xscaleel)
347238104Sdes		basic_machine=armel-unknown
348238104Sdes		;;
349238104Sdes
350238104Sdes	# We use `pc' rather than `unknown'
351238104Sdes	# because (1) that's what they normally are, and
352238104Sdes	# (2) the word "unknown" tends to confuse beginning users.
353238104Sdes	i*86 | x86_64)
354238104Sdes	  basic_machine=$basic_machine-pc
355238104Sdes	  ;;
356238104Sdes	# Object if more than one company name word.
357238104Sdes	*-*-*)
358238104Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
359238104Sdes		exit 1
360238104Sdes		;;
361238104Sdes	# Recognize the basic CPU types with company name.
362238104Sdes	580-* \
363238104Sdes	| a29k-* \
364238104Sdes	| aarch64-* | aarch64_be-* \
365238104Sdes	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
366238104Sdes	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
367238104Sdes	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
368238104Sdes	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
369238104Sdes	| avr-* | avr32-* \
370238104Sdes	| be32-* | be64-* \
371238104Sdes	| bfin-* | bs2000-* \
372238104Sdes	| c[123]* | c30-* | [cjt]90-* | c4x-* \
373238104Sdes	| clipper-* | craynv-* | cydra-* \
374238104Sdes	| d10v-* | d30v-* | dlx-* \
375238104Sdes	| elxsi-* \
376238104Sdes	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
377238104Sdes	| h8300-* | h8500-* \
378238104Sdes	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
379238104Sdes	| hexagon-* \
380238104Sdes	| i*86-* | i860-* | i960-* | ia64-* \
381238104Sdes	| ip2k-* | iq2000-* \
382238104Sdes	| le32-* | le64-* \
383238104Sdes	| lm32-* \
384238104Sdes	| m32c-* | m32r-* | m32rle-* \
385238104Sdes	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
386238104Sdes	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
387238104Sdes	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
388238104Sdes	| mips16-* \
389238104Sdes	| mips64-* | mips64el-* \
390238104Sdes	| mips64octeon-* | mips64octeonel-* \
391238104Sdes	| mips64orion-* | mips64orionel-* \
392238104Sdes	| mips64r5900-* | mips64r5900el-* \
393238104Sdes	| mips64vr-* | mips64vrel-* \
394238104Sdes	| mips64vr4100-* | mips64vr4100el-* \
395238104Sdes	| mips64vr4300-* | mips64vr4300el-* \
396238104Sdes	| mips64vr5000-* | mips64vr5000el-* \
397238104Sdes	| mips64vr5900-* | mips64vr5900el-* \
398238104Sdes	| mipsisa32-* | mipsisa32el-* \
399238104Sdes	| mipsisa32r2-* | mipsisa32r2el-* \
400238104Sdes	| mipsisa64-* | mipsisa64el-* \
401238104Sdes	| mipsisa64r2-* | mipsisa64r2el-* \
402238104Sdes	| mipsisa64sb1-* | mipsisa64sb1el-* \
403238104Sdes	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
404238104Sdes	| mipstx39-* | mipstx39el-* \
405238104Sdes	| mmix-* \
406238104Sdes	| mt-* \
407238104Sdes	| msp430-* \
408238104Sdes	| nds32-* | nds32le-* | nds32be-* \
409238104Sdes	| nios-* | nios2-* \
410238104Sdes	| none-* | np1-* | ns16k-* | ns32k-* \
411238104Sdes	| open8-* \
412238104Sdes	| orion-* \
413238104Sdes	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
414238104Sdes	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
415238104Sdes	| pyramid-* \
416238104Sdes	| rl78-* | romp-* | rs6000-* | rx-* \
417238104Sdes	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
418238104Sdes	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
419238104Sdes	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
420238104Sdes	| sparclite-* \
421238104Sdes	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
422238104Sdes	| tahoe-* \
423238104Sdes	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
424238104Sdes	| tile*-* \
425238104Sdes	| tron-* \
426238104Sdes	| ubicom32-* \
427238104Sdes	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
428238104Sdes	| vax-* \
429238104Sdes	| we32k-* \
430238104Sdes	| x86-* | x86_64-* | xc16x-* | xps100-* \
431238104Sdes	| xstormy16-* | xtensa*-* \
432238104Sdes	| ymp-* \
433238104Sdes	| z8k-* | z80-*)
434238104Sdes		;;
435238104Sdes	# Recognize the basic CPU types without company name, with glob match.
436238104Sdes	xtensa*)
437238104Sdes		basic_machine=$basic_machine-unknown
438238104Sdes		;;
439238104Sdes	# Recognize the various machine names and aliases which stand
440238104Sdes	# for a CPU type and a company and sometimes even an OS.
441238104Sdes	386bsd)
442238104Sdes		basic_machine=i386-unknown
443238104Sdes		os=-bsd
444238104Sdes		;;
445238104Sdes	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
446238104Sdes		basic_machine=m68000-att
447238104Sdes		;;
448238104Sdes	3b*)
449238104Sdes		basic_machine=we32k-att
450238104Sdes		;;
451238104Sdes	a29khif)
452238104Sdes		basic_machine=a29k-amd
453238104Sdes		os=-udi
454238104Sdes		;;
455238104Sdes	abacus)
456238104Sdes		basic_machine=abacus-unknown
457238104Sdes		;;
458238104Sdes	adobe68k)
459238104Sdes		basic_machine=m68010-adobe
460238104Sdes		os=-scout
461238104Sdes		;;
462238104Sdes	alliant | fx80)
463238104Sdes		basic_machine=fx80-alliant
464238104Sdes		;;
465238104Sdes	altos | altos3068)
466238104Sdes		basic_machine=m68k-altos
467238104Sdes		;;
468238104Sdes	am29k)
469238104Sdes		basic_machine=a29k-none
470238104Sdes		os=-bsd
471238104Sdes		;;
472238104Sdes	amd64)
473238104Sdes		basic_machine=x86_64-pc
474238104Sdes		;;
475238104Sdes	amd64-*)
476238104Sdes		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
477238104Sdes		;;
478238104Sdes	amdahl)
479238104Sdes		basic_machine=580-amdahl
480238104Sdes		os=-sysv
481238104Sdes		;;
482238104Sdes	amiga | amiga-*)
483238104Sdes		basic_machine=m68k-unknown
484238104Sdes		;;
485238104Sdes	amigaos | amigados)
486238104Sdes		basic_machine=m68k-unknown
487238104Sdes		os=-amigaos
488238104Sdes		;;
489238104Sdes	amigaunix | amix)
490238104Sdes		basic_machine=m68k-unknown
491238104Sdes		os=-sysv4
492238104Sdes		;;
493238104Sdes	apollo68)
494238104Sdes		basic_machine=m68k-apollo
495238104Sdes		os=-sysv
496238104Sdes		;;
497238104Sdes	apollo68bsd)
498238104Sdes		basic_machine=m68k-apollo
499238104Sdes		os=-bsd
500238104Sdes		;;
501238104Sdes	aros)
502238104Sdes		basic_machine=i386-pc
503238104Sdes		os=-aros
504238104Sdes		;;
505238104Sdes	aux)
506238104Sdes		basic_machine=m68k-apple
507238104Sdes		os=-aux
508238104Sdes		;;
509238104Sdes	balance)
510238104Sdes		basic_machine=ns32k-sequent
511238104Sdes		os=-dynix
512238104Sdes		;;
513238104Sdes	blackfin)
514238104Sdes		basic_machine=bfin-unknown
515238104Sdes		os=-linux
516238104Sdes		;;
517238104Sdes	blackfin-*)
518238104Sdes		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
519238104Sdes		os=-linux
520238104Sdes		;;
521238104Sdes	bluegene*)
522238104Sdes		basic_machine=powerpc-ibm
523238104Sdes		os=-cnk
524238104Sdes		;;
525238104Sdes	c54x-*)
526238104Sdes		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
527238104Sdes		;;
528238104Sdes	c55x-*)
529238104Sdes		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
530238104Sdes		;;
531238104Sdes	c6x-*)
532238104Sdes		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
533238104Sdes		;;
534238104Sdes	c90)
535238104Sdes		basic_machine=c90-cray
536238104Sdes		os=-unicos
537238104Sdes		;;
538238104Sdes	cegcc)
539238104Sdes		basic_machine=arm-unknown
540238104Sdes		os=-cegcc
541238104Sdes		;;
542238104Sdes	convex-c1)
543238104Sdes		basic_machine=c1-convex
544238104Sdes		os=-bsd
545238104Sdes		;;
546238104Sdes	convex-c2)
547238104Sdes		basic_machine=c2-convex
548238104Sdes		os=-bsd
549238104Sdes		;;
550238104Sdes	convex-c32)
551238104Sdes		basic_machine=c32-convex
552238104Sdes		os=-bsd
553238104Sdes		;;
554238104Sdes	convex-c34)
555238104Sdes		basic_machine=c34-convex
556238104Sdes		os=-bsd
557238104Sdes		;;
558238104Sdes	convex-c38)
559238104Sdes		basic_machine=c38-convex
560238104Sdes		os=-bsd
561238104Sdes		;;
562238104Sdes	cray | j90)
563238104Sdes		basic_machine=j90-cray
564238104Sdes		os=-unicos
565238104Sdes		;;
566238104Sdes	craynv)
567238104Sdes		basic_machine=craynv-cray
568238104Sdes		os=-unicosmp
569238104Sdes		;;
570238104Sdes	cr16 | cr16-*)
571238104Sdes		basic_machine=cr16-unknown
572238104Sdes		os=-elf
573238104Sdes		;;
574238104Sdes	crds | unos)
575238104Sdes		basic_machine=m68k-crds
576238104Sdes		;;
577238104Sdes	crisv32 | crisv32-* | etraxfs*)
578238104Sdes		basic_machine=crisv32-axis
579238104Sdes		;;
580238104Sdes	cris | cris-* | etrax*)
581238104Sdes		basic_machine=cris-axis
582238104Sdes		;;
583238104Sdes	crx)
584238104Sdes		basic_machine=crx-unknown
585238104Sdes		os=-elf
586238104Sdes		;;
587238104Sdes	da30 | da30-*)
588238104Sdes		basic_machine=m68k-da30
589238104Sdes		;;
590238104Sdes	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
591238104Sdes		basic_machine=mips-dec
592238104Sdes		;;
593238104Sdes	decsystem10* | dec10*)
594238104Sdes		basic_machine=pdp10-dec
595238104Sdes		os=-tops10
596238104Sdes		;;
597238104Sdes	decsystem20* | dec20*)
598238104Sdes		basic_machine=pdp10-dec
599238104Sdes		os=-tops20
600238104Sdes		;;
601238104Sdes	delta | 3300 | motorola-3300 | motorola-delta \
602238104Sdes	      | 3300-motorola | delta-motorola)
603238104Sdes		basic_machine=m68k-motorola
604238104Sdes		;;
605238104Sdes	delta88)
606238104Sdes		basic_machine=m88k-motorola
607238104Sdes		os=-sysv3
608238104Sdes		;;
609238104Sdes	dicos)
610238104Sdes		basic_machine=i686-pc
611238104Sdes		os=-dicos
612238104Sdes		;;
613238104Sdes	djgpp)
614238104Sdes		basic_machine=i586-pc
615238104Sdes		os=-msdosdjgpp
616238104Sdes		;;
617238104Sdes	dpx20 | dpx20-*)
618238104Sdes		basic_machine=rs6000-bull
619238104Sdes		os=-bosx
620238104Sdes		;;
621238104Sdes	dpx2* | dpx2*-bull)
622238104Sdes		basic_machine=m68k-bull
623238104Sdes		os=-sysv3
624238104Sdes		;;
625238104Sdes	ebmon29k)
626238104Sdes		basic_machine=a29k-amd
627238104Sdes		os=-ebmon
628238104Sdes		;;
629238104Sdes	elxsi)
630238104Sdes		basic_machine=elxsi-elxsi
631238104Sdes		os=-bsd
632238104Sdes		;;
633238104Sdes	encore | umax | mmax)
634238104Sdes		basic_machine=ns32k-encore
635238104Sdes		;;
636238104Sdes	es1800 | OSE68k | ose68k | ose | OSE)
637238104Sdes		basic_machine=m68k-ericsson
638238104Sdes		os=-ose
639238104Sdes		;;
640238104Sdes	fx2800)
641238104Sdes		basic_machine=i860-alliant
642238104Sdes		;;
643238104Sdes	genix)
644238104Sdes		basic_machine=ns32k-ns
645238104Sdes		;;
646238104Sdes	gmicro)
647238104Sdes		basic_machine=tron-gmicro
648238104Sdes		os=-sysv
649238104Sdes		;;
650238104Sdes	go32)
651238104Sdes		basic_machine=i386-pc
652238104Sdes		os=-go32
653238104Sdes		;;
654238104Sdes	h3050r* | hiux*)
655238104Sdes		basic_machine=hppa1.1-hitachi
656238104Sdes		os=-hiuxwe2
657238104Sdes		;;
658238104Sdes	h8300hms)
659238104Sdes		basic_machine=h8300-hitachi
660238104Sdes		os=-hms
661238104Sdes		;;
662238104Sdes	h8300xray)
663238104Sdes		basic_machine=h8300-hitachi
664238104Sdes		os=-xray
665238104Sdes		;;
666238104Sdes	h8500hms)
667238104Sdes		basic_machine=h8500-hitachi
668238104Sdes		os=-hms
669238104Sdes		;;
670238104Sdes	harris)
671238104Sdes		basic_machine=m88k-harris
672238104Sdes		os=-sysv3
673238104Sdes		;;
674238104Sdes	hp300-*)
675238104Sdes		basic_machine=m68k-hp
676238104Sdes		;;
677238104Sdes	hp300bsd)
678238104Sdes		basic_machine=m68k-hp
679238104Sdes		os=-bsd
680238104Sdes		;;
681238104Sdes	hp300hpux)
682238104Sdes		basic_machine=m68k-hp
683238104Sdes		os=-hpux
684238104Sdes		;;
685238104Sdes	hp3k9[0-9][0-9] | hp9[0-9][0-9])
686238104Sdes		basic_machine=hppa1.0-hp
687238104Sdes		;;
688238104Sdes	hp9k2[0-9][0-9] | hp9k31[0-9])
689238104Sdes		basic_machine=m68000-hp
690238104Sdes		;;
691238104Sdes	hp9k3[2-9][0-9])
692238104Sdes		basic_machine=m68k-hp
693238104Sdes		;;
694238104Sdes	hp9k6[0-9][0-9] | hp6[0-9][0-9])
695238104Sdes		basic_machine=hppa1.0-hp
696238104Sdes		;;
697238104Sdes	hp9k7[0-79][0-9] | hp7[0-79][0-9])
698238104Sdes		basic_machine=hppa1.1-hp
699238104Sdes		;;
700238104Sdes	hp9k78[0-9] | hp78[0-9])
701238104Sdes		# FIXME: really hppa2.0-hp
702238104Sdes		basic_machine=hppa1.1-hp
703238104Sdes		;;
704238104Sdes	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
705238104Sdes		# FIXME: really hppa2.0-hp
706238104Sdes		basic_machine=hppa1.1-hp
707238104Sdes		;;
708238104Sdes	hp9k8[0-9][13679] | hp8[0-9][13679])
709238104Sdes		basic_machine=hppa1.1-hp
710238104Sdes		;;
711238104Sdes	hp9k8[0-9][0-9] | hp8[0-9][0-9])
712238104Sdes		basic_machine=hppa1.0-hp
713238104Sdes		;;
714238104Sdes	hppa-next)
715238104Sdes		os=-nextstep3
716238104Sdes		;;
717238104Sdes	hppaosf)
718238104Sdes		basic_machine=hppa1.1-hp
719238104Sdes		os=-osf
720238104Sdes		;;
721238104Sdes	hppro)
722238104Sdes		basic_machine=hppa1.1-hp
723238104Sdes		os=-proelf
724238104Sdes		;;
725238104Sdes	i370-ibm* | ibm*)
726238104Sdes		basic_machine=i370-ibm
727238104Sdes		;;
728238104Sdes	i*86v32)
729238104Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
730238104Sdes		os=-sysv32
731238104Sdes		;;
732238104Sdes	i*86v4*)
733238104Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
734238104Sdes		os=-sysv4
735238104Sdes		;;
736238104Sdes	i*86v)
737238104Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
738238104Sdes		os=-sysv
739238104Sdes		;;
740238104Sdes	i*86sol2)
741238104Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
742238104Sdes		os=-solaris2
743238104Sdes		;;
744238104Sdes	i386mach)
745238104Sdes		basic_machine=i386-mach
746238104Sdes		os=-mach
747238104Sdes		;;
748238104Sdes	i386-vsta | vsta)
749238104Sdes		basic_machine=i386-unknown
750238104Sdes		os=-vsta
751238104Sdes		;;
752238104Sdes	iris | iris4d)
753238104Sdes		basic_machine=mips-sgi
754238104Sdes		case $os in
755238104Sdes		    -irix*)
756238104Sdes			;;
757238104Sdes		    *)
758238104Sdes			os=-irix4
759238104Sdes			;;
760238104Sdes		esac
761238104Sdes		;;
762238104Sdes	isi68 | isi)
763238104Sdes		basic_machine=m68k-isi
764238104Sdes		os=-sysv
765238104Sdes		;;
766238104Sdes	m68knommu)
767238104Sdes		basic_machine=m68k-unknown
768238104Sdes		os=-linux
769238104Sdes		;;
770238104Sdes	m68knommu-*)
771238104Sdes		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
772238104Sdes		os=-linux
773238104Sdes		;;
774238104Sdes	m88k-omron*)
775238104Sdes		basic_machine=m88k-omron
776238104Sdes		;;
777238104Sdes	magnum | m3230)
778238104Sdes		basic_machine=mips-mips
779238104Sdes		os=-sysv
780238104Sdes		;;
781238104Sdes	merlin)
782238104Sdes		basic_machine=ns32k-utek
783238104Sdes		os=-sysv
784238104Sdes		;;
785238104Sdes	microblaze)
786238104Sdes		basic_machine=microblaze-xilinx
787238104Sdes		;;
788238104Sdes	mingw32)
789238104Sdes		basic_machine=i386-pc
790238104Sdes		os=-mingw32
791238104Sdes		;;
792238104Sdes	mingw32ce)
793238104Sdes		basic_machine=arm-unknown
794238104Sdes		os=-mingw32ce
795238104Sdes		;;
796238104Sdes	miniframe)
797238104Sdes		basic_machine=m68000-convergent
798238104Sdes		;;
799238104Sdes	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
800238104Sdes		basic_machine=m68k-atari
801238104Sdes		os=-mint
802238104Sdes		;;
803238104Sdes	mips3*-*)
804238104Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
805238104Sdes		;;
806238104Sdes	mips3*)
807238104Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
808238104Sdes		;;
809238104Sdes	monitor)
810238104Sdes		basic_machine=m68k-rom68k
811238104Sdes		os=-coff
812238104Sdes		;;
813238104Sdes	morphos)
814238104Sdes		basic_machine=powerpc-unknown
815238104Sdes		os=-morphos
816238104Sdes		;;
817238104Sdes	msdos)
818238104Sdes		basic_machine=i386-pc
819238104Sdes		os=-msdos
820238104Sdes		;;
821238104Sdes	ms1-*)
822238104Sdes		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
823238104Sdes		;;
824238104Sdes	msys)
825238104Sdes		basic_machine=i386-pc
826238104Sdes		os=-msys
827238104Sdes		;;
828238104Sdes	mvs)
829238104Sdes		basic_machine=i370-ibm
830238104Sdes		os=-mvs
831238104Sdes		;;
832238104Sdes	nacl)
833238104Sdes		basic_machine=le32-unknown
834238104Sdes		os=-nacl
835238104Sdes		;;
836238104Sdes	ncr3000)
837238104Sdes		basic_machine=i486-ncr
838238104Sdes		os=-sysv4
839238104Sdes		;;
840238104Sdes	netbsd386)
841238104Sdes		basic_machine=i386-unknown
842238104Sdes		os=-netbsd
843238104Sdes		;;
844238104Sdes	netwinder)
845238104Sdes		basic_machine=armv4l-rebel
846238104Sdes		os=-linux
847238104Sdes		;;
848238104Sdes	news | news700 | news800 | news900)
849238104Sdes		basic_machine=m68k-sony
850238104Sdes		os=-newsos
851238104Sdes		;;
852238104Sdes	news1000)
853238104Sdes		basic_machine=m68030-sony
854238104Sdes		os=-newsos
855238104Sdes		;;
856238104Sdes	news-3600 | risc-news)
857238104Sdes		basic_machine=mips-sony
858238104Sdes		os=-newsos
859238104Sdes		;;
860238104Sdes	necv70)
861238104Sdes		basic_machine=v70-nec
862238104Sdes		os=-sysv
863238104Sdes		;;
864238104Sdes	next | m*-next )
865238104Sdes		basic_machine=m68k-next
866238104Sdes		case $os in
867238104Sdes		    -nextstep* )
868238104Sdes			;;
869238104Sdes		    -ns2*)
870238104Sdes		      os=-nextstep2
871238104Sdes			;;
872238104Sdes		    *)
873238104Sdes		      os=-nextstep3
874238104Sdes			;;
875238104Sdes		esac
876238104Sdes		;;
877238104Sdes	nh3000)
878238104Sdes		basic_machine=m68k-harris
879238104Sdes		os=-cxux
880238104Sdes		;;
881238104Sdes	nh[45]000)
882238104Sdes		basic_machine=m88k-harris
883238104Sdes		os=-cxux
884238104Sdes		;;
885238104Sdes	nindy960)
886238104Sdes		basic_machine=i960-intel
887238104Sdes		os=-nindy
888238104Sdes		;;
889238104Sdes	mon960)
890238104Sdes		basic_machine=i960-intel
891238104Sdes		os=-mon960
892238104Sdes		;;
893238104Sdes	nonstopux)
894238104Sdes		basic_machine=mips-compaq
895238104Sdes		os=-nonstopux
896238104Sdes		;;
897238104Sdes	np1)
898238104Sdes		basic_machine=np1-gould
899238104Sdes		;;
900238104Sdes	neo-tandem)
901238104Sdes		basic_machine=neo-tandem
902238104Sdes		;;
903238104Sdes	nse-tandem)
904238104Sdes		basic_machine=nse-tandem
905238104Sdes		;;
906238104Sdes	nsr-tandem)
907238104Sdes		basic_machine=nsr-tandem
908238104Sdes		;;
909238104Sdes	op50n-* | op60c-*)
910238104Sdes		basic_machine=hppa1.1-oki
911238104Sdes		os=-proelf
912238104Sdes		;;
913238104Sdes	openrisc | openrisc-*)
914238104Sdes		basic_machine=or32-unknown
915238104Sdes		;;
916238104Sdes	os400)
917238104Sdes		basic_machine=powerpc-ibm
918238104Sdes		os=-os400
919238104Sdes		;;
920238104Sdes	OSE68000 | ose68000)
921238104Sdes		basic_machine=m68000-ericsson
922238104Sdes		os=-ose
923238104Sdes		;;
924238104Sdes	os68k)
925238104Sdes		basic_machine=m68k-none
926238104Sdes		os=-os68k
927238104Sdes		;;
928238104Sdes	pa-hitachi)
929238104Sdes		basic_machine=hppa1.1-hitachi
930238104Sdes		os=-hiuxwe2
931238104Sdes		;;
932238104Sdes	paragon)
933238104Sdes		basic_machine=i860-intel
934238104Sdes		os=-osf
935238104Sdes		;;
936238104Sdes	parisc)
937238104Sdes		basic_machine=hppa-unknown
938238104Sdes		os=-linux
939238104Sdes		;;
940238104Sdes	parisc-*)
941238104Sdes		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
942238104Sdes		os=-linux
943238104Sdes		;;
944238104Sdes	pbd)
945238104Sdes		basic_machine=sparc-tti
946238104Sdes		;;
947238104Sdes	pbb)
948238104Sdes		basic_machine=m68k-tti
949238104Sdes		;;
950238104Sdes	pc532 | pc532-*)
951238104Sdes		basic_machine=ns32k-pc532
952238104Sdes		;;
953238104Sdes	pc98)
954238104Sdes		basic_machine=i386-pc
955238104Sdes		;;
956238104Sdes	pc98-*)
957238104Sdes		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
958238104Sdes		;;
959238104Sdes	pentium | p5 | k5 | k6 | nexgen | viac3)
960238104Sdes		basic_machine=i586-pc
961238104Sdes		;;
962238104Sdes	pentiumpro | p6 | 6x86 | athlon | athlon_*)
963238104Sdes		basic_machine=i686-pc
964238104Sdes		;;
965238104Sdes	pentiumii | pentium2 | pentiumiii | pentium3)
966238104Sdes		basic_machine=i686-pc
967238104Sdes		;;
968238104Sdes	pentium4)
969238104Sdes		basic_machine=i786-pc
970238104Sdes		;;
971238104Sdes	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
972238104Sdes		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
973238104Sdes		;;
974238104Sdes	pentiumpro-* | p6-* | 6x86-* | athlon-*)
975238104Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
976238104Sdes		;;
977238104Sdes	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
978238104Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
979238104Sdes		;;
980238104Sdes	pentium4-*)
981238104Sdes		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
982238104Sdes		;;
983238104Sdes	pn)
984238104Sdes		basic_machine=pn-gould
985238104Sdes		;;
986238104Sdes	power)	basic_machine=power-ibm
987238104Sdes		;;
988238104Sdes	ppc | ppcbe)	basic_machine=powerpc-unknown
989238104Sdes		;;
990238104Sdes	ppc-* | ppcbe-*)
991238104Sdes		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
992238104Sdes		;;
993238104Sdes	ppcle | powerpclittle | ppc-le | powerpc-little)
994238104Sdes		basic_machine=powerpcle-unknown
995238104Sdes		;;
996238104Sdes	ppcle-* | powerpclittle-*)
997238104Sdes		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
998238104Sdes		;;
999238104Sdes	ppc64)	basic_machine=powerpc64-unknown
1000238104Sdes		;;
1001238104Sdes	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1002238104Sdes		;;
1003238104Sdes	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1004238104Sdes		basic_machine=powerpc64le-unknown
1005238104Sdes		;;
1006238104Sdes	ppc64le-* | powerpc64little-*)
1007238104Sdes		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1008238104Sdes		;;
1009238104Sdes	ps2)
1010238104Sdes		basic_machine=i386-ibm
1011238104Sdes		;;
1012238104Sdes	pw32)
1013238104Sdes		basic_machine=i586-unknown
1014238104Sdes		os=-pw32
1015238104Sdes		;;
1016238104Sdes	rdos)
1017238104Sdes		basic_machine=i386-pc
1018238104Sdes		os=-rdos
1019238104Sdes		;;
1020238104Sdes	rom68k)
1021238104Sdes		basic_machine=m68k-rom68k
1022238104Sdes		os=-coff
1023238104Sdes		;;
1024238104Sdes	rm[46]00)
1025238104Sdes		basic_machine=mips-siemens
1026238104Sdes		;;
1027238104Sdes	rtpc | rtpc-*)
1028238104Sdes		basic_machine=romp-ibm
1029238104Sdes		;;
1030238104Sdes	s390 | s390-*)
1031238104Sdes		basic_machine=s390-ibm
1032238104Sdes		;;
1033238104Sdes	s390x | s390x-*)
1034238104Sdes		basic_machine=s390x-ibm
1035238104Sdes		;;
1036238104Sdes	sa29200)
1037238104Sdes		basic_machine=a29k-amd
1038238104Sdes		os=-udi
1039238104Sdes		;;
1040238104Sdes	sb1)
1041238104Sdes		basic_machine=mipsisa64sb1-unknown
1042238104Sdes		;;
1043238104Sdes	sb1el)
1044238104Sdes		basic_machine=mipsisa64sb1el-unknown
1045238104Sdes		;;
1046238104Sdes	sde)
1047238104Sdes		basic_machine=mipsisa32-sde
1048238104Sdes		os=-elf
1049238104Sdes		;;
1050238104Sdes	sei)
1051238104Sdes		basic_machine=mips-sei
1052238104Sdes		os=-seiux
1053238104Sdes		;;
1054238104Sdes	sequent)
1055238104Sdes		basic_machine=i386-sequent
1056238104Sdes		;;
1057238104Sdes	sh)
1058238104Sdes		basic_machine=sh-hitachi
1059238104Sdes		os=-hms
1060238104Sdes		;;
1061238104Sdes	sh5el)
1062238104Sdes		basic_machine=sh5le-unknown
1063238104Sdes		;;
1064238104Sdes	sh64)
1065238104Sdes		basic_machine=sh64-unknown
1066238104Sdes		;;
1067238104Sdes	sparclite-wrs | simso-wrs)
1068238104Sdes		basic_machine=sparclite-wrs
1069238104Sdes		os=-vxworks
1070238104Sdes		;;
1071238104Sdes	sps7)
1072238104Sdes		basic_machine=m68k-bull
1073238104Sdes		os=-sysv2
1074238104Sdes		;;
1075238104Sdes	spur)
1076238104Sdes		basic_machine=spur-unknown
1077238104Sdes		;;
1078238104Sdes	st2000)
1079238104Sdes		basic_machine=m68k-tandem
1080238104Sdes		;;
1081238104Sdes	stratus)
1082238104Sdes		basic_machine=i860-stratus
1083238104Sdes		os=-sysv4
1084238104Sdes		;;
1085238104Sdes	strongarm-* | thumb-*)
1086238104Sdes		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1087238104Sdes		;;
1088238104Sdes	sun2)
1089238104Sdes		basic_machine=m68000-sun
1090238104Sdes		;;
1091238104Sdes	sun2os3)
1092238104Sdes		basic_machine=m68000-sun
1093238104Sdes		os=-sunos3
1094238104Sdes		;;
1095238104Sdes	sun2os4)
1096238104Sdes		basic_machine=m68000-sun
1097238104Sdes		os=-sunos4
1098238104Sdes		;;
1099238104Sdes	sun3os3)
1100238104Sdes		basic_machine=m68k-sun
1101238104Sdes		os=-sunos3
1102238104Sdes		;;
1103238104Sdes	sun3os4)
1104238104Sdes		basic_machine=m68k-sun
1105238104Sdes		os=-sunos4
1106238104Sdes		;;
1107238104Sdes	sun4os3)
1108238104Sdes		basic_machine=sparc-sun
1109238104Sdes		os=-sunos3
1110238104Sdes		;;
1111238104Sdes	sun4os4)
1112238104Sdes		basic_machine=sparc-sun
1113238104Sdes		os=-sunos4
1114238104Sdes		;;
1115238104Sdes	sun4sol2)
1116238104Sdes		basic_machine=sparc-sun
1117238104Sdes		os=-solaris2
1118238104Sdes		;;
1119238104Sdes	sun3 | sun3-*)
1120238104Sdes		basic_machine=m68k-sun
1121238104Sdes		;;
1122238104Sdes	sun4)
1123238104Sdes		basic_machine=sparc-sun
1124238104Sdes		;;
1125238104Sdes	sun386 | sun386i | roadrunner)
1126238104Sdes		basic_machine=i386-sun
1127238104Sdes		;;
1128238104Sdes	sv1)
1129238104Sdes		basic_machine=sv1-cray
1130238104Sdes		os=-unicos
1131238104Sdes		;;
1132238104Sdes	symmetry)
1133238104Sdes		basic_machine=i386-sequent
1134238104Sdes		os=-dynix
1135238104Sdes		;;
1136238104Sdes	t3e)
1137238104Sdes		basic_machine=alphaev5-cray
1138238104Sdes		os=-unicos
1139238104Sdes		;;
1140238104Sdes	t90)
1141238104Sdes		basic_machine=t90-cray
1142238104Sdes		os=-unicos
1143238104Sdes		;;
1144238104Sdes	tile*)
1145238104Sdes		basic_machine=$basic_machine-unknown
1146238104Sdes		os=-linux-gnu
1147238104Sdes		;;
1148238104Sdes	tx39)
1149238104Sdes		basic_machine=mipstx39-unknown
1150238104Sdes		;;
1151238104Sdes	tx39el)
1152238104Sdes		basic_machine=mipstx39el-unknown
1153238104Sdes		;;
1154238104Sdes	toad1)
1155238104Sdes		basic_machine=pdp10-xkl
1156238104Sdes		os=-tops20
1157238104Sdes		;;
1158238104Sdes	tower | tower-32)
1159238104Sdes		basic_machine=m68k-ncr
1160238104Sdes		;;
1161238104Sdes	tpf)
1162238104Sdes		basic_machine=s390x-ibm
1163238104Sdes		os=-tpf
1164238104Sdes		;;
1165238104Sdes	udi29k)
1166238104Sdes		basic_machine=a29k-amd
1167238104Sdes		os=-udi
1168238104Sdes		;;
1169238104Sdes	ultra3)
1170238104Sdes		basic_machine=a29k-nyu
1171238104Sdes		os=-sym1
1172238104Sdes		;;
1173238104Sdes	v810 | necv810)
1174238104Sdes		basic_machine=v810-nec
1175238104Sdes		os=-none
1176238104Sdes		;;
1177238104Sdes	vaxv)
1178238104Sdes		basic_machine=vax-dec
1179238104Sdes		os=-sysv
1180238104Sdes		;;
1181238104Sdes	vms)
1182238104Sdes		basic_machine=vax-dec
1183238104Sdes		os=-vms
1184238104Sdes		;;
1185238104Sdes	vpp*|vx|vx-*)
1186238104Sdes		basic_machine=f301-fujitsu
1187238104Sdes		;;
1188238104Sdes	vxworks960)
1189238104Sdes		basic_machine=i960-wrs
1190238104Sdes		os=-vxworks
1191238104Sdes		;;
1192238104Sdes	vxworks68)
1193238104Sdes		basic_machine=m68k-wrs
1194238104Sdes		os=-vxworks
1195238104Sdes		;;
1196238104Sdes	vxworks29k)
1197238104Sdes		basic_machine=a29k-wrs
1198238104Sdes		os=-vxworks
1199238104Sdes		;;
1200238104Sdes	w65*)
1201238104Sdes		basic_machine=w65-wdc
1202238104Sdes		os=-none
1203238104Sdes		;;
1204238104Sdes	w89k-*)
1205238104Sdes		basic_machine=hppa1.1-winbond
1206238104Sdes		os=-proelf
1207238104Sdes		;;
1208238104Sdes	xbox)
1209238104Sdes		basic_machine=i686-pc
1210238104Sdes		os=-mingw32
1211238104Sdes		;;
1212238104Sdes	xps | xps100)
1213238104Sdes		basic_machine=xps100-honeywell
1214238104Sdes		;;
1215238104Sdes	xscale-* | xscalee[bl]-*)
1216238104Sdes		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1217238104Sdes		;;
1218238104Sdes	ymp)
1219238104Sdes		basic_machine=ymp-cray
1220238104Sdes		os=-unicos
1221238104Sdes		;;
1222238104Sdes	z8k-*-coff)
1223238104Sdes		basic_machine=z8k-unknown
1224238104Sdes		os=-sim
1225238104Sdes		;;
1226238104Sdes	z80-*-coff)
1227238104Sdes		basic_machine=z80-unknown
1228238104Sdes		os=-sim
1229238104Sdes		;;
1230238104Sdes	none)
1231238104Sdes		basic_machine=none-none
1232238104Sdes		os=-none
1233238104Sdes		;;
1234238104Sdes
1235238104Sdes# Here we handle the default manufacturer of certain CPU types.  It is in
1236238104Sdes# some cases the only manufacturer, in others, it is the most popular.
1237238104Sdes	w89k)
1238238104Sdes		basic_machine=hppa1.1-winbond
1239238104Sdes		;;
1240238104Sdes	op50n)
1241238104Sdes		basic_machine=hppa1.1-oki
1242238104Sdes		;;
1243238104Sdes	op60c)
1244238104Sdes		basic_machine=hppa1.1-oki
1245238104Sdes		;;
1246238104Sdes	romp)
1247238104Sdes		basic_machine=romp-ibm
1248238104Sdes		;;
1249238104Sdes	mmix)
1250238104Sdes		basic_machine=mmix-knuth
1251238104Sdes		;;
1252238104Sdes	rs6000)
1253238104Sdes		basic_machine=rs6000-ibm
1254238104Sdes		;;
1255238104Sdes	vax)
1256238104Sdes		basic_machine=vax-dec
1257238104Sdes		;;
1258238104Sdes	pdp10)
1259238104Sdes		# there are many clones, so DEC is not a safe bet
1260238104Sdes		basic_machine=pdp10-unknown
1261238104Sdes		;;
1262238104Sdes	pdp11)
1263238104Sdes		basic_machine=pdp11-dec
1264238104Sdes		;;
1265238104Sdes	we32k)
1266238104Sdes		basic_machine=we32k-att
1267238104Sdes		;;
1268238104Sdes	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1269238104Sdes		basic_machine=sh-unknown
1270238104Sdes		;;
1271238104Sdes	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1272238104Sdes		basic_machine=sparc-sun
1273238104Sdes		;;
1274238104Sdes	cydra)
1275238104Sdes		basic_machine=cydra-cydrome
1276238104Sdes		;;
1277238104Sdes	orion)
1278238104Sdes		basic_machine=orion-highlevel
1279238104Sdes		;;
1280238104Sdes	orion105)
1281238104Sdes		basic_machine=clipper-highlevel
1282238104Sdes		;;
1283238104Sdes	mac | mpw | mac-mpw)
1284238104Sdes		basic_machine=m68k-apple
1285238104Sdes		;;
1286238104Sdes	pmac | pmac-mpw)
1287238104Sdes		basic_machine=powerpc-apple
1288238104Sdes		;;
1289238104Sdes	*-unknown)
1290238104Sdes		# Make sure to match an already-canonicalized machine name.
1291238104Sdes		;;
1292238104Sdes	*)
1293238104Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1294238104Sdes		exit 1
1295238104Sdes		;;
1296238104Sdesesac
1297238104Sdes
1298238104Sdes# Here we canonicalize certain aliases for manufacturers.
1299238104Sdescase $basic_machine in
1300238104Sdes	*-digital*)
1301238104Sdes		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1302238104Sdes		;;
1303238104Sdes	*-commodore*)
1304238104Sdes		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1305238104Sdes		;;
1306238104Sdes	*)
1307238104Sdes		;;
1308238104Sdesesac
1309238104Sdes
1310238104Sdes# Decode manufacturer-specific aliases for certain operating systems.
1311238104Sdes
1312238104Sdesif [ x"$os" != x"" ]
1313238104Sdesthen
1314238104Sdescase $os in
1315238104Sdes	# First match some system type aliases
1316238104Sdes	# that might get confused with valid system types.
1317238104Sdes	# -solaris* is a basic system type, with this one exception.
1318238104Sdes	-auroraux)
1319238104Sdes		os=-auroraux
1320238104Sdes		;;
1321238104Sdes	-solaris1 | -solaris1.*)
1322238104Sdes		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1323238104Sdes		;;
1324238104Sdes	-solaris)
1325238104Sdes		os=-solaris2
1326238104Sdes		;;
1327238104Sdes	-svr4*)
1328238104Sdes		os=-sysv4
1329238104Sdes		;;
1330238104Sdes	-unixware*)
1331238104Sdes		os=-sysv4.2uw
1332238104Sdes		;;
1333238104Sdes	-gnu/linux*)
1334238104Sdes		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1335238104Sdes		;;
1336238104Sdes	# First accept the basic system types.
1337238104Sdes	# The portable systems comes first.
1338238104Sdes	# Each alternative MUST END IN A *, to match a version number.
1339238104Sdes	# -sysv* is not here because it comes later, after sysvr4.
1340238104Sdes	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1341238104Sdes	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1342238104Sdes	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1343238104Sdes	      | -sym* | -kopensolaris* \
1344238104Sdes	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1345238104Sdes	      | -aos* | -aros* \
1346238104Sdes	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1347238104Sdes	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1348238104Sdes	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1349238104Sdes	      | -openbsd* | -solidbsd* \
1350238104Sdes	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1351238104Sdes	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1352238104Sdes	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1353238104Sdes	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1354238104Sdes	      | -chorusos* | -chorusrdb* | -cegcc* \
1355238104Sdes	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1356238104Sdes	      | -mingw32* | -linux-gnu* | -linux-android* \
1357238104Sdes	      | -linux-newlib* | -linux-uclibc* \
1358238104Sdes	      | -uxpv* | -beos* | -mpeix* | -udk* \
1359238104Sdes	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1360238104Sdes	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1361238104Sdes	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1362238104Sdes	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1363238104Sdes	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1364238104Sdes	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1365238104Sdes	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1366238104Sdes	# Remember, each alternative MUST END IN *, to match a version number.
1367238104Sdes		;;
1368238104Sdes	-qnx*)
1369238104Sdes		case $basic_machine in
1370238104Sdes		    x86-* | i*86-*)
1371238104Sdes			;;
1372238104Sdes		    *)
1373238104Sdes			os=-nto$os
1374238104Sdes			;;
1375238104Sdes		esac
1376238104Sdes		;;
1377238104Sdes	-nto-qnx*)
1378238104Sdes		;;
1379238104Sdes	-nto*)
1380238104Sdes		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1381238104Sdes		;;
1382238104Sdes	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1383238104Sdes	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1384238104Sdes	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1385238104Sdes		;;
1386238104Sdes	-mac*)
1387238104Sdes		os=`echo $os | sed -e 's|mac|macos|'`
1388238104Sdes		;;
1389238104Sdes	-linux-dietlibc)
1390238104Sdes		os=-linux-dietlibc
1391238104Sdes		;;
1392238104Sdes	-linux*)
1393238104Sdes		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1394238104Sdes		;;
1395238104Sdes	-sunos5*)
1396238104Sdes		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1397238104Sdes		;;
1398238104Sdes	-sunos6*)
1399238104Sdes		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1400238104Sdes		;;
1401238104Sdes	-opened*)
1402238104Sdes		os=-openedition
1403238104Sdes		;;
1404238104Sdes	-os400*)
1405238104Sdes		os=-os400
1406238104Sdes		;;
1407238104Sdes	-wince*)
1408238104Sdes		os=-wince
1409238104Sdes		;;
1410238104Sdes	-osfrose*)
1411238104Sdes		os=-osfrose
1412238104Sdes		;;
1413238104Sdes	-osf*)
1414238104Sdes		os=-osf
1415238104Sdes		;;
1416238104Sdes	-utek*)
1417238104Sdes		os=-bsd
1418238104Sdes		;;
1419238104Sdes	-dynix*)
1420238104Sdes		os=-bsd
1421238104Sdes		;;
1422238104Sdes	-acis*)
1423238104Sdes		os=-aos
1424238104Sdes		;;
1425238104Sdes	-atheos*)
1426238104Sdes		os=-atheos
1427238104Sdes		;;
1428238104Sdes	-syllable*)
1429238104Sdes		os=-syllable
1430238104Sdes		;;
1431238104Sdes	-386bsd)
1432238104Sdes		os=-bsd
1433238104Sdes		;;
1434238104Sdes	-ctix* | -uts*)
1435238104Sdes		os=-sysv
1436238104Sdes		;;
1437238104Sdes	-nova*)
1438238104Sdes		os=-rtmk-nova
1439238104Sdes		;;
1440238104Sdes	-ns2 )
1441238104Sdes		os=-nextstep2
1442238104Sdes		;;
1443238104Sdes	-nsk*)
1444238104Sdes		os=-nsk
1445238104Sdes		;;
1446238104Sdes	# Preserve the version number of sinix5.
1447238104Sdes	-sinix5.*)
1448238104Sdes		os=`echo $os | sed -e 's|sinix|sysv|'`
1449238104Sdes		;;
1450238104Sdes	-sinix*)
1451238104Sdes		os=-sysv4
1452238104Sdes		;;
1453238104Sdes	-tpf*)
1454238104Sdes		os=-tpf
1455238104Sdes		;;
1456238104Sdes	-triton*)
1457238104Sdes		os=-sysv3
1458238104Sdes		;;
1459238104Sdes	-oss*)
1460238104Sdes		os=-sysv3
1461238104Sdes		;;
1462238104Sdes	-svr4)
1463238104Sdes		os=-sysv4
1464238104Sdes		;;
1465238104Sdes	-svr3)
1466238104Sdes		os=-sysv3
1467238104Sdes		;;
1468238104Sdes	-sysvr4)
1469238104Sdes		os=-sysv4
1470238104Sdes		;;
1471238104Sdes	# This must come after -sysvr4.
1472238104Sdes	-sysv*)
1473238104Sdes		;;
1474238104Sdes	-ose*)
1475238104Sdes		os=-ose
1476238104Sdes		;;
1477238104Sdes	-es1800*)
1478238104Sdes		os=-ose
1479238104Sdes		;;
1480238104Sdes	-xenix)
1481238104Sdes		os=-xenix
1482238104Sdes		;;
1483238104Sdes	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1484238104Sdes		os=-mint
1485238104Sdes		;;
1486238104Sdes	-aros*)
1487238104Sdes		os=-aros
1488238104Sdes		;;
1489238104Sdes	-kaos*)
1490238104Sdes		os=-kaos
1491238104Sdes		;;
1492238104Sdes	-zvmoe)
1493238104Sdes		os=-zvmoe
1494238104Sdes		;;
1495238104Sdes	-dicos*)
1496238104Sdes		os=-dicos
1497238104Sdes		;;
1498238104Sdes	-nacl*)
1499238104Sdes		;;
1500238104Sdes	-none)
1501238104Sdes		;;
1502238104Sdes	*)
1503238104Sdes		# Get rid of the `-' at the beginning of $os.
1504238104Sdes		os=`echo $os | sed 's/[^-]*-//'`
1505238104Sdes		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1506238104Sdes		exit 1
1507238104Sdes		;;
1508238104Sdesesac
1509238104Sdeselse
1510238104Sdes
1511238104Sdes# Here we handle the default operating systems that come with various machines.
1512238104Sdes# The value should be what the vendor currently ships out the door with their
1513238104Sdes# machine or put another way, the most popular os provided with the machine.
1514238104Sdes
1515238104Sdes# Note that if you're going to try to match "-MANUFACTURER" here (say,
1516238104Sdes# "-sun"), then you have to tell the case statement up towards the top
1517238104Sdes# that MANUFACTURER isn't an operating system.  Otherwise, code above
1518238104Sdes# will signal an error saying that MANUFACTURER isn't an operating
1519238104Sdes# system, and we'll never get to this point.
1520238104Sdes
1521238104Sdescase $basic_machine in
1522238104Sdes	score-*)
1523238104Sdes		os=-elf
1524238104Sdes		;;
1525238104Sdes	spu-*)
1526238104Sdes		os=-elf
1527238104Sdes		;;
1528238104Sdes	*-acorn)
1529238104Sdes		os=-riscix1.2
1530238104Sdes		;;
1531238104Sdes	arm*-rebel)
1532238104Sdes		os=-linux
1533238104Sdes		;;
1534238104Sdes	arm*-semi)
1535238104Sdes		os=-aout
1536238104Sdes		;;
1537238104Sdes	c4x-* | tic4x-*)
1538238104Sdes		os=-coff
1539238104Sdes		;;
1540238104Sdes	tic54x-*)
1541238104Sdes		os=-coff
1542238104Sdes		;;
1543238104Sdes	tic55x-*)
1544238104Sdes		os=-coff
1545238104Sdes		;;
1546238104Sdes	tic6x-*)
1547238104Sdes		os=-coff
1548238104Sdes		;;
1549238104Sdes	# This must come before the *-dec entry.
1550238104Sdes	pdp10-*)
1551238104Sdes		os=-tops20
1552238104Sdes		;;
1553238104Sdes	pdp11-*)
1554238104Sdes		os=-none
1555238104Sdes		;;
1556238104Sdes	*-dec | vax-*)
1557238104Sdes		os=-ultrix4.2
1558238104Sdes		;;
1559238104Sdes	m68*-apollo)
1560238104Sdes		os=-domain
1561238104Sdes		;;
1562238104Sdes	i386-sun)
1563238104Sdes		os=-sunos4.0.2
1564238104Sdes		;;
1565238104Sdes	m68000-sun)
1566238104Sdes		os=-sunos3
1567238104Sdes		;;
1568238104Sdes	m68*-cisco)
1569238104Sdes		os=-aout
1570238104Sdes		;;
1571238104Sdes	mep-*)
1572238104Sdes		os=-elf
1573238104Sdes		;;
1574238104Sdes	mips*-cisco)
1575238104Sdes		os=-elf
1576238104Sdes		;;
1577238104Sdes	mips*-*)
1578238104Sdes		os=-elf
1579238104Sdes		;;
1580238104Sdes	or32-*)
1581238104Sdes		os=-coff
1582238104Sdes		;;
1583238104Sdes	*-tti)	# must be before sparc entry or we get the wrong os.
1584238104Sdes		os=-sysv3
1585238104Sdes		;;
1586238104Sdes	sparc-* | *-sun)
1587238104Sdes		os=-sunos4.1.1
1588238104Sdes		;;
1589238104Sdes	*-be)
1590238104Sdes		os=-beos
1591238104Sdes		;;
1592238104Sdes	*-haiku)
1593238104Sdes		os=-haiku
1594238104Sdes		;;
1595238104Sdes	*-ibm)
1596238104Sdes		os=-aix
1597238104Sdes		;;
1598238104Sdes	*-knuth)
1599238104Sdes		os=-mmixware
1600238104Sdes		;;
1601238104Sdes	*-wec)
1602238104Sdes		os=-proelf
1603238104Sdes		;;
1604238104Sdes	*-winbond)
1605238104Sdes		os=-proelf
1606238104Sdes		;;
1607238104Sdes	*-oki)
1608238104Sdes		os=-proelf
1609238104Sdes		;;
1610238104Sdes	*-hp)
1611238104Sdes		os=-hpux
1612238104Sdes		;;
1613238104Sdes	*-hitachi)
1614238104Sdes		os=-hiux
1615238104Sdes		;;
1616238104Sdes	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1617238104Sdes		os=-sysv
1618238104Sdes		;;
1619238104Sdes	*-cbm)
1620238104Sdes		os=-amigaos
1621238104Sdes		;;
1622238104Sdes	*-dg)
1623238104Sdes		os=-dgux
1624238104Sdes		;;
1625238104Sdes	*-dolphin)
1626238104Sdes		os=-sysv3
1627238104Sdes		;;
1628238104Sdes	m68k-ccur)
1629238104Sdes		os=-rtu
1630238104Sdes		;;
1631238104Sdes	m88k-omron*)
1632238104Sdes		os=-luna
1633238104Sdes		;;
1634238104Sdes	*-next )
1635238104Sdes		os=-nextstep
1636238104Sdes		;;
1637238104Sdes	*-sequent)
1638238104Sdes		os=-ptx
1639238104Sdes		;;
1640238104Sdes	*-crds)
1641238104Sdes		os=-unos
1642238104Sdes		;;
1643238104Sdes	*-ns)
1644238104Sdes		os=-genix
1645238104Sdes		;;
1646238104Sdes	i370-*)
1647238104Sdes		os=-mvs
1648238104Sdes		;;
1649238104Sdes	*-next)
1650238104Sdes		os=-nextstep3
1651238104Sdes		;;
1652238104Sdes	*-gould)
1653238104Sdes		os=-sysv
1654238104Sdes		;;
1655238104Sdes	*-highlevel)
1656238104Sdes		os=-bsd
1657238104Sdes		;;
1658238104Sdes	*-encore)
1659238104Sdes		os=-bsd
1660238104Sdes		;;
1661238104Sdes	*-sgi)
1662238104Sdes		os=-irix
1663238104Sdes		;;
1664238104Sdes	*-siemens)
1665238104Sdes		os=-sysv4
1666238104Sdes		;;
1667238104Sdes	*-masscomp)
1668238104Sdes		os=-rtu
1669238104Sdes		;;
1670238104Sdes	f30[01]-fujitsu | f700-fujitsu)
1671238104Sdes		os=-uxpv
1672238104Sdes		;;
1673238104Sdes	*-rom68k)
1674238104Sdes		os=-coff
1675238104Sdes		;;
1676238104Sdes	*-*bug)
1677238104Sdes		os=-coff
1678238104Sdes		;;
1679238104Sdes	*-apple)
1680238104Sdes		os=-macos
1681238104Sdes		;;
1682238104Sdes	*-atari*)
1683238104Sdes		os=-mint
1684238104Sdes		;;
1685238104Sdes	*)
1686238104Sdes		os=-none
1687238104Sdes		;;
1688238104Sdesesac
1689238104Sdesfi
1690238104Sdes
1691238104Sdes# Here we handle the case where we know the os, and the CPU type, but not the
1692238104Sdes# manufacturer.  We pick the logical manufacturer.
1693238104Sdesvendor=unknown
1694238104Sdescase $basic_machine in
1695238104Sdes	*-unknown)
1696238104Sdes		case $os in
1697238104Sdes			-riscix*)
1698238104Sdes				vendor=acorn
1699238104Sdes				;;
1700238104Sdes			-sunos*)
1701238104Sdes				vendor=sun
1702238104Sdes				;;
1703238104Sdes			-cnk*|-aix*)
1704238104Sdes				vendor=ibm
1705238104Sdes				;;
1706238104Sdes			-beos*)
1707238104Sdes				vendor=be
1708238104Sdes				;;
1709238104Sdes			-hpux*)
1710238104Sdes				vendor=hp
1711238104Sdes				;;
1712238104Sdes			-mpeix*)
1713238104Sdes				vendor=hp
1714238104Sdes				;;
1715238104Sdes			-hiux*)
1716238104Sdes				vendor=hitachi
1717238104Sdes				;;
1718238104Sdes			-unos*)
1719238104Sdes				vendor=crds
1720238104Sdes				;;
1721238104Sdes			-dgux*)
1722238104Sdes				vendor=dg
1723238104Sdes				;;
1724238104Sdes			-luna*)
1725238104Sdes				vendor=omron
1726238104Sdes				;;
1727238104Sdes			-genix*)
1728238104Sdes				vendor=ns
1729238104Sdes				;;
1730238104Sdes			-mvs* | -opened*)
1731238104Sdes				vendor=ibm
1732238104Sdes				;;
1733238104Sdes			-os400*)
1734238104Sdes				vendor=ibm
1735238104Sdes				;;
1736238104Sdes			-ptx*)
1737238104Sdes				vendor=sequent
1738238104Sdes				;;
1739238104Sdes			-tpf*)
1740238104Sdes				vendor=ibm
1741238104Sdes				;;
1742238104Sdes			-vxsim* | -vxworks* | -windiss*)
1743238104Sdes				vendor=wrs
1744238104Sdes				;;
1745238104Sdes			-aux*)
1746238104Sdes				vendor=apple
1747238104Sdes				;;
1748238104Sdes			-hms*)
1749238104Sdes				vendor=hitachi
1750238104Sdes				;;
1751238104Sdes			-mpw* | -macos*)
1752238104Sdes				vendor=apple
1753238104Sdes				;;
1754238104Sdes			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1755238104Sdes				vendor=atari
1756238104Sdes				;;
1757238104Sdes			-vos*)
1758238104Sdes				vendor=stratus
1759238104Sdes				;;
1760238104Sdes		esac
1761238104Sdes		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1762238104Sdes		;;
1763238104Sdesesac
1764238104Sdes
1765238104Sdesecho $basic_machine$os
1766238104Sdesexit
1767238104Sdes
1768238104Sdes# Local variables:
1769238104Sdes# eval: (add-hook 'write-file-hooks 'time-stamp)
1770238104Sdes# time-stamp-start: "timestamp='"
1771238104Sdes# time-stamp-format: "%:y-%02m-%02d"
1772238104Sdes# time-stamp-end: "'"
1773238104Sdes# End:
1774