config.sub revision 86bbecbe
153354cdbSmrg#! /bin/sh 253354cdbSmrg# Configuration validation subroutine script. 353354cdbSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 486bbecbeSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 553354cdbSmrg# Free Software Foundation, Inc. 653354cdbSmrg 786bbecbeSmrgtimestamp='2010-09-11' 853354cdbSmrg 953354cdbSmrg# This file is (in principle) common to ALL GNU software. 1053354cdbSmrg# The presence of a machine in this file suggests that SOME GNU software 1153354cdbSmrg# can handle that machine. It does not imply ALL GNU software can. 1253354cdbSmrg# 1353354cdbSmrg# This file is free software; you can redistribute it and/or modify 1453354cdbSmrg# it under the terms of the GNU General Public License as published by 1553354cdbSmrg# the Free Software Foundation; either version 2 of the License, or 1653354cdbSmrg# (at your option) any later version. 1753354cdbSmrg# 1853354cdbSmrg# This program is distributed in the hope that it will be useful, 1953354cdbSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2053354cdbSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2153354cdbSmrg# GNU General Public License for more details. 2253354cdbSmrg# 2353354cdbSmrg# You should have received a copy of the GNU General Public License 2453354cdbSmrg# along with this program; if not, write to the Free Software 2553354cdbSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2653354cdbSmrg# 02110-1301, USA. 2753354cdbSmrg# 2853354cdbSmrg# As a special exception to the GNU General Public License, if you 2953354cdbSmrg# distribute this file as part of a program that contains a 3053354cdbSmrg# configuration script generated by Autoconf, you may include it under 3153354cdbSmrg# the same distribution terms that you use for the rest of that program. 3253354cdbSmrg 3353354cdbSmrg 3453354cdbSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 3586bbecbeSmrg# diff and a properly formatted GNU ChangeLog entry. 3653354cdbSmrg# 3753354cdbSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3853354cdbSmrg# Supply the specified configuration type as an argument. 3953354cdbSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 4053354cdbSmrg# Otherwise, we print the canonical config type on stdout and succeed. 4153354cdbSmrg 4286bbecbeSmrg# You can get the latest version of this script from: 4386bbecbeSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4486bbecbeSmrg 4553354cdbSmrg# This file is supposed to be the same for all GNU packages 4653354cdbSmrg# and recognize all the CPU types, system types and aliases 4753354cdbSmrg# that are meaningful with *any* GNU software. 4853354cdbSmrg# Each package is responsible for reporting which valid configurations 4953354cdbSmrg# it does not support. The user should be able to distinguish 5053354cdbSmrg# a failure to support a valid configuration from a meaningless 5153354cdbSmrg# configuration. 5253354cdbSmrg 5353354cdbSmrg# The goal of this file is to map all the various variations of a given 5453354cdbSmrg# machine specification into a single specification in the form: 5553354cdbSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5653354cdbSmrg# or in some cases, the newer four-part form: 5753354cdbSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5853354cdbSmrg# It is wrong to echo any other type of specification. 5953354cdbSmrg 6053354cdbSmrgme=`echo "$0" | sed -e 's,.*/,,'` 6153354cdbSmrg 6253354cdbSmrgusage="\ 6353354cdbSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6453354cdbSmrg $0 [OPTION] ALIAS 6553354cdbSmrg 6653354cdbSmrgCanonicalize a configuration name. 6753354cdbSmrg 6853354cdbSmrgOperation modes: 6953354cdbSmrg -h, --help print this help, then exit 7053354cdbSmrg -t, --time-stamp print date of last modification, then exit 7153354cdbSmrg -v, --version print version number, then exit 7253354cdbSmrg 7353354cdbSmrgReport bugs and patches to <config-patches@gnu.org>." 7453354cdbSmrg 7553354cdbSmrgversion="\ 7653354cdbSmrgGNU config.sub ($timestamp) 7753354cdbSmrg 7886bbecbeSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 7986bbecbeSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 8086bbecbeSmrgSoftware Foundation, Inc. 8153354cdbSmrg 8253354cdbSmrgThis is free software; see the source for copying conditions. There is NO 8353354cdbSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8453354cdbSmrg 8553354cdbSmrghelp=" 8653354cdbSmrgTry \`$me --help' for more information." 8753354cdbSmrg 8853354cdbSmrg# Parse command line 8953354cdbSmrgwhile test $# -gt 0 ; do 9053354cdbSmrg case $1 in 9153354cdbSmrg --time-stamp | --time* | -t ) 9253354cdbSmrg echo "$timestamp" ; exit ;; 9353354cdbSmrg --version | -v ) 9453354cdbSmrg echo "$version" ; exit ;; 9553354cdbSmrg --help | --h* | -h ) 9653354cdbSmrg echo "$usage"; exit ;; 9753354cdbSmrg -- ) # Stop option processing 9853354cdbSmrg shift; break ;; 9953354cdbSmrg - ) # Use stdin as input. 10053354cdbSmrg break ;; 10153354cdbSmrg -* ) 10253354cdbSmrg echo "$me: invalid option $1$help" 10353354cdbSmrg exit 1 ;; 10453354cdbSmrg 10553354cdbSmrg *local*) 10653354cdbSmrg # First pass through any local machine types. 10753354cdbSmrg echo $1 10853354cdbSmrg exit ;; 10953354cdbSmrg 11053354cdbSmrg * ) 11153354cdbSmrg break ;; 11253354cdbSmrg esac 11353354cdbSmrgdone 11453354cdbSmrg 11553354cdbSmrgcase $# in 11653354cdbSmrg 0) echo "$me: missing argument$help" >&2 11753354cdbSmrg exit 1;; 11853354cdbSmrg 1) ;; 11953354cdbSmrg *) echo "$me: too many arguments$help" >&2 12053354cdbSmrg exit 1;; 12153354cdbSmrgesac 12253354cdbSmrg 12353354cdbSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12453354cdbSmrg# Here we must recognize all the valid KERNEL-OS combinations. 12553354cdbSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12653354cdbSmrgcase $maybe_os in 12786bbecbeSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 12886bbecbeSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12986bbecbeSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 13086bbecbeSmrg kopensolaris*-gnu* | \ 13153354cdbSmrg storm-chaos* | os2-emx* | rtmk-nova*) 13253354cdbSmrg os=-$maybe_os 13353354cdbSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13453354cdbSmrg ;; 13553354cdbSmrg *) 13653354cdbSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13753354cdbSmrg if [ $basic_machine != $1 ] 13853354cdbSmrg then os=`echo $1 | sed 's/.*-/-/'` 13953354cdbSmrg else os=; fi 14053354cdbSmrg ;; 14153354cdbSmrgesac 14253354cdbSmrg 14353354cdbSmrg### Let's recognize common machines as not being operating systems so 14453354cdbSmrg### that things like config.sub decstation-3100 work. We also 14553354cdbSmrg### recognize some manufacturers as not being operating systems, so we 14653354cdbSmrg### can provide default operating systems below. 14753354cdbSmrgcase $os in 14853354cdbSmrg -sun*os*) 14953354cdbSmrg # Prevent following clause from handling this invalid input. 15053354cdbSmrg ;; 15153354cdbSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15253354cdbSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15353354cdbSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15453354cdbSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15553354cdbSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15653354cdbSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15786bbecbeSmrg -apple | -axis | -knuth | -cray | -microblaze) 15853354cdbSmrg os= 15953354cdbSmrg basic_machine=$1 16053354cdbSmrg ;; 16186bbecbeSmrg -bluegene*) 16286bbecbeSmrg os=-cnk 16386bbecbeSmrg ;; 16453354cdbSmrg -sim | -cisco | -oki | -wec | -winbond) 16553354cdbSmrg os= 16653354cdbSmrg basic_machine=$1 16753354cdbSmrg ;; 16853354cdbSmrg -scout) 16953354cdbSmrg ;; 17053354cdbSmrg -wrs) 17153354cdbSmrg os=-vxworks 17253354cdbSmrg basic_machine=$1 17353354cdbSmrg ;; 17453354cdbSmrg -chorusos*) 17553354cdbSmrg os=-chorusos 17653354cdbSmrg basic_machine=$1 17753354cdbSmrg ;; 17853354cdbSmrg -chorusrdb) 17953354cdbSmrg os=-chorusrdb 18053354cdbSmrg basic_machine=$1 18153354cdbSmrg ;; 18253354cdbSmrg -hiux*) 18353354cdbSmrg os=-hiuxwe2 18453354cdbSmrg ;; 18553354cdbSmrg -sco6) 18653354cdbSmrg os=-sco5v6 18753354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18853354cdbSmrg ;; 18953354cdbSmrg -sco5) 19053354cdbSmrg os=-sco3.2v5 19153354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19253354cdbSmrg ;; 19353354cdbSmrg -sco4) 19453354cdbSmrg os=-sco3.2v4 19553354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19653354cdbSmrg ;; 19753354cdbSmrg -sco3.2.[4-9]*) 19853354cdbSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19953354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20053354cdbSmrg ;; 20153354cdbSmrg -sco3.2v[4-9]*) 20253354cdbSmrg # Don't forget version if it is 3.2v4 or newer. 20353354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20453354cdbSmrg ;; 20553354cdbSmrg -sco5v6*) 20653354cdbSmrg # Don't forget version if it is 3.2v4 or newer. 20753354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20853354cdbSmrg ;; 20953354cdbSmrg -sco*) 21053354cdbSmrg os=-sco3.2v2 21153354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21253354cdbSmrg ;; 21353354cdbSmrg -udk*) 21453354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21553354cdbSmrg ;; 21653354cdbSmrg -isc) 21753354cdbSmrg os=-isc2.2 21853354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21953354cdbSmrg ;; 22053354cdbSmrg -clix*) 22153354cdbSmrg basic_machine=clipper-intergraph 22253354cdbSmrg ;; 22353354cdbSmrg -isc*) 22453354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22553354cdbSmrg ;; 22653354cdbSmrg -lynx*) 22753354cdbSmrg os=-lynxos 22853354cdbSmrg ;; 22953354cdbSmrg -ptx*) 23053354cdbSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23153354cdbSmrg ;; 23253354cdbSmrg -windowsnt*) 23353354cdbSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23453354cdbSmrg ;; 23553354cdbSmrg -psos*) 23653354cdbSmrg os=-psos 23753354cdbSmrg ;; 23853354cdbSmrg -mint | -mint[0-9]*) 23953354cdbSmrg basic_machine=m68k-atari 24053354cdbSmrg os=-mint 24153354cdbSmrg ;; 24253354cdbSmrgesac 24353354cdbSmrg 24453354cdbSmrg# Decode aliases for certain CPU-COMPANY combinations. 24553354cdbSmrgcase $basic_machine in 24653354cdbSmrg # Recognize the basic CPU types without company name. 24753354cdbSmrg # Some are omitted here because they have special meanings below. 24853354cdbSmrg 1750a | 580 \ 24953354cdbSmrg | a29k \ 25053354cdbSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25153354cdbSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25253354cdbSmrg | am33_2.0 \ 25353354cdbSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 25453354cdbSmrg | bfin \ 25553354cdbSmrg | c4x | clipper \ 25653354cdbSmrg | d10v | d30v | dlx | dsp16xx \ 25753354cdbSmrg | fido | fr30 | frv \ 25853354cdbSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 25953354cdbSmrg | i370 | i860 | i960 | ia64 \ 26053354cdbSmrg | ip2k | iq2000 \ 26186bbecbeSmrg | lm32 \ 26253354cdbSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 26386bbecbeSmrg | maxq | mb | microblaze | mcore | mep | metag \ 26453354cdbSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26553354cdbSmrg | mips16 \ 26653354cdbSmrg | mips64 | mips64el \ 26786bbecbeSmrg | mips64octeon | mips64octeonel \ 26853354cdbSmrg | mips64orion | mips64orionel \ 26986bbecbeSmrg | mips64r5900 | mips64r5900el \ 27086bbecbeSmrg | mips64vr | mips64vrel \ 27153354cdbSmrg | mips64vr4100 | mips64vr4100el \ 27253354cdbSmrg | mips64vr4300 | mips64vr4300el \ 27353354cdbSmrg | mips64vr5000 | mips64vr5000el \ 27453354cdbSmrg | mips64vr5900 | mips64vr5900el \ 27553354cdbSmrg | mipsisa32 | mipsisa32el \ 27653354cdbSmrg | mipsisa32r2 | mipsisa32r2el \ 27753354cdbSmrg | mipsisa64 | mipsisa64el \ 27853354cdbSmrg | mipsisa64r2 | mipsisa64r2el \ 27953354cdbSmrg | mipsisa64sb1 | mipsisa64sb1el \ 28053354cdbSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 28153354cdbSmrg | mipstx39 | mipstx39el \ 28253354cdbSmrg | mn10200 | mn10300 \ 28386bbecbeSmrg | moxie \ 28453354cdbSmrg | mt \ 28553354cdbSmrg | msp430 \ 28686bbecbeSmrg | nds32 | nds32le | nds32be \ 28753354cdbSmrg | nios | nios2 \ 28853354cdbSmrg | ns16k | ns32k \ 28953354cdbSmrg | or32 \ 29053354cdbSmrg | pdp10 | pdp11 | pj | pjl \ 29153354cdbSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 29253354cdbSmrg | pyramid \ 29386bbecbeSmrg | rx \ 29453354cdbSmrg | score \ 29586bbecbeSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 29653354cdbSmrg | sh64 | sh64le \ 29753354cdbSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 29853354cdbSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 29953354cdbSmrg | spu | strongarm \ 30086bbecbeSmrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 30186bbecbeSmrg | ubicom32 \ 30253354cdbSmrg | v850 | v850e \ 30353354cdbSmrg | we32k \ 30453354cdbSmrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 30586bbecbeSmrg | z8k | z80) 30653354cdbSmrg basic_machine=$basic_machine-unknown 30753354cdbSmrg ;; 30886bbecbeSmrg c54x) 30986bbecbeSmrg basic_machine=tic54x-unknown 31086bbecbeSmrg ;; 31186bbecbeSmrg c55x) 31286bbecbeSmrg basic_machine=tic55x-unknown 31386bbecbeSmrg ;; 31486bbecbeSmrg c6x) 31586bbecbeSmrg basic_machine=tic6x-unknown 31686bbecbeSmrg ;; 31786bbecbeSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 31853354cdbSmrg # Motorola 68HC11/12. 31953354cdbSmrg basic_machine=$basic_machine-unknown 32053354cdbSmrg os=-none 32153354cdbSmrg ;; 32253354cdbSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32353354cdbSmrg ;; 32453354cdbSmrg ms1) 32553354cdbSmrg basic_machine=mt-unknown 32653354cdbSmrg ;; 32753354cdbSmrg 32853354cdbSmrg # We use `pc' rather than `unknown' 32953354cdbSmrg # because (1) that's what they normally are, and 33053354cdbSmrg # (2) the word "unknown" tends to confuse beginning users. 33153354cdbSmrg i*86 | x86_64) 33253354cdbSmrg basic_machine=$basic_machine-pc 33353354cdbSmrg ;; 33453354cdbSmrg # Object if more than one company name word. 33553354cdbSmrg *-*-*) 33653354cdbSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 33753354cdbSmrg exit 1 33853354cdbSmrg ;; 33953354cdbSmrg # Recognize the basic CPU types with company name. 34053354cdbSmrg 580-* \ 34153354cdbSmrg | a29k-* \ 34253354cdbSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 34353354cdbSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 34453354cdbSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 34553354cdbSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 34653354cdbSmrg | avr-* | avr32-* \ 34753354cdbSmrg | bfin-* | bs2000-* \ 34886bbecbeSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 34953354cdbSmrg | clipper-* | craynv-* | cydra-* \ 35053354cdbSmrg | d10v-* | d30v-* | dlx-* \ 35153354cdbSmrg | elxsi-* \ 35253354cdbSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 35353354cdbSmrg | h8300-* | h8500-* \ 35453354cdbSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 35553354cdbSmrg | i*86-* | i860-* | i960-* | ia64-* \ 35653354cdbSmrg | ip2k-* | iq2000-* \ 35786bbecbeSmrg | lm32-* \ 35853354cdbSmrg | m32c-* | m32r-* | m32rle-* \ 35953354cdbSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 36086bbecbeSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 36153354cdbSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 36253354cdbSmrg | mips16-* \ 36353354cdbSmrg | mips64-* | mips64el-* \ 36486bbecbeSmrg | mips64octeon-* | mips64octeonel-* \ 36553354cdbSmrg | mips64orion-* | mips64orionel-* \ 36686bbecbeSmrg | mips64r5900-* | mips64r5900el-* \ 36786bbecbeSmrg | mips64vr-* | mips64vrel-* \ 36853354cdbSmrg | mips64vr4100-* | mips64vr4100el-* \ 36953354cdbSmrg | mips64vr4300-* | mips64vr4300el-* \ 37053354cdbSmrg | mips64vr5000-* | mips64vr5000el-* \ 37153354cdbSmrg | mips64vr5900-* | mips64vr5900el-* \ 37253354cdbSmrg | mipsisa32-* | mipsisa32el-* \ 37353354cdbSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 37453354cdbSmrg | mipsisa64-* | mipsisa64el-* \ 37553354cdbSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 37653354cdbSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 37753354cdbSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 37853354cdbSmrg | mipstx39-* | mipstx39el-* \ 37953354cdbSmrg | mmix-* \ 38053354cdbSmrg | mt-* \ 38153354cdbSmrg | msp430-* \ 38286bbecbeSmrg | nds32-* | nds32le-* | nds32be-* \ 38353354cdbSmrg | nios-* | nios2-* \ 38453354cdbSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 38553354cdbSmrg | orion-* \ 38653354cdbSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 38753354cdbSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 38853354cdbSmrg | pyramid-* \ 38986bbecbeSmrg | romp-* | rs6000-* | rx-* \ 39086bbecbeSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 39153354cdbSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 39253354cdbSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 39353354cdbSmrg | sparclite-* \ 39453354cdbSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 39553354cdbSmrg | tahoe-* | thumb-* \ 39653354cdbSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 39786bbecbeSmrg | tile-* | tilegx-* \ 39853354cdbSmrg | tron-* \ 39986bbecbeSmrg | ubicom32-* \ 40053354cdbSmrg | v850-* | v850e-* | vax-* \ 40153354cdbSmrg | we32k-* \ 40253354cdbSmrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 40353354cdbSmrg | xstormy16-* | xtensa*-* \ 40453354cdbSmrg | ymp-* \ 40586bbecbeSmrg | z8k-* | z80-*) 40653354cdbSmrg ;; 40753354cdbSmrg # Recognize the basic CPU types without company name, with glob match. 40853354cdbSmrg xtensa*) 40953354cdbSmrg basic_machine=$basic_machine-unknown 41053354cdbSmrg ;; 41153354cdbSmrg # Recognize the various machine names and aliases which stand 41253354cdbSmrg # for a CPU type and a company and sometimes even an OS. 41353354cdbSmrg 386bsd) 41453354cdbSmrg basic_machine=i386-unknown 41553354cdbSmrg os=-bsd 41653354cdbSmrg ;; 41753354cdbSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 41853354cdbSmrg basic_machine=m68000-att 41953354cdbSmrg ;; 42053354cdbSmrg 3b*) 42153354cdbSmrg basic_machine=we32k-att 42253354cdbSmrg ;; 42353354cdbSmrg a29khif) 42453354cdbSmrg basic_machine=a29k-amd 42553354cdbSmrg os=-udi 42653354cdbSmrg ;; 42753354cdbSmrg abacus) 42853354cdbSmrg basic_machine=abacus-unknown 42953354cdbSmrg ;; 43053354cdbSmrg adobe68k) 43153354cdbSmrg basic_machine=m68010-adobe 43253354cdbSmrg os=-scout 43353354cdbSmrg ;; 43453354cdbSmrg alliant | fx80) 43553354cdbSmrg basic_machine=fx80-alliant 43653354cdbSmrg ;; 43753354cdbSmrg altos | altos3068) 43853354cdbSmrg basic_machine=m68k-altos 43953354cdbSmrg ;; 44053354cdbSmrg am29k) 44153354cdbSmrg basic_machine=a29k-none 44253354cdbSmrg os=-bsd 44353354cdbSmrg ;; 44453354cdbSmrg amd64) 44553354cdbSmrg basic_machine=x86_64-pc 44653354cdbSmrg ;; 44753354cdbSmrg amd64-*) 44853354cdbSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 44953354cdbSmrg ;; 45053354cdbSmrg amdahl) 45153354cdbSmrg basic_machine=580-amdahl 45253354cdbSmrg os=-sysv 45353354cdbSmrg ;; 45453354cdbSmrg amiga | amiga-*) 45553354cdbSmrg basic_machine=m68k-unknown 45653354cdbSmrg ;; 45753354cdbSmrg amigaos | amigados) 45853354cdbSmrg basic_machine=m68k-unknown 45953354cdbSmrg os=-amigaos 46053354cdbSmrg ;; 46153354cdbSmrg amigaunix | amix) 46253354cdbSmrg basic_machine=m68k-unknown 46353354cdbSmrg os=-sysv4 46453354cdbSmrg ;; 46553354cdbSmrg apollo68) 46653354cdbSmrg basic_machine=m68k-apollo 46753354cdbSmrg os=-sysv 46853354cdbSmrg ;; 46953354cdbSmrg apollo68bsd) 47053354cdbSmrg basic_machine=m68k-apollo 47153354cdbSmrg os=-bsd 47253354cdbSmrg ;; 47386bbecbeSmrg aros) 47486bbecbeSmrg basic_machine=i386-pc 47586bbecbeSmrg os=-aros 47686bbecbeSmrg ;; 47753354cdbSmrg aux) 47853354cdbSmrg basic_machine=m68k-apple 47953354cdbSmrg os=-aux 48053354cdbSmrg ;; 48153354cdbSmrg balance) 48253354cdbSmrg basic_machine=ns32k-sequent 48353354cdbSmrg os=-dynix 48453354cdbSmrg ;; 48553354cdbSmrg blackfin) 48653354cdbSmrg basic_machine=bfin-unknown 48753354cdbSmrg os=-linux 48853354cdbSmrg ;; 48953354cdbSmrg blackfin-*) 49053354cdbSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 49153354cdbSmrg os=-linux 49253354cdbSmrg ;; 49386bbecbeSmrg bluegene*) 49486bbecbeSmrg basic_machine=powerpc-ibm 49586bbecbeSmrg os=-cnk 49686bbecbeSmrg ;; 49786bbecbeSmrg c54x-*) 49886bbecbeSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 49986bbecbeSmrg ;; 50086bbecbeSmrg c55x-*) 50186bbecbeSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 50286bbecbeSmrg ;; 50386bbecbeSmrg c6x-*) 50486bbecbeSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 50586bbecbeSmrg ;; 50653354cdbSmrg c90) 50753354cdbSmrg basic_machine=c90-cray 50853354cdbSmrg os=-unicos 50953354cdbSmrg ;; 51086bbecbeSmrg cegcc) 51186bbecbeSmrg basic_machine=arm-unknown 51286bbecbeSmrg os=-cegcc 51386bbecbeSmrg ;; 51453354cdbSmrg convex-c1) 51553354cdbSmrg basic_machine=c1-convex 51653354cdbSmrg os=-bsd 51753354cdbSmrg ;; 51853354cdbSmrg convex-c2) 51953354cdbSmrg basic_machine=c2-convex 52053354cdbSmrg os=-bsd 52153354cdbSmrg ;; 52253354cdbSmrg convex-c32) 52353354cdbSmrg basic_machine=c32-convex 52453354cdbSmrg os=-bsd 52553354cdbSmrg ;; 52653354cdbSmrg convex-c34) 52753354cdbSmrg basic_machine=c34-convex 52853354cdbSmrg os=-bsd 52953354cdbSmrg ;; 53053354cdbSmrg convex-c38) 53153354cdbSmrg basic_machine=c38-convex 53253354cdbSmrg os=-bsd 53353354cdbSmrg ;; 53453354cdbSmrg cray | j90) 53553354cdbSmrg basic_machine=j90-cray 53653354cdbSmrg os=-unicos 53753354cdbSmrg ;; 53853354cdbSmrg craynv) 53953354cdbSmrg basic_machine=craynv-cray 54053354cdbSmrg os=-unicosmp 54153354cdbSmrg ;; 54253354cdbSmrg cr16) 54353354cdbSmrg basic_machine=cr16-unknown 54453354cdbSmrg os=-elf 54553354cdbSmrg ;; 54653354cdbSmrg crds | unos) 54753354cdbSmrg basic_machine=m68k-crds 54853354cdbSmrg ;; 54953354cdbSmrg crisv32 | crisv32-* | etraxfs*) 55053354cdbSmrg basic_machine=crisv32-axis 55153354cdbSmrg ;; 55253354cdbSmrg cris | cris-* | etrax*) 55353354cdbSmrg basic_machine=cris-axis 55453354cdbSmrg ;; 55553354cdbSmrg crx) 55653354cdbSmrg basic_machine=crx-unknown 55753354cdbSmrg os=-elf 55853354cdbSmrg ;; 55953354cdbSmrg da30 | da30-*) 56053354cdbSmrg basic_machine=m68k-da30 56153354cdbSmrg ;; 56253354cdbSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 56353354cdbSmrg basic_machine=mips-dec 56453354cdbSmrg ;; 56553354cdbSmrg decsystem10* | dec10*) 56653354cdbSmrg basic_machine=pdp10-dec 56753354cdbSmrg os=-tops10 56853354cdbSmrg ;; 56953354cdbSmrg decsystem20* | dec20*) 57053354cdbSmrg basic_machine=pdp10-dec 57153354cdbSmrg os=-tops20 57253354cdbSmrg ;; 57353354cdbSmrg delta | 3300 | motorola-3300 | motorola-delta \ 57453354cdbSmrg | 3300-motorola | delta-motorola) 57553354cdbSmrg basic_machine=m68k-motorola 57653354cdbSmrg ;; 57753354cdbSmrg delta88) 57853354cdbSmrg basic_machine=m88k-motorola 57953354cdbSmrg os=-sysv3 58053354cdbSmrg ;; 58186bbecbeSmrg dicos) 58286bbecbeSmrg basic_machine=i686-pc 58386bbecbeSmrg os=-dicos 58486bbecbeSmrg ;; 58553354cdbSmrg djgpp) 58653354cdbSmrg basic_machine=i586-pc 58753354cdbSmrg os=-msdosdjgpp 58853354cdbSmrg ;; 58953354cdbSmrg dpx20 | dpx20-*) 59053354cdbSmrg basic_machine=rs6000-bull 59153354cdbSmrg os=-bosx 59253354cdbSmrg ;; 59353354cdbSmrg dpx2* | dpx2*-bull) 59453354cdbSmrg basic_machine=m68k-bull 59553354cdbSmrg os=-sysv3 59653354cdbSmrg ;; 59753354cdbSmrg ebmon29k) 59853354cdbSmrg basic_machine=a29k-amd 59953354cdbSmrg os=-ebmon 60053354cdbSmrg ;; 60153354cdbSmrg elxsi) 60253354cdbSmrg basic_machine=elxsi-elxsi 60353354cdbSmrg os=-bsd 60453354cdbSmrg ;; 60553354cdbSmrg encore | umax | mmax) 60653354cdbSmrg basic_machine=ns32k-encore 60753354cdbSmrg ;; 60853354cdbSmrg es1800 | OSE68k | ose68k | ose | OSE) 60953354cdbSmrg basic_machine=m68k-ericsson 61053354cdbSmrg os=-ose 61153354cdbSmrg ;; 61253354cdbSmrg fx2800) 61353354cdbSmrg basic_machine=i860-alliant 61453354cdbSmrg ;; 61553354cdbSmrg genix) 61653354cdbSmrg basic_machine=ns32k-ns 61753354cdbSmrg ;; 61853354cdbSmrg gmicro) 61953354cdbSmrg basic_machine=tron-gmicro 62053354cdbSmrg os=-sysv 62153354cdbSmrg ;; 62253354cdbSmrg go32) 62353354cdbSmrg basic_machine=i386-pc 62453354cdbSmrg os=-go32 62553354cdbSmrg ;; 62653354cdbSmrg h3050r* | hiux*) 62753354cdbSmrg basic_machine=hppa1.1-hitachi 62853354cdbSmrg os=-hiuxwe2 62953354cdbSmrg ;; 63053354cdbSmrg h8300hms) 63153354cdbSmrg basic_machine=h8300-hitachi 63253354cdbSmrg os=-hms 63353354cdbSmrg ;; 63453354cdbSmrg h8300xray) 63553354cdbSmrg basic_machine=h8300-hitachi 63653354cdbSmrg os=-xray 63753354cdbSmrg ;; 63853354cdbSmrg h8500hms) 63953354cdbSmrg basic_machine=h8500-hitachi 64053354cdbSmrg os=-hms 64153354cdbSmrg ;; 64253354cdbSmrg harris) 64353354cdbSmrg basic_machine=m88k-harris 64453354cdbSmrg os=-sysv3 64553354cdbSmrg ;; 64653354cdbSmrg hp300-*) 64753354cdbSmrg basic_machine=m68k-hp 64853354cdbSmrg ;; 64953354cdbSmrg hp300bsd) 65053354cdbSmrg basic_machine=m68k-hp 65153354cdbSmrg os=-bsd 65253354cdbSmrg ;; 65353354cdbSmrg hp300hpux) 65453354cdbSmrg basic_machine=m68k-hp 65553354cdbSmrg os=-hpux 65653354cdbSmrg ;; 65753354cdbSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 65853354cdbSmrg basic_machine=hppa1.0-hp 65953354cdbSmrg ;; 66053354cdbSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 66153354cdbSmrg basic_machine=m68000-hp 66253354cdbSmrg ;; 66353354cdbSmrg hp9k3[2-9][0-9]) 66453354cdbSmrg basic_machine=m68k-hp 66553354cdbSmrg ;; 66653354cdbSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 66753354cdbSmrg basic_machine=hppa1.0-hp 66853354cdbSmrg ;; 66953354cdbSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 67053354cdbSmrg basic_machine=hppa1.1-hp 67153354cdbSmrg ;; 67253354cdbSmrg hp9k78[0-9] | hp78[0-9]) 67353354cdbSmrg # FIXME: really hppa2.0-hp 67453354cdbSmrg basic_machine=hppa1.1-hp 67553354cdbSmrg ;; 67653354cdbSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 67753354cdbSmrg # FIXME: really hppa2.0-hp 67853354cdbSmrg basic_machine=hppa1.1-hp 67953354cdbSmrg ;; 68053354cdbSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 68153354cdbSmrg basic_machine=hppa1.1-hp 68253354cdbSmrg ;; 68353354cdbSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 68453354cdbSmrg basic_machine=hppa1.0-hp 68553354cdbSmrg ;; 68653354cdbSmrg hppa-next) 68753354cdbSmrg os=-nextstep3 68853354cdbSmrg ;; 68953354cdbSmrg hppaosf) 69053354cdbSmrg basic_machine=hppa1.1-hp 69153354cdbSmrg os=-osf 69253354cdbSmrg ;; 69353354cdbSmrg hppro) 69453354cdbSmrg basic_machine=hppa1.1-hp 69553354cdbSmrg os=-proelf 69653354cdbSmrg ;; 69753354cdbSmrg i370-ibm* | ibm*) 69853354cdbSmrg basic_machine=i370-ibm 69953354cdbSmrg ;; 70053354cdbSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 70153354cdbSmrg i*86v32) 70253354cdbSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 70353354cdbSmrg os=-sysv32 70453354cdbSmrg ;; 70553354cdbSmrg i*86v4*) 70653354cdbSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 70753354cdbSmrg os=-sysv4 70853354cdbSmrg ;; 70953354cdbSmrg i*86v) 71053354cdbSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 71153354cdbSmrg os=-sysv 71253354cdbSmrg ;; 71353354cdbSmrg i*86sol2) 71453354cdbSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 71553354cdbSmrg os=-solaris2 71653354cdbSmrg ;; 71753354cdbSmrg i386mach) 71853354cdbSmrg basic_machine=i386-mach 71953354cdbSmrg os=-mach 72053354cdbSmrg ;; 72153354cdbSmrg i386-vsta | vsta) 72253354cdbSmrg basic_machine=i386-unknown 72353354cdbSmrg os=-vsta 72453354cdbSmrg ;; 72553354cdbSmrg iris | iris4d) 72653354cdbSmrg basic_machine=mips-sgi 72753354cdbSmrg case $os in 72853354cdbSmrg -irix*) 72953354cdbSmrg ;; 73053354cdbSmrg *) 73153354cdbSmrg os=-irix4 73253354cdbSmrg ;; 73353354cdbSmrg esac 73453354cdbSmrg ;; 73553354cdbSmrg isi68 | isi) 73653354cdbSmrg basic_machine=m68k-isi 73753354cdbSmrg os=-sysv 73853354cdbSmrg ;; 73953354cdbSmrg m68knommu) 74053354cdbSmrg basic_machine=m68k-unknown 74153354cdbSmrg os=-linux 74253354cdbSmrg ;; 74353354cdbSmrg m68knommu-*) 74453354cdbSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 74553354cdbSmrg os=-linux 74653354cdbSmrg ;; 74753354cdbSmrg m88k-omron*) 74853354cdbSmrg basic_machine=m88k-omron 74953354cdbSmrg ;; 75053354cdbSmrg magnum | m3230) 75153354cdbSmrg basic_machine=mips-mips 75253354cdbSmrg os=-sysv 75353354cdbSmrg ;; 75453354cdbSmrg merlin) 75553354cdbSmrg basic_machine=ns32k-utek 75653354cdbSmrg os=-sysv 75753354cdbSmrg ;; 75886bbecbeSmrg microblaze) 75986bbecbeSmrg basic_machine=microblaze-xilinx 76086bbecbeSmrg ;; 76153354cdbSmrg mingw32) 76253354cdbSmrg basic_machine=i386-pc 76353354cdbSmrg os=-mingw32 76453354cdbSmrg ;; 76553354cdbSmrg mingw32ce) 76653354cdbSmrg basic_machine=arm-unknown 76753354cdbSmrg os=-mingw32ce 76853354cdbSmrg ;; 76953354cdbSmrg miniframe) 77053354cdbSmrg basic_machine=m68000-convergent 77153354cdbSmrg ;; 77253354cdbSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 77353354cdbSmrg basic_machine=m68k-atari 77453354cdbSmrg os=-mint 77553354cdbSmrg ;; 77653354cdbSmrg mips3*-*) 77753354cdbSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 77853354cdbSmrg ;; 77953354cdbSmrg mips3*) 78053354cdbSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 78153354cdbSmrg ;; 78253354cdbSmrg monitor) 78353354cdbSmrg basic_machine=m68k-rom68k 78453354cdbSmrg os=-coff 78553354cdbSmrg ;; 78653354cdbSmrg morphos) 78753354cdbSmrg basic_machine=powerpc-unknown 78853354cdbSmrg os=-morphos 78953354cdbSmrg ;; 79053354cdbSmrg msdos) 79153354cdbSmrg basic_machine=i386-pc 79253354cdbSmrg os=-msdos 79353354cdbSmrg ;; 79453354cdbSmrg ms1-*) 79553354cdbSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 79653354cdbSmrg ;; 79753354cdbSmrg mvs) 79853354cdbSmrg basic_machine=i370-ibm 79953354cdbSmrg os=-mvs 80053354cdbSmrg ;; 80153354cdbSmrg ncr3000) 80253354cdbSmrg basic_machine=i486-ncr 80353354cdbSmrg os=-sysv4 80453354cdbSmrg ;; 80553354cdbSmrg netbsd386) 80653354cdbSmrg basic_machine=i386-unknown 80753354cdbSmrg os=-netbsd 80853354cdbSmrg ;; 80953354cdbSmrg netwinder) 81053354cdbSmrg basic_machine=armv4l-rebel 81153354cdbSmrg os=-linux 81253354cdbSmrg ;; 81353354cdbSmrg news | news700 | news800 | news900) 81453354cdbSmrg basic_machine=m68k-sony 81553354cdbSmrg os=-newsos 81653354cdbSmrg ;; 81753354cdbSmrg news1000) 81853354cdbSmrg basic_machine=m68030-sony 81953354cdbSmrg os=-newsos 82053354cdbSmrg ;; 82153354cdbSmrg news-3600 | risc-news) 82253354cdbSmrg basic_machine=mips-sony 82353354cdbSmrg os=-newsos 82453354cdbSmrg ;; 82553354cdbSmrg necv70) 82653354cdbSmrg basic_machine=v70-nec 82753354cdbSmrg os=-sysv 82853354cdbSmrg ;; 82953354cdbSmrg next | m*-next ) 83053354cdbSmrg basic_machine=m68k-next 83153354cdbSmrg case $os in 83253354cdbSmrg -nextstep* ) 83353354cdbSmrg ;; 83453354cdbSmrg -ns2*) 83553354cdbSmrg os=-nextstep2 83653354cdbSmrg ;; 83753354cdbSmrg *) 83853354cdbSmrg os=-nextstep3 83953354cdbSmrg ;; 84053354cdbSmrg esac 84153354cdbSmrg ;; 84253354cdbSmrg nh3000) 84353354cdbSmrg basic_machine=m68k-harris 84453354cdbSmrg os=-cxux 84553354cdbSmrg ;; 84653354cdbSmrg nh[45]000) 84753354cdbSmrg basic_machine=m88k-harris 84853354cdbSmrg os=-cxux 84953354cdbSmrg ;; 85053354cdbSmrg nindy960) 85153354cdbSmrg basic_machine=i960-intel 85253354cdbSmrg os=-nindy 85353354cdbSmrg ;; 85453354cdbSmrg mon960) 85553354cdbSmrg basic_machine=i960-intel 85653354cdbSmrg os=-mon960 85753354cdbSmrg ;; 85853354cdbSmrg nonstopux) 85953354cdbSmrg basic_machine=mips-compaq 86053354cdbSmrg os=-nonstopux 86153354cdbSmrg ;; 86253354cdbSmrg np1) 86353354cdbSmrg basic_machine=np1-gould 86453354cdbSmrg ;; 86586bbecbeSmrg neo-tandem) 86686bbecbeSmrg basic_machine=neo-tandem 86786bbecbeSmrg ;; 86886bbecbeSmrg nse-tandem) 86986bbecbeSmrg basic_machine=nse-tandem 87086bbecbeSmrg ;; 87153354cdbSmrg nsr-tandem) 87253354cdbSmrg basic_machine=nsr-tandem 87353354cdbSmrg ;; 87453354cdbSmrg op50n-* | op60c-*) 87553354cdbSmrg basic_machine=hppa1.1-oki 87653354cdbSmrg os=-proelf 87753354cdbSmrg ;; 87853354cdbSmrg openrisc | openrisc-*) 87953354cdbSmrg basic_machine=or32-unknown 88053354cdbSmrg ;; 88153354cdbSmrg os400) 88253354cdbSmrg basic_machine=powerpc-ibm 88353354cdbSmrg os=-os400 88453354cdbSmrg ;; 88553354cdbSmrg OSE68000 | ose68000) 88653354cdbSmrg basic_machine=m68000-ericsson 88753354cdbSmrg os=-ose 88853354cdbSmrg ;; 88953354cdbSmrg os68k) 89053354cdbSmrg basic_machine=m68k-none 89153354cdbSmrg os=-os68k 89253354cdbSmrg ;; 89353354cdbSmrg pa-hitachi) 89453354cdbSmrg basic_machine=hppa1.1-hitachi 89553354cdbSmrg os=-hiuxwe2 89653354cdbSmrg ;; 89753354cdbSmrg paragon) 89853354cdbSmrg basic_machine=i860-intel 89953354cdbSmrg os=-osf 90053354cdbSmrg ;; 90153354cdbSmrg parisc) 90253354cdbSmrg basic_machine=hppa-unknown 90353354cdbSmrg os=-linux 90453354cdbSmrg ;; 90553354cdbSmrg parisc-*) 90653354cdbSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 90753354cdbSmrg os=-linux 90853354cdbSmrg ;; 90953354cdbSmrg pbd) 91053354cdbSmrg basic_machine=sparc-tti 91153354cdbSmrg ;; 91253354cdbSmrg pbb) 91353354cdbSmrg basic_machine=m68k-tti 91453354cdbSmrg ;; 91553354cdbSmrg pc532 | pc532-*) 91653354cdbSmrg basic_machine=ns32k-pc532 91753354cdbSmrg ;; 91853354cdbSmrg pc98) 91953354cdbSmrg basic_machine=i386-pc 92053354cdbSmrg ;; 92153354cdbSmrg pc98-*) 92253354cdbSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 92353354cdbSmrg ;; 92453354cdbSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 92553354cdbSmrg basic_machine=i586-pc 92653354cdbSmrg ;; 92753354cdbSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 92853354cdbSmrg basic_machine=i686-pc 92953354cdbSmrg ;; 93053354cdbSmrg pentiumii | pentium2 | pentiumiii | pentium3) 93153354cdbSmrg basic_machine=i686-pc 93253354cdbSmrg ;; 93353354cdbSmrg pentium4) 93453354cdbSmrg basic_machine=i786-pc 93553354cdbSmrg ;; 93653354cdbSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 93753354cdbSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 93853354cdbSmrg ;; 93953354cdbSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 94053354cdbSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 94153354cdbSmrg ;; 94253354cdbSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 94353354cdbSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 94453354cdbSmrg ;; 94553354cdbSmrg pentium4-*) 94653354cdbSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 94753354cdbSmrg ;; 94853354cdbSmrg pn) 94953354cdbSmrg basic_machine=pn-gould 95053354cdbSmrg ;; 95153354cdbSmrg power) basic_machine=power-ibm 95253354cdbSmrg ;; 95353354cdbSmrg ppc) basic_machine=powerpc-unknown 95453354cdbSmrg ;; 95553354cdbSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 95653354cdbSmrg ;; 95753354cdbSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 95853354cdbSmrg basic_machine=powerpcle-unknown 95953354cdbSmrg ;; 96053354cdbSmrg ppcle-* | powerpclittle-*) 96153354cdbSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 96253354cdbSmrg ;; 96353354cdbSmrg ppc64) basic_machine=powerpc64-unknown 96453354cdbSmrg ;; 96553354cdbSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 96653354cdbSmrg ;; 96753354cdbSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 96853354cdbSmrg basic_machine=powerpc64le-unknown 96953354cdbSmrg ;; 97053354cdbSmrg ppc64le-* | powerpc64little-*) 97153354cdbSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 97253354cdbSmrg ;; 97353354cdbSmrg ps2) 97453354cdbSmrg basic_machine=i386-ibm 97553354cdbSmrg ;; 97653354cdbSmrg pw32) 97753354cdbSmrg basic_machine=i586-unknown 97853354cdbSmrg os=-pw32 97953354cdbSmrg ;; 98053354cdbSmrg rdos) 98153354cdbSmrg basic_machine=i386-pc 98253354cdbSmrg os=-rdos 98353354cdbSmrg ;; 98453354cdbSmrg rom68k) 98553354cdbSmrg basic_machine=m68k-rom68k 98653354cdbSmrg os=-coff 98753354cdbSmrg ;; 98853354cdbSmrg rm[46]00) 98953354cdbSmrg basic_machine=mips-siemens 99053354cdbSmrg ;; 99153354cdbSmrg rtpc | rtpc-*) 99253354cdbSmrg basic_machine=romp-ibm 99353354cdbSmrg ;; 99453354cdbSmrg s390 | s390-*) 99553354cdbSmrg basic_machine=s390-ibm 99653354cdbSmrg ;; 99753354cdbSmrg s390x | s390x-*) 99853354cdbSmrg basic_machine=s390x-ibm 99953354cdbSmrg ;; 100053354cdbSmrg sa29200) 100153354cdbSmrg basic_machine=a29k-amd 100253354cdbSmrg os=-udi 100353354cdbSmrg ;; 100453354cdbSmrg sb1) 100553354cdbSmrg basic_machine=mipsisa64sb1-unknown 100653354cdbSmrg ;; 100753354cdbSmrg sb1el) 100853354cdbSmrg basic_machine=mipsisa64sb1el-unknown 100953354cdbSmrg ;; 101053354cdbSmrg sde) 101153354cdbSmrg basic_machine=mipsisa32-sde 101253354cdbSmrg os=-elf 101353354cdbSmrg ;; 101453354cdbSmrg sei) 101553354cdbSmrg basic_machine=mips-sei 101653354cdbSmrg os=-seiux 101753354cdbSmrg ;; 101853354cdbSmrg sequent) 101953354cdbSmrg basic_machine=i386-sequent 102053354cdbSmrg ;; 102153354cdbSmrg sh) 102253354cdbSmrg basic_machine=sh-hitachi 102353354cdbSmrg os=-hms 102453354cdbSmrg ;; 102553354cdbSmrg sh5el) 102653354cdbSmrg basic_machine=sh5le-unknown 102753354cdbSmrg ;; 102853354cdbSmrg sh64) 102953354cdbSmrg basic_machine=sh64-unknown 103053354cdbSmrg ;; 103153354cdbSmrg sparclite-wrs | simso-wrs) 103253354cdbSmrg basic_machine=sparclite-wrs 103353354cdbSmrg os=-vxworks 103453354cdbSmrg ;; 103553354cdbSmrg sps7) 103653354cdbSmrg basic_machine=m68k-bull 103753354cdbSmrg os=-sysv2 103853354cdbSmrg ;; 103953354cdbSmrg spur) 104053354cdbSmrg basic_machine=spur-unknown 104153354cdbSmrg ;; 104253354cdbSmrg st2000) 104353354cdbSmrg basic_machine=m68k-tandem 104453354cdbSmrg ;; 104553354cdbSmrg stratus) 104653354cdbSmrg basic_machine=i860-stratus 104753354cdbSmrg os=-sysv4 104853354cdbSmrg ;; 104953354cdbSmrg sun2) 105053354cdbSmrg basic_machine=m68000-sun 105153354cdbSmrg ;; 105253354cdbSmrg sun2os3) 105353354cdbSmrg basic_machine=m68000-sun 105453354cdbSmrg os=-sunos3 105553354cdbSmrg ;; 105653354cdbSmrg sun2os4) 105753354cdbSmrg basic_machine=m68000-sun 105853354cdbSmrg os=-sunos4 105953354cdbSmrg ;; 106053354cdbSmrg sun3os3) 106153354cdbSmrg basic_machine=m68k-sun 106253354cdbSmrg os=-sunos3 106353354cdbSmrg ;; 106453354cdbSmrg sun3os4) 106553354cdbSmrg basic_machine=m68k-sun 106653354cdbSmrg os=-sunos4 106753354cdbSmrg ;; 106853354cdbSmrg sun4os3) 106953354cdbSmrg basic_machine=sparc-sun 107053354cdbSmrg os=-sunos3 107153354cdbSmrg ;; 107253354cdbSmrg sun4os4) 107353354cdbSmrg basic_machine=sparc-sun 107453354cdbSmrg os=-sunos4 107553354cdbSmrg ;; 107653354cdbSmrg sun4sol2) 107753354cdbSmrg basic_machine=sparc-sun 107853354cdbSmrg os=-solaris2 107953354cdbSmrg ;; 108053354cdbSmrg sun3 | sun3-*) 108153354cdbSmrg basic_machine=m68k-sun 108253354cdbSmrg ;; 108353354cdbSmrg sun4) 108453354cdbSmrg basic_machine=sparc-sun 108553354cdbSmrg ;; 108653354cdbSmrg sun386 | sun386i | roadrunner) 108753354cdbSmrg basic_machine=i386-sun 108853354cdbSmrg ;; 108953354cdbSmrg sv1) 109053354cdbSmrg basic_machine=sv1-cray 109153354cdbSmrg os=-unicos 109253354cdbSmrg ;; 109353354cdbSmrg symmetry) 109453354cdbSmrg basic_machine=i386-sequent 109553354cdbSmrg os=-dynix 109653354cdbSmrg ;; 109753354cdbSmrg t3e) 109853354cdbSmrg basic_machine=alphaev5-cray 109953354cdbSmrg os=-unicos 110053354cdbSmrg ;; 110153354cdbSmrg t90) 110253354cdbSmrg basic_machine=t90-cray 110353354cdbSmrg os=-unicos 110453354cdbSmrg ;; 110586bbecbeSmrg # This must be matched before tile*. 110686bbecbeSmrg tilegx*) 110786bbecbeSmrg basic_machine=tilegx-unknown 110886bbecbeSmrg os=-linux-gnu 110953354cdbSmrg ;; 111086bbecbeSmrg tile*) 111186bbecbeSmrg basic_machine=tile-unknown 111286bbecbeSmrg os=-linux-gnu 111353354cdbSmrg ;; 111453354cdbSmrg tx39) 111553354cdbSmrg basic_machine=mipstx39-unknown 111653354cdbSmrg ;; 111753354cdbSmrg tx39el) 111853354cdbSmrg basic_machine=mipstx39el-unknown 111953354cdbSmrg ;; 112053354cdbSmrg toad1) 112153354cdbSmrg basic_machine=pdp10-xkl 112253354cdbSmrg os=-tops20 112353354cdbSmrg ;; 112453354cdbSmrg tower | tower-32) 112553354cdbSmrg basic_machine=m68k-ncr 112653354cdbSmrg ;; 112753354cdbSmrg tpf) 112853354cdbSmrg basic_machine=s390x-ibm 112953354cdbSmrg os=-tpf 113053354cdbSmrg ;; 113153354cdbSmrg udi29k) 113253354cdbSmrg basic_machine=a29k-amd 113353354cdbSmrg os=-udi 113453354cdbSmrg ;; 113553354cdbSmrg ultra3) 113653354cdbSmrg basic_machine=a29k-nyu 113753354cdbSmrg os=-sym1 113853354cdbSmrg ;; 113953354cdbSmrg v810 | necv810) 114053354cdbSmrg basic_machine=v810-nec 114153354cdbSmrg os=-none 114253354cdbSmrg ;; 114353354cdbSmrg vaxv) 114453354cdbSmrg basic_machine=vax-dec 114553354cdbSmrg os=-sysv 114653354cdbSmrg ;; 114753354cdbSmrg vms) 114853354cdbSmrg basic_machine=vax-dec 114953354cdbSmrg os=-vms 115053354cdbSmrg ;; 115153354cdbSmrg vpp*|vx|vx-*) 115253354cdbSmrg basic_machine=f301-fujitsu 115353354cdbSmrg ;; 115453354cdbSmrg vxworks960) 115553354cdbSmrg basic_machine=i960-wrs 115653354cdbSmrg os=-vxworks 115753354cdbSmrg ;; 115853354cdbSmrg vxworks68) 115953354cdbSmrg basic_machine=m68k-wrs 116053354cdbSmrg os=-vxworks 116153354cdbSmrg ;; 116253354cdbSmrg vxworks29k) 116353354cdbSmrg basic_machine=a29k-wrs 116453354cdbSmrg os=-vxworks 116553354cdbSmrg ;; 116653354cdbSmrg w65*) 116753354cdbSmrg basic_machine=w65-wdc 116853354cdbSmrg os=-none 116953354cdbSmrg ;; 117053354cdbSmrg w89k-*) 117153354cdbSmrg basic_machine=hppa1.1-winbond 117253354cdbSmrg os=-proelf 117353354cdbSmrg ;; 117453354cdbSmrg xbox) 117553354cdbSmrg basic_machine=i686-pc 117653354cdbSmrg os=-mingw32 117753354cdbSmrg ;; 117853354cdbSmrg xps | xps100) 117953354cdbSmrg basic_machine=xps100-honeywell 118053354cdbSmrg ;; 118153354cdbSmrg ymp) 118253354cdbSmrg basic_machine=ymp-cray 118353354cdbSmrg os=-unicos 118453354cdbSmrg ;; 118553354cdbSmrg z8k-*-coff) 118653354cdbSmrg basic_machine=z8k-unknown 118753354cdbSmrg os=-sim 118853354cdbSmrg ;; 118986bbecbeSmrg z80-*-coff) 119086bbecbeSmrg basic_machine=z80-unknown 119186bbecbeSmrg os=-sim 119286bbecbeSmrg ;; 119353354cdbSmrg none) 119453354cdbSmrg basic_machine=none-none 119553354cdbSmrg os=-none 119653354cdbSmrg ;; 119753354cdbSmrg 119853354cdbSmrg# Here we handle the default manufacturer of certain CPU types. It is in 119953354cdbSmrg# some cases the only manufacturer, in others, it is the most popular. 120053354cdbSmrg w89k) 120153354cdbSmrg basic_machine=hppa1.1-winbond 120253354cdbSmrg ;; 120353354cdbSmrg op50n) 120453354cdbSmrg basic_machine=hppa1.1-oki 120553354cdbSmrg ;; 120653354cdbSmrg op60c) 120753354cdbSmrg basic_machine=hppa1.1-oki 120853354cdbSmrg ;; 120953354cdbSmrg romp) 121053354cdbSmrg basic_machine=romp-ibm 121153354cdbSmrg ;; 121253354cdbSmrg mmix) 121353354cdbSmrg basic_machine=mmix-knuth 121453354cdbSmrg ;; 121553354cdbSmrg rs6000) 121653354cdbSmrg basic_machine=rs6000-ibm 121753354cdbSmrg ;; 121853354cdbSmrg vax) 121953354cdbSmrg basic_machine=vax-dec 122053354cdbSmrg ;; 122153354cdbSmrg pdp10) 122253354cdbSmrg # there are many clones, so DEC is not a safe bet 122353354cdbSmrg basic_machine=pdp10-unknown 122453354cdbSmrg ;; 122553354cdbSmrg pdp11) 122653354cdbSmrg basic_machine=pdp11-dec 122753354cdbSmrg ;; 122853354cdbSmrg we32k) 122953354cdbSmrg basic_machine=we32k-att 123053354cdbSmrg ;; 123186bbecbeSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 123253354cdbSmrg basic_machine=sh-unknown 123353354cdbSmrg ;; 123453354cdbSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 123553354cdbSmrg basic_machine=sparc-sun 123653354cdbSmrg ;; 123753354cdbSmrg cydra) 123853354cdbSmrg basic_machine=cydra-cydrome 123953354cdbSmrg ;; 124053354cdbSmrg orion) 124153354cdbSmrg basic_machine=orion-highlevel 124253354cdbSmrg ;; 124353354cdbSmrg orion105) 124453354cdbSmrg basic_machine=clipper-highlevel 124553354cdbSmrg ;; 124653354cdbSmrg mac | mpw | mac-mpw) 124753354cdbSmrg basic_machine=m68k-apple 124853354cdbSmrg ;; 124953354cdbSmrg pmac | pmac-mpw) 125053354cdbSmrg basic_machine=powerpc-apple 125153354cdbSmrg ;; 125253354cdbSmrg *-unknown) 125353354cdbSmrg # Make sure to match an already-canonicalized machine name. 125453354cdbSmrg ;; 125553354cdbSmrg *) 125653354cdbSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 125753354cdbSmrg exit 1 125853354cdbSmrg ;; 125953354cdbSmrgesac 126053354cdbSmrg 126153354cdbSmrg# Here we canonicalize certain aliases for manufacturers. 126253354cdbSmrgcase $basic_machine in 126353354cdbSmrg *-digital*) 126453354cdbSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 126553354cdbSmrg ;; 126653354cdbSmrg *-commodore*) 126753354cdbSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 126853354cdbSmrg ;; 126953354cdbSmrg *) 127053354cdbSmrg ;; 127153354cdbSmrgesac 127253354cdbSmrg 127353354cdbSmrg# Decode manufacturer-specific aliases for certain operating systems. 127453354cdbSmrg 127553354cdbSmrgif [ x"$os" != x"" ] 127653354cdbSmrgthen 127753354cdbSmrgcase $os in 127853354cdbSmrg # First match some system type aliases 127953354cdbSmrg # that might get confused with valid system types. 128053354cdbSmrg # -solaris* is a basic system type, with this one exception. 128186bbecbeSmrg -auroraux) 128286bbecbeSmrg os=-auroraux 128386bbecbeSmrg ;; 128453354cdbSmrg -solaris1 | -solaris1.*) 128553354cdbSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 128653354cdbSmrg ;; 128753354cdbSmrg -solaris) 128853354cdbSmrg os=-solaris2 128953354cdbSmrg ;; 129053354cdbSmrg -svr4*) 129153354cdbSmrg os=-sysv4 129253354cdbSmrg ;; 129353354cdbSmrg -unixware*) 129453354cdbSmrg os=-sysv4.2uw 129553354cdbSmrg ;; 129653354cdbSmrg -gnu/linux*) 129753354cdbSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 129853354cdbSmrg ;; 129953354cdbSmrg # First accept the basic system types. 130053354cdbSmrg # The portable systems comes first. 130153354cdbSmrg # Each alternative MUST END IN A *, to match a version number. 130253354cdbSmrg # -sysv* is not here because it comes later, after sysvr4. 130353354cdbSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 130486bbecbeSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 130586bbecbeSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 130686bbecbeSmrg | -sym* | -kopensolaris* \ 130753354cdbSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 130886bbecbeSmrg | -aos* | -aros* \ 130953354cdbSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 131053354cdbSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 131153354cdbSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 131253354cdbSmrg | -openbsd* | -solidbsd* \ 131353354cdbSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 131453354cdbSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 131553354cdbSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 131653354cdbSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 131786bbecbeSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 131853354cdbSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 131986bbecbeSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 132086bbecbeSmrg | -linux-newlib* | -linux-uclibc* \ 132153354cdbSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 132253354cdbSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 132353354cdbSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 132453354cdbSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 132553354cdbSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 132653354cdbSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 132753354cdbSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 132886bbecbeSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 132953354cdbSmrg # Remember, each alternative MUST END IN *, to match a version number. 133053354cdbSmrg ;; 133153354cdbSmrg -qnx*) 133253354cdbSmrg case $basic_machine in 133353354cdbSmrg x86-* | i*86-*) 133453354cdbSmrg ;; 133553354cdbSmrg *) 133653354cdbSmrg os=-nto$os 133753354cdbSmrg ;; 133853354cdbSmrg esac 133953354cdbSmrg ;; 134053354cdbSmrg -nto-qnx*) 134153354cdbSmrg ;; 134253354cdbSmrg -nto*) 134353354cdbSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 134453354cdbSmrg ;; 134553354cdbSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 134653354cdbSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 134753354cdbSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 134853354cdbSmrg ;; 134953354cdbSmrg -mac*) 135053354cdbSmrg os=`echo $os | sed -e 's|mac|macos|'` 135153354cdbSmrg ;; 135253354cdbSmrg -linux-dietlibc) 135353354cdbSmrg os=-linux-dietlibc 135453354cdbSmrg ;; 135553354cdbSmrg -linux*) 135653354cdbSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 135753354cdbSmrg ;; 135853354cdbSmrg -sunos5*) 135953354cdbSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 136053354cdbSmrg ;; 136153354cdbSmrg -sunos6*) 136253354cdbSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 136353354cdbSmrg ;; 136453354cdbSmrg -opened*) 136553354cdbSmrg os=-openedition 136653354cdbSmrg ;; 136753354cdbSmrg -os400*) 136853354cdbSmrg os=-os400 136953354cdbSmrg ;; 137053354cdbSmrg -wince*) 137153354cdbSmrg os=-wince 137253354cdbSmrg ;; 137353354cdbSmrg -osfrose*) 137453354cdbSmrg os=-osfrose 137553354cdbSmrg ;; 137653354cdbSmrg -osf*) 137753354cdbSmrg os=-osf 137853354cdbSmrg ;; 137953354cdbSmrg -utek*) 138053354cdbSmrg os=-bsd 138153354cdbSmrg ;; 138253354cdbSmrg -dynix*) 138353354cdbSmrg os=-bsd 138453354cdbSmrg ;; 138553354cdbSmrg -acis*) 138653354cdbSmrg os=-aos 138753354cdbSmrg ;; 138853354cdbSmrg -atheos*) 138953354cdbSmrg os=-atheos 139053354cdbSmrg ;; 139153354cdbSmrg -syllable*) 139253354cdbSmrg os=-syllable 139353354cdbSmrg ;; 139453354cdbSmrg -386bsd) 139553354cdbSmrg os=-bsd 139653354cdbSmrg ;; 139753354cdbSmrg -ctix* | -uts*) 139853354cdbSmrg os=-sysv 139953354cdbSmrg ;; 140053354cdbSmrg -nova*) 140153354cdbSmrg os=-rtmk-nova 140253354cdbSmrg ;; 140353354cdbSmrg -ns2 ) 140453354cdbSmrg os=-nextstep2 140553354cdbSmrg ;; 140653354cdbSmrg -nsk*) 140753354cdbSmrg os=-nsk 140853354cdbSmrg ;; 140953354cdbSmrg # Preserve the version number of sinix5. 141053354cdbSmrg -sinix5.*) 141153354cdbSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 141253354cdbSmrg ;; 141353354cdbSmrg -sinix*) 141453354cdbSmrg os=-sysv4 141553354cdbSmrg ;; 141653354cdbSmrg -tpf*) 141753354cdbSmrg os=-tpf 141853354cdbSmrg ;; 141953354cdbSmrg -triton*) 142053354cdbSmrg os=-sysv3 142153354cdbSmrg ;; 142253354cdbSmrg -oss*) 142353354cdbSmrg os=-sysv3 142453354cdbSmrg ;; 142553354cdbSmrg -svr4) 142653354cdbSmrg os=-sysv4 142753354cdbSmrg ;; 142853354cdbSmrg -svr3) 142953354cdbSmrg os=-sysv3 143053354cdbSmrg ;; 143153354cdbSmrg -sysvr4) 143253354cdbSmrg os=-sysv4 143353354cdbSmrg ;; 143453354cdbSmrg # This must come after -sysvr4. 143553354cdbSmrg -sysv*) 143653354cdbSmrg ;; 143753354cdbSmrg -ose*) 143853354cdbSmrg os=-ose 143953354cdbSmrg ;; 144053354cdbSmrg -es1800*) 144153354cdbSmrg os=-ose 144253354cdbSmrg ;; 144353354cdbSmrg -xenix) 144453354cdbSmrg os=-xenix 144553354cdbSmrg ;; 144653354cdbSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 144753354cdbSmrg os=-mint 144853354cdbSmrg ;; 144953354cdbSmrg -aros*) 145053354cdbSmrg os=-aros 145153354cdbSmrg ;; 145253354cdbSmrg -kaos*) 145353354cdbSmrg os=-kaos 145453354cdbSmrg ;; 145553354cdbSmrg -zvmoe) 145653354cdbSmrg os=-zvmoe 145753354cdbSmrg ;; 145886bbecbeSmrg -dicos*) 145986bbecbeSmrg os=-dicos 146086bbecbeSmrg ;; 146186bbecbeSmrg -nacl*) 146286bbecbeSmrg ;; 146353354cdbSmrg -none) 146453354cdbSmrg ;; 146553354cdbSmrg *) 146653354cdbSmrg # Get rid of the `-' at the beginning of $os. 146753354cdbSmrg os=`echo $os | sed 's/[^-]*-//'` 146853354cdbSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 146953354cdbSmrg exit 1 147053354cdbSmrg ;; 147153354cdbSmrgesac 147253354cdbSmrgelse 147353354cdbSmrg 147453354cdbSmrg# Here we handle the default operating systems that come with various machines. 147553354cdbSmrg# The value should be what the vendor currently ships out the door with their 147653354cdbSmrg# machine or put another way, the most popular os provided with the machine. 147753354cdbSmrg 147853354cdbSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 147953354cdbSmrg# "-sun"), then you have to tell the case statement up towards the top 148053354cdbSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 148153354cdbSmrg# will signal an error saying that MANUFACTURER isn't an operating 148253354cdbSmrg# system, and we'll never get to this point. 148353354cdbSmrg 148453354cdbSmrgcase $basic_machine in 148553354cdbSmrg score-*) 148653354cdbSmrg os=-elf 148753354cdbSmrg ;; 148853354cdbSmrg spu-*) 148953354cdbSmrg os=-elf 149053354cdbSmrg ;; 149153354cdbSmrg *-acorn) 149253354cdbSmrg os=-riscix1.2 149353354cdbSmrg ;; 149453354cdbSmrg arm*-rebel) 149553354cdbSmrg os=-linux 149653354cdbSmrg ;; 149753354cdbSmrg arm*-semi) 149853354cdbSmrg os=-aout 149953354cdbSmrg ;; 150053354cdbSmrg c4x-* | tic4x-*) 150153354cdbSmrg os=-coff 150253354cdbSmrg ;; 150386bbecbeSmrg tic54x-*) 150486bbecbeSmrg os=-coff 150586bbecbeSmrg ;; 150686bbecbeSmrg tic55x-*) 150786bbecbeSmrg os=-coff 150886bbecbeSmrg ;; 150986bbecbeSmrg tic6x-*) 151086bbecbeSmrg os=-coff 151186bbecbeSmrg ;; 151253354cdbSmrg # This must come before the *-dec entry. 151353354cdbSmrg pdp10-*) 151453354cdbSmrg os=-tops20 151553354cdbSmrg ;; 151653354cdbSmrg pdp11-*) 151753354cdbSmrg os=-none 151853354cdbSmrg ;; 151953354cdbSmrg *-dec | vax-*) 152053354cdbSmrg os=-ultrix4.2 152153354cdbSmrg ;; 152253354cdbSmrg m68*-apollo) 152353354cdbSmrg os=-domain 152453354cdbSmrg ;; 152553354cdbSmrg i386-sun) 152653354cdbSmrg os=-sunos4.0.2 152753354cdbSmrg ;; 152853354cdbSmrg m68000-sun) 152953354cdbSmrg os=-sunos3 153053354cdbSmrg # This also exists in the configure program, but was not the 153153354cdbSmrg # default. 153253354cdbSmrg # os=-sunos4 153353354cdbSmrg ;; 153453354cdbSmrg m68*-cisco) 153553354cdbSmrg os=-aout 153653354cdbSmrg ;; 153753354cdbSmrg mep-*) 153853354cdbSmrg os=-elf 153953354cdbSmrg ;; 154053354cdbSmrg mips*-cisco) 154153354cdbSmrg os=-elf 154253354cdbSmrg ;; 154353354cdbSmrg mips*-*) 154453354cdbSmrg os=-elf 154553354cdbSmrg ;; 154653354cdbSmrg or32-*) 154753354cdbSmrg os=-coff 154853354cdbSmrg ;; 154953354cdbSmrg *-tti) # must be before sparc entry or we get the wrong os. 155053354cdbSmrg os=-sysv3 155153354cdbSmrg ;; 155253354cdbSmrg sparc-* | *-sun) 155353354cdbSmrg os=-sunos4.1.1 155453354cdbSmrg ;; 155553354cdbSmrg *-be) 155653354cdbSmrg os=-beos 155753354cdbSmrg ;; 155853354cdbSmrg *-haiku) 155953354cdbSmrg os=-haiku 156053354cdbSmrg ;; 156153354cdbSmrg *-ibm) 156253354cdbSmrg os=-aix 156353354cdbSmrg ;; 156453354cdbSmrg *-knuth) 156553354cdbSmrg os=-mmixware 156653354cdbSmrg ;; 156753354cdbSmrg *-wec) 156853354cdbSmrg os=-proelf 156953354cdbSmrg ;; 157053354cdbSmrg *-winbond) 157153354cdbSmrg os=-proelf 157253354cdbSmrg ;; 157353354cdbSmrg *-oki) 157453354cdbSmrg os=-proelf 157553354cdbSmrg ;; 157653354cdbSmrg *-hp) 157753354cdbSmrg os=-hpux 157853354cdbSmrg ;; 157953354cdbSmrg *-hitachi) 158053354cdbSmrg os=-hiux 158153354cdbSmrg ;; 158253354cdbSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 158353354cdbSmrg os=-sysv 158453354cdbSmrg ;; 158553354cdbSmrg *-cbm) 158653354cdbSmrg os=-amigaos 158753354cdbSmrg ;; 158853354cdbSmrg *-dg) 158953354cdbSmrg os=-dgux 159053354cdbSmrg ;; 159153354cdbSmrg *-dolphin) 159253354cdbSmrg os=-sysv3 159353354cdbSmrg ;; 159453354cdbSmrg m68k-ccur) 159553354cdbSmrg os=-rtu 159653354cdbSmrg ;; 159753354cdbSmrg m88k-omron*) 159853354cdbSmrg os=-luna 159953354cdbSmrg ;; 160053354cdbSmrg *-next ) 160153354cdbSmrg os=-nextstep 160253354cdbSmrg ;; 160353354cdbSmrg *-sequent) 160453354cdbSmrg os=-ptx 160553354cdbSmrg ;; 160653354cdbSmrg *-crds) 160753354cdbSmrg os=-unos 160853354cdbSmrg ;; 160953354cdbSmrg *-ns) 161053354cdbSmrg os=-genix 161153354cdbSmrg ;; 161253354cdbSmrg i370-*) 161353354cdbSmrg os=-mvs 161453354cdbSmrg ;; 161553354cdbSmrg *-next) 161653354cdbSmrg os=-nextstep3 161753354cdbSmrg ;; 161853354cdbSmrg *-gould) 161953354cdbSmrg os=-sysv 162053354cdbSmrg ;; 162153354cdbSmrg *-highlevel) 162253354cdbSmrg os=-bsd 162353354cdbSmrg ;; 162453354cdbSmrg *-encore) 162553354cdbSmrg os=-bsd 162653354cdbSmrg ;; 162753354cdbSmrg *-sgi) 162853354cdbSmrg os=-irix 162953354cdbSmrg ;; 163053354cdbSmrg *-siemens) 163153354cdbSmrg os=-sysv4 163253354cdbSmrg ;; 163353354cdbSmrg *-masscomp) 163453354cdbSmrg os=-rtu 163553354cdbSmrg ;; 163653354cdbSmrg f30[01]-fujitsu | f700-fujitsu) 163753354cdbSmrg os=-uxpv 163853354cdbSmrg ;; 163953354cdbSmrg *-rom68k) 164053354cdbSmrg os=-coff 164153354cdbSmrg ;; 164253354cdbSmrg *-*bug) 164353354cdbSmrg os=-coff 164453354cdbSmrg ;; 164553354cdbSmrg *-apple) 164653354cdbSmrg os=-macos 164753354cdbSmrg ;; 164853354cdbSmrg *-atari*) 164953354cdbSmrg os=-mint 165053354cdbSmrg ;; 165153354cdbSmrg *) 165253354cdbSmrg os=-none 165353354cdbSmrg ;; 165453354cdbSmrgesac 165553354cdbSmrgfi 165653354cdbSmrg 165753354cdbSmrg# Here we handle the case where we know the os, and the CPU type, but not the 165853354cdbSmrg# manufacturer. We pick the logical manufacturer. 165953354cdbSmrgvendor=unknown 166053354cdbSmrgcase $basic_machine in 166153354cdbSmrg *-unknown) 166253354cdbSmrg case $os in 166353354cdbSmrg -riscix*) 166453354cdbSmrg vendor=acorn 166553354cdbSmrg ;; 166653354cdbSmrg -sunos*) 166753354cdbSmrg vendor=sun 166853354cdbSmrg ;; 166986bbecbeSmrg -cnk*|-aix*) 167053354cdbSmrg vendor=ibm 167153354cdbSmrg ;; 167253354cdbSmrg -beos*) 167353354cdbSmrg vendor=be 167453354cdbSmrg ;; 167553354cdbSmrg -hpux*) 167653354cdbSmrg vendor=hp 167753354cdbSmrg ;; 167853354cdbSmrg -mpeix*) 167953354cdbSmrg vendor=hp 168053354cdbSmrg ;; 168153354cdbSmrg -hiux*) 168253354cdbSmrg vendor=hitachi 168353354cdbSmrg ;; 168453354cdbSmrg -unos*) 168553354cdbSmrg vendor=crds 168653354cdbSmrg ;; 168753354cdbSmrg -dgux*) 168853354cdbSmrg vendor=dg 168953354cdbSmrg ;; 169053354cdbSmrg -luna*) 169153354cdbSmrg vendor=omron 169253354cdbSmrg ;; 169353354cdbSmrg -genix*) 169453354cdbSmrg vendor=ns 169553354cdbSmrg ;; 169653354cdbSmrg -mvs* | -opened*) 169753354cdbSmrg vendor=ibm 169853354cdbSmrg ;; 169953354cdbSmrg -os400*) 170053354cdbSmrg vendor=ibm 170153354cdbSmrg ;; 170253354cdbSmrg -ptx*) 170353354cdbSmrg vendor=sequent 170453354cdbSmrg ;; 170553354cdbSmrg -tpf*) 170653354cdbSmrg vendor=ibm 170753354cdbSmrg ;; 170853354cdbSmrg -vxsim* | -vxworks* | -windiss*) 170953354cdbSmrg vendor=wrs 171053354cdbSmrg ;; 171153354cdbSmrg -aux*) 171253354cdbSmrg vendor=apple 171353354cdbSmrg ;; 171453354cdbSmrg -hms*) 171553354cdbSmrg vendor=hitachi 171653354cdbSmrg ;; 171753354cdbSmrg -mpw* | -macos*) 171853354cdbSmrg vendor=apple 171953354cdbSmrg ;; 172053354cdbSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 172153354cdbSmrg vendor=atari 172253354cdbSmrg ;; 172353354cdbSmrg -vos*) 172453354cdbSmrg vendor=stratus 172553354cdbSmrg ;; 172653354cdbSmrg esac 172753354cdbSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 172853354cdbSmrg ;; 172953354cdbSmrgesac 173053354cdbSmrg 173153354cdbSmrgecho $basic_machine$os 173253354cdbSmrgexit 173353354cdbSmrg 173453354cdbSmrg# Local variables: 173553354cdbSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 173653354cdbSmrg# time-stamp-start: "timestamp='" 173753354cdbSmrg# time-stamp-format: "%:y-%02m-%02d" 173853354cdbSmrg# time-stamp-end: "'" 173953354cdbSmrg# End: 1740