config.sub revision 8c9fbc29
18c9fbc29Smrg#! /bin/sh
28c9fbc29Smrg# Configuration validation subroutine script.
38c9fbc29Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
48c9fbc29Smrg#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
58c9fbc29Smrg
68c9fbc29Smrgtimestamp='2005-12-11'
78c9fbc29Smrg
88c9fbc29Smrg# This file is (in principle) common to ALL GNU software.
98c9fbc29Smrg# The presence of a machine in this file suggests that SOME GNU software
108c9fbc29Smrg# can handle that machine.  It does not imply ALL GNU software can.
118c9fbc29Smrg#
128c9fbc29Smrg# This file is free software; you can redistribute it and/or modify
138c9fbc29Smrg# it under the terms of the GNU General Public License as published by
148c9fbc29Smrg# the Free Software Foundation; either version 2 of the License, or
158c9fbc29Smrg# (at your option) any later version.
168c9fbc29Smrg#
178c9fbc29Smrg# This program is distributed in the hope that it will be useful,
188c9fbc29Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
198c9fbc29Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
208c9fbc29Smrg# GNU General Public License for more details.
218c9fbc29Smrg#
228c9fbc29Smrg# You should have received a copy of the GNU General Public License
238c9fbc29Smrg# along with this program; if not, write to the Free Software
248c9fbc29Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
258c9fbc29Smrg# 02110-1301, USA.
268c9fbc29Smrg#
278c9fbc29Smrg# As a special exception to the GNU General Public License, if you
288c9fbc29Smrg# distribute this file as part of a program that contains a
298c9fbc29Smrg# configuration script generated by Autoconf, you may include it under
308c9fbc29Smrg# the same distribution terms that you use for the rest of that program.
318c9fbc29Smrg
328c9fbc29Smrg
338c9fbc29Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
348c9fbc29Smrg# diff and a properly formatted ChangeLog entry.
358c9fbc29Smrg#
368c9fbc29Smrg# Configuration subroutine to validate and canonicalize a configuration type.
378c9fbc29Smrg# Supply the specified configuration type as an argument.
388c9fbc29Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
398c9fbc29Smrg# Otherwise, we print the canonical config type on stdout and succeed.
408c9fbc29Smrg
418c9fbc29Smrg# This file is supposed to be the same for all GNU packages
428c9fbc29Smrg# and recognize all the CPU types, system types and aliases
438c9fbc29Smrg# that are meaningful with *any* GNU software.
448c9fbc29Smrg# Each package is responsible for reporting which valid configurations
458c9fbc29Smrg# it does not support.  The user should be able to distinguish
468c9fbc29Smrg# a failure to support a valid configuration from a meaningless
478c9fbc29Smrg# configuration.
488c9fbc29Smrg
498c9fbc29Smrg# The goal of this file is to map all the various variations of a given
508c9fbc29Smrg# machine specification into a single specification in the form:
518c9fbc29Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
528c9fbc29Smrg# or in some cases, the newer four-part form:
538c9fbc29Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
548c9fbc29Smrg# It is wrong to echo any other type of specification.
558c9fbc29Smrg
568c9fbc29Smrgme=`echo "$0" | sed -e 's,.*/,,'`
578c9fbc29Smrg
588c9fbc29Smrgusage="\
598c9fbc29SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
608c9fbc29Smrg       $0 [OPTION] ALIAS
618c9fbc29Smrg
628c9fbc29SmrgCanonicalize a configuration name.
638c9fbc29Smrg
648c9fbc29SmrgOperation modes:
658c9fbc29Smrg  -h, --help         print this help, then exit
668c9fbc29Smrg  -t, --time-stamp   print date of last modification, then exit
678c9fbc29Smrg  -v, --version      print version number, then exit
688c9fbc29Smrg
698c9fbc29SmrgReport bugs and patches to <config-patches@gnu.org>."
708c9fbc29Smrg
718c9fbc29Smrgversion="\
728c9fbc29SmrgGNU config.sub ($timestamp)
738c9fbc29Smrg
748c9fbc29SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
758c9fbc29SmrgFree Software Foundation, Inc.
768c9fbc29Smrg
778c9fbc29SmrgThis is free software; see the source for copying conditions.  There is NO
788c9fbc29Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
798c9fbc29Smrg
808c9fbc29Smrghelp="
818c9fbc29SmrgTry \`$me --help' for more information."
828c9fbc29Smrg
838c9fbc29Smrg# Parse command line
848c9fbc29Smrgwhile test $# -gt 0 ; do
858c9fbc29Smrg  case $1 in
868c9fbc29Smrg    --time-stamp | --time* | -t )
878c9fbc29Smrg       echo "$timestamp" ; exit ;;
888c9fbc29Smrg    --version | -v )
898c9fbc29Smrg       echo "$version" ; exit ;;
908c9fbc29Smrg    --help | --h* | -h )
918c9fbc29Smrg       echo "$usage"; exit ;;
928c9fbc29Smrg    -- )     # Stop option processing
938c9fbc29Smrg       shift; break ;;
948c9fbc29Smrg    - )	# Use stdin as input.
958c9fbc29Smrg       break ;;
968c9fbc29Smrg    -* )
978c9fbc29Smrg       echo "$me: invalid option $1$help"
988c9fbc29Smrg       exit 1 ;;
998c9fbc29Smrg
1008c9fbc29Smrg    *local*)
1018c9fbc29Smrg       # First pass through any local machine types.
1028c9fbc29Smrg       echo $1
1038c9fbc29Smrg       exit ;;
1048c9fbc29Smrg
1058c9fbc29Smrg    * )
1068c9fbc29Smrg       break ;;
1078c9fbc29Smrg  esac
1088c9fbc29Smrgdone
1098c9fbc29Smrg
1108c9fbc29Smrgcase $# in
1118c9fbc29Smrg 0) echo "$me: missing argument$help" >&2
1128c9fbc29Smrg    exit 1;;
1138c9fbc29Smrg 1) ;;
1148c9fbc29Smrg *) echo "$me: too many arguments$help" >&2
1158c9fbc29Smrg    exit 1;;
1168c9fbc29Smrgesac
1178c9fbc29Smrg
1188c9fbc29Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
1198c9fbc29Smrg# Here we must recognize all the valid KERNEL-OS combinations.
1208c9fbc29Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
1218c9fbc29Smrgcase $maybe_os in
1228c9fbc29Smrg  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
1238c9fbc29Smrg  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
1248c9fbc29Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
1258c9fbc29Smrg    os=-$maybe_os
1268c9fbc29Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1278c9fbc29Smrg    ;;
1288c9fbc29Smrg  *)
1298c9fbc29Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
1308c9fbc29Smrg    if [ $basic_machine != $1 ]
1318c9fbc29Smrg    then os=`echo $1 | sed 's/.*-/-/'`
1328c9fbc29Smrg    else os=; fi
1338c9fbc29Smrg    ;;
1348c9fbc29Smrgesac
1358c9fbc29Smrg
1368c9fbc29Smrg### Let's recognize common machines as not being operating systems so
1378c9fbc29Smrg### that things like config.sub decstation-3100 work.  We also
1388c9fbc29Smrg### recognize some manufacturers as not being operating systems, so we
1398c9fbc29Smrg### can provide default operating systems below.
1408c9fbc29Smrgcase $os in
1418c9fbc29Smrg	-sun*os*)
1428c9fbc29Smrg		# Prevent following clause from handling this invalid input.
1438c9fbc29Smrg		;;
1448c9fbc29Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
1458c9fbc29Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1468c9fbc29Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
1478c9fbc29Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
1488c9fbc29Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
1498c9fbc29Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1508c9fbc29Smrg	-apple | -axis | -knuth | -cray)
1518c9fbc29Smrg		os=
1528c9fbc29Smrg		basic_machine=$1
1538c9fbc29Smrg		;;
1548c9fbc29Smrg	-sim | -cisco | -oki | -wec | -winbond)
1558c9fbc29Smrg		os=
1568c9fbc29Smrg		basic_machine=$1
1578c9fbc29Smrg		;;
1588c9fbc29Smrg	-scout)
1598c9fbc29Smrg		;;
1608c9fbc29Smrg	-wrs)
1618c9fbc29Smrg		os=-vxworks
1628c9fbc29Smrg		basic_machine=$1
1638c9fbc29Smrg		;;
1648c9fbc29Smrg	-chorusos*)
1658c9fbc29Smrg		os=-chorusos
1668c9fbc29Smrg		basic_machine=$1
1678c9fbc29Smrg		;;
1688c9fbc29Smrg 	-chorusrdb)
1698c9fbc29Smrg 		os=-chorusrdb
1708c9fbc29Smrg		basic_machine=$1
1718c9fbc29Smrg 		;;
1728c9fbc29Smrg	-hiux*)
1738c9fbc29Smrg		os=-hiuxwe2
1748c9fbc29Smrg		;;
1758c9fbc29Smrg	-sco6)
1768c9fbc29Smrg		os=-sco5v6
1778c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1788c9fbc29Smrg		;;
1798c9fbc29Smrg	-sco5)
1808c9fbc29Smrg		os=-sco3.2v5
1818c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1828c9fbc29Smrg		;;
1838c9fbc29Smrg	-sco4)
1848c9fbc29Smrg		os=-sco3.2v4
1858c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1868c9fbc29Smrg		;;
1878c9fbc29Smrg	-sco3.2.[4-9]*)
1888c9fbc29Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
1898c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1908c9fbc29Smrg		;;
1918c9fbc29Smrg	-sco3.2v[4-9]*)
1928c9fbc29Smrg		# Don't forget version if it is 3.2v4 or newer.
1938c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1948c9fbc29Smrg		;;
1958c9fbc29Smrg	-sco5v6*)
1968c9fbc29Smrg		# Don't forget version if it is 3.2v4 or newer.
1978c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1988c9fbc29Smrg		;;
1998c9fbc29Smrg	-sco*)
2008c9fbc29Smrg		os=-sco3.2v2
2018c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2028c9fbc29Smrg		;;
2038c9fbc29Smrg	-udk*)
2048c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2058c9fbc29Smrg		;;
2068c9fbc29Smrg	-isc)
2078c9fbc29Smrg		os=-isc2.2
2088c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2098c9fbc29Smrg		;;
2108c9fbc29Smrg	-clix*)
2118c9fbc29Smrg		basic_machine=clipper-intergraph
2128c9fbc29Smrg		;;
2138c9fbc29Smrg	-isc*)
2148c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2158c9fbc29Smrg		;;
2168c9fbc29Smrg	-lynx*)
2178c9fbc29Smrg		os=-lynxos
2188c9fbc29Smrg		;;
2198c9fbc29Smrg	-ptx*)
2208c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
2218c9fbc29Smrg		;;
2228c9fbc29Smrg	-windowsnt*)
2238c9fbc29Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
2248c9fbc29Smrg		;;
2258c9fbc29Smrg	-psos*)
2268c9fbc29Smrg		os=-psos
2278c9fbc29Smrg		;;
2288c9fbc29Smrg	-mint | -mint[0-9]*)
2298c9fbc29Smrg		basic_machine=m68k-atari
2308c9fbc29Smrg		os=-mint
2318c9fbc29Smrg		;;
2328c9fbc29Smrgesac
2338c9fbc29Smrg
2348c9fbc29Smrg# Decode aliases for certain CPU-COMPANY combinations.
2358c9fbc29Smrgcase $basic_machine in
2368c9fbc29Smrg	# Recognize the basic CPU types without company name.
2378c9fbc29Smrg	# Some are omitted here because they have special meanings below.
2388c9fbc29Smrg	1750a | 580 \
2398c9fbc29Smrg	| a29k \
2408c9fbc29Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
2418c9fbc29Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2428c9fbc29Smrg	| am33_2.0 \
2438c9fbc29Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
2448c9fbc29Smrg	| bfin \
2458c9fbc29Smrg	| c4x | clipper \
2468c9fbc29Smrg	| d10v | d30v | dlx | dsp16xx \
2478c9fbc29Smrg	| fr30 | frv \
2488c9fbc29Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2498c9fbc29Smrg	| i370 | i860 | i960 | ia64 \
2508c9fbc29Smrg	| ip2k | iq2000 \
2518c9fbc29Smrg	| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
2528c9fbc29Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
2538c9fbc29Smrg	| mips16 \
2548c9fbc29Smrg	| mips64 | mips64el \
2558c9fbc29Smrg	| mips64vr | mips64vrel \
2568c9fbc29Smrg	| mips64orion | mips64orionel \
2578c9fbc29Smrg	| mips64vr4100 | mips64vr4100el \
2588c9fbc29Smrg	| mips64vr4300 | mips64vr4300el \
2598c9fbc29Smrg	| mips64vr5000 | mips64vr5000el \
2608c9fbc29Smrg	| mips64vr5900 | mips64vr5900el \
2618c9fbc29Smrg	| mipsisa32 | mipsisa32el \
2628c9fbc29Smrg	| mipsisa32r2 | mipsisa32r2el \
2638c9fbc29Smrg	| mipsisa64 | mipsisa64el \
2648c9fbc29Smrg	| mipsisa64r2 | mipsisa64r2el \
2658c9fbc29Smrg	| mipsisa64sb1 | mipsisa64sb1el \
2668c9fbc29Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
2678c9fbc29Smrg	| mipstx39 | mipstx39el \
2688c9fbc29Smrg	| mn10200 | mn10300 \
2698c9fbc29Smrg	| mt \
2708c9fbc29Smrg	| msp430 \
2718c9fbc29Smrg	| ns16k | ns32k \
2728c9fbc29Smrg	| or32 \
2738c9fbc29Smrg	| pdp10 | pdp11 | pj | pjl \
2748c9fbc29Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
2758c9fbc29Smrg	| pyramid \
2768c9fbc29Smrg	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
2778c9fbc29Smrg	| sh64 | sh64le \
2788c9fbc29Smrg	| sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
2798c9fbc29Smrg	| sparcv8 | sparcv9 | sparcv9b \
2808c9fbc29Smrg	| strongarm \
2818c9fbc29Smrg	| tahoe | thumb | tic4x | tic80 | tron \
2828c9fbc29Smrg	| v850 | v850e \
2838c9fbc29Smrg	| we32k \
2848c9fbc29Smrg	| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
2858c9fbc29Smrg	| z8k)
2868c9fbc29Smrg		basic_machine=$basic_machine-unknown
2878c9fbc29Smrg		;;
2888c9fbc29Smrg	m32c)
2898c9fbc29Smrg		basic_machine=$basic_machine-unknown
2908c9fbc29Smrg		;;
2918c9fbc29Smrg	m6811 | m68hc11 | m6812 | m68hc12)
2928c9fbc29Smrg		# Motorola 68HC11/12.
2938c9fbc29Smrg		basic_machine=$basic_machine-unknown
2948c9fbc29Smrg		os=-none
2958c9fbc29Smrg		;;
2968c9fbc29Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
2978c9fbc29Smrg		;;
2988c9fbc29Smrg	ms1)
2998c9fbc29Smrg		basic_machine=mt-unknown
3008c9fbc29Smrg		;;
3018c9fbc29Smrg
3028c9fbc29Smrg	# We use `pc' rather than `unknown'
3038c9fbc29Smrg	# because (1) that's what they normally are, and
3048c9fbc29Smrg	# (2) the word "unknown" tends to confuse beginning users.
3058c9fbc29Smrg	i*86 | x86_64)
3068c9fbc29Smrg	  basic_machine=$basic_machine-pc
3078c9fbc29Smrg	  ;;
3088c9fbc29Smrg	# Object if more than one company name word.
3098c9fbc29Smrg	*-*-*)
3108c9fbc29Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
3118c9fbc29Smrg		exit 1
3128c9fbc29Smrg		;;
3138c9fbc29Smrg	# Recognize the basic CPU types with company name.
3148c9fbc29Smrg	580-* \
3158c9fbc29Smrg	| a29k-* \
3168c9fbc29Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3178c9fbc29Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3188c9fbc29Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
3198c9fbc29Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
3208c9fbc29Smrg	| avr-* \
3218c9fbc29Smrg	| bfin-* | bs2000-* \
3228c9fbc29Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
3238c9fbc29Smrg	| clipper-* | craynv-* | cydra-* \
3248c9fbc29Smrg	| d10v-* | d30v-* | dlx-* \
3258c9fbc29Smrg	| elxsi-* \
3268c9fbc29Smrg	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
3278c9fbc29Smrg	| h8300-* | h8500-* \
3288c9fbc29Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3298c9fbc29Smrg	| i*86-* | i860-* | i960-* | ia64-* \
3308c9fbc29Smrg	| ip2k-* | iq2000-* \
3318c9fbc29Smrg	| m32r-* | m32rle-* \
3328c9fbc29Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3338c9fbc29Smrg	| m88110-* | m88k-* | maxq-* | mcore-* \
3348c9fbc29Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
3358c9fbc29Smrg	| mips16-* \
3368c9fbc29Smrg	| mips64-* | mips64el-* \
3378c9fbc29Smrg	| mips64vr-* | mips64vrel-* \
3388c9fbc29Smrg	| mips64orion-* | mips64orionel-* \
3398c9fbc29Smrg	| mips64vr4100-* | mips64vr4100el-* \
3408c9fbc29Smrg	| mips64vr4300-* | mips64vr4300el-* \
3418c9fbc29Smrg	| mips64vr5000-* | mips64vr5000el-* \
3428c9fbc29Smrg	| mips64vr5900-* | mips64vr5900el-* \
3438c9fbc29Smrg	| mipsisa32-* | mipsisa32el-* \
3448c9fbc29Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
3458c9fbc29Smrg	| mipsisa64-* | mipsisa64el-* \
3468c9fbc29Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
3478c9fbc29Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
3488c9fbc29Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
3498c9fbc29Smrg	| mipstx39-* | mipstx39el-* \
3508c9fbc29Smrg	| mmix-* \
3518c9fbc29Smrg	| mt-* \
3528c9fbc29Smrg	| msp430-* \
3538c9fbc29Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
3548c9fbc29Smrg	| orion-* \
3558c9fbc29Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
3568c9fbc29Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
3578c9fbc29Smrg	| pyramid-* \
3588c9fbc29Smrg	| romp-* | rs6000-* \
3598c9fbc29Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
3608c9fbc29Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
3618c9fbc29Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
3628c9fbc29Smrg	| sparclite-* \
3638c9fbc29Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
3648c9fbc29Smrg	| tahoe-* | thumb-* \
3658c9fbc29Smrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
3668c9fbc29Smrg	| tron-* \
3678c9fbc29Smrg	| v850-* | v850e-* | vax-* \
3688c9fbc29Smrg	| we32k-* \
3698c9fbc29Smrg	| x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
3708c9fbc29Smrg	| xstormy16-* | xtensa-* \
3718c9fbc29Smrg	| ymp-* \
3728c9fbc29Smrg	| z8k-*)
3738c9fbc29Smrg		;;
3748c9fbc29Smrg	m32c-*)
3758c9fbc29Smrg		;;
3768c9fbc29Smrg	# Recognize the various machine names and aliases which stand
3778c9fbc29Smrg	# for a CPU type and a company and sometimes even an OS.
3788c9fbc29Smrg	386bsd)
3798c9fbc29Smrg		basic_machine=i386-unknown
3808c9fbc29Smrg		os=-bsd
3818c9fbc29Smrg		;;
3828c9fbc29Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
3838c9fbc29Smrg		basic_machine=m68000-att
3848c9fbc29Smrg		;;
3858c9fbc29Smrg	3b*)
3868c9fbc29Smrg		basic_machine=we32k-att
3878c9fbc29Smrg		;;
3888c9fbc29Smrg	a29khif)
3898c9fbc29Smrg		basic_machine=a29k-amd
3908c9fbc29Smrg		os=-udi
3918c9fbc29Smrg		;;
3928c9fbc29Smrg    	abacus)
3938c9fbc29Smrg		basic_machine=abacus-unknown
3948c9fbc29Smrg		;;
3958c9fbc29Smrg	adobe68k)
3968c9fbc29Smrg		basic_machine=m68010-adobe
3978c9fbc29Smrg		os=-scout
3988c9fbc29Smrg		;;
3998c9fbc29Smrg	alliant | fx80)
4008c9fbc29Smrg		basic_machine=fx80-alliant
4018c9fbc29Smrg		;;
4028c9fbc29Smrg	altos | altos3068)
4038c9fbc29Smrg		basic_machine=m68k-altos
4048c9fbc29Smrg		;;
4058c9fbc29Smrg	am29k)
4068c9fbc29Smrg		basic_machine=a29k-none
4078c9fbc29Smrg		os=-bsd
4088c9fbc29Smrg		;;
4098c9fbc29Smrg	amd64)
4108c9fbc29Smrg		basic_machine=x86_64-pc
4118c9fbc29Smrg		;;
4128c9fbc29Smrg	amd64-*)
4138c9fbc29Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
4148c9fbc29Smrg		;;
4158c9fbc29Smrg	amdahl)
4168c9fbc29Smrg		basic_machine=580-amdahl
4178c9fbc29Smrg		os=-sysv
4188c9fbc29Smrg		;;
4198c9fbc29Smrg	amiga | amiga-*)
4208c9fbc29Smrg		basic_machine=m68k-unknown
4218c9fbc29Smrg		;;
4228c9fbc29Smrg	amigaos | amigados)
4238c9fbc29Smrg		basic_machine=m68k-unknown
4248c9fbc29Smrg		os=-amigaos
4258c9fbc29Smrg		;;
4268c9fbc29Smrg	amigaunix | amix)
4278c9fbc29Smrg		basic_machine=m68k-unknown
4288c9fbc29Smrg		os=-sysv4
4298c9fbc29Smrg		;;
4308c9fbc29Smrg	apollo68)
4318c9fbc29Smrg		basic_machine=m68k-apollo
4328c9fbc29Smrg		os=-sysv
4338c9fbc29Smrg		;;
4348c9fbc29Smrg	apollo68bsd)
4358c9fbc29Smrg		basic_machine=m68k-apollo
4368c9fbc29Smrg		os=-bsd
4378c9fbc29Smrg		;;
4388c9fbc29Smrg	aux)
4398c9fbc29Smrg		basic_machine=m68k-apple
4408c9fbc29Smrg		os=-aux
4418c9fbc29Smrg		;;
4428c9fbc29Smrg	balance)
4438c9fbc29Smrg		basic_machine=ns32k-sequent
4448c9fbc29Smrg		os=-dynix
4458c9fbc29Smrg		;;
4468c9fbc29Smrg	c90)
4478c9fbc29Smrg		basic_machine=c90-cray
4488c9fbc29Smrg		os=-unicos
4498c9fbc29Smrg		;;
4508c9fbc29Smrg	convex-c1)
4518c9fbc29Smrg		basic_machine=c1-convex
4528c9fbc29Smrg		os=-bsd
4538c9fbc29Smrg		;;
4548c9fbc29Smrg	convex-c2)
4558c9fbc29Smrg		basic_machine=c2-convex
4568c9fbc29Smrg		os=-bsd
4578c9fbc29Smrg		;;
4588c9fbc29Smrg	convex-c32)
4598c9fbc29Smrg		basic_machine=c32-convex
4608c9fbc29Smrg		os=-bsd
4618c9fbc29Smrg		;;
4628c9fbc29Smrg	convex-c34)
4638c9fbc29Smrg		basic_machine=c34-convex
4648c9fbc29Smrg		os=-bsd
4658c9fbc29Smrg		;;
4668c9fbc29Smrg	convex-c38)
4678c9fbc29Smrg		basic_machine=c38-convex
4688c9fbc29Smrg		os=-bsd
4698c9fbc29Smrg		;;
4708c9fbc29Smrg	cray | j90)
4718c9fbc29Smrg		basic_machine=j90-cray
4728c9fbc29Smrg		os=-unicos
4738c9fbc29Smrg		;;
4748c9fbc29Smrg	craynv)
4758c9fbc29Smrg		basic_machine=craynv-cray
4768c9fbc29Smrg		os=-unicosmp
4778c9fbc29Smrg		;;
4788c9fbc29Smrg	cr16c)
4798c9fbc29Smrg		basic_machine=cr16c-unknown
4808c9fbc29Smrg		os=-elf
4818c9fbc29Smrg		;;
4828c9fbc29Smrg	crds | unos)
4838c9fbc29Smrg		basic_machine=m68k-crds
4848c9fbc29Smrg		;;
4858c9fbc29Smrg	crisv32 | crisv32-* | etraxfs*)
4868c9fbc29Smrg		basic_machine=crisv32-axis
4878c9fbc29Smrg		;;
4888c9fbc29Smrg	cris | cris-* | etrax*)
4898c9fbc29Smrg		basic_machine=cris-axis
4908c9fbc29Smrg		;;
4918c9fbc29Smrg	crx)
4928c9fbc29Smrg		basic_machine=crx-unknown
4938c9fbc29Smrg		os=-elf
4948c9fbc29Smrg		;;
4958c9fbc29Smrg	da30 | da30-*)
4968c9fbc29Smrg		basic_machine=m68k-da30
4978c9fbc29Smrg		;;
4988c9fbc29Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
4998c9fbc29Smrg		basic_machine=mips-dec
5008c9fbc29Smrg		;;
5018c9fbc29Smrg	decsystem10* | dec10*)
5028c9fbc29Smrg		basic_machine=pdp10-dec
5038c9fbc29Smrg		os=-tops10
5048c9fbc29Smrg		;;
5058c9fbc29Smrg	decsystem20* | dec20*)
5068c9fbc29Smrg		basic_machine=pdp10-dec
5078c9fbc29Smrg		os=-tops20
5088c9fbc29Smrg		;;
5098c9fbc29Smrg	delta | 3300 | motorola-3300 | motorola-delta \
5108c9fbc29Smrg	      | 3300-motorola | delta-motorola)
5118c9fbc29Smrg		basic_machine=m68k-motorola
5128c9fbc29Smrg		;;
5138c9fbc29Smrg	delta88)
5148c9fbc29Smrg		basic_machine=m88k-motorola
5158c9fbc29Smrg		os=-sysv3
5168c9fbc29Smrg		;;
5178c9fbc29Smrg	djgpp)
5188c9fbc29Smrg		basic_machine=i586-pc
5198c9fbc29Smrg		os=-msdosdjgpp
5208c9fbc29Smrg		;;
5218c9fbc29Smrg	dpx20 | dpx20-*)
5228c9fbc29Smrg		basic_machine=rs6000-bull
5238c9fbc29Smrg		os=-bosx
5248c9fbc29Smrg		;;
5258c9fbc29Smrg	dpx2* | dpx2*-bull)
5268c9fbc29Smrg		basic_machine=m68k-bull
5278c9fbc29Smrg		os=-sysv3
5288c9fbc29Smrg		;;
5298c9fbc29Smrg	ebmon29k)
5308c9fbc29Smrg		basic_machine=a29k-amd
5318c9fbc29Smrg		os=-ebmon
5328c9fbc29Smrg		;;
5338c9fbc29Smrg	elxsi)
5348c9fbc29Smrg		basic_machine=elxsi-elxsi
5358c9fbc29Smrg		os=-bsd
5368c9fbc29Smrg		;;
5378c9fbc29Smrg	encore | umax | mmax)
5388c9fbc29Smrg		basic_machine=ns32k-encore
5398c9fbc29Smrg		;;
5408c9fbc29Smrg	es1800 | OSE68k | ose68k | ose | OSE)
5418c9fbc29Smrg		basic_machine=m68k-ericsson
5428c9fbc29Smrg		os=-ose
5438c9fbc29Smrg		;;
5448c9fbc29Smrg	fx2800)
5458c9fbc29Smrg		basic_machine=i860-alliant
5468c9fbc29Smrg		;;
5478c9fbc29Smrg	genix)
5488c9fbc29Smrg		basic_machine=ns32k-ns
5498c9fbc29Smrg		;;
5508c9fbc29Smrg	gmicro)
5518c9fbc29Smrg		basic_machine=tron-gmicro
5528c9fbc29Smrg		os=-sysv
5538c9fbc29Smrg		;;
5548c9fbc29Smrg	go32)
5558c9fbc29Smrg		basic_machine=i386-pc
5568c9fbc29Smrg		os=-go32
5578c9fbc29Smrg		;;
5588c9fbc29Smrg	h3050r* | hiux*)
5598c9fbc29Smrg		basic_machine=hppa1.1-hitachi
5608c9fbc29Smrg		os=-hiuxwe2
5618c9fbc29Smrg		;;
5628c9fbc29Smrg	h8300hms)
5638c9fbc29Smrg		basic_machine=h8300-hitachi
5648c9fbc29Smrg		os=-hms
5658c9fbc29Smrg		;;
5668c9fbc29Smrg	h8300xray)
5678c9fbc29Smrg		basic_machine=h8300-hitachi
5688c9fbc29Smrg		os=-xray
5698c9fbc29Smrg		;;
5708c9fbc29Smrg	h8500hms)
5718c9fbc29Smrg		basic_machine=h8500-hitachi
5728c9fbc29Smrg		os=-hms
5738c9fbc29Smrg		;;
5748c9fbc29Smrg	harris)
5758c9fbc29Smrg		basic_machine=m88k-harris
5768c9fbc29Smrg		os=-sysv3
5778c9fbc29Smrg		;;
5788c9fbc29Smrg	hp300-*)
5798c9fbc29Smrg		basic_machine=m68k-hp
5808c9fbc29Smrg		;;
5818c9fbc29Smrg	hp300bsd)
5828c9fbc29Smrg		basic_machine=m68k-hp
5838c9fbc29Smrg		os=-bsd
5848c9fbc29Smrg		;;
5858c9fbc29Smrg	hp300hpux)
5868c9fbc29Smrg		basic_machine=m68k-hp
5878c9fbc29Smrg		os=-hpux
5888c9fbc29Smrg		;;
5898c9fbc29Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
5908c9fbc29Smrg		basic_machine=hppa1.0-hp
5918c9fbc29Smrg		;;
5928c9fbc29Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
5938c9fbc29Smrg		basic_machine=m68000-hp
5948c9fbc29Smrg		;;
5958c9fbc29Smrg	hp9k3[2-9][0-9])
5968c9fbc29Smrg		basic_machine=m68k-hp
5978c9fbc29Smrg		;;
5988c9fbc29Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
5998c9fbc29Smrg		basic_machine=hppa1.0-hp
6008c9fbc29Smrg		;;
6018c9fbc29Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
6028c9fbc29Smrg		basic_machine=hppa1.1-hp
6038c9fbc29Smrg		;;
6048c9fbc29Smrg	hp9k78[0-9] | hp78[0-9])
6058c9fbc29Smrg		# FIXME: really hppa2.0-hp
6068c9fbc29Smrg		basic_machine=hppa1.1-hp
6078c9fbc29Smrg		;;
6088c9fbc29Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
6098c9fbc29Smrg		# FIXME: really hppa2.0-hp
6108c9fbc29Smrg		basic_machine=hppa1.1-hp
6118c9fbc29Smrg		;;
6128c9fbc29Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
6138c9fbc29Smrg		basic_machine=hppa1.1-hp
6148c9fbc29Smrg		;;
6158c9fbc29Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
6168c9fbc29Smrg		basic_machine=hppa1.0-hp
6178c9fbc29Smrg		;;
6188c9fbc29Smrg	hppa-next)
6198c9fbc29Smrg		os=-nextstep3
6208c9fbc29Smrg		;;
6218c9fbc29Smrg	hppaosf)
6228c9fbc29Smrg		basic_machine=hppa1.1-hp
6238c9fbc29Smrg		os=-osf
6248c9fbc29Smrg		;;
6258c9fbc29Smrg	hppro)
6268c9fbc29Smrg		basic_machine=hppa1.1-hp
6278c9fbc29Smrg		os=-proelf
6288c9fbc29Smrg		;;
6298c9fbc29Smrg	i370-ibm* | ibm*)
6308c9fbc29Smrg		basic_machine=i370-ibm
6318c9fbc29Smrg		;;
6328c9fbc29Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
6338c9fbc29Smrg	i*86v32)
6348c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6358c9fbc29Smrg		os=-sysv32
6368c9fbc29Smrg		;;
6378c9fbc29Smrg	i*86v4*)
6388c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6398c9fbc29Smrg		os=-sysv4
6408c9fbc29Smrg		;;
6418c9fbc29Smrg	i*86v)
6428c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6438c9fbc29Smrg		os=-sysv
6448c9fbc29Smrg		;;
6458c9fbc29Smrg	i*86sol2)
6468c9fbc29Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6478c9fbc29Smrg		os=-solaris2
6488c9fbc29Smrg		;;
6498c9fbc29Smrg	i386mach)
6508c9fbc29Smrg		basic_machine=i386-mach
6518c9fbc29Smrg		os=-mach
6528c9fbc29Smrg		;;
6538c9fbc29Smrg	i386-vsta | vsta)
6548c9fbc29Smrg		basic_machine=i386-unknown
6558c9fbc29Smrg		os=-vsta
6568c9fbc29Smrg		;;
6578c9fbc29Smrg	iris | iris4d)
6588c9fbc29Smrg		basic_machine=mips-sgi
6598c9fbc29Smrg		case $os in
6608c9fbc29Smrg		    -irix*)
6618c9fbc29Smrg			;;
6628c9fbc29Smrg		    *)
6638c9fbc29Smrg			os=-irix4
6648c9fbc29Smrg			;;
6658c9fbc29Smrg		esac
6668c9fbc29Smrg		;;
6678c9fbc29Smrg	isi68 | isi)
6688c9fbc29Smrg		basic_machine=m68k-isi
6698c9fbc29Smrg		os=-sysv
6708c9fbc29Smrg		;;
6718c9fbc29Smrg	m88k-omron*)
6728c9fbc29Smrg		basic_machine=m88k-omron
6738c9fbc29Smrg		;;
6748c9fbc29Smrg	magnum | m3230)
6758c9fbc29Smrg		basic_machine=mips-mips
6768c9fbc29Smrg		os=-sysv
6778c9fbc29Smrg		;;
6788c9fbc29Smrg	merlin)
6798c9fbc29Smrg		basic_machine=ns32k-utek
6808c9fbc29Smrg		os=-sysv
6818c9fbc29Smrg		;;
6828c9fbc29Smrg	mingw32)
6838c9fbc29Smrg		basic_machine=i386-pc
6848c9fbc29Smrg		os=-mingw32
6858c9fbc29Smrg		;;
6868c9fbc29Smrg	miniframe)
6878c9fbc29Smrg		basic_machine=m68000-convergent
6888c9fbc29Smrg		;;
6898c9fbc29Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
6908c9fbc29Smrg		basic_machine=m68k-atari
6918c9fbc29Smrg		os=-mint
6928c9fbc29Smrg		;;
6938c9fbc29Smrg	mips3*-*)
6948c9fbc29Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
6958c9fbc29Smrg		;;
6968c9fbc29Smrg	mips3*)
6978c9fbc29Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
6988c9fbc29Smrg		;;
6998c9fbc29Smrg	monitor)
7008c9fbc29Smrg		basic_machine=m68k-rom68k
7018c9fbc29Smrg		os=-coff
7028c9fbc29Smrg		;;
7038c9fbc29Smrg	morphos)
7048c9fbc29Smrg		basic_machine=powerpc-unknown
7058c9fbc29Smrg		os=-morphos
7068c9fbc29Smrg		;;
7078c9fbc29Smrg	msdos)
7088c9fbc29Smrg		basic_machine=i386-pc
7098c9fbc29Smrg		os=-msdos
7108c9fbc29Smrg		;;
7118c9fbc29Smrg	ms1-*)
7128c9fbc29Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
7138c9fbc29Smrg		;;
7148c9fbc29Smrg	mvs)
7158c9fbc29Smrg		basic_machine=i370-ibm
7168c9fbc29Smrg		os=-mvs
7178c9fbc29Smrg		;;
7188c9fbc29Smrg	ncr3000)
7198c9fbc29Smrg		basic_machine=i486-ncr
7208c9fbc29Smrg		os=-sysv4
7218c9fbc29Smrg		;;
7228c9fbc29Smrg	netbsd386)
7238c9fbc29Smrg		basic_machine=i386-unknown
7248c9fbc29Smrg		os=-netbsd
7258c9fbc29Smrg		;;
7268c9fbc29Smrg	netwinder)
7278c9fbc29Smrg		basic_machine=armv4l-rebel
7288c9fbc29Smrg		os=-linux
7298c9fbc29Smrg		;;
7308c9fbc29Smrg	news | news700 | news800 | news900)
7318c9fbc29Smrg		basic_machine=m68k-sony
7328c9fbc29Smrg		os=-newsos
7338c9fbc29Smrg		;;
7348c9fbc29Smrg	news1000)
7358c9fbc29Smrg		basic_machine=m68030-sony
7368c9fbc29Smrg		os=-newsos
7378c9fbc29Smrg		;;
7388c9fbc29Smrg	news-3600 | risc-news)
7398c9fbc29Smrg		basic_machine=mips-sony
7408c9fbc29Smrg		os=-newsos
7418c9fbc29Smrg		;;
7428c9fbc29Smrg	necv70)
7438c9fbc29Smrg		basic_machine=v70-nec
7448c9fbc29Smrg		os=-sysv
7458c9fbc29Smrg		;;
7468c9fbc29Smrg	next | m*-next )
7478c9fbc29Smrg		basic_machine=m68k-next
7488c9fbc29Smrg		case $os in
7498c9fbc29Smrg		    -nextstep* )
7508c9fbc29Smrg			;;
7518c9fbc29Smrg		    -ns2*)
7528c9fbc29Smrg		      os=-nextstep2
7538c9fbc29Smrg			;;
7548c9fbc29Smrg		    *)
7558c9fbc29Smrg		      os=-nextstep3
7568c9fbc29Smrg			;;
7578c9fbc29Smrg		esac
7588c9fbc29Smrg		;;
7598c9fbc29Smrg	nh3000)
7608c9fbc29Smrg		basic_machine=m68k-harris
7618c9fbc29Smrg		os=-cxux
7628c9fbc29Smrg		;;
7638c9fbc29Smrg	nh[45]000)
7648c9fbc29Smrg		basic_machine=m88k-harris
7658c9fbc29Smrg		os=-cxux
7668c9fbc29Smrg		;;
7678c9fbc29Smrg	nindy960)
7688c9fbc29Smrg		basic_machine=i960-intel
7698c9fbc29Smrg		os=-nindy
7708c9fbc29Smrg		;;
7718c9fbc29Smrg	mon960)
7728c9fbc29Smrg		basic_machine=i960-intel
7738c9fbc29Smrg		os=-mon960
7748c9fbc29Smrg		;;
7758c9fbc29Smrg	nonstopux)
7768c9fbc29Smrg		basic_machine=mips-compaq
7778c9fbc29Smrg		os=-nonstopux
7788c9fbc29Smrg		;;
7798c9fbc29Smrg	np1)
7808c9fbc29Smrg		basic_machine=np1-gould
7818c9fbc29Smrg		;;
7828c9fbc29Smrg	nsr-tandem)
7838c9fbc29Smrg		basic_machine=nsr-tandem
7848c9fbc29Smrg		;;
7858c9fbc29Smrg	op50n-* | op60c-*)
7868c9fbc29Smrg		basic_machine=hppa1.1-oki
7878c9fbc29Smrg		os=-proelf
7888c9fbc29Smrg		;;
7898c9fbc29Smrg	openrisc | openrisc-*)
7908c9fbc29Smrg		basic_machine=or32-unknown
7918c9fbc29Smrg		;;
7928c9fbc29Smrg	os400)
7938c9fbc29Smrg		basic_machine=powerpc-ibm
7948c9fbc29Smrg		os=-os400
7958c9fbc29Smrg		;;
7968c9fbc29Smrg	OSE68000 | ose68000)
7978c9fbc29Smrg		basic_machine=m68000-ericsson
7988c9fbc29Smrg		os=-ose
7998c9fbc29Smrg		;;
8008c9fbc29Smrg	os68k)
8018c9fbc29Smrg		basic_machine=m68k-none
8028c9fbc29Smrg		os=-os68k
8038c9fbc29Smrg		;;
8048c9fbc29Smrg	pa-hitachi)
8058c9fbc29Smrg		basic_machine=hppa1.1-hitachi
8068c9fbc29Smrg		os=-hiuxwe2
8078c9fbc29Smrg		;;
8088c9fbc29Smrg	paragon)
8098c9fbc29Smrg		basic_machine=i860-intel
8108c9fbc29Smrg		os=-osf
8118c9fbc29Smrg		;;
8128c9fbc29Smrg	pbd)
8138c9fbc29Smrg		basic_machine=sparc-tti
8148c9fbc29Smrg		;;
8158c9fbc29Smrg	pbb)
8168c9fbc29Smrg		basic_machine=m68k-tti
8178c9fbc29Smrg		;;
8188c9fbc29Smrg	pc532 | pc532-*)
8198c9fbc29Smrg		basic_machine=ns32k-pc532
8208c9fbc29Smrg		;;
8218c9fbc29Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
8228c9fbc29Smrg		basic_machine=i586-pc
8238c9fbc29Smrg		;;
8248c9fbc29Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
8258c9fbc29Smrg		basic_machine=i686-pc
8268c9fbc29Smrg		;;
8278c9fbc29Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
8288c9fbc29Smrg		basic_machine=i686-pc
8298c9fbc29Smrg		;;
8308c9fbc29Smrg	pentium4)
8318c9fbc29Smrg		basic_machine=i786-pc
8328c9fbc29Smrg		;;
8338c9fbc29Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
8348c9fbc29Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
8358c9fbc29Smrg		;;
8368c9fbc29Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
8378c9fbc29Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8388c9fbc29Smrg		;;
8398c9fbc29Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
8408c9fbc29Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8418c9fbc29Smrg		;;
8428c9fbc29Smrg	pentium4-*)
8438c9fbc29Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
8448c9fbc29Smrg		;;
8458c9fbc29Smrg	pn)
8468c9fbc29Smrg		basic_machine=pn-gould
8478c9fbc29Smrg		;;
8488c9fbc29Smrg	power)	basic_machine=power-ibm
8498c9fbc29Smrg		;;
8508c9fbc29Smrg	ppc)	basic_machine=powerpc-unknown
8518c9fbc29Smrg		;;
8528c9fbc29Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
8538c9fbc29Smrg		;;
8548c9fbc29Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
8558c9fbc29Smrg		basic_machine=powerpcle-unknown
8568c9fbc29Smrg		;;
8578c9fbc29Smrg	ppcle-* | powerpclittle-*)
8588c9fbc29Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
8598c9fbc29Smrg		;;
8608c9fbc29Smrg	ppc64)	basic_machine=powerpc64-unknown
8618c9fbc29Smrg		;;
8628c9fbc29Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
8638c9fbc29Smrg		;;
8648c9fbc29Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
8658c9fbc29Smrg		basic_machine=powerpc64le-unknown
8668c9fbc29Smrg		;;
8678c9fbc29Smrg	ppc64le-* | powerpc64little-*)
8688c9fbc29Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
8698c9fbc29Smrg		;;
8708c9fbc29Smrg	ps2)
8718c9fbc29Smrg		basic_machine=i386-ibm
8728c9fbc29Smrg		;;
8738c9fbc29Smrg	pw32)
8748c9fbc29Smrg		basic_machine=i586-unknown
8758c9fbc29Smrg		os=-pw32
8768c9fbc29Smrg		;;
8778c9fbc29Smrg	rdos)
8788c9fbc29Smrg		basic_machine=i386-pc
8798c9fbc29Smrg		os=-rdos
8808c9fbc29Smrg		;;
8818c9fbc29Smrg	rom68k)
8828c9fbc29Smrg		basic_machine=m68k-rom68k
8838c9fbc29Smrg		os=-coff
8848c9fbc29Smrg		;;
8858c9fbc29Smrg	rm[46]00)
8868c9fbc29Smrg		basic_machine=mips-siemens
8878c9fbc29Smrg		;;
8888c9fbc29Smrg	rtpc | rtpc-*)
8898c9fbc29Smrg		basic_machine=romp-ibm
8908c9fbc29Smrg		;;
8918c9fbc29Smrg	s390 | s390-*)
8928c9fbc29Smrg		basic_machine=s390-ibm
8938c9fbc29Smrg		;;
8948c9fbc29Smrg	s390x | s390x-*)
8958c9fbc29Smrg		basic_machine=s390x-ibm
8968c9fbc29Smrg		;;
8978c9fbc29Smrg	sa29200)
8988c9fbc29Smrg		basic_machine=a29k-amd
8998c9fbc29Smrg		os=-udi
9008c9fbc29Smrg		;;
9018c9fbc29Smrg	sb1)
9028c9fbc29Smrg		basic_machine=mipsisa64sb1-unknown
9038c9fbc29Smrg		;;
9048c9fbc29Smrg	sb1el)
9058c9fbc29Smrg		basic_machine=mipsisa64sb1el-unknown
9068c9fbc29Smrg		;;
9078c9fbc29Smrg	sei)
9088c9fbc29Smrg		basic_machine=mips-sei
9098c9fbc29Smrg		os=-seiux
9108c9fbc29Smrg		;;
9118c9fbc29Smrg	sequent)
9128c9fbc29Smrg		basic_machine=i386-sequent
9138c9fbc29Smrg		;;
9148c9fbc29Smrg	sh)
9158c9fbc29Smrg		basic_machine=sh-hitachi
9168c9fbc29Smrg		os=-hms
9178c9fbc29Smrg		;;
9188c9fbc29Smrg	sh64)
9198c9fbc29Smrg		basic_machine=sh64-unknown
9208c9fbc29Smrg		;;
9218c9fbc29Smrg	sparclite-wrs | simso-wrs)
9228c9fbc29Smrg		basic_machine=sparclite-wrs
9238c9fbc29Smrg		os=-vxworks
9248c9fbc29Smrg		;;
9258c9fbc29Smrg	sps7)
9268c9fbc29Smrg		basic_machine=m68k-bull
9278c9fbc29Smrg		os=-sysv2
9288c9fbc29Smrg		;;
9298c9fbc29Smrg	spur)
9308c9fbc29Smrg		basic_machine=spur-unknown
9318c9fbc29Smrg		;;
9328c9fbc29Smrg	st2000)
9338c9fbc29Smrg		basic_machine=m68k-tandem
9348c9fbc29Smrg		;;
9358c9fbc29Smrg	stratus)
9368c9fbc29Smrg		basic_machine=i860-stratus
9378c9fbc29Smrg		os=-sysv4
9388c9fbc29Smrg		;;
9398c9fbc29Smrg	sun2)
9408c9fbc29Smrg		basic_machine=m68000-sun
9418c9fbc29Smrg		;;
9428c9fbc29Smrg	sun2os3)
9438c9fbc29Smrg		basic_machine=m68000-sun
9448c9fbc29Smrg		os=-sunos3
9458c9fbc29Smrg		;;
9468c9fbc29Smrg	sun2os4)
9478c9fbc29Smrg		basic_machine=m68000-sun
9488c9fbc29Smrg		os=-sunos4
9498c9fbc29Smrg		;;
9508c9fbc29Smrg	sun3os3)
9518c9fbc29Smrg		basic_machine=m68k-sun
9528c9fbc29Smrg		os=-sunos3
9538c9fbc29Smrg		;;
9548c9fbc29Smrg	sun3os4)
9558c9fbc29Smrg		basic_machine=m68k-sun
9568c9fbc29Smrg		os=-sunos4
9578c9fbc29Smrg		;;
9588c9fbc29Smrg	sun4os3)
9598c9fbc29Smrg		basic_machine=sparc-sun
9608c9fbc29Smrg		os=-sunos3
9618c9fbc29Smrg		;;
9628c9fbc29Smrg	sun4os4)
9638c9fbc29Smrg		basic_machine=sparc-sun
9648c9fbc29Smrg		os=-sunos4
9658c9fbc29Smrg		;;
9668c9fbc29Smrg	sun4sol2)
9678c9fbc29Smrg		basic_machine=sparc-sun
9688c9fbc29Smrg		os=-solaris2
9698c9fbc29Smrg		;;
9708c9fbc29Smrg	sun3 | sun3-*)
9718c9fbc29Smrg		basic_machine=m68k-sun
9728c9fbc29Smrg		;;
9738c9fbc29Smrg	sun4)
9748c9fbc29Smrg		basic_machine=sparc-sun
9758c9fbc29Smrg		;;
9768c9fbc29Smrg	sun386 | sun386i | roadrunner)
9778c9fbc29Smrg		basic_machine=i386-sun
9788c9fbc29Smrg		;;
9798c9fbc29Smrg	sv1)
9808c9fbc29Smrg		basic_machine=sv1-cray
9818c9fbc29Smrg		os=-unicos
9828c9fbc29Smrg		;;
9838c9fbc29Smrg	symmetry)
9848c9fbc29Smrg		basic_machine=i386-sequent
9858c9fbc29Smrg		os=-dynix
9868c9fbc29Smrg		;;
9878c9fbc29Smrg	t3e)
9888c9fbc29Smrg		basic_machine=alphaev5-cray
9898c9fbc29Smrg		os=-unicos
9908c9fbc29Smrg		;;
9918c9fbc29Smrg	t90)
9928c9fbc29Smrg		basic_machine=t90-cray
9938c9fbc29Smrg		os=-unicos
9948c9fbc29Smrg		;;
9958c9fbc29Smrg	tic54x | c54x*)
9968c9fbc29Smrg		basic_machine=tic54x-unknown
9978c9fbc29Smrg		os=-coff
9988c9fbc29Smrg		;;
9998c9fbc29Smrg	tic55x | c55x*)
10008c9fbc29Smrg		basic_machine=tic55x-unknown
10018c9fbc29Smrg		os=-coff
10028c9fbc29Smrg		;;
10038c9fbc29Smrg	tic6x | c6x*)
10048c9fbc29Smrg		basic_machine=tic6x-unknown
10058c9fbc29Smrg		os=-coff
10068c9fbc29Smrg		;;
10078c9fbc29Smrg	tx39)
10088c9fbc29Smrg		basic_machine=mipstx39-unknown
10098c9fbc29Smrg		;;
10108c9fbc29Smrg	tx39el)
10118c9fbc29Smrg		basic_machine=mipstx39el-unknown
10128c9fbc29Smrg		;;
10138c9fbc29Smrg	toad1)
10148c9fbc29Smrg		basic_machine=pdp10-xkl
10158c9fbc29Smrg		os=-tops20
10168c9fbc29Smrg		;;
10178c9fbc29Smrg	tower | tower-32)
10188c9fbc29Smrg		basic_machine=m68k-ncr
10198c9fbc29Smrg		;;
10208c9fbc29Smrg	tpf)
10218c9fbc29Smrg		basic_machine=s390x-ibm
10228c9fbc29Smrg		os=-tpf
10238c9fbc29Smrg		;;
10248c9fbc29Smrg	udi29k)
10258c9fbc29Smrg		basic_machine=a29k-amd
10268c9fbc29Smrg		os=-udi
10278c9fbc29Smrg		;;
10288c9fbc29Smrg	ultra3)
10298c9fbc29Smrg		basic_machine=a29k-nyu
10308c9fbc29Smrg		os=-sym1
10318c9fbc29Smrg		;;
10328c9fbc29Smrg	v810 | necv810)
10338c9fbc29Smrg		basic_machine=v810-nec
10348c9fbc29Smrg		os=-none
10358c9fbc29Smrg		;;
10368c9fbc29Smrg	vaxv)
10378c9fbc29Smrg		basic_machine=vax-dec
10388c9fbc29Smrg		os=-sysv
10398c9fbc29Smrg		;;
10408c9fbc29Smrg	vms)
10418c9fbc29Smrg		basic_machine=vax-dec
10428c9fbc29Smrg		os=-vms
10438c9fbc29Smrg		;;
10448c9fbc29Smrg	vpp*|vx|vx-*)
10458c9fbc29Smrg		basic_machine=f301-fujitsu
10468c9fbc29Smrg		;;
10478c9fbc29Smrg	vxworks960)
10488c9fbc29Smrg		basic_machine=i960-wrs
10498c9fbc29Smrg		os=-vxworks
10508c9fbc29Smrg		;;
10518c9fbc29Smrg	vxworks68)
10528c9fbc29Smrg		basic_machine=m68k-wrs
10538c9fbc29Smrg		os=-vxworks
10548c9fbc29Smrg		;;
10558c9fbc29Smrg	vxworks29k)
10568c9fbc29Smrg		basic_machine=a29k-wrs
10578c9fbc29Smrg		os=-vxworks
10588c9fbc29Smrg		;;
10598c9fbc29Smrg	w65*)
10608c9fbc29Smrg		basic_machine=w65-wdc
10618c9fbc29Smrg		os=-none
10628c9fbc29Smrg		;;
10638c9fbc29Smrg	w89k-*)
10648c9fbc29Smrg		basic_machine=hppa1.1-winbond
10658c9fbc29Smrg		os=-proelf
10668c9fbc29Smrg		;;
10678c9fbc29Smrg	xbox)
10688c9fbc29Smrg		basic_machine=i686-pc
10698c9fbc29Smrg		os=-mingw32
10708c9fbc29Smrg		;;
10718c9fbc29Smrg	xps | xps100)
10728c9fbc29Smrg		basic_machine=xps100-honeywell
10738c9fbc29Smrg		;;
10748c9fbc29Smrg	ymp)
10758c9fbc29Smrg		basic_machine=ymp-cray
10768c9fbc29Smrg		os=-unicos
10778c9fbc29Smrg		;;
10788c9fbc29Smrg	z8k-*-coff)
10798c9fbc29Smrg		basic_machine=z8k-unknown
10808c9fbc29Smrg		os=-sim
10818c9fbc29Smrg		;;
10828c9fbc29Smrg	none)
10838c9fbc29Smrg		basic_machine=none-none
10848c9fbc29Smrg		os=-none
10858c9fbc29Smrg		;;
10868c9fbc29Smrg
10878c9fbc29Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
10888c9fbc29Smrg# some cases the only manufacturer, in others, it is the most popular.
10898c9fbc29Smrg	w89k)
10908c9fbc29Smrg		basic_machine=hppa1.1-winbond
10918c9fbc29Smrg		;;
10928c9fbc29Smrg	op50n)
10938c9fbc29Smrg		basic_machine=hppa1.1-oki
10948c9fbc29Smrg		;;
10958c9fbc29Smrg	op60c)
10968c9fbc29Smrg		basic_machine=hppa1.1-oki
10978c9fbc29Smrg		;;
10988c9fbc29Smrg	romp)
10998c9fbc29Smrg		basic_machine=romp-ibm
11008c9fbc29Smrg		;;
11018c9fbc29Smrg	mmix)
11028c9fbc29Smrg		basic_machine=mmix-knuth
11038c9fbc29Smrg		;;
11048c9fbc29Smrg	rs6000)
11058c9fbc29Smrg		basic_machine=rs6000-ibm
11068c9fbc29Smrg		;;
11078c9fbc29Smrg	vax)
11088c9fbc29Smrg		basic_machine=vax-dec
11098c9fbc29Smrg		;;
11108c9fbc29Smrg	pdp10)
11118c9fbc29Smrg		# there are many clones, so DEC is not a safe bet
11128c9fbc29Smrg		basic_machine=pdp10-unknown
11138c9fbc29Smrg		;;
11148c9fbc29Smrg	pdp11)
11158c9fbc29Smrg		basic_machine=pdp11-dec
11168c9fbc29Smrg		;;
11178c9fbc29Smrg	we32k)
11188c9fbc29Smrg		basic_machine=we32k-att
11198c9fbc29Smrg		;;
11208c9fbc29Smrg	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
11218c9fbc29Smrg		basic_machine=sh-unknown
11228c9fbc29Smrg		;;
11238c9fbc29Smrg	sparc | sparcv8 | sparcv9 | sparcv9b)
11248c9fbc29Smrg		basic_machine=sparc-sun
11258c9fbc29Smrg		;;
11268c9fbc29Smrg	cydra)
11278c9fbc29Smrg		basic_machine=cydra-cydrome
11288c9fbc29Smrg		;;
11298c9fbc29Smrg	orion)
11308c9fbc29Smrg		basic_machine=orion-highlevel
11318c9fbc29Smrg		;;
11328c9fbc29Smrg	orion105)
11338c9fbc29Smrg		basic_machine=clipper-highlevel
11348c9fbc29Smrg		;;
11358c9fbc29Smrg	mac | mpw | mac-mpw)
11368c9fbc29Smrg		basic_machine=m68k-apple
11378c9fbc29Smrg		;;
11388c9fbc29Smrg	pmac | pmac-mpw)
11398c9fbc29Smrg		basic_machine=powerpc-apple
11408c9fbc29Smrg		;;
11418c9fbc29Smrg	*-unknown)
11428c9fbc29Smrg		# Make sure to match an already-canonicalized machine name.
11438c9fbc29Smrg		;;
11448c9fbc29Smrg	*)
11458c9fbc29Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
11468c9fbc29Smrg		exit 1
11478c9fbc29Smrg		;;
11488c9fbc29Smrgesac
11498c9fbc29Smrg
11508c9fbc29Smrg# Here we canonicalize certain aliases for manufacturers.
11518c9fbc29Smrgcase $basic_machine in
11528c9fbc29Smrg	*-digital*)
11538c9fbc29Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
11548c9fbc29Smrg		;;
11558c9fbc29Smrg	*-commodore*)
11568c9fbc29Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
11578c9fbc29Smrg		;;
11588c9fbc29Smrg	*)
11598c9fbc29Smrg		;;
11608c9fbc29Smrgesac
11618c9fbc29Smrg
11628c9fbc29Smrg# Decode manufacturer-specific aliases for certain operating systems.
11638c9fbc29Smrg
11648c9fbc29Smrgif [ x"$os" != x"" ]
11658c9fbc29Smrgthen
11668c9fbc29Smrgcase $os in
11678c9fbc29Smrg        # First match some system type aliases
11688c9fbc29Smrg        # that might get confused with valid system types.
11698c9fbc29Smrg	# -solaris* is a basic system type, with this one exception.
11708c9fbc29Smrg	-solaris1 | -solaris1.*)
11718c9fbc29Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
11728c9fbc29Smrg		;;
11738c9fbc29Smrg	-solaris)
11748c9fbc29Smrg		os=-solaris2
11758c9fbc29Smrg		;;
11768c9fbc29Smrg	-svr4*)
11778c9fbc29Smrg		os=-sysv4
11788c9fbc29Smrg		;;
11798c9fbc29Smrg	-unixware*)
11808c9fbc29Smrg		os=-sysv4.2uw
11818c9fbc29Smrg		;;
11828c9fbc29Smrg	-gnu/linux*)
11838c9fbc29Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
11848c9fbc29Smrg		;;
11858c9fbc29Smrg	# First accept the basic system types.
11868c9fbc29Smrg	# The portable systems comes first.
11878c9fbc29Smrg	# Each alternative MUST END IN A *, to match a version number.
11888c9fbc29Smrg	# -sysv* is not here because it comes later, after sysvr4.
11898c9fbc29Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
11908c9fbc29Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
11918c9fbc29Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
11928c9fbc29Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
11938c9fbc29Smrg	      | -aos* \
11948c9fbc29Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
11958c9fbc29Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
11968c9fbc29Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
11978c9fbc29Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
11988c9fbc29Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
11998c9fbc29Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
12008c9fbc29Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
12018c9fbc29Smrg	      | -chorusos* | -chorusrdb* \
12028c9fbc29Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
12038c9fbc29Smrg	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
12048c9fbc29Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
12058c9fbc29Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
12068c9fbc29Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
12078c9fbc29Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
12088c9fbc29Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
12098c9fbc29Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
12108c9fbc29Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
12118c9fbc29Smrg	      | -skyos* | -haiku* | -rdos*)
12128c9fbc29Smrg	# Remember, each alternative MUST END IN *, to match a version number.
12138c9fbc29Smrg		;;
12148c9fbc29Smrg	-qnx*)
12158c9fbc29Smrg		case $basic_machine in
12168c9fbc29Smrg		    x86-* | i*86-*)
12178c9fbc29Smrg			;;
12188c9fbc29Smrg		    *)
12198c9fbc29Smrg			os=-nto$os
12208c9fbc29Smrg			;;
12218c9fbc29Smrg		esac
12228c9fbc29Smrg		;;
12238c9fbc29Smrg	-nto-qnx*)
12248c9fbc29Smrg		;;
12258c9fbc29Smrg	-nto*)
12268c9fbc29Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
12278c9fbc29Smrg		;;
12288c9fbc29Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
12298c9fbc29Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
12308c9fbc29Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
12318c9fbc29Smrg		;;
12328c9fbc29Smrg	-mac*)
12338c9fbc29Smrg		os=`echo $os | sed -e 's|mac|macos|'`
12348c9fbc29Smrg		;;
12358c9fbc29Smrg	-linux-dietlibc)
12368c9fbc29Smrg		os=-linux-dietlibc
12378c9fbc29Smrg		;;
12388c9fbc29Smrg	-linux*)
12398c9fbc29Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
12408c9fbc29Smrg		;;
12418c9fbc29Smrg	-sunos5*)
12428c9fbc29Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
12438c9fbc29Smrg		;;
12448c9fbc29Smrg	-sunos6*)
12458c9fbc29Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
12468c9fbc29Smrg		;;
12478c9fbc29Smrg	-opened*)
12488c9fbc29Smrg		os=-openedition
12498c9fbc29Smrg		;;
12508c9fbc29Smrg        -os400*)
12518c9fbc29Smrg		os=-os400
12528c9fbc29Smrg		;;
12538c9fbc29Smrg	-wince*)
12548c9fbc29Smrg		os=-wince
12558c9fbc29Smrg		;;
12568c9fbc29Smrg	-osfrose*)
12578c9fbc29Smrg		os=-osfrose
12588c9fbc29Smrg		;;
12598c9fbc29Smrg	-osf*)
12608c9fbc29Smrg		os=-osf
12618c9fbc29Smrg		;;
12628c9fbc29Smrg	-utek*)
12638c9fbc29Smrg		os=-bsd
12648c9fbc29Smrg		;;
12658c9fbc29Smrg	-dynix*)
12668c9fbc29Smrg		os=-bsd
12678c9fbc29Smrg		;;
12688c9fbc29Smrg	-acis*)
12698c9fbc29Smrg		os=-aos
12708c9fbc29Smrg		;;
12718c9fbc29Smrg	-atheos*)
12728c9fbc29Smrg		os=-atheos
12738c9fbc29Smrg		;;
12748c9fbc29Smrg	-syllable*)
12758c9fbc29Smrg		os=-syllable
12768c9fbc29Smrg		;;
12778c9fbc29Smrg	-386bsd)
12788c9fbc29Smrg		os=-bsd
12798c9fbc29Smrg		;;
12808c9fbc29Smrg	-ctix* | -uts*)
12818c9fbc29Smrg		os=-sysv
12828c9fbc29Smrg		;;
12838c9fbc29Smrg	-nova*)
12848c9fbc29Smrg		os=-rtmk-nova
12858c9fbc29Smrg		;;
12868c9fbc29Smrg	-ns2 )
12878c9fbc29Smrg		os=-nextstep2
12888c9fbc29Smrg		;;
12898c9fbc29Smrg	-nsk*)
12908c9fbc29Smrg		os=-nsk
12918c9fbc29Smrg		;;
12928c9fbc29Smrg	# Preserve the version number of sinix5.
12938c9fbc29Smrg	-sinix5.*)
12948c9fbc29Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
12958c9fbc29Smrg		;;
12968c9fbc29Smrg	-sinix*)
12978c9fbc29Smrg		os=-sysv4
12988c9fbc29Smrg		;;
12998c9fbc29Smrg        -tpf*)
13008c9fbc29Smrg		os=-tpf
13018c9fbc29Smrg		;;
13028c9fbc29Smrg	-triton*)
13038c9fbc29Smrg		os=-sysv3
13048c9fbc29Smrg		;;
13058c9fbc29Smrg	-oss*)
13068c9fbc29Smrg		os=-sysv3
13078c9fbc29Smrg		;;
13088c9fbc29Smrg	-svr4)
13098c9fbc29Smrg		os=-sysv4
13108c9fbc29Smrg		;;
13118c9fbc29Smrg	-svr3)
13128c9fbc29Smrg		os=-sysv3
13138c9fbc29Smrg		;;
13148c9fbc29Smrg	-sysvr4)
13158c9fbc29Smrg		os=-sysv4
13168c9fbc29Smrg		;;
13178c9fbc29Smrg	# This must come after -sysvr4.
13188c9fbc29Smrg	-sysv*)
13198c9fbc29Smrg		;;
13208c9fbc29Smrg	-ose*)
13218c9fbc29Smrg		os=-ose
13228c9fbc29Smrg		;;
13238c9fbc29Smrg	-es1800*)
13248c9fbc29Smrg		os=-ose
13258c9fbc29Smrg		;;
13268c9fbc29Smrg	-xenix)
13278c9fbc29Smrg		os=-xenix
13288c9fbc29Smrg		;;
13298c9fbc29Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
13308c9fbc29Smrg		os=-mint
13318c9fbc29Smrg		;;
13328c9fbc29Smrg	-aros*)
13338c9fbc29Smrg		os=-aros
13348c9fbc29Smrg		;;
13358c9fbc29Smrg	-kaos*)
13368c9fbc29Smrg		os=-kaos
13378c9fbc29Smrg		;;
13388c9fbc29Smrg	-zvmoe)
13398c9fbc29Smrg		os=-zvmoe
13408c9fbc29Smrg		;;
13418c9fbc29Smrg	-none)
13428c9fbc29Smrg		;;
13438c9fbc29Smrg	*)
13448c9fbc29Smrg		# Get rid of the `-' at the beginning of $os.
13458c9fbc29Smrg		os=`echo $os | sed 's/[^-]*-//'`
13468c9fbc29Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
13478c9fbc29Smrg		exit 1
13488c9fbc29Smrg		;;
13498c9fbc29Smrgesac
13508c9fbc29Smrgelse
13518c9fbc29Smrg
13528c9fbc29Smrg# Here we handle the default operating systems that come with various machines.
13538c9fbc29Smrg# The value should be what the vendor currently ships out the door with their
13548c9fbc29Smrg# machine or put another way, the most popular os provided with the machine.
13558c9fbc29Smrg
13568c9fbc29Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
13578c9fbc29Smrg# "-sun"), then you have to tell the case statement up towards the top
13588c9fbc29Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
13598c9fbc29Smrg# will signal an error saying that MANUFACTURER isn't an operating
13608c9fbc29Smrg# system, and we'll never get to this point.
13618c9fbc29Smrg
13628c9fbc29Smrgcase $basic_machine in
13638c9fbc29Smrg	*-acorn)
13648c9fbc29Smrg		os=-riscix1.2
13658c9fbc29Smrg		;;
13668c9fbc29Smrg	arm*-rebel)
13678c9fbc29Smrg		os=-linux
13688c9fbc29Smrg		;;
13698c9fbc29Smrg	arm*-semi)
13708c9fbc29Smrg		os=-aout
13718c9fbc29Smrg		;;
13728c9fbc29Smrg    c4x-* | tic4x-*)
13738c9fbc29Smrg        os=-coff
13748c9fbc29Smrg        ;;
13758c9fbc29Smrg	# This must come before the *-dec entry.
13768c9fbc29Smrg	pdp10-*)
13778c9fbc29Smrg		os=-tops20
13788c9fbc29Smrg		;;
13798c9fbc29Smrg	pdp11-*)
13808c9fbc29Smrg		os=-none
13818c9fbc29Smrg		;;
13828c9fbc29Smrg	*-dec | vax-*)
13838c9fbc29Smrg		os=-ultrix4.2
13848c9fbc29Smrg		;;
13858c9fbc29Smrg	m68*-apollo)
13868c9fbc29Smrg		os=-domain
13878c9fbc29Smrg		;;
13888c9fbc29Smrg	i386-sun)
13898c9fbc29Smrg		os=-sunos4.0.2
13908c9fbc29Smrg		;;
13918c9fbc29Smrg	m68000-sun)
13928c9fbc29Smrg		os=-sunos3
13938c9fbc29Smrg		# This also exists in the configure program, but was not the
13948c9fbc29Smrg		# default.
13958c9fbc29Smrg		# os=-sunos4
13968c9fbc29Smrg		;;
13978c9fbc29Smrg	m68*-cisco)
13988c9fbc29Smrg		os=-aout
13998c9fbc29Smrg		;;
14008c9fbc29Smrg	mips*-cisco)
14018c9fbc29Smrg		os=-elf
14028c9fbc29Smrg		;;
14038c9fbc29Smrg	mips*-*)
14048c9fbc29Smrg		os=-elf
14058c9fbc29Smrg		;;
14068c9fbc29Smrg	or32-*)
14078c9fbc29Smrg		os=-coff
14088c9fbc29Smrg		;;
14098c9fbc29Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
14108c9fbc29Smrg		os=-sysv3
14118c9fbc29Smrg		;;
14128c9fbc29Smrg	sparc-* | *-sun)
14138c9fbc29Smrg		os=-sunos4.1.1
14148c9fbc29Smrg		;;
14158c9fbc29Smrg	*-be)
14168c9fbc29Smrg		os=-beos
14178c9fbc29Smrg		;;
14188c9fbc29Smrg	*-haiku)
14198c9fbc29Smrg		os=-haiku
14208c9fbc29Smrg		;;
14218c9fbc29Smrg	*-ibm)
14228c9fbc29Smrg		os=-aix
14238c9fbc29Smrg		;;
14248c9fbc29Smrg    	*-knuth)
14258c9fbc29Smrg		os=-mmixware
14268c9fbc29Smrg		;;
14278c9fbc29Smrg	*-wec)
14288c9fbc29Smrg		os=-proelf
14298c9fbc29Smrg		;;
14308c9fbc29Smrg	*-winbond)
14318c9fbc29Smrg		os=-proelf
14328c9fbc29Smrg		;;
14338c9fbc29Smrg	*-oki)
14348c9fbc29Smrg		os=-proelf
14358c9fbc29Smrg		;;
14368c9fbc29Smrg	*-hp)
14378c9fbc29Smrg		os=-hpux
14388c9fbc29Smrg		;;
14398c9fbc29Smrg	*-hitachi)
14408c9fbc29Smrg		os=-hiux
14418c9fbc29Smrg		;;
14428c9fbc29Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
14438c9fbc29Smrg		os=-sysv
14448c9fbc29Smrg		;;
14458c9fbc29Smrg	*-cbm)
14468c9fbc29Smrg		os=-amigaos
14478c9fbc29Smrg		;;
14488c9fbc29Smrg	*-dg)
14498c9fbc29Smrg		os=-dgux
14508c9fbc29Smrg		;;
14518c9fbc29Smrg	*-dolphin)
14528c9fbc29Smrg		os=-sysv3
14538c9fbc29Smrg		;;
14548c9fbc29Smrg	m68k-ccur)
14558c9fbc29Smrg		os=-rtu
14568c9fbc29Smrg		;;
14578c9fbc29Smrg	m88k-omron*)
14588c9fbc29Smrg		os=-luna
14598c9fbc29Smrg		;;
14608c9fbc29Smrg	*-next )
14618c9fbc29Smrg		os=-nextstep
14628c9fbc29Smrg		;;
14638c9fbc29Smrg	*-sequent)
14648c9fbc29Smrg		os=-ptx
14658c9fbc29Smrg		;;
14668c9fbc29Smrg	*-crds)
14678c9fbc29Smrg		os=-unos
14688c9fbc29Smrg		;;
14698c9fbc29Smrg	*-ns)
14708c9fbc29Smrg		os=-genix
14718c9fbc29Smrg		;;
14728c9fbc29Smrg	i370-*)
14738c9fbc29Smrg		os=-mvs
14748c9fbc29Smrg		;;
14758c9fbc29Smrg	*-next)
14768c9fbc29Smrg		os=-nextstep3
14778c9fbc29Smrg		;;
14788c9fbc29Smrg	*-gould)
14798c9fbc29Smrg		os=-sysv
14808c9fbc29Smrg		;;
14818c9fbc29Smrg	*-highlevel)
14828c9fbc29Smrg		os=-bsd
14838c9fbc29Smrg		;;
14848c9fbc29Smrg	*-encore)
14858c9fbc29Smrg		os=-bsd
14868c9fbc29Smrg		;;
14878c9fbc29Smrg	*-sgi)
14888c9fbc29Smrg		os=-irix
14898c9fbc29Smrg		;;
14908c9fbc29Smrg	*-siemens)
14918c9fbc29Smrg		os=-sysv4
14928c9fbc29Smrg		;;
14938c9fbc29Smrg	*-masscomp)
14948c9fbc29Smrg		os=-rtu
14958c9fbc29Smrg		;;
14968c9fbc29Smrg	f30[01]-fujitsu | f700-fujitsu)
14978c9fbc29Smrg		os=-uxpv
14988c9fbc29Smrg		;;
14998c9fbc29Smrg	*-rom68k)
15008c9fbc29Smrg		os=-coff
15018c9fbc29Smrg		;;
15028c9fbc29Smrg	*-*bug)
15038c9fbc29Smrg		os=-coff
15048c9fbc29Smrg		;;
15058c9fbc29Smrg	*-apple)
15068c9fbc29Smrg		os=-macos
15078c9fbc29Smrg		;;
15088c9fbc29Smrg	*-atari*)
15098c9fbc29Smrg		os=-mint
15108c9fbc29Smrg		;;
15118c9fbc29Smrg	*)
15128c9fbc29Smrg		os=-none
15138c9fbc29Smrg		;;
15148c9fbc29Smrgesac
15158c9fbc29Smrgfi
15168c9fbc29Smrg
15178c9fbc29Smrg# Here we handle the case where we know the os, and the CPU type, but not the
15188c9fbc29Smrg# manufacturer.  We pick the logical manufacturer.
15198c9fbc29Smrgvendor=unknown
15208c9fbc29Smrgcase $basic_machine in
15218c9fbc29Smrg	*-unknown)
15228c9fbc29Smrg		case $os in
15238c9fbc29Smrg			-riscix*)
15248c9fbc29Smrg				vendor=acorn
15258c9fbc29Smrg				;;
15268c9fbc29Smrg			-sunos*)
15278c9fbc29Smrg				vendor=sun
15288c9fbc29Smrg				;;
15298c9fbc29Smrg			-aix*)
15308c9fbc29Smrg				vendor=ibm
15318c9fbc29Smrg				;;
15328c9fbc29Smrg			-beos*)
15338c9fbc29Smrg				vendor=be
15348c9fbc29Smrg				;;
15358c9fbc29Smrg			-hpux*)
15368c9fbc29Smrg				vendor=hp
15378c9fbc29Smrg				;;
15388c9fbc29Smrg			-mpeix*)
15398c9fbc29Smrg				vendor=hp
15408c9fbc29Smrg				;;
15418c9fbc29Smrg			-hiux*)
15428c9fbc29Smrg				vendor=hitachi
15438c9fbc29Smrg				;;
15448c9fbc29Smrg			-unos*)
15458c9fbc29Smrg				vendor=crds
15468c9fbc29Smrg				;;
15478c9fbc29Smrg			-dgux*)
15488c9fbc29Smrg				vendor=dg
15498c9fbc29Smrg				;;
15508c9fbc29Smrg			-luna*)
15518c9fbc29Smrg				vendor=omron
15528c9fbc29Smrg				;;
15538c9fbc29Smrg			-genix*)
15548c9fbc29Smrg				vendor=ns
15558c9fbc29Smrg				;;
15568c9fbc29Smrg			-mvs* | -opened*)
15578c9fbc29Smrg				vendor=ibm
15588c9fbc29Smrg				;;
15598c9fbc29Smrg			-os400*)
15608c9fbc29Smrg				vendor=ibm
15618c9fbc29Smrg				;;
15628c9fbc29Smrg			-ptx*)
15638c9fbc29Smrg				vendor=sequent
15648c9fbc29Smrg				;;
15658c9fbc29Smrg			-tpf*)
15668c9fbc29Smrg				vendor=ibm
15678c9fbc29Smrg				;;
15688c9fbc29Smrg			-vxsim* | -vxworks* | -windiss*)
15698c9fbc29Smrg				vendor=wrs
15708c9fbc29Smrg				;;
15718c9fbc29Smrg			-aux*)
15728c9fbc29Smrg				vendor=apple
15738c9fbc29Smrg				;;
15748c9fbc29Smrg			-hms*)
15758c9fbc29Smrg				vendor=hitachi
15768c9fbc29Smrg				;;
15778c9fbc29Smrg			-mpw* | -macos*)
15788c9fbc29Smrg				vendor=apple
15798c9fbc29Smrg				;;
15808c9fbc29Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
15818c9fbc29Smrg				vendor=atari
15828c9fbc29Smrg				;;
15838c9fbc29Smrg			-vos*)
15848c9fbc29Smrg				vendor=stratus
15858c9fbc29Smrg				;;
15868c9fbc29Smrg		esac
15878c9fbc29Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
15888c9fbc29Smrg		;;
15898c9fbc29Smrgesac
15908c9fbc29Smrg
15918c9fbc29Smrgecho $basic_machine$os
15928c9fbc29Smrgexit
15938c9fbc29Smrg
15948c9fbc29Smrg# Local variables:
15958c9fbc29Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15968c9fbc29Smrg# time-stamp-start: "timestamp='"
15978c9fbc29Smrg# time-stamp-format: "%:y-%02m-%02d"
15988c9fbc29Smrg# time-stamp-end: "'"
15998c9fbc29Smrg# End:
1600