config.sub revision 276605
1238106Sdes#! /bin/sh
2238106Sdes# Configuration validation subroutine script.
3276605Sdes#   Copyright 1992-2013 Free Software Foundation, Inc.
4238106Sdes
5276605Sdestimestamp='2013-08-10'
6238106Sdes
7276605Sdes# This file is free software; you can redistribute it and/or modify it
8276605Sdes# under the terms of the GNU General Public License as published by
9276605Sdes# the Free Software Foundation; either version 3 of the License, or
10238106Sdes# (at your option) any later version.
11238106Sdes#
12276605Sdes# This program is distributed in the hope that it will be useful, but
13276605Sdes# WITHOUT ANY WARRANTY; without even the implied warranty of
14276605Sdes# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15276605Sdes# General Public License for more details.
16238106Sdes#
17238106Sdes# You should have received a copy of the GNU General Public License
18249141Sdes# along with this program; if not, see <http://www.gnu.org/licenses/>.
19238106Sdes#
20238106Sdes# As a special exception to the GNU General Public License, if you
21238106Sdes# distribute this file as part of a program that contains a
22238106Sdes# configuration script generated by Autoconf, you may include it under
23276605Sdes# the same distribution terms that you use for the rest of that
24276605Sdes# program.  This Exception is an additional permission under section 7
25276605Sdes# of the GNU General Public License, version 3 ("GPLv3").
26238106Sdes
27238106Sdes
28276605Sdes# Please send patches with a ChangeLog entry to config-patches@gnu.org.
29238106Sdes#
30238106Sdes# Configuration subroutine to validate and canonicalize a configuration type.
31238106Sdes# Supply the specified configuration type as an argument.
32238106Sdes# If it is invalid, we print an error message on stderr and exit with code 1.
33238106Sdes# Otherwise, we print the canonical config type on stdout and succeed.
34238106Sdes
35238106Sdes# You can get the latest version of this script from:
36238106Sdes# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
37238106Sdes
38238106Sdes# This file is supposed to be the same for all GNU packages
39238106Sdes# and recognize all the CPU types, system types and aliases
40238106Sdes# that are meaningful with *any* GNU software.
41238106Sdes# Each package is responsible for reporting which valid configurations
42238106Sdes# it does not support.  The user should be able to distinguish
43238106Sdes# a failure to support a valid configuration from a meaningless
44238106Sdes# configuration.
45238106Sdes
46238106Sdes# The goal of this file is to map all the various variations of a given
47238106Sdes# machine specification into a single specification in the form:
48238106Sdes#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
49238106Sdes# or in some cases, the newer four-part form:
50238106Sdes#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
51238106Sdes# It is wrong to echo any other type of specification.
52238106Sdes
53238106Sdesme=`echo "$0" | sed -e 's,.*/,,'`
54238106Sdes
55238106Sdesusage="\
56238106SdesUsage: $0 [OPTION] CPU-MFR-OPSYS
57238106Sdes       $0 [OPTION] ALIAS
58238106Sdes
59238106SdesCanonicalize a configuration name.
60238106Sdes
61238106SdesOperation modes:
62238106Sdes  -h, --help         print this help, then exit
63238106Sdes  -t, --time-stamp   print date of last modification, then exit
64238106Sdes  -v, --version      print version number, then exit
65238106Sdes
66238106SdesReport bugs and patches to <config-patches@gnu.org>."
67238106Sdes
68238106Sdesversion="\
69238106SdesGNU config.sub ($timestamp)
70238106Sdes
71276605SdesCopyright 1992-2013 Free Software Foundation, Inc.
72238106Sdes
73238106SdesThis is free software; see the source for copying conditions.  There is NO
74238106Sdeswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
75238106Sdes
76238106Sdeshelp="
77238106SdesTry \`$me --help' for more information."
78238106Sdes
79238106Sdes# Parse command line
80238106Sdeswhile test $# -gt 0 ; do
81238106Sdes  case $1 in
82238106Sdes    --time-stamp | --time* | -t )
83238106Sdes       echo "$timestamp" ; exit ;;
84238106Sdes    --version | -v )
85238106Sdes       echo "$version" ; exit ;;
86238106Sdes    --help | --h* | -h )
87238106Sdes       echo "$usage"; exit ;;
88238106Sdes    -- )     # Stop option processing
89238106Sdes       shift; break ;;
90238106Sdes    - )	# Use stdin as input.
91238106Sdes       break ;;
92238106Sdes    -* )
93238106Sdes       echo "$me: invalid option $1$help"
94238106Sdes       exit 1 ;;
95238106Sdes
96238106Sdes    *local*)
97238106Sdes       # First pass through any local machine types.
98238106Sdes       echo $1
99238106Sdes       exit ;;
100238106Sdes
101238106Sdes    * )
102238106Sdes       break ;;
103238106Sdes  esac
104238106Sdesdone
105238106Sdes
106238106Sdescase $# in
107238106Sdes 0) echo "$me: missing argument$help" >&2
108238106Sdes    exit 1;;
109238106Sdes 1) ;;
110238106Sdes *) echo "$me: too many arguments$help" >&2
111238106Sdes    exit 1;;
112238106Sdesesac
113238106Sdes
114238106Sdes# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
115238106Sdes# Here we must recognize all the valid KERNEL-OS combinations.
116238106Sdesmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
117238106Sdescase $maybe_os in
118249141Sdes  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
119276605Sdes  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
120249141Sdes  knetbsd*-gnu* | netbsd*-gnu* | \
121238106Sdes  kopensolaris*-gnu* | \
122238106Sdes  storm-chaos* | os2-emx* | rtmk-nova*)
123238106Sdes    os=-$maybe_os
124238106Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
125238106Sdes    ;;
126249141Sdes  android-linux)
127249141Sdes    os=-linux-android
128249141Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
129249141Sdes    ;;
130238106Sdes  *)
131238106Sdes    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
132238106Sdes    if [ $basic_machine != $1 ]
133238106Sdes    then os=`echo $1 | sed 's/.*-/-/'`
134238106Sdes    else os=; fi
135238106Sdes    ;;
136238106Sdesesac
137238106Sdes
138238106Sdes### Let's recognize common machines as not being operating systems so
139238106Sdes### that things like config.sub decstation-3100 work.  We also
140238106Sdes### recognize some manufacturers as not being operating systems, so we
141238106Sdes### can provide default operating systems below.
142238106Sdescase $os in
143238106Sdes	-sun*os*)
144238106Sdes		# Prevent following clause from handling this invalid input.
145238106Sdes		;;
146238106Sdes	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
147238106Sdes	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
148238106Sdes	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
149238106Sdes	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
150238106Sdes	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
151238106Sdes	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
152276605Sdes	-apple | -axis | -knuth | -cray | -microblaze*)
153238106Sdes		os=
154238106Sdes		basic_machine=$1
155238106Sdes		;;
156249141Sdes	-bluegene*)
157249141Sdes		os=-cnk
158238106Sdes		;;
159238106Sdes	-sim | -cisco | -oki | -wec | -winbond)
160238106Sdes		os=
161238106Sdes		basic_machine=$1
162238106Sdes		;;
163238106Sdes	-scout)
164238106Sdes		;;
165238106Sdes	-wrs)
166238106Sdes		os=-vxworks
167238106Sdes		basic_machine=$1
168238106Sdes		;;
169238106Sdes	-chorusos*)
170238106Sdes		os=-chorusos
171238106Sdes		basic_machine=$1
172238106Sdes		;;
173249141Sdes	-chorusrdb)
174249141Sdes		os=-chorusrdb
175238106Sdes		basic_machine=$1
176249141Sdes		;;
177238106Sdes	-hiux*)
178238106Sdes		os=-hiuxwe2
179238106Sdes		;;
180238106Sdes	-sco6)
181238106Sdes		os=-sco5v6
182238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183238106Sdes		;;
184238106Sdes	-sco5)
185238106Sdes		os=-sco3.2v5
186238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187238106Sdes		;;
188238106Sdes	-sco4)
189238106Sdes		os=-sco3.2v4
190238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191238106Sdes		;;
192238106Sdes	-sco3.2.[4-9]*)
193238106Sdes		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
194238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195238106Sdes		;;
196238106Sdes	-sco3.2v[4-9]*)
197238106Sdes		# Don't forget version if it is 3.2v4 or newer.
198238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199238106Sdes		;;
200238106Sdes	-sco5v6*)
201238106Sdes		# Don't forget version if it is 3.2v4 or newer.
202238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
203238106Sdes		;;
204238106Sdes	-sco*)
205238106Sdes		os=-sco3.2v2
206238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
207238106Sdes		;;
208238106Sdes	-udk*)
209238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210238106Sdes		;;
211238106Sdes	-isc)
212238106Sdes		os=-isc2.2
213238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214238106Sdes		;;
215238106Sdes	-clix*)
216238106Sdes		basic_machine=clipper-intergraph
217238106Sdes		;;
218238106Sdes	-isc*)
219238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
220238106Sdes		;;
221249141Sdes	-lynx*178)
222249141Sdes		os=-lynxos178
223249141Sdes		;;
224249141Sdes	-lynx*5)
225249141Sdes		os=-lynxos5
226249141Sdes		;;
227238106Sdes	-lynx*)
228238106Sdes		os=-lynxos
229238106Sdes		;;
230238106Sdes	-ptx*)
231238106Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
232238106Sdes		;;
233238106Sdes	-windowsnt*)
234238106Sdes		os=`echo $os | sed -e 's/windowsnt/winnt/'`
235238106Sdes		;;
236238106Sdes	-psos*)
237238106Sdes		os=-psos
238238106Sdes		;;
239238106Sdes	-mint | -mint[0-9]*)
240238106Sdes		basic_machine=m68k-atari
241238106Sdes		os=-mint
242238106Sdes		;;
243238106Sdesesac
244238106Sdes
245238106Sdes# Decode aliases for certain CPU-COMPANY combinations.
246238106Sdescase $basic_machine in
247238106Sdes	# Recognize the basic CPU types without company name.
248238106Sdes	# Some are omitted here because they have special meanings below.
249238106Sdes	1750a | 580 \
250238106Sdes	| a29k \
251249141Sdes	| aarch64 | aarch64_be \
252238106Sdes	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
253238106Sdes	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
254238106Sdes	| am33_2.0 \
255276605Sdes	| arc | arceb \
256276605Sdes	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
257276605Sdes	| avr | avr32 \
258276605Sdes	| be32 | be64 \
259238106Sdes	| bfin \
260276605Sdes	| c4x | c8051 | clipper \
261238106Sdes	| d10v | d30v | dlx | dsp16xx \
262249141Sdes	| epiphany \
263238106Sdes	| fido | fr30 | frv \
264238106Sdes	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
265249141Sdes	| hexagon \
266238106Sdes	| i370 | i860 | i960 | ia64 \
267238106Sdes	| ip2k | iq2000 \
268249141Sdes	| le32 | le64 \
269238106Sdes	| lm32 \
270238106Sdes	| m32c | m32r | m32rle | m68000 | m68k | m88k \
271276605Sdes	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
272238106Sdes	| mips | mipsbe | mipseb | mipsel | mipsle \
273238106Sdes	| mips16 \
274238106Sdes	| mips64 | mips64el \
275238106Sdes	| mips64octeon | mips64octeonel \
276238106Sdes	| mips64orion | mips64orionel \
277238106Sdes	| mips64r5900 | mips64r5900el \
278238106Sdes	| mips64vr | mips64vrel \
279238106Sdes	| mips64vr4100 | mips64vr4100el \
280238106Sdes	| mips64vr4300 | mips64vr4300el \
281238106Sdes	| mips64vr5000 | mips64vr5000el \
282238106Sdes	| mips64vr5900 | mips64vr5900el \
283238106Sdes	| mipsisa32 | mipsisa32el \
284238106Sdes	| mipsisa32r2 | mipsisa32r2el \
285238106Sdes	| mipsisa64 | mipsisa64el \
286238106Sdes	| mipsisa64r2 | mipsisa64r2el \
287238106Sdes	| mipsisa64sb1 | mipsisa64sb1el \
288238106Sdes	| mipsisa64sr71k | mipsisa64sr71kel \
289276605Sdes	| mipsr5900 | mipsr5900el \
290238106Sdes	| mipstx39 | mipstx39el \
291238106Sdes	| mn10200 | mn10300 \
292238106Sdes	| moxie \
293238106Sdes	| mt \
294238106Sdes	| msp430 \
295249141Sdes	| nds32 | nds32le | nds32be \
296276605Sdes	| nios | nios2 | nios2eb | nios2el \
297238106Sdes	| ns16k | ns32k \
298249141Sdes	| open8 \
299276605Sdes	| or1k | or32 \
300238106Sdes	| pdp10 | pdp11 | pj | pjl \
301249141Sdes	| powerpc | powerpc64 | powerpc64le | powerpcle \
302238106Sdes	| pyramid \
303249141Sdes	| rl78 | rx \
304238106Sdes	| score \
305238106Sdes	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
306238106Sdes	| sh64 | sh64le \
307238106Sdes	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
308238106Sdes	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
309249141Sdes	| spu \
310249141Sdes	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
311238106Sdes	| ubicom32 \
312249141Sdes	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
313238106Sdes	| we32k \
314249141Sdes	| x86 | xc16x | xstormy16 | xtensa \
315238106Sdes	| z8k | z80)
316238106Sdes		basic_machine=$basic_machine-unknown
317238106Sdes		;;
318249141Sdes	c54x)
319249141Sdes		basic_machine=tic54x-unknown
320249141Sdes		;;
321249141Sdes	c55x)
322249141Sdes		basic_machine=tic55x-unknown
323249141Sdes		;;
324249141Sdes	c6x)
325249141Sdes		basic_machine=tic6x-unknown
326249141Sdes		;;
327249141Sdes	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
328238106Sdes		basic_machine=$basic_machine-unknown
329238106Sdes		os=-none
330238106Sdes		;;
331238106Sdes	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
332238106Sdes		;;
333238106Sdes	ms1)
334238106Sdes		basic_machine=mt-unknown
335238106Sdes		;;
336238106Sdes
337249141Sdes	strongarm | thumb | xscale)
338249141Sdes		basic_machine=arm-unknown
339249141Sdes		;;
340249141Sdes	xgate)
341249141Sdes		basic_machine=$basic_machine-unknown
342249141Sdes		os=-none
343249141Sdes		;;
344249141Sdes	xscaleeb)
345249141Sdes		basic_machine=armeb-unknown
346249141Sdes		;;
347249141Sdes
348249141Sdes	xscaleel)
349249141Sdes		basic_machine=armel-unknown
350249141Sdes		;;
351249141Sdes
352238106Sdes	# We use `pc' rather than `unknown'
353238106Sdes	# because (1) that's what they normally are, and
354238106Sdes	# (2) the word "unknown" tends to confuse beginning users.
355238106Sdes	i*86 | x86_64)
356238106Sdes	  basic_machine=$basic_machine-pc
357238106Sdes	  ;;
358238106Sdes	# Object if more than one company name word.
359238106Sdes	*-*-*)
360238106Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
361238106Sdes		exit 1
362238106Sdes		;;
363238106Sdes	# Recognize the basic CPU types with company name.
364238106Sdes	580-* \
365238106Sdes	| a29k-* \
366249141Sdes	| aarch64-* | aarch64_be-* \
367238106Sdes	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
368238106Sdes	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
369276605Sdes	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
370238106Sdes	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
371238106Sdes	| avr-* | avr32-* \
372249141Sdes	| be32-* | be64-* \
373238106Sdes	| bfin-* | bs2000-* \
374249141Sdes	| c[123]* | c30-* | [cjt]90-* | c4x-* \
375276605Sdes	| c8051-* | clipper-* | craynv-* | cydra-* \
376238106Sdes	| d10v-* | d30v-* | dlx-* \
377238106Sdes	| elxsi-* \
378238106Sdes	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
379238106Sdes	| h8300-* | h8500-* \
380238106Sdes	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
381249141Sdes	| hexagon-* \
382238106Sdes	| i*86-* | i860-* | i960-* | ia64-* \
383238106Sdes	| ip2k-* | iq2000-* \
384249141Sdes	| le32-* | le64-* \
385238106Sdes	| lm32-* \
386238106Sdes	| m32c-* | m32r-* | m32rle-* \
387238106Sdes	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
388276605Sdes	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
389276605Sdes	| microblaze-* | microblazeel-* \
390238106Sdes	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
391238106Sdes	| mips16-* \
392238106Sdes	| mips64-* | mips64el-* \
393238106Sdes	| mips64octeon-* | mips64octeonel-* \
394238106Sdes	| mips64orion-* | mips64orionel-* \
395238106Sdes	| mips64r5900-* | mips64r5900el-* \
396238106Sdes	| mips64vr-* | mips64vrel-* \
397238106Sdes	| mips64vr4100-* | mips64vr4100el-* \
398238106Sdes	| mips64vr4300-* | mips64vr4300el-* \
399238106Sdes	| mips64vr5000-* | mips64vr5000el-* \
400238106Sdes	| mips64vr5900-* | mips64vr5900el-* \
401238106Sdes	| mipsisa32-* | mipsisa32el-* \
402238106Sdes	| mipsisa32r2-* | mipsisa32r2el-* \
403238106Sdes	| mipsisa64-* | mipsisa64el-* \
404238106Sdes	| mipsisa64r2-* | mipsisa64r2el-* \
405238106Sdes	| mipsisa64sb1-* | mipsisa64sb1el-* \
406238106Sdes	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
407276605Sdes	| mipsr5900-* | mipsr5900el-* \
408238106Sdes	| mipstx39-* | mipstx39el-* \
409238106Sdes	| mmix-* \
410238106Sdes	| mt-* \
411238106Sdes	| msp430-* \
412249141Sdes	| nds32-* | nds32le-* | nds32be-* \
413276605Sdes	| nios-* | nios2-* | nios2eb-* | nios2el-* \
414238106Sdes	| none-* | np1-* | ns16k-* | ns32k-* \
415249141Sdes	| open8-* \
416238106Sdes	| orion-* \
417238106Sdes	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
418249141Sdes	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
419238106Sdes	| pyramid-* \
420249141Sdes	| rl78-* | romp-* | rs6000-* | rx-* \
421238106Sdes	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
422238106Sdes	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
423238106Sdes	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
424238106Sdes	| sparclite-* \
425249141Sdes	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
426249141Sdes	| tahoe-* \
427249141Sdes	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
428249141Sdes	| tile*-* \
429238106Sdes	| tron-* \
430238106Sdes	| ubicom32-* \
431249141Sdes	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
432249141Sdes	| vax-* \
433238106Sdes	| we32k-* \
434249141Sdes	| x86-* | x86_64-* | xc16x-* | xps100-* \
435238106Sdes	| xstormy16-* | xtensa*-* \
436238106Sdes	| ymp-* \
437238106Sdes	| z8k-* | z80-*)
438238106Sdes		;;
439238106Sdes	# Recognize the basic CPU types without company name, with glob match.
440238106Sdes	xtensa*)
441238106Sdes		basic_machine=$basic_machine-unknown
442238106Sdes		;;
443238106Sdes	# Recognize the various machine names and aliases which stand
444238106Sdes	# for a CPU type and a company and sometimes even an OS.
445238106Sdes	386bsd)
446238106Sdes		basic_machine=i386-unknown
447238106Sdes		os=-bsd
448238106Sdes		;;
449238106Sdes	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
450238106Sdes		basic_machine=m68000-att
451238106Sdes		;;
452238106Sdes	3b*)
453238106Sdes		basic_machine=we32k-att
454238106Sdes		;;
455238106Sdes	a29khif)
456238106Sdes		basic_machine=a29k-amd
457238106Sdes		os=-udi
458238106Sdes		;;
459249141Sdes	abacus)
460238106Sdes		basic_machine=abacus-unknown
461238106Sdes		;;
462238106Sdes	adobe68k)
463238106Sdes		basic_machine=m68010-adobe
464238106Sdes		os=-scout
465238106Sdes		;;
466238106Sdes	alliant | fx80)
467238106Sdes		basic_machine=fx80-alliant
468238106Sdes		;;
469238106Sdes	altos | altos3068)
470238106Sdes		basic_machine=m68k-altos
471238106Sdes		;;
472238106Sdes	am29k)
473238106Sdes		basic_machine=a29k-none
474238106Sdes		os=-bsd
475238106Sdes		;;
476238106Sdes	amd64)
477238106Sdes		basic_machine=x86_64-pc
478238106Sdes		;;
479238106Sdes	amd64-*)
480238106Sdes		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
481238106Sdes		;;
482238106Sdes	amdahl)
483238106Sdes		basic_machine=580-amdahl
484238106Sdes		os=-sysv
485238106Sdes		;;
486238106Sdes	amiga | amiga-*)
487238106Sdes		basic_machine=m68k-unknown
488238106Sdes		;;
489238106Sdes	amigaos | amigados)
490238106Sdes		basic_machine=m68k-unknown
491238106Sdes		os=-amigaos
492238106Sdes		;;
493238106Sdes	amigaunix | amix)
494238106Sdes		basic_machine=m68k-unknown
495238106Sdes		os=-sysv4
496238106Sdes		;;
497238106Sdes	apollo68)
498238106Sdes		basic_machine=m68k-apollo
499238106Sdes		os=-sysv
500238106Sdes		;;
501238106Sdes	apollo68bsd)
502238106Sdes		basic_machine=m68k-apollo
503238106Sdes		os=-bsd
504238106Sdes		;;
505238106Sdes	aros)
506238106Sdes		basic_machine=i386-pc
507238106Sdes		os=-aros
508238106Sdes		;;
509238106Sdes	aux)
510238106Sdes		basic_machine=m68k-apple
511238106Sdes		os=-aux
512238106Sdes		;;
513238106Sdes	balance)
514238106Sdes		basic_machine=ns32k-sequent
515238106Sdes		os=-dynix
516238106Sdes		;;
517238106Sdes	blackfin)
518238106Sdes		basic_machine=bfin-unknown
519238106Sdes		os=-linux
520238106Sdes		;;
521238106Sdes	blackfin-*)
522238106Sdes		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
523238106Sdes		os=-linux
524238106Sdes		;;
525238106Sdes	bluegene*)
526238106Sdes		basic_machine=powerpc-ibm
527238106Sdes		os=-cnk
528238106Sdes		;;
529249141Sdes	c54x-*)
530249141Sdes		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
531249141Sdes		;;
532249141Sdes	c55x-*)
533249141Sdes		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
534249141Sdes		;;
535249141Sdes	c6x-*)
536249141Sdes		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
537249141Sdes		;;
538238106Sdes	c90)
539238106Sdes		basic_machine=c90-cray
540238106Sdes		os=-unicos
541238106Sdes		;;
542249141Sdes	cegcc)
543238106Sdes		basic_machine=arm-unknown
544238106Sdes		os=-cegcc
545238106Sdes		;;
546238106Sdes	convex-c1)
547238106Sdes		basic_machine=c1-convex
548238106Sdes		os=-bsd
549238106Sdes		;;
550238106Sdes	convex-c2)
551238106Sdes		basic_machine=c2-convex
552238106Sdes		os=-bsd
553238106Sdes		;;
554238106Sdes	convex-c32)
555238106Sdes		basic_machine=c32-convex
556238106Sdes		os=-bsd
557238106Sdes		;;
558238106Sdes	convex-c34)
559238106Sdes		basic_machine=c34-convex
560238106Sdes		os=-bsd
561238106Sdes		;;
562238106Sdes	convex-c38)
563238106Sdes		basic_machine=c38-convex
564238106Sdes		os=-bsd
565238106Sdes		;;
566238106Sdes	cray | j90)
567238106Sdes		basic_machine=j90-cray
568238106Sdes		os=-unicos
569238106Sdes		;;
570238106Sdes	craynv)
571238106Sdes		basic_machine=craynv-cray
572238106Sdes		os=-unicosmp
573238106Sdes		;;
574249141Sdes	cr16 | cr16-*)
575238106Sdes		basic_machine=cr16-unknown
576238106Sdes		os=-elf
577238106Sdes		;;
578238106Sdes	crds | unos)
579238106Sdes		basic_machine=m68k-crds
580238106Sdes		;;
581238106Sdes	crisv32 | crisv32-* | etraxfs*)
582238106Sdes		basic_machine=crisv32-axis
583238106Sdes		;;
584238106Sdes	cris | cris-* | etrax*)
585238106Sdes		basic_machine=cris-axis
586238106Sdes		;;
587238106Sdes	crx)
588238106Sdes		basic_machine=crx-unknown
589238106Sdes		os=-elf
590238106Sdes		;;
591238106Sdes	da30 | da30-*)
592238106Sdes		basic_machine=m68k-da30
593238106Sdes		;;
594238106Sdes	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
595238106Sdes		basic_machine=mips-dec
596238106Sdes		;;
597238106Sdes	decsystem10* | dec10*)
598238106Sdes		basic_machine=pdp10-dec
599238106Sdes		os=-tops10
600238106Sdes		;;
601238106Sdes	decsystem20* | dec20*)
602238106Sdes		basic_machine=pdp10-dec
603238106Sdes		os=-tops20
604238106Sdes		;;
605238106Sdes	delta | 3300 | motorola-3300 | motorola-delta \
606238106Sdes	      | 3300-motorola | delta-motorola)
607238106Sdes		basic_machine=m68k-motorola
608238106Sdes		;;
609238106Sdes	delta88)
610238106Sdes		basic_machine=m88k-motorola
611238106Sdes		os=-sysv3
612238106Sdes		;;
613238106Sdes	dicos)
614238106Sdes		basic_machine=i686-pc
615238106Sdes		os=-dicos
616238106Sdes		;;
617238106Sdes	djgpp)
618238106Sdes		basic_machine=i586-pc
619238106Sdes		os=-msdosdjgpp
620238106Sdes		;;
621238106Sdes	dpx20 | dpx20-*)
622238106Sdes		basic_machine=rs6000-bull
623238106Sdes		os=-bosx
624238106Sdes		;;
625238106Sdes	dpx2* | dpx2*-bull)
626238106Sdes		basic_machine=m68k-bull
627238106Sdes		os=-sysv3
628238106Sdes		;;
629238106Sdes	ebmon29k)
630238106Sdes		basic_machine=a29k-amd
631238106Sdes		os=-ebmon
632238106Sdes		;;
633238106Sdes	elxsi)
634238106Sdes		basic_machine=elxsi-elxsi
635238106Sdes		os=-bsd
636238106Sdes		;;
637238106Sdes	encore | umax | mmax)
638238106Sdes		basic_machine=ns32k-encore
639238106Sdes		;;
640238106Sdes	es1800 | OSE68k | ose68k | ose | OSE)
641238106Sdes		basic_machine=m68k-ericsson
642238106Sdes		os=-ose
643238106Sdes		;;
644238106Sdes	fx2800)
645238106Sdes		basic_machine=i860-alliant
646238106Sdes		;;
647238106Sdes	genix)
648238106Sdes		basic_machine=ns32k-ns
649238106Sdes		;;
650238106Sdes	gmicro)
651238106Sdes		basic_machine=tron-gmicro
652238106Sdes		os=-sysv
653238106Sdes		;;
654238106Sdes	go32)
655238106Sdes		basic_machine=i386-pc
656238106Sdes		os=-go32
657238106Sdes		;;
658238106Sdes	h3050r* | hiux*)
659238106Sdes		basic_machine=hppa1.1-hitachi
660238106Sdes		os=-hiuxwe2
661238106Sdes		;;
662238106Sdes	h8300hms)
663238106Sdes		basic_machine=h8300-hitachi
664238106Sdes		os=-hms
665238106Sdes		;;
666238106Sdes	h8300xray)
667238106Sdes		basic_machine=h8300-hitachi
668238106Sdes		os=-xray
669238106Sdes		;;
670238106Sdes	h8500hms)
671238106Sdes		basic_machine=h8500-hitachi
672238106Sdes		os=-hms
673238106Sdes		;;
674238106Sdes	harris)
675238106Sdes		basic_machine=m88k-harris
676238106Sdes		os=-sysv3
677238106Sdes		;;
678238106Sdes	hp300-*)
679238106Sdes		basic_machine=m68k-hp
680238106Sdes		;;
681238106Sdes	hp300bsd)
682238106Sdes		basic_machine=m68k-hp
683238106Sdes		os=-bsd
684238106Sdes		;;
685238106Sdes	hp300hpux)
686238106Sdes		basic_machine=m68k-hp
687238106Sdes		os=-hpux
688238106Sdes		;;
689238106Sdes	hp3k9[0-9][0-9] | hp9[0-9][0-9])
690238106Sdes		basic_machine=hppa1.0-hp
691238106Sdes		;;
692238106Sdes	hp9k2[0-9][0-9] | hp9k31[0-9])
693238106Sdes		basic_machine=m68000-hp
694238106Sdes		;;
695238106Sdes	hp9k3[2-9][0-9])
696238106Sdes		basic_machine=m68k-hp
697238106Sdes		;;
698238106Sdes	hp9k6[0-9][0-9] | hp6[0-9][0-9])
699238106Sdes		basic_machine=hppa1.0-hp
700238106Sdes		;;
701238106Sdes	hp9k7[0-79][0-9] | hp7[0-79][0-9])
702238106Sdes		basic_machine=hppa1.1-hp
703238106Sdes		;;
704238106Sdes	hp9k78[0-9] | hp78[0-9])
705238106Sdes		# FIXME: really hppa2.0-hp
706238106Sdes		basic_machine=hppa1.1-hp
707238106Sdes		;;
708238106Sdes	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
709238106Sdes		# FIXME: really hppa2.0-hp
710238106Sdes		basic_machine=hppa1.1-hp
711238106Sdes		;;
712238106Sdes	hp9k8[0-9][13679] | hp8[0-9][13679])
713238106Sdes		basic_machine=hppa1.1-hp
714238106Sdes		;;
715238106Sdes	hp9k8[0-9][0-9] | hp8[0-9][0-9])
716238106Sdes		basic_machine=hppa1.0-hp
717238106Sdes		;;
718238106Sdes	hppa-next)
719238106Sdes		os=-nextstep3
720238106Sdes		;;
721238106Sdes	hppaosf)
722238106Sdes		basic_machine=hppa1.1-hp
723238106Sdes		os=-osf
724238106Sdes		;;
725238106Sdes	hppro)
726238106Sdes		basic_machine=hppa1.1-hp
727238106Sdes		os=-proelf
728238106Sdes		;;
729238106Sdes	i370-ibm* | ibm*)
730238106Sdes		basic_machine=i370-ibm
731238106Sdes		;;
732238106Sdes	i*86v32)
733238106Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
734238106Sdes		os=-sysv32
735238106Sdes		;;
736238106Sdes	i*86v4*)
737238106Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
738238106Sdes		os=-sysv4
739238106Sdes		;;
740238106Sdes	i*86v)
741238106Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
742238106Sdes		os=-sysv
743238106Sdes		;;
744238106Sdes	i*86sol2)
745238106Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
746238106Sdes		os=-solaris2
747238106Sdes		;;
748238106Sdes	i386mach)
749238106Sdes		basic_machine=i386-mach
750238106Sdes		os=-mach
751238106Sdes		;;
752238106Sdes	i386-vsta | vsta)
753238106Sdes		basic_machine=i386-unknown
754238106Sdes		os=-vsta
755238106Sdes		;;
756238106Sdes	iris | iris4d)
757238106Sdes		basic_machine=mips-sgi
758238106Sdes		case $os in
759238106Sdes		    -irix*)
760238106Sdes			;;
761238106Sdes		    *)
762238106Sdes			os=-irix4
763238106Sdes			;;
764238106Sdes		esac
765238106Sdes		;;
766238106Sdes	isi68 | isi)
767238106Sdes		basic_machine=m68k-isi
768238106Sdes		os=-sysv
769238106Sdes		;;
770238106Sdes	m68knommu)
771238106Sdes		basic_machine=m68k-unknown
772238106Sdes		os=-linux
773238106Sdes		;;
774238106Sdes	m68knommu-*)
775238106Sdes		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
776238106Sdes		os=-linux
777238106Sdes		;;
778238106Sdes	m88k-omron*)
779238106Sdes		basic_machine=m88k-omron
780238106Sdes		;;
781238106Sdes	magnum | m3230)
782238106Sdes		basic_machine=mips-mips
783238106Sdes		os=-sysv
784238106Sdes		;;
785238106Sdes	merlin)
786238106Sdes		basic_machine=ns32k-utek
787238106Sdes		os=-sysv
788238106Sdes		;;
789276605Sdes	microblaze*)
790238106Sdes		basic_machine=microblaze-xilinx
791238106Sdes		;;
792276605Sdes	mingw64)
793276605Sdes		basic_machine=x86_64-pc
794276605Sdes		os=-mingw64
795276605Sdes		;;
796238106Sdes	mingw32)
797276605Sdes		basic_machine=i686-pc
798238106Sdes		os=-mingw32
799238106Sdes		;;
800238106Sdes	mingw32ce)
801238106Sdes		basic_machine=arm-unknown
802238106Sdes		os=-mingw32ce
803238106Sdes		;;
804238106Sdes	miniframe)
805238106Sdes		basic_machine=m68000-convergent
806238106Sdes		;;
807238106Sdes	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
808238106Sdes		basic_machine=m68k-atari
809238106Sdes		os=-mint
810238106Sdes		;;
811238106Sdes	mips3*-*)
812238106Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
813238106Sdes		;;
814238106Sdes	mips3*)
815238106Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
816238106Sdes		;;
817238106Sdes	monitor)
818238106Sdes		basic_machine=m68k-rom68k
819238106Sdes		os=-coff
820238106Sdes		;;
821238106Sdes	morphos)
822238106Sdes		basic_machine=powerpc-unknown
823238106Sdes		os=-morphos
824238106Sdes		;;
825238106Sdes	msdos)
826238106Sdes		basic_machine=i386-pc
827238106Sdes		os=-msdos
828238106Sdes		;;
829238106Sdes	ms1-*)
830238106Sdes		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
831238106Sdes		;;
832249141Sdes	msys)
833276605Sdes		basic_machine=i686-pc
834249141Sdes		os=-msys
835249141Sdes		;;
836238106Sdes	mvs)
837238106Sdes		basic_machine=i370-ibm
838238106Sdes		os=-mvs
839238106Sdes		;;
840249141Sdes	nacl)
841249141Sdes		basic_machine=le32-unknown
842249141Sdes		os=-nacl
843249141Sdes		;;
844238106Sdes	ncr3000)
845238106Sdes		basic_machine=i486-ncr
846238106Sdes		os=-sysv4
847238106Sdes		;;
848238106Sdes	netbsd386)
849238106Sdes		basic_machine=i386-unknown
850238106Sdes		os=-netbsd
851238106Sdes		;;
852238106Sdes	netwinder)
853238106Sdes		basic_machine=armv4l-rebel
854238106Sdes		os=-linux
855238106Sdes		;;
856238106Sdes	news | news700 | news800 | news900)
857238106Sdes		basic_machine=m68k-sony
858238106Sdes		os=-newsos
859238106Sdes		;;
860238106Sdes	news1000)
861238106Sdes		basic_machine=m68030-sony
862238106Sdes		os=-newsos
863238106Sdes		;;
864238106Sdes	news-3600 | risc-news)
865238106Sdes		basic_machine=mips-sony
866238106Sdes		os=-newsos
867238106Sdes		;;
868238106Sdes	necv70)
869238106Sdes		basic_machine=v70-nec
870238106Sdes		os=-sysv
871238106Sdes		;;
872238106Sdes	next | m*-next )
873238106Sdes		basic_machine=m68k-next
874238106Sdes		case $os in
875238106Sdes		    -nextstep* )
876238106Sdes			;;
877238106Sdes		    -ns2*)
878238106Sdes		      os=-nextstep2
879238106Sdes			;;
880238106Sdes		    *)
881238106Sdes		      os=-nextstep3
882238106Sdes			;;
883238106Sdes		esac
884238106Sdes		;;
885238106Sdes	nh3000)
886238106Sdes		basic_machine=m68k-harris
887238106Sdes		os=-cxux
888238106Sdes		;;
889238106Sdes	nh[45]000)
890238106Sdes		basic_machine=m88k-harris
891238106Sdes		os=-cxux
892238106Sdes		;;
893238106Sdes	nindy960)
894238106Sdes		basic_machine=i960-intel
895238106Sdes		os=-nindy
896238106Sdes		;;
897238106Sdes	mon960)
898238106Sdes		basic_machine=i960-intel
899238106Sdes		os=-mon960
900238106Sdes		;;
901238106Sdes	nonstopux)
902238106Sdes		basic_machine=mips-compaq
903238106Sdes		os=-nonstopux
904238106Sdes		;;
905238106Sdes	np1)
906238106Sdes		basic_machine=np1-gould
907238106Sdes		;;
908249141Sdes	neo-tandem)
909249141Sdes		basic_machine=neo-tandem
910249141Sdes		;;
911249141Sdes	nse-tandem)
912249141Sdes		basic_machine=nse-tandem
913249141Sdes		;;
914238106Sdes	nsr-tandem)
915238106Sdes		basic_machine=nsr-tandem
916238106Sdes		;;
917238106Sdes	op50n-* | op60c-*)
918238106Sdes		basic_machine=hppa1.1-oki
919238106Sdes		os=-proelf
920238106Sdes		;;
921238106Sdes	openrisc | openrisc-*)
922238106Sdes		basic_machine=or32-unknown
923238106Sdes		;;
924238106Sdes	os400)
925238106Sdes		basic_machine=powerpc-ibm
926238106Sdes		os=-os400
927238106Sdes		;;
928238106Sdes	OSE68000 | ose68000)
929238106Sdes		basic_machine=m68000-ericsson
930238106Sdes		os=-ose
931238106Sdes		;;
932238106Sdes	os68k)
933238106Sdes		basic_machine=m68k-none
934238106Sdes		os=-os68k
935238106Sdes		;;
936238106Sdes	pa-hitachi)
937238106Sdes		basic_machine=hppa1.1-hitachi
938238106Sdes		os=-hiuxwe2
939238106Sdes		;;
940238106Sdes	paragon)
941238106Sdes		basic_machine=i860-intel
942238106Sdes		os=-osf
943238106Sdes		;;
944238106Sdes	parisc)
945238106Sdes		basic_machine=hppa-unknown
946238106Sdes		os=-linux
947238106Sdes		;;
948238106Sdes	parisc-*)
949238106Sdes		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
950238106Sdes		os=-linux
951238106Sdes		;;
952238106Sdes	pbd)
953238106Sdes		basic_machine=sparc-tti
954238106Sdes		;;
955238106Sdes	pbb)
956238106Sdes		basic_machine=m68k-tti
957238106Sdes		;;
958238106Sdes	pc532 | pc532-*)
959238106Sdes		basic_machine=ns32k-pc532
960238106Sdes		;;
961238106Sdes	pc98)
962238106Sdes		basic_machine=i386-pc
963238106Sdes		;;
964238106Sdes	pc98-*)
965238106Sdes		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
966238106Sdes		;;
967238106Sdes	pentium | p5 | k5 | k6 | nexgen | viac3)
968238106Sdes		basic_machine=i586-pc
969238106Sdes		;;
970238106Sdes	pentiumpro | p6 | 6x86 | athlon | athlon_*)
971238106Sdes		basic_machine=i686-pc
972238106Sdes		;;
973238106Sdes	pentiumii | pentium2 | pentiumiii | pentium3)
974238106Sdes		basic_machine=i686-pc
975238106Sdes		;;
976238106Sdes	pentium4)
977238106Sdes		basic_machine=i786-pc
978238106Sdes		;;
979238106Sdes	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
980238106Sdes		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
981238106Sdes		;;
982238106Sdes	pentiumpro-* | p6-* | 6x86-* | athlon-*)
983238106Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
984238106Sdes		;;
985238106Sdes	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
986238106Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
987238106Sdes		;;
988238106Sdes	pentium4-*)
989238106Sdes		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
990238106Sdes		;;
991238106Sdes	pn)
992238106Sdes		basic_machine=pn-gould
993238106Sdes		;;
994238106Sdes	power)	basic_machine=power-ibm
995238106Sdes		;;
996249141Sdes	ppc | ppcbe)	basic_machine=powerpc-unknown
997238106Sdes		;;
998249141Sdes	ppc-* | ppcbe-*)
999249141Sdes		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
1000238106Sdes		;;
1001238106Sdes	ppcle | powerpclittle | ppc-le | powerpc-little)
1002238106Sdes		basic_machine=powerpcle-unknown
1003238106Sdes		;;
1004238106Sdes	ppcle-* | powerpclittle-*)
1005238106Sdes		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1006238106Sdes		;;
1007238106Sdes	ppc64)	basic_machine=powerpc64-unknown
1008238106Sdes		;;
1009276605Sdes	ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1010238106Sdes		;;
1011238106Sdes	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1012238106Sdes		basic_machine=powerpc64le-unknown
1013238106Sdes		;;
1014238106Sdes	ppc64le-* | powerpc64little-*)
1015238106Sdes		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1016238106Sdes		;;
1017238106Sdes	ps2)
1018238106Sdes		basic_machine=i386-ibm
1019238106Sdes		;;
1020238106Sdes	pw32)
1021238106Sdes		basic_machine=i586-unknown
1022238106Sdes		os=-pw32
1023238106Sdes		;;
1024276605Sdes	rdos | rdos64)
1025276605Sdes		basic_machine=x86_64-pc
1026276605Sdes		os=-rdos
1027276605Sdes		;;
1028276605Sdes	rdos32)
1029238106Sdes		basic_machine=i386-pc
1030238106Sdes		os=-rdos
1031238106Sdes		;;
1032238106Sdes	rom68k)
1033238106Sdes		basic_machine=m68k-rom68k
1034238106Sdes		os=-coff
1035238106Sdes		;;
1036238106Sdes	rm[46]00)
1037238106Sdes		basic_machine=mips-siemens
1038238106Sdes		;;
1039238106Sdes	rtpc | rtpc-*)
1040238106Sdes		basic_machine=romp-ibm
1041238106Sdes		;;
1042238106Sdes	s390 | s390-*)
1043238106Sdes		basic_machine=s390-ibm
1044238106Sdes		;;
1045238106Sdes	s390x | s390x-*)
1046238106Sdes		basic_machine=s390x-ibm
1047238106Sdes		;;
1048238106Sdes	sa29200)
1049238106Sdes		basic_machine=a29k-amd
1050238106Sdes		os=-udi
1051238106Sdes		;;
1052238106Sdes	sb1)
1053238106Sdes		basic_machine=mipsisa64sb1-unknown
1054238106Sdes		;;
1055238106Sdes	sb1el)
1056238106Sdes		basic_machine=mipsisa64sb1el-unknown
1057238106Sdes		;;
1058238106Sdes	sde)
1059238106Sdes		basic_machine=mipsisa32-sde
1060238106Sdes		os=-elf
1061238106Sdes		;;
1062238106Sdes	sei)
1063238106Sdes		basic_machine=mips-sei
1064238106Sdes		os=-seiux
1065238106Sdes		;;
1066238106Sdes	sequent)
1067238106Sdes		basic_machine=i386-sequent
1068238106Sdes		;;
1069238106Sdes	sh)
1070238106Sdes		basic_machine=sh-hitachi
1071238106Sdes		os=-hms
1072238106Sdes		;;
1073238106Sdes	sh5el)
1074238106Sdes		basic_machine=sh5le-unknown
1075238106Sdes		;;
1076238106Sdes	sh64)
1077238106Sdes		basic_machine=sh64-unknown
1078238106Sdes		;;
1079238106Sdes	sparclite-wrs | simso-wrs)
1080238106Sdes		basic_machine=sparclite-wrs
1081238106Sdes		os=-vxworks
1082238106Sdes		;;
1083238106Sdes	sps7)
1084238106Sdes		basic_machine=m68k-bull
1085238106Sdes		os=-sysv2
1086238106Sdes		;;
1087238106Sdes	spur)
1088238106Sdes		basic_machine=spur-unknown
1089238106Sdes		;;
1090238106Sdes	st2000)
1091238106Sdes		basic_machine=m68k-tandem
1092238106Sdes		;;
1093238106Sdes	stratus)
1094238106Sdes		basic_machine=i860-stratus
1095238106Sdes		os=-sysv4
1096238106Sdes		;;
1097249141Sdes	strongarm-* | thumb-*)
1098249141Sdes		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1099249141Sdes		;;
1100238106Sdes	sun2)
1101238106Sdes		basic_machine=m68000-sun
1102238106Sdes		;;
1103238106Sdes	sun2os3)
1104238106Sdes		basic_machine=m68000-sun
1105238106Sdes		os=-sunos3
1106238106Sdes		;;
1107238106Sdes	sun2os4)
1108238106Sdes		basic_machine=m68000-sun
1109238106Sdes		os=-sunos4
1110238106Sdes		;;
1111238106Sdes	sun3os3)
1112238106Sdes		basic_machine=m68k-sun
1113238106Sdes		os=-sunos3
1114238106Sdes		;;
1115238106Sdes	sun3os4)
1116238106Sdes		basic_machine=m68k-sun
1117238106Sdes		os=-sunos4
1118238106Sdes		;;
1119238106Sdes	sun4os3)
1120238106Sdes		basic_machine=sparc-sun
1121238106Sdes		os=-sunos3
1122238106Sdes		;;
1123238106Sdes	sun4os4)
1124238106Sdes		basic_machine=sparc-sun
1125238106Sdes		os=-sunos4
1126238106Sdes		;;
1127238106Sdes	sun4sol2)
1128238106Sdes		basic_machine=sparc-sun
1129238106Sdes		os=-solaris2
1130238106Sdes		;;
1131238106Sdes	sun3 | sun3-*)
1132238106Sdes		basic_machine=m68k-sun
1133238106Sdes		;;
1134238106Sdes	sun4)
1135238106Sdes		basic_machine=sparc-sun
1136238106Sdes		;;
1137238106Sdes	sun386 | sun386i | roadrunner)
1138238106Sdes		basic_machine=i386-sun
1139238106Sdes		;;
1140238106Sdes	sv1)
1141238106Sdes		basic_machine=sv1-cray
1142238106Sdes		os=-unicos
1143238106Sdes		;;
1144238106Sdes	symmetry)
1145238106Sdes		basic_machine=i386-sequent
1146238106Sdes		os=-dynix
1147238106Sdes		;;
1148238106Sdes	t3e)
1149238106Sdes		basic_machine=alphaev5-cray
1150238106Sdes		os=-unicos
1151238106Sdes		;;
1152238106Sdes	t90)
1153238106Sdes		basic_machine=t90-cray
1154238106Sdes		os=-unicos
1155238106Sdes		;;
1156238106Sdes	tile*)
1157249141Sdes		basic_machine=$basic_machine-unknown
1158238106Sdes		os=-linux-gnu
1159238106Sdes		;;
1160238106Sdes	tx39)
1161238106Sdes		basic_machine=mipstx39-unknown
1162238106Sdes		;;
1163238106Sdes	tx39el)
1164238106Sdes		basic_machine=mipstx39el-unknown
1165238106Sdes		;;
1166238106Sdes	toad1)
1167238106Sdes		basic_machine=pdp10-xkl
1168238106Sdes		os=-tops20
1169238106Sdes		;;
1170238106Sdes	tower | tower-32)
1171238106Sdes		basic_machine=m68k-ncr
1172238106Sdes		;;
1173238106Sdes	tpf)
1174238106Sdes		basic_machine=s390x-ibm
1175238106Sdes		os=-tpf
1176238106Sdes		;;
1177238106Sdes	udi29k)
1178238106Sdes		basic_machine=a29k-amd
1179238106Sdes		os=-udi
1180238106Sdes		;;
1181238106Sdes	ultra3)
1182238106Sdes		basic_machine=a29k-nyu
1183238106Sdes		os=-sym1
1184238106Sdes		;;
1185238106Sdes	v810 | necv810)
1186238106Sdes		basic_machine=v810-nec
1187238106Sdes		os=-none
1188238106Sdes		;;
1189238106Sdes	vaxv)
1190238106Sdes		basic_machine=vax-dec
1191238106Sdes		os=-sysv
1192238106Sdes		;;
1193238106Sdes	vms)
1194238106Sdes		basic_machine=vax-dec
1195238106Sdes		os=-vms
1196238106Sdes		;;
1197238106Sdes	vpp*|vx|vx-*)
1198238106Sdes		basic_machine=f301-fujitsu
1199238106Sdes		;;
1200238106Sdes	vxworks960)
1201238106Sdes		basic_machine=i960-wrs
1202238106Sdes		os=-vxworks
1203238106Sdes		;;
1204238106Sdes	vxworks68)
1205238106Sdes		basic_machine=m68k-wrs
1206238106Sdes		os=-vxworks
1207238106Sdes		;;
1208238106Sdes	vxworks29k)
1209238106Sdes		basic_machine=a29k-wrs
1210238106Sdes		os=-vxworks
1211238106Sdes		;;
1212238106Sdes	w65*)
1213238106Sdes		basic_machine=w65-wdc
1214238106Sdes		os=-none
1215238106Sdes		;;
1216238106Sdes	w89k-*)
1217238106Sdes		basic_machine=hppa1.1-winbond
1218238106Sdes		os=-proelf
1219238106Sdes		;;
1220238106Sdes	xbox)
1221238106Sdes		basic_machine=i686-pc
1222238106Sdes		os=-mingw32
1223238106Sdes		;;
1224238106Sdes	xps | xps100)
1225238106Sdes		basic_machine=xps100-honeywell
1226238106Sdes		;;
1227249141Sdes	xscale-* | xscalee[bl]-*)
1228249141Sdes		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1229249141Sdes		;;
1230238106Sdes	ymp)
1231238106Sdes		basic_machine=ymp-cray
1232238106Sdes		os=-unicos
1233238106Sdes		;;
1234238106Sdes	z8k-*-coff)
1235238106Sdes		basic_machine=z8k-unknown
1236238106Sdes		os=-sim
1237238106Sdes		;;
1238238106Sdes	z80-*-coff)
1239238106Sdes		basic_machine=z80-unknown
1240238106Sdes		os=-sim
1241238106Sdes		;;
1242238106Sdes	none)
1243238106Sdes		basic_machine=none-none
1244238106Sdes		os=-none
1245238106Sdes		;;
1246238106Sdes
1247238106Sdes# Here we handle the default manufacturer of certain CPU types.  It is in
1248238106Sdes# some cases the only manufacturer, in others, it is the most popular.
1249238106Sdes	w89k)
1250238106Sdes		basic_machine=hppa1.1-winbond
1251238106Sdes		;;
1252238106Sdes	op50n)
1253238106Sdes		basic_machine=hppa1.1-oki
1254238106Sdes		;;
1255238106Sdes	op60c)
1256238106Sdes		basic_machine=hppa1.1-oki
1257238106Sdes		;;
1258238106Sdes	romp)
1259238106Sdes		basic_machine=romp-ibm
1260238106Sdes		;;
1261238106Sdes	mmix)
1262238106Sdes		basic_machine=mmix-knuth
1263238106Sdes		;;
1264238106Sdes	rs6000)
1265238106Sdes		basic_machine=rs6000-ibm
1266238106Sdes		;;
1267238106Sdes	vax)
1268238106Sdes		basic_machine=vax-dec
1269238106Sdes		;;
1270238106Sdes	pdp10)
1271238106Sdes		# there are many clones, so DEC is not a safe bet
1272238106Sdes		basic_machine=pdp10-unknown
1273238106Sdes		;;
1274238106Sdes	pdp11)
1275238106Sdes		basic_machine=pdp11-dec
1276238106Sdes		;;
1277238106Sdes	we32k)
1278238106Sdes		basic_machine=we32k-att
1279238106Sdes		;;
1280238106Sdes	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1281238106Sdes		basic_machine=sh-unknown
1282238106Sdes		;;
1283238106Sdes	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1284238106Sdes		basic_machine=sparc-sun
1285238106Sdes		;;
1286238106Sdes	cydra)
1287238106Sdes		basic_machine=cydra-cydrome
1288238106Sdes		;;
1289238106Sdes	orion)
1290238106Sdes		basic_machine=orion-highlevel
1291238106Sdes		;;
1292238106Sdes	orion105)
1293238106Sdes		basic_machine=clipper-highlevel
1294238106Sdes		;;
1295238106Sdes	mac | mpw | mac-mpw)
1296238106Sdes		basic_machine=m68k-apple
1297238106Sdes		;;
1298238106Sdes	pmac | pmac-mpw)
1299238106Sdes		basic_machine=powerpc-apple
1300238106Sdes		;;
1301238106Sdes	*-unknown)
1302238106Sdes		# Make sure to match an already-canonicalized machine name.
1303238106Sdes		;;
1304238106Sdes	*)
1305238106Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1306238106Sdes		exit 1
1307238106Sdes		;;
1308238106Sdesesac
1309238106Sdes
1310238106Sdes# Here we canonicalize certain aliases for manufacturers.
1311238106Sdescase $basic_machine in
1312238106Sdes	*-digital*)
1313238106Sdes		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1314238106Sdes		;;
1315238106Sdes	*-commodore*)
1316238106Sdes		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1317238106Sdes		;;
1318238106Sdes	*)
1319238106Sdes		;;
1320238106Sdesesac
1321238106Sdes
1322238106Sdes# Decode manufacturer-specific aliases for certain operating systems.
1323238106Sdes
1324238106Sdesif [ x"$os" != x"" ]
1325238106Sdesthen
1326238106Sdescase $os in
1327249141Sdes	# First match some system type aliases
1328249141Sdes	# that might get confused with valid system types.
1329238106Sdes	# -solaris* is a basic system type, with this one exception.
1330249141Sdes	-auroraux)
1331249141Sdes		os=-auroraux
1332238106Sdes		;;
1333238106Sdes	-solaris1 | -solaris1.*)
1334238106Sdes		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1335238106Sdes		;;
1336238106Sdes	-solaris)
1337238106Sdes		os=-solaris2
1338238106Sdes		;;
1339238106Sdes	-svr4*)
1340238106Sdes		os=-sysv4
1341238106Sdes		;;
1342238106Sdes	-unixware*)
1343238106Sdes		os=-sysv4.2uw
1344238106Sdes		;;
1345238106Sdes	-gnu/linux*)
1346238106Sdes		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1347238106Sdes		;;
1348238106Sdes	# First accept the basic system types.
1349238106Sdes	# The portable systems comes first.
1350238106Sdes	# Each alternative MUST END IN A *, to match a version number.
1351238106Sdes	# -sysv* is not here because it comes later, after sysvr4.
1352238106Sdes	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1353238106Sdes	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1354238106Sdes	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1355276605Sdes	      | -sym* | -kopensolaris* | -plan9* \
1356238106Sdes	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1357238106Sdes	      | -aos* | -aros* \
1358238106Sdes	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1359238106Sdes	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1360238106Sdes	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1361276605Sdes	      | -bitrig* | -openbsd* | -solidbsd* \
1362238106Sdes	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1363238106Sdes	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1364238106Sdes	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1365238106Sdes	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1366238106Sdes	      | -chorusos* | -chorusrdb* | -cegcc* \
1367249141Sdes	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1368276605Sdes	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1369276605Sdes	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1370238106Sdes	      | -uxpv* | -beos* | -mpeix* | -udk* \
1371238106Sdes	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1372238106Sdes	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1373238106Sdes	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1374238106Sdes	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1375238106Sdes	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1376238106Sdes	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1377238106Sdes	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1378238106Sdes	# Remember, each alternative MUST END IN *, to match a version number.
1379238106Sdes		;;
1380238106Sdes	-qnx*)
1381238106Sdes		case $basic_machine in
1382238106Sdes		    x86-* | i*86-*)
1383238106Sdes			;;
1384238106Sdes		    *)
1385238106Sdes			os=-nto$os
1386238106Sdes			;;
1387238106Sdes		esac
1388238106Sdes		;;
1389238106Sdes	-nto-qnx*)
1390238106Sdes		;;
1391238106Sdes	-nto*)
1392238106Sdes		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1393238106Sdes		;;
1394238106Sdes	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1395238106Sdes	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1396238106Sdes	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1397238106Sdes		;;
1398238106Sdes	-mac*)
1399238106Sdes		os=`echo $os | sed -e 's|mac|macos|'`
1400238106Sdes		;;
1401238106Sdes	-linux-dietlibc)
1402238106Sdes		os=-linux-dietlibc
1403238106Sdes		;;
1404238106Sdes	-linux*)
1405238106Sdes		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1406238106Sdes		;;
1407238106Sdes	-sunos5*)
1408238106Sdes		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1409238106Sdes		;;
1410238106Sdes	-sunos6*)
1411238106Sdes		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1412238106Sdes		;;
1413238106Sdes	-opened*)
1414238106Sdes		os=-openedition
1415238106Sdes		;;
1416249141Sdes	-os400*)
1417238106Sdes		os=-os400
1418238106Sdes		;;
1419238106Sdes	-wince*)
1420238106Sdes		os=-wince
1421238106Sdes		;;
1422238106Sdes	-osfrose*)
1423238106Sdes		os=-osfrose
1424238106Sdes		;;
1425238106Sdes	-osf*)
1426238106Sdes		os=-osf
1427238106Sdes		;;
1428238106Sdes	-utek*)
1429238106Sdes		os=-bsd
1430238106Sdes		;;
1431238106Sdes	-dynix*)
1432238106Sdes		os=-bsd
1433238106Sdes		;;
1434238106Sdes	-acis*)
1435238106Sdes		os=-aos
1436238106Sdes		;;
1437238106Sdes	-atheos*)
1438238106Sdes		os=-atheos
1439238106Sdes		;;
1440238106Sdes	-syllable*)
1441238106Sdes		os=-syllable
1442238106Sdes		;;
1443238106Sdes	-386bsd)
1444238106Sdes		os=-bsd
1445238106Sdes		;;
1446238106Sdes	-ctix* | -uts*)
1447238106Sdes		os=-sysv
1448238106Sdes		;;
1449238106Sdes	-nova*)
1450238106Sdes		os=-rtmk-nova
1451238106Sdes		;;
1452238106Sdes	-ns2 )
1453238106Sdes		os=-nextstep2
1454238106Sdes		;;
1455238106Sdes	-nsk*)
1456238106Sdes		os=-nsk
1457238106Sdes		;;
1458238106Sdes	# Preserve the version number of sinix5.
1459238106Sdes	-sinix5.*)
1460238106Sdes		os=`echo $os | sed -e 's|sinix|sysv|'`
1461238106Sdes		;;
1462238106Sdes	-sinix*)
1463238106Sdes		os=-sysv4
1464238106Sdes		;;
1465249141Sdes	-tpf*)
1466238106Sdes		os=-tpf
1467238106Sdes		;;
1468238106Sdes	-triton*)
1469238106Sdes		os=-sysv3
1470238106Sdes		;;
1471238106Sdes	-oss*)
1472238106Sdes		os=-sysv3
1473238106Sdes		;;
1474238106Sdes	-svr4)
1475238106Sdes		os=-sysv4
1476238106Sdes		;;
1477238106Sdes	-svr3)
1478238106Sdes		os=-sysv3
1479238106Sdes		;;
1480238106Sdes	-sysvr4)
1481238106Sdes		os=-sysv4
1482238106Sdes		;;
1483238106Sdes	# This must come after -sysvr4.
1484238106Sdes	-sysv*)
1485238106Sdes		;;
1486238106Sdes	-ose*)
1487238106Sdes		os=-ose
1488238106Sdes		;;
1489238106Sdes	-es1800*)
1490238106Sdes		os=-ose
1491238106Sdes		;;
1492238106Sdes	-xenix)
1493238106Sdes		os=-xenix
1494238106Sdes		;;
1495238106Sdes	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1496238106Sdes		os=-mint
1497238106Sdes		;;
1498238106Sdes	-aros*)
1499238106Sdes		os=-aros
1500238106Sdes		;;
1501238106Sdes	-zvmoe)
1502238106Sdes		os=-zvmoe
1503238106Sdes		;;
1504238106Sdes	-dicos*)
1505238106Sdes		os=-dicos
1506238106Sdes		;;
1507249141Sdes	-nacl*)
1508249141Sdes		;;
1509238106Sdes	-none)
1510238106Sdes		;;
1511238106Sdes	*)
1512238106Sdes		# Get rid of the `-' at the beginning of $os.
1513238106Sdes		os=`echo $os | sed 's/[^-]*-//'`
1514238106Sdes		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1515238106Sdes		exit 1
1516238106Sdes		;;
1517238106Sdesesac
1518238106Sdeselse
1519238106Sdes
1520238106Sdes# Here we handle the default operating systems that come with various machines.
1521238106Sdes# The value should be what the vendor currently ships out the door with their
1522238106Sdes# machine or put another way, the most popular os provided with the machine.
1523238106Sdes
1524238106Sdes# Note that if you're going to try to match "-MANUFACTURER" here (say,
1525238106Sdes# "-sun"), then you have to tell the case statement up towards the top
1526238106Sdes# that MANUFACTURER isn't an operating system.  Otherwise, code above
1527238106Sdes# will signal an error saying that MANUFACTURER isn't an operating
1528238106Sdes# system, and we'll never get to this point.
1529238106Sdes
1530238106Sdescase $basic_machine in
1531249141Sdes	score-*)
1532238106Sdes		os=-elf
1533238106Sdes		;;
1534249141Sdes	spu-*)
1535238106Sdes		os=-elf
1536238106Sdes		;;
1537238106Sdes	*-acorn)
1538238106Sdes		os=-riscix1.2
1539238106Sdes		;;
1540238106Sdes	arm*-rebel)
1541238106Sdes		os=-linux
1542238106Sdes		;;
1543238106Sdes	arm*-semi)
1544238106Sdes		os=-aout
1545238106Sdes		;;
1546249141Sdes	c4x-* | tic4x-*)
1547249141Sdes		os=-coff
1548238106Sdes		;;
1549276605Sdes	c8051-*)
1550276605Sdes		os=-elf
1551276605Sdes		;;
1552249141Sdes	hexagon-*)
1553249141Sdes		os=-elf
1554249141Sdes		;;
1555249141Sdes	tic54x-*)
1556249141Sdes		os=-coff
1557249141Sdes		;;
1558249141Sdes	tic55x-*)
1559249141Sdes		os=-coff
1560249141Sdes		;;
1561249141Sdes	tic6x-*)
1562249141Sdes		os=-coff
1563249141Sdes		;;
1564238106Sdes	# This must come before the *-dec entry.
1565238106Sdes	pdp10-*)
1566238106Sdes		os=-tops20
1567238106Sdes		;;
1568238106Sdes	pdp11-*)
1569238106Sdes		os=-none
1570238106Sdes		;;
1571238106Sdes	*-dec | vax-*)
1572238106Sdes		os=-ultrix4.2
1573238106Sdes		;;
1574238106Sdes	m68*-apollo)
1575238106Sdes		os=-domain
1576238106Sdes		;;
1577238106Sdes	i386-sun)
1578238106Sdes		os=-sunos4.0.2
1579238106Sdes		;;
1580238106Sdes	m68000-sun)
1581238106Sdes		os=-sunos3
1582238106Sdes		;;
1583238106Sdes	m68*-cisco)
1584238106Sdes		os=-aout
1585238106Sdes		;;
1586249141Sdes	mep-*)
1587238106Sdes		os=-elf
1588238106Sdes		;;
1589238106Sdes	mips*-cisco)
1590238106Sdes		os=-elf
1591238106Sdes		;;
1592238106Sdes	mips*-*)
1593238106Sdes		os=-elf
1594238106Sdes		;;
1595276605Sdes	or1k-*)
1596276605Sdes		os=-elf
1597276605Sdes		;;
1598238106Sdes	or32-*)
1599238106Sdes		os=-coff
1600238106Sdes		;;
1601238106Sdes	*-tti)	# must be before sparc entry or we get the wrong os.
1602238106Sdes		os=-sysv3
1603238106Sdes		;;
1604238106Sdes	sparc-* | *-sun)
1605238106Sdes		os=-sunos4.1.1
1606238106Sdes		;;
1607238106Sdes	*-be)
1608238106Sdes		os=-beos
1609238106Sdes		;;
1610238106Sdes	*-haiku)
1611238106Sdes		os=-haiku
1612238106Sdes		;;
1613238106Sdes	*-ibm)
1614238106Sdes		os=-aix
1615238106Sdes		;;
1616249141Sdes	*-knuth)
1617238106Sdes		os=-mmixware
1618238106Sdes		;;
1619238106Sdes	*-wec)
1620238106Sdes		os=-proelf
1621238106Sdes		;;
1622238106Sdes	*-winbond)
1623238106Sdes		os=-proelf
1624238106Sdes		;;
1625238106Sdes	*-oki)
1626238106Sdes		os=-proelf
1627238106Sdes		;;
1628238106Sdes	*-hp)
1629238106Sdes		os=-hpux
1630238106Sdes		;;
1631238106Sdes	*-hitachi)
1632238106Sdes		os=-hiux
1633238106Sdes		;;
1634238106Sdes	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1635238106Sdes		os=-sysv
1636238106Sdes		;;
1637238106Sdes	*-cbm)
1638238106Sdes		os=-amigaos
1639238106Sdes		;;
1640238106Sdes	*-dg)
1641238106Sdes		os=-dgux
1642238106Sdes		;;
1643238106Sdes	*-dolphin)
1644238106Sdes		os=-sysv3
1645238106Sdes		;;
1646238106Sdes	m68k-ccur)
1647238106Sdes		os=-rtu
1648238106Sdes		;;
1649238106Sdes	m88k-omron*)
1650238106Sdes		os=-luna
1651238106Sdes		;;
1652238106Sdes	*-next )
1653238106Sdes		os=-nextstep
1654238106Sdes		;;
1655238106Sdes	*-sequent)
1656238106Sdes		os=-ptx
1657238106Sdes		;;
1658238106Sdes	*-crds)
1659238106Sdes		os=-unos
1660238106Sdes		;;
1661238106Sdes	*-ns)
1662238106Sdes		os=-genix
1663238106Sdes		;;
1664238106Sdes	i370-*)
1665238106Sdes		os=-mvs
1666238106Sdes		;;
1667238106Sdes	*-next)
1668238106Sdes		os=-nextstep3
1669238106Sdes		;;
1670238106Sdes	*-gould)
1671238106Sdes		os=-sysv
1672238106Sdes		;;
1673238106Sdes	*-highlevel)
1674238106Sdes		os=-bsd
1675238106Sdes		;;
1676238106Sdes	*-encore)
1677238106Sdes		os=-bsd
1678238106Sdes		;;
1679238106Sdes	*-sgi)
1680238106Sdes		os=-irix
1681238106Sdes		;;
1682238106Sdes	*-siemens)
1683238106Sdes		os=-sysv4
1684238106Sdes		;;
1685238106Sdes	*-masscomp)
1686238106Sdes		os=-rtu
1687238106Sdes		;;
1688238106Sdes	f30[01]-fujitsu | f700-fujitsu)
1689238106Sdes		os=-uxpv
1690238106Sdes		;;
1691238106Sdes	*-rom68k)
1692238106Sdes		os=-coff
1693238106Sdes		;;
1694238106Sdes	*-*bug)
1695238106Sdes		os=-coff
1696238106Sdes		;;
1697238106Sdes	*-apple)
1698238106Sdes		os=-macos
1699238106Sdes		;;
1700238106Sdes	*-atari*)
1701238106Sdes		os=-mint
1702238106Sdes		;;
1703238106Sdes	*)
1704238106Sdes		os=-none
1705238106Sdes		;;
1706238106Sdesesac
1707238106Sdesfi
1708238106Sdes
1709238106Sdes# Here we handle the case where we know the os, and the CPU type, but not the
1710238106Sdes# manufacturer.  We pick the logical manufacturer.
1711238106Sdesvendor=unknown
1712238106Sdescase $basic_machine in
1713238106Sdes	*-unknown)
1714238106Sdes		case $os in
1715238106Sdes			-riscix*)
1716238106Sdes				vendor=acorn
1717238106Sdes				;;
1718238106Sdes			-sunos*)
1719238106Sdes				vendor=sun
1720238106Sdes				;;
1721238106Sdes			-cnk*|-aix*)
1722238106Sdes				vendor=ibm
1723238106Sdes				;;
1724238106Sdes			-beos*)
1725238106Sdes				vendor=be
1726238106Sdes				;;
1727238106Sdes			-hpux*)
1728238106Sdes				vendor=hp
1729238106Sdes				;;
1730238106Sdes			-mpeix*)
1731238106Sdes				vendor=hp
1732238106Sdes				;;
1733238106Sdes			-hiux*)
1734238106Sdes				vendor=hitachi
1735238106Sdes				;;
1736238106Sdes			-unos*)
1737238106Sdes				vendor=crds
1738238106Sdes				;;
1739238106Sdes			-dgux*)
1740238106Sdes				vendor=dg
1741238106Sdes				;;
1742238106Sdes			-luna*)
1743238106Sdes				vendor=omron
1744238106Sdes				;;
1745238106Sdes			-genix*)
1746238106Sdes				vendor=ns
1747238106Sdes				;;
1748238106Sdes			-mvs* | -opened*)
1749238106Sdes				vendor=ibm
1750238106Sdes				;;
1751238106Sdes			-os400*)
1752238106Sdes				vendor=ibm
1753238106Sdes				;;
1754238106Sdes			-ptx*)
1755238106Sdes				vendor=sequent
1756238106Sdes				;;
1757238106Sdes			-tpf*)
1758238106Sdes				vendor=ibm
1759238106Sdes				;;
1760238106Sdes			-vxsim* | -vxworks* | -windiss*)
1761238106Sdes				vendor=wrs
1762238106Sdes				;;
1763238106Sdes			-aux*)
1764238106Sdes				vendor=apple
1765238106Sdes				;;
1766238106Sdes			-hms*)
1767238106Sdes				vendor=hitachi
1768238106Sdes				;;
1769238106Sdes			-mpw* | -macos*)
1770238106Sdes				vendor=apple
1771238106Sdes				;;
1772238106Sdes			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1773238106Sdes				vendor=atari
1774238106Sdes				;;
1775238106Sdes			-vos*)
1776238106Sdes				vendor=stratus
1777238106Sdes				;;
1778238106Sdes		esac
1779238106Sdes		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1780238106Sdes		;;
1781238106Sdesesac
1782238106Sdes
1783238106Sdesecho $basic_machine$os
1784238106Sdesexit
1785238106Sdes
1786238106Sdes# Local variables:
1787238106Sdes# eval: (add-hook 'write-file-hooks 'time-stamp)
1788238106Sdes# time-stamp-start: "timestamp='"
1789238106Sdes# time-stamp-format: "%:y-%02m-%02d"
1790238106Sdes# time-stamp-end: "'"
1791238106Sdes# End:
1792