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