scripts/config.sub
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 23:10:37 2011 +0200 (2011-08-02)
changeset 2595 d6b2354d9d17
parent 2404 8988576c491a
child 2698 7501f41e3bbf
permissions -rwxr-xr-x
scripts: try the mirror even if downloads are forbidden

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