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