config.sub revision 9027f4a0
19027f4a0Smrg#! /bin/sh
29027f4a0Smrg# Configuration validation subroutine script.
39027f4a0Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
49027f4a0Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
59027f4a0Smrg#   Inc.
69027f4a0Smrg
79027f4a0Smrgtimestamp='2006-12-08'
89027f4a0Smrg
99027f4a0Smrg# This file is (in principle) common to ALL GNU software.
109027f4a0Smrg# The presence of a machine in this file suggests that SOME GNU software
119027f4a0Smrg# can handle that machine.  It does not imply ALL GNU software can.
129027f4a0Smrg#
139027f4a0Smrg# This file is free software; you can redistribute it and/or modify
149027f4a0Smrg# it under the terms of the GNU General Public License as published by
159027f4a0Smrg# the Free Software Foundation; either version 2 of the License, or
169027f4a0Smrg# (at your option) any later version.
179027f4a0Smrg#
189027f4a0Smrg# This program is distributed in the hope that it will be useful,
199027f4a0Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
209027f4a0Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
219027f4a0Smrg# GNU General Public License for more details.
229027f4a0Smrg#
239027f4a0Smrg# You should have received a copy of the GNU General Public License
249027f4a0Smrg# along with this program; if not, write to the Free Software
259027f4a0Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
269027f4a0Smrg# 02110-1301, USA.
279027f4a0Smrg#
289027f4a0Smrg# As a special exception to the GNU General Public License, if you
299027f4a0Smrg# distribute this file as part of a program that contains a
309027f4a0Smrg# configuration script generated by Autoconf, you may include it under
319027f4a0Smrg# the same distribution terms that you use for the rest of that program.
329027f4a0Smrg
339027f4a0Smrg
349027f4a0Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
359027f4a0Smrg# diff and a properly formatted ChangeLog entry.
369027f4a0Smrg#
379027f4a0Smrg# Configuration subroutine to validate and canonicalize a configuration type.
389027f4a0Smrg# Supply the specified configuration type as an argument.
399027f4a0Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
409027f4a0Smrg# Otherwise, we print the canonical config type on stdout and succeed.
419027f4a0Smrg
429027f4a0Smrg# This file is supposed to be the same for all GNU packages
439027f4a0Smrg# and recognize all the CPU types, system types and aliases
449027f4a0Smrg# that are meaningful with *any* GNU software.
459027f4a0Smrg# Each package is responsible for reporting which valid configurations
469027f4a0Smrg# it does not support.  The user should be able to distinguish
479027f4a0Smrg# a failure to support a valid configuration from a meaningless
489027f4a0Smrg# configuration.
499027f4a0Smrg
509027f4a0Smrg# The goal of this file is to map all the various variations of a given
519027f4a0Smrg# machine specification into a single specification in the form:
529027f4a0Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
539027f4a0Smrg# or in some cases, the newer four-part form:
549027f4a0Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
559027f4a0Smrg# It is wrong to echo any other type of specification.
569027f4a0Smrg
579027f4a0Smrgme=`echo "$0" | sed -e 's,.*/,,'`
589027f4a0Smrg
599027f4a0Smrgusage="\
609027f4a0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
619027f4a0Smrg       $0 [OPTION] ALIAS
629027f4a0Smrg
639027f4a0SmrgCanonicalize a configuration name.
649027f4a0Smrg
659027f4a0SmrgOperation modes:
669027f4a0Smrg  -h, --help         print this help, then exit
679027f4a0Smrg  -t, --time-stamp   print date of last modification, then exit
689027f4a0Smrg  -v, --version      print version number, then exit
699027f4a0Smrg
709027f4a0SmrgReport bugs and patches to <config-patches@gnu.org>."
719027f4a0Smrg
729027f4a0Smrgversion="\
739027f4a0SmrgGNU config.sub ($timestamp)
749027f4a0Smrg
759027f4a0SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
769027f4a0SmrgFree Software Foundation, Inc.
779027f4a0Smrg
789027f4a0SmrgThis is free software; see the source for copying conditions.  There is NO
799027f4a0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
809027f4a0Smrg
819027f4a0Smrghelp="
829027f4a0SmrgTry \`$me --help' for more information."
839027f4a0Smrg
849027f4a0Smrg# Parse command line
859027f4a0Smrgwhile test $# -gt 0 ; do
869027f4a0Smrg  case $1 in
879027f4a0Smrg    --time-stamp | --time* | -t )
889027f4a0Smrg       echo "$timestamp" ; exit ;;
899027f4a0Smrg    --version | -v )
909027f4a0Smrg       echo "$version" ; exit ;;
919027f4a0Smrg    --help | --h* | -h )
929027f4a0Smrg       echo "$usage"; exit ;;
939027f4a0Smrg    -- )     # Stop option processing
949027f4a0Smrg       shift; break ;;
959027f4a0Smrg    - )	# Use stdin as input.
969027f4a0Smrg       break ;;
979027f4a0Smrg    -* )
989027f4a0Smrg       echo "$me: invalid option $1$help"
999027f4a0Smrg       exit 1 ;;
1009027f4a0Smrg
1019027f4a0Smrg    *local*)
1029027f4a0Smrg       # First pass through any local machine types.
1039027f4a0Smrg       echo $1
1049027f4a0Smrg       exit ;;
1059027f4a0Smrg
1069027f4a0Smrg    * )
1079027f4a0Smrg       break ;;
1089027f4a0Smrg  esac
1099027f4a0Smrgdone
1109027f4a0Smrg
1119027f4a0Smrgcase $# in
1129027f4a0Smrg 0) echo "$me: missing argument$help" >&2
1139027f4a0Smrg    exit 1;;
1149027f4a0Smrg 1) ;;
1159027f4a0Smrg *) echo "$me: too many arguments$help" >&2
1169027f4a0Smrg    exit 1;;
1179027f4a0Smrgesac
1189027f4a0Smrg
1199027f4a0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
1209027f4a0Smrg# Here we must recognize all the valid KERNEL-OS combinations.
1219027f4a0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
1229027f4a0Smrgcase $maybe_os in
1239027f4a0Smrg  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
1249027f4a0Smrg  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
1259027f4a0Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
1269027f4a0Smrg    os=-$maybe_os
1279027f4a0Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1289027f4a0Smrg    ;;
1299027f4a0Smrg  *)
1309027f4a0Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
1319027f4a0Smrg    if [ $basic_machine != $1 ]
1329027f4a0Smrg    then os=`echo $1 | sed 's/.*-/-/'`
1339027f4a0Smrg    else os=; fi
1349027f4a0Smrg    ;;
1359027f4a0Smrgesac
1369027f4a0Smrg
1379027f4a0Smrg### Let's recognize common machines as not being operating systems so
1389027f4a0Smrg### that things like config.sub decstation-3100 work.  We also
1399027f4a0Smrg### recognize some manufacturers as not being operating systems, so we
1409027f4a0Smrg### can provide default operating systems below.
1419027f4a0Smrgcase $os in
1429027f4a0Smrg	-sun*os*)
1439027f4a0Smrg		# Prevent following clause from handling this invalid input.
1449027f4a0Smrg		;;
1459027f4a0Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
1469027f4a0Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1479027f4a0Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
1489027f4a0Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
1499027f4a0Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
1509027f4a0Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1519027f4a0Smrg	-apple | -axis | -knuth | -cray)
1529027f4a0Smrg		os=
1539027f4a0Smrg		basic_machine=$1
1549027f4a0Smrg		;;
1559027f4a0Smrg	-sim | -cisco | -oki | -wec | -winbond)
1569027f4a0Smrg		os=
1579027f4a0Smrg		basic_machine=$1
1589027f4a0Smrg		;;
1599027f4a0Smrg	-scout)
1609027f4a0Smrg		;;
1619027f4a0Smrg	-wrs)
1629027f4a0Smrg		os=-vxworks
1639027f4a0Smrg		basic_machine=$1
1649027f4a0Smrg		;;
1659027f4a0Smrg	-chorusos*)
1669027f4a0Smrg		os=-chorusos
1679027f4a0Smrg		basic_machine=$1
1689027f4a0Smrg		;;
1699027f4a0Smrg 	-chorusrdb)
1709027f4a0Smrg 		os=-chorusrdb
1719027f4a0Smrg		basic_machine=$1
1729027f4a0Smrg 		;;
1739027f4a0Smrg	-hiux*)
1749027f4a0Smrg		os=-hiuxwe2
1759027f4a0Smrg		;;
1769027f4a0Smrg	-sco6)
1779027f4a0Smrg		os=-sco5v6
1789027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1799027f4a0Smrg		;;
1809027f4a0Smrg	-sco5)
1819027f4a0Smrg		os=-sco3.2v5
1829027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1839027f4a0Smrg		;;
1849027f4a0Smrg	-sco4)
1859027f4a0Smrg		os=-sco3.2v4
1869027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1879027f4a0Smrg		;;
1889027f4a0Smrg	-sco3.2.[4-9]*)
1899027f4a0Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
1909027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1919027f4a0Smrg		;;
1929027f4a0Smrg	-sco3.2v[4-9]*)
1939027f4a0Smrg		# Don't forget version if it is 3.2v4 or newer.
1949027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1959027f4a0Smrg		;;
1969027f4a0Smrg	-sco5v6*)
1979027f4a0Smrg		# Don't forget version if it is 3.2v4 or newer.
1989027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1999027f4a0Smrg		;;
2009027f4a0Smrg	-sco*)
2019027f4a0Smrg		os=-sco3.2v2
2029027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2039027f4a0Smrg		;;
2049027f4a0Smrg	-udk*)
2059027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2069027f4a0Smrg		;;
2079027f4a0Smrg	-isc)
2089027f4a0Smrg		os=-isc2.2
2099027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2109027f4a0Smrg		;;
2119027f4a0Smrg	-clix*)
2129027f4a0Smrg		basic_machine=clipper-intergraph
2139027f4a0Smrg		;;
2149027f4a0Smrg	-isc*)
2159027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2169027f4a0Smrg		;;
2179027f4a0Smrg	-lynx*)
2189027f4a0Smrg		os=-lynxos
2199027f4a0Smrg		;;
2209027f4a0Smrg	-ptx*)
2219027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
2229027f4a0Smrg		;;
2239027f4a0Smrg	-windowsnt*)
2249027f4a0Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
2259027f4a0Smrg		;;
2269027f4a0Smrg	-psos*)
2279027f4a0Smrg		os=-psos
2289027f4a0Smrg		;;
2299027f4a0Smrg	-mint | -mint[0-9]*)
2309027f4a0Smrg		basic_machine=m68k-atari
2319027f4a0Smrg		os=-mint
2329027f4a0Smrg		;;
2339027f4a0Smrgesac
2349027f4a0Smrg
2359027f4a0Smrg# Decode aliases for certain CPU-COMPANY combinations.
2369027f4a0Smrgcase $basic_machine in
2379027f4a0Smrg	# Recognize the basic CPU types without company name.
2389027f4a0Smrg	# Some are omitted here because they have special meanings below.
2399027f4a0Smrg	1750a | 580 \
2409027f4a0Smrg	| a29k \
2419027f4a0Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
2429027f4a0Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2439027f4a0Smrg	| am33_2.0 \
2449027f4a0Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
2459027f4a0Smrg	| bfin \
2469027f4a0Smrg	| c4x | clipper \
2479027f4a0Smrg	| d10v | d30v | dlx | dsp16xx \
2489027f4a0Smrg	| fido | fr30 | frv \
2499027f4a0Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2509027f4a0Smrg	| i370 | i860 | i960 | ia64 \
2519027f4a0Smrg	| ip2k | iq2000 \
2529027f4a0Smrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
2539027f4a0Smrg	| maxq | mb | microblaze | mcore \
2549027f4a0Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
2559027f4a0Smrg	| mips16 \
2569027f4a0Smrg	| mips64 | mips64el \
2579027f4a0Smrg	| mips64vr | mips64vrel \
2589027f4a0Smrg	| mips64orion | mips64orionel \
2599027f4a0Smrg	| mips64vr4100 | mips64vr4100el \
2609027f4a0Smrg	| mips64vr4300 | mips64vr4300el \
2619027f4a0Smrg	| mips64vr5000 | mips64vr5000el \
2629027f4a0Smrg	| mips64vr5900 | mips64vr5900el \
2639027f4a0Smrg	| mipsisa32 | mipsisa32el \
2649027f4a0Smrg	| mipsisa32r2 | mipsisa32r2el \
2659027f4a0Smrg	| mipsisa64 | mipsisa64el \
2669027f4a0Smrg	| mipsisa64r2 | mipsisa64r2el \
2679027f4a0Smrg	| mipsisa64sb1 | mipsisa64sb1el \
2689027f4a0Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
2699027f4a0Smrg	| mipstx39 | mipstx39el \
2709027f4a0Smrg	| mn10200 | mn10300 \
2719027f4a0Smrg	| mt \
2729027f4a0Smrg	| msp430 \
2739027f4a0Smrg	| nios | nios2 \
2749027f4a0Smrg	| ns16k | ns32k \
2759027f4a0Smrg	| or32 \
2769027f4a0Smrg	| pdp10 | pdp11 | pj | pjl \
2779027f4a0Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
2789027f4a0Smrg	| pyramid \
2799027f4a0Smrg	| score \
2809027f4a0Smrg	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
2819027f4a0Smrg	| sh64 | sh64le \
2829027f4a0Smrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
2839027f4a0Smrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
2849027f4a0Smrg	| spu | strongarm \
2859027f4a0Smrg	| tahoe | thumb | tic4x | tic80 | tron \
2869027f4a0Smrg	| v850 | v850e \
2879027f4a0Smrg	| we32k \
2889027f4a0Smrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
2899027f4a0Smrg	| z8k)
2909027f4a0Smrg		basic_machine=$basic_machine-unknown
2919027f4a0Smrg		;;
2929027f4a0Smrg	m6811 | m68hc11 | m6812 | m68hc12)
2939027f4a0Smrg		# Motorola 68HC11/12.
2949027f4a0Smrg		basic_machine=$basic_machine-unknown
2959027f4a0Smrg		os=-none
2969027f4a0Smrg		;;
2979027f4a0Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
2989027f4a0Smrg		;;
2999027f4a0Smrg	ms1)
3009027f4a0Smrg		basic_machine=mt-unknown
3019027f4a0Smrg		;;
3029027f4a0Smrg
3039027f4a0Smrg	# We use `pc' rather than `unknown'
3049027f4a0Smrg	# because (1) that's what they normally are, and
3059027f4a0Smrg	# (2) the word "unknown" tends to confuse beginning users.
3069027f4a0Smrg	i*86 | x86_64)
3079027f4a0Smrg	  basic_machine=$basic_machine-pc
3089027f4a0Smrg	  ;;
3099027f4a0Smrg	# Object if more than one company name word.
3109027f4a0Smrg	*-*-*)
3119027f4a0Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
3129027f4a0Smrg		exit 1
3139027f4a0Smrg		;;
3149027f4a0Smrg	# Recognize the basic CPU types with company name.
3159027f4a0Smrg	580-* \
3169027f4a0Smrg	| a29k-* \
3179027f4a0Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3189027f4a0Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3199027f4a0Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
3209027f4a0Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
3219027f4a0Smrg	| avr-* | avr32-* \
3229027f4a0Smrg	| bfin-* | bs2000-* \
3239027f4a0Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
3249027f4a0Smrg	| clipper-* | craynv-* | cydra-* \
3259027f4a0Smrg	| d10v-* | d30v-* | dlx-* \
3269027f4a0Smrg	| elxsi-* \
3279027f4a0Smrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
3289027f4a0Smrg	| h8300-* | h8500-* \
3299027f4a0Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3309027f4a0Smrg	| i*86-* | i860-* | i960-* | ia64-* \
3319027f4a0Smrg	| ip2k-* | iq2000-* \
3329027f4a0Smrg	| m32c-* | m32r-* | m32rle-* \
3339027f4a0Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3349027f4a0Smrg	| m88110-* | m88k-* | maxq-* | mcore-* \
3359027f4a0Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
3369027f4a0Smrg	| mips16-* \
3379027f4a0Smrg	| mips64-* | mips64el-* \
3389027f4a0Smrg	| mips64vr-* | mips64vrel-* \
3399027f4a0Smrg	| mips64orion-* | mips64orionel-* \
3409027f4a0Smrg	| mips64vr4100-* | mips64vr4100el-* \
3419027f4a0Smrg	| mips64vr4300-* | mips64vr4300el-* \
3429027f4a0Smrg	| mips64vr5000-* | mips64vr5000el-* \
3439027f4a0Smrg	| mips64vr5900-* | mips64vr5900el-* \
3449027f4a0Smrg	| mipsisa32-* | mipsisa32el-* \
3459027f4a0Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
3469027f4a0Smrg	| mipsisa64-* | mipsisa64el-* \
3479027f4a0Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
3489027f4a0Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
3499027f4a0Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
3509027f4a0Smrg	| mipstx39-* | mipstx39el-* \
3519027f4a0Smrg	| mmix-* \
3529027f4a0Smrg	| mt-* \
3539027f4a0Smrg	| msp430-* \
3549027f4a0Smrg	| nios-* | nios2-* \
3559027f4a0Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
3569027f4a0Smrg	| orion-* \
3579027f4a0Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
3589027f4a0Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
3599027f4a0Smrg	| pyramid-* \
3609027f4a0Smrg	| romp-* | rs6000-* \
3619027f4a0Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
3629027f4a0Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
3639027f4a0Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
3649027f4a0Smrg	| sparclite-* \
3659027f4a0Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
3669027f4a0Smrg	| tahoe-* | thumb-* \
3679027f4a0Smrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
3689027f4a0Smrg	| tron-* \
3699027f4a0Smrg	| v850-* | v850e-* | vax-* \
3709027f4a0Smrg	| we32k-* \
3719027f4a0Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
3729027f4a0Smrg	| xstormy16-* | xtensa-* \
3739027f4a0Smrg	| ymp-* \
3749027f4a0Smrg	| z8k-*)
3759027f4a0Smrg		;;
3769027f4a0Smrg	# Recognize the various machine names and aliases which stand
3779027f4a0Smrg	# for a CPU type and a company and sometimes even an OS.
3789027f4a0Smrg	386bsd)
3799027f4a0Smrg		basic_machine=i386-unknown
3809027f4a0Smrg		os=-bsd
3819027f4a0Smrg		;;
3829027f4a0Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
3839027f4a0Smrg		basic_machine=m68000-att
3849027f4a0Smrg		;;
3859027f4a0Smrg	3b*)
3869027f4a0Smrg		basic_machine=we32k-att
3879027f4a0Smrg		;;
3889027f4a0Smrg	a29khif)
3899027f4a0Smrg		basic_machine=a29k-amd
3909027f4a0Smrg		os=-udi
3919027f4a0Smrg		;;
3929027f4a0Smrg    	abacus)
3939027f4a0Smrg		basic_machine=abacus-unknown
3949027f4a0Smrg		;;
3959027f4a0Smrg	adobe68k)
3969027f4a0Smrg		basic_machine=m68010-adobe
3979027f4a0Smrg		os=-scout
3989027f4a0Smrg		;;
3999027f4a0Smrg	alliant | fx80)
4009027f4a0Smrg		basic_machine=fx80-alliant
4019027f4a0Smrg		;;
4029027f4a0Smrg	altos | altos3068)
4039027f4a0Smrg		basic_machine=m68k-altos
4049027f4a0Smrg		;;
4059027f4a0Smrg	am29k)
4069027f4a0Smrg		basic_machine=a29k-none
4079027f4a0Smrg		os=-bsd
4089027f4a0Smrg		;;
4099027f4a0Smrg	amd64)
4109027f4a0Smrg		basic_machine=x86_64-pc
4119027f4a0Smrg		;;
4129027f4a0Smrg	amd64-*)
4139027f4a0Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
4149027f4a0Smrg		;;
4159027f4a0Smrg	amdahl)
4169027f4a0Smrg		basic_machine=580-amdahl
4179027f4a0Smrg		os=-sysv
4189027f4a0Smrg		;;
4199027f4a0Smrg	amiga | amiga-*)
4209027f4a0Smrg		basic_machine=m68k-unknown
4219027f4a0Smrg		;;
4229027f4a0Smrg	amigaos | amigados)
4239027f4a0Smrg		basic_machine=m68k-unknown
4249027f4a0Smrg		os=-amigaos
4259027f4a0Smrg		;;
4269027f4a0Smrg	amigaunix | amix)
4279027f4a0Smrg		basic_machine=m68k-unknown
4289027f4a0Smrg		os=-sysv4
4299027f4a0Smrg		;;
4309027f4a0Smrg	apollo68)
4319027f4a0Smrg		basic_machine=m68k-apollo
4329027f4a0Smrg		os=-sysv
4339027f4a0Smrg		;;
4349027f4a0Smrg	apollo68bsd)
4359027f4a0Smrg		basic_machine=m68k-apollo
4369027f4a0Smrg		os=-bsd
4379027f4a0Smrg		;;
4389027f4a0Smrg	aux)
4399027f4a0Smrg		basic_machine=m68k-apple
4409027f4a0Smrg		os=-aux
4419027f4a0Smrg		;;
4429027f4a0Smrg	balance)
4439027f4a0Smrg		basic_machine=ns32k-sequent
4449027f4a0Smrg		os=-dynix
4459027f4a0Smrg		;;
4469027f4a0Smrg	c90)
4479027f4a0Smrg		basic_machine=c90-cray
4489027f4a0Smrg		os=-unicos
4499027f4a0Smrg		;;
4509027f4a0Smrg	convex-c1)
4519027f4a0Smrg		basic_machine=c1-convex
4529027f4a0Smrg		os=-bsd
4539027f4a0Smrg		;;
4549027f4a0Smrg	convex-c2)
4559027f4a0Smrg		basic_machine=c2-convex
4569027f4a0Smrg		os=-bsd
4579027f4a0Smrg		;;
4589027f4a0Smrg	convex-c32)
4599027f4a0Smrg		basic_machine=c32-convex
4609027f4a0Smrg		os=-bsd
4619027f4a0Smrg		;;
4629027f4a0Smrg	convex-c34)
4639027f4a0Smrg		basic_machine=c34-convex
4649027f4a0Smrg		os=-bsd
4659027f4a0Smrg		;;
4669027f4a0Smrg	convex-c38)
4679027f4a0Smrg		basic_machine=c38-convex
4689027f4a0Smrg		os=-bsd
4699027f4a0Smrg		;;
4709027f4a0Smrg	cray | j90)
4719027f4a0Smrg		basic_machine=j90-cray
4729027f4a0Smrg		os=-unicos
4739027f4a0Smrg		;;
4749027f4a0Smrg	craynv)
4759027f4a0Smrg		basic_machine=craynv-cray
4769027f4a0Smrg		os=-unicosmp
4779027f4a0Smrg		;;
4789027f4a0Smrg	cr16c)
4799027f4a0Smrg		basic_machine=cr16c-unknown
4809027f4a0Smrg		os=-elf
4819027f4a0Smrg		;;
4829027f4a0Smrg	crds | unos)
4839027f4a0Smrg		basic_machine=m68k-crds
4849027f4a0Smrg		;;
4859027f4a0Smrg	crisv32 | crisv32-* | etraxfs*)
4869027f4a0Smrg		basic_machine=crisv32-axis
4879027f4a0Smrg		;;
4889027f4a0Smrg	cris | cris-* | etrax*)
4899027f4a0Smrg		basic_machine=cris-axis
4909027f4a0Smrg		;;
4919027f4a0Smrg	crx)
4929027f4a0Smrg		basic_machine=crx-unknown
4939027f4a0Smrg		os=-elf
4949027f4a0Smrg		;;
4959027f4a0Smrg	da30 | da30-*)
4969027f4a0Smrg		basic_machine=m68k-da30
4979027f4a0Smrg		;;
4989027f4a0Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
4999027f4a0Smrg		basic_machine=mips-dec
5009027f4a0Smrg		;;
5019027f4a0Smrg	decsystem10* | dec10*)
5029027f4a0Smrg		basic_machine=pdp10-dec
5039027f4a0Smrg		os=-tops10
5049027f4a0Smrg		;;
5059027f4a0Smrg	decsystem20* | dec20*)
5069027f4a0Smrg		basic_machine=pdp10-dec
5079027f4a0Smrg		os=-tops20
5089027f4a0Smrg		;;
5099027f4a0Smrg	delta | 3300 | motorola-3300 | motorola-delta \
5109027f4a0Smrg	      | 3300-motorola | delta-motorola)
5119027f4a0Smrg		basic_machine=m68k-motorola
5129027f4a0Smrg		;;
5139027f4a0Smrg	delta88)
5149027f4a0Smrg		basic_machine=m88k-motorola
5159027f4a0Smrg		os=-sysv3
5169027f4a0Smrg		;;
5179027f4a0Smrg	djgpp)
5189027f4a0Smrg		basic_machine=i586-pc
5199027f4a0Smrg		os=-msdosdjgpp
5209027f4a0Smrg		;;
5219027f4a0Smrg	dpx20 | dpx20-*)
5229027f4a0Smrg		basic_machine=rs6000-bull
5239027f4a0Smrg		os=-bosx
5249027f4a0Smrg		;;
5259027f4a0Smrg	dpx2* | dpx2*-bull)
5269027f4a0Smrg		basic_machine=m68k-bull
5279027f4a0Smrg		os=-sysv3
5289027f4a0Smrg		;;
5299027f4a0Smrg	ebmon29k)
5309027f4a0Smrg		basic_machine=a29k-amd
5319027f4a0Smrg		os=-ebmon
5329027f4a0Smrg		;;
5339027f4a0Smrg	elxsi)
5349027f4a0Smrg		basic_machine=elxsi-elxsi
5359027f4a0Smrg		os=-bsd
5369027f4a0Smrg		;;
5379027f4a0Smrg	encore | umax | mmax)
5389027f4a0Smrg		basic_machine=ns32k-encore
5399027f4a0Smrg		;;
5409027f4a0Smrg	es1800 | OSE68k | ose68k | ose | OSE)
5419027f4a0Smrg		basic_machine=m68k-ericsson
5429027f4a0Smrg		os=-ose
5439027f4a0Smrg		;;
5449027f4a0Smrg	fx2800)
5459027f4a0Smrg		basic_machine=i860-alliant
5469027f4a0Smrg		;;
5479027f4a0Smrg	genix)
5489027f4a0Smrg		basic_machine=ns32k-ns
5499027f4a0Smrg		;;
5509027f4a0Smrg	gmicro)
5519027f4a0Smrg		basic_machine=tron-gmicro
5529027f4a0Smrg		os=-sysv
5539027f4a0Smrg		;;
5549027f4a0Smrg	go32)
5559027f4a0Smrg		basic_machine=i386-pc
5569027f4a0Smrg		os=-go32
5579027f4a0Smrg		;;
5589027f4a0Smrg	h3050r* | hiux*)
5599027f4a0Smrg		basic_machine=hppa1.1-hitachi
5609027f4a0Smrg		os=-hiuxwe2
5619027f4a0Smrg		;;
5629027f4a0Smrg	h8300hms)
5639027f4a0Smrg		basic_machine=h8300-hitachi
5649027f4a0Smrg		os=-hms
5659027f4a0Smrg		;;
5669027f4a0Smrg	h8300xray)
5679027f4a0Smrg		basic_machine=h8300-hitachi
5689027f4a0Smrg		os=-xray
5699027f4a0Smrg		;;
5709027f4a0Smrg	h8500hms)
5719027f4a0Smrg		basic_machine=h8500-hitachi
5729027f4a0Smrg		os=-hms
5739027f4a0Smrg		;;
5749027f4a0Smrg	harris)
5759027f4a0Smrg		basic_machine=m88k-harris
5769027f4a0Smrg		os=-sysv3
5779027f4a0Smrg		;;
5789027f4a0Smrg	hp300-*)
5799027f4a0Smrg		basic_machine=m68k-hp
5809027f4a0Smrg		;;
5819027f4a0Smrg	hp300bsd)
5829027f4a0Smrg		basic_machine=m68k-hp
5839027f4a0Smrg		os=-bsd
5849027f4a0Smrg		;;
5859027f4a0Smrg	hp300hpux)
5869027f4a0Smrg		basic_machine=m68k-hp
5879027f4a0Smrg		os=-hpux
5889027f4a0Smrg		;;
5899027f4a0Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
5909027f4a0Smrg		basic_machine=hppa1.0-hp
5919027f4a0Smrg		;;
5929027f4a0Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
5939027f4a0Smrg		basic_machine=m68000-hp
5949027f4a0Smrg		;;
5959027f4a0Smrg	hp9k3[2-9][0-9])
5969027f4a0Smrg		basic_machine=m68k-hp
5979027f4a0Smrg		;;
5989027f4a0Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
5999027f4a0Smrg		basic_machine=hppa1.0-hp
6009027f4a0Smrg		;;
6019027f4a0Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
6029027f4a0Smrg		basic_machine=hppa1.1-hp
6039027f4a0Smrg		;;
6049027f4a0Smrg	hp9k78[0-9] | hp78[0-9])
6059027f4a0Smrg		# FIXME: really hppa2.0-hp
6069027f4a0Smrg		basic_machine=hppa1.1-hp
6079027f4a0Smrg		;;
6089027f4a0Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
6099027f4a0Smrg		# FIXME: really hppa2.0-hp
6109027f4a0Smrg		basic_machine=hppa1.1-hp
6119027f4a0Smrg		;;
6129027f4a0Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
6139027f4a0Smrg		basic_machine=hppa1.1-hp
6149027f4a0Smrg		;;
6159027f4a0Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
6169027f4a0Smrg		basic_machine=hppa1.0-hp
6179027f4a0Smrg		;;
6189027f4a0Smrg	hppa-next)
6199027f4a0Smrg		os=-nextstep3
6209027f4a0Smrg		;;
6219027f4a0Smrg	hppaosf)
6229027f4a0Smrg		basic_machine=hppa1.1-hp
6239027f4a0Smrg		os=-osf
6249027f4a0Smrg		;;
6259027f4a0Smrg	hppro)
6269027f4a0Smrg		basic_machine=hppa1.1-hp
6279027f4a0Smrg		os=-proelf
6289027f4a0Smrg		;;
6299027f4a0Smrg	i370-ibm* | ibm*)
6309027f4a0Smrg		basic_machine=i370-ibm
6319027f4a0Smrg		;;
6329027f4a0Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
6339027f4a0Smrg	i*86v32)
6349027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6359027f4a0Smrg		os=-sysv32
6369027f4a0Smrg		;;
6379027f4a0Smrg	i*86v4*)
6389027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6399027f4a0Smrg		os=-sysv4
6409027f4a0Smrg		;;
6419027f4a0Smrg	i*86v)
6429027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6439027f4a0Smrg		os=-sysv
6449027f4a0Smrg		;;
6459027f4a0Smrg	i*86sol2)
6469027f4a0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6479027f4a0Smrg		os=-solaris2
6489027f4a0Smrg		;;
6499027f4a0Smrg	i386mach)
6509027f4a0Smrg		basic_machine=i386-mach
6519027f4a0Smrg		os=-mach
6529027f4a0Smrg		;;
6539027f4a0Smrg	i386-vsta | vsta)
6549027f4a0Smrg		basic_machine=i386-unknown
6559027f4a0Smrg		os=-vsta
6569027f4a0Smrg		;;
6579027f4a0Smrg	iris | iris4d)
6589027f4a0Smrg		basic_machine=mips-sgi
6599027f4a0Smrg		case $os in
6609027f4a0Smrg		    -irix*)
6619027f4a0Smrg			;;
6629027f4a0Smrg		    *)
6639027f4a0Smrg			os=-irix4
6649027f4a0Smrg			;;
6659027f4a0Smrg		esac
6669027f4a0Smrg		;;
6679027f4a0Smrg	isi68 | isi)
6689027f4a0Smrg		basic_machine=m68k-isi
6699027f4a0Smrg		os=-sysv
6709027f4a0Smrg		;;
6719027f4a0Smrg	m88k-omron*)
6729027f4a0Smrg		basic_machine=m88k-omron
6739027f4a0Smrg		;;
6749027f4a0Smrg	magnum | m3230)
6759027f4a0Smrg		basic_machine=mips-mips
6769027f4a0Smrg		os=-sysv
6779027f4a0Smrg		;;
6789027f4a0Smrg	merlin)
6799027f4a0Smrg		basic_machine=ns32k-utek
6809027f4a0Smrg		os=-sysv
6819027f4a0Smrg		;;
6829027f4a0Smrg	mingw32)
6839027f4a0Smrg		basic_machine=i386-pc
6849027f4a0Smrg		os=-mingw32
6859027f4a0Smrg		;;
6869027f4a0Smrg	miniframe)
6879027f4a0Smrg		basic_machine=m68000-convergent
6889027f4a0Smrg		;;
6899027f4a0Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
6909027f4a0Smrg		basic_machine=m68k-atari
6919027f4a0Smrg		os=-mint
6929027f4a0Smrg		;;
6939027f4a0Smrg	mips3*-*)
6949027f4a0Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
6959027f4a0Smrg		;;
6969027f4a0Smrg	mips3*)
6979027f4a0Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
6989027f4a0Smrg		;;
6999027f4a0Smrg	monitor)
7009027f4a0Smrg		basic_machine=m68k-rom68k
7019027f4a0Smrg		os=-coff
7029027f4a0Smrg		;;
7039027f4a0Smrg	morphos)
7049027f4a0Smrg		basic_machine=powerpc-unknown
7059027f4a0Smrg		os=-morphos
7069027f4a0Smrg		;;
7079027f4a0Smrg	msdos)
7089027f4a0Smrg		basic_machine=i386-pc
7099027f4a0Smrg		os=-msdos
7109027f4a0Smrg		;;
7119027f4a0Smrg	ms1-*)
7129027f4a0Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
7139027f4a0Smrg		;;
7149027f4a0Smrg	mvs)
7159027f4a0Smrg		basic_machine=i370-ibm
7169027f4a0Smrg		os=-mvs
7179027f4a0Smrg		;;
7189027f4a0Smrg	ncr3000)
7199027f4a0Smrg		basic_machine=i486-ncr
7209027f4a0Smrg		os=-sysv4
7219027f4a0Smrg		;;
7229027f4a0Smrg	netbsd386)
7239027f4a0Smrg		basic_machine=i386-unknown
7249027f4a0Smrg		os=-netbsd
7259027f4a0Smrg		;;
7269027f4a0Smrg	netwinder)
7279027f4a0Smrg		basic_machine=armv4l-rebel
7289027f4a0Smrg		os=-linux
7299027f4a0Smrg		;;
7309027f4a0Smrg	news | news700 | news800 | news900)
7319027f4a0Smrg		basic_machine=m68k-sony
7329027f4a0Smrg		os=-newsos
7339027f4a0Smrg		;;
7349027f4a0Smrg	news1000)
7359027f4a0Smrg		basic_machine=m68030-sony
7369027f4a0Smrg		os=-newsos
7379027f4a0Smrg		;;
7389027f4a0Smrg	news-3600 | risc-news)
7399027f4a0Smrg		basic_machine=mips-sony
7409027f4a0Smrg		os=-newsos
7419027f4a0Smrg		;;
7429027f4a0Smrg	necv70)
7439027f4a0Smrg		basic_machine=v70-nec
7449027f4a0Smrg		os=-sysv
7459027f4a0Smrg		;;
7469027f4a0Smrg	next | m*-next )
7479027f4a0Smrg		basic_machine=m68k-next
7489027f4a0Smrg		case $os in
7499027f4a0Smrg		    -nextstep* )
7509027f4a0Smrg			;;
7519027f4a0Smrg		    -ns2*)
7529027f4a0Smrg		      os=-nextstep2
7539027f4a0Smrg			;;
7549027f4a0Smrg		    *)
7559027f4a0Smrg		      os=-nextstep3
7569027f4a0Smrg			;;
7579027f4a0Smrg		esac
7589027f4a0Smrg		;;
7599027f4a0Smrg	nh3000)
7609027f4a0Smrg		basic_machine=m68k-harris
7619027f4a0Smrg		os=-cxux
7629027f4a0Smrg		;;
7639027f4a0Smrg	nh[45]000)
7649027f4a0Smrg		basic_machine=m88k-harris
7659027f4a0Smrg		os=-cxux
7669027f4a0Smrg		;;
7679027f4a0Smrg	nindy960)
7689027f4a0Smrg		basic_machine=i960-intel
7699027f4a0Smrg		os=-nindy
7709027f4a0Smrg		;;
7719027f4a0Smrg	mon960)
7729027f4a0Smrg		basic_machine=i960-intel
7739027f4a0Smrg		os=-mon960
7749027f4a0Smrg		;;
7759027f4a0Smrg	nonstopux)
7769027f4a0Smrg		basic_machine=mips-compaq
7779027f4a0Smrg		os=-nonstopux
7789027f4a0Smrg		;;
7799027f4a0Smrg	np1)
7809027f4a0Smrg		basic_machine=np1-gould
7819027f4a0Smrg		;;
7829027f4a0Smrg	nsr-tandem)
7839027f4a0Smrg		basic_machine=nsr-tandem
7849027f4a0Smrg		;;
7859027f4a0Smrg	op50n-* | op60c-*)
7869027f4a0Smrg		basic_machine=hppa1.1-oki
7879027f4a0Smrg		os=-proelf
7889027f4a0Smrg		;;
7899027f4a0Smrg	openrisc | openrisc-*)
7909027f4a0Smrg		basic_machine=or32-unknown
7919027f4a0Smrg		;;
7929027f4a0Smrg	os400)
7939027f4a0Smrg		basic_machine=powerpc-ibm
7949027f4a0Smrg		os=-os400
7959027f4a0Smrg		;;
7969027f4a0Smrg	OSE68000 | ose68000)
7979027f4a0Smrg		basic_machine=m68000-ericsson
7989027f4a0Smrg		os=-ose
7999027f4a0Smrg		;;
8009027f4a0Smrg	os68k)
8019027f4a0Smrg		basic_machine=m68k-none
8029027f4a0Smrg		os=-os68k
8039027f4a0Smrg		;;
8049027f4a0Smrg	pa-hitachi)
8059027f4a0Smrg		basic_machine=hppa1.1-hitachi
8069027f4a0Smrg		os=-hiuxwe2
8079027f4a0Smrg		;;
8089027f4a0Smrg	paragon)
8099027f4a0Smrg		basic_machine=i860-intel
8109027f4a0Smrg		os=-osf
8119027f4a0Smrg		;;
8129027f4a0Smrg	pbd)
8139027f4a0Smrg		basic_machine=sparc-tti
8149027f4a0Smrg		;;
8159027f4a0Smrg	pbb)
8169027f4a0Smrg		basic_machine=m68k-tti
8179027f4a0Smrg		;;
8189027f4a0Smrg	pc532 | pc532-*)
8199027f4a0Smrg		basic_machine=ns32k-pc532
8209027f4a0Smrg		;;
8219027f4a0Smrg	pc98)
8229027f4a0Smrg		basic_machine=i386-pc
8239027f4a0Smrg		;;
8249027f4a0Smrg	pc98-*)
8259027f4a0Smrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
8269027f4a0Smrg		;;
8279027f4a0Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
8289027f4a0Smrg		basic_machine=i586-pc
8299027f4a0Smrg		;;
8309027f4a0Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
8319027f4a0Smrg		basic_machine=i686-pc
8329027f4a0Smrg		;;
8339027f4a0Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
8349027f4a0Smrg		basic_machine=i686-pc
8359027f4a0Smrg		;;
8369027f4a0Smrg	pentium4)
8379027f4a0Smrg		basic_machine=i786-pc
8389027f4a0Smrg		;;
8399027f4a0Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
8409027f4a0Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
8419027f4a0Smrg		;;
8429027f4a0Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
8439027f4a0Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8449027f4a0Smrg		;;
8459027f4a0Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
8469027f4a0Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8479027f4a0Smrg		;;
8489027f4a0Smrg	pentium4-*)
8499027f4a0Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
8509027f4a0Smrg		;;
8519027f4a0Smrg	pn)
8529027f4a0Smrg		basic_machine=pn-gould
8539027f4a0Smrg		;;
8549027f4a0Smrg	power)	basic_machine=power-ibm
8559027f4a0Smrg		;;
8569027f4a0Smrg	ppc)	basic_machine=powerpc-unknown
8579027f4a0Smrg		;;
8589027f4a0Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
8599027f4a0Smrg		;;
8609027f4a0Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
8619027f4a0Smrg		basic_machine=powerpcle-unknown
8629027f4a0Smrg		;;
8639027f4a0Smrg	ppcle-* | powerpclittle-*)
8649027f4a0Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
8659027f4a0Smrg		;;
8669027f4a0Smrg	ppc64)	basic_machine=powerpc64-unknown
8679027f4a0Smrg		;;
8689027f4a0Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
8699027f4a0Smrg		;;
8709027f4a0Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
8719027f4a0Smrg		basic_machine=powerpc64le-unknown
8729027f4a0Smrg		;;
8739027f4a0Smrg	ppc64le-* | powerpc64little-*)
8749027f4a0Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
8759027f4a0Smrg		;;
8769027f4a0Smrg	ps2)
8779027f4a0Smrg		basic_machine=i386-ibm
8789027f4a0Smrg		;;
8799027f4a0Smrg	pw32)
8809027f4a0Smrg		basic_machine=i586-unknown
8819027f4a0Smrg		os=-pw32
8829027f4a0Smrg		;;
8839027f4a0Smrg	rdos)
8849027f4a0Smrg		basic_machine=i386-pc
8859027f4a0Smrg		os=-rdos
8869027f4a0Smrg		;;
8879027f4a0Smrg	rom68k)
8889027f4a0Smrg		basic_machine=m68k-rom68k
8899027f4a0Smrg		os=-coff
8909027f4a0Smrg		;;
8919027f4a0Smrg	rm[46]00)
8929027f4a0Smrg		basic_machine=mips-siemens
8939027f4a0Smrg		;;
8949027f4a0Smrg	rtpc | rtpc-*)
8959027f4a0Smrg		basic_machine=romp-ibm
8969027f4a0Smrg		;;
8979027f4a0Smrg	s390 | s390-*)
8989027f4a0Smrg		basic_machine=s390-ibm
8999027f4a0Smrg		;;
9009027f4a0Smrg	s390x | s390x-*)
9019027f4a0Smrg		basic_machine=s390x-ibm
9029027f4a0Smrg		;;
9039027f4a0Smrg	sa29200)
9049027f4a0Smrg		basic_machine=a29k-amd
9059027f4a0Smrg		os=-udi
9069027f4a0Smrg		;;
9079027f4a0Smrg	sb1)
9089027f4a0Smrg		basic_machine=mipsisa64sb1-unknown
9099027f4a0Smrg		;;
9109027f4a0Smrg	sb1el)
9119027f4a0Smrg		basic_machine=mipsisa64sb1el-unknown
9129027f4a0Smrg		;;
9139027f4a0Smrg	sde)
9149027f4a0Smrg		basic_machine=mipsisa32-sde
9159027f4a0Smrg		os=-elf
9169027f4a0Smrg		;;
9179027f4a0Smrg	sei)
9189027f4a0Smrg		basic_machine=mips-sei
9199027f4a0Smrg		os=-seiux
9209027f4a0Smrg		;;
9219027f4a0Smrg	sequent)
9229027f4a0Smrg		basic_machine=i386-sequent
9239027f4a0Smrg		;;
9249027f4a0Smrg	sh)
9259027f4a0Smrg		basic_machine=sh-hitachi
9269027f4a0Smrg		os=-hms
9279027f4a0Smrg		;;
9289027f4a0Smrg	sh5el)
9299027f4a0Smrg		basic_machine=sh5le-unknown
9309027f4a0Smrg		;;
9319027f4a0Smrg	sh64)
9329027f4a0Smrg		basic_machine=sh64-unknown
9339027f4a0Smrg		;;
9349027f4a0Smrg	sparclite-wrs | simso-wrs)
9359027f4a0Smrg		basic_machine=sparclite-wrs
9369027f4a0Smrg		os=-vxworks
9379027f4a0Smrg		;;
9389027f4a0Smrg	sps7)
9399027f4a0Smrg		basic_machine=m68k-bull
9409027f4a0Smrg		os=-sysv2
9419027f4a0Smrg		;;
9429027f4a0Smrg	spur)
9439027f4a0Smrg		basic_machine=spur-unknown
9449027f4a0Smrg		;;
9459027f4a0Smrg	st2000)
9469027f4a0Smrg		basic_machine=m68k-tandem
9479027f4a0Smrg		;;
9489027f4a0Smrg	stratus)
9499027f4a0Smrg		basic_machine=i860-stratus
9509027f4a0Smrg		os=-sysv4
9519027f4a0Smrg		;;
9529027f4a0Smrg	sun2)
9539027f4a0Smrg		basic_machine=m68000-sun
9549027f4a0Smrg		;;
9559027f4a0Smrg	sun2os3)
9569027f4a0Smrg		basic_machine=m68000-sun
9579027f4a0Smrg		os=-sunos3
9589027f4a0Smrg		;;
9599027f4a0Smrg	sun2os4)
9609027f4a0Smrg		basic_machine=m68000-sun
9619027f4a0Smrg		os=-sunos4
9629027f4a0Smrg		;;
9639027f4a0Smrg	sun3os3)
9649027f4a0Smrg		basic_machine=m68k-sun
9659027f4a0Smrg		os=-sunos3
9669027f4a0Smrg		;;
9679027f4a0Smrg	sun3os4)
9689027f4a0Smrg		basic_machine=m68k-sun
9699027f4a0Smrg		os=-sunos4
9709027f4a0Smrg		;;
9719027f4a0Smrg	sun4os3)
9729027f4a0Smrg		basic_machine=sparc-sun
9739027f4a0Smrg		os=-sunos3
9749027f4a0Smrg		;;
9759027f4a0Smrg	sun4os4)
9769027f4a0Smrg		basic_machine=sparc-sun
9779027f4a0Smrg		os=-sunos4
9789027f4a0Smrg		;;
9799027f4a0Smrg	sun4sol2)
9809027f4a0Smrg		basic_machine=sparc-sun
9819027f4a0Smrg		os=-solaris2
9829027f4a0Smrg		;;
9839027f4a0Smrg	sun3 | sun3-*)
9849027f4a0Smrg		basic_machine=m68k-sun
9859027f4a0Smrg		;;
9869027f4a0Smrg	sun4)
9879027f4a0Smrg		basic_machine=sparc-sun
9889027f4a0Smrg		;;
9899027f4a0Smrg	sun386 | sun386i | roadrunner)
9909027f4a0Smrg		basic_machine=i386-sun
9919027f4a0Smrg		;;
9929027f4a0Smrg	sv1)
9939027f4a0Smrg		basic_machine=sv1-cray
9949027f4a0Smrg		os=-unicos
9959027f4a0Smrg		;;
9969027f4a0Smrg	symmetry)
9979027f4a0Smrg		basic_machine=i386-sequent
9989027f4a0Smrg		os=-dynix
9999027f4a0Smrg		;;
10009027f4a0Smrg	t3e)
10019027f4a0Smrg		basic_machine=alphaev5-cray
10029027f4a0Smrg		os=-unicos
10039027f4a0Smrg		;;
10049027f4a0Smrg	t90)
10059027f4a0Smrg		basic_machine=t90-cray
10069027f4a0Smrg		os=-unicos
10079027f4a0Smrg		;;
10089027f4a0Smrg	tic54x | c54x*)
10099027f4a0Smrg		basic_machine=tic54x-unknown
10109027f4a0Smrg		os=-coff
10119027f4a0Smrg		;;
10129027f4a0Smrg	tic55x | c55x*)
10139027f4a0Smrg		basic_machine=tic55x-unknown
10149027f4a0Smrg		os=-coff
10159027f4a0Smrg		;;
10169027f4a0Smrg	tic6x | c6x*)
10179027f4a0Smrg		basic_machine=tic6x-unknown
10189027f4a0Smrg		os=-coff
10199027f4a0Smrg		;;
10209027f4a0Smrg	tx39)
10219027f4a0Smrg		basic_machine=mipstx39-unknown
10229027f4a0Smrg		;;
10239027f4a0Smrg	tx39el)
10249027f4a0Smrg		basic_machine=mipstx39el-unknown
10259027f4a0Smrg		;;
10269027f4a0Smrg	toad1)
10279027f4a0Smrg		basic_machine=pdp10-xkl
10289027f4a0Smrg		os=-tops20
10299027f4a0Smrg		;;
10309027f4a0Smrg	tower | tower-32)
10319027f4a0Smrg		basic_machine=m68k-ncr
10329027f4a0Smrg		;;
10339027f4a0Smrg	tpf)
10349027f4a0Smrg		basic_machine=s390x-ibm
10359027f4a0Smrg		os=-tpf
10369027f4a0Smrg		;;
10379027f4a0Smrg	udi29k)
10389027f4a0Smrg		basic_machine=a29k-amd
10399027f4a0Smrg		os=-udi
10409027f4a0Smrg		;;
10419027f4a0Smrg	ultra3)
10429027f4a0Smrg		basic_machine=a29k-nyu
10439027f4a0Smrg		os=-sym1
10449027f4a0Smrg		;;
10459027f4a0Smrg	v810 | necv810)
10469027f4a0Smrg		basic_machine=v810-nec
10479027f4a0Smrg		os=-none
10489027f4a0Smrg		;;
10499027f4a0Smrg	vaxv)
10509027f4a0Smrg		basic_machine=vax-dec
10519027f4a0Smrg		os=-sysv
10529027f4a0Smrg		;;
10539027f4a0Smrg	vms)
10549027f4a0Smrg		basic_machine=vax-dec
10559027f4a0Smrg		os=-vms
10569027f4a0Smrg		;;
10579027f4a0Smrg	vpp*|vx|vx-*)
10589027f4a0Smrg		basic_machine=f301-fujitsu
10599027f4a0Smrg		;;
10609027f4a0Smrg	vxworks960)
10619027f4a0Smrg		basic_machine=i960-wrs
10629027f4a0Smrg		os=-vxworks
10639027f4a0Smrg		;;
10649027f4a0Smrg	vxworks68)
10659027f4a0Smrg		basic_machine=m68k-wrs
10669027f4a0Smrg		os=-vxworks
10679027f4a0Smrg		;;
10689027f4a0Smrg	vxworks29k)
10699027f4a0Smrg		basic_machine=a29k-wrs
10709027f4a0Smrg		os=-vxworks
10719027f4a0Smrg		;;
10729027f4a0Smrg	w65*)
10739027f4a0Smrg		basic_machine=w65-wdc
10749027f4a0Smrg		os=-none
10759027f4a0Smrg		;;
10769027f4a0Smrg	w89k-*)
10779027f4a0Smrg		basic_machine=hppa1.1-winbond
10789027f4a0Smrg		os=-proelf
10799027f4a0Smrg		;;
10809027f4a0Smrg	xbox)
10819027f4a0Smrg		basic_machine=i686-pc
10829027f4a0Smrg		os=-mingw32
10839027f4a0Smrg		;;
10849027f4a0Smrg	xps | xps100)
10859027f4a0Smrg		basic_machine=xps100-honeywell
10869027f4a0Smrg		;;
10879027f4a0Smrg	ymp)
10889027f4a0Smrg		basic_machine=ymp-cray
10899027f4a0Smrg		os=-unicos
10909027f4a0Smrg		;;
10919027f4a0Smrg	z8k-*-coff)
10929027f4a0Smrg		basic_machine=z8k-unknown
10939027f4a0Smrg		os=-sim
10949027f4a0Smrg		;;
10959027f4a0Smrg	none)
10969027f4a0Smrg		basic_machine=none-none
10979027f4a0Smrg		os=-none
10989027f4a0Smrg		;;
10999027f4a0Smrg
11009027f4a0Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
11019027f4a0Smrg# some cases the only manufacturer, in others, it is the most popular.
11029027f4a0Smrg	w89k)
11039027f4a0Smrg		basic_machine=hppa1.1-winbond
11049027f4a0Smrg		;;
11059027f4a0Smrg	op50n)
11069027f4a0Smrg		basic_machine=hppa1.1-oki
11079027f4a0Smrg		;;
11089027f4a0Smrg	op60c)
11099027f4a0Smrg		basic_machine=hppa1.1-oki
11109027f4a0Smrg		;;
11119027f4a0Smrg	romp)
11129027f4a0Smrg		basic_machine=romp-ibm
11139027f4a0Smrg		;;
11149027f4a0Smrg	mmix)
11159027f4a0Smrg		basic_machine=mmix-knuth
11169027f4a0Smrg		;;
11179027f4a0Smrg	rs6000)
11189027f4a0Smrg		basic_machine=rs6000-ibm
11199027f4a0Smrg		;;
11209027f4a0Smrg	vax)
11219027f4a0Smrg		basic_machine=vax-dec
11229027f4a0Smrg		;;
11239027f4a0Smrg	pdp10)
11249027f4a0Smrg		# there are many clones, so DEC is not a safe bet
11259027f4a0Smrg		basic_machine=pdp10-unknown
11269027f4a0Smrg		;;
11279027f4a0Smrg	pdp11)
11289027f4a0Smrg		basic_machine=pdp11-dec
11299027f4a0Smrg		;;
11309027f4a0Smrg	we32k)
11319027f4a0Smrg		basic_machine=we32k-att
11329027f4a0Smrg		;;
11339027f4a0Smrg	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
11349027f4a0Smrg		basic_machine=sh-unknown
11359027f4a0Smrg		;;
11369027f4a0Smrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
11379027f4a0Smrg		basic_machine=sparc-sun
11389027f4a0Smrg		;;
11399027f4a0Smrg	cydra)
11409027f4a0Smrg		basic_machine=cydra-cydrome
11419027f4a0Smrg		;;
11429027f4a0Smrg	orion)
11439027f4a0Smrg		basic_machine=orion-highlevel
11449027f4a0Smrg		;;
11459027f4a0Smrg	orion105)
11469027f4a0Smrg		basic_machine=clipper-highlevel
11479027f4a0Smrg		;;
11489027f4a0Smrg	mac | mpw | mac-mpw)
11499027f4a0Smrg		basic_machine=m68k-apple
11509027f4a0Smrg		;;
11519027f4a0Smrg	pmac | pmac-mpw)
11529027f4a0Smrg		basic_machine=powerpc-apple
11539027f4a0Smrg		;;
11549027f4a0Smrg	*-unknown)
11559027f4a0Smrg		# Make sure to match an already-canonicalized machine name.
11569027f4a0Smrg		;;
11579027f4a0Smrg	*)
11589027f4a0Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
11599027f4a0Smrg		exit 1
11609027f4a0Smrg		;;
11619027f4a0Smrgesac
11629027f4a0Smrg
11639027f4a0Smrg# Here we canonicalize certain aliases for manufacturers.
11649027f4a0Smrgcase $basic_machine in
11659027f4a0Smrg	*-digital*)
11669027f4a0Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
11679027f4a0Smrg		;;
11689027f4a0Smrg	*-commodore*)
11699027f4a0Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
11709027f4a0Smrg		;;
11719027f4a0Smrg	*)
11729027f4a0Smrg		;;
11739027f4a0Smrgesac
11749027f4a0Smrg
11759027f4a0Smrg# Decode manufacturer-specific aliases for certain operating systems.
11769027f4a0Smrg
11779027f4a0Smrgif [ x"$os" != x"" ]
11789027f4a0Smrgthen
11799027f4a0Smrgcase $os in
11809027f4a0Smrg        # First match some system type aliases
11819027f4a0Smrg        # that might get confused with valid system types.
11829027f4a0Smrg	# -solaris* is a basic system type, with this one exception.
11839027f4a0Smrg	-solaris1 | -solaris1.*)
11849027f4a0Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
11859027f4a0Smrg		;;
11869027f4a0Smrg	-solaris)
11879027f4a0Smrg		os=-solaris2
11889027f4a0Smrg		;;
11899027f4a0Smrg	-svr4*)
11909027f4a0Smrg		os=-sysv4
11919027f4a0Smrg		;;
11929027f4a0Smrg	-unixware*)
11939027f4a0Smrg		os=-sysv4.2uw
11949027f4a0Smrg		;;
11959027f4a0Smrg	-gnu/linux*)
11969027f4a0Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
11979027f4a0Smrg		;;
11989027f4a0Smrg	# First accept the basic system types.
11999027f4a0Smrg	# The portable systems comes first.
12009027f4a0Smrg	# Each alternative MUST END IN A *, to match a version number.
12019027f4a0Smrg	# -sysv* is not here because it comes later, after sysvr4.
12029027f4a0Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
12039027f4a0Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
12049027f4a0Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
12059027f4a0Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
12069027f4a0Smrg	      | -aos* \
12079027f4a0Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
12089027f4a0Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
12099027f4a0Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
12109027f4a0Smrg	      | -openbsd* | -solidbsd* \
12119027f4a0Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
12129027f4a0Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
12139027f4a0Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
12149027f4a0Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
12159027f4a0Smrg	      | -chorusos* | -chorusrdb* \
12169027f4a0Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
12179027f4a0Smrg	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
12189027f4a0Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
12199027f4a0Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
12209027f4a0Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
12219027f4a0Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
12229027f4a0Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
12239027f4a0Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
12249027f4a0Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
12259027f4a0Smrg	      | -skyos* | -haiku* | -rdos* | -toppers*)
12269027f4a0Smrg	# Remember, each alternative MUST END IN *, to match a version number.
12279027f4a0Smrg		;;
12289027f4a0Smrg	-qnx*)
12299027f4a0Smrg		case $basic_machine in
12309027f4a0Smrg		    x86-* | i*86-*)
12319027f4a0Smrg			;;
12329027f4a0Smrg		    *)
12339027f4a0Smrg			os=-nto$os
12349027f4a0Smrg			;;
12359027f4a0Smrg		esac
12369027f4a0Smrg		;;
12379027f4a0Smrg	-nto-qnx*)
12389027f4a0Smrg		;;
12399027f4a0Smrg	-nto*)
12409027f4a0Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
12419027f4a0Smrg		;;
12429027f4a0Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
12439027f4a0Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
12449027f4a0Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
12459027f4a0Smrg		;;
12469027f4a0Smrg	-mac*)
12479027f4a0Smrg		os=`echo $os | sed -e 's|mac|macos|'`
12489027f4a0Smrg		;;
12499027f4a0Smrg	-linux-dietlibc)
12509027f4a0Smrg		os=-linux-dietlibc
12519027f4a0Smrg		;;
12529027f4a0Smrg	-linux*)
12539027f4a0Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
12549027f4a0Smrg		;;
12559027f4a0Smrg	-sunos5*)
12569027f4a0Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
12579027f4a0Smrg		;;
12589027f4a0Smrg	-sunos6*)
12599027f4a0Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
12609027f4a0Smrg		;;
12619027f4a0Smrg	-opened*)
12629027f4a0Smrg		os=-openedition
12639027f4a0Smrg		;;
12649027f4a0Smrg        -os400*)
12659027f4a0Smrg		os=-os400
12669027f4a0Smrg		;;
12679027f4a0Smrg	-wince*)
12689027f4a0Smrg		os=-wince
12699027f4a0Smrg		;;
12709027f4a0Smrg	-osfrose*)
12719027f4a0Smrg		os=-osfrose
12729027f4a0Smrg		;;
12739027f4a0Smrg	-osf*)
12749027f4a0Smrg		os=-osf
12759027f4a0Smrg		;;
12769027f4a0Smrg	-utek*)
12779027f4a0Smrg		os=-bsd
12789027f4a0Smrg		;;
12799027f4a0Smrg	-dynix*)
12809027f4a0Smrg		os=-bsd
12819027f4a0Smrg		;;
12829027f4a0Smrg	-acis*)
12839027f4a0Smrg		os=-aos
12849027f4a0Smrg		;;
12859027f4a0Smrg	-atheos*)
12869027f4a0Smrg		os=-atheos
12879027f4a0Smrg		;;
12889027f4a0Smrg	-syllable*)
12899027f4a0Smrg		os=-syllable
12909027f4a0Smrg		;;
12919027f4a0Smrg	-386bsd)
12929027f4a0Smrg		os=-bsd
12939027f4a0Smrg		;;
12949027f4a0Smrg	-ctix* | -uts*)
12959027f4a0Smrg		os=-sysv
12969027f4a0Smrg		;;
12979027f4a0Smrg	-nova*)
12989027f4a0Smrg		os=-rtmk-nova
12999027f4a0Smrg		;;
13009027f4a0Smrg	-ns2 )
13019027f4a0Smrg		os=-nextstep2
13029027f4a0Smrg		;;
13039027f4a0Smrg	-nsk*)
13049027f4a0Smrg		os=-nsk
13059027f4a0Smrg		;;
13069027f4a0Smrg	# Preserve the version number of sinix5.
13079027f4a0Smrg	-sinix5.*)
13089027f4a0Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
13099027f4a0Smrg		;;
13109027f4a0Smrg	-sinix*)
13119027f4a0Smrg		os=-sysv4
13129027f4a0Smrg		;;
13139027f4a0Smrg        -tpf*)
13149027f4a0Smrg		os=-tpf
13159027f4a0Smrg		;;
13169027f4a0Smrg	-triton*)
13179027f4a0Smrg		os=-sysv3
13189027f4a0Smrg		;;
13199027f4a0Smrg	-oss*)
13209027f4a0Smrg		os=-sysv3
13219027f4a0Smrg		;;
13229027f4a0Smrg	-svr4)
13239027f4a0Smrg		os=-sysv4
13249027f4a0Smrg		;;
13259027f4a0Smrg	-svr3)
13269027f4a0Smrg		os=-sysv3
13279027f4a0Smrg		;;
13289027f4a0Smrg	-sysvr4)
13299027f4a0Smrg		os=-sysv4
13309027f4a0Smrg		;;
13319027f4a0Smrg	# This must come after -sysvr4.
13329027f4a0Smrg	-sysv*)
13339027f4a0Smrg		;;
13349027f4a0Smrg	-ose*)
13359027f4a0Smrg		os=-ose
13369027f4a0Smrg		;;
13379027f4a0Smrg	-es1800*)
13389027f4a0Smrg		os=-ose
13399027f4a0Smrg		;;
13409027f4a0Smrg	-xenix)
13419027f4a0Smrg		os=-xenix
13429027f4a0Smrg		;;
13439027f4a0Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
13449027f4a0Smrg		os=-mint
13459027f4a0Smrg		;;
13469027f4a0Smrg	-aros*)
13479027f4a0Smrg		os=-aros
13489027f4a0Smrg		;;
13499027f4a0Smrg	-kaos*)
13509027f4a0Smrg		os=-kaos
13519027f4a0Smrg		;;
13529027f4a0Smrg	-zvmoe)
13539027f4a0Smrg		os=-zvmoe
13549027f4a0Smrg		;;
13559027f4a0Smrg	-none)
13569027f4a0Smrg		;;
13579027f4a0Smrg	*)
13589027f4a0Smrg		# Get rid of the `-' at the beginning of $os.
13599027f4a0Smrg		os=`echo $os | sed 's/[^-]*-//'`
13609027f4a0Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
13619027f4a0Smrg		exit 1
13629027f4a0Smrg		;;
13639027f4a0Smrgesac
13649027f4a0Smrgelse
13659027f4a0Smrg
13669027f4a0Smrg# Here we handle the default operating systems that come with various machines.
13679027f4a0Smrg# The value should be what the vendor currently ships out the door with their
13689027f4a0Smrg# machine or put another way, the most popular os provided with the machine.
13699027f4a0Smrg
13709027f4a0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
13719027f4a0Smrg# "-sun"), then you have to tell the case statement up towards the top
13729027f4a0Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
13739027f4a0Smrg# will signal an error saying that MANUFACTURER isn't an operating
13749027f4a0Smrg# system, and we'll never get to this point.
13759027f4a0Smrg
13769027f4a0Smrgcase $basic_machine in
13779027f4a0Smrg        score-*)
13789027f4a0Smrg		os=-elf
13799027f4a0Smrg		;;
13809027f4a0Smrg        spu-*)
13819027f4a0Smrg		os=-elf
13829027f4a0Smrg		;;
13839027f4a0Smrg	*-acorn)
13849027f4a0Smrg		os=-riscix1.2
13859027f4a0Smrg		;;
13869027f4a0Smrg	arm*-rebel)
13879027f4a0Smrg		os=-linux
13889027f4a0Smrg		;;
13899027f4a0Smrg	arm*-semi)
13909027f4a0Smrg		os=-aout
13919027f4a0Smrg		;;
13929027f4a0Smrg        c4x-* | tic4x-*)
13939027f4a0Smrg        	os=-coff
13949027f4a0Smrg		;;
13959027f4a0Smrg	# This must come before the *-dec entry.
13969027f4a0Smrg	pdp10-*)
13979027f4a0Smrg		os=-tops20
13989027f4a0Smrg		;;
13999027f4a0Smrg	pdp11-*)
14009027f4a0Smrg		os=-none
14019027f4a0Smrg		;;
14029027f4a0Smrg	*-dec | vax-*)
14039027f4a0Smrg		os=-ultrix4.2
14049027f4a0Smrg		;;
14059027f4a0Smrg	m68*-apollo)
14069027f4a0Smrg		os=-domain
14079027f4a0Smrg		;;
14089027f4a0Smrg	i386-sun)
14099027f4a0Smrg		os=-sunos4.0.2
14109027f4a0Smrg		;;
14119027f4a0Smrg	m68000-sun)
14129027f4a0Smrg		os=-sunos3
14139027f4a0Smrg		# This also exists in the configure program, but was not the
14149027f4a0Smrg		# default.
14159027f4a0Smrg		# os=-sunos4
14169027f4a0Smrg		;;
14179027f4a0Smrg	m68*-cisco)
14189027f4a0Smrg		os=-aout
14199027f4a0Smrg		;;
14209027f4a0Smrg	mips*-cisco)
14219027f4a0Smrg		os=-elf
14229027f4a0Smrg		;;
14239027f4a0Smrg	mips*-*)
14249027f4a0Smrg		os=-elf
14259027f4a0Smrg		;;
14269027f4a0Smrg	or32-*)
14279027f4a0Smrg		os=-coff
14289027f4a0Smrg		;;
14299027f4a0Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
14309027f4a0Smrg		os=-sysv3
14319027f4a0Smrg		;;
14329027f4a0Smrg	sparc-* | *-sun)
14339027f4a0Smrg		os=-sunos4.1.1
14349027f4a0Smrg		;;
14359027f4a0Smrg	*-be)
14369027f4a0Smrg		os=-beos
14379027f4a0Smrg		;;
14389027f4a0Smrg	*-haiku)
14399027f4a0Smrg		os=-haiku
14409027f4a0Smrg		;;
14419027f4a0Smrg	*-ibm)
14429027f4a0Smrg		os=-aix
14439027f4a0Smrg		;;
14449027f4a0Smrg    	*-knuth)
14459027f4a0Smrg		os=-mmixware
14469027f4a0Smrg		;;
14479027f4a0Smrg	*-wec)
14489027f4a0Smrg		os=-proelf
14499027f4a0Smrg		;;
14509027f4a0Smrg	*-winbond)
14519027f4a0Smrg		os=-proelf
14529027f4a0Smrg		;;
14539027f4a0Smrg	*-oki)
14549027f4a0Smrg		os=-proelf
14559027f4a0Smrg		;;
14569027f4a0Smrg	*-hp)
14579027f4a0Smrg		os=-hpux
14589027f4a0Smrg		;;
14599027f4a0Smrg	*-hitachi)
14609027f4a0Smrg		os=-hiux
14619027f4a0Smrg		;;
14629027f4a0Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
14639027f4a0Smrg		os=-sysv
14649027f4a0Smrg		;;
14659027f4a0Smrg	*-cbm)
14669027f4a0Smrg		os=-amigaos
14679027f4a0Smrg		;;
14689027f4a0Smrg	*-dg)
14699027f4a0Smrg		os=-dgux
14709027f4a0Smrg		;;
14719027f4a0Smrg	*-dolphin)
14729027f4a0Smrg		os=-sysv3
14739027f4a0Smrg		;;
14749027f4a0Smrg	m68k-ccur)
14759027f4a0Smrg		os=-rtu
14769027f4a0Smrg		;;
14779027f4a0Smrg	m88k-omron*)
14789027f4a0Smrg		os=-luna
14799027f4a0Smrg		;;
14809027f4a0Smrg	*-next )
14819027f4a0Smrg		os=-nextstep
14829027f4a0Smrg		;;
14839027f4a0Smrg	*-sequent)
14849027f4a0Smrg		os=-ptx
14859027f4a0Smrg		;;
14869027f4a0Smrg	*-crds)
14879027f4a0Smrg		os=-unos
14889027f4a0Smrg		;;
14899027f4a0Smrg	*-ns)
14909027f4a0Smrg		os=-genix
14919027f4a0Smrg		;;
14929027f4a0Smrg	i370-*)
14939027f4a0Smrg		os=-mvs
14949027f4a0Smrg		;;
14959027f4a0Smrg	*-next)
14969027f4a0Smrg		os=-nextstep3
14979027f4a0Smrg		;;
14989027f4a0Smrg	*-gould)
14999027f4a0Smrg		os=-sysv
15009027f4a0Smrg		;;
15019027f4a0Smrg	*-highlevel)
15029027f4a0Smrg		os=-bsd
15039027f4a0Smrg		;;
15049027f4a0Smrg	*-encore)
15059027f4a0Smrg		os=-bsd
15069027f4a0Smrg		;;
15079027f4a0Smrg	*-sgi)
15089027f4a0Smrg		os=-irix
15099027f4a0Smrg		;;
15109027f4a0Smrg	*-siemens)
15119027f4a0Smrg		os=-sysv4
15129027f4a0Smrg		;;
15139027f4a0Smrg	*-masscomp)
15149027f4a0Smrg		os=-rtu
15159027f4a0Smrg		;;
15169027f4a0Smrg	f30[01]-fujitsu | f700-fujitsu)
15179027f4a0Smrg		os=-uxpv
15189027f4a0Smrg		;;
15199027f4a0Smrg	*-rom68k)
15209027f4a0Smrg		os=-coff
15219027f4a0Smrg		;;
15229027f4a0Smrg	*-*bug)
15239027f4a0Smrg		os=-coff
15249027f4a0Smrg		;;
15259027f4a0Smrg	*-apple)
15269027f4a0Smrg		os=-macos
15279027f4a0Smrg		;;
15289027f4a0Smrg	*-atari*)
15299027f4a0Smrg		os=-mint
15309027f4a0Smrg		;;
15319027f4a0Smrg	*)
15329027f4a0Smrg		os=-none
15339027f4a0Smrg		;;
15349027f4a0Smrgesac
15359027f4a0Smrgfi
15369027f4a0Smrg
15379027f4a0Smrg# Here we handle the case where we know the os, and the CPU type, but not the
15389027f4a0Smrg# manufacturer.  We pick the logical manufacturer.
15399027f4a0Smrgvendor=unknown
15409027f4a0Smrgcase $basic_machine in
15419027f4a0Smrg	*-unknown)
15429027f4a0Smrg		case $os in
15439027f4a0Smrg			-riscix*)
15449027f4a0Smrg				vendor=acorn
15459027f4a0Smrg				;;
15469027f4a0Smrg			-sunos*)
15479027f4a0Smrg				vendor=sun
15489027f4a0Smrg				;;
15499027f4a0Smrg			-aix*)
15509027f4a0Smrg				vendor=ibm
15519027f4a0Smrg				;;
15529027f4a0Smrg			-beos*)
15539027f4a0Smrg				vendor=be
15549027f4a0Smrg				;;
15559027f4a0Smrg			-hpux*)
15569027f4a0Smrg				vendor=hp
15579027f4a0Smrg				;;
15589027f4a0Smrg			-mpeix*)
15599027f4a0Smrg				vendor=hp
15609027f4a0Smrg				;;
15619027f4a0Smrg			-hiux*)
15629027f4a0Smrg				vendor=hitachi
15639027f4a0Smrg				;;
15649027f4a0Smrg			-unos*)
15659027f4a0Smrg				vendor=crds
15669027f4a0Smrg				;;
15679027f4a0Smrg			-dgux*)
15689027f4a0Smrg				vendor=dg
15699027f4a0Smrg				;;
15709027f4a0Smrg			-luna*)
15719027f4a0Smrg				vendor=omron
15729027f4a0Smrg				;;
15739027f4a0Smrg			-genix*)
15749027f4a0Smrg				vendor=ns
15759027f4a0Smrg				;;
15769027f4a0Smrg			-mvs* | -opened*)
15779027f4a0Smrg				vendor=ibm
15789027f4a0Smrg				;;
15799027f4a0Smrg			-os400*)
15809027f4a0Smrg				vendor=ibm
15819027f4a0Smrg				;;
15829027f4a0Smrg			-ptx*)
15839027f4a0Smrg				vendor=sequent
15849027f4a0Smrg				;;
15859027f4a0Smrg			-tpf*)
15869027f4a0Smrg				vendor=ibm
15879027f4a0Smrg				;;
15889027f4a0Smrg			-vxsim* | -vxworks* | -windiss*)
15899027f4a0Smrg				vendor=wrs
15909027f4a0Smrg				;;
15919027f4a0Smrg			-aux*)
15929027f4a0Smrg				vendor=apple
15939027f4a0Smrg				;;
15949027f4a0Smrg			-hms*)
15959027f4a0Smrg				vendor=hitachi
15969027f4a0Smrg				;;
15979027f4a0Smrg			-mpw* | -macos*)
15989027f4a0Smrg				vendor=apple
15999027f4a0Smrg				;;
16009027f4a0Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
16019027f4a0Smrg				vendor=atari
16029027f4a0Smrg				;;
16039027f4a0Smrg			-vos*)
16049027f4a0Smrg				vendor=stratus
16059027f4a0Smrg				;;
16069027f4a0Smrg		esac
16079027f4a0Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
16089027f4a0Smrg		;;
16099027f4a0Smrgesac
16109027f4a0Smrg
16119027f4a0Smrgecho $basic_machine$os
16129027f4a0Smrgexit
16139027f4a0Smrg
16149027f4a0Smrg# Local variables:
16159027f4a0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
16169027f4a0Smrg# time-stamp-start: "timestamp='"
16179027f4a0Smrg# time-stamp-format: "%:y-%02m-%02d"
16189027f4a0Smrg# time-stamp-end: "'"
16199027f4a0Smrg# End:
1620