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