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