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