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