config.sub revision 8255a313
18255a313Smrg#! /bin/sh
28255a313Smrg# Configuration validation subroutine script.
38255a313Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
48255a313Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
58255a313Smrg#   Free Software Foundation, Inc.
68255a313Smrg
78255a313Smrgtimestamp='2009-04-17'
88255a313Smrg
98255a313Smrg# This file is (in principle) common to ALL GNU software.
108255a313Smrg# The presence of a machine in this file suggests that SOME GNU software
118255a313Smrg# can handle that machine.  It does not imply ALL GNU software can.
128255a313Smrg#
138255a313Smrg# This file is free software; you can redistribute it and/or modify
148255a313Smrg# it under the terms of the GNU General Public License as published by
158255a313Smrg# the Free Software Foundation; either version 2 of the License, or
168255a313Smrg# (at your option) any later version.
178255a313Smrg#
188255a313Smrg# This program is distributed in the hope that it will be useful,
198255a313Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of
208255a313Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
218255a313Smrg# GNU General Public License for more details.
228255a313Smrg#
238255a313Smrg# You should have received a copy of the GNU General Public License
248255a313Smrg# along with this program; if not, write to the Free Software
258255a313Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
268255a313Smrg# 02110-1301, USA.
278255a313Smrg#
288255a313Smrg# As a special exception to the GNU General Public License, if you
298255a313Smrg# distribute this file as part of a program that contains a
308255a313Smrg# configuration script generated by Autoconf, you may include it under
318255a313Smrg# the same distribution terms that you use for the rest of that program.
328255a313Smrg
338255a313Smrg
348255a313Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
358255a313Smrg# diff and a properly formatted ChangeLog entry.
368255a313Smrg#
378255a313Smrg# Configuration subroutine to validate and canonicalize a configuration type.
388255a313Smrg# Supply the specified configuration type as an argument.
398255a313Smrg# If it is invalid, we print an error message on stderr and exit with code 1.
408255a313Smrg# Otherwise, we print the canonical config type on stdout and succeed.
418255a313Smrg
428255a313Smrg# This file is supposed to be the same for all GNU packages
438255a313Smrg# and recognize all the CPU types, system types and aliases
448255a313Smrg# that are meaningful with *any* GNU software.
458255a313Smrg# Each package is responsible for reporting which valid configurations
468255a313Smrg# it does not support.  The user should be able to distinguish
478255a313Smrg# a failure to support a valid configuration from a meaningless
488255a313Smrg# configuration.
498255a313Smrg
508255a313Smrg# The goal of this file is to map all the various variations of a given
518255a313Smrg# machine specification into a single specification in the form:
528255a313Smrg#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
538255a313Smrg# or in some cases, the newer four-part form:
548255a313Smrg#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
558255a313Smrg# It is wrong to echo any other type of specification.
568255a313Smrg
578255a313Smrgme=`echo "$0" | sed -e 's,.*/,,'`
588255a313Smrg
598255a313Smrgusage="\
608255a313SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS
618255a313Smrg       $0 [OPTION] ALIAS
628255a313Smrg
638255a313SmrgCanonicalize a configuration name.
648255a313Smrg
658255a313SmrgOperation modes:
668255a313Smrg  -h, --help         print this help, then exit
678255a313Smrg  -t, --time-stamp   print date of last modification, then exit
688255a313Smrg  -v, --version      print version number, then exit
698255a313Smrg
708255a313SmrgReport bugs and patches to <config-patches@gnu.org>."
718255a313Smrg
728255a313Smrgversion="\
738255a313SmrgGNU config.sub ($timestamp)
748255a313Smrg
758255a313SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
768255a313Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
778255a313Smrg
788255a313SmrgThis is free software; see the source for copying conditions.  There is NO
798255a313Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
808255a313Smrg
818255a313Smrghelp="
828255a313SmrgTry \`$me --help' for more information."
838255a313Smrg
848255a313Smrg# Parse command line
858255a313Smrgwhile test $# -gt 0 ; do
868255a313Smrg  case $1 in
878255a313Smrg    --time-stamp | --time* | -t )
888255a313Smrg       echo "$timestamp" ; exit ;;
898255a313Smrg    --version | -v )
908255a313Smrg       echo "$version" ; exit ;;
918255a313Smrg    --help | --h* | -h )
928255a313Smrg       echo "$usage"; exit ;;
938255a313Smrg    -- )     # Stop option processing
948255a313Smrg       shift; break ;;
958255a313Smrg    - )	# Use stdin as input.
968255a313Smrg       break ;;
978255a313Smrg    -* )
988255a313Smrg       echo "$me: invalid option $1$help"
998255a313Smrg       exit 1 ;;
1008255a313Smrg
1018255a313Smrg    *local*)
1028255a313Smrg       # First pass through any local machine types.
1038255a313Smrg       echo $1
1048255a313Smrg       exit ;;
1058255a313Smrg
1068255a313Smrg    * )
1078255a313Smrg       break ;;
1088255a313Smrg  esac
1098255a313Smrgdone
1108255a313Smrg
1118255a313Smrgcase $# in
1128255a313Smrg 0) echo "$me: missing argument$help" >&2
1138255a313Smrg    exit 1;;
1148255a313Smrg 1) ;;
1158255a313Smrg *) echo "$me: too many arguments$help" >&2
1168255a313Smrg    exit 1;;
1178255a313Smrgesac
1188255a313Smrg
1198255a313Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
1208255a313Smrg# Here we must recognize all the valid KERNEL-OS combinations.
1218255a313Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
1228255a313Smrgcase $maybe_os in
1238255a313Smrg  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
1248255a313Smrg  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
1258255a313Smrg  kopensolaris*-gnu* | \
1268255a313Smrg  storm-chaos* | os2-emx* | rtmk-nova*)
1278255a313Smrg    os=-$maybe_os
1288255a313Smrg    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1298255a313Smrg    ;;
1308255a313Smrg  *)
1318255a313Smrg    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
1328255a313Smrg    if [ $basic_machine != $1 ]
1338255a313Smrg    then os=`echo $1 | sed 's/.*-/-/'`
1348255a313Smrg    else os=; fi
1358255a313Smrg    ;;
1368255a313Smrgesac
1378255a313Smrg
1388255a313Smrg### Let's recognize common machines as not being operating systems so
1398255a313Smrg### that things like config.sub decstation-3100 work.  We also
1408255a313Smrg### recognize some manufacturers as not being operating systems, so we
1418255a313Smrg### can provide default operating systems below.
1428255a313Smrgcase $os in
1438255a313Smrg	-sun*os*)
1448255a313Smrg		# Prevent following clause from handling this invalid input.
1458255a313Smrg		;;
1468255a313Smrg	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
1478255a313Smrg	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1488255a313Smrg	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
1498255a313Smrg	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
1508255a313Smrg	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
1518255a313Smrg	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
1528255a313Smrg	-apple | -axis | -knuth | -cray)
1538255a313Smrg		os=
1548255a313Smrg		basic_machine=$1
1558255a313Smrg		;;
1568255a313Smrg	-sim | -cisco | -oki | -wec | -winbond)
1578255a313Smrg		os=
1588255a313Smrg		basic_machine=$1
1598255a313Smrg		;;
1608255a313Smrg	-scout)
1618255a313Smrg		;;
1628255a313Smrg	-wrs)
1638255a313Smrg		os=-vxworks
1648255a313Smrg		basic_machine=$1
1658255a313Smrg		;;
1668255a313Smrg	-chorusos*)
1678255a313Smrg		os=-chorusos
1688255a313Smrg		basic_machine=$1
1698255a313Smrg		;;
1708255a313Smrg 	-chorusrdb)
1718255a313Smrg 		os=-chorusrdb
1728255a313Smrg		basic_machine=$1
1738255a313Smrg 		;;
1748255a313Smrg	-hiux*)
1758255a313Smrg		os=-hiuxwe2
1768255a313Smrg		;;
1778255a313Smrg	-sco6)
1788255a313Smrg		os=-sco5v6
1798255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1808255a313Smrg		;;
1818255a313Smrg	-sco5)
1828255a313Smrg		os=-sco3.2v5
1838255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1848255a313Smrg		;;
1858255a313Smrg	-sco4)
1868255a313Smrg		os=-sco3.2v4
1878255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1888255a313Smrg		;;
1898255a313Smrg	-sco3.2.[4-9]*)
1908255a313Smrg		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
1918255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1928255a313Smrg		;;
1938255a313Smrg	-sco3.2v[4-9]*)
1948255a313Smrg		# Don't forget version if it is 3.2v4 or newer.
1958255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
1968255a313Smrg		;;
1978255a313Smrg	-sco5v6*)
1988255a313Smrg		# Don't forget version if it is 3.2v4 or newer.
1998255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2008255a313Smrg		;;
2018255a313Smrg	-sco*)
2028255a313Smrg		os=-sco3.2v2
2038255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2048255a313Smrg		;;
2058255a313Smrg	-udk*)
2068255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2078255a313Smrg		;;
2088255a313Smrg	-isc)
2098255a313Smrg		os=-isc2.2
2108255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2118255a313Smrg		;;
2128255a313Smrg	-clix*)
2138255a313Smrg		basic_machine=clipper-intergraph
2148255a313Smrg		;;
2158255a313Smrg	-isc*)
2168255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
2178255a313Smrg		;;
2188255a313Smrg	-lynx*)
2198255a313Smrg		os=-lynxos
2208255a313Smrg		;;
2218255a313Smrg	-ptx*)
2228255a313Smrg		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
2238255a313Smrg		;;
2248255a313Smrg	-windowsnt*)
2258255a313Smrg		os=`echo $os | sed -e 's/windowsnt/winnt/'`
2268255a313Smrg		;;
2278255a313Smrg	-psos*)
2288255a313Smrg		os=-psos
2298255a313Smrg		;;
2308255a313Smrg	-mint | -mint[0-9]*)
2318255a313Smrg		basic_machine=m68k-atari
2328255a313Smrg		os=-mint
2338255a313Smrg		;;
2348255a313Smrgesac
2358255a313Smrg
2368255a313Smrg# Decode aliases for certain CPU-COMPANY combinations.
2378255a313Smrgcase $basic_machine in
2388255a313Smrg	# Recognize the basic CPU types without company name.
2398255a313Smrg	# Some are omitted here because they have special meanings below.
2408255a313Smrg	1750a | 580 \
2418255a313Smrg	| a29k \
2428255a313Smrg	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
2438255a313Smrg	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
2448255a313Smrg	| am33_2.0 \
2458255a313Smrg	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
2468255a313Smrg	| bfin \
2478255a313Smrg	| c4x | clipper \
2488255a313Smrg	| d10v | d30v | dlx | dsp16xx \
2498255a313Smrg	| fido | fr30 | frv \
2508255a313Smrg	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
2518255a313Smrg	| i370 | i860 | i960 | ia64 \
2528255a313Smrg	| ip2k | iq2000 \
2538255a313Smrg	| lm32 \
2548255a313Smrg	| m32c | m32r | m32rle | m68000 | m68k | m88k \
2558255a313Smrg	| maxq | mb | microblaze | mcore | mep | metag \
2568255a313Smrg	| mips | mipsbe | mipseb | mipsel | mipsle \
2578255a313Smrg	| mips16 \
2588255a313Smrg	| mips64 | mips64el \
2598255a313Smrg	| mips64octeon | mips64octeonel \
2608255a313Smrg	| mips64orion | mips64orionel \
2618255a313Smrg	| mips64r5900 | mips64r5900el \
2628255a313Smrg	| mips64vr | mips64vrel \
2638255a313Smrg	| mips64vr4100 | mips64vr4100el \
2648255a313Smrg	| mips64vr4300 | mips64vr4300el \
2658255a313Smrg	| mips64vr5000 | mips64vr5000el \
2668255a313Smrg	| mips64vr5900 | mips64vr5900el \
2678255a313Smrg	| mipsisa32 | mipsisa32el \
2688255a313Smrg	| mipsisa32r2 | mipsisa32r2el \
2698255a313Smrg	| mipsisa64 | mipsisa64el \
2708255a313Smrg	| mipsisa64r2 | mipsisa64r2el \
2718255a313Smrg	| mipsisa64sb1 | mipsisa64sb1el \
2728255a313Smrg	| mipsisa64sr71k | mipsisa64sr71kel \
2738255a313Smrg	| mipstx39 | mipstx39el \
2748255a313Smrg	| mn10200 | mn10300 \
2758255a313Smrg	| moxie \
2768255a313Smrg	| mt \
2778255a313Smrg	| msp430 \
2788255a313Smrg	| nios | nios2 \
2798255a313Smrg	| ns16k | ns32k \
2808255a313Smrg	| or32 \
2818255a313Smrg	| pdp10 | pdp11 | pj | pjl \
2828255a313Smrg	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
2838255a313Smrg	| pyramid \
2848255a313Smrg	| score \
2858255a313Smrg	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
2868255a313Smrg	| sh64 | sh64le \
2878255a313Smrg	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
2888255a313Smrg	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
2898255a313Smrg	| spu | strongarm \
2908255a313Smrg	| tahoe | thumb | tic4x | tic80 | tron \
2918255a313Smrg	| v850 | v850e \
2928255a313Smrg	| we32k \
2938255a313Smrg	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
2948255a313Smrg	| z8k | z80)
2958255a313Smrg		basic_machine=$basic_machine-unknown
2968255a313Smrg		;;
2978255a313Smrg	m6811 | m68hc11 | m6812 | m68hc12)
2988255a313Smrg		# Motorola 68HC11/12.
2998255a313Smrg		basic_machine=$basic_machine-unknown
3008255a313Smrg		os=-none
3018255a313Smrg		;;
3028255a313Smrg	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
3038255a313Smrg		;;
3048255a313Smrg	ms1)
3058255a313Smrg		basic_machine=mt-unknown
3068255a313Smrg		;;
3078255a313Smrg
3088255a313Smrg	# We use `pc' rather than `unknown'
3098255a313Smrg	# because (1) that's what they normally are, and
3108255a313Smrg	# (2) the word "unknown" tends to confuse beginning users.
3118255a313Smrg	i*86 | x86_64)
3128255a313Smrg	  basic_machine=$basic_machine-pc
3138255a313Smrg	  ;;
3148255a313Smrg	# Object if more than one company name word.
3158255a313Smrg	*-*-*)
3168255a313Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
3178255a313Smrg		exit 1
3188255a313Smrg		;;
3198255a313Smrg	# Recognize the basic CPU types with company name.
3208255a313Smrg	580-* \
3218255a313Smrg	| a29k-* \
3228255a313Smrg	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3238255a313Smrg	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3248255a313Smrg	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
3258255a313Smrg	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
3268255a313Smrg	| avr-* | avr32-* \
3278255a313Smrg	| bfin-* | bs2000-* \
3288255a313Smrg	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
3298255a313Smrg	| clipper-* | craynv-* | cydra-* \
3308255a313Smrg	| d10v-* | d30v-* | dlx-* \
3318255a313Smrg	| elxsi-* \
3328255a313Smrg	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
3338255a313Smrg	| h8300-* | h8500-* \
3348255a313Smrg	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
3358255a313Smrg	| i*86-* | i860-* | i960-* | ia64-* \
3368255a313Smrg	| ip2k-* | iq2000-* \
3378255a313Smrg	| lm32-* \
3388255a313Smrg	| m32c-* | m32r-* | m32rle-* \
3398255a313Smrg	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
3408255a313Smrg	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
3418255a313Smrg	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
3428255a313Smrg	| mips16-* \
3438255a313Smrg	| mips64-* | mips64el-* \
3448255a313Smrg	| mips64octeon-* | mips64octeonel-* \
3458255a313Smrg	| mips64orion-* | mips64orionel-* \
3468255a313Smrg	| mips64r5900-* | mips64r5900el-* \
3478255a313Smrg	| mips64vr-* | mips64vrel-* \
3488255a313Smrg	| mips64vr4100-* | mips64vr4100el-* \
3498255a313Smrg	| mips64vr4300-* | mips64vr4300el-* \
3508255a313Smrg	| mips64vr5000-* | mips64vr5000el-* \
3518255a313Smrg	| mips64vr5900-* | mips64vr5900el-* \
3528255a313Smrg	| mipsisa32-* | mipsisa32el-* \
3538255a313Smrg	| mipsisa32r2-* | mipsisa32r2el-* \
3548255a313Smrg	| mipsisa64-* | mipsisa64el-* \
3558255a313Smrg	| mipsisa64r2-* | mipsisa64r2el-* \
3568255a313Smrg	| mipsisa64sb1-* | mipsisa64sb1el-* \
3578255a313Smrg	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
3588255a313Smrg	| mipstx39-* | mipstx39el-* \
3598255a313Smrg	| mmix-* \
3608255a313Smrg	| mt-* \
3618255a313Smrg	| msp430-* \
3628255a313Smrg	| nios-* | nios2-* \
3638255a313Smrg	| none-* | np1-* | ns16k-* | ns32k-* \
3648255a313Smrg	| orion-* \
3658255a313Smrg	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
3668255a313Smrg	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
3678255a313Smrg	| pyramid-* \
3688255a313Smrg	| romp-* | rs6000-* \
3698255a313Smrg	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
3708255a313Smrg	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
3718255a313Smrg	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
3728255a313Smrg	| sparclite-* \
3738255a313Smrg	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
3748255a313Smrg	| tahoe-* | thumb-* \
3758255a313Smrg	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
3768255a313Smrg	| tron-* \
3778255a313Smrg	| v850-* | v850e-* | vax-* \
3788255a313Smrg	| we32k-* \
3798255a313Smrg	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
3808255a313Smrg	| xstormy16-* | xtensa*-* \
3818255a313Smrg	| ymp-* \
3828255a313Smrg	| z8k-* | z80-*)
3838255a313Smrg		;;
3848255a313Smrg	# Recognize the basic CPU types without company name, with glob match.
3858255a313Smrg	xtensa*)
3868255a313Smrg		basic_machine=$basic_machine-unknown
3878255a313Smrg		;;
3888255a313Smrg	# Recognize the various machine names and aliases which stand
3898255a313Smrg	# for a CPU type and a company and sometimes even an OS.
3908255a313Smrg	386bsd)
3918255a313Smrg		basic_machine=i386-unknown
3928255a313Smrg		os=-bsd
3938255a313Smrg		;;
3948255a313Smrg	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
3958255a313Smrg		basic_machine=m68000-att
3968255a313Smrg		;;
3978255a313Smrg	3b*)
3988255a313Smrg		basic_machine=we32k-att
3998255a313Smrg		;;
4008255a313Smrg	a29khif)
4018255a313Smrg		basic_machine=a29k-amd
4028255a313Smrg		os=-udi
4038255a313Smrg		;;
4048255a313Smrg    	abacus)
4058255a313Smrg		basic_machine=abacus-unknown
4068255a313Smrg		;;
4078255a313Smrg	adobe68k)
4088255a313Smrg		basic_machine=m68010-adobe
4098255a313Smrg		os=-scout
4108255a313Smrg		;;
4118255a313Smrg	alliant | fx80)
4128255a313Smrg		basic_machine=fx80-alliant
4138255a313Smrg		;;
4148255a313Smrg	altos | altos3068)
4158255a313Smrg		basic_machine=m68k-altos
4168255a313Smrg		;;
4178255a313Smrg	am29k)
4188255a313Smrg		basic_machine=a29k-none
4198255a313Smrg		os=-bsd
4208255a313Smrg		;;
4218255a313Smrg	amd64)
4228255a313Smrg		basic_machine=x86_64-pc
4238255a313Smrg		;;
4248255a313Smrg	amd64-*)
4258255a313Smrg		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
4268255a313Smrg		;;
4278255a313Smrg	amdahl)
4288255a313Smrg		basic_machine=580-amdahl
4298255a313Smrg		os=-sysv
4308255a313Smrg		;;
4318255a313Smrg	amiga | amiga-*)
4328255a313Smrg		basic_machine=m68k-unknown
4338255a313Smrg		;;
4348255a313Smrg	amigaos | amigados)
4358255a313Smrg		basic_machine=m68k-unknown
4368255a313Smrg		os=-amigaos
4378255a313Smrg		;;
4388255a313Smrg	amigaunix | amix)
4398255a313Smrg		basic_machine=m68k-unknown
4408255a313Smrg		os=-sysv4
4418255a313Smrg		;;
4428255a313Smrg	apollo68)
4438255a313Smrg		basic_machine=m68k-apollo
4448255a313Smrg		os=-sysv
4458255a313Smrg		;;
4468255a313Smrg	apollo68bsd)
4478255a313Smrg		basic_machine=m68k-apollo
4488255a313Smrg		os=-bsd
4498255a313Smrg		;;
4508255a313Smrg	aros)
4518255a313Smrg		basic_machine=i386-pc
4528255a313Smrg		os=-aros
4538255a313Smrg		;;
4548255a313Smrg	aux)
4558255a313Smrg		basic_machine=m68k-apple
4568255a313Smrg		os=-aux
4578255a313Smrg		;;
4588255a313Smrg	balance)
4598255a313Smrg		basic_machine=ns32k-sequent
4608255a313Smrg		os=-dynix
4618255a313Smrg		;;
4628255a313Smrg	blackfin)
4638255a313Smrg		basic_machine=bfin-unknown
4648255a313Smrg		os=-linux
4658255a313Smrg		;;
4668255a313Smrg	blackfin-*)
4678255a313Smrg		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
4688255a313Smrg		os=-linux
4698255a313Smrg		;;
4708255a313Smrg	c90)
4718255a313Smrg		basic_machine=c90-cray
4728255a313Smrg		os=-unicos
4738255a313Smrg		;;
4748255a313Smrg        cegcc)
4758255a313Smrg		basic_machine=arm-unknown
4768255a313Smrg		os=-cegcc
4778255a313Smrg		;;
4788255a313Smrg	convex-c1)
4798255a313Smrg		basic_machine=c1-convex
4808255a313Smrg		os=-bsd
4818255a313Smrg		;;
4828255a313Smrg	convex-c2)
4838255a313Smrg		basic_machine=c2-convex
4848255a313Smrg		os=-bsd
4858255a313Smrg		;;
4868255a313Smrg	convex-c32)
4878255a313Smrg		basic_machine=c32-convex
4888255a313Smrg		os=-bsd
4898255a313Smrg		;;
4908255a313Smrg	convex-c34)
4918255a313Smrg		basic_machine=c34-convex
4928255a313Smrg		os=-bsd
4938255a313Smrg		;;
4948255a313Smrg	convex-c38)
4958255a313Smrg		basic_machine=c38-convex
4968255a313Smrg		os=-bsd
4978255a313Smrg		;;
4988255a313Smrg	cray | j90)
4998255a313Smrg		basic_machine=j90-cray
5008255a313Smrg		os=-unicos
5018255a313Smrg		;;
5028255a313Smrg	craynv)
5038255a313Smrg		basic_machine=craynv-cray
5048255a313Smrg		os=-unicosmp
5058255a313Smrg		;;
5068255a313Smrg	cr16)
5078255a313Smrg		basic_machine=cr16-unknown
5088255a313Smrg		os=-elf
5098255a313Smrg		;;
5108255a313Smrg	crds | unos)
5118255a313Smrg		basic_machine=m68k-crds
5128255a313Smrg		;;
5138255a313Smrg	crisv32 | crisv32-* | etraxfs*)
5148255a313Smrg		basic_machine=crisv32-axis
5158255a313Smrg		;;
5168255a313Smrg	cris | cris-* | etrax*)
5178255a313Smrg		basic_machine=cris-axis
5188255a313Smrg		;;
5198255a313Smrg	crx)
5208255a313Smrg		basic_machine=crx-unknown
5218255a313Smrg		os=-elf
5228255a313Smrg		;;
5238255a313Smrg	da30 | da30-*)
5248255a313Smrg		basic_machine=m68k-da30
5258255a313Smrg		;;
5268255a313Smrg	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
5278255a313Smrg		basic_machine=mips-dec
5288255a313Smrg		;;
5298255a313Smrg	decsystem10* | dec10*)
5308255a313Smrg		basic_machine=pdp10-dec
5318255a313Smrg		os=-tops10
5328255a313Smrg		;;
5338255a313Smrg	decsystem20* | dec20*)
5348255a313Smrg		basic_machine=pdp10-dec
5358255a313Smrg		os=-tops20
5368255a313Smrg		;;
5378255a313Smrg	delta | 3300 | motorola-3300 | motorola-delta \
5388255a313Smrg	      | 3300-motorola | delta-motorola)
5398255a313Smrg		basic_machine=m68k-motorola
5408255a313Smrg		;;
5418255a313Smrg	delta88)
5428255a313Smrg		basic_machine=m88k-motorola
5438255a313Smrg		os=-sysv3
5448255a313Smrg		;;
5458255a313Smrg	dicos)
5468255a313Smrg		basic_machine=i686-pc
5478255a313Smrg		os=-dicos
5488255a313Smrg		;;
5498255a313Smrg	djgpp)
5508255a313Smrg		basic_machine=i586-pc
5518255a313Smrg		os=-msdosdjgpp
5528255a313Smrg		;;
5538255a313Smrg	dpx20 | dpx20-*)
5548255a313Smrg		basic_machine=rs6000-bull
5558255a313Smrg		os=-bosx
5568255a313Smrg		;;
5578255a313Smrg	dpx2* | dpx2*-bull)
5588255a313Smrg		basic_machine=m68k-bull
5598255a313Smrg		os=-sysv3
5608255a313Smrg		;;
5618255a313Smrg	ebmon29k)
5628255a313Smrg		basic_machine=a29k-amd
5638255a313Smrg		os=-ebmon
5648255a313Smrg		;;
5658255a313Smrg	elxsi)
5668255a313Smrg		basic_machine=elxsi-elxsi
5678255a313Smrg		os=-bsd
5688255a313Smrg		;;
5698255a313Smrg	encore | umax | mmax)
5708255a313Smrg		basic_machine=ns32k-encore
5718255a313Smrg		;;
5728255a313Smrg	es1800 | OSE68k | ose68k | ose | OSE)
5738255a313Smrg		basic_machine=m68k-ericsson
5748255a313Smrg		os=-ose
5758255a313Smrg		;;
5768255a313Smrg	fx2800)
5778255a313Smrg		basic_machine=i860-alliant
5788255a313Smrg		;;
5798255a313Smrg	genix)
5808255a313Smrg		basic_machine=ns32k-ns
5818255a313Smrg		;;
5828255a313Smrg	gmicro)
5838255a313Smrg		basic_machine=tron-gmicro
5848255a313Smrg		os=-sysv
5858255a313Smrg		;;
5868255a313Smrg	go32)
5878255a313Smrg		basic_machine=i386-pc
5888255a313Smrg		os=-go32
5898255a313Smrg		;;
5908255a313Smrg	h3050r* | hiux*)
5918255a313Smrg		basic_machine=hppa1.1-hitachi
5928255a313Smrg		os=-hiuxwe2
5938255a313Smrg		;;
5948255a313Smrg	h8300hms)
5958255a313Smrg		basic_machine=h8300-hitachi
5968255a313Smrg		os=-hms
5978255a313Smrg		;;
5988255a313Smrg	h8300xray)
5998255a313Smrg		basic_machine=h8300-hitachi
6008255a313Smrg		os=-xray
6018255a313Smrg		;;
6028255a313Smrg	h8500hms)
6038255a313Smrg		basic_machine=h8500-hitachi
6048255a313Smrg		os=-hms
6058255a313Smrg		;;
6068255a313Smrg	harris)
6078255a313Smrg		basic_machine=m88k-harris
6088255a313Smrg		os=-sysv3
6098255a313Smrg		;;
6108255a313Smrg	hp300-*)
6118255a313Smrg		basic_machine=m68k-hp
6128255a313Smrg		;;
6138255a313Smrg	hp300bsd)
6148255a313Smrg		basic_machine=m68k-hp
6158255a313Smrg		os=-bsd
6168255a313Smrg		;;
6178255a313Smrg	hp300hpux)
6188255a313Smrg		basic_machine=m68k-hp
6198255a313Smrg		os=-hpux
6208255a313Smrg		;;
6218255a313Smrg	hp3k9[0-9][0-9] | hp9[0-9][0-9])
6228255a313Smrg		basic_machine=hppa1.0-hp
6238255a313Smrg		;;
6248255a313Smrg	hp9k2[0-9][0-9] | hp9k31[0-9])
6258255a313Smrg		basic_machine=m68000-hp
6268255a313Smrg		;;
6278255a313Smrg	hp9k3[2-9][0-9])
6288255a313Smrg		basic_machine=m68k-hp
6298255a313Smrg		;;
6308255a313Smrg	hp9k6[0-9][0-9] | hp6[0-9][0-9])
6318255a313Smrg		basic_machine=hppa1.0-hp
6328255a313Smrg		;;
6338255a313Smrg	hp9k7[0-79][0-9] | hp7[0-79][0-9])
6348255a313Smrg		basic_machine=hppa1.1-hp
6358255a313Smrg		;;
6368255a313Smrg	hp9k78[0-9] | hp78[0-9])
6378255a313Smrg		# FIXME: really hppa2.0-hp
6388255a313Smrg		basic_machine=hppa1.1-hp
6398255a313Smrg		;;
6408255a313Smrg	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
6418255a313Smrg		# FIXME: really hppa2.0-hp
6428255a313Smrg		basic_machine=hppa1.1-hp
6438255a313Smrg		;;
6448255a313Smrg	hp9k8[0-9][13679] | hp8[0-9][13679])
6458255a313Smrg		basic_machine=hppa1.1-hp
6468255a313Smrg		;;
6478255a313Smrg	hp9k8[0-9][0-9] | hp8[0-9][0-9])
6488255a313Smrg		basic_machine=hppa1.0-hp
6498255a313Smrg		;;
6508255a313Smrg	hppa-next)
6518255a313Smrg		os=-nextstep3
6528255a313Smrg		;;
6538255a313Smrg	hppaosf)
6548255a313Smrg		basic_machine=hppa1.1-hp
6558255a313Smrg		os=-osf
6568255a313Smrg		;;
6578255a313Smrg	hppro)
6588255a313Smrg		basic_machine=hppa1.1-hp
6598255a313Smrg		os=-proelf
6608255a313Smrg		;;
6618255a313Smrg	i370-ibm* | ibm*)
6628255a313Smrg		basic_machine=i370-ibm
6638255a313Smrg		;;
6648255a313Smrg# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
6658255a313Smrg	i*86v32)
6668255a313Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6678255a313Smrg		os=-sysv32
6688255a313Smrg		;;
6698255a313Smrg	i*86v4*)
6708255a313Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6718255a313Smrg		os=-sysv4
6728255a313Smrg		;;
6738255a313Smrg	i*86v)
6748255a313Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6758255a313Smrg		os=-sysv
6768255a313Smrg		;;
6778255a313Smrg	i*86sol2)
6788255a313Smrg		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
6798255a313Smrg		os=-solaris2
6808255a313Smrg		;;
6818255a313Smrg	i386mach)
6828255a313Smrg		basic_machine=i386-mach
6838255a313Smrg		os=-mach
6848255a313Smrg		;;
6858255a313Smrg	i386-vsta | vsta)
6868255a313Smrg		basic_machine=i386-unknown
6878255a313Smrg		os=-vsta
6888255a313Smrg		;;
6898255a313Smrg	iris | iris4d)
6908255a313Smrg		basic_machine=mips-sgi
6918255a313Smrg		case $os in
6928255a313Smrg		    -irix*)
6938255a313Smrg			;;
6948255a313Smrg		    *)
6958255a313Smrg			os=-irix4
6968255a313Smrg			;;
6978255a313Smrg		esac
6988255a313Smrg		;;
6998255a313Smrg	isi68 | isi)
7008255a313Smrg		basic_machine=m68k-isi
7018255a313Smrg		os=-sysv
7028255a313Smrg		;;
7038255a313Smrg	m68knommu)
7048255a313Smrg		basic_machine=m68k-unknown
7058255a313Smrg		os=-linux
7068255a313Smrg		;;
7078255a313Smrg	m68knommu-*)
7088255a313Smrg		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
7098255a313Smrg		os=-linux
7108255a313Smrg		;;
7118255a313Smrg	m88k-omron*)
7128255a313Smrg		basic_machine=m88k-omron
7138255a313Smrg		;;
7148255a313Smrg	magnum | m3230)
7158255a313Smrg		basic_machine=mips-mips
7168255a313Smrg		os=-sysv
7178255a313Smrg		;;
7188255a313Smrg	merlin)
7198255a313Smrg		basic_machine=ns32k-utek
7208255a313Smrg		os=-sysv
7218255a313Smrg		;;
7228255a313Smrg	mingw32)
7238255a313Smrg		basic_machine=i386-pc
7248255a313Smrg		os=-mingw32
7258255a313Smrg		;;
7268255a313Smrg	mingw32ce)
7278255a313Smrg		basic_machine=arm-unknown
7288255a313Smrg		os=-mingw32ce
7298255a313Smrg		;;
7308255a313Smrg	miniframe)
7318255a313Smrg		basic_machine=m68000-convergent
7328255a313Smrg		;;
7338255a313Smrg	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
7348255a313Smrg		basic_machine=m68k-atari
7358255a313Smrg		os=-mint
7368255a313Smrg		;;
7378255a313Smrg	mips3*-*)
7388255a313Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
7398255a313Smrg		;;
7408255a313Smrg	mips3*)
7418255a313Smrg		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
7428255a313Smrg		;;
7438255a313Smrg	monitor)
7448255a313Smrg		basic_machine=m68k-rom68k
7458255a313Smrg		os=-coff
7468255a313Smrg		;;
7478255a313Smrg	morphos)
7488255a313Smrg		basic_machine=powerpc-unknown
7498255a313Smrg		os=-morphos
7508255a313Smrg		;;
7518255a313Smrg	msdos)
7528255a313Smrg		basic_machine=i386-pc
7538255a313Smrg		os=-msdos
7548255a313Smrg		;;
7558255a313Smrg	ms1-*)
7568255a313Smrg		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
7578255a313Smrg		;;
7588255a313Smrg	mvs)
7598255a313Smrg		basic_machine=i370-ibm
7608255a313Smrg		os=-mvs
7618255a313Smrg		;;
7628255a313Smrg	ncr3000)
7638255a313Smrg		basic_machine=i486-ncr
7648255a313Smrg		os=-sysv4
7658255a313Smrg		;;
7668255a313Smrg	netbsd386)
7678255a313Smrg		basic_machine=i386-unknown
7688255a313Smrg		os=-netbsd
7698255a313Smrg		;;
7708255a313Smrg	netwinder)
7718255a313Smrg		basic_machine=armv4l-rebel
7728255a313Smrg		os=-linux
7738255a313Smrg		;;
7748255a313Smrg	news | news700 | news800 | news900)
7758255a313Smrg		basic_machine=m68k-sony
7768255a313Smrg		os=-newsos
7778255a313Smrg		;;
7788255a313Smrg	news1000)
7798255a313Smrg		basic_machine=m68030-sony
7808255a313Smrg		os=-newsos
7818255a313Smrg		;;
7828255a313Smrg	news-3600 | risc-news)
7838255a313Smrg		basic_machine=mips-sony
7848255a313Smrg		os=-newsos
7858255a313Smrg		;;
7868255a313Smrg	necv70)
7878255a313Smrg		basic_machine=v70-nec
7888255a313Smrg		os=-sysv
7898255a313Smrg		;;
7908255a313Smrg	next | m*-next )
7918255a313Smrg		basic_machine=m68k-next
7928255a313Smrg		case $os in
7938255a313Smrg		    -nextstep* )
7948255a313Smrg			;;
7958255a313Smrg		    -ns2*)
7968255a313Smrg		      os=-nextstep2
7978255a313Smrg			;;
7988255a313Smrg		    *)
7998255a313Smrg		      os=-nextstep3
8008255a313Smrg			;;
8018255a313Smrg		esac
8028255a313Smrg		;;
8038255a313Smrg	nh3000)
8048255a313Smrg		basic_machine=m68k-harris
8058255a313Smrg		os=-cxux
8068255a313Smrg		;;
8078255a313Smrg	nh[45]000)
8088255a313Smrg		basic_machine=m88k-harris
8098255a313Smrg		os=-cxux
8108255a313Smrg		;;
8118255a313Smrg	nindy960)
8128255a313Smrg		basic_machine=i960-intel
8138255a313Smrg		os=-nindy
8148255a313Smrg		;;
8158255a313Smrg	mon960)
8168255a313Smrg		basic_machine=i960-intel
8178255a313Smrg		os=-mon960
8188255a313Smrg		;;
8198255a313Smrg	nonstopux)
8208255a313Smrg		basic_machine=mips-compaq
8218255a313Smrg		os=-nonstopux
8228255a313Smrg		;;
8238255a313Smrg	np1)
8248255a313Smrg		basic_machine=np1-gould
8258255a313Smrg		;;
8268255a313Smrg	nsr-tandem)
8278255a313Smrg		basic_machine=nsr-tandem
8288255a313Smrg		;;
8298255a313Smrg	op50n-* | op60c-*)
8308255a313Smrg		basic_machine=hppa1.1-oki
8318255a313Smrg		os=-proelf
8328255a313Smrg		;;
8338255a313Smrg	openrisc | openrisc-*)
8348255a313Smrg		basic_machine=or32-unknown
8358255a313Smrg		;;
8368255a313Smrg	os400)
8378255a313Smrg		basic_machine=powerpc-ibm
8388255a313Smrg		os=-os400
8398255a313Smrg		;;
8408255a313Smrg	OSE68000 | ose68000)
8418255a313Smrg		basic_machine=m68000-ericsson
8428255a313Smrg		os=-ose
8438255a313Smrg		;;
8448255a313Smrg	os68k)
8458255a313Smrg		basic_machine=m68k-none
8468255a313Smrg		os=-os68k
8478255a313Smrg		;;
8488255a313Smrg	pa-hitachi)
8498255a313Smrg		basic_machine=hppa1.1-hitachi
8508255a313Smrg		os=-hiuxwe2
8518255a313Smrg		;;
8528255a313Smrg	paragon)
8538255a313Smrg		basic_machine=i860-intel
8548255a313Smrg		os=-osf
8558255a313Smrg		;;
8568255a313Smrg	parisc)
8578255a313Smrg		basic_machine=hppa-unknown
8588255a313Smrg		os=-linux
8598255a313Smrg		;;
8608255a313Smrg	parisc-*)
8618255a313Smrg		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
8628255a313Smrg		os=-linux
8638255a313Smrg		;;
8648255a313Smrg	pbd)
8658255a313Smrg		basic_machine=sparc-tti
8668255a313Smrg		;;
8678255a313Smrg	pbb)
8688255a313Smrg		basic_machine=m68k-tti
8698255a313Smrg		;;
8708255a313Smrg	pc532 | pc532-*)
8718255a313Smrg		basic_machine=ns32k-pc532
8728255a313Smrg		;;
8738255a313Smrg	pc98)
8748255a313Smrg		basic_machine=i386-pc
8758255a313Smrg		;;
8768255a313Smrg	pc98-*)
8778255a313Smrg		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
8788255a313Smrg		;;
8798255a313Smrg	pentium | p5 | k5 | k6 | nexgen | viac3)
8808255a313Smrg		basic_machine=i586-pc
8818255a313Smrg		;;
8828255a313Smrg	pentiumpro | p6 | 6x86 | athlon | athlon_*)
8838255a313Smrg		basic_machine=i686-pc
8848255a313Smrg		;;
8858255a313Smrg	pentiumii | pentium2 | pentiumiii | pentium3)
8868255a313Smrg		basic_machine=i686-pc
8878255a313Smrg		;;
8888255a313Smrg	pentium4)
8898255a313Smrg		basic_machine=i786-pc
8908255a313Smrg		;;
8918255a313Smrg	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
8928255a313Smrg		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
8938255a313Smrg		;;
8948255a313Smrg	pentiumpro-* | p6-* | 6x86-* | athlon-*)
8958255a313Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8968255a313Smrg		;;
8978255a313Smrg	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
8988255a313Smrg		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
8998255a313Smrg		;;
9008255a313Smrg	pentium4-*)
9018255a313Smrg		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
9028255a313Smrg		;;
9038255a313Smrg	pn)
9048255a313Smrg		basic_machine=pn-gould
9058255a313Smrg		;;
9068255a313Smrg	power)	basic_machine=power-ibm
9078255a313Smrg		;;
9088255a313Smrg	ppc)	basic_machine=powerpc-unknown
9098255a313Smrg		;;
9108255a313Smrg	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
9118255a313Smrg		;;
9128255a313Smrg	ppcle | powerpclittle | ppc-le | powerpc-little)
9138255a313Smrg		basic_machine=powerpcle-unknown
9148255a313Smrg		;;
9158255a313Smrg	ppcle-* | powerpclittle-*)
9168255a313Smrg		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
9178255a313Smrg		;;
9188255a313Smrg	ppc64)	basic_machine=powerpc64-unknown
9198255a313Smrg		;;
9208255a313Smrg	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
9218255a313Smrg		;;
9228255a313Smrg	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
9238255a313Smrg		basic_machine=powerpc64le-unknown
9248255a313Smrg		;;
9258255a313Smrg	ppc64le-* | powerpc64little-*)
9268255a313Smrg		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
9278255a313Smrg		;;
9288255a313Smrg	ps2)
9298255a313Smrg		basic_machine=i386-ibm
9308255a313Smrg		;;
9318255a313Smrg	pw32)
9328255a313Smrg		basic_machine=i586-unknown
9338255a313Smrg		os=-pw32
9348255a313Smrg		;;
9358255a313Smrg	rdos)
9368255a313Smrg		basic_machine=i386-pc
9378255a313Smrg		os=-rdos
9388255a313Smrg		;;
9398255a313Smrg	rom68k)
9408255a313Smrg		basic_machine=m68k-rom68k
9418255a313Smrg		os=-coff
9428255a313Smrg		;;
9438255a313Smrg	rm[46]00)
9448255a313Smrg		basic_machine=mips-siemens
9458255a313Smrg		;;
9468255a313Smrg	rtpc | rtpc-*)
9478255a313Smrg		basic_machine=romp-ibm
9488255a313Smrg		;;
9498255a313Smrg	s390 | s390-*)
9508255a313Smrg		basic_machine=s390-ibm
9518255a313Smrg		;;
9528255a313Smrg	s390x | s390x-*)
9538255a313Smrg		basic_machine=s390x-ibm
9548255a313Smrg		;;
9558255a313Smrg	sa29200)
9568255a313Smrg		basic_machine=a29k-amd
9578255a313Smrg		os=-udi
9588255a313Smrg		;;
9598255a313Smrg	sb1)
9608255a313Smrg		basic_machine=mipsisa64sb1-unknown
9618255a313Smrg		;;
9628255a313Smrg	sb1el)
9638255a313Smrg		basic_machine=mipsisa64sb1el-unknown
9648255a313Smrg		;;
9658255a313Smrg	sde)
9668255a313Smrg		basic_machine=mipsisa32-sde
9678255a313Smrg		os=-elf
9688255a313Smrg		;;
9698255a313Smrg	sei)
9708255a313Smrg		basic_machine=mips-sei
9718255a313Smrg		os=-seiux
9728255a313Smrg		;;
9738255a313Smrg	sequent)
9748255a313Smrg		basic_machine=i386-sequent
9758255a313Smrg		;;
9768255a313Smrg	sh)
9778255a313Smrg		basic_machine=sh-hitachi
9788255a313Smrg		os=-hms
9798255a313Smrg		;;
9808255a313Smrg	sh5el)
9818255a313Smrg		basic_machine=sh5le-unknown
9828255a313Smrg		;;
9838255a313Smrg	sh64)
9848255a313Smrg		basic_machine=sh64-unknown
9858255a313Smrg		;;
9868255a313Smrg	sparclite-wrs | simso-wrs)
9878255a313Smrg		basic_machine=sparclite-wrs
9888255a313Smrg		os=-vxworks
9898255a313Smrg		;;
9908255a313Smrg	sps7)
9918255a313Smrg		basic_machine=m68k-bull
9928255a313Smrg		os=-sysv2
9938255a313Smrg		;;
9948255a313Smrg	spur)
9958255a313Smrg		basic_machine=spur-unknown
9968255a313Smrg		;;
9978255a313Smrg	st2000)
9988255a313Smrg		basic_machine=m68k-tandem
9998255a313Smrg		;;
10008255a313Smrg	stratus)
10018255a313Smrg		basic_machine=i860-stratus
10028255a313Smrg		os=-sysv4
10038255a313Smrg		;;
10048255a313Smrg	sun2)
10058255a313Smrg		basic_machine=m68000-sun
10068255a313Smrg		;;
10078255a313Smrg	sun2os3)
10088255a313Smrg		basic_machine=m68000-sun
10098255a313Smrg		os=-sunos3
10108255a313Smrg		;;
10118255a313Smrg	sun2os4)
10128255a313Smrg		basic_machine=m68000-sun
10138255a313Smrg		os=-sunos4
10148255a313Smrg		;;
10158255a313Smrg	sun3os3)
10168255a313Smrg		basic_machine=m68k-sun
10178255a313Smrg		os=-sunos3
10188255a313Smrg		;;
10198255a313Smrg	sun3os4)
10208255a313Smrg		basic_machine=m68k-sun
10218255a313Smrg		os=-sunos4
10228255a313Smrg		;;
10238255a313Smrg	sun4os3)
10248255a313Smrg		basic_machine=sparc-sun
10258255a313Smrg		os=-sunos3
10268255a313Smrg		;;
10278255a313Smrg	sun4os4)
10288255a313Smrg		basic_machine=sparc-sun
10298255a313Smrg		os=-sunos4
10308255a313Smrg		;;
10318255a313Smrg	sun4sol2)
10328255a313Smrg		basic_machine=sparc-sun
10338255a313Smrg		os=-solaris2
10348255a313Smrg		;;
10358255a313Smrg	sun3 | sun3-*)
10368255a313Smrg		basic_machine=m68k-sun
10378255a313Smrg		;;
10388255a313Smrg	sun4)
10398255a313Smrg		basic_machine=sparc-sun
10408255a313Smrg		;;
10418255a313Smrg	sun386 | sun386i | roadrunner)
10428255a313Smrg		basic_machine=i386-sun
10438255a313Smrg		;;
10448255a313Smrg	sv1)
10458255a313Smrg		basic_machine=sv1-cray
10468255a313Smrg		os=-unicos
10478255a313Smrg		;;
10488255a313Smrg	symmetry)
10498255a313Smrg		basic_machine=i386-sequent
10508255a313Smrg		os=-dynix
10518255a313Smrg		;;
10528255a313Smrg	t3e)
10538255a313Smrg		basic_machine=alphaev5-cray
10548255a313Smrg		os=-unicos
10558255a313Smrg		;;
10568255a313Smrg	t90)
10578255a313Smrg		basic_machine=t90-cray
10588255a313Smrg		os=-unicos
10598255a313Smrg		;;
10608255a313Smrg	tic54x | c54x*)
10618255a313Smrg		basic_machine=tic54x-unknown
10628255a313Smrg		os=-coff
10638255a313Smrg		;;
10648255a313Smrg	tic55x | c55x*)
10658255a313Smrg		basic_machine=tic55x-unknown
10668255a313Smrg		os=-coff
10678255a313Smrg		;;
10688255a313Smrg	tic6x | c6x*)
10698255a313Smrg		basic_machine=tic6x-unknown
10708255a313Smrg		os=-coff
10718255a313Smrg		;;
10728255a313Smrg	tile*)
10738255a313Smrg		basic_machine=tile-unknown
10748255a313Smrg		os=-linux-gnu
10758255a313Smrg		;;
10768255a313Smrg	tx39)
10778255a313Smrg		basic_machine=mipstx39-unknown
10788255a313Smrg		;;
10798255a313Smrg	tx39el)
10808255a313Smrg		basic_machine=mipstx39el-unknown
10818255a313Smrg		;;
10828255a313Smrg	toad1)
10838255a313Smrg		basic_machine=pdp10-xkl
10848255a313Smrg		os=-tops20
10858255a313Smrg		;;
10868255a313Smrg	tower | tower-32)
10878255a313Smrg		basic_machine=m68k-ncr
10888255a313Smrg		;;
10898255a313Smrg	tpf)
10908255a313Smrg		basic_machine=s390x-ibm
10918255a313Smrg		os=-tpf
10928255a313Smrg		;;
10938255a313Smrg	udi29k)
10948255a313Smrg		basic_machine=a29k-amd
10958255a313Smrg		os=-udi
10968255a313Smrg		;;
10978255a313Smrg	ultra3)
10988255a313Smrg		basic_machine=a29k-nyu
10998255a313Smrg		os=-sym1
11008255a313Smrg		;;
11018255a313Smrg	v810 | necv810)
11028255a313Smrg		basic_machine=v810-nec
11038255a313Smrg		os=-none
11048255a313Smrg		;;
11058255a313Smrg	vaxv)
11068255a313Smrg		basic_machine=vax-dec
11078255a313Smrg		os=-sysv
11088255a313Smrg		;;
11098255a313Smrg	vms)
11108255a313Smrg		basic_machine=vax-dec
11118255a313Smrg		os=-vms
11128255a313Smrg		;;
11138255a313Smrg	vpp*|vx|vx-*)
11148255a313Smrg		basic_machine=f301-fujitsu
11158255a313Smrg		;;
11168255a313Smrg	vxworks960)
11178255a313Smrg		basic_machine=i960-wrs
11188255a313Smrg		os=-vxworks
11198255a313Smrg		;;
11208255a313Smrg	vxworks68)
11218255a313Smrg		basic_machine=m68k-wrs
11228255a313Smrg		os=-vxworks
11238255a313Smrg		;;
11248255a313Smrg	vxworks29k)
11258255a313Smrg		basic_machine=a29k-wrs
11268255a313Smrg		os=-vxworks
11278255a313Smrg		;;
11288255a313Smrg	w65*)
11298255a313Smrg		basic_machine=w65-wdc
11308255a313Smrg		os=-none
11318255a313Smrg		;;
11328255a313Smrg	w89k-*)
11338255a313Smrg		basic_machine=hppa1.1-winbond
11348255a313Smrg		os=-proelf
11358255a313Smrg		;;
11368255a313Smrg	xbox)
11378255a313Smrg		basic_machine=i686-pc
11388255a313Smrg		os=-mingw32
11398255a313Smrg		;;
11408255a313Smrg	xps | xps100)
11418255a313Smrg		basic_machine=xps100-honeywell
11428255a313Smrg		;;
11438255a313Smrg	ymp)
11448255a313Smrg		basic_machine=ymp-cray
11458255a313Smrg		os=-unicos
11468255a313Smrg		;;
11478255a313Smrg	z8k-*-coff)
11488255a313Smrg		basic_machine=z8k-unknown
11498255a313Smrg		os=-sim
11508255a313Smrg		;;
11518255a313Smrg	z80-*-coff)
11528255a313Smrg		basic_machine=z80-unknown
11538255a313Smrg		os=-sim
11548255a313Smrg		;;
11558255a313Smrg	none)
11568255a313Smrg		basic_machine=none-none
11578255a313Smrg		os=-none
11588255a313Smrg		;;
11598255a313Smrg
11608255a313Smrg# Here we handle the default manufacturer of certain CPU types.  It is in
11618255a313Smrg# some cases the only manufacturer, in others, it is the most popular.
11628255a313Smrg	w89k)
11638255a313Smrg		basic_machine=hppa1.1-winbond
11648255a313Smrg		;;
11658255a313Smrg	op50n)
11668255a313Smrg		basic_machine=hppa1.1-oki
11678255a313Smrg		;;
11688255a313Smrg	op60c)
11698255a313Smrg		basic_machine=hppa1.1-oki
11708255a313Smrg		;;
11718255a313Smrg	romp)
11728255a313Smrg		basic_machine=romp-ibm
11738255a313Smrg		;;
11748255a313Smrg	mmix)
11758255a313Smrg		basic_machine=mmix-knuth
11768255a313Smrg		;;
11778255a313Smrg	rs6000)
11788255a313Smrg		basic_machine=rs6000-ibm
11798255a313Smrg		;;
11808255a313Smrg	vax)
11818255a313Smrg		basic_machine=vax-dec
11828255a313Smrg		;;
11838255a313Smrg	pdp10)
11848255a313Smrg		# there are many clones, so DEC is not a safe bet
11858255a313Smrg		basic_machine=pdp10-unknown
11868255a313Smrg		;;
11878255a313Smrg	pdp11)
11888255a313Smrg		basic_machine=pdp11-dec
11898255a313Smrg		;;
11908255a313Smrg	we32k)
11918255a313Smrg		basic_machine=we32k-att
11928255a313Smrg		;;
11938255a313Smrg	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
11948255a313Smrg		basic_machine=sh-unknown
11958255a313Smrg		;;
11968255a313Smrg	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
11978255a313Smrg		basic_machine=sparc-sun
11988255a313Smrg		;;
11998255a313Smrg	cydra)
12008255a313Smrg		basic_machine=cydra-cydrome
12018255a313Smrg		;;
12028255a313Smrg	orion)
12038255a313Smrg		basic_machine=orion-highlevel
12048255a313Smrg		;;
12058255a313Smrg	orion105)
12068255a313Smrg		basic_machine=clipper-highlevel
12078255a313Smrg		;;
12088255a313Smrg	mac | mpw | mac-mpw)
12098255a313Smrg		basic_machine=m68k-apple
12108255a313Smrg		;;
12118255a313Smrg	pmac | pmac-mpw)
12128255a313Smrg		basic_machine=powerpc-apple
12138255a313Smrg		;;
12148255a313Smrg	*-unknown)
12158255a313Smrg		# Make sure to match an already-canonicalized machine name.
12168255a313Smrg		;;
12178255a313Smrg	*)
12188255a313Smrg		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
12198255a313Smrg		exit 1
12208255a313Smrg		;;
12218255a313Smrgesac
12228255a313Smrg
12238255a313Smrg# Here we canonicalize certain aliases for manufacturers.
12248255a313Smrgcase $basic_machine in
12258255a313Smrg	*-digital*)
12268255a313Smrg		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
12278255a313Smrg		;;
12288255a313Smrg	*-commodore*)
12298255a313Smrg		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
12308255a313Smrg		;;
12318255a313Smrg	*)
12328255a313Smrg		;;
12338255a313Smrgesac
12348255a313Smrg
12358255a313Smrg# Decode manufacturer-specific aliases for certain operating systems.
12368255a313Smrg
12378255a313Smrgif [ x"$os" != x"" ]
12388255a313Smrgthen
12398255a313Smrgcase $os in
12408255a313Smrg        # First match some system type aliases
12418255a313Smrg        # that might get confused with valid system types.
12428255a313Smrg	# -solaris* is a basic system type, with this one exception.
12438255a313Smrg	-solaris1 | -solaris1.*)
12448255a313Smrg		os=`echo $os | sed -e 's|solaris1|sunos4|'`
12458255a313Smrg		;;
12468255a313Smrg	-solaris)
12478255a313Smrg		os=-solaris2
12488255a313Smrg		;;
12498255a313Smrg	-svr4*)
12508255a313Smrg		os=-sysv4
12518255a313Smrg		;;
12528255a313Smrg	-unixware*)
12538255a313Smrg		os=-sysv4.2uw
12548255a313Smrg		;;
12558255a313Smrg	-gnu/linux*)
12568255a313Smrg		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
12578255a313Smrg		;;
12588255a313Smrg	# First accept the basic system types.
12598255a313Smrg	# The portable systems comes first.
12608255a313Smrg	# Each alternative MUST END IN A *, to match a version number.
12618255a313Smrg	# -sysv* is not here because it comes later, after sysvr4.
12628255a313Smrg	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
12638255a313Smrg	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
12648255a313Smrg	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
12658255a313Smrg	      | -kopensolaris* \
12668255a313Smrg	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
12678255a313Smrg	      | -aos* | -aros* \
12688255a313Smrg	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
12698255a313Smrg	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
12708255a313Smrg	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
12718255a313Smrg	      | -openbsd* | -solidbsd* \
12728255a313Smrg	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
12738255a313Smrg	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
12748255a313Smrg	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
12758255a313Smrg	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
12768255a313Smrg	      | -chorusos* | -chorusrdb* | -cegcc* \
12778255a313Smrg	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
12788255a313Smrg	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
12798255a313Smrg	      | -uxpv* | -beos* | -mpeix* | -udk* \
12808255a313Smrg	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
12818255a313Smrg	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
12828255a313Smrg	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
12838255a313Smrg	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
12848255a313Smrg	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
12858255a313Smrg	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
12868255a313Smrg	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
12878255a313Smrg	# Remember, each alternative MUST END IN *, to match a version number.
12888255a313Smrg		;;
12898255a313Smrg	-qnx*)
12908255a313Smrg		case $basic_machine in
12918255a313Smrg		    x86-* | i*86-*)
12928255a313Smrg			;;
12938255a313Smrg		    *)
12948255a313Smrg			os=-nto$os
12958255a313Smrg			;;
12968255a313Smrg		esac
12978255a313Smrg		;;
12988255a313Smrg	-nto-qnx*)
12998255a313Smrg		;;
13008255a313Smrg	-nto*)
13018255a313Smrg		os=`echo $os | sed -e 's|nto|nto-qnx|'`
13028255a313Smrg		;;
13038255a313Smrg	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
13048255a313Smrg	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
13058255a313Smrg	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
13068255a313Smrg		;;
13078255a313Smrg	-mac*)
13088255a313Smrg		os=`echo $os | sed -e 's|mac|macos|'`
13098255a313Smrg		;;
13108255a313Smrg	-linux-dietlibc)
13118255a313Smrg		os=-linux-dietlibc
13128255a313Smrg		;;
13138255a313Smrg	-linux*)
13148255a313Smrg		os=`echo $os | sed -e 's|linux|linux-gnu|'`
13158255a313Smrg		;;
13168255a313Smrg	-sunos5*)
13178255a313Smrg		os=`echo $os | sed -e 's|sunos5|solaris2|'`
13188255a313Smrg		;;
13198255a313Smrg	-sunos6*)
13208255a313Smrg		os=`echo $os | sed -e 's|sunos6|solaris3|'`
13218255a313Smrg		;;
13228255a313Smrg	-opened*)
13238255a313Smrg		os=-openedition
13248255a313Smrg		;;
13258255a313Smrg        -os400*)
13268255a313Smrg		os=-os400
13278255a313Smrg		;;
13288255a313Smrg	-wince*)
13298255a313Smrg		os=-wince
13308255a313Smrg		;;
13318255a313Smrg	-osfrose*)
13328255a313Smrg		os=-osfrose
13338255a313Smrg		;;
13348255a313Smrg	-osf*)
13358255a313Smrg		os=-osf
13368255a313Smrg		;;
13378255a313Smrg	-utek*)
13388255a313Smrg		os=-bsd
13398255a313Smrg		;;
13408255a313Smrg	-dynix*)
13418255a313Smrg		os=-bsd
13428255a313Smrg		;;
13438255a313Smrg	-acis*)
13448255a313Smrg		os=-aos
13458255a313Smrg		;;
13468255a313Smrg	-atheos*)
13478255a313Smrg		os=-atheos
13488255a313Smrg		;;
13498255a313Smrg	-syllable*)
13508255a313Smrg		os=-syllable
13518255a313Smrg		;;
13528255a313Smrg	-386bsd)
13538255a313Smrg		os=-bsd
13548255a313Smrg		;;
13558255a313Smrg	-ctix* | -uts*)
13568255a313Smrg		os=-sysv
13578255a313Smrg		;;
13588255a313Smrg	-nova*)
13598255a313Smrg		os=-rtmk-nova
13608255a313Smrg		;;
13618255a313Smrg	-ns2 )
13628255a313Smrg		os=-nextstep2
13638255a313Smrg		;;
13648255a313Smrg	-nsk*)
13658255a313Smrg		os=-nsk
13668255a313Smrg		;;
13678255a313Smrg	# Preserve the version number of sinix5.
13688255a313Smrg	-sinix5.*)
13698255a313Smrg		os=`echo $os | sed -e 's|sinix|sysv|'`
13708255a313Smrg		;;
13718255a313Smrg	-sinix*)
13728255a313Smrg		os=-sysv4
13738255a313Smrg		;;
13748255a313Smrg        -tpf*)
13758255a313Smrg		os=-tpf
13768255a313Smrg		;;
13778255a313Smrg	-triton*)
13788255a313Smrg		os=-sysv3
13798255a313Smrg		;;
13808255a313Smrg	-oss*)
13818255a313Smrg		os=-sysv3
13828255a313Smrg		;;
13838255a313Smrg	-svr4)
13848255a313Smrg		os=-sysv4
13858255a313Smrg		;;
13868255a313Smrg	-svr3)
13878255a313Smrg		os=-sysv3
13888255a313Smrg		;;
13898255a313Smrg	-sysvr4)
13908255a313Smrg		os=-sysv4
13918255a313Smrg		;;
13928255a313Smrg	# This must come after -sysvr4.
13938255a313Smrg	-sysv*)
13948255a313Smrg		;;
13958255a313Smrg	-ose*)
13968255a313Smrg		os=-ose
13978255a313Smrg		;;
13988255a313Smrg	-es1800*)
13998255a313Smrg		os=-ose
14008255a313Smrg		;;
14018255a313Smrg	-xenix)
14028255a313Smrg		os=-xenix
14038255a313Smrg		;;
14048255a313Smrg	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
14058255a313Smrg		os=-mint
14068255a313Smrg		;;
14078255a313Smrg	-aros*)
14088255a313Smrg		os=-aros
14098255a313Smrg		;;
14108255a313Smrg	-kaos*)
14118255a313Smrg		os=-kaos
14128255a313Smrg		;;
14138255a313Smrg	-zvmoe)
14148255a313Smrg		os=-zvmoe
14158255a313Smrg		;;
14168255a313Smrg	-dicos*)
14178255a313Smrg		os=-dicos
14188255a313Smrg		;;
14198255a313Smrg	-none)
14208255a313Smrg		;;
14218255a313Smrg	*)
14228255a313Smrg		# Get rid of the `-' at the beginning of $os.
14238255a313Smrg		os=`echo $os | sed 's/[^-]*-//'`
14248255a313Smrg		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
14258255a313Smrg		exit 1
14268255a313Smrg		;;
14278255a313Smrgesac
14288255a313Smrgelse
14298255a313Smrg
14308255a313Smrg# Here we handle the default operating systems that come with various machines.
14318255a313Smrg# The value should be what the vendor currently ships out the door with their
14328255a313Smrg# machine or put another way, the most popular os provided with the machine.
14338255a313Smrg
14348255a313Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say,
14358255a313Smrg# "-sun"), then you have to tell the case statement up towards the top
14368255a313Smrg# that MANUFACTURER isn't an operating system.  Otherwise, code above
14378255a313Smrg# will signal an error saying that MANUFACTURER isn't an operating
14388255a313Smrg# system, and we'll never get to this point.
14398255a313Smrg
14408255a313Smrgcase $basic_machine in
14418255a313Smrg        score-*)
14428255a313Smrg		os=-elf
14438255a313Smrg		;;
14448255a313Smrg        spu-*)
14458255a313Smrg		os=-elf
14468255a313Smrg		;;
14478255a313Smrg	*-acorn)
14488255a313Smrg		os=-riscix1.2
14498255a313Smrg		;;
14508255a313Smrg	arm*-rebel)
14518255a313Smrg		os=-linux
14528255a313Smrg		;;
14538255a313Smrg	arm*-semi)
14548255a313Smrg		os=-aout
14558255a313Smrg		;;
14568255a313Smrg        c4x-* | tic4x-*)
14578255a313Smrg        	os=-coff
14588255a313Smrg		;;
14598255a313Smrg	# This must come before the *-dec entry.
14608255a313Smrg	pdp10-*)
14618255a313Smrg		os=-tops20
14628255a313Smrg		;;
14638255a313Smrg	pdp11-*)
14648255a313Smrg		os=-none
14658255a313Smrg		;;
14668255a313Smrg	*-dec | vax-*)
14678255a313Smrg		os=-ultrix4.2
14688255a313Smrg		;;
14698255a313Smrg	m68*-apollo)
14708255a313Smrg		os=-domain
14718255a313Smrg		;;
14728255a313Smrg	i386-sun)
14738255a313Smrg		os=-sunos4.0.2
14748255a313Smrg		;;
14758255a313Smrg	m68000-sun)
14768255a313Smrg		os=-sunos3
14778255a313Smrg		# This also exists in the configure program, but was not the
14788255a313Smrg		# default.
14798255a313Smrg		# os=-sunos4
14808255a313Smrg		;;
14818255a313Smrg	m68*-cisco)
14828255a313Smrg		os=-aout
14838255a313Smrg		;;
14848255a313Smrg        mep-*)
14858255a313Smrg		os=-elf
14868255a313Smrg		;;
14878255a313Smrg	mips*-cisco)
14888255a313Smrg		os=-elf
14898255a313Smrg		;;
14908255a313Smrg	mips*-*)
14918255a313Smrg		os=-elf
14928255a313Smrg		;;
14938255a313Smrg	or32-*)
14948255a313Smrg		os=-coff
14958255a313Smrg		;;
14968255a313Smrg	*-tti)	# must be before sparc entry or we get the wrong os.
14978255a313Smrg		os=-sysv3
14988255a313Smrg		;;
14998255a313Smrg	sparc-* | *-sun)
15008255a313Smrg		os=-sunos4.1.1
15018255a313Smrg		;;
15028255a313Smrg	*-be)
15038255a313Smrg		os=-beos
15048255a313Smrg		;;
15058255a313Smrg	*-haiku)
15068255a313Smrg		os=-haiku
15078255a313Smrg		;;
15088255a313Smrg	*-ibm)
15098255a313Smrg		os=-aix
15108255a313Smrg		;;
15118255a313Smrg    	*-knuth)
15128255a313Smrg		os=-mmixware
15138255a313Smrg		;;
15148255a313Smrg	*-wec)
15158255a313Smrg		os=-proelf
15168255a313Smrg		;;
15178255a313Smrg	*-winbond)
15188255a313Smrg		os=-proelf
15198255a313Smrg		;;
15208255a313Smrg	*-oki)
15218255a313Smrg		os=-proelf
15228255a313Smrg		;;
15238255a313Smrg	*-hp)
15248255a313Smrg		os=-hpux
15258255a313Smrg		;;
15268255a313Smrg	*-hitachi)
15278255a313Smrg		os=-hiux
15288255a313Smrg		;;
15298255a313Smrg	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
15308255a313Smrg		os=-sysv
15318255a313Smrg		;;
15328255a313Smrg	*-cbm)
15338255a313Smrg		os=-amigaos
15348255a313Smrg		;;
15358255a313Smrg	*-dg)
15368255a313Smrg		os=-dgux
15378255a313Smrg		;;
15388255a313Smrg	*-dolphin)
15398255a313Smrg		os=-sysv3
15408255a313Smrg		;;
15418255a313Smrg	m68k-ccur)
15428255a313Smrg		os=-rtu
15438255a313Smrg		;;
15448255a313Smrg	m88k-omron*)
15458255a313Smrg		os=-luna
15468255a313Smrg		;;
15478255a313Smrg	*-next )
15488255a313Smrg		os=-nextstep
15498255a313Smrg		;;
15508255a313Smrg	*-sequent)
15518255a313Smrg		os=-ptx
15528255a313Smrg		;;
15538255a313Smrg	*-crds)
15548255a313Smrg		os=-unos
15558255a313Smrg		;;
15568255a313Smrg	*-ns)
15578255a313Smrg		os=-genix
15588255a313Smrg		;;
15598255a313Smrg	i370-*)
15608255a313Smrg		os=-mvs
15618255a313Smrg		;;
15628255a313Smrg	*-next)
15638255a313Smrg		os=-nextstep3
15648255a313Smrg		;;
15658255a313Smrg	*-gould)
15668255a313Smrg		os=-sysv
15678255a313Smrg		;;
15688255a313Smrg	*-highlevel)
15698255a313Smrg		os=-bsd
15708255a313Smrg		;;
15718255a313Smrg	*-encore)
15728255a313Smrg		os=-bsd
15738255a313Smrg		;;
15748255a313Smrg	*-sgi)
15758255a313Smrg		os=-irix
15768255a313Smrg		;;
15778255a313Smrg	*-siemens)
15788255a313Smrg		os=-sysv4
15798255a313Smrg		;;
15808255a313Smrg	*-masscomp)
15818255a313Smrg		os=-rtu
15828255a313Smrg		;;
15838255a313Smrg	f30[01]-fujitsu | f700-fujitsu)
15848255a313Smrg		os=-uxpv
15858255a313Smrg		;;
15868255a313Smrg	*-rom68k)
15878255a313Smrg		os=-coff
15888255a313Smrg		;;
15898255a313Smrg	*-*bug)
15908255a313Smrg		os=-coff
15918255a313Smrg		;;
15928255a313Smrg	*-apple)
15938255a313Smrg		os=-macos
15948255a313Smrg		;;
15958255a313Smrg	*-atari*)
15968255a313Smrg		os=-mint
15978255a313Smrg		;;
15988255a313Smrg	*)
15998255a313Smrg		os=-none
16008255a313Smrg		;;
16018255a313Smrgesac
16028255a313Smrgfi
16038255a313Smrg
16048255a313Smrg# Here we handle the case where we know the os, and the CPU type, but not the
16058255a313Smrg# manufacturer.  We pick the logical manufacturer.
16068255a313Smrgvendor=unknown
16078255a313Smrgcase $basic_machine in
16088255a313Smrg	*-unknown)
16098255a313Smrg		case $os in
16108255a313Smrg			-riscix*)
16118255a313Smrg				vendor=acorn
16128255a313Smrg				;;
16138255a313Smrg			-sunos*)
16148255a313Smrg				vendor=sun
16158255a313Smrg				;;
16168255a313Smrg			-aix*)
16178255a313Smrg				vendor=ibm
16188255a313Smrg				;;
16198255a313Smrg			-beos*)
16208255a313Smrg				vendor=be
16218255a313Smrg				;;
16228255a313Smrg			-hpux*)
16238255a313Smrg				vendor=hp
16248255a313Smrg				;;
16258255a313Smrg			-mpeix*)
16268255a313Smrg				vendor=hp
16278255a313Smrg				;;
16288255a313Smrg			-hiux*)
16298255a313Smrg				vendor=hitachi
16308255a313Smrg				;;
16318255a313Smrg			-unos*)
16328255a313Smrg				vendor=crds
16338255a313Smrg				;;
16348255a313Smrg			-dgux*)
16358255a313Smrg				vendor=dg
16368255a313Smrg				;;
16378255a313Smrg			-luna*)
16388255a313Smrg				vendor=omron
16398255a313Smrg				;;
16408255a313Smrg			-genix*)
16418255a313Smrg				vendor=ns
16428255a313Smrg				;;
16438255a313Smrg			-mvs* | -opened*)
16448255a313Smrg				vendor=ibm
16458255a313Smrg				;;
16468255a313Smrg			-os400*)
16478255a313Smrg				vendor=ibm
16488255a313Smrg				;;
16498255a313Smrg			-ptx*)
16508255a313Smrg				vendor=sequent
16518255a313Smrg				;;
16528255a313Smrg			-tpf*)
16538255a313Smrg				vendor=ibm
16548255a313Smrg				;;
16558255a313Smrg			-vxsim* | -vxworks* | -windiss*)
16568255a313Smrg				vendor=wrs
16578255a313Smrg				;;
16588255a313Smrg			-aux*)
16598255a313Smrg				vendor=apple
16608255a313Smrg				;;
16618255a313Smrg			-hms*)
16628255a313Smrg				vendor=hitachi
16638255a313Smrg				;;
16648255a313Smrg			-mpw* | -macos*)
16658255a313Smrg				vendor=apple
16668255a313Smrg				;;
16678255a313Smrg			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
16688255a313Smrg				vendor=atari
16698255a313Smrg				;;
16708255a313Smrg			-vos*)
16718255a313Smrg				vendor=stratus
16728255a313Smrg				;;
16738255a313Smrg		esac
16748255a313Smrg		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
16758255a313Smrg		;;
16768255a313Smrgesac
16778255a313Smrg
16788255a313Smrgecho $basic_machine$os
16798255a313Smrgexit
16808255a313Smrg
16818255a313Smrg# Local variables:
16828255a313Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
16838255a313Smrg# time-stamp-start: "timestamp='"
16848255a313Smrg# time-stamp-format: "%:y-%02m-%02d"
16858255a313Smrg# time-stamp-end: "'"
16868255a313Smrg# End:
1687