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