* config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP16
[deliverable/binutils-gdb.git] / config.sub
... / ...
CommitLineData
1#! /bin/sh
2# Configuration validation subroutine script, version 1.1.
3# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
4# This file is (in principle) common to ALL GNU software.
5# The presence of a machine in this file suggests that SOME GNU software
6# can handle that machine. It does not imply ALL GNU software can.
7#
8# This file is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation; either version 2 of the License, or
11# (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; if not, write to the Free Software
20# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
22# As a special exception to the GNU General Public License, if you
23# distribute this file as part of a program that contains a
24# configuration script generated by Autoconf, you may include it under
25# the same distribution terms that you use for the rest of that program.
26
27# Configuration subroutine to validate and canonicalize a configuration type.
28# Supply the specified configuration type as an argument.
29# If it is invalid, we print an error message on stderr and exit with code 1.
30# Otherwise, we print the canonical config type on stdout and succeed.
31
32# This file is supposed to be the same for all GNU packages
33# and recognize all the CPU types, system types and aliases
34# that are meaningful with *any* GNU software.
35# Each package is responsible for reporting which valid configurations
36# it does not support. The user should be able to distinguish
37# a failure to support a valid configuration from a meaningless
38# configuration.
39
40# The goal of this file is to map all the various variations of a given
41# machine specification into a single specification in the form:
42# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
43# It is wrong to echo any other type of specification.
44
45if [ x$1 = x ]
46then
47 echo Configuration name missing. 1>&2
48 echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
49 echo "or $0 ALIAS" 1>&2
50 echo where ALIAS is a recognized configuration type. 1>&2
51 exit 1
52fi
53
54# First pass through any local machine types.
55case $1 in
56 *local*)
57 echo $1
58 exit 0
59 ;;
60 *)
61 ;;
62esac
63
64# Separate what the user gave into CPU-COMPANY and OS (if any).
65basic_machine=`echo $1 | sed 's/-[^-]*$//'`
66if [ $basic_machine != $1 ]
67then os=`echo $1 | sed 's/.*-/-/'`
68else os=; fi
69
70### Let's recognize common machines as not being operating systems so
71### that things like config.sub decstation-3100 work. We also
72### recognize some manufacturers as not being operating systems, so we
73### can provide default operating systems below.
74case $os in
75 -sun*os*)
76 # Prevent following clause from handling this invalid input.
77 ;;
78 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
79 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
80 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
81 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
82 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
83 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp )
84 os=
85 basic_machine=$1
86 ;;
87 -sim | -cisco | -oki | -wec | -winbond ) # CYGNUS LOCAL
88 os=
89 basic_machine=$1
90 ;;
91## start-sanitize-mpw
92 -apple*)
93 os=
94 basic_machine=$1
95 ;;
96## end-sanitize-mpw
97 -scout) # CYGNUS LOCAL
98 ;;
99 -wrs) # CYGNUS LOCAL
100 os=vxworks
101 basic_machine=$1
102 ;;
103 -hiux*)
104 os=-hiuxwe2
105 ;;
106 -sco4)
107 os=-sco3.2v4
108 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
109 ;;
110 -sco3.2.[4-9]*)
111 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
112 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
113 ;;
114 -sco3.2v[4-9]*)
115 # Don't forget version if it is 3.2v4 or newer.
116 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
117 ;;
118 -sco*)
119 os=-sco3.2v2
120 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
121 ;;
122 -isc)
123 os=-isc2.2
124 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
125 ;;
126 -clix*)
127 basic_machine=clipper-intergraph
128 ;;
129 -isc*)
130 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
131 ;;
132 -lynx*)
133 os=-lynxos
134 ;;
135 -ptx*)
136 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
137 ;;
138 -windowsnt*)
139 os=`echo $os | sed -e 's/windowsnt/winnt/'`
140 ;;
141esac
142
143# Decode aliases for certain CPU-COMPANY combinations.
144case $basic_machine in
145 # Recognize the basic CPU types without company name.
146 # Some are omitted here because they have special meanings below.
147 tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm | pyramid \
148 | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
149 | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
150 | powerpc | sparc64 | 1750a | dsp16xx | mips64 | mipsel \
151 | pdp11 | mips64el | mips64orion | mips64orionel \
152 | sparc)
153 basic_machine=$basic_machine-unknown
154 ;;
155 m88110 | m680[01234]0 | m683?2 | z8k | v70 | h8500 | w65) # CYGNUS LOCAL
156 basic_machine=$basic_machine-unknown
157 ;;
158 # Object if more than one company name word.
159 *-*-*)
160 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
161 exit 1
162 ;;
163 # Recognize the basic CPU types with company name.
164 vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \
165 | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
166 | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
167 | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
168 | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
169 | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
170 | pdp11-* | sh-* | powerpc-* | sparc64-* | mips64-* | mipsel-* \
171 | mips64el-* | mips64orion-* | mips64orionel-*)
172 ;;
173 m88110-* | m680[01234]0-* | m683?2-* | z8k-* | h8500-*) # CYGNUS LOCAL
174 ;;
175 # Recognize the various machine names and aliases which stand
176 # for a CPU type and a company and sometimes even an OS.
177 386bsd) # CYGNUS LOCAL
178 basic_machine=i386-unknown
179 os=-bsd
180 ;;
181 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
182 basic_machine=m68000-att
183 ;;
184 3b*)
185 basic_machine=we32k-att
186 ;;
187 a29khif) # CYGNUS LOCAL
188 basic_machine=a29k-amd
189 os=-udi
190 ;;
191 adobe68k) # CYGNUS LOCAL
192 basic_machine=m68010-adobe
193 os=-scout
194 ;;
195 alliant | fx80)
196 basic_machine=fx80-alliant
197 ;;
198 altos | altos3068)
199 basic_machine=m68k-altos
200 ;;
201 am29k)
202 basic_machine=a29k-none
203 os=-bsd
204 ;;
205 amdahl)
206 basic_machine=580-amdahl
207 os=-sysv
208 ;;
209 amiga | amiga-*)
210 basic_machine=m68k-cbm
211 ;;
212 amigados)
213 basic_machine=m68k-cbm
214 os=-amigados
215 ;;
216 amigaunix | amix)
217 basic_machine=m68k-cbm
218 os=-sysv4
219 ;;
220 apollo68)
221 basic_machine=m68k-apollo
222 os=-sysv
223 ;;
224 apollo68bsd) # CYGNUS LOCAL
225 basic_machine=m68k-apollo
226 os=-bsd
227 ;;
228# start-sanitize-arc
229 arc)
230 basic_machine=arc-unknown
231 ;;
232 arc-*)
233 ;;
234# end-sanitize-arc
235 balance)
236 basic_machine=ns32k-sequent
237 os=-dynix
238 ;;
239 convex-c1)
240 basic_machine=c1-convex
241 os=-bsd
242 ;;
243 convex-c2)
244 basic_machine=c2-convex
245 os=-bsd
246 ;;
247 convex-c32)
248 basic_machine=c32-convex
249 os=-bsd
250 ;;
251 convex-c34)
252 basic_machine=c34-convex
253 os=-bsd
254 ;;
255 convex-c38)
256 basic_machine=c38-convex
257 os=-bsd
258 ;;
259 cray | ymp)
260 basic_machine=ymp-cray
261 os=-unicos
262 ;;
263 cray2)
264 basic_machine=cray2-cray
265 os=-unicos
266 ;;
267 crds | unos)
268 basic_machine=m68k-crds
269 ;;
270 da30 | da30-*)
271 basic_machine=m68k-da30
272 ;;
273 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
274 basic_machine=mips-dec
275 ;;
276 delta | 3300 | motorola-3300 | motorola-delta \
277 | 3300-motorola | delta-motorola)
278 basic_machine=m68k-motorola
279 ;;
280 delta88)
281 basic_machine=m88k-motorola
282 os=-sysv3
283 ;;
284 dpx20 | dpx20-*)
285 basic_machine=rs6000-bull
286 os=-bosx
287 ;;
288 dpx2* | dpx2*-bull)
289 basic_machine=m68k-bull
290 os=-sysv3
291 ;;
292 ebmon29k)
293 basic_machine=a29k-amd
294 os=-ebmon
295 ;;
296 elxsi)
297 basic_machine=elxsi-elxsi
298 os=-bsd
299 ;;
300 encore | umax | mmax)
301 basic_machine=ns32k-encore
302 ;;
303 es1800 | OSE68k | ose68k | ose | OSE) # CYGNUS LOCAL
304 basic_machine=m68k-ericsson
305 os=-ose
306 ;;
307 fx2800)
308 basic_machine=i860-alliant
309 ;;
310 genix)
311 basic_machine=ns32k-ns
312 ;;
313 gmicro)
314 basic_machine=tron-gmicro
315 os=-sysv
316 ;;
317 h3050r* | hiux*)
318 basic_machine=hppa1.1-hitachi
319 os=-hiuxwe2
320 ;;
321 h8300hms)
322 basic_machine=h8300-hitachi
323 os=-hms
324 ;;
325 h8300xray) # CYGNUS LOCAL
326 basic_machine=h8300-hitachi
327 os=-xray
328 ;;
329 h8500hms) # CYGNUS LOCAL
330 basic_machine=h8500-hitachi
331 os=-hms
332 ;;
333 harris)
334 basic_machine=m88k-harris
335 os=-sysv3
336 ;;
337 hp300-*)
338 basic_machine=m68k-hp
339 ;;
340 hp300bsd)
341 basic_machine=m68k-hp
342 os=-bsd
343 ;;
344 hp300hpux)
345 basic_machine=m68k-hp
346 os=-hpux
347 ;;
348 w89k-*) # CYGNUS LOCAL
349 basic_machine=hppa1.1-winbond
350 os=-proelf
351 ;;
352 op50n-*) # CYGNUS LOCAL
353 basic_machine=hppa1.1-oki
354 os=-proelf
355 ;;
356 op60c-*) # CYGNUS LOCAL
357 basic_machine=hppa1.1-oki
358 os=-proelf
359 ;;
360 hppro) # CYGNUS LOCAL
361 basic_machine=hppa1.1-hp
362 os=-proelf
363 ;;
364 hp9k2[0-9][0-9] | hp9k31[0-9])
365 basic_machine=m68000-hp
366 ;;
367 hp9k3[2-9][0-9])
368 basic_machine=m68k-hp
369 ;;
370 hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
371 basic_machine=hppa1.1-hp
372 ;;
373 hp9k8[0-9][0-9] | hp8[0-9][0-9])
374 basic_machine=hppa1.0-hp
375 ;;
376 hppaosf) # CYGNUS LOCAL
377 basic_machine=hppa1.1-hp
378 os=-osf
379 ;;
380 i370-ibm* | ibm*)
381 basic_machine=i370-ibm
382 os=-mvs
383 ;;
384# I'm not sure what "Sysv32" means. Should this be sysv3.2?
385 i[345]86v32)
386 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
387 os=-sysv32
388 ;;
389 i[345]86v4*)
390 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
391 os=-sysv4
392 ;;
393 i[345]86v)
394 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
395 os=-sysv
396 ;;
397 i[345]86sol2)
398 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
399 os=-solaris2
400 ;;
401 i386mach) # CYGNUS LOCAL
402 basic_machine=i386-mach
403 os=-mach
404 ;;
405 i386-vsta | vsta) # CYGNUS LOCAL
406 basic_machine=i386-unknown
407 os=-vsta
408 ;;
409 i386-go32 | go32) # CYGNUS LOCAL
410 basic_machine=i386-unknown
411 os=-go32
412 ;;
413 i386-linux* | linux) # CYGNUS LOCAL
414 basic_machine=i386-unknown
415 os=-linux
416 ;;
417 i386-linux*coff | linuxcoff) # CYGNUS LOCAL
418 basic_machine=i386-unknown
419 os=-linuxcoff
420 ;;
421 i386-linux*elf | linuxelf) # CYGNUS LOCAL
422 basic_machine=i386-unknown
423 os=-linuxelf
424 ;;
425 iris | iris4d)
426 basic_machine=mips-sgi
427 case $os in
428 -irix*)
429 ;;
430 *)
431 os=-irix4
432 ;;
433 esac
434 ;;
435 isi68 | isi)
436 basic_machine=m68k-isi
437 os=-sysv
438 ;;
439 m88k-omron*)
440 basic_machine=m88k-omron
441 ;;
442 magnum | m3230)
443 basic_machine=mips-mips
444 os=-sysv
445 ;;
446 merlin)
447 basic_machine=ns32k-utek
448 os=-sysv
449 ;;
450 miniframe)
451 basic_machine=m68000-convergent
452 ;;
453 mips3*-*)
454 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
455 ;;
456 mips3*)
457 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
458 ;;
459 monitor) # CYGNUS LOCAL
460 basic_machine=m68k-rom68k
461 os=-coff
462 ;;
463 msdos) # CYGNUS LOCAL
464 basic_machine=i386-unknown
465 os=-msdos
466 ;;
467 ncr3000)
468 basic_machine=i486-ncr
469 os=-sysv4
470 ;;
471 netbsd386)
472 basic_machine=i386-unknown # CYGNUS LOCAL
473 os=-netbsd
474 ;;
475 news | news700 | news800 | news900)
476 basic_machine=m68k-sony
477 os=-newsos
478 ;;
479 news1000)
480 basic_machine=m68030-sony
481 os=-newsos
482 ;;
483 news-3600 | risc-news)
484 basic_machine=mips-sony
485 os=-newsos
486 ;;
487 necv70) # CYGNUS LOCAL
488 basic_machine=v70-nec
489 os=-sysv
490 ;;
491 next | m*-next )
492 basic_machine=m68k-next
493 case $os in
494 -nextstep* )
495 ;;
496 -ns2*)
497 os=-nextstep2
498 ;;
499 *)
500 os=-nextstep3
501 ;;
502 esac
503 ;;
504 nh3000)
505 basic_machine=m68k-harris
506 os=-cxux
507 ;;
508 nh[45]000)
509 basic_machine=m88k-harris
510 os=-cxux
511 ;;
512 nindy960)
513 basic_machine=i960-intel
514 os=-nindy
515 ;;
516 np1)
517 basic_machine=np1-gould
518 ;;
519 OSE68000 | ose68000) # CYGNUS LOCAL
520 basic_machine=m68000-ericsson
521 os=-ose
522 ;;
523 os68k) # CYGNUS LOCAL
524 basic_machine=m68k-none
525 os=-os68k
526 ;;
527 pa-hitachi)
528 basic_machine=hppa1.1-hitachi
529 os=-hiuxwe2
530 ;;
531 paragon)
532 basic_machine=i860-intel
533 os=-osf
534 ;;
535 pbd)
536 basic_machine=sparc-tti
537 ;;
538 pbb)
539 basic_machine=m68k-tti
540 ;;
541 pc532 | pc532-*)
542 basic_machine=ns32k-pc532
543 ;;
544 pentium-*)
545 # We will change tis to say i586 once there has been
546 # time for various packages to start to recognize that.
547 basic_machine=i486-`echo $basic_machine | sed 's/^[^-]*-//'`
548 ;;
549 pn)
550 basic_machine=pn-gould
551 ;;
552 ps2)
553 basic_machine=i386-ibm
554 ;;
555# start-sanitize-rce
556 rce)
557 basic_machine=rce-unknown
558 ;;
559 rce-*)
560 ;;
561# end-sanitize-rce
562 rom68k) # CYGNUS LOCAL
563 basic_machine=m68k-rom68k
564 os=-coff
565 ;;
566 rm[46]00)
567 basic_machine=mips-siemens
568 ;;
569 rtpc | rtpc-*)
570 basic_machine=romp-ibm
571 ;;
572 sa29200) # CYGNUS LOCAL
573 basic_machine=a29k-amd
574 os=-udi
575 ;;
576 sequent)
577 basic_machine=i386-sequent
578 ;;
579 sh)
580 basic_machine=sh-hitachi
581 os=-hms
582 ;;
583 sparclite-wrs) # CYGNUS LOCAL
584 basic_machine=sparclite-wrs
585 os=-vxworks
586 ;;
587 sparcfrw) # CYGNUS LOCAL
588 basic_machine=sparcfrw-sun
589 os=-sunos4
590 ;;
591 sparcfrwcompat) # CYGNUS LOCAL
592 basic_machine=sparcfrwcompat-sun
593 os=-sunos4
594 ;;
595 sparclitefrw) # CYGNUS LOCAL
596 basic_machine=sparclitefrw-fujitsu
597 ;;
598 sparclitefrwcompat) # CYGNUS LOCAL
599 basic_machine=sparclitefrwcompat-fujitsu
600 ;;
601 sps7)
602 basic_machine=m68k-bull
603 os=-sysv2
604 ;;
605 spur)
606 basic_machine=spur-unknown
607 ;;
608 st2000) # CYGNUS LOCAL
609 basic_machine=m68k-tandem
610 ;;
611 stratus) # CYGNUS LOCAL
612 basic_machine=i860-stratus
613 os=-sysv4
614 ;;
615 sun2)
616 basic_machine=m68000-sun
617 ;;
618 sun2os3)
619 basic_machine=m68000-sun
620 os=-sunos3
621 ;;
622 sun2os4)
623 basic_machine=m68000-sun
624 os=-sunos4
625 ;;
626 sun3os3)
627 basic_machine=m68k-sun
628 os=-sunos3
629 ;;
630 sun3os4)
631 basic_machine=m68k-sun
632 os=-sunos4
633 ;;
634 sun4os3)
635 basic_machine=sparc-sun
636 os=-sunos3
637 ;;
638 sun4os4)
639 basic_machine=sparc-sun
640 os=-sunos4
641 ;;
642 sun4sol2)
643 basic_machine=sparc-sun
644 os=-solaris2
645 ;;
646 sun3 | sun3-*)
647 basic_machine=m68k-sun
648 ;;
649 sun4)
650 basic_machine=sparc-sun
651 ;;
652 sun386 | sun386i | roadrunner)
653 basic_machine=i386-sun
654 ;;
655 symmetry)
656 basic_machine=i386-sequent
657 os=-dynix
658 ;;
659 tower | tower-32)
660 basic_machine=m68k-ncr
661 ;;
662 udi29k)
663 basic_machine=a29k-amd
664 os=-udi
665 ;;
666 ultra3)
667 basic_machine=a29k-nyu
668 os=-sym1
669 ;;
670 v810 | necv810) # CYGNUS LOCAL
671 basic_machine=v810-nec
672 os=-none
673 ;;
674 vaxv)
675 basic_machine=vax-dec
676 os=-sysv
677 ;;
678 vms)
679 basic_machine=vax-dec
680 os=-vms
681 ;;
682 vxworks960)
683 basic_machine=i960-wrs
684 os=-vxworks
685 ;;
686 vxworks68)
687 basic_machine=m68k-wrs
688 os=-vxworks
689 ;;
690 vxworks29k) # CYGNUS LOCAL
691 basic_machine=a29k-wrs
692 os=-vxworks
693 ;;
694 w65*) # CYGNUS LOCAL
695 basic_machine=w65-wdc
696 os=-none
697 ;;
698 xmp)
699 basic_machine=xmp-cray
700 os=-unicos
701 ;;
702 xps | xps100)
703 basic_machine=xps100-honeywell
704 ;;
705 z8ksim) # CYGNUS LOCAL
706 basic_machine=z8k-unknown
707 os=-sim
708 ;;
709 none)
710 basic_machine=none-none
711 os=-none
712 ;;
713
714# Here we handle the default manufacturer of certain CPU types. It is in
715# some cases the only manufacturer, in others, it is the most popular.
716 w89k) # CYGNUS LOCAL
717 basic_machine=hppa1.1-winbond
718 ;;
719 op50n) # CYGNUS LOCAL
720 basic_machine=hppa1.1-oki
721 ;;
722 op60c) # CYGNUS LOCAL
723 basic_machine=hppa1.1-oki
724 ;;
725 mips)
726 basic_machine=mips-mips
727 ;;
728 romp)
729 basic_machine=romp-ibm
730 ;;
731 rs6000)
732 basic_machine=rs6000-ibm
733 ;;
734 vax)
735 basic_machine=vax-dec
736 ;;
737 pdp11)
738 basic_machine=pdp11-dec
739 ;;
740 we32k)
741 basic_machine=we32k-att
742 ;;
743 sparc)
744 basic_machine=sparc-sun
745 ;;
746 cydra)
747 basic_machine=cydra-cydrome
748 ;;
749 orion)
750 basic_machine=orion-highlevel
751 ;;
752 orion105)
753 basic_machine=clipper-highlevel
754 ;;
755## start-sanitize-mpw
756 mac) # CYGNUS LOCAL
757 basic_machine=m68k-apple
758 ;;
759 mpw) # CYGNUS LOCAL
760 basic_machine=m68k-apple
761 ;;
762## end-sanitize-mpw
763 *)
764 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
765 exit 1
766 ;;
767esac
768
769# Here we canonicalize certain aliases for manufacturers.
770case $basic_machine in
771 *-digital*)
772 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
773 ;;
774 *-commodore*)
775 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
776 ;;
777 *)
778 ;;
779esac
780
781# Decode manufacturer-specific aliases for certain operating systems.
782
783if [ x"$os" != x"" ]
784then
785case $os in
786 # -solaris* is a basic system type, with this one exception.
787 -solaris1 | -solaris1.*)
788 os=`echo $os | sed -e 's|solaris1|sunos4|'`
789 ;;
790 -solaris)
791 os=-solaris2
792 ;;
793 -unixware* | svr4*)
794 os=-sysv4
795 ;;
796 -gnu/linux*)
797 os=`echo $os | sed -e 's|gnu/linux|linux|'`
798 ;;
799 # First accept the basic system types.
800 # The portable systems comes first.
801 # Each alternative must end in a *, to match a version number.
802 # -sysv* is not here because it comes later, after sysvr4.
803 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
804 | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \
805 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
806 | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
807 | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
808 | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
809 | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
810 | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
811 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta | -udi | -eabi)
812 ;;
813 # CYGNUS LOCAL
814 -go32 | -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
815 | -windows* | -osx | -abug | -netware* | -proelf | -os9*)
816 ;;
817## start-sanitize-mpw
818 -macos*)
819 ;;
820 -mac*)
821 os=`echo $os | sed -e 's|mac|macos|'`
822 ;;
823 -mpw*)
824 ;;
825## end-sanitize-mpw
826# start-sanitize-psion
827 -pe*)
828 ;;
829# end-sanitize-psion
830 -sunos5*)
831 os=`echo $os | sed -e 's|sunos5|solaris2|'`
832 ;;
833 -sunos6*)
834 os=`echo $os | sed -e 's|sunos6|solaris3|'`
835 ;;
836 -osfrose*)
837 os=-osfrose
838 ;;
839 -osf*)
840 os=-osf
841 ;;
842 -utek*)
843 os=-bsd
844 ;;
845 -dynix*)
846 os=-bsd
847 ;;
848 -acis*)
849 os=-aos
850 ;;
851 -386bsd) # CYGNUS LOCAL
852 os=-bsd
853 ;;
854 -ctix* | -uts*)
855 os=-sysv
856 ;;
857 # Preserve the version number of sinix5.
858 -sinix5.*)
859 os=`echo $os | sed -e 's|sinix|sysv|'`
860 ;;
861 -sinix*)
862 os=-sysv4
863 ;;
864 -triton*)
865 os=-sysv3
866 ;;
867 -oss*)
868 os=-sysv3
869 ;;
870 -svr4)
871 os=-sysv4
872 ;;
873 -svr3)
874 os=-sysv3
875 ;;
876 -sysvr4)
877 os=-sysv4
878 ;;
879 # This must come after -sysvr4.
880 -sysv*)
881 ;;
882 -ose*) # CYGNUS LOCAL
883 os=-ose
884 ;;
885 -es1800*) # CYGNUS LOCAL
886 os=-ose
887 ;;
888 -xenix)
889 os=-xenix
890 ;;
891 -none)
892 ;;
893 *)
894 # Get rid of the `-' at the beginning of $os.
895 os=`echo $os | sed 's/[^-]*-//'`
896 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
897 exit 1
898 ;;
899esac
900else
901
902# Here we handle the default operating systems that come with various machines.
903# The value should be what the vendor currently ships out the door with their
904# machine or put another way, the most popular os provided with the machine.
905
906# Note that if you're going to try to match "-MANUFACTURER" here (say,
907# "-sun"), then you have to tell the case statement up towards the top
908# that MANUFACTURER isn't an operating system. Otherwise, code above
909# will signal an error saying that MANUFACTURER isn't an operating
910# system, and we'll never get to this point.
911
912case $basic_machine in
913 *-acorn)
914 os=-riscix1.2
915 ;;
916 pdp11-*)
917 os=-none
918 ;;
919 *-dec | vax-*)
920 os=-ultrix4.2
921 ;;
922 m68*-apollo)
923 os=-domain
924 ;;
925 i386-sun)
926 os=-sunos4.0.2
927 ;;
928 m68000-sun)
929 os=-sunos3
930 # This also exists in the configure program, but was not the
931 # default.
932 # os=-sunos4
933 ;;
934 m68*-cisco) # CYGNUS LOCAL
935 os=-aout
936 ;;
937 mips*-cisco) # CYGNUS LOCAL
938 os=-elf
939 ;;
940 *-tti) # must be before sparc entry or we get the wrong os.
941 os=-sysv3
942 ;;
943 sparc-* | *-sun)
944 os=-sunos4.1.1
945 ;;
946 *-ibm)
947 os=-aix
948 ;;
949 *-wec) # CYGNUS LOCAL
950 os=-proelf
951 ;;
952 *-winbond) # CYGNUS LOCAL
953 os=-proelf
954 ;;
955 *-oki) # CYGNUS LOCAL
956 os=-proelf
957 ;;
958 *-hp)
959 os=-hpux
960 ;;
961 *-hitachi)
962 os=-hiux
963 ;;
964 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
965 os=-sysv
966 ;;
967 *-cbm)
968 os=-amigados
969 ;;
970 *-dg)
971 os=-dgux
972 ;;
973 *-dolphin)
974 os=-sysv3
975 ;;
976 m68k-ccur)
977 os=-rtu
978 ;;
979 m88k-omron*)
980 os=-luna
981 ;;
982 *-sequent)
983 os=-ptx
984 ;;
985 *-crds)
986 os=-unos
987 ;;
988 *-ns)
989 os=-genix
990 ;;
991 i370-*)
992 os=-mvs
993 ;;
994 *-next)
995 os=-nextstep3
996 ;;
997 *-gould)
998 os=-sysv
999 ;;
1000 *-highlevel)
1001 os=-bsd
1002 ;;
1003 *-encore)
1004 os=-bsd
1005 ;;
1006 *-sgi)
1007 os=-irix
1008 ;;
1009 *-siemens)
1010 os=-sysv4
1011 ;;
1012 *-masscomp)
1013 os=-rtu
1014 ;;
1015 *-rom68k) # CYGNUS LOCAL
1016 os=-coff
1017 ;;
1018 *-*bug) # CYGNUS LOCAL
1019 os=-coff
1020 ;;
1021## start-sanitize-mpw
1022 *-apple) # CYGNUS LOCAL
1023 os=-macos7
1024 ;;
1025## end-sanitize-mpw
1026 *)
1027 os=-none
1028 ;;
1029esac
1030fi
1031
1032# Here we handle the case where we know the os, and the CPU type, but not the
1033# manufacturer. We pick the logical manufacturer.
1034vendor=unknown
1035case $basic_machine in
1036 *-unknown)
1037 case $os in
1038 -riscix*)
1039 vendor=acorn
1040 ;;
1041 -sunos*)
1042 vendor=sun
1043 ;;
1044 -bosx*) # CYGNUS LOCAL
1045 vendor=bull
1046 ;;
1047 -lynxos*)
1048 vendor=lynx
1049 ;;
1050 -aix*)
1051 vendor=ibm
1052 ;;
1053 -hpux*)
1054 vendor=hp
1055 ;;
1056 -hiux*)
1057 vendor=hitachi
1058 ;;
1059 -unos*)
1060 vendor=crds
1061 ;;
1062 -dgux*)
1063 vendor=dg
1064 ;;
1065 -luna*)
1066 vendor=omron
1067 ;;
1068 -genix*)
1069 vendor=ns
1070 ;;
1071 -mvs*)
1072 vendor=ibm
1073 ;;
1074 -ptx*)
1075 vendor=sequent
1076 ;;
1077 -vxworks*)
1078 vendor=wrs
1079 ;;
1080 -hms*) # CYGNUS LOCAL
1081 vendor=hitachi
1082 ;;
1083## start-sanitize-mpw
1084 -mpw* | -macos*)
1085 vendor=apple
1086 ;;
1087## end-sanitize-mpw
1088 esac
1089 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1090 ;;
1091esac
1092
1093echo $basic_machine$os
This page took 0.025384 seconds and 4 git commands to generate.