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