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