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