1706f2543Smrg#! /bin/sh
2706f2543Smrg# Configuration validation subroutine script.
3706f2543Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4706f2543Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
5706f2543Smrg#   Inc.
6706f2543Smrg
7706f2543Smrgtimestamp='2006-09-20'
8706f2543Smrg
9706f2543Smrg# This file is (in principle) common to ALL GNU software.
10706f2543Smrg# The presence of a machine in this file suggests that SOME GNU software
11706f2543Smrg# can handle that machine.  It does not imply ALL GNU software can.
12706f2543Smrg#
13706f2543Smrg# This file is free software; you can redistribute it and/or modify
14706f2543Smrg# it under the terms of the GNU General Public License as published by
15706f2543Smrg# the Free Software Foundation; either version 2 of the License, or
16706f2543Smrg# (at your option) any later version.
17706f2543Smrg#
18706f2543Smrg# This program is distributed in the hope that it will be useful,
19706f2543Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
20706f2543Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21706f2543Smrg# GNU General Public License for more details.
22706f2543Smrg#
23706f2543Smrg# You should have received a copy of the GNU General Public License
24706f2543Smrg# along with this program; if not, write to the Free Software
25706f2543Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
26706f2543Smrg# 02110-1301, USA.
27706f2543Smrg#
28706f2543Smrg# As a special exception to the GNU General Public License, if you
29706f2543Smrg# distribute this file as part of a program that contains a
30706f2543Smrg# configuration script generated by Autoconf, you may include it under
31706f2543Smrg# the same distribution terms that you use for the rest of that program.
32706f2543Smrg
33706f2543Smrg
34706f2543Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
35706f2543Smrg# diff and a properly formatted ChangeLog entry.
36706f2543Smrg#
37706f2543Smrg# Configuration subroutine to validate and canonicalize a configuration type.
38706f2543Smrg# Supply the specified configuration type as an argument.
39706f2543Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
40706f2543Smrg# Otherwise, we print the canonical config type on stdout and succeed.
41706f2543Smrg
42706f2543Smrg# This file is supposed to be the same for all GNU packages
43706f2543Smrg# and recognize all the CPU types, system types and aliases
44706f2543Smrg# that are meaningful with *any* GNU software.
45706f2543Smrg# Each package is responsible for reporting which valid configurations
46706f2543Smrg# it does not support.  The user should be able to distinguish
47706f2543Smrg# a failure to support a valid configuration from a meaningless
48706f2543Smrg# configuration.
49706f2543Smrg
50706f2543Smrg# The goal of this file is to map all the various variations of a given
51706f2543Smrg# machine specification into a single specification in the form:
52706f2543Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
53706f2543Smrg# or in some cases, the newer four-part form:
54706f2543Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
55706f2543Smrg# It is wrong to echo any other type of specification.
56706f2543Smrg
57706f2543Smrgme=`echo "$0" | sed -e 's,.*/,,'`
58706f2543Smrg
59706f2543Smrgusage="\
60706f2543SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
61706f2543Smrg       $0 [OPTION] ALIAS
62706f2543Smrg
63706f2543SmrgCanonicalize a configuration name.
64706f2543Smrg
65706f2543SmrgOperation modes:
66706f2543Smrg  -h, --help         print this help, then exit
67706f2543Smrg  -t, --time-stamp   print date of last modification, then exit
68706f2543Smrg  -v, --version      print version number, then exit
69706f2543Smrg
70706f2543SmrgReport bugs and patches to <config-patches@gnu.org>."
71706f2543Smrg
72706f2543Smrgversion="\
73706f2543SmrgGNU config.sub ($timestamp)
74706f2543Smrg
75706f2543SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
76706f2543SmrgFree Software Foundation, Inc.
77706f2543Smrg
78706f2543SmrgThis is free software; see the source for copying conditions.  There is NO
79706f2543Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
80706f2543Smrg
81706f2543Smrghelp="
82706f2543SmrgTry \`$me --help' for more information."
83706f2543Smrg
84706f2543Smrg# Parse command line
85706f2543Smrgwhile test $# -gt 0 ; do
86706f2543Smrg  case $1 in
87706f2543Smrg    --time-stamp | --time* | -t )
88706f2543Smrg       echo "$timestamp" ; exit ;;
89706f2543Smrg    --version | -v )
90706f2543Smrg       echo "$version" ; exit ;;
91706f2543Smrg    --help | --h* | -h )
92706f2543Smrg       echo "$usage"; exit ;;
93706f2543Smrg    -- )     # Stop option processing
94706f2543Smrg       shift; break ;;
95706f2543Smrg    - )	# Use stdin as input.
96706f2543Smrg       break ;;
97706f2543Smrg    -* )
98706f2543Smrg       echo "$me: invalid option $1$help"
99706f2543Smrg       exit 1 ;;
100706f2543Smrg
101706f2543Smrg    *local*)
102706f2543Smrg       # First pass through any local machine types.
103706f2543Smrg       echo $1
104706f2543Smrg       exit ;;
105706f2543Smrg
106706f2543Smrg    * )
107706f2543Smrg       break ;;
108706f2543Smrg  esac
109706f2543Smrgdone
110706f2543Smrg
111706f2543Smrgcase $# in
112706f2543Smrg 0) echo "$me: missing argument$help" >&2
113706f2543Smrg    exit 1;;
114706f2543Smrg 1) ;;
115706f2543Smrg *) echo "$me: too many arguments$help" >&2
116706f2543Smrg    exit 1;;
117706f2543Smrgesac
118706f2543Smrg
119706f2543Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
120706f2543Smrg# Here we must recognize all the valid KERNEL-OS combinations.
121706f2543Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
122706f2543Smrgcase $maybe_os in
123706f2543Smrg  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
124706f2543Smrg  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
125706f2543Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
126706f2543Smrg    os=-$maybe_os
127706f2543Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
128706f2543Smrg    ;;
129706f2543Smrg  *)
130706f2543Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131706f2543Smrg    if [ $basic_machine != $1 ]
132706f2543Smrg    then os=`echo $1 | sed 's/.*-/-/'`
133706f2543Smrg    else os=; fi
134706f2543Smrg    ;;
135706f2543Smrgesac
136706f2543Smrg
137706f2543Smrg### Let's recognize common machines as not being operating systems so
138706f2543Smrg### that things like config.sub decstation-3100 work.  We also
139706f2543Smrg### recognize some manufacturers as not being operating systems, so we
140706f2543Smrg### can provide default operating systems below.
141706f2543Smrgcase $os in
142706f2543Smrg	-sun*os*)
143706f2543Smrg		# Prevent following clause from handling this invalid input.
144706f2543Smrg		;;
145706f2543Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146706f2543Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147706f2543Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148706f2543Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149706f2543Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150706f2543Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
151706f2543Smrg	-apple | -axis | -knuth | -cray)
152706f2543Smrg		os=
153706f2543Smrg		basic_machine=$1
154706f2543Smrg		;;
155706f2543Smrg	-sim | -cisco | -oki | -wec | -winbond)
156706f2543Smrg		os=
157706f2543Smrg		basic_machine=$1
158706f2543Smrg		;;
159706f2543Smrg	-scout)
160706f2543Smrg		;;
161706f2543Smrg	-wrs)
162706f2543Smrg		os=-vxworks
163706f2543Smrg		basic_machine=$1
164706f2543Smrg		;;
165706f2543Smrg	-chorusos*)
166706f2543Smrg		os=-chorusos
167706f2543Smrg		basic_machine=$1
168706f2543Smrg		;;
169706f2543Smrg 	-chorusrdb)
170706f2543Smrg 		os=-chorusrdb
171706f2543Smrg		basic_machine=$1
172706f2543Smrg 		;;
173706f2543Smrg	-hiux*)
174706f2543Smrg		os=-hiuxwe2
175706f2543Smrg		;;
176706f2543Smrg	-sco6)
177706f2543Smrg		os=-sco5v6
178706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
179706f2543Smrg		;;
180706f2543Smrg	-sco5)
181706f2543Smrg		os=-sco3.2v5
182706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183706f2543Smrg		;;
184706f2543Smrg	-sco4)
185706f2543Smrg		os=-sco3.2v4
186706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187706f2543Smrg		;;
188706f2543Smrg	-sco3.2.[4-9]*)
189706f2543Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
190706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191706f2543Smrg		;;
192706f2543Smrg	-sco3.2v[4-9]*)
193706f2543Smrg		# Don't forget version if it is 3.2v4 or newer.
194706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195706f2543Smrg		;;
196706f2543Smrg	-sco5v6*)
197706f2543Smrg		# Don't forget version if it is 3.2v4 or newer.
198706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199706f2543Smrg		;;
200706f2543Smrg	-sco*)
201706f2543Smrg		os=-sco3.2v2
202706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
203706f2543Smrg		;;
204706f2543Smrg	-udk*)
205706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206706f2543Smrg		;;
207706f2543Smrg	-isc)
208706f2543Smrg		os=-isc2.2
209706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210706f2543Smrg		;;
211706f2543Smrg	-clix*)
212706f2543Smrg		basic_machine=clipper-intergraph
213706f2543Smrg		;;
214706f2543Smrg	-isc*)
215706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
216706f2543Smrg		;;
217706f2543Smrg	-lynx*)
218706f2543Smrg		os=-lynxos
219706f2543Smrg		;;
220706f2543Smrg	-ptx*)
221706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
222706f2543Smrg		;;
223706f2543Smrg	-windowsnt*)
224706f2543Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
225706f2543Smrg		;;
226706f2543Smrg	-psos*)
227706f2543Smrg		os=-psos
228706f2543Smrg		;;
229706f2543Smrg	-mint | -mint[0-9]*)
230706f2543Smrg		basic_machine=m68k-atari
231706f2543Smrg		os=-mint
232706f2543Smrg		;;
233706f2543Smrgesac
234706f2543Smrg
235706f2543Smrg# Decode aliases for certain CPU-COMPANY combinations.
236706f2543Smrgcase $basic_machine in
237706f2543Smrg	# Recognize the basic CPU types without company name.
238706f2543Smrg	# Some are omitted here because they have special meanings below.
239706f2543Smrg	1750a | 580 \
240706f2543Smrg	| a29k \
241706f2543Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
242706f2543Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
243706f2543Smrg	| am33_2.0 \
244706f2543Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
245706f2543Smrg	| bfin \
246706f2543Smrg	| c4x | clipper \
247706f2543Smrg	| d10v | d30v | dlx | dsp16xx \
248706f2543Smrg	| fr30 | frv \
249706f2543Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
250706f2543Smrg	| i370 | i860 | i960 | ia64 \
251706f2543Smrg	| ip2k | iq2000 \
252706f2543Smrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
253706f2543Smrg	| maxq | mb | microblaze | mcore \
254706f2543Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
255706f2543Smrg	| mips16 \
256706f2543Smrg	| mips64 | mips64el \
257706f2543Smrg	| mips64vr | mips64vrel \
258706f2543Smrg	| mips64orion | mips64orionel \
259706f2543Smrg	| mips64vr4100 | mips64vr4100el \
260706f2543Smrg	| mips64vr4300 | mips64vr4300el \
261706f2543Smrg	| mips64vr5000 | mips64vr5000el \
262706f2543Smrg	| mips64vr5900 | mips64vr5900el \
263706f2543Smrg	| mipsisa32 | mipsisa32el \
264706f2543Smrg	| mipsisa32r2 | mipsisa32r2el \
265706f2543Smrg	| mipsisa64 | mipsisa64el \
266706f2543Smrg	| mipsisa64r2 | mipsisa64r2el \
267706f2543Smrg	| mipsisa64sb1 | mipsisa64sb1el \
268706f2543Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
269706f2543Smrg	| mipstx39 | mipstx39el \
270706f2543Smrg	| mn10200 | mn10300 \
271706f2543Smrg	| mt \
272706f2543Smrg	| msp430 \
273706f2543Smrg	| nios | nios2 \
274706f2543Smrg	| ns16k | ns32k \
275706f2543Smrg	| or32 \
276706f2543Smrg	| pdp10 | pdp11 | pj | pjl \
277706f2543Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
278706f2543Smrg	| pyramid \
279706f2543Smrg	| score \
280706f2543Smrg	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
281706f2543Smrg	| sh64 | sh64le \
282706f2543Smrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
283706f2543Smrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
284706f2543Smrg	| spu | strongarm \
285706f2543Smrg	| tahoe | thumb | tic4x | tic80 | tron \
286706f2543Smrg	| v850 | v850e \
287706f2543Smrg	| we32k \
288706f2543Smrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
289706f2543Smrg	| z8k)
290706f2543Smrg		basic_machine=$basic_machine-unknown
291706f2543Smrg		;;
292706f2543Smrg	m6811 | m68hc11 | m6812 | m68hc12)
293706f2543Smrg		# Motorola 68HC11/12.
294706f2543Smrg		basic_machine=$basic_machine-unknown
295706f2543Smrg		os=-none
296706f2543Smrg		;;
297706f2543Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
298706f2543Smrg		;;
299706f2543Smrg	ms1)
300706f2543Smrg		basic_machine=mt-unknown
301706f2543Smrg		;;
302706f2543Smrg
303706f2543Smrg	# We use `pc' rather than `unknown'
304706f2543Smrg	# because (1) that's what they normally are, and
305706f2543Smrg	# (2) the word "unknown" tends to confuse beginning users.
306706f2543Smrg	i*86 | x86_64)
307706f2543Smrg	  basic_machine=$basic_machine-pc
308706f2543Smrg	  ;;
309706f2543Smrg	# Object if more than one company name word.
310706f2543Smrg	*-*-*)
311706f2543Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
312706f2543Smrg		exit 1
313706f2543Smrg		;;
314706f2543Smrg	# Recognize the basic CPU types with company name.
315706f2543Smrg	580-* \
316706f2543Smrg	| a29k-* \
317706f2543Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
318706f2543Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
319706f2543Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
320706f2543Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
321706f2543Smrg	| avr-* | avr32-* \
322706f2543Smrg	| bfin-* | bs2000-* \
323706f2543Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
324706f2543Smrg	| clipper-* | craynv-* | cydra-* \
325706f2543Smrg	| d10v-* | d30v-* | dlx-* \
326706f2543Smrg	| elxsi-* \
327706f2543Smrg	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
328706f2543Smrg	| h8300-* | h8500-* \
329706f2543Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
330706f2543Smrg	| i*86-* | i860-* | i960-* | ia64-* \
331706f2543Smrg	| ip2k-* | iq2000-* \
332706f2543Smrg	| m32c-* | m32r-* | m32rle-* \
333706f2543Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
334706f2543Smrg	| m88110-* | m88k-* | maxq-* | mcore-* \
335706f2543Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
336706f2543Smrg	| mips16-* \
337706f2543Smrg	| mips64-* | mips64el-* \
338706f2543Smrg	| mips64vr-* | mips64vrel-* \
339706f2543Smrg	| mips64orion-* | mips64orionel-* \
340706f2543Smrg	| mips64vr4100-* | mips64vr4100el-* \
341706f2543Smrg	| mips64vr4300-* | mips64vr4300el-* \
342706f2543Smrg	| mips64vr5000-* | mips64vr5000el-* \
343706f2543Smrg	| mips64vr5900-* | mips64vr5900el-* \
344706f2543Smrg	| mipsisa32-* | mipsisa32el-* \
345706f2543Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
346706f2543Smrg	| mipsisa64-* | mipsisa64el-* \
347706f2543Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
348706f2543Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
349706f2543Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
350706f2543Smrg	| mipstx39-* | mipstx39el-* \
351706f2543Smrg	| mmix-* \
352706f2543Smrg	| mt-* \
353706f2543Smrg	| msp430-* \
354706f2543Smrg	| nios-* | nios2-* \
355706f2543Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
356706f2543Smrg	| orion-* \
357706f2543Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
358706f2543Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
359706f2543Smrg	| pyramid-* \
360706f2543Smrg	| romp-* | rs6000-* \
361706f2543Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
362706f2543Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
363706f2543Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
364706f2543Smrg	| sparclite-* \
365706f2543Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
366706f2543Smrg	| tahoe-* | thumb-* \
367706f2543Smrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
368706f2543Smrg	| tron-* \
369706f2543Smrg	| v850-* | v850e-* | vax-* \
370706f2543Smrg	| we32k-* \
371706f2543Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
372706f2543Smrg	| xstormy16-* | xtensa-* \
373706f2543Smrg	| ymp-* \
374706f2543Smrg	| z8k-*)
375706f2543Smrg		;;
376706f2543Smrg	# Recognize the various machine names and aliases which stand
377706f2543Smrg	# for a CPU type and a company and sometimes even an OS.
378706f2543Smrg	386bsd)
379706f2543Smrg		basic_machine=i386-unknown
380706f2543Smrg		os=-bsd
381706f2543Smrg		;;
382706f2543Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
383706f2543Smrg		basic_machine=m68000-att
384706f2543Smrg		;;
385706f2543Smrg	3b*)
386706f2543Smrg		basic_machine=we32k-att
387706f2543Smrg		;;
388706f2543Smrg	a29khif)
389706f2543Smrg		basic_machine=a29k-amd
390706f2543Smrg		os=-udi
391706f2543Smrg		;;
392706f2543Smrg    	abacus)
393706f2543Smrg		basic_machine=abacus-unknown
394706f2543Smrg		;;
395706f2543Smrg	adobe68k)
396706f2543Smrg		basic_machine=m68010-adobe
397706f2543Smrg		os=-scout
398706f2543Smrg		;;
399706f2543Smrg	alliant | fx80)
400706f2543Smrg		basic_machine=fx80-alliant
401706f2543Smrg		;;
402706f2543Smrg	altos | altos3068)
403706f2543Smrg		basic_machine=m68k-altos
404706f2543Smrg		;;
405706f2543Smrg	am29k)
406706f2543Smrg		basic_machine=a29k-none
407706f2543Smrg		os=-bsd
408706f2543Smrg		;;
409706f2543Smrg	amd64)
410706f2543Smrg		basic_machine=x86_64-pc
411706f2543Smrg		;;
412706f2543Smrg	amd64-*)
413706f2543Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
414706f2543Smrg		;;
415706f2543Smrg	amdahl)
416706f2543Smrg		basic_machine=580-amdahl
417706f2543Smrg		os=-sysv
418706f2543Smrg		;;
419706f2543Smrg	amiga | amiga-*)
420706f2543Smrg		basic_machine=m68k-unknown
421706f2543Smrg		;;
422706f2543Smrg	amigaos | amigados)
423706f2543Smrg		basic_machine=m68k-unknown
424706f2543Smrg		os=-amigaos
425706f2543Smrg		;;
426706f2543Smrg	amigaunix | amix)
427706f2543Smrg		basic_machine=m68k-unknown
428706f2543Smrg		os=-sysv4
429706f2543Smrg		;;
430706f2543Smrg	apollo68)
431706f2543Smrg		basic_machine=m68k-apollo
432706f2543Smrg		os=-sysv
433706f2543Smrg		;;
434706f2543Smrg	apollo68bsd)
435706f2543Smrg		basic_machine=m68k-apollo
436706f2543Smrg		os=-bsd
437706f2543Smrg		;;
438706f2543Smrg	aux)
439706f2543Smrg		basic_machine=m68k-apple
440706f2543Smrg		os=-aux
441706f2543Smrg		;;
442706f2543Smrg	balance)
443706f2543Smrg		basic_machine=ns32k-sequent
444706f2543Smrg		os=-dynix
445706f2543Smrg		;;
446706f2543Smrg	c90)
447706f2543Smrg		basic_machine=c90-cray
448706f2543Smrg		os=-unicos
449706f2543Smrg		;;
450706f2543Smrg	convex-c1)
451706f2543Smrg		basic_machine=c1-convex
452706f2543Smrg		os=-bsd
453706f2543Smrg		;;
454706f2543Smrg	convex-c2)
455706f2543Smrg		basic_machine=c2-convex
456706f2543Smrg		os=-bsd
457706f2543Smrg		;;
458706f2543Smrg	convex-c32)
459706f2543Smrg		basic_machine=c32-convex
460706f2543Smrg		os=-bsd
461706f2543Smrg		;;
462706f2543Smrg	convex-c34)
463706f2543Smrg		basic_machine=c34-convex
464706f2543Smrg		os=-bsd
465706f2543Smrg		;;
466706f2543Smrg	convex-c38)
467706f2543Smrg		basic_machine=c38-convex
468706f2543Smrg		os=-bsd
469706f2543Smrg		;;
470706f2543Smrg	cray | j90)
471706f2543Smrg		basic_machine=j90-cray
472706f2543Smrg		os=-unicos
473706f2543Smrg		;;
474706f2543Smrg	craynv)
475706f2543Smrg		basic_machine=craynv-cray
476706f2543Smrg		os=-unicosmp
477706f2543Smrg		;;
478706f2543Smrg	cr16c)
479706f2543Smrg		basic_machine=cr16c-unknown
480706f2543Smrg		os=-elf
481706f2543Smrg		;;
482706f2543Smrg	crds | unos)
483706f2543Smrg		basic_machine=m68k-crds
484706f2543Smrg		;;
485706f2543Smrg	crisv32 | crisv32-* | etraxfs*)
486706f2543Smrg		basic_machine=crisv32-axis
487706f2543Smrg		;;
488706f2543Smrg	cris | cris-* | etrax*)
489706f2543Smrg		basic_machine=cris-axis
490706f2543Smrg		;;
491706f2543Smrg	crx)
492706f2543Smrg		basic_machine=crx-unknown
493706f2543Smrg		os=-elf
494706f2543Smrg		;;
495706f2543Smrg	da30 | da30-*)
496706f2543Smrg		basic_machine=m68k-da30
497706f2543Smrg		;;
498706f2543Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
499706f2543Smrg		basic_machine=mips-dec
500706f2543Smrg		;;
501706f2543Smrg	decsystem10* | dec10*)
502706f2543Smrg		basic_machine=pdp10-dec
503706f2543Smrg		os=-tops10
504706f2543Smrg		;;
505706f2543Smrg	decsystem20* | dec20*)
506706f2543Smrg		basic_machine=pdp10-dec
507706f2543Smrg		os=-tops20
508706f2543Smrg		;;
509706f2543Smrg	delta | 3300 | motorola-3300 | motorola-delta \
510706f2543Smrg	      | 3300-motorola | delta-motorola)
511706f2543Smrg		basic_machine=m68k-motorola
512706f2543Smrg		;;
513706f2543Smrg	delta88)
514706f2543Smrg		basic_machine=m88k-motorola
515706f2543Smrg		os=-sysv3
516706f2543Smrg		;;
517706f2543Smrg	djgpp)
518706f2543Smrg		basic_machine=i586-pc
519706f2543Smrg		os=-msdosdjgpp
520706f2543Smrg		;;
521706f2543Smrg	dpx20 | dpx20-*)
522706f2543Smrg		basic_machine=rs6000-bull
523706f2543Smrg		os=-bosx
524706f2543Smrg		;;
525706f2543Smrg	dpx2* | dpx2*-bull)
526706f2543Smrg		basic_machine=m68k-bull
527706f2543Smrg		os=-sysv3
528706f2543Smrg		;;
529706f2543Smrg	ebmon29k)
530706f2543Smrg		basic_machine=a29k-amd
531706f2543Smrg		os=-ebmon
532706f2543Smrg		;;
533706f2543Smrg	elxsi)
534706f2543Smrg		basic_machine=elxsi-elxsi
535706f2543Smrg		os=-bsd
536706f2543Smrg		;;
537706f2543Smrg	encore | umax | mmax)
538706f2543Smrg		basic_machine=ns32k-encore
539706f2543Smrg		;;
540706f2543Smrg	es1800 | OSE68k | ose68k | ose | OSE)
541706f2543Smrg		basic_machine=m68k-ericsson
542706f2543Smrg		os=-ose
543706f2543Smrg		;;
544706f2543Smrg	fx2800)
545706f2543Smrg		basic_machine=i860-alliant
546706f2543Smrg		;;
547706f2543Smrg	genix)
548706f2543Smrg		basic_machine=ns32k-ns
549706f2543Smrg		;;
550706f2543Smrg	gmicro)
551706f2543Smrg		basic_machine=tron-gmicro
552706f2543Smrg		os=-sysv
553706f2543Smrg		;;
554706f2543Smrg	go32)
555706f2543Smrg		basic_machine=i386-pc
556706f2543Smrg		os=-go32
557706f2543Smrg		;;
558706f2543Smrg	h3050r* | hiux*)
559706f2543Smrg		basic_machine=hppa1.1-hitachi
560706f2543Smrg		os=-hiuxwe2
561706f2543Smrg		;;
562706f2543Smrg	h8300hms)
563706f2543Smrg		basic_machine=h8300-hitachi
564706f2543Smrg		os=-hms
565706f2543Smrg		;;
566706f2543Smrg	h8300xray)
567706f2543Smrg		basic_machine=h8300-hitachi
568706f2543Smrg		os=-xray
569706f2543Smrg		;;
570706f2543Smrg	h8500hms)
571706f2543Smrg		basic_machine=h8500-hitachi
572706f2543Smrg		os=-hms
573706f2543Smrg		;;
574706f2543Smrg	harris)
575706f2543Smrg		basic_machine=m88k-harris
576706f2543Smrg		os=-sysv3
577706f2543Smrg		;;
578706f2543Smrg	hp300-*)
579706f2543Smrg		basic_machine=m68k-hp
580706f2543Smrg		;;
581706f2543Smrg	hp300bsd)
582706f2543Smrg		basic_machine=m68k-hp
583706f2543Smrg		os=-bsd
584706f2543Smrg		;;
585706f2543Smrg	hp300hpux)
586706f2543Smrg		basic_machine=m68k-hp
587706f2543Smrg		os=-hpux
588706f2543Smrg		;;
589706f2543Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
590706f2543Smrg		basic_machine=hppa1.0-hp
591706f2543Smrg		;;
592706f2543Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
593706f2543Smrg		basic_machine=m68000-hp
594706f2543Smrg		;;
595706f2543Smrg	hp9k3[2-9][0-9])
596706f2543Smrg		basic_machine=m68k-hp
597706f2543Smrg		;;
598706f2543Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
599706f2543Smrg		basic_machine=hppa1.0-hp
600706f2543Smrg		;;
601706f2543Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
602706f2543Smrg		basic_machine=hppa1.1-hp
603706f2543Smrg		;;
604706f2543Smrg	hp9k78[0-9] | hp78[0-9])
605706f2543Smrg		# FIXME: really hppa2.0-hp
606706f2543Smrg		basic_machine=hppa1.1-hp
607706f2543Smrg		;;
608706f2543Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
609706f2543Smrg		# FIXME: really hppa2.0-hp
610706f2543Smrg		basic_machine=hppa1.1-hp
611706f2543Smrg		;;
612706f2543Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
613706f2543Smrg		basic_machine=hppa1.1-hp
614706f2543Smrg		;;
615706f2543Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
616706f2543Smrg		basic_machine=hppa1.0-hp
617706f2543Smrg		;;
618706f2543Smrg	hppa-next)
619706f2543Smrg		os=-nextstep3
620706f2543Smrg		;;
621706f2543Smrg	hppaosf)
622706f2543Smrg		basic_machine=hppa1.1-hp
623706f2543Smrg		os=-osf
624706f2543Smrg		;;
625706f2543Smrg	hppro)
626706f2543Smrg		basic_machine=hppa1.1-hp
627706f2543Smrg		os=-proelf
628706f2543Smrg		;;
629706f2543Smrg	i370-ibm* | ibm*)
630706f2543Smrg		basic_machine=i370-ibm
631706f2543Smrg		;;
632706f2543Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
633706f2543Smrg	i*86v32)
634706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
635706f2543Smrg		os=-sysv32
636706f2543Smrg		;;
637706f2543Smrg	i*86v4*)
638706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
639706f2543Smrg		os=-sysv4
640706f2543Smrg		;;
641706f2543Smrg	i*86v)
642706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
643706f2543Smrg		os=-sysv
644706f2543Smrg		;;
645706f2543Smrg	i*86sol2)
646706f2543Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
647706f2543Smrg		os=-solaris2
648706f2543Smrg		;;
649706f2543Smrg	i386mach)
650706f2543Smrg		basic_machine=i386-mach
651706f2543Smrg		os=-mach
652706f2543Smrg		;;
653706f2543Smrg	i386-vsta | vsta)
654706f2543Smrg		basic_machine=i386-unknown
655706f2543Smrg		os=-vsta
656706f2543Smrg		;;
657706f2543Smrg	iris | iris4d)
658706f2543Smrg		basic_machine=mips-sgi
659706f2543Smrg		case $os in
660706f2543Smrg		    -irix*)
661706f2543Smrg			;;
662706f2543Smrg		    *)
663706f2543Smrg			os=-irix4
664706f2543Smrg			;;
665706f2543Smrg		esac
666706f2543Smrg		;;
667706f2543Smrg	isi68 | isi)
668706f2543Smrg		basic_machine=m68k-isi
669706f2543Smrg		os=-sysv
670706f2543Smrg		;;
671706f2543Smrg	m88k-omron*)
672706f2543Smrg		basic_machine=m88k-omron
673706f2543Smrg		;;
674706f2543Smrg	magnum | m3230)
675706f2543Smrg		basic_machine=mips-mips
676706f2543Smrg		os=-sysv
677706f2543Smrg		;;
678706f2543Smrg	merlin)
679706f2543Smrg		basic_machine=ns32k-utek
680706f2543Smrg		os=-sysv
681706f2543Smrg		;;
682706f2543Smrg	mingw32)
683706f2543Smrg		basic_machine=i386-pc
684706f2543Smrg		os=-mingw32
685706f2543Smrg		;;
686706f2543Smrg	miniframe)
687706f2543Smrg		basic_machine=m68000-convergent
688706f2543Smrg		;;
689706f2543Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
690706f2543Smrg		basic_machine=m68k-atari
691706f2543Smrg		os=-mint
692706f2543Smrg		;;
693706f2543Smrg	mips3*-*)
694706f2543Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
695706f2543Smrg		;;
696706f2543Smrg	mips3*)
697706f2543Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
698706f2543Smrg		;;
699706f2543Smrg	monitor)
700706f2543Smrg		basic_machine=m68k-rom68k
701706f2543Smrg		os=-coff
702706f2543Smrg		;;
703706f2543Smrg	morphos)
704706f2543Smrg		basic_machine=powerpc-unknown
705706f2543Smrg		os=-morphos
706706f2543Smrg		;;
707706f2543Smrg	msdos)
708706f2543Smrg		basic_machine=i386-pc
709706f2543Smrg		os=-msdos
710706f2543Smrg		;;
711706f2543Smrg	ms1-*)
712706f2543Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
713706f2543Smrg		;;
714706f2543Smrg	mvs)
715706f2543Smrg		basic_machine=i370-ibm
716706f2543Smrg		os=-mvs
717706f2543Smrg		;;
718706f2543Smrg	ncr3000)
719706f2543Smrg		basic_machine=i486-ncr
720706f2543Smrg		os=-sysv4
721706f2543Smrg		;;
722706f2543Smrg	netbsd386)
723706f2543Smrg		basic_machine=i386-unknown
724706f2543Smrg		os=-netbsd
725706f2543Smrg		;;
726706f2543Smrg	netwinder)
727706f2543Smrg		basic_machine=armv4l-rebel
728706f2543Smrg		os=-linux
729706f2543Smrg		;;
730706f2543Smrg	news | news700 | news800 | news900)
731706f2543Smrg		basic_machine=m68k-sony
732706f2543Smrg		os=-newsos
733706f2543Smrg		;;
734706f2543Smrg	news1000)
735706f2543Smrg		basic_machine=m68030-sony
736706f2543Smrg		os=-newsos
737706f2543Smrg		;;
738706f2543Smrg	news-3600 | risc-news)
739706f2543Smrg		basic_machine=mips-sony
740706f2543Smrg		os=-newsos
741706f2543Smrg		;;
742706f2543Smrg	necv70)
743706f2543Smrg		basic_machine=v70-nec
744706f2543Smrg		os=-sysv
745706f2543Smrg		;;
746706f2543Smrg	next | m*-next )
747706f2543Smrg		basic_machine=m68k-next
748706f2543Smrg		case $os in
749706f2543Smrg		    -nextstep* )
750706f2543Smrg			;;
751706f2543Smrg		    -ns2*)
752706f2543Smrg		      os=-nextstep2
753706f2543Smrg			;;
754706f2543Smrg		    *)
755706f2543Smrg		      os=-nextstep3
756706f2543Smrg			;;
757706f2543Smrg		esac
758706f2543Smrg		;;
759706f2543Smrg	nh3000)
760706f2543Smrg		basic_machine=m68k-harris
761706f2543Smrg		os=-cxux
762706f2543Smrg		;;
763706f2543Smrg	nh[45]000)
764706f2543Smrg		basic_machine=m88k-harris
765706f2543Smrg		os=-cxux
766706f2543Smrg		;;
767706f2543Smrg	nindy960)
768706f2543Smrg		basic_machine=i960-intel
769706f2543Smrg		os=-nindy
770706f2543Smrg		;;
771706f2543Smrg	mon960)
772706f2543Smrg		basic_machine=i960-intel
773706f2543Smrg		os=-mon960
774706f2543Smrg		;;
775706f2543Smrg	nonstopux)
776706f2543Smrg		basic_machine=mips-compaq
777706f2543Smrg		os=-nonstopux
778706f2543Smrg		;;
779706f2543Smrg	np1)
780706f2543Smrg		basic_machine=np1-gould
781706f2543Smrg		;;
782706f2543Smrg	nsr-tandem)
783706f2543Smrg		basic_machine=nsr-tandem
784706f2543Smrg		;;
785706f2543Smrg	op50n-* | op60c-*)
786706f2543Smrg		basic_machine=hppa1.1-oki
787706f2543Smrg		os=-proelf
788706f2543Smrg		;;
789706f2543Smrg	openrisc | openrisc-*)
790706f2543Smrg		basic_machine=or32-unknown
791706f2543Smrg		;;
792706f2543Smrg	os400)
793706f2543Smrg		basic_machine=powerpc-ibm
794706f2543Smrg		os=-os400
795706f2543Smrg		;;
796706f2543Smrg	OSE68000 | ose68000)
797706f2543Smrg		basic_machine=m68000-ericsson
798706f2543Smrg		os=-ose
799706f2543Smrg		;;
800706f2543Smrg	os68k)
801706f2543Smrg		basic_machine=m68k-none
802706f2543Smrg		os=-os68k
803706f2543Smrg		;;
804706f2543Smrg	pa-hitachi)
805706f2543Smrg		basic_machine=hppa1.1-hitachi
806706f2543Smrg		os=-hiuxwe2
807706f2543Smrg		;;
808706f2543Smrg	paragon)
809706f2543Smrg		basic_machine=i860-intel
810706f2543Smrg		os=-osf
811706f2543Smrg		;;
812706f2543Smrg	pbd)
813706f2543Smrg		basic_machine=sparc-tti
814706f2543Smrg		;;
815706f2543Smrg	pbb)
816706f2543Smrg		basic_machine=m68k-tti
817706f2543Smrg		;;
818706f2543Smrg	pc532 | pc532-*)
819706f2543Smrg		basic_machine=ns32k-pc532
820706f2543Smrg		;;
821706f2543Smrg	pc98)
822706f2543Smrg		basic_machine=i386-pc
823706f2543Smrg		;;
824706f2543Smrg	pc98-*)
825706f2543Smrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
826706f2543Smrg		;;
827706f2543Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
828706f2543Smrg		basic_machine=i586-pc
829706f2543Smrg		;;
830706f2543Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
831706f2543Smrg		basic_machine=i686-pc
832706f2543Smrg		;;
833706f2543Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
834706f2543Smrg		basic_machine=i686-pc
835706f2543Smrg		;;
836706f2543Smrg	pentium4)
837706f2543Smrg		basic_machine=i786-pc
838706f2543Smrg		;;
839706f2543Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
840706f2543Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
841706f2543Smrg		;;
842706f2543Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
843706f2543Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
844706f2543Smrg		;;
845706f2543Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
846706f2543Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
847706f2543Smrg		;;
848706f2543Smrg	pentium4-*)
849706f2543Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
850706f2543Smrg		;;
851706f2543Smrg	pn)
852706f2543Smrg		basic_machine=pn-gould
853706f2543Smrg		;;
854706f2543Smrg	power)	basic_machine=power-ibm
855706f2543Smrg		;;
856706f2543Smrg	ppc)	basic_machine=powerpc-unknown
857706f2543Smrg		;;
858706f2543Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
859706f2543Smrg		;;
860706f2543Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
861706f2543Smrg		basic_machine=powerpcle-unknown
862706f2543Smrg		;;
863706f2543Smrg	ppcle-* | powerpclittle-*)
864706f2543Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
865706f2543Smrg		;;
866706f2543Smrg	ppc64)	basic_machine=powerpc64-unknown
867706f2543Smrg		;;
868706f2543Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
869706f2543Smrg		;;
870706f2543Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
871706f2543Smrg		basic_machine=powerpc64le-unknown
872706f2543Smrg		;;
873706f2543Smrg	ppc64le-* | powerpc64little-*)
874706f2543Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
875706f2543Smrg		;;
876706f2543Smrg	ps2)
877706f2543Smrg		basic_machine=i386-ibm
878706f2543Smrg		;;
879706f2543Smrg	pw32)
880706f2543Smrg		basic_machine=i586-unknown
881706f2543Smrg		os=-pw32
882706f2543Smrg		;;
883706f2543Smrg	rdos)
884706f2543Smrg		basic_machine=i386-pc
885706f2543Smrg		os=-rdos
886706f2543Smrg		;;
887706f2543Smrg	rom68k)
888706f2543Smrg		basic_machine=m68k-rom68k
889706f2543Smrg		os=-coff
890706f2543Smrg		;;
891706f2543Smrg	rm[46]00)
892706f2543Smrg		basic_machine=mips-siemens
893706f2543Smrg		;;
894706f2543Smrg	rtpc | rtpc-*)
895706f2543Smrg		basic_machine=romp-ibm
896706f2543Smrg		;;
897706f2543Smrg	s390 | s390-*)
898706f2543Smrg		basic_machine=s390-ibm
899706f2543Smrg		;;
900706f2543Smrg	s390x | s390x-*)
901706f2543Smrg		basic_machine=s390x-ibm
902706f2543Smrg		;;
903706f2543Smrg	sa29200)
904706f2543Smrg		basic_machine=a29k-amd
905706f2543Smrg		os=-udi
906706f2543Smrg		;;
907706f2543Smrg	sb1)
908706f2543Smrg		basic_machine=mipsisa64sb1-unknown
909706f2543Smrg		;;
910706f2543Smrg	sb1el)
911706f2543Smrg		basic_machine=mipsisa64sb1el-unknown
912706f2543Smrg		;;
913706f2543Smrg	sde)
914706f2543Smrg		basic_machine=mipsisa32-sde
915706f2543Smrg		os=-elf
916706f2543Smrg		;;
917706f2543Smrg	sei)
918706f2543Smrg		basic_machine=mips-sei
919706f2543Smrg		os=-seiux
920706f2543Smrg		;;
921706f2543Smrg	sequent)
922706f2543Smrg		basic_machine=i386-sequent
923706f2543Smrg		;;
924706f2543Smrg	sh)
925706f2543Smrg		basic_machine=sh-hitachi
926706f2543Smrg		os=-hms
927706f2543Smrg		;;
928706f2543Smrg	sh64)
929706f2543Smrg		basic_machine=sh64-unknown
930706f2543Smrg		;;
931706f2543Smrg	sparclite-wrs | simso-wrs)
932706f2543Smrg		basic_machine=sparclite-wrs
933706f2543Smrg		os=-vxworks
934706f2543Smrg		;;
935706f2543Smrg	sps7)
936706f2543Smrg		basic_machine=m68k-bull
937706f2543Smrg		os=-sysv2
938706f2543Smrg		;;
939706f2543Smrg	spur)
940706f2543Smrg		basic_machine=spur-unknown
941706f2543Smrg		;;
942706f2543Smrg	st2000)
943706f2543Smrg		basic_machine=m68k-tandem
944706f2543Smrg		;;
945706f2543Smrg	stratus)
946706f2543Smrg		basic_machine=i860-stratus
947706f2543Smrg		os=-sysv4
948706f2543Smrg		;;
949706f2543Smrg	sun2)
950706f2543Smrg		basic_machine=m68000-sun
951706f2543Smrg		;;
952706f2543Smrg	sun2os3)
953706f2543Smrg		basic_machine=m68000-sun
954706f2543Smrg		os=-sunos3
955706f2543Smrg		;;
956706f2543Smrg	sun2os4)
957706f2543Smrg		basic_machine=m68000-sun
958706f2543Smrg		os=-sunos4
959706f2543Smrg		;;
960706f2543Smrg	sun3os3)
961706f2543Smrg		basic_machine=m68k-sun
962706f2543Smrg		os=-sunos3
963706f2543Smrg		;;
964706f2543Smrg	sun3os4)
965706f2543Smrg		basic_machine=m68k-sun
966706f2543Smrg		os=-sunos4
967706f2543Smrg		;;
968706f2543Smrg	sun4os3)
969706f2543Smrg		basic_machine=sparc-sun
970706f2543Smrg		os=-sunos3
971706f2543Smrg		;;
972706f2543Smrg	sun4os4)
973706f2543Smrg		basic_machine=sparc-sun
974706f2543Smrg		os=-sunos4
975706f2543Smrg		;;
976706f2543Smrg	sun4sol2)
977706f2543Smrg		basic_machine=sparc-sun
978706f2543Smrg		os=-solaris2
979706f2543Smrg		;;
980706f2543Smrg	sun3 | sun3-*)
981706f2543Smrg		basic_machine=m68k-sun
982706f2543Smrg		;;
983706f2543Smrg	sun4)
984706f2543Smrg		basic_machine=sparc-sun
985706f2543Smrg		;;
986706f2543Smrg	sun386 | sun386i | roadrunner)
987706f2543Smrg		basic_machine=i386-sun
988706f2543Smrg		;;
989706f2543Smrg	sv1)
990706f2543Smrg		basic_machine=sv1-cray
991706f2543Smrg		os=-unicos
992706f2543Smrg		;;
993706f2543Smrg	symmetry)
994706f2543Smrg		basic_machine=i386-sequent
995706f2543Smrg		os=-dynix
996706f2543Smrg		;;
997706f2543Smrg	t3e)
998706f2543Smrg		basic_machine=alphaev5-cray
999706f2543Smrg		os=-unicos
1000706f2543Smrg		;;
1001706f2543Smrg	t90)
1002706f2543Smrg		basic_machine=t90-cray
1003706f2543Smrg		os=-unicos
1004706f2543Smrg		;;
1005706f2543Smrg	tic54x | c54x*)
1006706f2543Smrg		basic_machine=tic54x-unknown
1007706f2543Smrg		os=-coff
1008706f2543Smrg		;;
1009706f2543Smrg	tic55x | c55x*)
1010706f2543Smrg		basic_machine=tic55x-unknown
1011706f2543Smrg		os=-coff
1012706f2543Smrg		;;
1013706f2543Smrg	tic6x | c6x*)
1014706f2543Smrg		basic_machine=tic6x-unknown
1015706f2543Smrg		os=-coff
1016706f2543Smrg		;;
1017706f2543Smrg	tx39)
1018706f2543Smrg		basic_machine=mipstx39-unknown
1019706f2543Smrg		;;
1020706f2543Smrg	tx39el)
1021706f2543Smrg		basic_machine=mipstx39el-unknown
1022706f2543Smrg		;;
1023706f2543Smrg	toad1)
1024706f2543Smrg		basic_machine=pdp10-xkl
1025706f2543Smrg		os=-tops20
1026706f2543Smrg		;;
1027706f2543Smrg	tower | tower-32)
1028706f2543Smrg		basic_machine=m68k-ncr
1029706f2543Smrg		;;
1030706f2543Smrg	tpf)
1031706f2543Smrg		basic_machine=s390x-ibm
1032706f2543Smrg		os=-tpf
1033706f2543Smrg		;;
1034706f2543Smrg	udi29k)
1035706f2543Smrg		basic_machine=a29k-amd
1036706f2543Smrg		os=-udi
1037706f2543Smrg		;;
1038706f2543Smrg	ultra3)
1039706f2543Smrg		basic_machine=a29k-nyu
1040706f2543Smrg		os=-sym1
1041706f2543Smrg		;;
1042706f2543Smrg	v810 | necv810)
1043706f2543Smrg		basic_machine=v810-nec
1044706f2543Smrg		os=-none
1045706f2543Smrg		;;
1046706f2543Smrg	vaxv)
1047706f2543Smrg		basic_machine=vax-dec
1048706f2543Smrg		os=-sysv
1049706f2543Smrg		;;
1050706f2543Smrg	vms)
1051706f2543Smrg		basic_machine=vax-dec
1052706f2543Smrg		os=-vms
1053706f2543Smrg		;;
1054706f2543Smrg	vpp*|vx|vx-*)
1055706f2543Smrg		basic_machine=f301-fujitsu
1056706f2543Smrg		;;
1057706f2543Smrg	vxworks960)
1058706f2543Smrg		basic_machine=i960-wrs
1059706f2543Smrg		os=-vxworks
1060706f2543Smrg		;;
1061706f2543Smrg	vxworks68)
1062706f2543Smrg		basic_machine=m68k-wrs
1063706f2543Smrg		os=-vxworks
1064706f2543Smrg		;;
1065706f2543Smrg	vxworks29k)
1066706f2543Smrg		basic_machine=a29k-wrs
1067706f2543Smrg		os=-vxworks
1068706f2543Smrg		;;
1069706f2543Smrg	w65*)
1070706f2543Smrg		basic_machine=w65-wdc
1071706f2543Smrg		os=-none
1072706f2543Smrg		;;
1073706f2543Smrg	w89k-*)
1074706f2543Smrg		basic_machine=hppa1.1-winbond
1075706f2543Smrg		os=-proelf
1076706f2543Smrg		;;
1077706f2543Smrg	xbox)
1078706f2543Smrg		basic_machine=i686-pc
1079706f2543Smrg		os=-mingw32
1080706f2543Smrg		;;
1081706f2543Smrg	xps | xps100)
1082706f2543Smrg		basic_machine=xps100-honeywell
1083706f2543Smrg		;;
1084706f2543Smrg	ymp)
1085706f2543Smrg		basic_machine=ymp-cray
1086706f2543Smrg		os=-unicos
1087706f2543Smrg		;;
1088706f2543Smrg	z8k-*-coff)
1089706f2543Smrg		basic_machine=z8k-unknown
1090706f2543Smrg		os=-sim
1091706f2543Smrg		;;
1092706f2543Smrg	none)
1093706f2543Smrg		basic_machine=none-none
1094706f2543Smrg		os=-none
1095706f2543Smrg		;;
1096706f2543Smrg
1097706f2543Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
1098706f2543Smrg# some cases the only manufacturer, in others, it is the most popular.
1099706f2543Smrg	w89k)
1100706f2543Smrg		basic_machine=hppa1.1-winbond
1101706f2543Smrg		;;
1102706f2543Smrg	op50n)
1103706f2543Smrg		basic_machine=hppa1.1-oki
1104706f2543Smrg		;;
1105706f2543Smrg	op60c)
1106706f2543Smrg		basic_machine=hppa1.1-oki
1107706f2543Smrg		;;
1108706f2543Smrg	romp)
1109706f2543Smrg		basic_machine=romp-ibm
1110706f2543Smrg		;;
1111706f2543Smrg	mmix)
1112706f2543Smrg		basic_machine=mmix-knuth
1113706f2543Smrg		;;
1114706f2543Smrg	rs6000)
1115706f2543Smrg		basic_machine=rs6000-ibm
1116706f2543Smrg		;;
1117706f2543Smrg	vax)
1118706f2543Smrg		basic_machine=vax-dec
1119706f2543Smrg		;;
1120706f2543Smrg	pdp10)
1121706f2543Smrg		# there are many clones, so DEC is not a safe bet
1122706f2543Smrg		basic_machine=pdp10-unknown
1123706f2543Smrg		;;
1124706f2543Smrg	pdp11)
1125706f2543Smrg		basic_machine=pdp11-dec
1126706f2543Smrg		;;
1127706f2543Smrg	we32k)
1128706f2543Smrg		basic_machine=we32k-att
1129706f2543Smrg		;;
1130706f2543Smrg	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
1131706f2543Smrg		basic_machine=sh-unknown
1132706f2543Smrg		;;
1133706f2543Smrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1134706f2543Smrg		basic_machine=sparc-sun
1135706f2543Smrg		;;
1136706f2543Smrg	cydra)
1137706f2543Smrg		basic_machine=cydra-cydrome
1138706f2543Smrg		;;
1139706f2543Smrg	orion)
1140706f2543Smrg		basic_machine=orion-highlevel
1141706f2543Smrg		;;
1142706f2543Smrg	orion105)
1143706f2543Smrg		basic_machine=clipper-highlevel
1144706f2543Smrg		;;
1145706f2543Smrg	mac | mpw | mac-mpw)
1146706f2543Smrg		basic_machine=m68k-apple
1147706f2543Smrg		;;
1148706f2543Smrg	pmac | pmac-mpw)
1149706f2543Smrg		basic_machine=powerpc-apple
1150706f2543Smrg		;;
1151706f2543Smrg	*-unknown)
1152706f2543Smrg		# Make sure to match an already-canonicalized machine name.
1153706f2543Smrg		;;
1154706f2543Smrg	*)
1155706f2543Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1156706f2543Smrg		exit 1
1157706f2543Smrg		;;
1158706f2543Smrgesac
1159706f2543Smrg
1160706f2543Smrg# Here we canonicalize certain aliases for manufacturers.
1161706f2543Smrgcase $basic_machine in
1162706f2543Smrg	*-digital*)
1163706f2543Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1164706f2543Smrg		;;
1165706f2543Smrg	*-commodore*)
1166706f2543Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1167706f2543Smrg		;;
1168706f2543Smrg	*)
1169706f2543Smrg		;;
1170706f2543Smrgesac
1171706f2543Smrg
1172706f2543Smrg# Decode manufacturer-specific aliases for certain operating systems.
1173706f2543Smrg
1174706f2543Smrgif [ x"$os" != x"" ]
1175706f2543Smrgthen
1176706f2543Smrgcase $os in
1177706f2543Smrg        # First match some system type aliases
1178706f2543Smrg        # that might get confused with valid system types.
1179706f2543Smrg	# -solaris* is a basic system type, with this one exception.
1180706f2543Smrg	-solaris1 | -solaris1.*)
1181706f2543Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1182706f2543Smrg		;;
1183706f2543Smrg	-solaris)
1184706f2543Smrg		os=-solaris2
1185706f2543Smrg		;;
1186706f2543Smrg	-svr4*)
1187706f2543Smrg		os=-sysv4
1188706f2543Smrg		;;
1189706f2543Smrg	-unixware*)
1190706f2543Smrg		os=-sysv4.2uw
1191706f2543Smrg		;;
1192706f2543Smrg	-gnu/linux*)
1193706f2543Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1194706f2543Smrg		;;
1195706f2543Smrg	# First accept the basic system types.
1196706f2543Smrg	# The portable systems comes first.
1197706f2543Smrg	# Each alternative MUST END IN A *, to match a version number.
1198706f2543Smrg	# -sysv* is not here because it comes later, after sysvr4.
1199706f2543Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1200706f2543Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1201706f2543Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1202706f2543Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1203706f2543Smrg	      | -aos* \
1204706f2543Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1205706f2543Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1206706f2543Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1207706f2543Smrg	      | -openbsd* | -solidbsd* \
1208706f2543Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1209706f2543Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1210706f2543Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1211706f2543Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1212706f2543Smrg	      | -chorusos* | -chorusrdb* \
1213706f2543Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1214706f2543Smrg	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1215706f2543Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
1216706f2543Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1217706f2543Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1218706f2543Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1219706f2543Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1220706f2543Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1221706f2543Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1222706f2543Smrg	      | -skyos* | -haiku* | -rdos* | -toppers*)
1223706f2543Smrg	# Remember, each alternative MUST END IN *, to match a version number.
1224706f2543Smrg		;;
1225706f2543Smrg	-qnx*)
1226706f2543Smrg		case $basic_machine in
1227706f2543Smrg		    x86-* | i*86-*)
1228706f2543Smrg			;;
1229706f2543Smrg		    *)
1230706f2543Smrg			os=-nto$os
1231706f2543Smrg			;;
1232706f2543Smrg		esac
1233706f2543Smrg		;;
1234706f2543Smrg	-nto-qnx*)
1235706f2543Smrg		;;
1236706f2543Smrg	-nto*)
1237706f2543Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1238706f2543Smrg		;;
1239706f2543Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1240706f2543Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1241706f2543Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1242706f2543Smrg		;;
1243706f2543Smrg	-mac*)
1244706f2543Smrg		os=`echo $os | sed -e 's|mac|macos|'`
1245706f2543Smrg		;;
1246706f2543Smrg	-linux-dietlibc)
1247706f2543Smrg		os=-linux-dietlibc
1248706f2543Smrg		;;
1249706f2543Smrg	-linux*)
1250706f2543Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1251706f2543Smrg		;;
1252706f2543Smrg	-sunos5*)
1253706f2543Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1254706f2543Smrg		;;
1255706f2543Smrg	-sunos6*)
1256706f2543Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1257706f2543Smrg		;;
1258706f2543Smrg	-opened*)
1259706f2543Smrg		os=-openedition
1260706f2543Smrg		;;
1261706f2543Smrg        -os400*)
1262706f2543Smrg		os=-os400
1263706f2543Smrg		;;
1264706f2543Smrg	-wince*)
1265706f2543Smrg		os=-wince
1266706f2543Smrg		;;
1267706f2543Smrg	-osfrose*)
1268706f2543Smrg		os=-osfrose
1269706f2543Smrg		;;
1270706f2543Smrg	-osf*)
1271706f2543Smrg		os=-osf
1272706f2543Smrg		;;
1273706f2543Smrg	-utek*)
1274706f2543Smrg		os=-bsd
1275706f2543Smrg		;;
1276706f2543Smrg	-dynix*)
1277706f2543Smrg		os=-bsd
1278706f2543Smrg		;;
1279706f2543Smrg	-acis*)
1280706f2543Smrg		os=-aos
1281706f2543Smrg		;;
1282706f2543Smrg	-atheos*)
1283706f2543Smrg		os=-atheos
1284706f2543Smrg		;;
1285706f2543Smrg	-syllable*)
1286706f2543Smrg		os=-syllable
1287706f2543Smrg		;;
1288706f2543Smrg	-386bsd)
1289706f2543Smrg		os=-bsd
1290706f2543Smrg		;;
1291706f2543Smrg	-ctix* | -uts*)
1292706f2543Smrg		os=-sysv
1293706f2543Smrg		;;
1294706f2543Smrg	-nova*)
1295706f2543Smrg		os=-rtmk-nova
1296706f2543Smrg		;;
1297706f2543Smrg	-ns2 )
1298706f2543Smrg		os=-nextstep2
1299706f2543Smrg		;;
1300706f2543Smrg	-nsk*)
1301706f2543Smrg		os=-nsk
1302706f2543Smrg		;;
1303706f2543Smrg	# Preserve the version number of sinix5.
1304706f2543Smrg	-sinix5.*)
1305706f2543Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
1306706f2543Smrg		;;
1307706f2543Smrg	-sinix*)
1308706f2543Smrg		os=-sysv4
1309706f2543Smrg		;;
1310706f2543Smrg        -tpf*)
1311706f2543Smrg		os=-tpf
1312706f2543Smrg		;;
1313706f2543Smrg	-triton*)
1314706f2543Smrg		os=-sysv3
1315706f2543Smrg		;;
1316706f2543Smrg	-oss*)
1317706f2543Smrg		os=-sysv3
1318706f2543Smrg		;;
1319706f2543Smrg	-svr4)
1320706f2543Smrg		os=-sysv4
1321706f2543Smrg		;;
1322706f2543Smrg	-svr3)
1323706f2543Smrg		os=-sysv3
1324706f2543Smrg		;;
1325706f2543Smrg	-sysvr4)
1326706f2543Smrg		os=-sysv4
1327706f2543Smrg		;;
1328706f2543Smrg	# This must come after -sysvr4.
1329706f2543Smrg	-sysv*)
1330706f2543Smrg		;;
1331706f2543Smrg	-ose*)
1332706f2543Smrg		os=-ose
1333706f2543Smrg		;;
1334706f2543Smrg	-es1800*)
1335706f2543Smrg		os=-ose
1336706f2543Smrg		;;
1337706f2543Smrg	-xenix)
1338706f2543Smrg		os=-xenix
1339706f2543Smrg		;;
1340706f2543Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1341706f2543Smrg		os=-mint
1342706f2543Smrg		;;
1343706f2543Smrg	-aros*)
1344706f2543Smrg		os=-aros
1345706f2543Smrg		;;
1346706f2543Smrg	-kaos*)
1347706f2543Smrg		os=-kaos
1348706f2543Smrg		;;
1349706f2543Smrg	-zvmoe)
1350706f2543Smrg		os=-zvmoe
1351706f2543Smrg		;;
1352706f2543Smrg	-none)
1353706f2543Smrg		;;
1354706f2543Smrg	*)
1355706f2543Smrg		# Get rid of the `-' at the beginning of $os.
1356706f2543Smrg		os=`echo $os | sed 's/[^-]*-//'`
1357706f2543Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1358706f2543Smrg		exit 1
1359706f2543Smrg		;;
1360706f2543Smrgesac
1361706f2543Smrgelse
1362706f2543Smrg
1363706f2543Smrg# Here we handle the default operating systems that come with various machines.
1364706f2543Smrg# The value should be what the vendor currently ships out the door with their
1365706f2543Smrg# machine or put another way, the most popular os provided with the machine.
1366706f2543Smrg
1367706f2543Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
1368706f2543Smrg# "-sun"), then you have to tell the case statement up towards the top
1369706f2543Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
1370706f2543Smrg# will signal an error saying that MANUFACTURER isn't an operating
1371706f2543Smrg# system, and we'll never get to this point.
1372706f2543Smrg
1373706f2543Smrgcase $basic_machine in
1374706f2543Smrg        score-*)
1375706f2543Smrg		os=-elf
1376706f2543Smrg		;;
1377706f2543Smrg        spu-*)
1378706f2543Smrg		os=-elf
1379706f2543Smrg		;;
1380706f2543Smrg	*-acorn)
1381706f2543Smrg		os=-riscix1.2
1382706f2543Smrg		;;
1383706f2543Smrg	arm*-rebel)
1384706f2543Smrg		os=-linux
1385706f2543Smrg		;;
1386706f2543Smrg	arm*-semi)
1387706f2543Smrg		os=-aout
1388706f2543Smrg		;;
1389706f2543Smrg        c4x-* | tic4x-*)
1390706f2543Smrg        	os=-coff
1391706f2543Smrg		;;
1392706f2543Smrg	# This must come before the *-dec entry.
1393706f2543Smrg	pdp10-*)
1394706f2543Smrg		os=-tops20
1395706f2543Smrg		;;
1396706f2543Smrg	pdp11-*)
1397706f2543Smrg		os=-none
1398706f2543Smrg		;;
1399706f2543Smrg	*-dec | vax-*)
1400706f2543Smrg		os=-ultrix4.2
1401706f2543Smrg		;;
1402706f2543Smrg	m68*-apollo)
1403706f2543Smrg		os=-domain
1404706f2543Smrg		;;
1405706f2543Smrg	i386-sun)
1406706f2543Smrg		os=-sunos4.0.2
1407706f2543Smrg		;;
1408706f2543Smrg	m68000-sun)
1409706f2543Smrg		os=-sunos3
1410706f2543Smrg		# This also exists in the configure program, but was not the
1411706f2543Smrg		# default.
1412706f2543Smrg		# os=-sunos4
1413706f2543Smrg		;;
1414706f2543Smrg	m68*-cisco)
1415706f2543Smrg		os=-aout
1416706f2543Smrg		;;
1417706f2543Smrg	mips*-cisco)
1418706f2543Smrg		os=-elf
1419706f2543Smrg		;;
1420706f2543Smrg	mips*-*)
1421706f2543Smrg		os=-elf
1422706f2543Smrg		;;
1423706f2543Smrg	or32-*)
1424706f2543Smrg		os=-coff
1425706f2543Smrg		;;
1426706f2543Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
1427706f2543Smrg		os=-sysv3
1428706f2543Smrg		;;
1429706f2543Smrg	sparc-* | *-sun)
1430706f2543Smrg		os=-sunos4.1.1
1431706f2543Smrg		;;
1432706f2543Smrg	*-be)
1433706f2543Smrg		os=-beos
1434706f2543Smrg		;;
1435706f2543Smrg	*-haiku)
1436706f2543Smrg		os=-haiku
1437706f2543Smrg		;;
1438706f2543Smrg	*-ibm)
1439706f2543Smrg		os=-aix
1440706f2543Smrg		;;
1441706f2543Smrg    	*-knuth)
1442706f2543Smrg		os=-mmixware
1443706f2543Smrg		;;
1444706f2543Smrg	*-wec)
1445706f2543Smrg		os=-proelf
1446706f2543Smrg		;;
1447706f2543Smrg	*-winbond)
1448706f2543Smrg		os=-proelf
1449706f2543Smrg		;;
1450706f2543Smrg	*-oki)
1451706f2543Smrg		os=-proelf
1452706f2543Smrg		;;
1453706f2543Smrg	*-hp)
1454706f2543Smrg		os=-hpux
1455706f2543Smrg		;;
1456706f2543Smrg	*-hitachi)
1457706f2543Smrg		os=-hiux
1458706f2543Smrg		;;
1459706f2543Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1460706f2543Smrg		os=-sysv
1461706f2543Smrg		;;
1462706f2543Smrg	*-cbm)
1463706f2543Smrg		os=-amigaos
1464706f2543Smrg		;;
1465706f2543Smrg	*-dg)
1466706f2543Smrg		os=-dgux
1467706f2543Smrg		;;
1468706f2543Smrg	*-dolphin)
1469706f2543Smrg		os=-sysv3
1470706f2543Smrg		;;
1471706f2543Smrg	m68k-ccur)
1472706f2543Smrg		os=-rtu
1473706f2543Smrg		;;
1474706f2543Smrg	m88k-omron*)
1475706f2543Smrg		os=-luna
1476706f2543Smrg		;;
1477706f2543Smrg	*-next )
1478706f2543Smrg		os=-nextstep
1479706f2543Smrg		;;
1480706f2543Smrg	*-sequent)
1481706f2543Smrg		os=-ptx
1482706f2543Smrg		;;
1483706f2543Smrg	*-crds)
1484706f2543Smrg		os=-unos
1485706f2543Smrg		;;
1486706f2543Smrg	*-ns)
1487706f2543Smrg		os=-genix
1488706f2543Smrg		;;
1489706f2543Smrg	i370-*)
1490706f2543Smrg		os=-mvs
1491706f2543Smrg		;;
1492706f2543Smrg	*-next)
1493706f2543Smrg		os=-nextstep3
1494706f2543Smrg		;;
1495706f2543Smrg	*-gould)
1496706f2543Smrg		os=-sysv
1497706f2543Smrg		;;
1498706f2543Smrg	*-highlevel)
1499706f2543Smrg		os=-bsd
1500706f2543Smrg		;;
1501706f2543Smrg	*-encore)
1502706f2543Smrg		os=-bsd
1503706f2543Smrg		;;
1504706f2543Smrg	*-sgi)
1505706f2543Smrg		os=-irix
1506706f2543Smrg		;;
1507706f2543Smrg	*-siemens)
1508706f2543Smrg		os=-sysv4
1509706f2543Smrg		;;
1510706f2543Smrg	*-masscomp)
1511706f2543Smrg		os=-rtu
1512706f2543Smrg		;;
1513706f2543Smrg	f30[01]-fujitsu | f700-fujitsu)
1514706f2543Smrg		os=-uxpv
1515706f2543Smrg		;;
1516706f2543Smrg	*-rom68k)
1517706f2543Smrg		os=-coff
1518706f2543Smrg		;;
1519706f2543Smrg	*-*bug)
1520706f2543Smrg		os=-coff
1521706f2543Smrg		;;
1522706f2543Smrg	*-apple)
1523706f2543Smrg		os=-macos
1524706f2543Smrg		;;
1525706f2543Smrg	*-atari*)
1526706f2543Smrg		os=-mint
1527706f2543Smrg		;;
1528706f2543Smrg	*)
1529706f2543Smrg		os=-none
1530706f2543Smrg		;;
1531706f2543Smrgesac
1532706f2543Smrgfi
1533706f2543Smrg
1534706f2543Smrg# Here we handle the case where we know the os, and the CPU type, but not the
1535706f2543Smrg# manufacturer.  We pick the logical manufacturer.
1536706f2543Smrgvendor=unknown
1537706f2543Smrgcase $basic_machine in
1538706f2543Smrg	*-unknown)
1539706f2543Smrg		case $os in
1540706f2543Smrg			-riscix*)
1541706f2543Smrg				vendor=acorn
1542706f2543Smrg				;;
1543706f2543Smrg			-sunos*)
1544706f2543Smrg				vendor=sun
1545706f2543Smrg				;;
1546706f2543Smrg			-aix*)
1547706f2543Smrg				vendor=ibm
1548706f2543Smrg				;;
1549706f2543Smrg			-beos*)
1550706f2543Smrg				vendor=be
1551706f2543Smrg				;;
1552706f2543Smrg			-hpux*)
1553706f2543Smrg				vendor=hp
1554706f2543Smrg				;;
1555706f2543Smrg			-mpeix*)
1556706f2543Smrg				vendor=hp
1557706f2543Smrg				;;
1558706f2543Smrg			-hiux*)
1559706f2543Smrg				vendor=hitachi
1560706f2543Smrg				;;
1561706f2543Smrg			-unos*)
1562706f2543Smrg				vendor=crds
1563706f2543Smrg				;;
1564706f2543Smrg			-dgux*)
1565706f2543Smrg				vendor=dg
1566706f2543Smrg				;;
1567706f2543Smrg			-luna*)
1568706f2543Smrg				vendor=omron
1569706f2543Smrg				;;
1570706f2543Smrg			-genix*)
1571706f2543Smrg				vendor=ns
1572706f2543Smrg				;;
1573706f2543Smrg			-mvs* | -opened*)
1574706f2543Smrg				vendor=ibm
1575706f2543Smrg				;;
1576706f2543Smrg			-os400*)
1577706f2543Smrg				vendor=ibm
1578706f2543Smrg				;;
1579706f2543Smrg			-ptx*)
1580706f2543Smrg				vendor=sequent
1581706f2543Smrg				;;
1582706f2543Smrg			-tpf*)
1583706f2543Smrg				vendor=ibm
1584706f2543Smrg				;;
1585706f2543Smrg			-vxsim* | -vxworks* | -windiss*)
1586706f2543Smrg				vendor=wrs
1587706f2543Smrg				;;
1588706f2543Smrg			-aux*)
1589706f2543Smrg				vendor=apple
1590706f2543Smrg				;;
1591706f2543Smrg			-hms*)
1592706f2543Smrg				vendor=hitachi
1593706f2543Smrg				;;
1594706f2543Smrg			-mpw* | -macos*)
1595706f2543Smrg				vendor=apple
1596706f2543Smrg				;;
1597706f2543Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1598706f2543Smrg				vendor=atari
1599706f2543Smrg				;;
1600706f2543Smrg			-vos*)
1601706f2543Smrg				vendor=stratus
1602706f2543Smrg				;;
1603706f2543Smrg		esac
1604706f2543Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1605706f2543Smrg		;;
1606706f2543Smrgesac
1607706f2543Smrg
1608706f2543Smrgecho $basic_machine$os
1609706f2543Smrgexit
1610706f2543Smrg
1611706f2543Smrg# Local variables:
1612706f2543Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1613706f2543Smrg# time-stamp-start: "timestamp='"
1614706f2543Smrg# time-stamp-format: "%:y-%02m-%02d"
1615706f2543Smrg# time-stamp-end: "'"
1616706f2543Smrg# End:
1617