config.sub revision 7a0395d0
17a0395d0Smrg#! /bin/sh
27a0395d0Smrg# Configuration validation subroutine script.
37a0395d0Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
47a0395d0Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
57a0395d0Smrg#   Free Software Foundation, Inc.
67a0395d0Smrg
77a0395d0Smrgtimestamp='2008-01-16'
87a0395d0Smrg
97a0395d0Smrg# This file is (in principle) common to ALL GNU software.
107a0395d0Smrg# The presence of a machine in this file suggests that SOME GNU software
117a0395d0Smrg# can handle that machine.  It does not imply ALL GNU software can.
127a0395d0Smrg#
137a0395d0Smrg# This file is free software; you can redistribute it and/or modify
147a0395d0Smrg# it under the terms of the GNU General Public License as published by
157a0395d0Smrg# the Free Software Foundation; either version 2 of the License, or
167a0395d0Smrg# (at your option) any later version.
177a0395d0Smrg#
187a0395d0Smrg# This program is distributed in the hope that it will be useful,
197a0395d0Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
207a0395d0Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
217a0395d0Smrg# GNU General Public License for more details.
227a0395d0Smrg#
237a0395d0Smrg# You should have received a copy of the GNU General Public License
247a0395d0Smrg# along with this program; if not, write to the Free Software
257a0395d0Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
267a0395d0Smrg# 02110-1301, USA.
277a0395d0Smrg#
287a0395d0Smrg# As a special exception to the GNU General Public License, if you
297a0395d0Smrg# distribute this file as part of a program that contains a
307a0395d0Smrg# configuration script generated by Autoconf, you may include it under
317a0395d0Smrg# the same distribution terms that you use for the rest of that program.
327a0395d0Smrg
337a0395d0Smrg
347a0395d0Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
357a0395d0Smrg# diff and a properly formatted ChangeLog entry.
367a0395d0Smrg#
377a0395d0Smrg# Configuration subroutine to validate and canonicalize a configuration type.
387a0395d0Smrg# Supply the specified configuration type as an argument.
397a0395d0Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
407a0395d0Smrg# Otherwise, we print the canonical config type on stdout and succeed.
417a0395d0Smrg
427a0395d0Smrg# This file is supposed to be the same for all GNU packages
437a0395d0Smrg# and recognize all the CPU types, system types and aliases
447a0395d0Smrg# that are meaningful with *any* GNU software.
457a0395d0Smrg# Each package is responsible for reporting which valid configurations
467a0395d0Smrg# it does not support.  The user should be able to distinguish
477a0395d0Smrg# a failure to support a valid configuration from a meaningless
487a0395d0Smrg# configuration.
497a0395d0Smrg
507a0395d0Smrg# The goal of this file is to map all the various variations of a given
517a0395d0Smrg# machine specification into a single specification in the form:
527a0395d0Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
537a0395d0Smrg# or in some cases, the newer four-part form:
547a0395d0Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
557a0395d0Smrg# It is wrong to echo any other type of specification.
567a0395d0Smrg
577a0395d0Smrgme=`echo "$0" | sed -e 's,.*/,,'`
587a0395d0Smrg
597a0395d0Smrgusage="\
607a0395d0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
617a0395d0Smrg       $0 [OPTION] ALIAS
627a0395d0Smrg
637a0395d0SmrgCanonicalize a configuration name.
647a0395d0Smrg
657a0395d0SmrgOperation modes:
667a0395d0Smrg  -h, --help         print this help, then exit
677a0395d0Smrg  -t, --time-stamp   print date of last modification, then exit
687a0395d0Smrg  -v, --version      print version number, then exit
697a0395d0Smrg
707a0395d0SmrgReport bugs and patches to <config-patches@gnu.org>."
717a0395d0Smrg
727a0395d0Smrgversion="\
737a0395d0SmrgGNU config.sub ($timestamp)
747a0395d0Smrg
757a0395d0SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
767a0395d0Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
777a0395d0Smrg
787a0395d0SmrgThis is free software; see the source for copying conditions.  There is NO
797a0395d0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
807a0395d0Smrg
817a0395d0Smrghelp="
827a0395d0SmrgTry \`$me --help' for more information."
837a0395d0Smrg
847a0395d0Smrg# Parse command line
857a0395d0Smrgwhile test $# -gt 0 ; do
867a0395d0Smrg  case $1 in
877a0395d0Smrg    --time-stamp | --time* | -t )
887a0395d0Smrg       echo "$timestamp" ; exit ;;
897a0395d0Smrg    --version | -v )
907a0395d0Smrg       echo "$version" ; exit ;;
917a0395d0Smrg    --help | --h* | -h )
927a0395d0Smrg       echo "$usage"; exit ;;
937a0395d0Smrg    -- )     # Stop option processing
947a0395d0Smrg       shift; break ;;
957a0395d0Smrg    - )	# Use stdin as input.
967a0395d0Smrg       break ;;
977a0395d0Smrg    -* )
987a0395d0Smrg       echo "$me: invalid option $1$help"
997a0395d0Smrg       exit 1 ;;
1007a0395d0Smrg
1017a0395d0Smrg    *local*)
1027a0395d0Smrg       # First pass through any local machine types.
1037a0395d0Smrg       echo $1
1047a0395d0Smrg       exit ;;
1057a0395d0Smrg
1067a0395d0Smrg    * )
1077a0395d0Smrg       break ;;
1087a0395d0Smrg  esac
1097a0395d0Smrgdone
1107a0395d0Smrg
1117a0395d0Smrgcase $# in
1127a0395d0Smrg 0) echo "$me: missing argument$help" >&2
1137a0395d0Smrg    exit 1;;
1147a0395d0Smrg 1) ;;
1157a0395d0Smrg *) echo "$me: too many arguments$help" >&2
1167a0395d0Smrg    exit 1;;
1177a0395d0Smrgesac
1187a0395d0Smrg
1197a0395d0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
1207a0395d0Smrg# Here we must recognize all the valid KERNEL-OS combinations.
1217a0395d0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
1227a0395d0Smrgcase $maybe_os in
1237a0395d0Smrg  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
1247a0395d0Smrg  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
1257a0395d0Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
1267a0395d0Smrg    os=-$maybe_os
1277a0395d0Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1287a0395d0Smrg    ;;
1297a0395d0Smrg  *)
1307a0395d0Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
1317a0395d0Smrg    if [ $basic_machine != $1 ]
1327a0395d0Smrg    then os=`echo $1 | sed 's/.*-/-/'`
1337a0395d0Smrg    else os=; fi
1347a0395d0Smrg    ;;
1357a0395d0Smrgesac
1367a0395d0Smrg
1377a0395d0Smrg### Let's recognize common machines as not being operating systems so
1387a0395d0Smrg### that things like config.sub decstation-3100 work.  We also
1397a0395d0Smrg### recognize some manufacturers as not being operating systems, so we
1407a0395d0Smrg### can provide default operating systems below.
1417a0395d0Smrgcase $os in
1427a0395d0Smrg	-sun*os*)
1437a0395d0Smrg		# Prevent following clause from handling this invalid input.
1447a0395d0Smrg		;;
1457a0395d0Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
1467a0395d0Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1477a0395d0Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
1487a0395d0Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
1497a0395d0Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
1507a0395d0Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1517a0395d0Smrg	-apple | -axis | -knuth | -cray)
1527a0395d0Smrg		os=
1537a0395d0Smrg		basic_machine=$1
1547a0395d0Smrg		;;
1557a0395d0Smrg	-sim | -cisco | -oki | -wec | -winbond)
1567a0395d0Smrg		os=
1577a0395d0Smrg		basic_machine=$1
1587a0395d0Smrg		;;
1597a0395d0Smrg	-scout)
1607a0395d0Smrg		;;
1617a0395d0Smrg	-wrs)
1627a0395d0Smrg		os=-vxworks
1637a0395d0Smrg		basic_machine=$1
1647a0395d0Smrg		;;
1657a0395d0Smrg	-chorusos*)
1667a0395d0Smrg		os=-chorusos
1677a0395d0Smrg		basic_machine=$1
1687a0395d0Smrg		;;
1697a0395d0Smrg 	-chorusrdb)
1707a0395d0Smrg 		os=-chorusrdb
1717a0395d0Smrg		basic_machine=$1
1727a0395d0Smrg 		;;
1737a0395d0Smrg	-hiux*)
1747a0395d0Smrg		os=-hiuxwe2
1757a0395d0Smrg		;;
1767a0395d0Smrg	-sco6)
1777a0395d0Smrg		os=-sco5v6
1787a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1797a0395d0Smrg		;;
1807a0395d0Smrg	-sco5)
1817a0395d0Smrg		os=-sco3.2v5
1827a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1837a0395d0Smrg		;;
1847a0395d0Smrg	-sco4)
1857a0395d0Smrg		os=-sco3.2v4
1867a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1877a0395d0Smrg		;;
1887a0395d0Smrg	-sco3.2.[4-9]*)
1897a0395d0Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
1907a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1917a0395d0Smrg		;;
1927a0395d0Smrg	-sco3.2v[4-9]*)
1937a0395d0Smrg		# Don't forget version if it is 3.2v4 or newer.
1947a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1957a0395d0Smrg		;;
1967a0395d0Smrg	-sco5v6*)
1977a0395d0Smrg		# Don't forget version if it is 3.2v4 or newer.
1987a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1997a0395d0Smrg		;;
2007a0395d0Smrg	-sco*)
2017a0395d0Smrg		os=-sco3.2v2
2027a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2037a0395d0Smrg		;;
2047a0395d0Smrg	-udk*)
2057a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2067a0395d0Smrg		;;
2077a0395d0Smrg	-isc)
2087a0395d0Smrg		os=-isc2.2
2097a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2107a0395d0Smrg		;;
2117a0395d0Smrg	-clix*)
2127a0395d0Smrg		basic_machine=clipper-intergraph
2137a0395d0Smrg		;;
2147a0395d0Smrg	-isc*)
2157a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2167a0395d0Smrg		;;
2177a0395d0Smrg	-lynx*)
2187a0395d0Smrg		os=-lynxos
2197a0395d0Smrg		;;
2207a0395d0Smrg	-ptx*)
2217a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
2227a0395d0Smrg		;;
2237a0395d0Smrg	-windowsnt*)
2247a0395d0Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
2257a0395d0Smrg		;;
2267a0395d0Smrg	-psos*)
2277a0395d0Smrg		os=-psos
2287a0395d0Smrg		;;
2297a0395d0Smrg	-mint | -mint[0-9]*)
2307a0395d0Smrg		basic_machine=m68k-atari
2317a0395d0Smrg		os=-mint
2327a0395d0Smrg		;;
2337a0395d0Smrgesac
2347a0395d0Smrg
2357a0395d0Smrg# Decode aliases for certain CPU-COMPANY combinations.
2367a0395d0Smrgcase $basic_machine in
2377a0395d0Smrg	# Recognize the basic CPU types without company name.
2387a0395d0Smrg	# Some are omitted here because they have special meanings below.
2397a0395d0Smrg	1750a | 580 \
2407a0395d0Smrg	| a29k \
2417a0395d0Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
2427a0395d0Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2437a0395d0Smrg	| am33_2.0 \
2447a0395d0Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
2457a0395d0Smrg	| bfin \
2467a0395d0Smrg	| c4x | clipper \
2477a0395d0Smrg	| d10v | d30v | dlx | dsp16xx \
2487a0395d0Smrg	| fido | fr30 | frv \
2497a0395d0Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2507a0395d0Smrg	| i370 | i860 | i960 | ia64 \
2517a0395d0Smrg	| ip2k | iq2000 \
2527a0395d0Smrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
2537a0395d0Smrg	| maxq | mb | microblaze | mcore | mep \
2547a0395d0Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
2557a0395d0Smrg	| mips16 \
2567a0395d0Smrg	| mips64 | mips64el \
2577a0395d0Smrg	| mips64vr | mips64vrel \
2587a0395d0Smrg	| mips64orion | mips64orionel \
2597a0395d0Smrg	| mips64vr4100 | mips64vr4100el \
2607a0395d0Smrg	| mips64vr4300 | mips64vr4300el \
2617a0395d0Smrg	| mips64vr5000 | mips64vr5000el \
2627a0395d0Smrg	| mips64vr5900 | mips64vr5900el \
2637a0395d0Smrg	| mipsisa32 | mipsisa32el \
2647a0395d0Smrg	| mipsisa32r2 | mipsisa32r2el \
2657a0395d0Smrg	| mipsisa64 | mipsisa64el \
2667a0395d0Smrg	| mipsisa64r2 | mipsisa64r2el \
2677a0395d0Smrg	| mipsisa64sb1 | mipsisa64sb1el \
2687a0395d0Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
2697a0395d0Smrg	| mipstx39 | mipstx39el \
2707a0395d0Smrg	| mn10200 | mn10300 \
2717a0395d0Smrg	| mt \
2727a0395d0Smrg	| msp430 \
2737a0395d0Smrg	| nios | nios2 \
2747a0395d0Smrg	| ns16k | ns32k \
2757a0395d0Smrg	| or32 \
2767a0395d0Smrg	| pdp10 | pdp11 | pj | pjl \
2777a0395d0Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
2787a0395d0Smrg	| pyramid \
2797a0395d0Smrg	| score \
2807a0395d0Smrg	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
2817a0395d0Smrg	| sh64 | sh64le \
2827a0395d0Smrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
2837a0395d0Smrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
2847a0395d0Smrg	| spu | strongarm \
2857a0395d0Smrg	| tahoe | thumb | tic4x | tic80 | tron \
2867a0395d0Smrg	| v850 | v850e \
2877a0395d0Smrg	| we32k \
2887a0395d0Smrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
2897a0395d0Smrg	| z8k)
2907a0395d0Smrg		basic_machine=$basic_machine-unknown
2917a0395d0Smrg		;;
2927a0395d0Smrg	m6811 | m68hc11 | m6812 | m68hc12)
2937a0395d0Smrg		# Motorola 68HC11/12.
2947a0395d0Smrg		basic_machine=$basic_machine-unknown
2957a0395d0Smrg		os=-none
2967a0395d0Smrg		;;
2977a0395d0Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
2987a0395d0Smrg		;;
2997a0395d0Smrg	ms1)
3007a0395d0Smrg		basic_machine=mt-unknown
3017a0395d0Smrg		;;
3027a0395d0Smrg
3037a0395d0Smrg	# We use `pc' rather than `unknown'
3047a0395d0Smrg	# because (1) that's what they normally are, and
3057a0395d0Smrg	# (2) the word "unknown" tends to confuse beginning users.
3067a0395d0Smrg	i*86 | x86_64)
3077a0395d0Smrg	  basic_machine=$basic_machine-pc
3087a0395d0Smrg	  ;;
3097a0395d0Smrg	# Object if more than one company name word.
3107a0395d0Smrg	*-*-*)
3117a0395d0Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
3127a0395d0Smrg		exit 1
3137a0395d0Smrg		;;
3147a0395d0Smrg	# Recognize the basic CPU types with company name.
3157a0395d0Smrg	580-* \
3167a0395d0Smrg	| a29k-* \
3177a0395d0Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3187a0395d0Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3197a0395d0Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
3207a0395d0Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
3217a0395d0Smrg	| avr-* | avr32-* \
3227a0395d0Smrg	| bfin-* | bs2000-* \
3237a0395d0Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
3247a0395d0Smrg	| clipper-* | craynv-* | cydra-* \
3257a0395d0Smrg	| d10v-* | d30v-* | dlx-* \
3267a0395d0Smrg	| elxsi-* \
3277a0395d0Smrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
3287a0395d0Smrg	| h8300-* | h8500-* \
3297a0395d0Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3307a0395d0Smrg	| i*86-* | i860-* | i960-* | ia64-* \
3317a0395d0Smrg	| ip2k-* | iq2000-* \
3327a0395d0Smrg	| m32c-* | m32r-* | m32rle-* \
3337a0395d0Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3347a0395d0Smrg	| m88110-* | m88k-* | maxq-* | mcore-* \
3357a0395d0Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
3367a0395d0Smrg	| mips16-* \
3377a0395d0Smrg	| mips64-* | mips64el-* \
3387a0395d0Smrg	| mips64vr-* | mips64vrel-* \
3397a0395d0Smrg	| mips64orion-* | mips64orionel-* \
3407a0395d0Smrg	| mips64vr4100-* | mips64vr4100el-* \
3417a0395d0Smrg	| mips64vr4300-* | mips64vr4300el-* \
3427a0395d0Smrg	| mips64vr5000-* | mips64vr5000el-* \
3437a0395d0Smrg	| mips64vr5900-* | mips64vr5900el-* \
3447a0395d0Smrg	| mipsisa32-* | mipsisa32el-* \
3457a0395d0Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
3467a0395d0Smrg	| mipsisa64-* | mipsisa64el-* \
3477a0395d0Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
3487a0395d0Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
3497a0395d0Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
3507a0395d0Smrg	| mipstx39-* | mipstx39el-* \
3517a0395d0Smrg	| mmix-* \
3527a0395d0Smrg	| mt-* \
3537a0395d0Smrg	| msp430-* \
3547a0395d0Smrg	| nios-* | nios2-* \
3557a0395d0Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
3567a0395d0Smrg	| orion-* \
3577a0395d0Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
3587a0395d0Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
3597a0395d0Smrg	| pyramid-* \
3607a0395d0Smrg	| romp-* | rs6000-* \
3617a0395d0Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
3627a0395d0Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
3637a0395d0Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
3647a0395d0Smrg	| sparclite-* \
3657a0395d0Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
3667a0395d0Smrg	| tahoe-* | thumb-* \
3677a0395d0Smrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
3687a0395d0Smrg	| tron-* \
3697a0395d0Smrg	| v850-* | v850e-* | vax-* \
3707a0395d0Smrg	| we32k-* \
3717a0395d0Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
3727a0395d0Smrg	| xstormy16-* | xtensa*-* \
3737a0395d0Smrg	| ymp-* \
3747a0395d0Smrg	| z8k-*)
3757a0395d0Smrg		;;
3767a0395d0Smrg	# Recognize the basic CPU types without company name, with glob match.
3777a0395d0Smrg	xtensa*)
3787a0395d0Smrg		basic_machine=$basic_machine-unknown
3797a0395d0Smrg		;;
3807a0395d0Smrg	# Recognize the various machine names and aliases which stand
3817a0395d0Smrg	# for a CPU type and a company and sometimes even an OS.
3827a0395d0Smrg	386bsd)
3837a0395d0Smrg		basic_machine=i386-unknown
3847a0395d0Smrg		os=-bsd
3857a0395d0Smrg		;;
3867a0395d0Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
3877a0395d0Smrg		basic_machine=m68000-att
3887a0395d0Smrg		;;
3897a0395d0Smrg	3b*)
3907a0395d0Smrg		basic_machine=we32k-att
3917a0395d0Smrg		;;
3927a0395d0Smrg	a29khif)
3937a0395d0Smrg		basic_machine=a29k-amd
3947a0395d0Smrg		os=-udi
3957a0395d0Smrg		;;
3967a0395d0Smrg    	abacus)
3977a0395d0Smrg		basic_machine=abacus-unknown
3987a0395d0Smrg		;;
3997a0395d0Smrg	adobe68k)
4007a0395d0Smrg		basic_machine=m68010-adobe
4017a0395d0Smrg		os=-scout
4027a0395d0Smrg		;;
4037a0395d0Smrg	alliant | fx80)
4047a0395d0Smrg		basic_machine=fx80-alliant
4057a0395d0Smrg		;;
4067a0395d0Smrg	altos | altos3068)
4077a0395d0Smrg		basic_machine=m68k-altos
4087a0395d0Smrg		;;
4097a0395d0Smrg	am29k)
4107a0395d0Smrg		basic_machine=a29k-none
4117a0395d0Smrg		os=-bsd
4127a0395d0Smrg		;;
4137a0395d0Smrg	amd64)
4147a0395d0Smrg		basic_machine=x86_64-pc
4157a0395d0Smrg		;;
4167a0395d0Smrg	amd64-*)
4177a0395d0Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
4187a0395d0Smrg		;;
4197a0395d0Smrg	amdahl)
4207a0395d0Smrg		basic_machine=580-amdahl
4217a0395d0Smrg		os=-sysv
4227a0395d0Smrg		;;
4237a0395d0Smrg	amiga | amiga-*)
4247a0395d0Smrg		basic_machine=m68k-unknown
4257a0395d0Smrg		;;
4267a0395d0Smrg	amigaos | amigados)
4277a0395d0Smrg		basic_machine=m68k-unknown
4287a0395d0Smrg		os=-amigaos
4297a0395d0Smrg		;;
4307a0395d0Smrg	amigaunix | amix)
4317a0395d0Smrg		basic_machine=m68k-unknown
4327a0395d0Smrg		os=-sysv4
4337a0395d0Smrg		;;
4347a0395d0Smrg	apollo68)
4357a0395d0Smrg		basic_machine=m68k-apollo
4367a0395d0Smrg		os=-sysv
4377a0395d0Smrg		;;
4387a0395d0Smrg	apollo68bsd)
4397a0395d0Smrg		basic_machine=m68k-apollo
4407a0395d0Smrg		os=-bsd
4417a0395d0Smrg		;;
4427a0395d0Smrg	aux)
4437a0395d0Smrg		basic_machine=m68k-apple
4447a0395d0Smrg		os=-aux
4457a0395d0Smrg		;;
4467a0395d0Smrg	balance)
4477a0395d0Smrg		basic_machine=ns32k-sequent
4487a0395d0Smrg		os=-dynix
4497a0395d0Smrg		;;
4507a0395d0Smrg	blackfin)
4517a0395d0Smrg		basic_machine=bfin-unknown
4527a0395d0Smrg		os=-linux
4537a0395d0Smrg		;;
4547a0395d0Smrg	blackfin-*)
4557a0395d0Smrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
4567a0395d0Smrg		os=-linux
4577a0395d0Smrg		;;
4587a0395d0Smrg	c90)
4597a0395d0Smrg		basic_machine=c90-cray
4607a0395d0Smrg		os=-unicos
4617a0395d0Smrg		;;
4627a0395d0Smrg	convex-c1)
4637a0395d0Smrg		basic_machine=c1-convex
4647a0395d0Smrg		os=-bsd
4657a0395d0Smrg		;;
4667a0395d0Smrg	convex-c2)
4677a0395d0Smrg		basic_machine=c2-convex
4687a0395d0Smrg		os=-bsd
4697a0395d0Smrg		;;
4707a0395d0Smrg	convex-c32)
4717a0395d0Smrg		basic_machine=c32-convex
4727a0395d0Smrg		os=-bsd
4737a0395d0Smrg		;;
4747a0395d0Smrg	convex-c34)
4757a0395d0Smrg		basic_machine=c34-convex
4767a0395d0Smrg		os=-bsd
4777a0395d0Smrg		;;
4787a0395d0Smrg	convex-c38)
4797a0395d0Smrg		basic_machine=c38-convex
4807a0395d0Smrg		os=-bsd
4817a0395d0Smrg		;;
4827a0395d0Smrg	cray | j90)
4837a0395d0Smrg		basic_machine=j90-cray
4847a0395d0Smrg		os=-unicos
4857a0395d0Smrg		;;
4867a0395d0Smrg	craynv)
4877a0395d0Smrg		basic_machine=craynv-cray
4887a0395d0Smrg		os=-unicosmp
4897a0395d0Smrg		;;
4907a0395d0Smrg	cr16)
4917a0395d0Smrg		basic_machine=cr16-unknown
4927a0395d0Smrg		os=-elf
4937a0395d0Smrg		;;
4947a0395d0Smrg	crds | unos)
4957a0395d0Smrg		basic_machine=m68k-crds
4967a0395d0Smrg		;;
4977a0395d0Smrg	crisv32 | crisv32-* | etraxfs*)
4987a0395d0Smrg		basic_machine=crisv32-axis
4997a0395d0Smrg		;;
5007a0395d0Smrg	cris | cris-* | etrax*)
5017a0395d0Smrg		basic_machine=cris-axis
5027a0395d0Smrg		;;
5037a0395d0Smrg	crx)
5047a0395d0Smrg		basic_machine=crx-unknown
5057a0395d0Smrg		os=-elf
5067a0395d0Smrg		;;
5077a0395d0Smrg	da30 | da30-*)
5087a0395d0Smrg		basic_machine=m68k-da30
5097a0395d0Smrg		;;
5107a0395d0Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
5117a0395d0Smrg		basic_machine=mips-dec
5127a0395d0Smrg		;;
5137a0395d0Smrg	decsystem10* | dec10*)
5147a0395d0Smrg		basic_machine=pdp10-dec
5157a0395d0Smrg		os=-tops10
5167a0395d0Smrg		;;
5177a0395d0Smrg	decsystem20* | dec20*)
5187a0395d0Smrg		basic_machine=pdp10-dec
5197a0395d0Smrg		os=-tops20
5207a0395d0Smrg		;;
5217a0395d0Smrg	delta | 3300 | motorola-3300 | motorola-delta \
5227a0395d0Smrg	      | 3300-motorola | delta-motorola)
5237a0395d0Smrg		basic_machine=m68k-motorola
5247a0395d0Smrg		;;
5257a0395d0Smrg	delta88)
5267a0395d0Smrg		basic_machine=m88k-motorola
5277a0395d0Smrg		os=-sysv3
5287a0395d0Smrg		;;
5297a0395d0Smrg	djgpp)
5307a0395d0Smrg		basic_machine=i586-pc
5317a0395d0Smrg		os=-msdosdjgpp
5327a0395d0Smrg		;;
5337a0395d0Smrg	dpx20 | dpx20-*)
5347a0395d0Smrg		basic_machine=rs6000-bull
5357a0395d0Smrg		os=-bosx
5367a0395d0Smrg		;;
5377a0395d0Smrg	dpx2* | dpx2*-bull)
5387a0395d0Smrg		basic_machine=m68k-bull
5397a0395d0Smrg		os=-sysv3
5407a0395d0Smrg		;;
5417a0395d0Smrg	ebmon29k)
5427a0395d0Smrg		basic_machine=a29k-amd
5437a0395d0Smrg		os=-ebmon
5447a0395d0Smrg		;;
5457a0395d0Smrg	elxsi)
5467a0395d0Smrg		basic_machine=elxsi-elxsi
5477a0395d0Smrg		os=-bsd
5487a0395d0Smrg		;;
5497a0395d0Smrg	encore | umax | mmax)
5507a0395d0Smrg		basic_machine=ns32k-encore
5517a0395d0Smrg		;;
5527a0395d0Smrg	es1800 | OSE68k | ose68k | ose | OSE)
5537a0395d0Smrg		basic_machine=m68k-ericsson
5547a0395d0Smrg		os=-ose
5557a0395d0Smrg		;;
5567a0395d0Smrg	fx2800)
5577a0395d0Smrg		basic_machine=i860-alliant
5587a0395d0Smrg		;;
5597a0395d0Smrg	genix)
5607a0395d0Smrg		basic_machine=ns32k-ns
5617a0395d0Smrg		;;
5627a0395d0Smrg	gmicro)
5637a0395d0Smrg		basic_machine=tron-gmicro
5647a0395d0Smrg		os=-sysv
5657a0395d0Smrg		;;
5667a0395d0Smrg	go32)
5677a0395d0Smrg		basic_machine=i386-pc
5687a0395d0Smrg		os=-go32
5697a0395d0Smrg		;;
5707a0395d0Smrg	h3050r* | hiux*)
5717a0395d0Smrg		basic_machine=hppa1.1-hitachi
5727a0395d0Smrg		os=-hiuxwe2
5737a0395d0Smrg		;;
5747a0395d0Smrg	h8300hms)
5757a0395d0Smrg		basic_machine=h8300-hitachi
5767a0395d0Smrg		os=-hms
5777a0395d0Smrg		;;
5787a0395d0Smrg	h8300xray)
5797a0395d0Smrg		basic_machine=h8300-hitachi
5807a0395d0Smrg		os=-xray
5817a0395d0Smrg		;;
5827a0395d0Smrg	h8500hms)
5837a0395d0Smrg		basic_machine=h8500-hitachi
5847a0395d0Smrg		os=-hms
5857a0395d0Smrg		;;
5867a0395d0Smrg	harris)
5877a0395d0Smrg		basic_machine=m88k-harris
5887a0395d0Smrg		os=-sysv3
5897a0395d0Smrg		;;
5907a0395d0Smrg	hp300-*)
5917a0395d0Smrg		basic_machine=m68k-hp
5927a0395d0Smrg		;;
5937a0395d0Smrg	hp300bsd)
5947a0395d0Smrg		basic_machine=m68k-hp
5957a0395d0Smrg		os=-bsd
5967a0395d0Smrg		;;
5977a0395d0Smrg	hp300hpux)
5987a0395d0Smrg		basic_machine=m68k-hp
5997a0395d0Smrg		os=-hpux
6007a0395d0Smrg		;;
6017a0395d0Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
6027a0395d0Smrg		basic_machine=hppa1.0-hp
6037a0395d0Smrg		;;
6047a0395d0Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
6057a0395d0Smrg		basic_machine=m68000-hp
6067a0395d0Smrg		;;
6077a0395d0Smrg	hp9k3[2-9][0-9])
6087a0395d0Smrg		basic_machine=m68k-hp
6097a0395d0Smrg		;;
6107a0395d0Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
6117a0395d0Smrg		basic_machine=hppa1.0-hp
6127a0395d0Smrg		;;
6137a0395d0Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
6147a0395d0Smrg		basic_machine=hppa1.1-hp
6157a0395d0Smrg		;;
6167a0395d0Smrg	hp9k78[0-9] | hp78[0-9])
6177a0395d0Smrg		# FIXME: really hppa2.0-hp
6187a0395d0Smrg		basic_machine=hppa1.1-hp
6197a0395d0Smrg		;;
6207a0395d0Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
6217a0395d0Smrg		# FIXME: really hppa2.0-hp
6227a0395d0Smrg		basic_machine=hppa1.1-hp
6237a0395d0Smrg		;;
6247a0395d0Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
6257a0395d0Smrg		basic_machine=hppa1.1-hp
6267a0395d0Smrg		;;
6277a0395d0Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
6287a0395d0Smrg		basic_machine=hppa1.0-hp
6297a0395d0Smrg		;;
6307a0395d0Smrg	hppa-next)
6317a0395d0Smrg		os=-nextstep3
6327a0395d0Smrg		;;
6337a0395d0Smrg	hppaosf)
6347a0395d0Smrg		basic_machine=hppa1.1-hp
6357a0395d0Smrg		os=-osf
6367a0395d0Smrg		;;
6377a0395d0Smrg	hppro)
6387a0395d0Smrg		basic_machine=hppa1.1-hp
6397a0395d0Smrg		os=-proelf
6407a0395d0Smrg		;;
6417a0395d0Smrg	i370-ibm* | ibm*)
6427a0395d0Smrg		basic_machine=i370-ibm
6437a0395d0Smrg		;;
6447a0395d0Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
6457a0395d0Smrg	i*86v32)
6467a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6477a0395d0Smrg		os=-sysv32
6487a0395d0Smrg		;;
6497a0395d0Smrg	i*86v4*)
6507a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6517a0395d0Smrg		os=-sysv4
6527a0395d0Smrg		;;
6537a0395d0Smrg	i*86v)
6547a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6557a0395d0Smrg		os=-sysv
6567a0395d0Smrg		;;
6577a0395d0Smrg	i*86sol2)
6587a0395d0Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6597a0395d0Smrg		os=-solaris2
6607a0395d0Smrg		;;
6617a0395d0Smrg	i386mach)
6627a0395d0Smrg		basic_machine=i386-mach
6637a0395d0Smrg		os=-mach
6647a0395d0Smrg		;;
6657a0395d0Smrg	i386-vsta | vsta)
6667a0395d0Smrg		basic_machine=i386-unknown
6677a0395d0Smrg		os=-vsta
6687a0395d0Smrg		;;
6697a0395d0Smrg	iris | iris4d)
6707a0395d0Smrg		basic_machine=mips-sgi
6717a0395d0Smrg		case $os in
6727a0395d0Smrg		    -irix*)
6737a0395d0Smrg			;;
6747a0395d0Smrg		    *)
6757a0395d0Smrg			os=-irix4
6767a0395d0Smrg			;;
6777a0395d0Smrg		esac
6787a0395d0Smrg		;;
6797a0395d0Smrg	isi68 | isi)
6807a0395d0Smrg		basic_machine=m68k-isi
6817a0395d0Smrg		os=-sysv
6827a0395d0Smrg		;;
6837a0395d0Smrg	m68knommu)
6847a0395d0Smrg		basic_machine=m68k-unknown
6857a0395d0Smrg		os=-linux
6867a0395d0Smrg		;;
6877a0395d0Smrg	m68knommu-*)
6887a0395d0Smrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
6897a0395d0Smrg		os=-linux
6907a0395d0Smrg		;;
6917a0395d0Smrg	m88k-omron*)
6927a0395d0Smrg		basic_machine=m88k-omron
6937a0395d0Smrg		;;
6947a0395d0Smrg	magnum | m3230)
6957a0395d0Smrg		basic_machine=mips-mips
6967a0395d0Smrg		os=-sysv
6977a0395d0Smrg		;;
6987a0395d0Smrg	merlin)
6997a0395d0Smrg		basic_machine=ns32k-utek
7007a0395d0Smrg		os=-sysv
7017a0395d0Smrg		;;
7027a0395d0Smrg	mingw32)
7037a0395d0Smrg		basic_machine=i386-pc
7047a0395d0Smrg		os=-mingw32
7057a0395d0Smrg		;;
7067a0395d0Smrg	mingw32ce)
7077a0395d0Smrg		basic_machine=arm-unknown
7087a0395d0Smrg		os=-mingw32ce
7097a0395d0Smrg		;;
7107a0395d0Smrg	miniframe)
7117a0395d0Smrg		basic_machine=m68000-convergent
7127a0395d0Smrg		;;
7137a0395d0Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
7147a0395d0Smrg		basic_machine=m68k-atari
7157a0395d0Smrg		os=-mint
7167a0395d0Smrg		;;
7177a0395d0Smrg	mips3*-*)
7187a0395d0Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
7197a0395d0Smrg		;;
7207a0395d0Smrg	mips3*)
7217a0395d0Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
7227a0395d0Smrg		;;
7237a0395d0Smrg	monitor)
7247a0395d0Smrg		basic_machine=m68k-rom68k
7257a0395d0Smrg		os=-coff
7267a0395d0Smrg		;;
7277a0395d0Smrg	morphos)
7287a0395d0Smrg		basic_machine=powerpc-unknown
7297a0395d0Smrg		os=-morphos
7307a0395d0Smrg		;;
7317a0395d0Smrg	msdos)
7327a0395d0Smrg		basic_machine=i386-pc
7337a0395d0Smrg		os=-msdos
7347a0395d0Smrg		;;
7357a0395d0Smrg	ms1-*)
7367a0395d0Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
7377a0395d0Smrg		;;
7387a0395d0Smrg	mvs)
7397a0395d0Smrg		basic_machine=i370-ibm
7407a0395d0Smrg		os=-mvs
7417a0395d0Smrg		;;
7427a0395d0Smrg	ncr3000)
7437a0395d0Smrg		basic_machine=i486-ncr
7447a0395d0Smrg		os=-sysv4
7457a0395d0Smrg		;;
7467a0395d0Smrg	netbsd386)
7477a0395d0Smrg		basic_machine=i386-unknown
7487a0395d0Smrg		os=-netbsd
7497a0395d0Smrg		;;
7507a0395d0Smrg	netwinder)
7517a0395d0Smrg		basic_machine=armv4l-rebel
7527a0395d0Smrg		os=-linux
7537a0395d0Smrg		;;
7547a0395d0Smrg	news | news700 | news800 | news900)
7557a0395d0Smrg		basic_machine=m68k-sony
7567a0395d0Smrg		os=-newsos
7577a0395d0Smrg		;;
7587a0395d0Smrg	news1000)
7597a0395d0Smrg		basic_machine=m68030-sony
7607a0395d0Smrg		os=-newsos
7617a0395d0Smrg		;;
7627a0395d0Smrg	news-3600 | risc-news)
7637a0395d0Smrg		basic_machine=mips-sony
7647a0395d0Smrg		os=-newsos
7657a0395d0Smrg		;;
7667a0395d0Smrg	necv70)
7677a0395d0Smrg		basic_machine=v70-nec
7687a0395d0Smrg		os=-sysv
7697a0395d0Smrg		;;
7707a0395d0Smrg	next | m*-next )
7717a0395d0Smrg		basic_machine=m68k-next
7727a0395d0Smrg		case $os in
7737a0395d0Smrg		    -nextstep* )
7747a0395d0Smrg			;;
7757a0395d0Smrg		    -ns2*)
7767a0395d0Smrg		      os=-nextstep2
7777a0395d0Smrg			;;
7787a0395d0Smrg		    *)
7797a0395d0Smrg		      os=-nextstep3
7807a0395d0Smrg			;;
7817a0395d0Smrg		esac
7827a0395d0Smrg		;;
7837a0395d0Smrg	nh3000)
7847a0395d0Smrg		basic_machine=m68k-harris
7857a0395d0Smrg		os=-cxux
7867a0395d0Smrg		;;
7877a0395d0Smrg	nh[45]000)
7887a0395d0Smrg		basic_machine=m88k-harris
7897a0395d0Smrg		os=-cxux
7907a0395d0Smrg		;;
7917a0395d0Smrg	nindy960)
7927a0395d0Smrg		basic_machine=i960-intel
7937a0395d0Smrg		os=-nindy
7947a0395d0Smrg		;;
7957a0395d0Smrg	mon960)
7967a0395d0Smrg		basic_machine=i960-intel
7977a0395d0Smrg		os=-mon960
7987a0395d0Smrg		;;
7997a0395d0Smrg	nonstopux)
8007a0395d0Smrg		basic_machine=mips-compaq
8017a0395d0Smrg		os=-nonstopux
8027a0395d0Smrg		;;
8037a0395d0Smrg	np1)
8047a0395d0Smrg		basic_machine=np1-gould
8057a0395d0Smrg		;;
8067a0395d0Smrg	nsr-tandem)
8077a0395d0Smrg		basic_machine=nsr-tandem
8087a0395d0Smrg		;;
8097a0395d0Smrg	op50n-* | op60c-*)
8107a0395d0Smrg		basic_machine=hppa1.1-oki
8117a0395d0Smrg		os=-proelf
8127a0395d0Smrg		;;
8137a0395d0Smrg	openrisc | openrisc-*)
8147a0395d0Smrg		basic_machine=or32-unknown
8157a0395d0Smrg		;;
8167a0395d0Smrg	os400)
8177a0395d0Smrg		basic_machine=powerpc-ibm
8187a0395d0Smrg		os=-os400
8197a0395d0Smrg		;;
8207a0395d0Smrg	OSE68000 | ose68000)
8217a0395d0Smrg		basic_machine=m68000-ericsson
8227a0395d0Smrg		os=-ose
8237a0395d0Smrg		;;
8247a0395d0Smrg	os68k)
8257a0395d0Smrg		basic_machine=m68k-none
8267a0395d0Smrg		os=-os68k
8277a0395d0Smrg		;;
8287a0395d0Smrg	pa-hitachi)
8297a0395d0Smrg		basic_machine=hppa1.1-hitachi
8307a0395d0Smrg		os=-hiuxwe2
8317a0395d0Smrg		;;
8327a0395d0Smrg	paragon)
8337a0395d0Smrg		basic_machine=i860-intel
8347a0395d0Smrg		os=-osf
8357a0395d0Smrg		;;
8367a0395d0Smrg	parisc)
8377a0395d0Smrg		basic_machine=hppa-unknown
8387a0395d0Smrg		os=-linux
8397a0395d0Smrg		;;
8407a0395d0Smrg	parisc-*)
8417a0395d0Smrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
8427a0395d0Smrg		os=-linux
8437a0395d0Smrg		;;
8447a0395d0Smrg	pbd)
8457a0395d0Smrg		basic_machine=sparc-tti
8467a0395d0Smrg		;;
8477a0395d0Smrg	pbb)
8487a0395d0Smrg		basic_machine=m68k-tti
8497a0395d0Smrg		;;
8507a0395d0Smrg	pc532 | pc532-*)
8517a0395d0Smrg		basic_machine=ns32k-pc532
8527a0395d0Smrg		;;
8537a0395d0Smrg	pc98)
8547a0395d0Smrg		basic_machine=i386-pc
8557a0395d0Smrg		;;
8567a0395d0Smrg	pc98-*)
8577a0395d0Smrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
8587a0395d0Smrg		;;
8597a0395d0Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
8607a0395d0Smrg		basic_machine=i586-pc
8617a0395d0Smrg		;;
8627a0395d0Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
8637a0395d0Smrg		basic_machine=i686-pc
8647a0395d0Smrg		;;
8657a0395d0Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
8667a0395d0Smrg		basic_machine=i686-pc
8677a0395d0Smrg		;;
8687a0395d0Smrg	pentium4)
8697a0395d0Smrg		basic_machine=i786-pc
8707a0395d0Smrg		;;
8717a0395d0Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
8727a0395d0Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
8737a0395d0Smrg		;;
8747a0395d0Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
8757a0395d0Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8767a0395d0Smrg		;;
8777a0395d0Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
8787a0395d0Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8797a0395d0Smrg		;;
8807a0395d0Smrg	pentium4-*)
8817a0395d0Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
8827a0395d0Smrg		;;
8837a0395d0Smrg	pn)
8847a0395d0Smrg		basic_machine=pn-gould
8857a0395d0Smrg		;;
8867a0395d0Smrg	power)	basic_machine=power-ibm
8877a0395d0Smrg		;;
8887a0395d0Smrg	ppc)	basic_machine=powerpc-unknown
8897a0395d0Smrg		;;
8907a0395d0Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
8917a0395d0Smrg		;;
8927a0395d0Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
8937a0395d0Smrg		basic_machine=powerpcle-unknown
8947a0395d0Smrg		;;
8957a0395d0Smrg	ppcle-* | powerpclittle-*)
8967a0395d0Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
8977a0395d0Smrg		;;
8987a0395d0Smrg	ppc64)	basic_machine=powerpc64-unknown
8997a0395d0Smrg		;;
9007a0395d0Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
9017a0395d0Smrg		;;
9027a0395d0Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
9037a0395d0Smrg		basic_machine=powerpc64le-unknown
9047a0395d0Smrg		;;
9057a0395d0Smrg	ppc64le-* | powerpc64little-*)
9067a0395d0Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
9077a0395d0Smrg		;;
9087a0395d0Smrg	ps2)
9097a0395d0Smrg		basic_machine=i386-ibm
9107a0395d0Smrg		;;
9117a0395d0Smrg	pw32)
9127a0395d0Smrg		basic_machine=i586-unknown
9137a0395d0Smrg		os=-pw32
9147a0395d0Smrg		;;
9157a0395d0Smrg	rdos)
9167a0395d0Smrg		basic_machine=i386-pc
9177a0395d0Smrg		os=-rdos
9187a0395d0Smrg		;;
9197a0395d0Smrg	rom68k)
9207a0395d0Smrg		basic_machine=m68k-rom68k
9217a0395d0Smrg		os=-coff
9227a0395d0Smrg		;;
9237a0395d0Smrg	rm[46]00)
9247a0395d0Smrg		basic_machine=mips-siemens
9257a0395d0Smrg		;;
9267a0395d0Smrg	rtpc | rtpc-*)
9277a0395d0Smrg		basic_machine=romp-ibm
9287a0395d0Smrg		;;
9297a0395d0Smrg	s390 | s390-*)
9307a0395d0Smrg		basic_machine=s390-ibm
9317a0395d0Smrg		;;
9327a0395d0Smrg	s390x | s390x-*)
9337a0395d0Smrg		basic_machine=s390x-ibm
9347a0395d0Smrg		;;
9357a0395d0Smrg	sa29200)
9367a0395d0Smrg		basic_machine=a29k-amd
9377a0395d0Smrg		os=-udi
9387a0395d0Smrg		;;
9397a0395d0Smrg	sb1)
9407a0395d0Smrg		basic_machine=mipsisa64sb1-unknown
9417a0395d0Smrg		;;
9427a0395d0Smrg	sb1el)
9437a0395d0Smrg		basic_machine=mipsisa64sb1el-unknown
9447a0395d0Smrg		;;
9457a0395d0Smrg	sde)
9467a0395d0Smrg		basic_machine=mipsisa32-sde
9477a0395d0Smrg		os=-elf
9487a0395d0Smrg		;;
9497a0395d0Smrg	sei)
9507a0395d0Smrg		basic_machine=mips-sei
9517a0395d0Smrg		os=-seiux
9527a0395d0Smrg		;;
9537a0395d0Smrg	sequent)
9547a0395d0Smrg		basic_machine=i386-sequent
9557a0395d0Smrg		;;
9567a0395d0Smrg	sh)
9577a0395d0Smrg		basic_machine=sh-hitachi
9587a0395d0Smrg		os=-hms
9597a0395d0Smrg		;;
9607a0395d0Smrg	sh5el)
9617a0395d0Smrg		basic_machine=sh5le-unknown
9627a0395d0Smrg		;;
9637a0395d0Smrg	sh64)
9647a0395d0Smrg		basic_machine=sh64-unknown
9657a0395d0Smrg		;;
9667a0395d0Smrg	sparclite-wrs | simso-wrs)
9677a0395d0Smrg		basic_machine=sparclite-wrs
9687a0395d0Smrg		os=-vxworks
9697a0395d0Smrg		;;
9707a0395d0Smrg	sps7)
9717a0395d0Smrg		basic_machine=m68k-bull
9727a0395d0Smrg		os=-sysv2
9737a0395d0Smrg		;;
9747a0395d0Smrg	spur)
9757a0395d0Smrg		basic_machine=spur-unknown
9767a0395d0Smrg		;;
9777a0395d0Smrg	st2000)
9787a0395d0Smrg		basic_machine=m68k-tandem
9797a0395d0Smrg		;;
9807a0395d0Smrg	stratus)
9817a0395d0Smrg		basic_machine=i860-stratus
9827a0395d0Smrg		os=-sysv4
9837a0395d0Smrg		;;
9847a0395d0Smrg	sun2)
9857a0395d0Smrg		basic_machine=m68000-sun
9867a0395d0Smrg		;;
9877a0395d0Smrg	sun2os3)
9887a0395d0Smrg		basic_machine=m68000-sun
9897a0395d0Smrg		os=-sunos3
9907a0395d0Smrg		;;
9917a0395d0Smrg	sun2os4)
9927a0395d0Smrg		basic_machine=m68000-sun
9937a0395d0Smrg		os=-sunos4
9947a0395d0Smrg		;;
9957a0395d0Smrg	sun3os3)
9967a0395d0Smrg		basic_machine=m68k-sun
9977a0395d0Smrg		os=-sunos3
9987a0395d0Smrg		;;
9997a0395d0Smrg	sun3os4)
10007a0395d0Smrg		basic_machine=m68k-sun
10017a0395d0Smrg		os=-sunos4
10027a0395d0Smrg		;;
10037a0395d0Smrg	sun4os3)
10047a0395d0Smrg		basic_machine=sparc-sun
10057a0395d0Smrg		os=-sunos3
10067a0395d0Smrg		;;
10077a0395d0Smrg	sun4os4)
10087a0395d0Smrg		basic_machine=sparc-sun
10097a0395d0Smrg		os=-sunos4
10107a0395d0Smrg		;;
10117a0395d0Smrg	sun4sol2)
10127a0395d0Smrg		basic_machine=sparc-sun
10137a0395d0Smrg		os=-solaris2
10147a0395d0Smrg		;;
10157a0395d0Smrg	sun3 | sun3-*)
10167a0395d0Smrg		basic_machine=m68k-sun
10177a0395d0Smrg		;;
10187a0395d0Smrg	sun4)
10197a0395d0Smrg		basic_machine=sparc-sun
10207a0395d0Smrg		;;
10217a0395d0Smrg	sun386 | sun386i | roadrunner)
10227a0395d0Smrg		basic_machine=i386-sun
10237a0395d0Smrg		;;
10247a0395d0Smrg	sv1)
10257a0395d0Smrg		basic_machine=sv1-cray
10267a0395d0Smrg		os=-unicos
10277a0395d0Smrg		;;
10287a0395d0Smrg	symmetry)
10297a0395d0Smrg		basic_machine=i386-sequent
10307a0395d0Smrg		os=-dynix
10317a0395d0Smrg		;;
10327a0395d0Smrg	t3e)
10337a0395d0Smrg		basic_machine=alphaev5-cray
10347a0395d0Smrg		os=-unicos
10357a0395d0Smrg		;;
10367a0395d0Smrg	t90)
10377a0395d0Smrg		basic_machine=t90-cray
10387a0395d0Smrg		os=-unicos
10397a0395d0Smrg		;;
10407a0395d0Smrg	tic54x | c54x*)
10417a0395d0Smrg		basic_machine=tic54x-unknown
10427a0395d0Smrg		os=-coff
10437a0395d0Smrg		;;
10447a0395d0Smrg	tic55x | c55x*)
10457a0395d0Smrg		basic_machine=tic55x-unknown
10467a0395d0Smrg		os=-coff
10477a0395d0Smrg		;;
10487a0395d0Smrg	tic6x | c6x*)
10497a0395d0Smrg		basic_machine=tic6x-unknown
10507a0395d0Smrg		os=-coff
10517a0395d0Smrg		;;
10527a0395d0Smrg	tile*)
10537a0395d0Smrg		basic_machine=tile-unknown
10547a0395d0Smrg		os=-linux-gnu
10557a0395d0Smrg		;;
10567a0395d0Smrg	tx39)
10577a0395d0Smrg		basic_machine=mipstx39-unknown
10587a0395d0Smrg		;;
10597a0395d0Smrg	tx39el)
10607a0395d0Smrg		basic_machine=mipstx39el-unknown
10617a0395d0Smrg		;;
10627a0395d0Smrg	toad1)
10637a0395d0Smrg		basic_machine=pdp10-xkl
10647a0395d0Smrg		os=-tops20
10657a0395d0Smrg		;;
10667a0395d0Smrg	tower | tower-32)
10677a0395d0Smrg		basic_machine=m68k-ncr
10687a0395d0Smrg		;;
10697a0395d0Smrg	tpf)
10707a0395d0Smrg		basic_machine=s390x-ibm
10717a0395d0Smrg		os=-tpf
10727a0395d0Smrg		;;
10737a0395d0Smrg	udi29k)
10747a0395d0Smrg		basic_machine=a29k-amd
10757a0395d0Smrg		os=-udi
10767a0395d0Smrg		;;
10777a0395d0Smrg	ultra3)
10787a0395d0Smrg		basic_machine=a29k-nyu
10797a0395d0Smrg		os=-sym1
10807a0395d0Smrg		;;
10817a0395d0Smrg	v810 | necv810)
10827a0395d0Smrg		basic_machine=v810-nec
10837a0395d0Smrg		os=-none
10847a0395d0Smrg		;;
10857a0395d0Smrg	vaxv)
10867a0395d0Smrg		basic_machine=vax-dec
10877a0395d0Smrg		os=-sysv
10887a0395d0Smrg		;;
10897a0395d0Smrg	vms)
10907a0395d0Smrg		basic_machine=vax-dec
10917a0395d0Smrg		os=-vms
10927a0395d0Smrg		;;
10937a0395d0Smrg	vpp*|vx|vx-*)
10947a0395d0Smrg		basic_machine=f301-fujitsu
10957a0395d0Smrg		;;
10967a0395d0Smrg	vxworks960)
10977a0395d0Smrg		basic_machine=i960-wrs
10987a0395d0Smrg		os=-vxworks
10997a0395d0Smrg		;;
11007a0395d0Smrg	vxworks68)
11017a0395d0Smrg		basic_machine=m68k-wrs
11027a0395d0Smrg		os=-vxworks
11037a0395d0Smrg		;;
11047a0395d0Smrg	vxworks29k)
11057a0395d0Smrg		basic_machine=a29k-wrs
11067a0395d0Smrg		os=-vxworks
11077a0395d0Smrg		;;
11087a0395d0Smrg	w65*)
11097a0395d0Smrg		basic_machine=w65-wdc
11107a0395d0Smrg		os=-none
11117a0395d0Smrg		;;
11127a0395d0Smrg	w89k-*)
11137a0395d0Smrg		basic_machine=hppa1.1-winbond
11147a0395d0Smrg		os=-proelf
11157a0395d0Smrg		;;
11167a0395d0Smrg	xbox)
11177a0395d0Smrg		basic_machine=i686-pc
11187a0395d0Smrg		os=-mingw32
11197a0395d0Smrg		;;
11207a0395d0Smrg	xps | xps100)
11217a0395d0Smrg		basic_machine=xps100-honeywell
11227a0395d0Smrg		;;
11237a0395d0Smrg	ymp)
11247a0395d0Smrg		basic_machine=ymp-cray
11257a0395d0Smrg		os=-unicos
11267a0395d0Smrg		;;
11277a0395d0Smrg	z8k-*-coff)
11287a0395d0Smrg		basic_machine=z8k-unknown
11297a0395d0Smrg		os=-sim
11307a0395d0Smrg		;;
11317a0395d0Smrg	none)
11327a0395d0Smrg		basic_machine=none-none
11337a0395d0Smrg		os=-none
11347a0395d0Smrg		;;
11357a0395d0Smrg
11367a0395d0Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
11377a0395d0Smrg# some cases the only manufacturer, in others, it is the most popular.
11387a0395d0Smrg	w89k)
11397a0395d0Smrg		basic_machine=hppa1.1-winbond
11407a0395d0Smrg		;;
11417a0395d0Smrg	op50n)
11427a0395d0Smrg		basic_machine=hppa1.1-oki
11437a0395d0Smrg		;;
11447a0395d0Smrg	op60c)
11457a0395d0Smrg		basic_machine=hppa1.1-oki
11467a0395d0Smrg		;;
11477a0395d0Smrg	romp)
11487a0395d0Smrg		basic_machine=romp-ibm
11497a0395d0Smrg		;;
11507a0395d0Smrg	mmix)
11517a0395d0Smrg		basic_machine=mmix-knuth
11527a0395d0Smrg		;;
11537a0395d0Smrg	rs6000)
11547a0395d0Smrg		basic_machine=rs6000-ibm
11557a0395d0Smrg		;;
11567a0395d0Smrg	vax)
11577a0395d0Smrg		basic_machine=vax-dec
11587a0395d0Smrg		;;
11597a0395d0Smrg	pdp10)
11607a0395d0Smrg		# there are many clones, so DEC is not a safe bet
11617a0395d0Smrg		basic_machine=pdp10-unknown
11627a0395d0Smrg		;;
11637a0395d0Smrg	pdp11)
11647a0395d0Smrg		basic_machine=pdp11-dec
11657a0395d0Smrg		;;
11667a0395d0Smrg	we32k)
11677a0395d0Smrg		basic_machine=we32k-att
11687a0395d0Smrg		;;
11697a0395d0Smrg	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
11707a0395d0Smrg		basic_machine=sh-unknown
11717a0395d0Smrg		;;
11727a0395d0Smrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
11737a0395d0Smrg		basic_machine=sparc-sun
11747a0395d0Smrg		;;
11757a0395d0Smrg	cydra)
11767a0395d0Smrg		basic_machine=cydra-cydrome
11777a0395d0Smrg		;;
11787a0395d0Smrg	orion)
11797a0395d0Smrg		basic_machine=orion-highlevel
11807a0395d0Smrg		;;
11817a0395d0Smrg	orion105)
11827a0395d0Smrg		basic_machine=clipper-highlevel
11837a0395d0Smrg		;;
11847a0395d0Smrg	mac | mpw | mac-mpw)
11857a0395d0Smrg		basic_machine=m68k-apple
11867a0395d0Smrg		;;
11877a0395d0Smrg	pmac | pmac-mpw)
11887a0395d0Smrg		basic_machine=powerpc-apple
11897a0395d0Smrg		;;
11907a0395d0Smrg	*-unknown)
11917a0395d0Smrg		# Make sure to match an already-canonicalized machine name.
11927a0395d0Smrg		;;
11937a0395d0Smrg	*)
11947a0395d0Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
11957a0395d0Smrg		exit 1
11967a0395d0Smrg		;;
11977a0395d0Smrgesac
11987a0395d0Smrg
11997a0395d0Smrg# Here we canonicalize certain aliases for manufacturers.
12007a0395d0Smrgcase $basic_machine in
12017a0395d0Smrg	*-digital*)
12027a0395d0Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
12037a0395d0Smrg		;;
12047a0395d0Smrg	*-commodore*)
12057a0395d0Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
12067a0395d0Smrg		;;
12077a0395d0Smrg	*)
12087a0395d0Smrg		;;
12097a0395d0Smrgesac
12107a0395d0Smrg
12117a0395d0Smrg# Decode manufacturer-specific aliases for certain operating systems.
12127a0395d0Smrg
12137a0395d0Smrgif [ x"$os" != x"" ]
12147a0395d0Smrgthen
12157a0395d0Smrgcase $os in
12167a0395d0Smrg        # First match some system type aliases
12177a0395d0Smrg        # that might get confused with valid system types.
12187a0395d0Smrg	# -solaris* is a basic system type, with this one exception.
12197a0395d0Smrg	-solaris1 | -solaris1.*)
12207a0395d0Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
12217a0395d0Smrg		;;
12227a0395d0Smrg	-solaris)
12237a0395d0Smrg		os=-solaris2
12247a0395d0Smrg		;;
12257a0395d0Smrg	-svr4*)
12267a0395d0Smrg		os=-sysv4
12277a0395d0Smrg		;;
12287a0395d0Smrg	-unixware*)
12297a0395d0Smrg		os=-sysv4.2uw
12307a0395d0Smrg		;;
12317a0395d0Smrg	-gnu/linux*)
12327a0395d0Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
12337a0395d0Smrg		;;
12347a0395d0Smrg	# First accept the basic system types.
12357a0395d0Smrg	# The portable systems comes first.
12367a0395d0Smrg	# Each alternative MUST END IN A *, to match a version number.
12377a0395d0Smrg	# -sysv* is not here because it comes later, after sysvr4.
12387a0395d0Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
12397a0395d0Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
12407a0395d0Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
12417a0395d0Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
12427a0395d0Smrg	      | -aos* \
12437a0395d0Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
12447a0395d0Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
12457a0395d0Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
12467a0395d0Smrg	      | -openbsd* | -solidbsd* \
12477a0395d0Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
12487a0395d0Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
12497a0395d0Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
12507a0395d0Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
12517a0395d0Smrg	      | -chorusos* | -chorusrdb* \
12527a0395d0Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
12537a0395d0Smrg	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
12547a0395d0Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
12557a0395d0Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
12567a0395d0Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
12577a0395d0Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
12587a0395d0Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
12597a0395d0Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
12607a0395d0Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
12617a0395d0Smrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
12627a0395d0Smrg	# Remember, each alternative MUST END IN *, to match a version number.
12637a0395d0Smrg		;;
12647a0395d0Smrg	-qnx*)
12657a0395d0Smrg		case $basic_machine in
12667a0395d0Smrg		    x86-* | i*86-*)
12677a0395d0Smrg			;;
12687a0395d0Smrg		    *)
12697a0395d0Smrg			os=-nto$os
12707a0395d0Smrg			;;
12717a0395d0Smrg		esac
12727a0395d0Smrg		;;
12737a0395d0Smrg	-nto-qnx*)
12747a0395d0Smrg		;;
12757a0395d0Smrg	-nto*)
12767a0395d0Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
12777a0395d0Smrg		;;
12787a0395d0Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
12797a0395d0Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
12807a0395d0Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
12817a0395d0Smrg		;;
12827a0395d0Smrg	-mac*)
12837a0395d0Smrg		os=`echo $os | sed -e 's|mac|macos|'`
12847a0395d0Smrg		;;
12857a0395d0Smrg	-linux-dietlibc)
12867a0395d0Smrg		os=-linux-dietlibc
12877a0395d0Smrg		;;
12887a0395d0Smrg	-linux*)
12897a0395d0Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
12907a0395d0Smrg		;;
12917a0395d0Smrg	-sunos5*)
12927a0395d0Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
12937a0395d0Smrg		;;
12947a0395d0Smrg	-sunos6*)
12957a0395d0Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
12967a0395d0Smrg		;;
12977a0395d0Smrg	-opened*)
12987a0395d0Smrg		os=-openedition
12997a0395d0Smrg		;;
13007a0395d0Smrg        -os400*)
13017a0395d0Smrg		os=-os400
13027a0395d0Smrg		;;
13037a0395d0Smrg	-wince*)
13047a0395d0Smrg		os=-wince
13057a0395d0Smrg		;;
13067a0395d0Smrg	-osfrose*)
13077a0395d0Smrg		os=-osfrose
13087a0395d0Smrg		;;
13097a0395d0Smrg	-osf*)
13107a0395d0Smrg		os=-osf
13117a0395d0Smrg		;;
13127a0395d0Smrg	-utek*)
13137a0395d0Smrg		os=-bsd
13147a0395d0Smrg		;;
13157a0395d0Smrg	-dynix*)
13167a0395d0Smrg		os=-bsd
13177a0395d0Smrg		;;
13187a0395d0Smrg	-acis*)
13197a0395d0Smrg		os=-aos
13207a0395d0Smrg		;;
13217a0395d0Smrg	-atheos*)
13227a0395d0Smrg		os=-atheos
13237a0395d0Smrg		;;
13247a0395d0Smrg	-syllable*)
13257a0395d0Smrg		os=-syllable
13267a0395d0Smrg		;;
13277a0395d0Smrg	-386bsd)
13287a0395d0Smrg		os=-bsd
13297a0395d0Smrg		;;
13307a0395d0Smrg	-ctix* | -uts*)
13317a0395d0Smrg		os=-sysv
13327a0395d0Smrg		;;
13337a0395d0Smrg	-nova*)
13347a0395d0Smrg		os=-rtmk-nova
13357a0395d0Smrg		;;
13367a0395d0Smrg	-ns2 )
13377a0395d0Smrg		os=-nextstep2
13387a0395d0Smrg		;;
13397a0395d0Smrg	-nsk*)
13407a0395d0Smrg		os=-nsk
13417a0395d0Smrg		;;
13427a0395d0Smrg	# Preserve the version number of sinix5.
13437a0395d0Smrg	-sinix5.*)
13447a0395d0Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
13457a0395d0Smrg		;;
13467a0395d0Smrg	-sinix*)
13477a0395d0Smrg		os=-sysv4
13487a0395d0Smrg		;;
13497a0395d0Smrg        -tpf*)
13507a0395d0Smrg		os=-tpf
13517a0395d0Smrg		;;
13527a0395d0Smrg	-triton*)
13537a0395d0Smrg		os=-sysv3
13547a0395d0Smrg		;;
13557a0395d0Smrg	-oss*)
13567a0395d0Smrg		os=-sysv3
13577a0395d0Smrg		;;
13587a0395d0Smrg	-svr4)
13597a0395d0Smrg		os=-sysv4
13607a0395d0Smrg		;;
13617a0395d0Smrg	-svr3)
13627a0395d0Smrg		os=-sysv3
13637a0395d0Smrg		;;
13647a0395d0Smrg	-sysvr4)
13657a0395d0Smrg		os=-sysv4
13667a0395d0Smrg		;;
13677a0395d0Smrg	# This must come after -sysvr4.
13687a0395d0Smrg	-sysv*)
13697a0395d0Smrg		;;
13707a0395d0Smrg	-ose*)
13717a0395d0Smrg		os=-ose
13727a0395d0Smrg		;;
13737a0395d0Smrg	-es1800*)
13747a0395d0Smrg		os=-ose
13757a0395d0Smrg		;;
13767a0395d0Smrg	-xenix)
13777a0395d0Smrg		os=-xenix
13787a0395d0Smrg		;;
13797a0395d0Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
13807a0395d0Smrg		os=-mint
13817a0395d0Smrg		;;
13827a0395d0Smrg	-aros*)
13837a0395d0Smrg		os=-aros
13847a0395d0Smrg		;;
13857a0395d0Smrg	-kaos*)
13867a0395d0Smrg		os=-kaos
13877a0395d0Smrg		;;
13887a0395d0Smrg	-zvmoe)
13897a0395d0Smrg		os=-zvmoe
13907a0395d0Smrg		;;
13917a0395d0Smrg	-none)
13927a0395d0Smrg		;;
13937a0395d0Smrg	*)
13947a0395d0Smrg		# Get rid of the `-' at the beginning of $os.
13957a0395d0Smrg		os=`echo $os | sed 's/[^-]*-//'`
13967a0395d0Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
13977a0395d0Smrg		exit 1
13987a0395d0Smrg		;;
13997a0395d0Smrgesac
14007a0395d0Smrgelse
14017a0395d0Smrg
14027a0395d0Smrg# Here we handle the default operating systems that come with various machines.
14037a0395d0Smrg# The value should be what the vendor currently ships out the door with their
14047a0395d0Smrg# machine or put another way, the most popular os provided with the machine.
14057a0395d0Smrg
14067a0395d0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
14077a0395d0Smrg# "-sun"), then you have to tell the case statement up towards the top
14087a0395d0Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
14097a0395d0Smrg# will signal an error saying that MANUFACTURER isn't an operating
14107a0395d0Smrg# system, and we'll never get to this point.
14117a0395d0Smrg
14127a0395d0Smrgcase $basic_machine in
14137a0395d0Smrg        score-*)
14147a0395d0Smrg		os=-elf
14157a0395d0Smrg		;;
14167a0395d0Smrg        spu-*)
14177a0395d0Smrg		os=-elf
14187a0395d0Smrg		;;
14197a0395d0Smrg	*-acorn)
14207a0395d0Smrg		os=-riscix1.2
14217a0395d0Smrg		;;
14227a0395d0Smrg	arm*-rebel)
14237a0395d0Smrg		os=-linux
14247a0395d0Smrg		;;
14257a0395d0Smrg	arm*-semi)
14267a0395d0Smrg		os=-aout
14277a0395d0Smrg		;;
14287a0395d0Smrg        c4x-* | tic4x-*)
14297a0395d0Smrg        	os=-coff
14307a0395d0Smrg		;;
14317a0395d0Smrg	# This must come before the *-dec entry.
14327a0395d0Smrg	pdp10-*)
14337a0395d0Smrg		os=-tops20
14347a0395d0Smrg		;;
14357a0395d0Smrg	pdp11-*)
14367a0395d0Smrg		os=-none
14377a0395d0Smrg		;;
14387a0395d0Smrg	*-dec | vax-*)
14397a0395d0Smrg		os=-ultrix4.2
14407a0395d0Smrg		;;
14417a0395d0Smrg	m68*-apollo)
14427a0395d0Smrg		os=-domain
14437a0395d0Smrg		;;
14447a0395d0Smrg	i386-sun)
14457a0395d0Smrg		os=-sunos4.0.2
14467a0395d0Smrg		;;
14477a0395d0Smrg	m68000-sun)
14487a0395d0Smrg		os=-sunos3
14497a0395d0Smrg		# This also exists in the configure program, but was not the
14507a0395d0Smrg		# default.
14517a0395d0Smrg		# os=-sunos4
14527a0395d0Smrg		;;
14537a0395d0Smrg	m68*-cisco)
14547a0395d0Smrg		os=-aout
14557a0395d0Smrg		;;
14567a0395d0Smrg        mep-*)
14577a0395d0Smrg		os=-elf
14587a0395d0Smrg		;;
14597a0395d0Smrg	mips*-cisco)
14607a0395d0Smrg		os=-elf
14617a0395d0Smrg		;;
14627a0395d0Smrg	mips*-*)
14637a0395d0Smrg		os=-elf
14647a0395d0Smrg		;;
14657a0395d0Smrg	or32-*)
14667a0395d0Smrg		os=-coff
14677a0395d0Smrg		;;
14687a0395d0Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
14697a0395d0Smrg		os=-sysv3
14707a0395d0Smrg		;;
14717a0395d0Smrg	sparc-* | *-sun)
14727a0395d0Smrg		os=-sunos4.1.1
14737a0395d0Smrg		;;
14747a0395d0Smrg	*-be)
14757a0395d0Smrg		os=-beos
14767a0395d0Smrg		;;
14777a0395d0Smrg	*-haiku)
14787a0395d0Smrg		os=-haiku
14797a0395d0Smrg		;;
14807a0395d0Smrg	*-ibm)
14817a0395d0Smrg		os=-aix
14827a0395d0Smrg		;;
14837a0395d0Smrg    	*-knuth)
14847a0395d0Smrg		os=-mmixware
14857a0395d0Smrg		;;
14867a0395d0Smrg	*-wec)
14877a0395d0Smrg		os=-proelf
14887a0395d0Smrg		;;
14897a0395d0Smrg	*-winbond)
14907a0395d0Smrg		os=-proelf
14917a0395d0Smrg		;;
14927a0395d0Smrg	*-oki)
14937a0395d0Smrg		os=-proelf
14947a0395d0Smrg		;;
14957a0395d0Smrg	*-hp)
14967a0395d0Smrg		os=-hpux
14977a0395d0Smrg		;;
14987a0395d0Smrg	*-hitachi)
14997a0395d0Smrg		os=-hiux
15007a0395d0Smrg		;;
15017a0395d0Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
15027a0395d0Smrg		os=-sysv
15037a0395d0Smrg		;;
15047a0395d0Smrg	*-cbm)
15057a0395d0Smrg		os=-amigaos
15067a0395d0Smrg		;;
15077a0395d0Smrg	*-dg)
15087a0395d0Smrg		os=-dgux
15097a0395d0Smrg		;;
15107a0395d0Smrg	*-dolphin)
15117a0395d0Smrg		os=-sysv3
15127a0395d0Smrg		;;
15137a0395d0Smrg	m68k-ccur)
15147a0395d0Smrg		os=-rtu
15157a0395d0Smrg		;;
15167a0395d0Smrg	m88k-omron*)
15177a0395d0Smrg		os=-luna
15187a0395d0Smrg		;;
15197a0395d0Smrg	*-next )
15207a0395d0Smrg		os=-nextstep
15217a0395d0Smrg		;;
15227a0395d0Smrg	*-sequent)
15237a0395d0Smrg		os=-ptx
15247a0395d0Smrg		;;
15257a0395d0Smrg	*-crds)
15267a0395d0Smrg		os=-unos
15277a0395d0Smrg		;;
15287a0395d0Smrg	*-ns)
15297a0395d0Smrg		os=-genix
15307a0395d0Smrg		;;
15317a0395d0Smrg	i370-*)
15327a0395d0Smrg		os=-mvs
15337a0395d0Smrg		;;
15347a0395d0Smrg	*-next)
15357a0395d0Smrg		os=-nextstep3
15367a0395d0Smrg		;;
15377a0395d0Smrg	*-gould)
15387a0395d0Smrg		os=-sysv
15397a0395d0Smrg		;;
15407a0395d0Smrg	*-highlevel)
15417a0395d0Smrg		os=-bsd
15427a0395d0Smrg		;;
15437a0395d0Smrg	*-encore)
15447a0395d0Smrg		os=-bsd
15457a0395d0Smrg		;;
15467a0395d0Smrg	*-sgi)
15477a0395d0Smrg		os=-irix
15487a0395d0Smrg		;;
15497a0395d0Smrg	*-siemens)
15507a0395d0Smrg		os=-sysv4
15517a0395d0Smrg		;;
15527a0395d0Smrg	*-masscomp)
15537a0395d0Smrg		os=-rtu
15547a0395d0Smrg		;;
15557a0395d0Smrg	f30[01]-fujitsu | f700-fujitsu)
15567a0395d0Smrg		os=-uxpv
15577a0395d0Smrg		;;
15587a0395d0Smrg	*-rom68k)
15597a0395d0Smrg		os=-coff
15607a0395d0Smrg		;;
15617a0395d0Smrg	*-*bug)
15627a0395d0Smrg		os=-coff
15637a0395d0Smrg		;;
15647a0395d0Smrg	*-apple)
15657a0395d0Smrg		os=-macos
15667a0395d0Smrg		;;
15677a0395d0Smrg	*-atari*)
15687a0395d0Smrg		os=-mint
15697a0395d0Smrg		;;
15707a0395d0Smrg	*)
15717a0395d0Smrg		os=-none
15727a0395d0Smrg		;;
15737a0395d0Smrgesac
15747a0395d0Smrgfi
15757a0395d0Smrg
15767a0395d0Smrg# Here we handle the case where we know the os, and the CPU type, but not the
15777a0395d0Smrg# manufacturer.  We pick the logical manufacturer.
15787a0395d0Smrgvendor=unknown
15797a0395d0Smrgcase $basic_machine in
15807a0395d0Smrg	*-unknown)
15817a0395d0Smrg		case $os in
15827a0395d0Smrg			-riscix*)
15837a0395d0Smrg				vendor=acorn
15847a0395d0Smrg				;;
15857a0395d0Smrg			-sunos*)
15867a0395d0Smrg				vendor=sun
15877a0395d0Smrg				;;
15887a0395d0Smrg			-aix*)
15897a0395d0Smrg				vendor=ibm
15907a0395d0Smrg				;;
15917a0395d0Smrg			-beos*)
15927a0395d0Smrg				vendor=be
15937a0395d0Smrg				;;
15947a0395d0Smrg			-hpux*)
15957a0395d0Smrg				vendor=hp
15967a0395d0Smrg				;;
15977a0395d0Smrg			-mpeix*)
15987a0395d0Smrg				vendor=hp
15997a0395d0Smrg				;;
16007a0395d0Smrg			-hiux*)
16017a0395d0Smrg				vendor=hitachi
16027a0395d0Smrg				;;
16037a0395d0Smrg			-unos*)
16047a0395d0Smrg				vendor=crds
16057a0395d0Smrg				;;
16067a0395d0Smrg			-dgux*)
16077a0395d0Smrg				vendor=dg
16087a0395d0Smrg				;;
16097a0395d0Smrg			-luna*)
16107a0395d0Smrg				vendor=omron
16117a0395d0Smrg				;;
16127a0395d0Smrg			-genix*)
16137a0395d0Smrg				vendor=ns
16147a0395d0Smrg				;;
16157a0395d0Smrg			-mvs* | -opened*)
16167a0395d0Smrg				vendor=ibm
16177a0395d0Smrg				;;
16187a0395d0Smrg			-os400*)
16197a0395d0Smrg				vendor=ibm
16207a0395d0Smrg				;;
16217a0395d0Smrg			-ptx*)
16227a0395d0Smrg				vendor=sequent
16237a0395d0Smrg				;;
16247a0395d0Smrg			-tpf*)
16257a0395d0Smrg				vendor=ibm
16267a0395d0Smrg				;;
16277a0395d0Smrg			-vxsim* | -vxworks* | -windiss*)
16287a0395d0Smrg				vendor=wrs
16297a0395d0Smrg				;;
16307a0395d0Smrg			-aux*)
16317a0395d0Smrg				vendor=apple
16327a0395d0Smrg				;;
16337a0395d0Smrg			-hms*)
16347a0395d0Smrg				vendor=hitachi
16357a0395d0Smrg				;;
16367a0395d0Smrg			-mpw* | -macos*)
16377a0395d0Smrg				vendor=apple
16387a0395d0Smrg				;;
16397a0395d0Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
16407a0395d0Smrg				vendor=atari
16417a0395d0Smrg				;;
16427a0395d0Smrg			-vos*)
16437a0395d0Smrg				vendor=stratus
16447a0395d0Smrg				;;
16457a0395d0Smrg		esac
16467a0395d0Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
16477a0395d0Smrg		;;
16487a0395d0Smrgesac
16497a0395d0Smrg
16507a0395d0Smrgecho $basic_machine$os
16517a0395d0Smrgexit
16527a0395d0Smrg
16537a0395d0Smrg# Local variables:
16547a0395d0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
16557a0395d0Smrg# time-stamp-start: "timestamp='"
16567a0395d0Smrg# time-stamp-format: "%:y-%02m-%02d"
16577a0395d0Smrg# time-stamp-end: "'"
16587a0395d0Smrg# End:
1659