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