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