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