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