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