tools/config.sub
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Sep 23 14:48:10 2008 +0000 (2008-09-23)
changeset 872 fd4bf138f08f
parent 600 8c669e6e9af3
child 1096 4632c305eb73
permissions -rwxr-xr-x
Bart De VOS pointed out that removing absolute paths from the libc linker scripts is plainly wrong.
It dates from dawn ages of the original crosstool code, and is not well explained. At that time, binutils might not understand the sysroot stuff, and it was necessary to remove absolute paths in that case.

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