config.sub revision 98937
198937Sdes#! /bin/sh
298937Sdes# Configuration validation subroutine script.
398937Sdes#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
498937Sdes#   Free Software Foundation, Inc.
598937Sdes
698937Sdestimestamp='2001-04-20'
798937Sdes
898937Sdes# This file is (in principle) common to ALL GNU software.
998937Sdes# The presence of a machine in this file suggests that SOME GNU software
1098937Sdes# can handle that machine.  It does not imply ALL GNU software can.
1198937Sdes#
1298937Sdes# This file is free software; you can redistribute it and/or modify
1398937Sdes# it under the terms of the GNU General Public License as published by
1498937Sdes# the Free Software Foundation; either version 2 of the License, or
1598937Sdes# (at your option) any later version.
1698937Sdes#
1798937Sdes# This program is distributed in the hope that it will be useful,
1898937Sdes# but WITHOUT ANY WARRANTY; without even the implied warranty of
1998937Sdes# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2098937Sdes# GNU General Public License for more details.
2198937Sdes#
2298937Sdes# You should have received a copy of the GNU General Public License
2398937Sdes# along with this program; if not, write to the Free Software
2498937Sdes# Foundation, Inc., 59 Temple Place - Suite 330,
2598937Sdes# Boston, MA 02111-1307, USA.
2698937Sdes
2798937Sdes# As a special exception to the GNU General Public License, if you
2898937Sdes# distribute this file as part of a program that contains a
2998937Sdes# configuration script generated by Autoconf, you may include it under
3098937Sdes# the same distribution terms that you use for the rest of that program.
3198937Sdes
3298937Sdes# Please send patches to <config-patches@gnu.org>.
3398937Sdes#
3498937Sdes# Configuration subroutine to validate and canonicalize a configuration type.
3598937Sdes# Supply the specified configuration type as an argument.
3698937Sdes# If it is invalid, we print an error message on stderr and exit with code 1.
3798937Sdes# Otherwise, we print the canonical config type on stdout and succeed.
3898937Sdes
3998937Sdes# This file is supposed to be the same for all GNU packages
4098937Sdes# and recognize all the CPU types, system types and aliases
4198937Sdes# that are meaningful with *any* GNU software.
4298937Sdes# Each package is responsible for reporting which valid configurations
4398937Sdes# it does not support.  The user should be able to distinguish
4498937Sdes# a failure to support a valid configuration from a meaningless
4598937Sdes# configuration.
4698937Sdes
4798937Sdes# The goal of this file is to map all the various variations of a given
4898937Sdes# machine specification into a single specification in the form:
4998937Sdes#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
5098937Sdes# or in some cases, the newer four-part form:
5198937Sdes#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
5298937Sdes# It is wrong to echo any other type of specification.
5398937Sdes
5498937Sdesme=`echo "$0" | sed -e 's,.*/,,'`
5598937Sdes
5698937Sdesusage="\
5798937SdesUsage: $0 [OPTION] CPU-MFR-OPSYS
5898937Sdes       $0 [OPTION] ALIAS
5998937Sdes
6098937SdesCanonicalize a configuration name.
6198937Sdes
6298937SdesOperation modes:
6398937Sdes  -h, --help         print this help, then exit
6498937Sdes  -t, --time-stamp   print date of last modification, then exit
6598937Sdes  -v, --version      print version number, then exit
6698937Sdes
6798937SdesReport bugs and patches to <config-patches@gnu.org>."
6898937Sdes
6998937Sdesversion="\
7098937SdesGNU config.sub ($timestamp)
7198937Sdes
7298937SdesCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
7398937SdesFree Software Foundation, Inc.
7498937Sdes
7598937SdesThis is free software; see the source for copying conditions.  There is NO
7698937Sdeswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
7798937Sdes
7898937Sdeshelp="
7998937SdesTry \`$me --help' for more information."
8098937Sdes
8198937Sdes# Parse command line
8298937Sdeswhile test $# -gt 0 ; do
8398937Sdes  case $1 in
8498937Sdes    --time-stamp | --time* | -t )
8598937Sdes       echo "$timestamp" ; exit 0 ;;
8698937Sdes    --version | -v )
8798937Sdes       echo "$version" ; exit 0 ;;
8898937Sdes    --help | --h* | -h )
8998937Sdes       echo "$usage"; exit 0 ;;
9098937Sdes    -- )     # Stop option processing
9198937Sdes       shift; break ;;
9298937Sdes    - )	# Use stdin as input.
9398937Sdes       break ;;
9498937Sdes    -* )
9598937Sdes       echo "$me: invalid option $1$help"
9698937Sdes       exit 1 ;;
9798937Sdes
9898937Sdes    *local*)
9998937Sdes       # First pass through any local machine types.
10098937Sdes       echo $1
10198937Sdes       exit 0;;
10298937Sdes
10398937Sdes    * )
10498937Sdes       break ;;
10598937Sdes  esac
10698937Sdesdone
10798937Sdes
10898937Sdescase $# in
10998937Sdes 0) echo "$me: missing argument$help" >&2
11098937Sdes    exit 1;;
11198937Sdes 1) ;;
11298937Sdes *) echo "$me: too many arguments$help" >&2
11398937Sdes    exit 1;;
11498937Sdesesac
11598937Sdes
11698937Sdes# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
11798937Sdes# Here we must recognize all the valid KERNEL-OS combinations.
11898937Sdesmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
11998937Sdescase $maybe_os in
12098937Sdes  nto-qnx* | linux-gnu* | storm-chaos* | os2-emx*)
12198937Sdes    os=-$maybe_os
12298937Sdes    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
12398937Sdes    ;;
12498937Sdes  *)
12598937Sdes    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
12698937Sdes    if [ $basic_machine != $1 ]
12798937Sdes    then os=`echo $1 | sed 's/.*-/-/'`
12898937Sdes    else os=; fi
12998937Sdes    ;;
13098937Sdesesac
13198937Sdes
13298937Sdes### Let's recognize common machines as not being operating systems so
13398937Sdes### that things like config.sub decstation-3100 work.  We also
13498937Sdes### recognize some manufacturers as not being operating systems, so we
13598937Sdes### can provide default operating systems below.
13698937Sdescase $os in
13798937Sdes	-sun*os*)
13898937Sdes		# Prevent following clause from handling this invalid input.
13998937Sdes		;;
14098937Sdes	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
14198937Sdes	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
14298937Sdes	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
14398937Sdes	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
14498937Sdes	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
14598937Sdes	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
14698937Sdes	-apple | -axis)
14798937Sdes		os=
14898937Sdes		basic_machine=$1
14998937Sdes		;;
15098937Sdes	-sim | -cisco | -oki | -wec | -winbond)
15198937Sdes		os=
15298937Sdes		basic_machine=$1
15398937Sdes		;;
15498937Sdes	-scout)
15598937Sdes		;;
15698937Sdes	-wrs)
15798937Sdes		os=-vxworks
15898937Sdes		basic_machine=$1
15998937Sdes		;;
16098937Sdes	-hiux*)
16198937Sdes		os=-hiuxwe2
16298937Sdes		;;
16398937Sdes	-sco5)
16498937Sdes		os=-sco3.2v5
16598937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
16698937Sdes		;;
16798937Sdes	-sco4)
16898937Sdes		os=-sco3.2v4
16998937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
17098937Sdes		;;
17198937Sdes	-sco3.2.[4-9]*)
17298937Sdes		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
17398937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
17498937Sdes		;;
17598937Sdes	-sco3.2v[4-9]*)
17698937Sdes		# Don't forget version if it is 3.2v4 or newer.
17798937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
17898937Sdes		;;
17998937Sdes	-sco*)
18098937Sdes		os=-sco3.2v2
18198937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
18298937Sdes		;;
18398937Sdes	-udk*)
18498937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
18598937Sdes		;;
18698937Sdes	-isc)
18798937Sdes		os=-isc2.2
18898937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
18998937Sdes		;;
19098937Sdes	-clix*)
19198937Sdes		basic_machine=clipper-intergraph
19298937Sdes		;;
19398937Sdes	-isc*)
19498937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
19598937Sdes		;;
19698937Sdes	-lynx*)
19798937Sdes		os=-lynxos
19898937Sdes		;;
19998937Sdes	-ptx*)
20098937Sdes		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
20198937Sdes		;;
20298937Sdes	-windowsnt*)
20398937Sdes		os=`echo $os | sed -e 's/windowsnt/winnt/'`
20498937Sdes		;;
20598937Sdes	-psos*)
20698937Sdes		os=-psos
20798937Sdes		;;
20898937Sdes	-mint | -mint[0-9]*)
20998937Sdes		basic_machine=m68k-atari
21098937Sdes		os=-mint
21198937Sdes		;;
21298937Sdesesac
21398937Sdes
21498937Sdes# Decode aliases for certain CPU-COMPANY combinations.
21598937Sdescase $basic_machine in
21698937Sdes	# Recognize the basic CPU types without company name.
21798937Sdes	# Some are omitted here because they have special meanings below.
21898937Sdes	tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \
21998937Sdes	        | arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \
22098937Sdes		| pyramid | mn10200 | mn10300 | tron | a29k \
22198937Sdes		| 580 | i960 | h8300 \
22298937Sdes		| x86 | ppcbe | mipsbe | mipsle | shbe | shle \
22398937Sdes		| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
22498937Sdes		| hppa64 \
22598937Sdes		| alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \
22698937Sdes		| alphaev6[78] \
22798937Sdes		| we32k | ns16k | clipper | i370 | sh | sh[34] \
22898937Sdes		| powerpc | powerpcle \
22998937Sdes		| 1750a | dsp16xx | pdp10 | pdp11 \
23098937Sdes		| mips16 | mips64 | mipsel | mips64el \
23198937Sdes		| mips64orion | mips64orionel | mipstx39 | mipstx39el \
23298937Sdes		| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
23398937Sdes		| mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \
23498937Sdes		| sparc | sparclet | sparclite | sparc64 | sparcv9 | sparcv9b \
23598937Sdes		| v850 | c4x \
23698937Sdes		| thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \
23798937Sdes		| pj | pjl | h8500)
23898937Sdes		basic_machine=$basic_machine-unknown
23998937Sdes		;;
24098937Sdes	m6811 | m68hc11 | m6812 | m68hc12)
24198937Sdes		# Motorola 68HC11/12.
24298937Sdes		basic_machine=$basic_machine-unknown
24398937Sdes		os=-none
24498937Sdes		;;
24598937Sdes	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65)
24698937Sdes		;;
24798937Sdes
24898937Sdes	# We use `pc' rather than `unknown'
24998937Sdes	# because (1) that's what they normally are, and
25098937Sdes	# (2) the word "unknown" tends to confuse beginning users.
25198937Sdes	i*86 | x86_64)
25298937Sdes	  basic_machine=$basic_machine-pc
25398937Sdes	  ;;
25498937Sdes	# Object if more than one company name word.
25598937Sdes	*-*-*)
25698937Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
25798937Sdes		exit 1
25898937Sdes		;;
25998937Sdes	# Recognize the basic CPU types with company name.
26098937Sdes	# FIXME: clean up the formatting here.
26198937Sdes	vax-* | tahoe-* | i*86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
26298937Sdes	      | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \
26398937Sdes	      | arm-*  | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \
26498937Sdes	      | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
26598937Sdes	      | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
26698937Sdes	      | xmp-* | ymp-* \
26798937Sdes	      | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \
26898937Sdes	      | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \
26998937Sdes	      | hppa2.0n-* | hppa64-* \
27098937Sdes	      | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \
27198937Sdes	      | alphaev6[78]-* \
27298937Sdes	      | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
27398937Sdes	      | clipper-* | orion-* \
27498937Sdes	      | sparclite-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
27598937Sdes	      | sparc64-* | sparcv9-* | sparcv9b-* | sparc86x-* \
27698937Sdes	      | mips16-* | mips64-* | mipsel-* \
27798937Sdes	      | mips64el-* | mips64orion-* | mips64orionel-* \
27898937Sdes	      | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
27998937Sdes	      | mipstx39-* | mipstx39el-* | mcore-* \
28098937Sdes	      | f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \
28198937Sdes	      | [cjt]90-* \
28298937Sdes	      | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
28398937Sdes	      | thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \
28498937Sdes	      | bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*)
28598937Sdes		;;
28698937Sdes	# Recognize the various machine names and aliases which stand
28798937Sdes	# for a CPU type and a company and sometimes even an OS.
28898937Sdes	386bsd)
28998937Sdes		basic_machine=i386-unknown
29098937Sdes		os=-bsd
29198937Sdes		;;
29298937Sdes	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
29398937Sdes		basic_machine=m68000-att
29498937Sdes		;;
29598937Sdes	3b*)
29698937Sdes		basic_machine=we32k-att
29798937Sdes		;;
29898937Sdes	a29khif)
29998937Sdes		basic_machine=a29k-amd
30098937Sdes		os=-udi
30198937Sdes		;;
30298937Sdes	adobe68k)
30398937Sdes		basic_machine=m68010-adobe
30498937Sdes		os=-scout
30598937Sdes		;;
30698937Sdes	alliant | fx80)
30798937Sdes		basic_machine=fx80-alliant
30898937Sdes		;;
30998937Sdes	altos | altos3068)
31098937Sdes		basic_machine=m68k-altos
31198937Sdes		;;
31298937Sdes	am29k)
31398937Sdes		basic_machine=a29k-none
31498937Sdes		os=-bsd
31598937Sdes		;;
31698937Sdes	amdahl)
31798937Sdes		basic_machine=580-amdahl
31898937Sdes		os=-sysv
31998937Sdes		;;
32098937Sdes	amiga | amiga-*)
32198937Sdes		basic_machine=m68k-unknown
32298937Sdes		;;
32398937Sdes	amigaos | amigados)
32498937Sdes		basic_machine=m68k-unknown
32598937Sdes		os=-amigaos
32698937Sdes		;;
32798937Sdes	amigaunix | amix)
32898937Sdes		basic_machine=m68k-unknown
32998937Sdes		os=-sysv4
33098937Sdes		;;
33198937Sdes	apollo68)
33298937Sdes		basic_machine=m68k-apollo
33398937Sdes		os=-sysv
33498937Sdes		;;
33598937Sdes	apollo68bsd)
33698937Sdes		basic_machine=m68k-apollo
33798937Sdes		os=-bsd
33898937Sdes		;;
33998937Sdes	aux)
34098937Sdes		basic_machine=m68k-apple
34198937Sdes		os=-aux
34298937Sdes		;;
34398937Sdes	balance)
34498937Sdes		basic_machine=ns32k-sequent
34598937Sdes		os=-dynix
34698937Sdes		;;
34798937Sdes	convex-c1)
34898937Sdes		basic_machine=c1-convex
34998937Sdes		os=-bsd
35098937Sdes		;;
35198937Sdes	convex-c2)
35298937Sdes		basic_machine=c2-convex
35398937Sdes		os=-bsd
35498937Sdes		;;
35598937Sdes	convex-c32)
35698937Sdes		basic_machine=c32-convex
35798937Sdes		os=-bsd
35898937Sdes		;;
35998937Sdes	convex-c34)
36098937Sdes		basic_machine=c34-convex
36198937Sdes		os=-bsd
36298937Sdes		;;
36398937Sdes	convex-c38)
36498937Sdes		basic_machine=c38-convex
36598937Sdes		os=-bsd
36698937Sdes		;;
36798937Sdes	cray | ymp)
36898937Sdes		basic_machine=ymp-cray
36998937Sdes		os=-unicos
37098937Sdes		;;
37198937Sdes	cray2)
37298937Sdes		basic_machine=cray2-cray
37398937Sdes		os=-unicos
37498937Sdes		;;
37598937Sdes	[cjt]90)
37698937Sdes		basic_machine=${basic_machine}-cray
37798937Sdes		os=-unicos
37898937Sdes		;;
37998937Sdes	crds | unos)
38098937Sdes		basic_machine=m68k-crds
38198937Sdes		;;
38298937Sdes	cris | cris-* | etrax*)
38398937Sdes		basic_machine=cris-axis
38498937Sdes		;;
38598937Sdes	da30 | da30-*)
38698937Sdes		basic_machine=m68k-da30
38798937Sdes		;;
38898937Sdes	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
38998937Sdes		basic_machine=mips-dec
39098937Sdes		;;
39198937Sdes	delta | 3300 | motorola-3300 | motorola-delta \
39298937Sdes	      | 3300-motorola | delta-motorola)
39398937Sdes		basic_machine=m68k-motorola
39498937Sdes		;;
39598937Sdes	delta88)
39698937Sdes		basic_machine=m88k-motorola
39798937Sdes		os=-sysv3
39898937Sdes		;;
39998937Sdes	dpx20 | dpx20-*)
40098937Sdes		basic_machine=rs6000-bull
40198937Sdes		os=-bosx
40298937Sdes		;;
40398937Sdes	dpx2* | dpx2*-bull)
40498937Sdes		basic_machine=m68k-bull
40598937Sdes		os=-sysv3
40698937Sdes		;;
40798937Sdes	ebmon29k)
40898937Sdes		basic_machine=a29k-amd
40998937Sdes		os=-ebmon
41098937Sdes		;;
41198937Sdes	elxsi)
41298937Sdes		basic_machine=elxsi-elxsi
41398937Sdes		os=-bsd
41498937Sdes		;;
41598937Sdes	encore | umax | mmax)
41698937Sdes		basic_machine=ns32k-encore
41798937Sdes		;;
41898937Sdes	es1800 | OSE68k | ose68k | ose | OSE)
41998937Sdes		basic_machine=m68k-ericsson
42098937Sdes		os=-ose
42198937Sdes		;;
42298937Sdes	fx2800)
42398937Sdes		basic_machine=i860-alliant
42498937Sdes		;;
42598937Sdes	genix)
42698937Sdes		basic_machine=ns32k-ns
42798937Sdes		;;
42898937Sdes	gmicro)
42998937Sdes		basic_machine=tron-gmicro
43098937Sdes		os=-sysv
43198937Sdes		;;
43298937Sdes	go32)
43398937Sdes		basic_machine=i386-pc
43498937Sdes		os=-go32
43598937Sdes		;;
43698937Sdes	h3050r* | hiux*)
43798937Sdes		basic_machine=hppa1.1-hitachi
43898937Sdes		os=-hiuxwe2
43998937Sdes		;;
44098937Sdes	h8300hms)
44198937Sdes		basic_machine=h8300-hitachi
44298937Sdes		os=-hms
44398937Sdes		;;
44498937Sdes	h8300xray)
44598937Sdes		basic_machine=h8300-hitachi
44698937Sdes		os=-xray
44798937Sdes		;;
44898937Sdes	h8500hms)
44998937Sdes		basic_machine=h8500-hitachi
45098937Sdes		os=-hms
45198937Sdes		;;
45298937Sdes	harris)
45398937Sdes		basic_machine=m88k-harris
45498937Sdes		os=-sysv3
45598937Sdes		;;
45698937Sdes	hp300-*)
45798937Sdes		basic_machine=m68k-hp
45898937Sdes		;;
45998937Sdes	hp300bsd)
46098937Sdes		basic_machine=m68k-hp
46198937Sdes		os=-bsd
46298937Sdes		;;
46398937Sdes	hp300hpux)
46498937Sdes		basic_machine=m68k-hp
46598937Sdes		os=-hpux
46698937Sdes		;;
46798937Sdes	hp3k9[0-9][0-9] | hp9[0-9][0-9])
46898937Sdes		basic_machine=hppa1.0-hp
46998937Sdes		;;
47098937Sdes	hp9k2[0-9][0-9] | hp9k31[0-9])
47198937Sdes		basic_machine=m68000-hp
47298937Sdes		;;
47398937Sdes	hp9k3[2-9][0-9])
47498937Sdes		basic_machine=m68k-hp
47598937Sdes		;;
47698937Sdes	hp9k6[0-9][0-9] | hp6[0-9][0-9])
47798937Sdes		basic_machine=hppa1.0-hp
47898937Sdes		;;
47998937Sdes	hp9k7[0-79][0-9] | hp7[0-79][0-9])
48098937Sdes		basic_machine=hppa1.1-hp
48198937Sdes		;;
48298937Sdes	hp9k78[0-9] | hp78[0-9])
48398937Sdes		# FIXME: really hppa2.0-hp
48498937Sdes		basic_machine=hppa1.1-hp
48598937Sdes		;;
48698937Sdes	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
48798937Sdes		# FIXME: really hppa2.0-hp
48898937Sdes		basic_machine=hppa1.1-hp
48998937Sdes		;;
49098937Sdes	hp9k8[0-9][13679] | hp8[0-9][13679])
49198937Sdes		basic_machine=hppa1.1-hp
49298937Sdes		;;
49398937Sdes	hp9k8[0-9][0-9] | hp8[0-9][0-9])
49498937Sdes		basic_machine=hppa1.0-hp
49598937Sdes		;;
49698937Sdes	hppa-next)
49798937Sdes		os=-nextstep3
49898937Sdes		;;
49998937Sdes	hppaosf)
50098937Sdes		basic_machine=hppa1.1-hp
50198937Sdes		os=-osf
50298937Sdes		;;
50398937Sdes	hppro)
50498937Sdes		basic_machine=hppa1.1-hp
50598937Sdes		os=-proelf
50698937Sdes		;;
50798937Sdes	i370-ibm* | ibm*)
50898937Sdes		basic_machine=i370-ibm
50998937Sdes		;;
51098937Sdes# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
51198937Sdes	i*86v32)
51298937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
51398937Sdes		os=-sysv32
51498937Sdes		;;
51598937Sdes	i*86v4*)
51698937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
51798937Sdes		os=-sysv4
51898937Sdes		;;
51998937Sdes	i*86v)
52098937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
52198937Sdes		os=-sysv
52298937Sdes		;;
52398937Sdes	i*86sol2)
52498937Sdes		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
52598937Sdes		os=-solaris2
52698937Sdes		;;
52798937Sdes	i386mach)
52898937Sdes		basic_machine=i386-mach
52998937Sdes		os=-mach
53098937Sdes		;;
53198937Sdes	i386-vsta | vsta)
53298937Sdes		basic_machine=i386-unknown
53398937Sdes		os=-vsta
53498937Sdes		;;
53598937Sdes	iris | iris4d)
53698937Sdes		basic_machine=mips-sgi
53798937Sdes		case $os in
53898937Sdes		    -irix*)
53998937Sdes			;;
54098937Sdes		    *)
54198937Sdes			os=-irix4
54298937Sdes			;;
54398937Sdes		esac
54498937Sdes		;;
54598937Sdes	isi68 | isi)
54698937Sdes		basic_machine=m68k-isi
54798937Sdes		os=-sysv
54898937Sdes		;;
54998937Sdes	m88k-omron*)
55098937Sdes		basic_machine=m88k-omron
55198937Sdes		;;
55298937Sdes	magnum | m3230)
55398937Sdes		basic_machine=mips-mips
55498937Sdes		os=-sysv
55598937Sdes		;;
55698937Sdes	merlin)
55798937Sdes		basic_machine=ns32k-utek
55898937Sdes		os=-sysv
55998937Sdes		;;
56098937Sdes	mingw32)
56198937Sdes		basic_machine=i386-pc
56298937Sdes		os=-mingw32
56398937Sdes		;;
56498937Sdes	miniframe)
56598937Sdes		basic_machine=m68000-convergent
56698937Sdes		;;
56798937Sdes	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
56898937Sdes		basic_machine=m68k-atari
56998937Sdes		os=-mint
57098937Sdes		;;
57198937Sdes	mipsel*-linux*)
57298937Sdes		basic_machine=mipsel-unknown
57398937Sdes		os=-linux-gnu
57498937Sdes		;;
57598937Sdes	mips*-linux*)
57698937Sdes		basic_machine=mips-unknown
57798937Sdes		os=-linux-gnu
57898937Sdes		;;
57998937Sdes	mips3*-*)
58098937Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
58198937Sdes		;;
58298937Sdes	mips3*)
58398937Sdes		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
58498937Sdes		;;
58598937Sdes	mmix*)
58698937Sdes		basic_machine=mmix-knuth
58798937Sdes		os=-mmixware
58898937Sdes		;;
58998937Sdes	monitor)
59098937Sdes		basic_machine=m68k-rom68k
59198937Sdes		os=-coff
59298937Sdes		;;
59398937Sdes	msdos)
59498937Sdes		basic_machine=i386-pc
59598937Sdes		os=-msdos
59698937Sdes		;;
59798937Sdes	mvs)
59898937Sdes		basic_machine=i370-ibm
59998937Sdes		os=-mvs
60098937Sdes		;;
60198937Sdes	ncr3000)
60298937Sdes		basic_machine=i486-ncr
60398937Sdes		os=-sysv4
60498937Sdes		;;
60598937Sdes	netbsd386)
60698937Sdes		basic_machine=i386-unknown
60798937Sdes		os=-netbsd
60898937Sdes		;;
60998937Sdes	netwinder)
61098937Sdes		basic_machine=armv4l-rebel
61198937Sdes		os=-linux
61298937Sdes		;;
61398937Sdes	news | news700 | news800 | news900)
61498937Sdes		basic_machine=m68k-sony
61598937Sdes		os=-newsos
61698937Sdes		;;
61798937Sdes	news1000)
61898937Sdes		basic_machine=m68030-sony
61998937Sdes		os=-newsos
62098937Sdes		;;
62198937Sdes	news-3600 | risc-news)
62298937Sdes		basic_machine=mips-sony
62398937Sdes		os=-newsos
62498937Sdes		;;
62598937Sdes	necv70)
62698937Sdes		basic_machine=v70-nec
62798937Sdes		os=-sysv
62898937Sdes		;;
62998937Sdes	next | m*-next )
63098937Sdes		basic_machine=m68k-next
63198937Sdes		case $os in
63298937Sdes		    -nextstep* )
63398937Sdes			;;
63498937Sdes		    -ns2*)
63598937Sdes		      os=-nextstep2
63698937Sdes			;;
63798937Sdes		    *)
63898937Sdes		      os=-nextstep3
63998937Sdes			;;
64098937Sdes		esac
64198937Sdes		;;
64298937Sdes	nh3000)
64398937Sdes		basic_machine=m68k-harris
64498937Sdes		os=-cxux
64598937Sdes		;;
64698937Sdes	nh[45]000)
64798937Sdes		basic_machine=m88k-harris
64898937Sdes		os=-cxux
64998937Sdes		;;
65098937Sdes	nindy960)
65198937Sdes		basic_machine=i960-intel
65298937Sdes		os=-nindy
65398937Sdes		;;
65498937Sdes	mon960)
65598937Sdes		basic_machine=i960-intel
65698937Sdes		os=-mon960
65798937Sdes		;;
65898937Sdes	nonstopux)
65998937Sdes		basic_machine=mips-compaq
66098937Sdes		os=-nonstopux
66198937Sdes		;;
66298937Sdes	np1)
66398937Sdes		basic_machine=np1-gould
66498937Sdes		;;
66598937Sdes	nsr-tandem)
66698937Sdes		basic_machine=nsr-tandem
66798937Sdes		;;
66898937Sdes	op50n-* | op60c-*)
66998937Sdes		basic_machine=hppa1.1-oki
67098937Sdes		os=-proelf
67198937Sdes		;;
67298937Sdes	OSE68000 | ose68000)
67398937Sdes		basic_machine=m68000-ericsson
67498937Sdes		os=-ose
67598937Sdes		;;
67698937Sdes	os68k)
67798937Sdes		basic_machine=m68k-none
67898937Sdes		os=-os68k
67998937Sdes		;;
68098937Sdes	pa-hitachi)
68198937Sdes		basic_machine=hppa1.1-hitachi
68298937Sdes		os=-hiuxwe2
68398937Sdes		;;
68498937Sdes	paragon)
68598937Sdes		basic_machine=i860-intel
68698937Sdes		os=-osf
68798937Sdes		;;
68898937Sdes	pbd)
68998937Sdes		basic_machine=sparc-tti
69098937Sdes		;;
69198937Sdes	pbb)
69298937Sdes		basic_machine=m68k-tti
69398937Sdes		;;
69498937Sdes        pc532 | pc532-*)
69598937Sdes		basic_machine=ns32k-pc532
69698937Sdes		;;
69798937Sdes	pentium | p5 | k5 | k6 | nexgen)
69898937Sdes		basic_machine=i586-pc
69998937Sdes		;;
70098937Sdes	pentiumpro | p6 | 6x86 | athlon)
70198937Sdes		basic_machine=i686-pc
70298937Sdes		;;
70398937Sdes	pentiumii | pentium2)
70498937Sdes		basic_machine=i686-pc
70598937Sdes		;;
70698937Sdes	pentium-* | p5-* | k5-* | k6-* | nexgen-*)
70798937Sdes		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
70898937Sdes		;;
70998937Sdes	pentiumpro-* | p6-* | 6x86-* | athlon-*)
71098937Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
71198937Sdes		;;
71298937Sdes	pentiumii-* | pentium2-*)
71398937Sdes		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
71498937Sdes		;;
71598937Sdes	pn)
71698937Sdes		basic_machine=pn-gould
71798937Sdes		;;
71898937Sdes	power)	basic_machine=power-ibm
71998937Sdes		;;
72098937Sdes	ppc)	basic_machine=powerpc-unknown
72198937Sdes	        ;;
72298937Sdes	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
72398937Sdes		;;
72498937Sdes	ppcle | powerpclittle | ppc-le | powerpc-little)
72598937Sdes		basic_machine=powerpcle-unknown
72698937Sdes	        ;;
72798937Sdes	ppcle-* | powerpclittle-*)
72898937Sdes		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
72998937Sdes		;;
73098937Sdes	ps2)
73198937Sdes		basic_machine=i386-ibm
73298937Sdes		;;
73398937Sdes	pw32)
73498937Sdes		basic_machine=i586-unknown
73598937Sdes		os=-pw32
73698937Sdes		;;
73798937Sdes	rom68k)
73898937Sdes		basic_machine=m68k-rom68k
73998937Sdes		os=-coff
74098937Sdes		;;
74198937Sdes	rm[46]00)
74298937Sdes		basic_machine=mips-siemens
74398937Sdes		;;
74498937Sdes	rtpc | rtpc-*)
74598937Sdes		basic_machine=romp-ibm
74698937Sdes		;;
74798937Sdes	sa29200)
74898937Sdes		basic_machine=a29k-amd
74998937Sdes		os=-udi
75098937Sdes		;;
75198937Sdes	sequent)
75298937Sdes		basic_machine=i386-sequent
75398937Sdes		;;
75498937Sdes	sh)
75598937Sdes		basic_machine=sh-hitachi
75698937Sdes		os=-hms
75798937Sdes		;;
75898937Sdes	sparclite-wrs)
75998937Sdes		basic_machine=sparclite-wrs
76098937Sdes		os=-vxworks
76198937Sdes		;;
76298937Sdes	sps7)
76398937Sdes		basic_machine=m68k-bull
76498937Sdes		os=-sysv2
76598937Sdes		;;
76698937Sdes	spur)
76798937Sdes		basic_machine=spur-unknown
76898937Sdes		;;
76998937Sdes	st2000)
77098937Sdes		basic_machine=m68k-tandem
77198937Sdes		;;
77298937Sdes	stratus)
77398937Sdes		basic_machine=i860-stratus
77498937Sdes		os=-sysv4
77598937Sdes		;;
77698937Sdes	sun2)
77798937Sdes		basic_machine=m68000-sun
77898937Sdes		;;
77998937Sdes	sun2os3)
78098937Sdes		basic_machine=m68000-sun
78198937Sdes		os=-sunos3
78298937Sdes		;;
78398937Sdes	sun2os4)
78498937Sdes		basic_machine=m68000-sun
78598937Sdes		os=-sunos4
78698937Sdes		;;
78798937Sdes	sun3os3)
78898937Sdes		basic_machine=m68k-sun
78998937Sdes		os=-sunos3
79098937Sdes		;;
79198937Sdes	sun3os4)
79298937Sdes		basic_machine=m68k-sun
79398937Sdes		os=-sunos4
79498937Sdes		;;
79598937Sdes	sun4os3)
79698937Sdes		basic_machine=sparc-sun
79798937Sdes		os=-sunos3
79898937Sdes		;;
79998937Sdes	sun4os4)
80098937Sdes		basic_machine=sparc-sun
80198937Sdes		os=-sunos4
80298937Sdes		;;
80398937Sdes	sun4sol2)
80498937Sdes		basic_machine=sparc-sun
80598937Sdes		os=-solaris2
80698937Sdes		;;
80798937Sdes	sun3 | sun3-*)
80898937Sdes		basic_machine=m68k-sun
80998937Sdes		;;
81098937Sdes	sun4)
81198937Sdes		basic_machine=sparc-sun
81298937Sdes		;;
81398937Sdes	sun386 | sun386i | roadrunner)
81498937Sdes		basic_machine=i386-sun
81598937Sdes		;;
81698937Sdes	sv1)
81798937Sdes		basic_machine=sv1-cray
81898937Sdes		os=-unicos
81998937Sdes		;;
82098937Sdes	symmetry)
82198937Sdes		basic_machine=i386-sequent
82298937Sdes		os=-dynix
82398937Sdes		;;
82498937Sdes	t3e)
82598937Sdes		basic_machine=t3e-cray
82698937Sdes		os=-unicos
82798937Sdes		;;
82898937Sdes	tic54x | c54x*)
82998937Sdes		basic_machine=tic54x-unknown
83098937Sdes		os=-coff
83198937Sdes		;;
83298937Sdes	tx39)
83398937Sdes		basic_machine=mipstx39-unknown
83498937Sdes		;;
83598937Sdes	tx39el)
83698937Sdes		basic_machine=mipstx39el-unknown
83798937Sdes		;;
83898937Sdes	tower | tower-32)
83998937Sdes		basic_machine=m68k-ncr
84098937Sdes		;;
84198937Sdes	udi29k)
84298937Sdes		basic_machine=a29k-amd
84398937Sdes		os=-udi
84498937Sdes		;;
84598937Sdes	ultra3)
84698937Sdes		basic_machine=a29k-nyu
84798937Sdes		os=-sym1
84898937Sdes		;;
84998937Sdes	v810 | necv810)
85098937Sdes		basic_machine=v810-nec
85198937Sdes		os=-none
85298937Sdes		;;
85398937Sdes	vaxv)
85498937Sdes		basic_machine=vax-dec
85598937Sdes		os=-sysv
85698937Sdes		;;
85798937Sdes	vms)
85898937Sdes		basic_machine=vax-dec
85998937Sdes		os=-vms
86098937Sdes		;;
86198937Sdes	vpp*|vx|vx-*)
86298937Sdes               basic_machine=f301-fujitsu
86398937Sdes               ;;
86498937Sdes	vxworks960)
86598937Sdes		basic_machine=i960-wrs
86698937Sdes		os=-vxworks
86798937Sdes		;;
86898937Sdes	vxworks68)
86998937Sdes		basic_machine=m68k-wrs
87098937Sdes		os=-vxworks
87198937Sdes		;;
87298937Sdes	vxworks29k)
87398937Sdes		basic_machine=a29k-wrs
87498937Sdes		os=-vxworks
87598937Sdes		;;
87698937Sdes	w65*)
87798937Sdes		basic_machine=w65-wdc
87898937Sdes		os=-none
87998937Sdes		;;
88098937Sdes	w89k-*)
88198937Sdes		basic_machine=hppa1.1-winbond
88298937Sdes		os=-proelf
88398937Sdes		;;
88498937Sdes	xmp)
88598937Sdes		basic_machine=xmp-cray
88698937Sdes		os=-unicos
88798937Sdes		;;
88898937Sdes        xps | xps100)
88998937Sdes		basic_machine=xps100-honeywell
89098937Sdes		;;
89198937Sdes	z8k-*-coff)
89298937Sdes		basic_machine=z8k-unknown
89398937Sdes		os=-sim
89498937Sdes		;;
89598937Sdes	none)
89698937Sdes		basic_machine=none-none
89798937Sdes		os=-none
89898937Sdes		;;
89998937Sdes
90098937Sdes# Here we handle the default manufacturer of certain CPU types.  It is in
90198937Sdes# some cases the only manufacturer, in others, it is the most popular.
90298937Sdes	w89k)
90398937Sdes		basic_machine=hppa1.1-winbond
90498937Sdes		;;
90598937Sdes	op50n)
90698937Sdes		basic_machine=hppa1.1-oki
90798937Sdes		;;
90898937Sdes	op60c)
90998937Sdes		basic_machine=hppa1.1-oki
91098937Sdes		;;
91198937Sdes	mips)
91298937Sdes		if [ x$os = x-linux-gnu ]; then
91398937Sdes			basic_machine=mips-unknown
91498937Sdes		else
91598937Sdes			basic_machine=mips-mips
91698937Sdes		fi
91798937Sdes		;;
91898937Sdes	romp)
91998937Sdes		basic_machine=romp-ibm
92098937Sdes		;;
92198937Sdes	rs6000)
92298937Sdes		basic_machine=rs6000-ibm
92398937Sdes		;;
92498937Sdes	vax)
92598937Sdes		basic_machine=vax-dec
92698937Sdes		;;
92798937Sdes	pdp10)
92898937Sdes		# there are many clones, so DEC is not a safe bet
92998937Sdes		basic_machine=pdp10-unknown
93098937Sdes		;;
93198937Sdes	pdp11)
93298937Sdes		basic_machine=pdp11-dec
93398937Sdes		;;
93498937Sdes	we32k)
93598937Sdes		basic_machine=we32k-att
93698937Sdes		;;
93798937Sdes	sh3 | sh4)
93898937Sdes		basic_machine=sh-unknown
93998937Sdes		;;
94098937Sdes	sparc | sparcv9 | sparcv9b)
94198937Sdes		basic_machine=sparc-sun
94298937Sdes		;;
94398937Sdes        cydra)
94498937Sdes		basic_machine=cydra-cydrome
94598937Sdes		;;
94698937Sdes	orion)
94798937Sdes		basic_machine=orion-highlevel
94898937Sdes		;;
94998937Sdes	orion105)
95098937Sdes		basic_machine=clipper-highlevel
95198937Sdes		;;
95298937Sdes	mac | mpw | mac-mpw)
95398937Sdes		basic_machine=m68k-apple
95498937Sdes		;;
95598937Sdes	pmac | pmac-mpw)
95698937Sdes		basic_machine=powerpc-apple
95798937Sdes		;;
95898937Sdes	c4x*)
95998937Sdes		basic_machine=c4x-none
96098937Sdes		os=-coff
96198937Sdes		;;
96298937Sdes	*-unknown)
96398937Sdes		# Make sure to match an already-canonicalized machine name.
96498937Sdes		;;
96598937Sdes	*)
96698937Sdes		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
96798937Sdes		exit 1
96898937Sdes		;;
96998937Sdesesac
97098937Sdes
97198937Sdes# Here we canonicalize certain aliases for manufacturers.
97298937Sdescase $basic_machine in
97398937Sdes	*-digital*)
97498937Sdes		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
97598937Sdes		;;
97698937Sdes	*-commodore*)
97798937Sdes		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
97898937Sdes		;;
97998937Sdes	*)
98098937Sdes		;;
98198937Sdesesac
98298937Sdes
98398937Sdes# Decode manufacturer-specific aliases for certain operating systems.
98498937Sdes
98598937Sdesif [ x"$os" != x"" ]
98698937Sdesthen
98798937Sdescase $os in
98898937Sdes        # First match some system type aliases
98998937Sdes        # that might get confused with valid system types.
99098937Sdes	# -solaris* is a basic system type, with this one exception.
99198937Sdes	-solaris1 | -solaris1.*)
99298937Sdes		os=`echo $os | sed -e 's|solaris1|sunos4|'`
99398937Sdes		;;
99498937Sdes	-solaris)
99598937Sdes		os=-solaris2
99698937Sdes		;;
99798937Sdes	-svr4*)
99898937Sdes		os=-sysv4
99998937Sdes		;;
100098937Sdes	-unixware*)
100198937Sdes		os=-sysv4.2uw
100298937Sdes		;;
100398937Sdes	-gnu/linux*)
100498937Sdes		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
100598937Sdes		;;
100698937Sdes	# First accept the basic system types.
100798937Sdes	# The portable systems comes first.
100898937Sdes	# Each alternative MUST END IN A *, to match a version number.
100998937Sdes	# -sysv* is not here because it comes later, after sysvr4.
101098937Sdes	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
101198937Sdes	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
101298937Sdes	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
101398937Sdes	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
101498937Sdes	      | -aos* \
101598937Sdes	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
101698937Sdes	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
101798937Sdes	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
101898937Sdes	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
101998937Sdes	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
102098937Sdes	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
102198937Sdes	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
102298937Sdes	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
102398937Sdes	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
102498937Sdes	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
102598937Sdes	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*)
102698937Sdes	# Remember, each alternative MUST END IN *, to match a version number.
102798937Sdes		;;
102898937Sdes	-qnx*)
102998937Sdes		case $basic_machine in
103098937Sdes		    x86-* | i*86-*)
103198937Sdes			;;
103298937Sdes		    *)
103398937Sdes			os=-nto$os
103498937Sdes			;;
103598937Sdes		esac
103698937Sdes		;;
103798937Sdes	-nto*)
103898937Sdes		os=-nto-qnx
103998937Sdes		;;
104098937Sdes	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
104198937Sdes	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
104298937Sdes	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
104398937Sdes		;;
104498937Sdes	-mac*)
104598937Sdes		os=`echo $os | sed -e 's|mac|macos|'`
104698937Sdes		;;
104798937Sdes	-linux*)
104898937Sdes		os=`echo $os | sed -e 's|linux|linux-gnu|'`
104998937Sdes		;;
105098937Sdes	-sunos5*)
105198937Sdes		os=`echo $os | sed -e 's|sunos5|solaris2|'`
105298937Sdes		;;
105398937Sdes	-sunos6*)
105498937Sdes		os=`echo $os | sed -e 's|sunos6|solaris3|'`
105598937Sdes		;;
105698937Sdes	-opened*)
105798937Sdes		os=-openedition
105898937Sdes		;;
105998937Sdes	-wince*)
106098937Sdes		os=-wince
106198937Sdes		;;
106298937Sdes	-osfrose*)
106398937Sdes		os=-osfrose
106498937Sdes		;;
106598937Sdes	-osf*)
106698937Sdes		os=-osf
106798937Sdes		;;
106898937Sdes	-utek*)
106998937Sdes		os=-bsd
107098937Sdes		;;
107198937Sdes	-dynix*)
107298937Sdes		os=-bsd
107398937Sdes		;;
107498937Sdes	-acis*)
107598937Sdes		os=-aos
107698937Sdes		;;
107798937Sdes	-386bsd)
107898937Sdes		os=-bsd
107998937Sdes		;;
108098937Sdes	-ctix* | -uts*)
108198937Sdes		os=-sysv
108298937Sdes		;;
108398937Sdes	-ns2 )
108498937Sdes	        os=-nextstep2
108598937Sdes		;;
108698937Sdes	-nsk*)
108798937Sdes		os=-nsk
108898937Sdes		;;
108998937Sdes	# Preserve the version number of sinix5.
109098937Sdes	-sinix5.*)
109198937Sdes		os=`echo $os | sed -e 's|sinix|sysv|'`
109298937Sdes		;;
109398937Sdes	-sinix*)
109498937Sdes		os=-sysv4
109598937Sdes		;;
109698937Sdes	-triton*)
109798937Sdes		os=-sysv3
109898937Sdes		;;
109998937Sdes	-oss*)
110098937Sdes		os=-sysv3
110198937Sdes		;;
110298937Sdes	-svr4)
110398937Sdes		os=-sysv4
110498937Sdes		;;
110598937Sdes	-svr3)
110698937Sdes		os=-sysv3
110798937Sdes		;;
110898937Sdes	-sysvr4)
110998937Sdes		os=-sysv4
111098937Sdes		;;
111198937Sdes	# This must come after -sysvr4.
111298937Sdes	-sysv*)
111398937Sdes		;;
111498937Sdes	-ose*)
111598937Sdes		os=-ose
111698937Sdes		;;
111798937Sdes	-es1800*)
111898937Sdes		os=-ose
111998937Sdes		;;
112098937Sdes	-xenix)
112198937Sdes		os=-xenix
112298937Sdes		;;
112398937Sdes        -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
112498937Sdes	        os=-mint
112598937Sdes		;;
112698937Sdes	-none)
112798937Sdes		;;
112898937Sdes	*)
112998937Sdes		# Get rid of the `-' at the beginning of $os.
113098937Sdes		os=`echo $os | sed 's/[^-]*-//'`
113198937Sdes		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
113298937Sdes		exit 1
113398937Sdes		;;
113498937Sdesesac
113598937Sdeselse
113698937Sdes
113798937Sdes# Here we handle the default operating systems that come with various machines.
113898937Sdes# The value should be what the vendor currently ships out the door with their
113998937Sdes# machine or put another way, the most popular os provided with the machine.
114098937Sdes
114198937Sdes# Note that if you're going to try to match "-MANUFACTURER" here (say,
114298937Sdes# "-sun"), then you have to tell the case statement up towards the top
114398937Sdes# that MANUFACTURER isn't an operating system.  Otherwise, code above
114498937Sdes# will signal an error saying that MANUFACTURER isn't an operating
114598937Sdes# system, and we'll never get to this point.
114698937Sdes
114798937Sdescase $basic_machine in
114898937Sdes	*-acorn)
114998937Sdes		os=-riscix1.2
115098937Sdes		;;
115198937Sdes	arm*-rebel)
115298937Sdes		os=-linux
115398937Sdes		;;
115498937Sdes	arm*-semi)
115598937Sdes		os=-aout
115698937Sdes		;;
115798937Sdes	pdp10-*)
115898937Sdes		os=-tops20
115998937Sdes		;;
116098937Sdes        pdp11-*)
116198937Sdes		os=-none
116298937Sdes		;;
116398937Sdes	*-dec | vax-*)
116498937Sdes		os=-ultrix4.2
116598937Sdes		;;
116698937Sdes	m68*-apollo)
116798937Sdes		os=-domain
116898937Sdes		;;
116998937Sdes	i386-sun)
117098937Sdes		os=-sunos4.0.2
117198937Sdes		;;
117298937Sdes	m68000-sun)
117398937Sdes		os=-sunos3
117498937Sdes		# This also exists in the configure program, but was not the
117598937Sdes		# default.
117698937Sdes		# os=-sunos4
117798937Sdes		;;
117898937Sdes	m68*-cisco)
117998937Sdes		os=-aout
118098937Sdes		;;
118198937Sdes	mips*-cisco)
118298937Sdes		os=-elf
118398937Sdes		;;
118498937Sdes	mips*-*)
118598937Sdes		os=-elf
118698937Sdes		;;
118798937Sdes	*-tti)	# must be before sparc entry or we get the wrong os.
118898937Sdes		os=-sysv3
118998937Sdes		;;
119098937Sdes	sparc-* | *-sun)
119198937Sdes		os=-sunos4.1.1
119298937Sdes		;;
119398937Sdes	*-be)
119498937Sdes		os=-beos
119598937Sdes		;;
119698937Sdes	*-ibm)
119798937Sdes		os=-aix
119898937Sdes		;;
119998937Sdes	*-wec)
120098937Sdes		os=-proelf
120198937Sdes		;;
120298937Sdes	*-winbond)
120398937Sdes		os=-proelf
120498937Sdes		;;
120598937Sdes	*-oki)
120698937Sdes		os=-proelf
120798937Sdes		;;
120898937Sdes	*-hp)
120998937Sdes		os=-hpux
121098937Sdes		;;
121198937Sdes	*-hitachi)
121298937Sdes		os=-hiux
121398937Sdes		;;
121498937Sdes	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
121598937Sdes		os=-sysv
121698937Sdes		;;
121798937Sdes	*-cbm)
121898937Sdes		os=-amigaos
121998937Sdes		;;
122098937Sdes	*-dg)
122198937Sdes		os=-dgux
122298937Sdes		;;
122398937Sdes	*-dolphin)
122498937Sdes		os=-sysv3
122598937Sdes		;;
122698937Sdes	m68k-ccur)
122798937Sdes		os=-rtu
122898937Sdes		;;
122998937Sdes	m88k-omron*)
123098937Sdes		os=-luna
123198937Sdes		;;
123298937Sdes	*-next )
123398937Sdes		os=-nextstep
123498937Sdes		;;
123598937Sdes	*-sequent)
123698937Sdes		os=-ptx
123798937Sdes		;;
123898937Sdes	*-crds)
123998937Sdes		os=-unos
124098937Sdes		;;
124198937Sdes	*-ns)
124298937Sdes		os=-genix
124398937Sdes		;;
124498937Sdes	i370-*)
124598937Sdes		os=-mvs
124698937Sdes		;;
124798937Sdes	*-next)
124898937Sdes		os=-nextstep3
124998937Sdes		;;
125098937Sdes        *-gould)
125198937Sdes		os=-sysv
125298937Sdes		;;
125398937Sdes        *-highlevel)
125498937Sdes		os=-bsd
125598937Sdes		;;
125698937Sdes	*-encore)
125798937Sdes		os=-bsd
125898937Sdes		;;
125998937Sdes        *-sgi)
126098937Sdes		os=-irix
126198937Sdes		;;
126298937Sdes        *-siemens)
126398937Sdes		os=-sysv4
126498937Sdes		;;
126598937Sdes	*-masscomp)
126698937Sdes		os=-rtu
126798937Sdes		;;
126898937Sdes	f30[01]-fujitsu | f700-fujitsu)
126998937Sdes		os=-uxpv
127098937Sdes		;;
127198937Sdes	*-rom68k)
127298937Sdes		os=-coff
127398937Sdes		;;
127498937Sdes	*-*bug)
127598937Sdes		os=-coff
127698937Sdes		;;
127798937Sdes	*-apple)
127898937Sdes		os=-macos
127998937Sdes		;;
128098937Sdes	*-atari*)
128198937Sdes		os=-mint
128298937Sdes		;;
128398937Sdes	*)
128498937Sdes		os=-none
128598937Sdes		;;
128698937Sdesesac
128798937Sdesfi
128898937Sdes
128998937Sdes# Here we handle the case where we know the os, and the CPU type, but not the
129098937Sdes# manufacturer.  We pick the logical manufacturer.
129198937Sdesvendor=unknown
129298937Sdescase $basic_machine in
129398937Sdes	*-unknown)
129498937Sdes		case $os in
129598937Sdes			-riscix*)
129698937Sdes				vendor=acorn
129798937Sdes				;;
129898937Sdes			-sunos*)
129998937Sdes				vendor=sun
130098937Sdes				;;
130198937Sdes			-aix*)
130298937Sdes				vendor=ibm
130398937Sdes				;;
130498937Sdes			-beos*)
130598937Sdes				vendor=be
130698937Sdes				;;
130798937Sdes			-hpux*)
130898937Sdes				vendor=hp
130998937Sdes				;;
131098937Sdes			-mpeix*)
131198937Sdes				vendor=hp
131298937Sdes				;;
131398937Sdes			-hiux*)
131498937Sdes				vendor=hitachi
131598937Sdes				;;
131698937Sdes			-unos*)
131798937Sdes				vendor=crds
131898937Sdes				;;
131998937Sdes			-dgux*)
132098937Sdes				vendor=dg
132198937Sdes				;;
132298937Sdes			-luna*)
132398937Sdes				vendor=omron
132498937Sdes				;;
132598937Sdes			-genix*)
132698937Sdes				vendor=ns
132798937Sdes				;;
132898937Sdes			-mvs* | -opened*)
132998937Sdes				vendor=ibm
133098937Sdes				;;
133198937Sdes			-ptx*)
133298937Sdes				vendor=sequent
133398937Sdes				;;
133498937Sdes			-vxsim* | -vxworks*)
133598937Sdes				vendor=wrs
133698937Sdes				;;
133798937Sdes			-aux*)
133898937Sdes				vendor=apple
133998937Sdes				;;
134098937Sdes			-hms*)
134198937Sdes				vendor=hitachi
134298937Sdes				;;
134398937Sdes			-mpw* | -macos*)
134498937Sdes				vendor=apple
134598937Sdes				;;
134698937Sdes			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
134798937Sdes				vendor=atari
134898937Sdes				;;
134998937Sdes		esac
135098937Sdes		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
135198937Sdes		;;
135298937Sdesesac
135398937Sdes
135498937Sdesecho $basic_machine$os
135598937Sdesexit 0
135698937Sdes
135798937Sdes# Local variables:
135898937Sdes# eval: (add-hook 'write-file-hooks 'time-stamp)
135998937Sdes# time-stamp-start: "timestamp='"
136098937Sdes# time-stamp-format: "%:y-%02m-%02d"
136198937Sdes# time-stamp-end: "'"
136298937Sdes# End:
1363