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