memory/jemalloc/src/config.sub

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rwxr-xr-x

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

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

mercurial