config.sub revision cacd992d
1cacd992dSmrg#! /bin/sh
2cacd992dSmrg# Configuration validation subroutine script.
3cacd992dSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4cacd992dSmrg#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
5cacd992dSmrg
6cacd992dSmrgtimestamp='2003-06-18'
7cacd992dSmrg
8cacd992dSmrg# This file is (in principle) common to ALL GNU software.
9cacd992dSmrg# The presence of a machine in this file suggests that SOME GNU software
10cacd992dSmrg# can handle that machine.  It does not imply ALL GNU software can.
11cacd992dSmrg#
12cacd992dSmrg# This file is free software; you can redistribute it and/or modify
13cacd992dSmrg# it under the terms of the GNU General Public License as published by
14cacd992dSmrg# the Free Software Foundation; either version 2 of the License, or
15cacd992dSmrg# (at your option) any later version.
16cacd992dSmrg#
17cacd992dSmrg# This program is distributed in the hope that it will be useful,
18cacd992dSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
19cacd992dSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20cacd992dSmrg# GNU General Public License for more details.
21cacd992dSmrg#
22cacd992dSmrg# You should have received a copy of the GNU General Public License
23cacd992dSmrg# along with this program; if not, write to the Free Software
24cacd992dSmrg# Foundation, Inc., 59 Temple Place - Suite 330,
25cacd992dSmrg# Boston, MA 02111-1307, USA.
26cacd992dSmrg
27cacd992dSmrg# As a special exception to the GNU General Public License, if you
28cacd992dSmrg# distribute this file as part of a program that contains a
29cacd992dSmrg# configuration script generated by Autoconf, you may include it under
30cacd992dSmrg# the same distribution terms that you use for the rest of that program.
31cacd992dSmrg
32cacd992dSmrg# Please send patches to <config-patches@gnu.org>.  Submit a context
33cacd992dSmrg# diff and a properly formatted ChangeLog entry.
34cacd992dSmrg#
35cacd992dSmrg# Configuration subroutine to validate and canonicalize a configuration type.
36cacd992dSmrg# Supply the specified configuration type as an argument.
37cacd992dSmrg# If it is invalid, we print an error message on stderr and exit with code 1.
38cacd992dSmrg# Otherwise, we print the canonical config type on stdout and succeed.
39cacd992dSmrg
40cacd992dSmrg# This file is supposed to be the same for all GNU packages
41cacd992dSmrg# and recognize all the CPU types, system types and aliases
42cacd992dSmrg# that are meaningful with *any* GNU software.
43cacd992dSmrg# Each package is responsible for reporting which valid configurations
44cacd992dSmrg# it does not support.  The user should be able to distinguish
45cacd992dSmrg# a failure to support a valid configuration from a meaningless
46cacd992dSmrg# configuration.
47cacd992dSmrg
48cacd992dSmrg# The goal of this file is to map all the various variations of a given
49cacd992dSmrg# machine specification into a single specification in the form:
50cacd992dSmrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
51cacd992dSmrg# or in some cases, the newer four-part form:
52cacd992dSmrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
53cacd992dSmrg# It is wrong to echo any other type of specification.
54cacd992dSmrg
55cacd992dSmrgme=`echo "$0" | sed -e 's,.*/,,'`
56cacd992dSmrg
57cacd992dSmrgusage="\
58cacd992dSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
59cacd992dSmrg       $0 [OPTION] ALIAS
60cacd992dSmrg
61cacd992dSmrgCanonicalize a configuration name.
62cacd992dSmrg
63cacd992dSmrgOperation modes:
64cacd992dSmrg  -h, --help         print this help, then exit
65cacd992dSmrg  -t, --time-stamp   print date of last modification, then exit
66cacd992dSmrg  -v, --version      print version number, then exit
67cacd992dSmrg
68cacd992dSmrgReport bugs and patches to <config-patches@gnu.org>."
69cacd992dSmrg
70cacd992dSmrgversion="\
71cacd992dSmrgGNU config.sub ($timestamp)
72cacd992dSmrg
73cacd992dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
74cacd992dSmrgFree Software Foundation, Inc.
75cacd992dSmrg
76cacd992dSmrgThis is free software; see the source for copying conditions.  There is NO
77cacd992dSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
78cacd992dSmrg
79cacd992dSmrghelp="
80cacd992dSmrgTry \`$me --help' for more information."
81cacd992dSmrg
82cacd992dSmrg# Parse command line
83cacd992dSmrgwhile test $# -gt 0 ; do
84cacd992dSmrg  case $1 in
85cacd992dSmrg    --time-stamp | --time* | -t )
86cacd992dSmrg       echo "$timestamp" ; exit 0 ;;
87cacd992dSmrg    --version | -v )
88cacd992dSmrg       echo "$version" ; exit 0 ;;
89cacd992dSmrg    --help | --h* | -h )
90cacd992dSmrg       echo "$usage"; exit 0 ;;
91cacd992dSmrg    -- )     # Stop option processing
92cacd992dSmrg       shift; break ;;
93cacd992dSmrg    - )	# Use stdin as input.
94cacd992dSmrg       break ;;
95cacd992dSmrg    -* )
96cacd992dSmrg       echo "$me: invalid option $1$help"
97cacd992dSmrg       exit 1 ;;
98cacd992dSmrg
99cacd992dSmrg    *local*)
100cacd992dSmrg       # First pass through any local machine types.
101cacd992dSmrg       echo $1
102cacd992dSmrg       exit 0;;
103cacd992dSmrg
104cacd992dSmrg    * )
105cacd992dSmrg       break ;;
106cacd992dSmrg  esac
107cacd992dSmrgdone
108cacd992dSmrg
109cacd992dSmrgcase $# in
110cacd992dSmrg 0) echo "$me: missing argument$help" >&2
111cacd992dSmrg    exit 1;;
112cacd992dSmrg 1) ;;
113cacd992dSmrg *) echo "$me: too many arguments$help" >&2
114cacd992dSmrg    exit 1;;
115cacd992dSmrgesac
116cacd992dSmrg
117cacd992dSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
118cacd992dSmrg# Here we must recognize all the valid KERNEL-OS combinations.
119cacd992dSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
120cacd992dSmrgcase $maybe_os in
121cacd992dSmrg  nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
122cacd992dSmrg    os=-$maybe_os
123cacd992dSmrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
124cacd992dSmrg    ;;
125cacd992dSmrg  *)
126cacd992dSmrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
127cacd992dSmrg    if [ $basic_machine != $1 ]
128cacd992dSmrg    then os=`echo $1 | sed 's/.*-/-/'`
129cacd992dSmrg    else os=; fi
130cacd992dSmrg    ;;
131cacd992dSmrgesac
132cacd992dSmrg
133cacd992dSmrg### Let's recognize common machines as not being operating systems so
134cacd992dSmrg### that things like config.sub decstation-3100 work.  We also
135cacd992dSmrg### recognize some manufacturers as not being operating systems, so we
136cacd992dSmrg### can provide default operating systems below.
137cacd992dSmrgcase $os in
138cacd992dSmrg	-sun*os*)
139cacd992dSmrg		# Prevent following clause from handling this invalid input.
140cacd992dSmrg		;;
141cacd992dSmrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
142cacd992dSmrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
143cacd992dSmrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
144cacd992dSmrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
145cacd992dSmrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
146cacd992dSmrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
147cacd992dSmrg	-apple | -axis)
148cacd992dSmrg		os=
149cacd992dSmrg		basic_machine=$1
150cacd992dSmrg		;;
151cacd992dSmrg	-sim | -cisco | -oki | -wec | -winbond)
152cacd992dSmrg		os=
153cacd992dSmrg		basic_machine=$1
154cacd992dSmrg		;;
155cacd992dSmrg	-scout)
156cacd992dSmrg		;;
157cacd992dSmrg	-wrs)
158cacd992dSmrg		os=-vxworks
159cacd992dSmrg		basic_machine=$1
160cacd992dSmrg		;;
161cacd992dSmrg	-chorusos*)
162cacd992dSmrg		os=-chorusos
163cacd992dSmrg		basic_machine=$1
164cacd992dSmrg		;;
165cacd992dSmrg 	-chorusrdb)
166cacd992dSmrg 		os=-chorusrdb
167cacd992dSmrg		basic_machine=$1
168cacd992dSmrg 		;;
169cacd992dSmrg	-hiux*)
170cacd992dSmrg		os=-hiuxwe2
171cacd992dSmrg		;;
172cacd992dSmrg	-sco5)
173cacd992dSmrg		os=-sco3.2v5
174cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
175cacd992dSmrg		;;
176cacd992dSmrg	-sco4)
177cacd992dSmrg		os=-sco3.2v4
178cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
179cacd992dSmrg		;;
180cacd992dSmrg	-sco3.2.[4-9]*)
181cacd992dSmrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
182cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183cacd992dSmrg		;;
184cacd992dSmrg	-sco3.2v[4-9]*)
185cacd992dSmrg		# Don't forget version if it is 3.2v4 or newer.
186cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187cacd992dSmrg		;;
188cacd992dSmrg	-sco*)
189cacd992dSmrg		os=-sco3.2v2
190cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191cacd992dSmrg		;;
192cacd992dSmrg	-udk*)
193cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194cacd992dSmrg		;;
195cacd992dSmrg	-isc)
196cacd992dSmrg		os=-isc2.2
197cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198cacd992dSmrg		;;
199cacd992dSmrg	-clix*)
200cacd992dSmrg		basic_machine=clipper-intergraph
201cacd992dSmrg		;;
202cacd992dSmrg	-isc*)
203cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
204cacd992dSmrg		;;
205cacd992dSmrg	-lynx*)
206cacd992dSmrg		os=-lynxos
207cacd992dSmrg		;;
208cacd992dSmrg	-ptx*)
209cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
210cacd992dSmrg		;;
211cacd992dSmrg	-windowsnt*)
212cacd992dSmrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
213cacd992dSmrg		;;
214cacd992dSmrg	-psos*)
215cacd992dSmrg		os=-psos
216cacd992dSmrg		;;
217cacd992dSmrg	-mint | -mint[0-9]*)
218cacd992dSmrg		basic_machine=m68k-atari
219cacd992dSmrg		os=-mint
220cacd992dSmrg		;;
221cacd992dSmrgesac
222cacd992dSmrg
223cacd992dSmrg# Decode aliases for certain CPU-COMPANY combinations.
224cacd992dSmrgcase $basic_machine in
225cacd992dSmrg	# Recognize the basic CPU types without company name.
226cacd992dSmrg	# Some are omitted here because they have special meanings below.
227cacd992dSmrg	1750a | 580 \
228cacd992dSmrg	| a29k \
229cacd992dSmrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
230cacd992dSmrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
231cacd992dSmrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
232cacd992dSmrg	| c4x | clipper \
233cacd992dSmrg	| d10v | d30v | dlx | dsp16xx \
234cacd992dSmrg	| fr30 | frv \
235cacd992dSmrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
236cacd992dSmrg	| i370 | i860 | i960 | ia64 \
237cacd992dSmrg	| ip2k \
238cacd992dSmrg	| m32r | m68000 | m68k | m88k | mcore \
239cacd992dSmrg	| mips | mipsbe | mipseb | mipsel | mipsle \
240cacd992dSmrg	| mips16 \
241cacd992dSmrg	| mips64 | mips64el \
242cacd992dSmrg	| mips64vr | mips64vrel \
243cacd992dSmrg	| mips64orion | mips64orionel \
244cacd992dSmrg	| mips64vr4100 | mips64vr4100el \
245cacd992dSmrg	| mips64vr4300 | mips64vr4300el \
246cacd992dSmrg	| mips64vr5000 | mips64vr5000el \
247cacd992dSmrg	| mipsisa32 | mipsisa32el \
248cacd992dSmrg	| mipsisa32r2 | mipsisa32r2el \
249cacd992dSmrg	| mipsisa64 | mipsisa64el \
250cacd992dSmrg	| mipsisa64sb1 | mipsisa64sb1el \
251cacd992dSmrg	| mipsisa64sr71k | mipsisa64sr71kel \
252cacd992dSmrg	| mipstx39 | mipstx39el \
253cacd992dSmrg	| mn10200 | mn10300 \
254cacd992dSmrg	| msp430 \
255cacd992dSmrg	| ns16k | ns32k \
256cacd992dSmrg	| openrisc | or32 \
257cacd992dSmrg	| pdp10 | pdp11 | pj | pjl \
258cacd992dSmrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
259cacd992dSmrg	| pyramid \
260cacd992dSmrg	| s390 | s390x \
261cacd992dSmrg	| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
262cacd992dSmrg	| sh64 | sh64le \
263cacd992dSmrg	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
264cacd992dSmrg	| strongarm \
265cacd992dSmrg	| tahoe | thumb | tic4x | tic80 | tron \
266cacd992dSmrg	| v850 | v850e \
267cacd992dSmrg	| we32k \
268cacd992dSmrg	| x86 | xscale | xstormy16 | xtensa \
269cacd992dSmrg	| z8k)
270cacd992dSmrg		basic_machine=$basic_machine-unknown
271cacd992dSmrg		;;
272cacd992dSmrg	m6811 | m68hc11 | m6812 | m68hc12)
273cacd992dSmrg		# Motorola 68HC11/12.
274cacd992dSmrg		basic_machine=$basic_machine-unknown
275cacd992dSmrg		os=-none
276cacd992dSmrg		;;
277cacd992dSmrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
278cacd992dSmrg		;;
279cacd992dSmrg
280cacd992dSmrg	# We use `pc' rather than `unknown'
281cacd992dSmrg	# because (1) that's what they normally are, and
282cacd992dSmrg	# (2) the word "unknown" tends to confuse beginning users.
283cacd992dSmrg	i*86 | x86_64)
284cacd992dSmrg	  basic_machine=$basic_machine-pc
285cacd992dSmrg	  ;;
286cacd992dSmrg	# Object if more than one company name word.
287cacd992dSmrg	*-*-*)
288cacd992dSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
289cacd992dSmrg		exit 1
290cacd992dSmrg		;;
291cacd992dSmrg	# Recognize the basic CPU types with company name.
292cacd992dSmrg	580-* \
293cacd992dSmrg	| a29k-* \
294cacd992dSmrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
295cacd992dSmrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
296cacd992dSmrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
297cacd992dSmrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
298cacd992dSmrg	| avr-* \
299cacd992dSmrg	| bs2000-* \
300cacd992dSmrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
301cacd992dSmrg	| clipper-* | cydra-* \
302cacd992dSmrg	| d10v-* | d30v-* | dlx-* \
303cacd992dSmrg	| elxsi-* \
304cacd992dSmrg	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
305cacd992dSmrg	| h8300-* | h8500-* \
306cacd992dSmrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
307cacd992dSmrg	| i*86-* | i860-* | i960-* | ia64-* \
308cacd992dSmrg	| ip2k-* \
309cacd992dSmrg	| m32r-* \
310cacd992dSmrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
311cacd992dSmrg	| m88110-* | m88k-* | mcore-* \
312cacd992dSmrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
313cacd992dSmrg	| mips16-* \
314cacd992dSmrg	| mips64-* | mips64el-* \
315cacd992dSmrg	| mips64vr-* | mips64vrel-* \
316cacd992dSmrg	| mips64orion-* | mips64orionel-* \
317cacd992dSmrg	| mips64vr4100-* | mips64vr4100el-* \
318cacd992dSmrg	| mips64vr4300-* | mips64vr4300el-* \
319cacd992dSmrg	| mips64vr5000-* | mips64vr5000el-* \
320cacd992dSmrg	| mipsisa32-* | mipsisa32el-* \
321cacd992dSmrg	| mipsisa32r2-* | mipsisa32r2el-* \
322cacd992dSmrg	| mipsisa64-* | mipsisa64el-* \
323cacd992dSmrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
324cacd992dSmrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
325cacd992dSmrg	| mipstx39-* | mipstx39el-* \
326cacd992dSmrg	| msp430-* \
327cacd992dSmrg	| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
328cacd992dSmrg	| orion-* \
329cacd992dSmrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
330cacd992dSmrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
331cacd992dSmrg	| pyramid-* \
332cacd992dSmrg	| romp-* | rs6000-* \
333cacd992dSmrg	| s390-* | s390x-* \
334cacd992dSmrg	| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
335cacd992dSmrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
336cacd992dSmrg	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
337cacd992dSmrg	| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
338cacd992dSmrg	| tahoe-* | thumb-* \
339cacd992dSmrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
340cacd992dSmrg	| tron-* \
341cacd992dSmrg	| v850-* | v850e-* | vax-* \
342cacd992dSmrg	| we32k-* \
343cacd992dSmrg	| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
344cacd992dSmrg	| xtensa-* \
345cacd992dSmrg	| ymp-* \
346cacd992dSmrg	| z8k-*)
347cacd992dSmrg		;;
348cacd992dSmrg	# Recognize the various machine names and aliases which stand
349cacd992dSmrg	# for a CPU type and a company and sometimes even an OS.
350cacd992dSmrg	386bsd)
351cacd992dSmrg		basic_machine=i386-unknown
352cacd992dSmrg		os=-bsd
353cacd992dSmrg		;;
354cacd992dSmrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
355cacd992dSmrg		basic_machine=m68000-att
356cacd992dSmrg		;;
357cacd992dSmrg	3b*)
358cacd992dSmrg		basic_machine=we32k-att
359cacd992dSmrg		;;
360cacd992dSmrg	a29khif)
361cacd992dSmrg		basic_machine=a29k-amd
362cacd992dSmrg		os=-udi
363cacd992dSmrg		;;
364cacd992dSmrg	adobe68k)
365cacd992dSmrg		basic_machine=m68010-adobe
366cacd992dSmrg		os=-scout
367cacd992dSmrg		;;
368cacd992dSmrg	alliant | fx80)
369cacd992dSmrg		basic_machine=fx80-alliant
370cacd992dSmrg		;;
371cacd992dSmrg	altos | altos3068)
372cacd992dSmrg		basic_machine=m68k-altos
373cacd992dSmrg		;;
374cacd992dSmrg	am29k)
375cacd992dSmrg		basic_machine=a29k-none
376cacd992dSmrg		os=-bsd
377cacd992dSmrg		;;
378cacd992dSmrg	amd64)
379cacd992dSmrg		basic_machine=x86_64-pc
380cacd992dSmrg		;;
381cacd992dSmrg	amdahl)
382cacd992dSmrg		basic_machine=580-amdahl
383cacd992dSmrg		os=-sysv
384cacd992dSmrg		;;
385cacd992dSmrg	amiga | amiga-*)
386cacd992dSmrg		basic_machine=m68k-unknown
387cacd992dSmrg		;;
388cacd992dSmrg	amigaos | amigados)
389cacd992dSmrg		basic_machine=m68k-unknown
390cacd992dSmrg		os=-amigaos
391cacd992dSmrg		;;
392cacd992dSmrg	amigaunix | amix)
393cacd992dSmrg		basic_machine=m68k-unknown
394cacd992dSmrg		os=-sysv4
395cacd992dSmrg		;;
396cacd992dSmrg	apollo68)
397cacd992dSmrg		basic_machine=m68k-apollo
398cacd992dSmrg		os=-sysv
399cacd992dSmrg		;;
400cacd992dSmrg	apollo68bsd)
401cacd992dSmrg		basic_machine=m68k-apollo
402cacd992dSmrg		os=-bsd
403cacd992dSmrg		;;
404cacd992dSmrg	aux)
405cacd992dSmrg		basic_machine=m68k-apple
406cacd992dSmrg		os=-aux
407cacd992dSmrg		;;
408cacd992dSmrg	balance)
409cacd992dSmrg		basic_machine=ns32k-sequent
410cacd992dSmrg		os=-dynix
411cacd992dSmrg		;;
412cacd992dSmrg	c90)
413cacd992dSmrg		basic_machine=c90-cray
414cacd992dSmrg		os=-unicos
415cacd992dSmrg		;;
416cacd992dSmrg	convex-c1)
417cacd992dSmrg		basic_machine=c1-convex
418cacd992dSmrg		os=-bsd
419cacd992dSmrg		;;
420cacd992dSmrg	convex-c2)
421cacd992dSmrg		basic_machine=c2-convex
422cacd992dSmrg		os=-bsd
423cacd992dSmrg		;;
424cacd992dSmrg	convex-c32)
425cacd992dSmrg		basic_machine=c32-convex
426cacd992dSmrg		os=-bsd
427cacd992dSmrg		;;
428cacd992dSmrg	convex-c34)
429cacd992dSmrg		basic_machine=c34-convex
430cacd992dSmrg		os=-bsd
431cacd992dSmrg		;;
432cacd992dSmrg	convex-c38)
433cacd992dSmrg		basic_machine=c38-convex
434cacd992dSmrg		os=-bsd
435cacd992dSmrg		;;
436cacd992dSmrg	cray | j90)
437cacd992dSmrg		basic_machine=j90-cray
438cacd992dSmrg		os=-unicos
439cacd992dSmrg		;;
440cacd992dSmrg	crds | unos)
441cacd992dSmrg		basic_machine=m68k-crds
442cacd992dSmrg		;;
443cacd992dSmrg	cris | cris-* | etrax*)
444cacd992dSmrg		basic_machine=cris-axis
445cacd992dSmrg		;;
446cacd992dSmrg	da30 | da30-*)
447cacd992dSmrg		basic_machine=m68k-da30
448cacd992dSmrg		;;
449cacd992dSmrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
450cacd992dSmrg		basic_machine=mips-dec
451cacd992dSmrg		;;
452cacd992dSmrg	decsystem10* | dec10*)
453cacd992dSmrg		basic_machine=pdp10-dec
454cacd992dSmrg		os=-tops10
455cacd992dSmrg		;;
456cacd992dSmrg	decsystem20* | dec20*)
457cacd992dSmrg		basic_machine=pdp10-dec
458cacd992dSmrg		os=-tops20
459cacd992dSmrg		;;
460cacd992dSmrg	delta | 3300 | motorola-3300 | motorola-delta \
461cacd992dSmrg	      | 3300-motorola | delta-motorola)
462cacd992dSmrg		basic_machine=m68k-motorola
463cacd992dSmrg		;;
464cacd992dSmrg	delta88)
465cacd992dSmrg		basic_machine=m88k-motorola
466cacd992dSmrg		os=-sysv3
467cacd992dSmrg		;;
468cacd992dSmrg	dpx20 | dpx20-*)
469cacd992dSmrg		basic_machine=rs6000-bull
470cacd992dSmrg		os=-bosx
471cacd992dSmrg		;;
472cacd992dSmrg	dpx2* | dpx2*-bull)
473cacd992dSmrg		basic_machine=m68k-bull
474cacd992dSmrg		os=-sysv3
475cacd992dSmrg		;;
476cacd992dSmrg	ebmon29k)
477cacd992dSmrg		basic_machine=a29k-amd
478cacd992dSmrg		os=-ebmon
479cacd992dSmrg		;;
480cacd992dSmrg	elxsi)
481cacd992dSmrg		basic_machine=elxsi-elxsi
482cacd992dSmrg		os=-bsd
483cacd992dSmrg		;;
484cacd992dSmrg	encore | umax | mmax)
485cacd992dSmrg		basic_machine=ns32k-encore
486cacd992dSmrg		;;
487cacd992dSmrg	es1800 | OSE68k | ose68k | ose | OSE)
488cacd992dSmrg		basic_machine=m68k-ericsson
489cacd992dSmrg		os=-ose
490cacd992dSmrg		;;
491cacd992dSmrg	fx2800)
492cacd992dSmrg		basic_machine=i860-alliant
493cacd992dSmrg		;;
494cacd992dSmrg	genix)
495cacd992dSmrg		basic_machine=ns32k-ns
496cacd992dSmrg		;;
497cacd992dSmrg	gmicro)
498cacd992dSmrg		basic_machine=tron-gmicro
499cacd992dSmrg		os=-sysv
500cacd992dSmrg		;;
501cacd992dSmrg	go32)
502cacd992dSmrg		basic_machine=i386-pc
503cacd992dSmrg		os=-go32
504cacd992dSmrg		;;
505cacd992dSmrg	h3050r* | hiux*)
506cacd992dSmrg		basic_machine=hppa1.1-hitachi
507cacd992dSmrg		os=-hiuxwe2
508cacd992dSmrg		;;
509cacd992dSmrg	h8300hms)
510cacd992dSmrg		basic_machine=h8300-hitachi
511cacd992dSmrg		os=-hms
512cacd992dSmrg		;;
513cacd992dSmrg	h8300xray)
514cacd992dSmrg		basic_machine=h8300-hitachi
515cacd992dSmrg		os=-xray
516cacd992dSmrg		;;
517cacd992dSmrg	h8500hms)
518cacd992dSmrg		basic_machine=h8500-hitachi
519cacd992dSmrg		os=-hms
520cacd992dSmrg		;;
521cacd992dSmrg	harris)
522cacd992dSmrg		basic_machine=m88k-harris
523cacd992dSmrg		os=-sysv3
524cacd992dSmrg		;;
525cacd992dSmrg	hp300-*)
526cacd992dSmrg		basic_machine=m68k-hp
527cacd992dSmrg		;;
528cacd992dSmrg	hp300bsd)
529cacd992dSmrg		basic_machine=m68k-hp
530cacd992dSmrg		os=-bsd
531cacd992dSmrg		;;
532cacd992dSmrg	hp300hpux)
533cacd992dSmrg		basic_machine=m68k-hp
534cacd992dSmrg		os=-hpux
535cacd992dSmrg		;;
536cacd992dSmrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
537cacd992dSmrg		basic_machine=hppa1.0-hp
538cacd992dSmrg		;;
539cacd992dSmrg	hp9k2[0-9][0-9] | hp9k31[0-9])
540cacd992dSmrg		basic_machine=m68000-hp
541cacd992dSmrg		;;
542cacd992dSmrg	hp9k3[2-9][0-9])
543cacd992dSmrg		basic_machine=m68k-hp
544cacd992dSmrg		;;
545cacd992dSmrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
546cacd992dSmrg		basic_machine=hppa1.0-hp
547cacd992dSmrg		;;
548cacd992dSmrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
549cacd992dSmrg		basic_machine=hppa1.1-hp
550cacd992dSmrg		;;
551cacd992dSmrg	hp9k78[0-9] | hp78[0-9])
552cacd992dSmrg		# FIXME: really hppa2.0-hp
553cacd992dSmrg		basic_machine=hppa1.1-hp
554cacd992dSmrg		;;
555cacd992dSmrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
556cacd992dSmrg		# FIXME: really hppa2.0-hp
557cacd992dSmrg		basic_machine=hppa1.1-hp
558cacd992dSmrg		;;
559cacd992dSmrg	hp9k8[0-9][13679] | hp8[0-9][13679])
560cacd992dSmrg		basic_machine=hppa1.1-hp
561cacd992dSmrg		;;
562cacd992dSmrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
563cacd992dSmrg		basic_machine=hppa1.0-hp
564cacd992dSmrg		;;
565cacd992dSmrg	hppa-next)
566cacd992dSmrg		os=-nextstep3
567cacd992dSmrg		;;
568cacd992dSmrg	hppaosf)
569cacd992dSmrg		basic_machine=hppa1.1-hp
570cacd992dSmrg		os=-osf
571cacd992dSmrg		;;
572cacd992dSmrg	hppro)
573cacd992dSmrg		basic_machine=hppa1.1-hp
574cacd992dSmrg		os=-proelf
575cacd992dSmrg		;;
576cacd992dSmrg	i370-ibm* | ibm*)
577cacd992dSmrg		basic_machine=i370-ibm
578cacd992dSmrg		;;
579cacd992dSmrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
580cacd992dSmrg	i*86v32)
581cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
582cacd992dSmrg		os=-sysv32
583cacd992dSmrg		;;
584cacd992dSmrg	i*86v4*)
585cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
586cacd992dSmrg		os=-sysv4
587cacd992dSmrg		;;
588cacd992dSmrg	i*86v)
589cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
590cacd992dSmrg		os=-sysv
591cacd992dSmrg		;;
592cacd992dSmrg	i*86sol2)
593cacd992dSmrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
594cacd992dSmrg		os=-solaris2
595cacd992dSmrg		;;
596cacd992dSmrg	i386mach)
597cacd992dSmrg		basic_machine=i386-mach
598cacd992dSmrg		os=-mach
599cacd992dSmrg		;;
600cacd992dSmrg	i386-vsta | vsta)
601cacd992dSmrg		basic_machine=i386-unknown
602cacd992dSmrg		os=-vsta
603cacd992dSmrg		;;
604cacd992dSmrg	iris | iris4d)
605cacd992dSmrg		basic_machine=mips-sgi
606cacd992dSmrg		case $os in
607cacd992dSmrg		    -irix*)
608cacd992dSmrg			;;
609cacd992dSmrg		    *)
610cacd992dSmrg			os=-irix4
611cacd992dSmrg			;;
612cacd992dSmrg		esac
613cacd992dSmrg		;;
614cacd992dSmrg	isi68 | isi)
615cacd992dSmrg		basic_machine=m68k-isi
616cacd992dSmrg		os=-sysv
617cacd992dSmrg		;;
618cacd992dSmrg	m88k-omron*)
619cacd992dSmrg		basic_machine=m88k-omron
620cacd992dSmrg		;;
621cacd992dSmrg	magnum | m3230)
622cacd992dSmrg		basic_machine=mips-mips
623cacd992dSmrg		os=-sysv
624cacd992dSmrg		;;
625cacd992dSmrg	merlin)
626cacd992dSmrg		basic_machine=ns32k-utek
627cacd992dSmrg		os=-sysv
628cacd992dSmrg		;;
629cacd992dSmrg	mingw32)
630cacd992dSmrg		basic_machine=i386-pc
631cacd992dSmrg		os=-mingw32
632cacd992dSmrg		;;
633cacd992dSmrg	miniframe)
634cacd992dSmrg		basic_machine=m68000-convergent
635cacd992dSmrg		;;
636cacd992dSmrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
637cacd992dSmrg		basic_machine=m68k-atari
638cacd992dSmrg		os=-mint
639cacd992dSmrg		;;
640cacd992dSmrg	mips3*-*)
641cacd992dSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
642cacd992dSmrg		;;
643cacd992dSmrg	mips3*)
644cacd992dSmrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
645cacd992dSmrg		;;
646cacd992dSmrg	mmix*)
647cacd992dSmrg		basic_machine=mmix-knuth
648cacd992dSmrg		os=-mmixware
649cacd992dSmrg		;;
650cacd992dSmrg	monitor)
651cacd992dSmrg		basic_machine=m68k-rom68k
652cacd992dSmrg		os=-coff
653cacd992dSmrg		;;
654cacd992dSmrg	morphos)
655cacd992dSmrg		basic_machine=powerpc-unknown
656cacd992dSmrg		os=-morphos
657cacd992dSmrg		;;
658cacd992dSmrg	msdos)
659cacd992dSmrg		basic_machine=i386-pc
660cacd992dSmrg		os=-msdos
661cacd992dSmrg		;;
662cacd992dSmrg	mvs)
663cacd992dSmrg		basic_machine=i370-ibm
664cacd992dSmrg		os=-mvs
665cacd992dSmrg		;;
666cacd992dSmrg	ncr3000)
667cacd992dSmrg		basic_machine=i486-ncr
668cacd992dSmrg		os=-sysv4
669cacd992dSmrg		;;
670cacd992dSmrg	netbsd386)
671cacd992dSmrg		basic_machine=i386-unknown
672cacd992dSmrg		os=-netbsd
673cacd992dSmrg		;;
674cacd992dSmrg	netwinder)
675cacd992dSmrg		basic_machine=armv4l-rebel
676cacd992dSmrg		os=-linux
677cacd992dSmrg		;;
678cacd992dSmrg	news | news700 | news800 | news900)
679cacd992dSmrg		basic_machine=m68k-sony
680cacd992dSmrg		os=-newsos
681cacd992dSmrg		;;
682cacd992dSmrg	news1000)
683cacd992dSmrg		basic_machine=m68030-sony
684cacd992dSmrg		os=-newsos
685cacd992dSmrg		;;
686cacd992dSmrg	news-3600 | risc-news)
687cacd992dSmrg		basic_machine=mips-sony
688cacd992dSmrg		os=-newsos
689cacd992dSmrg		;;
690cacd992dSmrg	necv70)
691cacd992dSmrg		basic_machine=v70-nec
692cacd992dSmrg		os=-sysv
693cacd992dSmrg		;;
694cacd992dSmrg	next | m*-next )
695cacd992dSmrg		basic_machine=m68k-next
696cacd992dSmrg		case $os in
697cacd992dSmrg		    -nextstep* )
698cacd992dSmrg			;;
699cacd992dSmrg		    -ns2*)
700cacd992dSmrg		      os=-nextstep2
701cacd992dSmrg			;;
702cacd992dSmrg		    *)
703cacd992dSmrg		      os=-nextstep3
704cacd992dSmrg			;;
705cacd992dSmrg		esac
706cacd992dSmrg		;;
707cacd992dSmrg	nh3000)
708cacd992dSmrg		basic_machine=m68k-harris
709cacd992dSmrg		os=-cxux
710cacd992dSmrg		;;
711cacd992dSmrg	nh[45]000)
712cacd992dSmrg		basic_machine=m88k-harris
713cacd992dSmrg		os=-cxux
714cacd992dSmrg		;;
715cacd992dSmrg	nindy960)
716cacd992dSmrg		basic_machine=i960-intel
717cacd992dSmrg		os=-nindy
718cacd992dSmrg		;;
719cacd992dSmrg	mon960)
720cacd992dSmrg		basic_machine=i960-intel
721cacd992dSmrg		os=-mon960
722cacd992dSmrg		;;
723cacd992dSmrg	nonstopux)
724cacd992dSmrg		basic_machine=mips-compaq
725cacd992dSmrg		os=-nonstopux
726cacd992dSmrg		;;
727cacd992dSmrg	np1)
728cacd992dSmrg		basic_machine=np1-gould
729cacd992dSmrg		;;
730cacd992dSmrg	nv1)
731cacd992dSmrg		basic_machine=nv1-cray
732cacd992dSmrg		os=-unicosmp
733cacd992dSmrg		;;
734cacd992dSmrg	nsr-tandem)
735cacd992dSmrg		basic_machine=nsr-tandem
736cacd992dSmrg		;;
737cacd992dSmrg	op50n-* | op60c-*)
738cacd992dSmrg		basic_machine=hppa1.1-oki
739cacd992dSmrg		os=-proelf
740cacd992dSmrg		;;
741cacd992dSmrg	or32 | or32-*)
742cacd992dSmrg		basic_machine=or32-unknown
743cacd992dSmrg		os=-coff
744cacd992dSmrg		;;
745cacd992dSmrg	OSE68000 | ose68000)
746cacd992dSmrg		basic_machine=m68000-ericsson
747cacd992dSmrg		os=-ose
748cacd992dSmrg		;;
749cacd992dSmrg	os68k)
750cacd992dSmrg		basic_machine=m68k-none
751cacd992dSmrg		os=-os68k
752cacd992dSmrg		;;
753cacd992dSmrg	pa-hitachi)
754cacd992dSmrg		basic_machine=hppa1.1-hitachi
755cacd992dSmrg		os=-hiuxwe2
756cacd992dSmrg		;;
757cacd992dSmrg	paragon)
758cacd992dSmrg		basic_machine=i860-intel
759cacd992dSmrg		os=-osf
760cacd992dSmrg		;;
761cacd992dSmrg	pbd)
762cacd992dSmrg		basic_machine=sparc-tti
763cacd992dSmrg		;;
764cacd992dSmrg	pbb)
765cacd992dSmrg		basic_machine=m68k-tti
766cacd992dSmrg		;;
767cacd992dSmrg	pc532 | pc532-*)
768cacd992dSmrg		basic_machine=ns32k-pc532
769cacd992dSmrg		;;
770cacd992dSmrg	pentium | p5 | k5 | k6 | nexgen | viac3)
771cacd992dSmrg		basic_machine=i586-pc
772cacd992dSmrg		;;
773cacd992dSmrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
774cacd992dSmrg		basic_machine=i686-pc
775cacd992dSmrg		;;
776cacd992dSmrg	pentiumii | pentium2 | pentiumiii | pentium3)
777cacd992dSmrg		basic_machine=i686-pc
778cacd992dSmrg		;;
779cacd992dSmrg	pentium4)
780cacd992dSmrg		basic_machine=i786-pc
781cacd992dSmrg		;;
782cacd992dSmrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
783cacd992dSmrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
784cacd992dSmrg		;;
785cacd992dSmrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
786cacd992dSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
787cacd992dSmrg		;;
788cacd992dSmrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
789cacd992dSmrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
790cacd992dSmrg		;;
791cacd992dSmrg	pentium4-*)
792cacd992dSmrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
793cacd992dSmrg		;;
794cacd992dSmrg	pn)
795cacd992dSmrg		basic_machine=pn-gould
796cacd992dSmrg		;;
797cacd992dSmrg	power)	basic_machine=power-ibm
798cacd992dSmrg		;;
799cacd992dSmrg	ppc)	basic_machine=powerpc-unknown
800cacd992dSmrg		;;
801cacd992dSmrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
802cacd992dSmrg		;;
803cacd992dSmrg	ppcle | powerpclittle | ppc-le | powerpc-little)
804cacd992dSmrg		basic_machine=powerpcle-unknown
805cacd992dSmrg		;;
806cacd992dSmrg	ppcle-* | powerpclittle-*)
807cacd992dSmrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
808cacd992dSmrg		;;
809cacd992dSmrg	ppc64)	basic_machine=powerpc64-unknown
810cacd992dSmrg		;;
811cacd992dSmrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
812cacd992dSmrg		;;
813cacd992dSmrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
814cacd992dSmrg		basic_machine=powerpc64le-unknown
815cacd992dSmrg		;;
816cacd992dSmrg	ppc64le-* | powerpc64little-*)
817cacd992dSmrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
818cacd992dSmrg		;;
819cacd992dSmrg	ps2)
820cacd992dSmrg		basic_machine=i386-ibm
821cacd992dSmrg		;;
822cacd992dSmrg	pw32)
823cacd992dSmrg		basic_machine=i586-unknown
824cacd992dSmrg		os=-pw32
825cacd992dSmrg		;;
826cacd992dSmrg	rom68k)
827cacd992dSmrg		basic_machine=m68k-rom68k
828cacd992dSmrg		os=-coff
829cacd992dSmrg		;;
830cacd992dSmrg	rm[46]00)
831cacd992dSmrg		basic_machine=mips-siemens
832cacd992dSmrg		;;
833cacd992dSmrg	rtpc | rtpc-*)
834cacd992dSmrg		basic_machine=romp-ibm
835cacd992dSmrg		;;
836cacd992dSmrg	sa29200)
837cacd992dSmrg		basic_machine=a29k-amd
838cacd992dSmrg		os=-udi
839cacd992dSmrg		;;
840cacd992dSmrg	sb1)
841cacd992dSmrg		basic_machine=mipsisa64sb1-unknown
842cacd992dSmrg		;;
843cacd992dSmrg	sb1el)
844cacd992dSmrg		basic_machine=mipsisa64sb1el-unknown
845cacd992dSmrg		;;
846cacd992dSmrg	sei)
847cacd992dSmrg		basic_machine=mips-sei
848cacd992dSmrg		os=-seiux
849cacd992dSmrg		;;
850cacd992dSmrg	sequent)
851cacd992dSmrg		basic_machine=i386-sequent
852cacd992dSmrg		;;
853cacd992dSmrg	sh)
854cacd992dSmrg		basic_machine=sh-hitachi
855cacd992dSmrg		os=-hms
856cacd992dSmrg		;;
857cacd992dSmrg	sh64)
858cacd992dSmrg		basic_machine=sh64-unknown
859cacd992dSmrg		;;
860cacd992dSmrg	sparclite-wrs | simso-wrs)
861cacd992dSmrg		basic_machine=sparclite-wrs
862cacd992dSmrg		os=-vxworks
863cacd992dSmrg		;;
864cacd992dSmrg	sps7)
865cacd992dSmrg		basic_machine=m68k-bull
866cacd992dSmrg		os=-sysv2
867cacd992dSmrg		;;
868cacd992dSmrg	spur)
869cacd992dSmrg		basic_machine=spur-unknown
870cacd992dSmrg		;;
871cacd992dSmrg	st2000)
872cacd992dSmrg		basic_machine=m68k-tandem
873cacd992dSmrg		;;
874cacd992dSmrg	stratus)
875cacd992dSmrg		basic_machine=i860-stratus
876cacd992dSmrg		os=-sysv4
877cacd992dSmrg		;;
878cacd992dSmrg	sun2)
879cacd992dSmrg		basic_machine=m68000-sun
880cacd992dSmrg		;;
881cacd992dSmrg	sun2os3)
882cacd992dSmrg		basic_machine=m68000-sun
883cacd992dSmrg		os=-sunos3
884cacd992dSmrg		;;
885cacd992dSmrg	sun2os4)
886cacd992dSmrg		basic_machine=m68000-sun
887cacd992dSmrg		os=-sunos4
888cacd992dSmrg		;;
889cacd992dSmrg	sun3os3)
890cacd992dSmrg		basic_machine=m68k-sun
891cacd992dSmrg		os=-sunos3
892cacd992dSmrg		;;
893cacd992dSmrg	sun3os4)
894cacd992dSmrg		basic_machine=m68k-sun
895cacd992dSmrg		os=-sunos4
896cacd992dSmrg		;;
897cacd992dSmrg	sun4os3)
898cacd992dSmrg		basic_machine=sparc-sun
899cacd992dSmrg		os=-sunos3
900cacd992dSmrg		;;
901cacd992dSmrg	sun4os4)
902cacd992dSmrg		basic_machine=sparc-sun
903cacd992dSmrg		os=-sunos4
904cacd992dSmrg		;;
905cacd992dSmrg	sun4sol2)
906cacd992dSmrg		basic_machine=sparc-sun
907cacd992dSmrg		os=-solaris2
908cacd992dSmrg		;;
909cacd992dSmrg	sun3 | sun3-*)
910cacd992dSmrg		basic_machine=m68k-sun
911cacd992dSmrg		;;
912cacd992dSmrg	sun4)
913cacd992dSmrg		basic_machine=sparc-sun
914cacd992dSmrg		;;
915cacd992dSmrg	sun386 | sun386i | roadrunner)
916cacd992dSmrg		basic_machine=i386-sun
917cacd992dSmrg		;;
918cacd992dSmrg	sv1)
919cacd992dSmrg		basic_machine=sv1-cray
920cacd992dSmrg		os=-unicos
921cacd992dSmrg		;;
922cacd992dSmrg	symmetry)
923cacd992dSmrg		basic_machine=i386-sequent
924cacd992dSmrg		os=-dynix
925cacd992dSmrg		;;
926cacd992dSmrg	t3e)
927cacd992dSmrg		basic_machine=alphaev5-cray
928cacd992dSmrg		os=-unicos
929cacd992dSmrg		;;
930cacd992dSmrg	t90)
931cacd992dSmrg		basic_machine=t90-cray
932cacd992dSmrg		os=-unicos
933cacd992dSmrg		;;
934cacd992dSmrg	tic54x | c54x*)
935cacd992dSmrg		basic_machine=tic54x-unknown
936cacd992dSmrg		os=-coff
937cacd992dSmrg		;;
938cacd992dSmrg	tic55x | c55x*)
939cacd992dSmrg		basic_machine=tic55x-unknown
940cacd992dSmrg		os=-coff
941cacd992dSmrg		;;
942cacd992dSmrg	tic6x | c6x*)
943cacd992dSmrg		basic_machine=tic6x-unknown
944cacd992dSmrg		os=-coff
945cacd992dSmrg		;;
946cacd992dSmrg	tx39)
947cacd992dSmrg		basic_machine=mipstx39-unknown
948cacd992dSmrg		;;
949cacd992dSmrg	tx39el)
950cacd992dSmrg		basic_machine=mipstx39el-unknown
951cacd992dSmrg		;;
952cacd992dSmrg	toad1)
953cacd992dSmrg		basic_machine=pdp10-xkl
954cacd992dSmrg		os=-tops20
955cacd992dSmrg		;;
956cacd992dSmrg	tower | tower-32)
957cacd992dSmrg		basic_machine=m68k-ncr
958cacd992dSmrg		;;
959cacd992dSmrg	udi29k)
960cacd992dSmrg		basic_machine=a29k-amd
961cacd992dSmrg		os=-udi
962cacd992dSmrg		;;
963cacd992dSmrg	ultra3)
964cacd992dSmrg		basic_machine=a29k-nyu
965cacd992dSmrg		os=-sym1
966cacd992dSmrg		;;
967cacd992dSmrg	v810 | necv810)
968cacd992dSmrg		basic_machine=v810-nec
969cacd992dSmrg		os=-none
970cacd992dSmrg		;;
971cacd992dSmrg	vaxv)
972cacd992dSmrg		basic_machine=vax-dec
973cacd992dSmrg		os=-sysv
974cacd992dSmrg		;;
975cacd992dSmrg	vms)
976cacd992dSmrg		basic_machine=vax-dec
977cacd992dSmrg		os=-vms
978cacd992dSmrg		;;
979cacd992dSmrg	vpp*|vx|vx-*)
980cacd992dSmrg		basic_machine=f301-fujitsu
981cacd992dSmrg		;;
982cacd992dSmrg	vxworks960)
983cacd992dSmrg		basic_machine=i960-wrs
984cacd992dSmrg		os=-vxworks
985cacd992dSmrg		;;
986cacd992dSmrg	vxworks68)
987cacd992dSmrg		basic_machine=m68k-wrs
988cacd992dSmrg		os=-vxworks
989cacd992dSmrg		;;
990cacd992dSmrg	vxworks29k)
991cacd992dSmrg		basic_machine=a29k-wrs
992cacd992dSmrg		os=-vxworks
993cacd992dSmrg		;;
994cacd992dSmrg	w65*)
995cacd992dSmrg		basic_machine=w65-wdc
996cacd992dSmrg		os=-none
997cacd992dSmrg		;;
998cacd992dSmrg	w89k-*)
999cacd992dSmrg		basic_machine=hppa1.1-winbond
1000cacd992dSmrg		os=-proelf
1001cacd992dSmrg		;;
1002cacd992dSmrg	xps | xps100)
1003cacd992dSmrg		basic_machine=xps100-honeywell
1004cacd992dSmrg		;;
1005cacd992dSmrg	ymp)
1006cacd992dSmrg		basic_machine=ymp-cray
1007cacd992dSmrg		os=-unicos
1008cacd992dSmrg		;;
1009cacd992dSmrg	z8k-*-coff)
1010cacd992dSmrg		basic_machine=z8k-unknown
1011cacd992dSmrg		os=-sim
1012cacd992dSmrg		;;
1013cacd992dSmrg	none)
1014cacd992dSmrg		basic_machine=none-none
1015cacd992dSmrg		os=-none
1016cacd992dSmrg		;;
1017cacd992dSmrg
1018cacd992dSmrg# Here we handle the default manufacturer of certain CPU types.  It is in
1019cacd992dSmrg# some cases the only manufacturer, in others, it is the most popular.
1020cacd992dSmrg	w89k)
1021cacd992dSmrg		basic_machine=hppa1.1-winbond
1022cacd992dSmrg		;;
1023cacd992dSmrg	op50n)
1024cacd992dSmrg		basic_machine=hppa1.1-oki
1025cacd992dSmrg		;;
1026cacd992dSmrg	op60c)
1027cacd992dSmrg		basic_machine=hppa1.1-oki
1028cacd992dSmrg		;;
1029cacd992dSmrg	romp)
1030cacd992dSmrg		basic_machine=romp-ibm
1031cacd992dSmrg		;;
1032cacd992dSmrg	rs6000)
1033cacd992dSmrg		basic_machine=rs6000-ibm
1034cacd992dSmrg		;;
1035cacd992dSmrg	vax)
1036cacd992dSmrg		basic_machine=vax-dec
1037cacd992dSmrg		;;
1038cacd992dSmrg	pdp10)
1039cacd992dSmrg		# there are many clones, so DEC is not a safe bet
1040cacd992dSmrg		basic_machine=pdp10-unknown
1041cacd992dSmrg		;;
1042cacd992dSmrg	pdp11)
1043cacd992dSmrg		basic_machine=pdp11-dec
1044cacd992dSmrg		;;
1045cacd992dSmrg	we32k)
1046cacd992dSmrg		basic_machine=we32k-att
1047cacd992dSmrg		;;
1048cacd992dSmrg	sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
1049cacd992dSmrg		basic_machine=sh-unknown
1050cacd992dSmrg		;;
1051cacd992dSmrg	sh64)
1052cacd992dSmrg		basic_machine=sh64-unknown
1053cacd992dSmrg		;;
1054cacd992dSmrg	sparc | sparcv9 | sparcv9b)
1055cacd992dSmrg		basic_machine=sparc-sun
1056cacd992dSmrg		;;
1057cacd992dSmrg	cydra)
1058cacd992dSmrg		basic_machine=cydra-cydrome
1059cacd992dSmrg		;;
1060cacd992dSmrg	orion)
1061cacd992dSmrg		basic_machine=orion-highlevel
1062cacd992dSmrg		;;
1063cacd992dSmrg	orion105)
1064cacd992dSmrg		basic_machine=clipper-highlevel
1065cacd992dSmrg		;;
1066cacd992dSmrg	mac | mpw | mac-mpw)
1067cacd992dSmrg		basic_machine=m68k-apple
1068cacd992dSmrg		;;
1069cacd992dSmrg	pmac | pmac-mpw)
1070cacd992dSmrg		basic_machine=powerpc-apple
1071cacd992dSmrg		;;
1072cacd992dSmrg	*-unknown)
1073cacd992dSmrg		# Make sure to match an already-canonicalized machine name.
1074cacd992dSmrg		;;
1075cacd992dSmrg	*)
1076cacd992dSmrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1077cacd992dSmrg		exit 1
1078cacd992dSmrg		;;
1079cacd992dSmrgesac
1080cacd992dSmrg
1081cacd992dSmrg# Here we canonicalize certain aliases for manufacturers.
1082cacd992dSmrgcase $basic_machine in
1083cacd992dSmrg	*-digital*)
1084cacd992dSmrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1085cacd992dSmrg		;;
1086cacd992dSmrg	*-commodore*)
1087cacd992dSmrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1088cacd992dSmrg		;;
1089cacd992dSmrg	*)
1090cacd992dSmrg		;;
1091cacd992dSmrgesac
1092cacd992dSmrg
1093cacd992dSmrg# Decode manufacturer-specific aliases for certain operating systems.
1094cacd992dSmrg
1095cacd992dSmrgif [ x"$os" != x"" ]
1096cacd992dSmrgthen
1097cacd992dSmrgcase $os in
1098cacd992dSmrg        # First match some system type aliases
1099cacd992dSmrg        # that might get confused with valid system types.
1100cacd992dSmrg	# -solaris* is a basic system type, with this one exception.
1101cacd992dSmrg	-solaris1 | -solaris1.*)
1102cacd992dSmrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
1103cacd992dSmrg		;;
1104cacd992dSmrg	-solaris)
1105cacd992dSmrg		os=-solaris2
1106cacd992dSmrg		;;
1107cacd992dSmrg	-svr4*)
1108cacd992dSmrg		os=-sysv4
1109cacd992dSmrg		;;
1110cacd992dSmrg	-unixware*)
1111cacd992dSmrg		os=-sysv4.2uw
1112cacd992dSmrg		;;
1113cacd992dSmrg	-gnu/linux*)
1114cacd992dSmrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1115cacd992dSmrg		;;
1116cacd992dSmrg	# First accept the basic system types.
1117cacd992dSmrg	# The portable systems comes first.
1118cacd992dSmrg	# Each alternative MUST END IN A *, to match a version number.
1119cacd992dSmrg	# -sysv* is not here because it comes later, after sysvr4.
1120cacd992dSmrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1121cacd992dSmrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1122cacd992dSmrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1123cacd992dSmrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1124cacd992dSmrg	      | -aos* \
1125cacd992dSmrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1126cacd992dSmrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1127cacd992dSmrg	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
1128cacd992dSmrg	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1129cacd992dSmrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1130cacd992dSmrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1131cacd992dSmrg	      | -chorusos* | -chorusrdb* \
1132cacd992dSmrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1133cacd992dSmrg	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
1134cacd992dSmrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1135cacd992dSmrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1136cacd992dSmrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1137cacd992dSmrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1138cacd992dSmrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1139cacd992dSmrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
1140cacd992dSmrg	# Remember, each alternative MUST END IN *, to match a version number.
1141cacd992dSmrg		;;
1142cacd992dSmrg	-qnx*)
1143cacd992dSmrg		case $basic_machine in
1144cacd992dSmrg		    x86-* | i*86-*)
1145cacd992dSmrg			;;
1146cacd992dSmrg		    *)
1147cacd992dSmrg			os=-nto$os
1148cacd992dSmrg			;;
1149cacd992dSmrg		esac
1150cacd992dSmrg		;;
1151cacd992dSmrg	-nto-qnx*)
1152cacd992dSmrg		;;
1153cacd992dSmrg	-nto*)
1154cacd992dSmrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
1155cacd992dSmrg		;;
1156cacd992dSmrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1157cacd992dSmrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
1158cacd992dSmrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1159cacd992dSmrg		;;
1160cacd992dSmrg	-mac*)
1161cacd992dSmrg		os=`echo $os | sed -e 's|mac|macos|'`
1162cacd992dSmrg		;;
1163cacd992dSmrg	-linux*)
1164cacd992dSmrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
1165cacd992dSmrg		;;
1166cacd992dSmrg	-sunos5*)
1167cacd992dSmrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
1168cacd992dSmrg		;;
1169cacd992dSmrg	-sunos6*)
1170cacd992dSmrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
1171cacd992dSmrg		;;
1172cacd992dSmrg	-opened*)
1173cacd992dSmrg		os=-openedition
1174cacd992dSmrg		;;
1175cacd992dSmrg	-wince*)
1176cacd992dSmrg		os=-wince
1177cacd992dSmrg		;;
1178cacd992dSmrg	-osfrose*)
1179cacd992dSmrg		os=-osfrose
1180cacd992dSmrg		;;
1181cacd992dSmrg	-osf*)
1182cacd992dSmrg		os=-osf
1183cacd992dSmrg		;;
1184cacd992dSmrg	-utek*)
1185cacd992dSmrg		os=-bsd
1186cacd992dSmrg		;;
1187cacd992dSmrg	-dynix*)
1188cacd992dSmrg		os=-bsd
1189cacd992dSmrg		;;
1190cacd992dSmrg	-acis*)
1191cacd992dSmrg		os=-aos
1192cacd992dSmrg		;;
1193cacd992dSmrg	-atheos*)
1194cacd992dSmrg		os=-atheos
1195cacd992dSmrg		;;
1196cacd992dSmrg	-386bsd)
1197cacd992dSmrg		os=-bsd
1198cacd992dSmrg		;;
1199cacd992dSmrg	-ctix* | -uts*)
1200cacd992dSmrg		os=-sysv
1201cacd992dSmrg		;;
1202cacd992dSmrg	-nova*)
1203cacd992dSmrg		os=-rtmk-nova
1204cacd992dSmrg		;;
1205cacd992dSmrg	-ns2 )
1206cacd992dSmrg		os=-nextstep2
1207cacd992dSmrg		;;
1208cacd992dSmrg	-nsk*)
1209cacd992dSmrg		os=-nsk
1210cacd992dSmrg		;;
1211cacd992dSmrg	# Preserve the version number of sinix5.
1212cacd992dSmrg	-sinix5.*)
1213cacd992dSmrg		os=`echo $os | sed -e 's|sinix|sysv|'`
1214cacd992dSmrg		;;
1215cacd992dSmrg	-sinix*)
1216cacd992dSmrg		os=-sysv4
1217cacd992dSmrg		;;
1218cacd992dSmrg	-triton*)
1219cacd992dSmrg		os=-sysv3
1220cacd992dSmrg		;;
1221cacd992dSmrg	-oss*)
1222cacd992dSmrg		os=-sysv3
1223cacd992dSmrg		;;
1224cacd992dSmrg	-svr4)
1225cacd992dSmrg		os=-sysv4
1226cacd992dSmrg		;;
1227cacd992dSmrg	-svr3)
1228cacd992dSmrg		os=-sysv3
1229cacd992dSmrg		;;
1230cacd992dSmrg	-sysvr4)
1231cacd992dSmrg		os=-sysv4
1232cacd992dSmrg		;;
1233cacd992dSmrg	# This must come after -sysvr4.
1234cacd992dSmrg	-sysv*)
1235cacd992dSmrg		;;
1236cacd992dSmrg	-ose*)
1237cacd992dSmrg		os=-ose
1238cacd992dSmrg		;;
1239cacd992dSmrg	-es1800*)
1240cacd992dSmrg		os=-ose
1241cacd992dSmrg		;;
1242cacd992dSmrg	-xenix)
1243cacd992dSmrg		os=-xenix
1244cacd992dSmrg		;;
1245cacd992dSmrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1246cacd992dSmrg		os=-mint
1247cacd992dSmrg		;;
1248cacd992dSmrg	-aros*)
1249cacd992dSmrg		os=-aros
1250cacd992dSmrg		;;
1251cacd992dSmrg	-kaos*)
1252cacd992dSmrg		os=-kaos
1253cacd992dSmrg		;;
1254cacd992dSmrg	-none)
1255cacd992dSmrg		;;
1256cacd992dSmrg	*)
1257cacd992dSmrg		# Get rid of the `-' at the beginning of $os.
1258cacd992dSmrg		os=`echo $os | sed 's/[^-]*-//'`
1259cacd992dSmrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1260cacd992dSmrg		exit 1
1261cacd992dSmrg		;;
1262cacd992dSmrgesac
1263cacd992dSmrgelse
1264cacd992dSmrg
1265cacd992dSmrg# Here we handle the default operating systems that come with various machines.
1266cacd992dSmrg# The value should be what the vendor currently ships out the door with their
1267cacd992dSmrg# machine or put another way, the most popular os provided with the machine.
1268cacd992dSmrg
1269cacd992dSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
1270cacd992dSmrg# "-sun"), then you have to tell the case statement up towards the top
1271cacd992dSmrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
1272cacd992dSmrg# will signal an error saying that MANUFACTURER isn't an operating
1273cacd992dSmrg# system, and we'll never get to this point.
1274cacd992dSmrg
1275cacd992dSmrgcase $basic_machine in
1276cacd992dSmrg	*-acorn)
1277cacd992dSmrg		os=-riscix1.2
1278cacd992dSmrg		;;
1279cacd992dSmrg	arm*-rebel)
1280cacd992dSmrg		os=-linux
1281cacd992dSmrg		;;
1282cacd992dSmrg	arm*-semi)
1283cacd992dSmrg		os=-aout
1284cacd992dSmrg		;;
1285cacd992dSmrg	c4x-* | tic4x-*)
1286cacd992dSmrg		os=-coff
1287cacd992dSmrg		;;
1288cacd992dSmrg	# This must come before the *-dec entry.
1289cacd992dSmrg	pdp10-*)
1290cacd992dSmrg		os=-tops20
1291cacd992dSmrg		;;
1292cacd992dSmrg	pdp11-*)
1293cacd992dSmrg		os=-none
1294cacd992dSmrg		;;
1295cacd992dSmrg	*-dec | vax-*)
1296cacd992dSmrg		os=-ultrix4.2
1297cacd992dSmrg		;;
1298cacd992dSmrg	m68*-apollo)
1299cacd992dSmrg		os=-domain
1300cacd992dSmrg		;;
1301cacd992dSmrg	i386-sun)
1302cacd992dSmrg		os=-sunos4.0.2
1303cacd992dSmrg		;;
1304cacd992dSmrg	m68000-sun)
1305cacd992dSmrg		os=-sunos3
1306cacd992dSmrg		# This also exists in the configure program, but was not the
1307cacd992dSmrg		# default.
1308cacd992dSmrg		# os=-sunos4
1309cacd992dSmrg		;;
1310cacd992dSmrg	m68*-cisco)
1311cacd992dSmrg		os=-aout
1312cacd992dSmrg		;;
1313cacd992dSmrg	mips*-cisco)
1314cacd992dSmrg		os=-elf
1315cacd992dSmrg		;;
1316cacd992dSmrg	mips*-*)
1317cacd992dSmrg		os=-elf
1318cacd992dSmrg		;;
1319cacd992dSmrg	or32-*)
1320cacd992dSmrg		os=-coff
1321cacd992dSmrg		;;
1322cacd992dSmrg	*-tti)	# must be before sparc entry or we get the wrong os.
1323cacd992dSmrg		os=-sysv3
1324cacd992dSmrg		;;
1325cacd992dSmrg	sparc-* | *-sun)
1326cacd992dSmrg		os=-sunos4.1.1
1327cacd992dSmrg		;;
1328cacd992dSmrg	*-be)
1329cacd992dSmrg		os=-beos
1330cacd992dSmrg		;;
1331cacd992dSmrg	*-ibm)
1332cacd992dSmrg		os=-aix
1333cacd992dSmrg		;;
1334cacd992dSmrg	*-wec)
1335cacd992dSmrg		os=-proelf
1336cacd992dSmrg		;;
1337cacd992dSmrg	*-winbond)
1338cacd992dSmrg		os=-proelf
1339cacd992dSmrg		;;
1340cacd992dSmrg	*-oki)
1341cacd992dSmrg		os=-proelf
1342cacd992dSmrg		;;
1343cacd992dSmrg	*-hp)
1344cacd992dSmrg		os=-hpux
1345cacd992dSmrg		;;
1346cacd992dSmrg	*-hitachi)
1347cacd992dSmrg		os=-hiux
1348cacd992dSmrg		;;
1349cacd992dSmrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1350cacd992dSmrg		os=-sysv
1351cacd992dSmrg		;;
1352cacd992dSmrg	*-cbm)
1353cacd992dSmrg		os=-amigaos
1354cacd992dSmrg		;;
1355cacd992dSmrg	*-dg)
1356cacd992dSmrg		os=-dgux
1357cacd992dSmrg		;;
1358cacd992dSmrg	*-dolphin)
1359cacd992dSmrg		os=-sysv3
1360cacd992dSmrg		;;
1361cacd992dSmrg	m68k-ccur)
1362cacd992dSmrg		os=-rtu
1363cacd992dSmrg		;;
1364cacd992dSmrg	m88k-omron*)
1365cacd992dSmrg		os=-luna
1366cacd992dSmrg		;;
1367cacd992dSmrg	*-next )
1368cacd992dSmrg		os=-nextstep
1369cacd992dSmrg		;;
1370cacd992dSmrg	*-sequent)
1371cacd992dSmrg		os=-ptx
1372cacd992dSmrg		;;
1373cacd992dSmrg	*-crds)
1374cacd992dSmrg		os=-unos
1375cacd992dSmrg		;;
1376cacd992dSmrg	*-ns)
1377cacd992dSmrg		os=-genix
1378cacd992dSmrg		;;
1379cacd992dSmrg	i370-*)
1380cacd992dSmrg		os=-mvs
1381cacd992dSmrg		;;
1382cacd992dSmrg	*-next)
1383cacd992dSmrg		os=-nextstep3
1384cacd992dSmrg		;;
1385cacd992dSmrg	*-gould)
1386cacd992dSmrg		os=-sysv
1387cacd992dSmrg		;;
1388cacd992dSmrg	*-highlevel)
1389cacd992dSmrg		os=-bsd
1390cacd992dSmrg		;;
1391cacd992dSmrg	*-encore)
1392cacd992dSmrg		os=-bsd
1393cacd992dSmrg		;;
1394cacd992dSmrg	*-sgi)
1395cacd992dSmrg		os=-irix
1396cacd992dSmrg		;;
1397cacd992dSmrg	*-siemens)
1398cacd992dSmrg		os=-sysv4
1399cacd992dSmrg		;;
1400cacd992dSmrg	*-masscomp)
1401cacd992dSmrg		os=-rtu
1402cacd992dSmrg		;;
1403cacd992dSmrg	f30[01]-fujitsu | f700-fujitsu)
1404cacd992dSmrg		os=-uxpv
1405cacd992dSmrg		;;
1406cacd992dSmrg	*-rom68k)
1407cacd992dSmrg		os=-coff
1408cacd992dSmrg		;;
1409cacd992dSmrg	*-*bug)
1410cacd992dSmrg		os=-coff
1411cacd992dSmrg		;;
1412cacd992dSmrg	*-apple)
1413cacd992dSmrg		os=-macos
1414cacd992dSmrg		;;
1415cacd992dSmrg	*-atari*)
1416cacd992dSmrg		os=-mint
1417cacd992dSmrg		;;
1418cacd992dSmrg	*)
1419cacd992dSmrg		os=-none
1420cacd992dSmrg		;;
1421cacd992dSmrgesac
1422cacd992dSmrgfi
1423cacd992dSmrg
1424cacd992dSmrg# Here we handle the case where we know the os, and the CPU type, but not the
1425cacd992dSmrg# manufacturer.  We pick the logical manufacturer.
1426cacd992dSmrgvendor=unknown
1427cacd992dSmrgcase $basic_machine in
1428cacd992dSmrg	*-unknown)
1429cacd992dSmrg		case $os in
1430cacd992dSmrg			-riscix*)
1431cacd992dSmrg				vendor=acorn
1432cacd992dSmrg				;;
1433cacd992dSmrg			-sunos*)
1434cacd992dSmrg				vendor=sun
1435cacd992dSmrg				;;
1436cacd992dSmrg			-aix*)
1437cacd992dSmrg				vendor=ibm
1438cacd992dSmrg				;;
1439cacd992dSmrg			-beos*)
1440cacd992dSmrg				vendor=be
1441cacd992dSmrg				;;
1442cacd992dSmrg			-hpux*)
1443cacd992dSmrg				vendor=hp
1444cacd992dSmrg				;;
1445cacd992dSmrg			-mpeix*)
1446cacd992dSmrg				vendor=hp
1447cacd992dSmrg				;;
1448cacd992dSmrg			-hiux*)
1449cacd992dSmrg				vendor=hitachi
1450cacd992dSmrg				;;
1451cacd992dSmrg			-unos*)
1452cacd992dSmrg				vendor=crds
1453cacd992dSmrg				;;
1454cacd992dSmrg			-dgux*)
1455cacd992dSmrg				vendor=dg
1456cacd992dSmrg				;;
1457cacd992dSmrg			-luna*)
1458cacd992dSmrg				vendor=omron
1459cacd992dSmrg				;;
1460cacd992dSmrg			-genix*)
1461cacd992dSmrg				vendor=ns
1462cacd992dSmrg				;;
1463cacd992dSmrg			-mvs* | -opened*)
1464cacd992dSmrg				vendor=ibm
1465cacd992dSmrg				;;
1466cacd992dSmrg			-ptx*)
1467cacd992dSmrg				vendor=sequent
1468cacd992dSmrg				;;
1469cacd992dSmrg			-vxsim* | -vxworks* | -windiss*)
1470cacd992dSmrg				vendor=wrs
1471cacd992dSmrg				;;
1472cacd992dSmrg			-aux*)
1473cacd992dSmrg				vendor=apple
1474cacd992dSmrg				;;
1475cacd992dSmrg			-hms*)
1476cacd992dSmrg				vendor=hitachi
1477cacd992dSmrg				;;
1478cacd992dSmrg			-mpw* | -macos*)
1479cacd992dSmrg				vendor=apple
1480cacd992dSmrg				;;
1481cacd992dSmrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1482cacd992dSmrg				vendor=atari
1483cacd992dSmrg				;;
1484cacd992dSmrg			-vos*)
1485cacd992dSmrg				vendor=stratus
1486cacd992dSmrg				;;
1487cacd992dSmrg		esac
1488cacd992dSmrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1489cacd992dSmrg		;;
1490cacd992dSmrgesac
1491cacd992dSmrg
1492cacd992dSmrgecho $basic_machine$os
1493cacd992dSmrgexit 0
1494cacd992dSmrg
1495cacd992dSmrg# Local variables:
1496cacd992dSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1497cacd992dSmrg# time-stamp-start: "timestamp='"
1498cacd992dSmrg# time-stamp-format: "%:y-%02m-%02d"
1499cacd992dSmrg# time-stamp-end: "'"
1500cacd992dSmrg# End:
1501