config.sub revision 1b2353db
121c2f794Smrg#! /bin/sh 221c2f794Smrg# Configuration validation subroutine script. 31b2353dbSmrg# Copyright 1992-2013 Free Software Foundation, Inc. 421c2f794Smrg 51b2353dbSmrgtimestamp='2013-10-01' 621c2f794Smrg 71b2353dbSmrg# This file is free software; you can redistribute it and/or modify it 81b2353dbSmrg# under the terms of the GNU General Public License as published by 91b2353dbSmrg# the Free Software Foundation; either version 3 of the License, or 1021c2f794Smrg# (at your option) any later version. 1121c2f794Smrg# 121b2353dbSmrg# This program is distributed in the hope that it will be useful, but 131b2353dbSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 141b2353dbSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 151b2353dbSmrg# General Public License for more details. 1621c2f794Smrg# 1721c2f794Smrg# You should have received a copy of the GNU General Public License 181b2353dbSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 1921c2f794Smrg# 2021c2f794Smrg# As a special exception to the GNU General Public License, if you 2121c2f794Smrg# distribute this file as part of a program that contains a 2221c2f794Smrg# configuration script generated by Autoconf, you may include it under 231b2353dbSmrg# the same distribution terms that you use for the rest of that 241b2353dbSmrg# program. This Exception is an additional permission under section 7 251b2353dbSmrg# of the GNU General Public License, version 3 ("GPLv3"). 2621c2f794Smrg 2721c2f794Smrg 281b2353dbSmrg# Please send patches with a ChangeLog entry to config-patches@gnu.org. 2921c2f794Smrg# 3021c2f794Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3121c2f794Smrg# Supply the specified configuration type as an argument. 3221c2f794Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 3321c2f794Smrg# Otherwise, we print the canonical config type on stdout and succeed. 3421c2f794Smrg 3512391620Smrg# You can get the latest version of this script from: 3612391620Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 3712391620Smrg 3821c2f794Smrg# This file is supposed to be the same for all GNU packages 3921c2f794Smrg# and recognize all the CPU types, system types and aliases 4021c2f794Smrg# that are meaningful with *any* GNU software. 4121c2f794Smrg# Each package is responsible for reporting which valid configurations 4221c2f794Smrg# it does not support. The user should be able to distinguish 4321c2f794Smrg# a failure to support a valid configuration from a meaningless 4421c2f794Smrg# configuration. 4521c2f794Smrg 4621c2f794Smrg# The goal of this file is to map all the various variations of a given 4721c2f794Smrg# machine specification into a single specification in the form: 4821c2f794Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4921c2f794Smrg# or in some cases, the newer four-part form: 5021c2f794Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5121c2f794Smrg# It is wrong to echo any other type of specification. 5221c2f794Smrg 5321c2f794Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5421c2f794Smrg 5521c2f794Smrgusage="\ 5621c2f794SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 5721c2f794Smrg $0 [OPTION] ALIAS 5821c2f794Smrg 5921c2f794SmrgCanonicalize a configuration name. 6021c2f794Smrg 6121c2f794SmrgOperation modes: 6221c2f794Smrg -h, --help print this help, then exit 6321c2f794Smrg -t, --time-stamp print date of last modification, then exit 6421c2f794Smrg -v, --version print version number, then exit 6521c2f794Smrg 6621c2f794SmrgReport bugs and patches to <config-patches@gnu.org>." 6721c2f794Smrg 6821c2f794Smrgversion="\ 6921c2f794SmrgGNU config.sub ($timestamp) 7021c2f794Smrg 711b2353dbSmrgCopyright 1992-2013 Free Software Foundation, Inc. 7221c2f794Smrg 7321c2f794SmrgThis is free software; see the source for copying conditions. There is NO 7421c2f794Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7521c2f794Smrg 7621c2f794Smrghelp=" 7721c2f794SmrgTry \`$me --help' for more information." 7821c2f794Smrg 7921c2f794Smrg# Parse command line 8021c2f794Smrgwhile test $# -gt 0 ; do 8121c2f794Smrg case $1 in 8221c2f794Smrg --time-stamp | --time* | -t ) 8321c2f794Smrg echo "$timestamp" ; exit ;; 8421c2f794Smrg --version | -v ) 8521c2f794Smrg echo "$version" ; exit ;; 8621c2f794Smrg --help | --h* | -h ) 8721c2f794Smrg echo "$usage"; exit ;; 8821c2f794Smrg -- ) # Stop option processing 8921c2f794Smrg shift; break ;; 9021c2f794Smrg - ) # Use stdin as input. 9121c2f794Smrg break ;; 9221c2f794Smrg -* ) 9321c2f794Smrg echo "$me: invalid option $1$help" 9421c2f794Smrg exit 1 ;; 9521c2f794Smrg 9621c2f794Smrg *local*) 9721c2f794Smrg # First pass through any local machine types. 9821c2f794Smrg echo $1 9921c2f794Smrg exit ;; 10021c2f794Smrg 10121c2f794Smrg * ) 10221c2f794Smrg break ;; 10321c2f794Smrg esac 10421c2f794Smrgdone 10521c2f794Smrg 10621c2f794Smrgcase $# in 10721c2f794Smrg 0) echo "$me: missing argument$help" >&2 10821c2f794Smrg exit 1;; 10921c2f794Smrg 1) ;; 11021c2f794Smrg *) echo "$me: too many arguments$help" >&2 11121c2f794Smrg exit 1;; 11221c2f794Smrgesac 11321c2f794Smrg 11421c2f794Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11521c2f794Smrg# Here we must recognize all the valid KERNEL-OS combinations. 11621c2f794Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11721c2f794Smrgcase $maybe_os in 11812391620Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1191b2353dbSmrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12012391620Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 12112391620Smrg kopensolaris*-gnu* | \ 12221c2f794Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12321c2f794Smrg os=-$maybe_os 12421c2f794Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12521c2f794Smrg ;; 1261b2353dbSmrg android-linux) 1271b2353dbSmrg os=-linux-android 1281b2353dbSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 1291b2353dbSmrg ;; 13021c2f794Smrg *) 13121c2f794Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13221c2f794Smrg if [ $basic_machine != $1 ] 13321c2f794Smrg then os=`echo $1 | sed 's/.*-/-/'` 13421c2f794Smrg else os=; fi 13521c2f794Smrg ;; 13621c2f794Smrgesac 13721c2f794Smrg 13821c2f794Smrg### Let's recognize common machines as not being operating systems so 13921c2f794Smrg### that things like config.sub decstation-3100 work. We also 14021c2f794Smrg### recognize some manufacturers as not being operating systems, so we 14121c2f794Smrg### can provide default operating systems below. 14221c2f794Smrgcase $os in 14321c2f794Smrg -sun*os*) 14421c2f794Smrg # Prevent following clause from handling this invalid input. 14521c2f794Smrg ;; 14621c2f794Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14721c2f794Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14821c2f794Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14921c2f794Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15021c2f794Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15121c2f794Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1521b2353dbSmrg -apple | -axis | -knuth | -cray | -microblaze*) 15321c2f794Smrg os= 15421c2f794Smrg basic_machine=$1 15521c2f794Smrg ;; 15682e12b1bSmrg -bluegene*) 15782e12b1bSmrg os=-cnk 15812391620Smrg ;; 15921c2f794Smrg -sim | -cisco | -oki | -wec | -winbond) 16021c2f794Smrg os= 16121c2f794Smrg basic_machine=$1 16221c2f794Smrg ;; 16321c2f794Smrg -scout) 16421c2f794Smrg ;; 16521c2f794Smrg -wrs) 16621c2f794Smrg os=-vxworks 16721c2f794Smrg basic_machine=$1 16821c2f794Smrg ;; 16921c2f794Smrg -chorusos*) 17021c2f794Smrg os=-chorusos 17121c2f794Smrg basic_machine=$1 17221c2f794Smrg ;; 17382e12b1bSmrg -chorusrdb) 17482e12b1bSmrg os=-chorusrdb 17521c2f794Smrg basic_machine=$1 17682e12b1bSmrg ;; 17721c2f794Smrg -hiux*) 17821c2f794Smrg os=-hiuxwe2 17921c2f794Smrg ;; 18021c2f794Smrg -sco6) 18121c2f794Smrg os=-sco5v6 18221c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18321c2f794Smrg ;; 18421c2f794Smrg -sco5) 18521c2f794Smrg os=-sco3.2v5 18621c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18721c2f794Smrg ;; 18821c2f794Smrg -sco4) 18921c2f794Smrg os=-sco3.2v4 19021c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19121c2f794Smrg ;; 19221c2f794Smrg -sco3.2.[4-9]*) 19321c2f794Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19421c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19521c2f794Smrg ;; 19621c2f794Smrg -sco3.2v[4-9]*) 19721c2f794Smrg # Don't forget version if it is 3.2v4 or newer. 19821c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19921c2f794Smrg ;; 20021c2f794Smrg -sco5v6*) 20121c2f794Smrg # Don't forget version if it is 3.2v4 or newer. 20221c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20321c2f794Smrg ;; 20421c2f794Smrg -sco*) 20521c2f794Smrg os=-sco3.2v2 20621c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20721c2f794Smrg ;; 20821c2f794Smrg -udk*) 20921c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21021c2f794Smrg ;; 21121c2f794Smrg -isc) 21221c2f794Smrg os=-isc2.2 21321c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21421c2f794Smrg ;; 21521c2f794Smrg -clix*) 21621c2f794Smrg basic_machine=clipper-intergraph 21721c2f794Smrg ;; 21821c2f794Smrg -isc*) 21921c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22021c2f794Smrg ;; 2211b2353dbSmrg -lynx*178) 2221b2353dbSmrg os=-lynxos178 2231b2353dbSmrg ;; 2241b2353dbSmrg -lynx*5) 2251b2353dbSmrg os=-lynxos5 2261b2353dbSmrg ;; 22721c2f794Smrg -lynx*) 22821c2f794Smrg os=-lynxos 22921c2f794Smrg ;; 23021c2f794Smrg -ptx*) 23121c2f794Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23221c2f794Smrg ;; 23321c2f794Smrg -windowsnt*) 23421c2f794Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23521c2f794Smrg ;; 23621c2f794Smrg -psos*) 23721c2f794Smrg os=-psos 23821c2f794Smrg ;; 23921c2f794Smrg -mint | -mint[0-9]*) 24021c2f794Smrg basic_machine=m68k-atari 24121c2f794Smrg os=-mint 24221c2f794Smrg ;; 24321c2f794Smrgesac 24421c2f794Smrg 24521c2f794Smrg# Decode aliases for certain CPU-COMPANY combinations. 24621c2f794Smrgcase $basic_machine in 24721c2f794Smrg # Recognize the basic CPU types without company name. 24821c2f794Smrg # Some are omitted here because they have special meanings below. 24921c2f794Smrg 1750a | 580 \ 25021c2f794Smrg | a29k \ 2511b2353dbSmrg | aarch64 | aarch64_be \ 25221c2f794Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25321c2f794Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25421c2f794Smrg | am33_2.0 \ 2551b2353dbSmrg | arc | arceb \ 2561b2353dbSmrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 2571b2353dbSmrg | avr | avr32 \ 2581b2353dbSmrg | be32 | be64 \ 25921c2f794Smrg | bfin \ 2601b2353dbSmrg | c4x | c8051 | clipper \ 26121c2f794Smrg | d10v | d30v | dlx | dsp16xx \ 26282e12b1bSmrg | epiphany \ 26321c2f794Smrg | fido | fr30 | frv \ 26421c2f794Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 26582e12b1bSmrg | hexagon \ 26621c2f794Smrg | i370 | i860 | i960 | ia64 \ 26721c2f794Smrg | ip2k | iq2000 \ 2681b2353dbSmrg | k1om \ 26982e12b1bSmrg | le32 | le64 \ 27012391620Smrg | lm32 \ 27121c2f794Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2721b2353dbSmrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27321c2f794Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27421c2f794Smrg | mips16 \ 27521c2f794Smrg | mips64 | mips64el \ 27612391620Smrg | mips64octeon | mips64octeonel \ 27721c2f794Smrg | mips64orion | mips64orionel \ 27812391620Smrg | mips64r5900 | mips64r5900el \ 27912391620Smrg | mips64vr | mips64vrel \ 28021c2f794Smrg | mips64vr4100 | mips64vr4100el \ 28121c2f794Smrg | mips64vr4300 | mips64vr4300el \ 28221c2f794Smrg | mips64vr5000 | mips64vr5000el \ 28321c2f794Smrg | mips64vr5900 | mips64vr5900el \ 28421c2f794Smrg | mipsisa32 | mipsisa32el \ 28521c2f794Smrg | mipsisa32r2 | mipsisa32r2el \ 28621c2f794Smrg | mipsisa64 | mipsisa64el \ 28721c2f794Smrg | mipsisa64r2 | mipsisa64r2el \ 28821c2f794Smrg | mipsisa64sb1 | mipsisa64sb1el \ 28921c2f794Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2901b2353dbSmrg | mipsr5900 | mipsr5900el \ 29121c2f794Smrg | mipstx39 | mipstx39el \ 29221c2f794Smrg | mn10200 | mn10300 \ 29312391620Smrg | moxie \ 29421c2f794Smrg | mt \ 29521c2f794Smrg | msp430 \ 29612391620Smrg | nds32 | nds32le | nds32be \ 2971b2353dbSmrg | nios | nios2 | nios2eb | nios2el \ 29821c2f794Smrg | ns16k | ns32k \ 29982e12b1bSmrg | open8 \ 3001b2353dbSmrg | or1k | or32 \ 30121c2f794Smrg | pdp10 | pdp11 | pj | pjl \ 30282e12b1bSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 30321c2f794Smrg | pyramid \ 30482e12b1bSmrg | rl78 | rx \ 30521c2f794Smrg | score \ 30612391620Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30721c2f794Smrg | sh64 | sh64le \ 30821c2f794Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 30921c2f794Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 31082e12b1bSmrg | spu \ 31182e12b1bSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31212391620Smrg | ubicom32 \ 31382e12b1bSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31421c2f794Smrg | we32k \ 31582e12b1bSmrg | x86 | xc16x | xstormy16 | xtensa \ 31612391620Smrg | z8k | z80) 31721c2f794Smrg basic_machine=$basic_machine-unknown 31821c2f794Smrg ;; 31912391620Smrg c54x) 32012391620Smrg basic_machine=tic54x-unknown 32112391620Smrg ;; 32212391620Smrg c55x) 32312391620Smrg basic_machine=tic55x-unknown 32412391620Smrg ;; 32512391620Smrg c6x) 32612391620Smrg basic_machine=tic6x-unknown 32712391620Smrg ;; 3281b2353dbSmrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 32921c2f794Smrg basic_machine=$basic_machine-unknown 33021c2f794Smrg os=-none 33121c2f794Smrg ;; 33221c2f794Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33321c2f794Smrg ;; 33421c2f794Smrg ms1) 33521c2f794Smrg basic_machine=mt-unknown 33621c2f794Smrg ;; 33721c2f794Smrg 33882e12b1bSmrg strongarm | thumb | xscale) 33982e12b1bSmrg basic_machine=arm-unknown 34082e12b1bSmrg ;; 3411b2353dbSmrg xgate) 3421b2353dbSmrg basic_machine=$basic_machine-unknown 3431b2353dbSmrg os=-none 3441b2353dbSmrg ;; 34582e12b1bSmrg xscaleeb) 34682e12b1bSmrg basic_machine=armeb-unknown 34782e12b1bSmrg ;; 34882e12b1bSmrg 34982e12b1bSmrg xscaleel) 35082e12b1bSmrg basic_machine=armel-unknown 35182e12b1bSmrg ;; 35282e12b1bSmrg 35321c2f794Smrg # We use `pc' rather than `unknown' 35421c2f794Smrg # because (1) that's what they normally are, and 35521c2f794Smrg # (2) the word "unknown" tends to confuse beginning users. 35621c2f794Smrg i*86 | x86_64) 35721c2f794Smrg basic_machine=$basic_machine-pc 35821c2f794Smrg ;; 35921c2f794Smrg # Object if more than one company name word. 36021c2f794Smrg *-*-*) 36121c2f794Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36221c2f794Smrg exit 1 36321c2f794Smrg ;; 36421c2f794Smrg # Recognize the basic CPU types with company name. 36521c2f794Smrg 580-* \ 36621c2f794Smrg | a29k-* \ 3671b2353dbSmrg | aarch64-* | aarch64_be-* \ 36821c2f794Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 36921c2f794Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3701b2353dbSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37121c2f794Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 37221c2f794Smrg | avr-* | avr32-* \ 37382e12b1bSmrg | be32-* | be64-* \ 37421c2f794Smrg | bfin-* | bs2000-* \ 37512391620Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3761b2353dbSmrg | c8051-* | clipper-* | craynv-* | cydra-* \ 37721c2f794Smrg | d10v-* | d30v-* | dlx-* \ 37821c2f794Smrg | elxsi-* \ 37921c2f794Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38021c2f794Smrg | h8300-* | h8500-* \ 38121c2f794Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 38282e12b1bSmrg | hexagon-* \ 38321c2f794Smrg | i*86-* | i860-* | i960-* | ia64-* \ 38421c2f794Smrg | ip2k-* | iq2000-* \ 3851b2353dbSmrg | k1om-* \ 38682e12b1bSmrg | le32-* | le64-* \ 38712391620Smrg | lm32-* \ 38821c2f794Smrg | m32c-* | m32r-* | m32rle-* \ 38921c2f794Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3901b2353dbSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 3911b2353dbSmrg | microblaze-* | microblazeel-* \ 39221c2f794Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 39321c2f794Smrg | mips16-* \ 39421c2f794Smrg | mips64-* | mips64el-* \ 39512391620Smrg | mips64octeon-* | mips64octeonel-* \ 39621c2f794Smrg | mips64orion-* | mips64orionel-* \ 39712391620Smrg | mips64r5900-* | mips64r5900el-* \ 39812391620Smrg | mips64vr-* | mips64vrel-* \ 39921c2f794Smrg | mips64vr4100-* | mips64vr4100el-* \ 40021c2f794Smrg | mips64vr4300-* | mips64vr4300el-* \ 40121c2f794Smrg | mips64vr5000-* | mips64vr5000el-* \ 40221c2f794Smrg | mips64vr5900-* | mips64vr5900el-* \ 40321c2f794Smrg | mipsisa32-* | mipsisa32el-* \ 40421c2f794Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 40521c2f794Smrg | mipsisa64-* | mipsisa64el-* \ 40621c2f794Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 40721c2f794Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 40821c2f794Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 4091b2353dbSmrg | mipsr5900-* | mipsr5900el-* \ 41021c2f794Smrg | mipstx39-* | mipstx39el-* \ 41121c2f794Smrg | mmix-* \ 41221c2f794Smrg | mt-* \ 41321c2f794Smrg | msp430-* \ 41412391620Smrg | nds32-* | nds32le-* | nds32be-* \ 4151b2353dbSmrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 41621c2f794Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 41782e12b1bSmrg | open8-* \ 41821c2f794Smrg | orion-* \ 41921c2f794Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 42082e12b1bSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 42121c2f794Smrg | pyramid-* \ 42282e12b1bSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 42312391620Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 42421c2f794Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 42521c2f794Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 42621c2f794Smrg | sparclite-* \ 42782e12b1bSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 42882e12b1bSmrg | tahoe-* \ 42921c2f794Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 43082e12b1bSmrg | tile*-* \ 43121c2f794Smrg | tron-* \ 43212391620Smrg | ubicom32-* \ 43382e12b1bSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 43482e12b1bSmrg | vax-* \ 43521c2f794Smrg | we32k-* \ 43682e12b1bSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 43721c2f794Smrg | xstormy16-* | xtensa*-* \ 43821c2f794Smrg | ymp-* \ 43912391620Smrg | z8k-* | z80-*) 44021c2f794Smrg ;; 44121c2f794Smrg # Recognize the basic CPU types without company name, with glob match. 44221c2f794Smrg xtensa*) 44321c2f794Smrg basic_machine=$basic_machine-unknown 44421c2f794Smrg ;; 44521c2f794Smrg # Recognize the various machine names and aliases which stand 44621c2f794Smrg # for a CPU type and a company and sometimes even an OS. 44721c2f794Smrg 386bsd) 44821c2f794Smrg basic_machine=i386-unknown 44921c2f794Smrg os=-bsd 45021c2f794Smrg ;; 45121c2f794Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 45221c2f794Smrg basic_machine=m68000-att 45321c2f794Smrg ;; 45421c2f794Smrg 3b*) 45521c2f794Smrg basic_machine=we32k-att 45621c2f794Smrg ;; 45721c2f794Smrg a29khif) 45821c2f794Smrg basic_machine=a29k-amd 45921c2f794Smrg os=-udi 46021c2f794Smrg ;; 46182e12b1bSmrg abacus) 46221c2f794Smrg basic_machine=abacus-unknown 46321c2f794Smrg ;; 46421c2f794Smrg adobe68k) 46521c2f794Smrg basic_machine=m68010-adobe 46621c2f794Smrg os=-scout 46721c2f794Smrg ;; 46821c2f794Smrg alliant | fx80) 46921c2f794Smrg basic_machine=fx80-alliant 47021c2f794Smrg ;; 47121c2f794Smrg altos | altos3068) 47221c2f794Smrg basic_machine=m68k-altos 47321c2f794Smrg ;; 47421c2f794Smrg am29k) 47521c2f794Smrg basic_machine=a29k-none 47621c2f794Smrg os=-bsd 47721c2f794Smrg ;; 47821c2f794Smrg amd64) 47921c2f794Smrg basic_machine=x86_64-pc 48021c2f794Smrg ;; 48121c2f794Smrg amd64-*) 48221c2f794Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 48321c2f794Smrg ;; 48421c2f794Smrg amdahl) 48521c2f794Smrg basic_machine=580-amdahl 48621c2f794Smrg os=-sysv 48721c2f794Smrg ;; 48821c2f794Smrg amiga | amiga-*) 48921c2f794Smrg basic_machine=m68k-unknown 49021c2f794Smrg ;; 49121c2f794Smrg amigaos | amigados) 49221c2f794Smrg basic_machine=m68k-unknown 49321c2f794Smrg os=-amigaos 49421c2f794Smrg ;; 49521c2f794Smrg amigaunix | amix) 49621c2f794Smrg basic_machine=m68k-unknown 49721c2f794Smrg os=-sysv4 49821c2f794Smrg ;; 49921c2f794Smrg apollo68) 50021c2f794Smrg basic_machine=m68k-apollo 50121c2f794Smrg os=-sysv 50221c2f794Smrg ;; 50321c2f794Smrg apollo68bsd) 50421c2f794Smrg basic_machine=m68k-apollo 50521c2f794Smrg os=-bsd 50621c2f794Smrg ;; 50712391620Smrg aros) 50812391620Smrg basic_machine=i386-pc 50912391620Smrg os=-aros 51012391620Smrg ;; 51121c2f794Smrg aux) 51221c2f794Smrg basic_machine=m68k-apple 51321c2f794Smrg os=-aux 51421c2f794Smrg ;; 51521c2f794Smrg balance) 51621c2f794Smrg basic_machine=ns32k-sequent 51721c2f794Smrg os=-dynix 51821c2f794Smrg ;; 51921c2f794Smrg blackfin) 52021c2f794Smrg basic_machine=bfin-unknown 52121c2f794Smrg os=-linux 52221c2f794Smrg ;; 52321c2f794Smrg blackfin-*) 52421c2f794Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 52521c2f794Smrg os=-linux 52621c2f794Smrg ;; 52712391620Smrg bluegene*) 52812391620Smrg basic_machine=powerpc-ibm 52912391620Smrg os=-cnk 53012391620Smrg ;; 53112391620Smrg c54x-*) 53212391620Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 53312391620Smrg ;; 53412391620Smrg c55x-*) 53512391620Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 53612391620Smrg ;; 53712391620Smrg c6x-*) 53812391620Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 53912391620Smrg ;; 54021c2f794Smrg c90) 54121c2f794Smrg basic_machine=c90-cray 54221c2f794Smrg os=-unicos 54321c2f794Smrg ;; 54482e12b1bSmrg cegcc) 54512391620Smrg basic_machine=arm-unknown 54612391620Smrg os=-cegcc 54712391620Smrg ;; 54821c2f794Smrg convex-c1) 54921c2f794Smrg basic_machine=c1-convex 55021c2f794Smrg os=-bsd 55121c2f794Smrg ;; 55221c2f794Smrg convex-c2) 55321c2f794Smrg basic_machine=c2-convex 55421c2f794Smrg os=-bsd 55521c2f794Smrg ;; 55621c2f794Smrg convex-c32) 55721c2f794Smrg basic_machine=c32-convex 55821c2f794Smrg os=-bsd 55921c2f794Smrg ;; 56021c2f794Smrg convex-c34) 56121c2f794Smrg basic_machine=c34-convex 56221c2f794Smrg os=-bsd 56321c2f794Smrg ;; 56421c2f794Smrg convex-c38) 56521c2f794Smrg basic_machine=c38-convex 56621c2f794Smrg os=-bsd 56721c2f794Smrg ;; 56821c2f794Smrg cray | j90) 56921c2f794Smrg basic_machine=j90-cray 57021c2f794Smrg os=-unicos 57121c2f794Smrg ;; 57221c2f794Smrg craynv) 57321c2f794Smrg basic_machine=craynv-cray 57421c2f794Smrg os=-unicosmp 57521c2f794Smrg ;; 57682e12b1bSmrg cr16 | cr16-*) 57721c2f794Smrg basic_machine=cr16-unknown 57821c2f794Smrg os=-elf 57921c2f794Smrg ;; 58021c2f794Smrg crds | unos) 58121c2f794Smrg basic_machine=m68k-crds 58221c2f794Smrg ;; 58321c2f794Smrg crisv32 | crisv32-* | etraxfs*) 58421c2f794Smrg basic_machine=crisv32-axis 58521c2f794Smrg ;; 58621c2f794Smrg cris | cris-* | etrax*) 58721c2f794Smrg basic_machine=cris-axis 58821c2f794Smrg ;; 58921c2f794Smrg crx) 59021c2f794Smrg basic_machine=crx-unknown 59121c2f794Smrg os=-elf 59221c2f794Smrg ;; 59321c2f794Smrg da30 | da30-*) 59421c2f794Smrg basic_machine=m68k-da30 59521c2f794Smrg ;; 59621c2f794Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 59721c2f794Smrg basic_machine=mips-dec 59821c2f794Smrg ;; 59921c2f794Smrg decsystem10* | dec10*) 60021c2f794Smrg basic_machine=pdp10-dec 60121c2f794Smrg os=-tops10 60221c2f794Smrg ;; 60321c2f794Smrg decsystem20* | dec20*) 60421c2f794Smrg basic_machine=pdp10-dec 60521c2f794Smrg os=-tops20 60621c2f794Smrg ;; 60721c2f794Smrg delta | 3300 | motorola-3300 | motorola-delta \ 60821c2f794Smrg | 3300-motorola | delta-motorola) 60921c2f794Smrg basic_machine=m68k-motorola 61021c2f794Smrg ;; 61121c2f794Smrg delta88) 61221c2f794Smrg basic_machine=m88k-motorola 61321c2f794Smrg os=-sysv3 61421c2f794Smrg ;; 61512391620Smrg dicos) 61612391620Smrg basic_machine=i686-pc 61712391620Smrg os=-dicos 61812391620Smrg ;; 61921c2f794Smrg djgpp) 62021c2f794Smrg basic_machine=i586-pc 62121c2f794Smrg os=-msdosdjgpp 62221c2f794Smrg ;; 62321c2f794Smrg dpx20 | dpx20-*) 62421c2f794Smrg basic_machine=rs6000-bull 62521c2f794Smrg os=-bosx 62621c2f794Smrg ;; 62721c2f794Smrg dpx2* | dpx2*-bull) 62821c2f794Smrg basic_machine=m68k-bull 62921c2f794Smrg os=-sysv3 63021c2f794Smrg ;; 63121c2f794Smrg ebmon29k) 63221c2f794Smrg basic_machine=a29k-amd 63321c2f794Smrg os=-ebmon 63421c2f794Smrg ;; 63521c2f794Smrg elxsi) 63621c2f794Smrg basic_machine=elxsi-elxsi 63721c2f794Smrg os=-bsd 63821c2f794Smrg ;; 63921c2f794Smrg encore | umax | mmax) 64021c2f794Smrg basic_machine=ns32k-encore 64121c2f794Smrg ;; 64221c2f794Smrg es1800 | OSE68k | ose68k | ose | OSE) 64321c2f794Smrg basic_machine=m68k-ericsson 64421c2f794Smrg os=-ose 64521c2f794Smrg ;; 64621c2f794Smrg fx2800) 64721c2f794Smrg basic_machine=i860-alliant 64821c2f794Smrg ;; 64921c2f794Smrg genix) 65021c2f794Smrg basic_machine=ns32k-ns 65121c2f794Smrg ;; 65221c2f794Smrg gmicro) 65321c2f794Smrg basic_machine=tron-gmicro 65421c2f794Smrg os=-sysv 65521c2f794Smrg ;; 65621c2f794Smrg go32) 65721c2f794Smrg basic_machine=i386-pc 65821c2f794Smrg os=-go32 65921c2f794Smrg ;; 66021c2f794Smrg h3050r* | hiux*) 66121c2f794Smrg basic_machine=hppa1.1-hitachi 66221c2f794Smrg os=-hiuxwe2 66321c2f794Smrg ;; 66421c2f794Smrg h8300hms) 66521c2f794Smrg basic_machine=h8300-hitachi 66621c2f794Smrg os=-hms 66721c2f794Smrg ;; 66821c2f794Smrg h8300xray) 66921c2f794Smrg basic_machine=h8300-hitachi 67021c2f794Smrg os=-xray 67121c2f794Smrg ;; 67221c2f794Smrg h8500hms) 67321c2f794Smrg basic_machine=h8500-hitachi 67421c2f794Smrg os=-hms 67521c2f794Smrg ;; 67621c2f794Smrg harris) 67721c2f794Smrg basic_machine=m88k-harris 67821c2f794Smrg os=-sysv3 67921c2f794Smrg ;; 68021c2f794Smrg hp300-*) 68121c2f794Smrg basic_machine=m68k-hp 68221c2f794Smrg ;; 68321c2f794Smrg hp300bsd) 68421c2f794Smrg basic_machine=m68k-hp 68521c2f794Smrg os=-bsd 68621c2f794Smrg ;; 68721c2f794Smrg hp300hpux) 68821c2f794Smrg basic_machine=m68k-hp 68921c2f794Smrg os=-hpux 69021c2f794Smrg ;; 69121c2f794Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 69221c2f794Smrg basic_machine=hppa1.0-hp 69321c2f794Smrg ;; 69421c2f794Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 69521c2f794Smrg basic_machine=m68000-hp 69621c2f794Smrg ;; 69721c2f794Smrg hp9k3[2-9][0-9]) 69821c2f794Smrg basic_machine=m68k-hp 69921c2f794Smrg ;; 70021c2f794Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 70121c2f794Smrg basic_machine=hppa1.0-hp 70221c2f794Smrg ;; 70321c2f794Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 70421c2f794Smrg basic_machine=hppa1.1-hp 70521c2f794Smrg ;; 70621c2f794Smrg hp9k78[0-9] | hp78[0-9]) 70721c2f794Smrg # FIXME: really hppa2.0-hp 70821c2f794Smrg basic_machine=hppa1.1-hp 70921c2f794Smrg ;; 71021c2f794Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 71121c2f794Smrg # FIXME: really hppa2.0-hp 71221c2f794Smrg basic_machine=hppa1.1-hp 71321c2f794Smrg ;; 71421c2f794Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 71521c2f794Smrg basic_machine=hppa1.1-hp 71621c2f794Smrg ;; 71721c2f794Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 71821c2f794Smrg basic_machine=hppa1.0-hp 71921c2f794Smrg ;; 72021c2f794Smrg hppa-next) 72121c2f794Smrg os=-nextstep3 72221c2f794Smrg ;; 72321c2f794Smrg hppaosf) 72421c2f794Smrg basic_machine=hppa1.1-hp 72521c2f794Smrg os=-osf 72621c2f794Smrg ;; 72721c2f794Smrg hppro) 72821c2f794Smrg basic_machine=hppa1.1-hp 72921c2f794Smrg os=-proelf 73021c2f794Smrg ;; 73121c2f794Smrg i370-ibm* | ibm*) 73221c2f794Smrg basic_machine=i370-ibm 73321c2f794Smrg ;; 73421c2f794Smrg i*86v32) 73521c2f794Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73621c2f794Smrg os=-sysv32 73721c2f794Smrg ;; 73821c2f794Smrg i*86v4*) 73921c2f794Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74021c2f794Smrg os=-sysv4 74121c2f794Smrg ;; 74221c2f794Smrg i*86v) 74321c2f794Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74421c2f794Smrg os=-sysv 74521c2f794Smrg ;; 74621c2f794Smrg i*86sol2) 74721c2f794Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74821c2f794Smrg os=-solaris2 74921c2f794Smrg ;; 75021c2f794Smrg i386mach) 75121c2f794Smrg basic_machine=i386-mach 75221c2f794Smrg os=-mach 75321c2f794Smrg ;; 75421c2f794Smrg i386-vsta | vsta) 75521c2f794Smrg basic_machine=i386-unknown 75621c2f794Smrg os=-vsta 75721c2f794Smrg ;; 75821c2f794Smrg iris | iris4d) 75921c2f794Smrg basic_machine=mips-sgi 76021c2f794Smrg case $os in 76121c2f794Smrg -irix*) 76221c2f794Smrg ;; 76321c2f794Smrg *) 76421c2f794Smrg os=-irix4 76521c2f794Smrg ;; 76621c2f794Smrg esac 76721c2f794Smrg ;; 76821c2f794Smrg isi68 | isi) 76921c2f794Smrg basic_machine=m68k-isi 77021c2f794Smrg os=-sysv 77121c2f794Smrg ;; 77221c2f794Smrg m68knommu) 77321c2f794Smrg basic_machine=m68k-unknown 77421c2f794Smrg os=-linux 77521c2f794Smrg ;; 77621c2f794Smrg m68knommu-*) 77721c2f794Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 77821c2f794Smrg os=-linux 77921c2f794Smrg ;; 78021c2f794Smrg m88k-omron*) 78121c2f794Smrg basic_machine=m88k-omron 78221c2f794Smrg ;; 78321c2f794Smrg magnum | m3230) 78421c2f794Smrg basic_machine=mips-mips 78521c2f794Smrg os=-sysv 78621c2f794Smrg ;; 78721c2f794Smrg merlin) 78821c2f794Smrg basic_machine=ns32k-utek 78921c2f794Smrg os=-sysv 79021c2f794Smrg ;; 7911b2353dbSmrg microblaze*) 79212391620Smrg basic_machine=microblaze-xilinx 79312391620Smrg ;; 7941b2353dbSmrg mingw64) 7951b2353dbSmrg basic_machine=x86_64-pc 7961b2353dbSmrg os=-mingw64 7971b2353dbSmrg ;; 79821c2f794Smrg mingw32) 7991b2353dbSmrg basic_machine=i686-pc 80021c2f794Smrg os=-mingw32 80121c2f794Smrg ;; 80221c2f794Smrg mingw32ce) 80321c2f794Smrg basic_machine=arm-unknown 80421c2f794Smrg os=-mingw32ce 80521c2f794Smrg ;; 80621c2f794Smrg miniframe) 80721c2f794Smrg basic_machine=m68000-convergent 80821c2f794Smrg ;; 80921c2f794Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 81021c2f794Smrg basic_machine=m68k-atari 81121c2f794Smrg os=-mint 81221c2f794Smrg ;; 81321c2f794Smrg mips3*-*) 81421c2f794Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 81521c2f794Smrg ;; 81621c2f794Smrg mips3*) 81721c2f794Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 81821c2f794Smrg ;; 81921c2f794Smrg monitor) 82021c2f794Smrg basic_machine=m68k-rom68k 82121c2f794Smrg os=-coff 82221c2f794Smrg ;; 82321c2f794Smrg morphos) 82421c2f794Smrg basic_machine=powerpc-unknown 82521c2f794Smrg os=-morphos 82621c2f794Smrg ;; 82721c2f794Smrg msdos) 82821c2f794Smrg basic_machine=i386-pc 82921c2f794Smrg os=-msdos 83021c2f794Smrg ;; 83121c2f794Smrg ms1-*) 83221c2f794Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 83321c2f794Smrg ;; 83482e12b1bSmrg msys) 8351b2353dbSmrg basic_machine=i686-pc 83682e12b1bSmrg os=-msys 83782e12b1bSmrg ;; 83821c2f794Smrg mvs) 83921c2f794Smrg basic_machine=i370-ibm 84021c2f794Smrg os=-mvs 84121c2f794Smrg ;; 84282e12b1bSmrg nacl) 84382e12b1bSmrg basic_machine=le32-unknown 84482e12b1bSmrg os=-nacl 84582e12b1bSmrg ;; 84621c2f794Smrg ncr3000) 84721c2f794Smrg basic_machine=i486-ncr 84821c2f794Smrg os=-sysv4 84921c2f794Smrg ;; 85021c2f794Smrg netbsd386) 85121c2f794Smrg basic_machine=i386-unknown 85221c2f794Smrg os=-netbsd 85321c2f794Smrg ;; 85421c2f794Smrg netwinder) 85521c2f794Smrg basic_machine=armv4l-rebel 85621c2f794Smrg os=-linux 85721c2f794Smrg ;; 85821c2f794Smrg news | news700 | news800 | news900) 85921c2f794Smrg basic_machine=m68k-sony 86021c2f794Smrg os=-newsos 86121c2f794Smrg ;; 86221c2f794Smrg news1000) 86321c2f794Smrg basic_machine=m68030-sony 86421c2f794Smrg os=-newsos 86521c2f794Smrg ;; 86621c2f794Smrg news-3600 | risc-news) 86721c2f794Smrg basic_machine=mips-sony 86821c2f794Smrg os=-newsos 86921c2f794Smrg ;; 87021c2f794Smrg necv70) 87121c2f794Smrg basic_machine=v70-nec 87221c2f794Smrg os=-sysv 87321c2f794Smrg ;; 87421c2f794Smrg next | m*-next ) 87521c2f794Smrg basic_machine=m68k-next 87621c2f794Smrg case $os in 87721c2f794Smrg -nextstep* ) 87821c2f794Smrg ;; 87921c2f794Smrg -ns2*) 88021c2f794Smrg os=-nextstep2 88121c2f794Smrg ;; 88221c2f794Smrg *) 88321c2f794Smrg os=-nextstep3 88421c2f794Smrg ;; 88521c2f794Smrg esac 88621c2f794Smrg ;; 88721c2f794Smrg nh3000) 88821c2f794Smrg basic_machine=m68k-harris 88921c2f794Smrg os=-cxux 89021c2f794Smrg ;; 89121c2f794Smrg nh[45]000) 89221c2f794Smrg basic_machine=m88k-harris 89321c2f794Smrg os=-cxux 89421c2f794Smrg ;; 89521c2f794Smrg nindy960) 89621c2f794Smrg basic_machine=i960-intel 89721c2f794Smrg os=-nindy 89821c2f794Smrg ;; 89921c2f794Smrg mon960) 90021c2f794Smrg basic_machine=i960-intel 90121c2f794Smrg os=-mon960 90221c2f794Smrg ;; 90321c2f794Smrg nonstopux) 90421c2f794Smrg basic_machine=mips-compaq 90521c2f794Smrg os=-nonstopux 90621c2f794Smrg ;; 90721c2f794Smrg np1) 90821c2f794Smrg basic_machine=np1-gould 90921c2f794Smrg ;; 91082e12b1bSmrg neo-tandem) 91112391620Smrg basic_machine=neo-tandem 91212391620Smrg ;; 91382e12b1bSmrg nse-tandem) 91412391620Smrg basic_machine=nse-tandem 91512391620Smrg ;; 91621c2f794Smrg nsr-tandem) 91721c2f794Smrg basic_machine=nsr-tandem 91821c2f794Smrg ;; 91921c2f794Smrg op50n-* | op60c-*) 92021c2f794Smrg basic_machine=hppa1.1-oki 92121c2f794Smrg os=-proelf 92221c2f794Smrg ;; 92321c2f794Smrg openrisc | openrisc-*) 92421c2f794Smrg basic_machine=or32-unknown 92521c2f794Smrg ;; 92621c2f794Smrg os400) 92721c2f794Smrg basic_machine=powerpc-ibm 92821c2f794Smrg os=-os400 92921c2f794Smrg ;; 93021c2f794Smrg OSE68000 | ose68000) 93121c2f794Smrg basic_machine=m68000-ericsson 93221c2f794Smrg os=-ose 93321c2f794Smrg ;; 93421c2f794Smrg os68k) 93521c2f794Smrg basic_machine=m68k-none 93621c2f794Smrg os=-os68k 93721c2f794Smrg ;; 93821c2f794Smrg pa-hitachi) 93921c2f794Smrg basic_machine=hppa1.1-hitachi 94021c2f794Smrg os=-hiuxwe2 94121c2f794Smrg ;; 94221c2f794Smrg paragon) 94321c2f794Smrg basic_machine=i860-intel 94421c2f794Smrg os=-osf 94521c2f794Smrg ;; 94621c2f794Smrg parisc) 94721c2f794Smrg basic_machine=hppa-unknown 94821c2f794Smrg os=-linux 94921c2f794Smrg ;; 95021c2f794Smrg parisc-*) 95121c2f794Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 95221c2f794Smrg os=-linux 95321c2f794Smrg ;; 95421c2f794Smrg pbd) 95521c2f794Smrg basic_machine=sparc-tti 95621c2f794Smrg ;; 95721c2f794Smrg pbb) 95821c2f794Smrg basic_machine=m68k-tti 95921c2f794Smrg ;; 96021c2f794Smrg pc532 | pc532-*) 96121c2f794Smrg basic_machine=ns32k-pc532 96221c2f794Smrg ;; 96321c2f794Smrg pc98) 96421c2f794Smrg basic_machine=i386-pc 96521c2f794Smrg ;; 96621c2f794Smrg pc98-*) 96721c2f794Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 96821c2f794Smrg ;; 96921c2f794Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 97021c2f794Smrg basic_machine=i586-pc 97121c2f794Smrg ;; 97221c2f794Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 97321c2f794Smrg basic_machine=i686-pc 97421c2f794Smrg ;; 97521c2f794Smrg pentiumii | pentium2 | pentiumiii | pentium3) 97621c2f794Smrg basic_machine=i686-pc 97721c2f794Smrg ;; 97821c2f794Smrg pentium4) 97921c2f794Smrg basic_machine=i786-pc 98021c2f794Smrg ;; 98121c2f794Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 98221c2f794Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 98321c2f794Smrg ;; 98421c2f794Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 98521c2f794Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 98621c2f794Smrg ;; 98721c2f794Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 98821c2f794Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 98921c2f794Smrg ;; 99021c2f794Smrg pentium4-*) 99121c2f794Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 99221c2f794Smrg ;; 99321c2f794Smrg pn) 99421c2f794Smrg basic_machine=pn-gould 99521c2f794Smrg ;; 99621c2f794Smrg power) basic_machine=power-ibm 99721c2f794Smrg ;; 99882e12b1bSmrg ppc | ppcbe) basic_machine=powerpc-unknown 99921c2f794Smrg ;; 100082e12b1bSmrg ppc-* | ppcbe-*) 100182e12b1bSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 100221c2f794Smrg ;; 100321c2f794Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 100421c2f794Smrg basic_machine=powerpcle-unknown 100521c2f794Smrg ;; 100621c2f794Smrg ppcle-* | powerpclittle-*) 100721c2f794Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 100821c2f794Smrg ;; 100921c2f794Smrg ppc64) basic_machine=powerpc64-unknown 101021c2f794Smrg ;; 101121c2f794Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 101221c2f794Smrg ;; 101321c2f794Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 101421c2f794Smrg basic_machine=powerpc64le-unknown 101521c2f794Smrg ;; 101621c2f794Smrg ppc64le-* | powerpc64little-*) 101721c2f794Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 101821c2f794Smrg ;; 101921c2f794Smrg ps2) 102021c2f794Smrg basic_machine=i386-ibm 102121c2f794Smrg ;; 102221c2f794Smrg pw32) 102321c2f794Smrg basic_machine=i586-unknown 102421c2f794Smrg os=-pw32 102521c2f794Smrg ;; 10261b2353dbSmrg rdos | rdos64) 10271b2353dbSmrg basic_machine=x86_64-pc 10281b2353dbSmrg os=-rdos 10291b2353dbSmrg ;; 10301b2353dbSmrg rdos32) 103121c2f794Smrg basic_machine=i386-pc 103221c2f794Smrg os=-rdos 103321c2f794Smrg ;; 103421c2f794Smrg rom68k) 103521c2f794Smrg basic_machine=m68k-rom68k 103621c2f794Smrg os=-coff 103721c2f794Smrg ;; 103821c2f794Smrg rm[46]00) 103921c2f794Smrg basic_machine=mips-siemens 104021c2f794Smrg ;; 104121c2f794Smrg rtpc | rtpc-*) 104221c2f794Smrg basic_machine=romp-ibm 104321c2f794Smrg ;; 104421c2f794Smrg s390 | s390-*) 104521c2f794Smrg basic_machine=s390-ibm 104621c2f794Smrg ;; 104721c2f794Smrg s390x | s390x-*) 104821c2f794Smrg basic_machine=s390x-ibm 104921c2f794Smrg ;; 105021c2f794Smrg sa29200) 105121c2f794Smrg basic_machine=a29k-amd 105221c2f794Smrg os=-udi 105321c2f794Smrg ;; 105421c2f794Smrg sb1) 105521c2f794Smrg basic_machine=mipsisa64sb1-unknown 105621c2f794Smrg ;; 105721c2f794Smrg sb1el) 105821c2f794Smrg basic_machine=mipsisa64sb1el-unknown 105921c2f794Smrg ;; 106021c2f794Smrg sde) 106121c2f794Smrg basic_machine=mipsisa32-sde 106221c2f794Smrg os=-elf 106321c2f794Smrg ;; 106421c2f794Smrg sei) 106521c2f794Smrg basic_machine=mips-sei 106621c2f794Smrg os=-seiux 106721c2f794Smrg ;; 106821c2f794Smrg sequent) 106921c2f794Smrg basic_machine=i386-sequent 107021c2f794Smrg ;; 107121c2f794Smrg sh) 107221c2f794Smrg basic_machine=sh-hitachi 107321c2f794Smrg os=-hms 107421c2f794Smrg ;; 107521c2f794Smrg sh5el) 107621c2f794Smrg basic_machine=sh5le-unknown 107721c2f794Smrg ;; 107821c2f794Smrg sh64) 107921c2f794Smrg basic_machine=sh64-unknown 108021c2f794Smrg ;; 108121c2f794Smrg sparclite-wrs | simso-wrs) 108221c2f794Smrg basic_machine=sparclite-wrs 108321c2f794Smrg os=-vxworks 108421c2f794Smrg ;; 108521c2f794Smrg sps7) 108621c2f794Smrg basic_machine=m68k-bull 108721c2f794Smrg os=-sysv2 108821c2f794Smrg ;; 108921c2f794Smrg spur) 109021c2f794Smrg basic_machine=spur-unknown 109121c2f794Smrg ;; 109221c2f794Smrg st2000) 109321c2f794Smrg basic_machine=m68k-tandem 109421c2f794Smrg ;; 109521c2f794Smrg stratus) 109621c2f794Smrg basic_machine=i860-stratus 109721c2f794Smrg os=-sysv4 109821c2f794Smrg ;; 109982e12b1bSmrg strongarm-* | thumb-*) 110082e12b1bSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 110182e12b1bSmrg ;; 110221c2f794Smrg sun2) 110321c2f794Smrg basic_machine=m68000-sun 110421c2f794Smrg ;; 110521c2f794Smrg sun2os3) 110621c2f794Smrg basic_machine=m68000-sun 110721c2f794Smrg os=-sunos3 110821c2f794Smrg ;; 110921c2f794Smrg sun2os4) 111021c2f794Smrg basic_machine=m68000-sun 111121c2f794Smrg os=-sunos4 111221c2f794Smrg ;; 111321c2f794Smrg sun3os3) 111421c2f794Smrg basic_machine=m68k-sun 111521c2f794Smrg os=-sunos3 111621c2f794Smrg ;; 111721c2f794Smrg sun3os4) 111821c2f794Smrg basic_machine=m68k-sun 111921c2f794Smrg os=-sunos4 112021c2f794Smrg ;; 112121c2f794Smrg sun4os3) 112221c2f794Smrg basic_machine=sparc-sun 112321c2f794Smrg os=-sunos3 112421c2f794Smrg ;; 112521c2f794Smrg sun4os4) 112621c2f794Smrg basic_machine=sparc-sun 112721c2f794Smrg os=-sunos4 112821c2f794Smrg ;; 112921c2f794Smrg sun4sol2) 113021c2f794Smrg basic_machine=sparc-sun 113121c2f794Smrg os=-solaris2 113221c2f794Smrg ;; 113321c2f794Smrg sun3 | sun3-*) 113421c2f794Smrg basic_machine=m68k-sun 113521c2f794Smrg ;; 113621c2f794Smrg sun4) 113721c2f794Smrg basic_machine=sparc-sun 113821c2f794Smrg ;; 113921c2f794Smrg sun386 | sun386i | roadrunner) 114021c2f794Smrg basic_machine=i386-sun 114121c2f794Smrg ;; 114221c2f794Smrg sv1) 114321c2f794Smrg basic_machine=sv1-cray 114421c2f794Smrg os=-unicos 114521c2f794Smrg ;; 114621c2f794Smrg symmetry) 114721c2f794Smrg basic_machine=i386-sequent 114821c2f794Smrg os=-dynix 114921c2f794Smrg ;; 115021c2f794Smrg t3e) 115121c2f794Smrg basic_machine=alphaev5-cray 115221c2f794Smrg os=-unicos 115321c2f794Smrg ;; 115421c2f794Smrg t90) 115521c2f794Smrg basic_machine=t90-cray 115621c2f794Smrg os=-unicos 115721c2f794Smrg ;; 115812391620Smrg tile*) 115982e12b1bSmrg basic_machine=$basic_machine-unknown 116012391620Smrg os=-linux-gnu 116121c2f794Smrg ;; 116221c2f794Smrg tx39) 116321c2f794Smrg basic_machine=mipstx39-unknown 116421c2f794Smrg ;; 116521c2f794Smrg tx39el) 116621c2f794Smrg basic_machine=mipstx39el-unknown 116721c2f794Smrg ;; 116821c2f794Smrg toad1) 116921c2f794Smrg basic_machine=pdp10-xkl 117021c2f794Smrg os=-tops20 117121c2f794Smrg ;; 117221c2f794Smrg tower | tower-32) 117321c2f794Smrg basic_machine=m68k-ncr 117421c2f794Smrg ;; 117521c2f794Smrg tpf) 117621c2f794Smrg basic_machine=s390x-ibm 117721c2f794Smrg os=-tpf 117821c2f794Smrg ;; 117921c2f794Smrg udi29k) 118021c2f794Smrg basic_machine=a29k-amd 118121c2f794Smrg os=-udi 118221c2f794Smrg ;; 118321c2f794Smrg ultra3) 118421c2f794Smrg basic_machine=a29k-nyu 118521c2f794Smrg os=-sym1 118621c2f794Smrg ;; 118721c2f794Smrg v810 | necv810) 118821c2f794Smrg basic_machine=v810-nec 118921c2f794Smrg os=-none 119021c2f794Smrg ;; 119121c2f794Smrg vaxv) 119221c2f794Smrg basic_machine=vax-dec 119321c2f794Smrg os=-sysv 119421c2f794Smrg ;; 119521c2f794Smrg vms) 119621c2f794Smrg basic_machine=vax-dec 119721c2f794Smrg os=-vms 119821c2f794Smrg ;; 119921c2f794Smrg vpp*|vx|vx-*) 120021c2f794Smrg basic_machine=f301-fujitsu 120121c2f794Smrg ;; 120221c2f794Smrg vxworks960) 120321c2f794Smrg basic_machine=i960-wrs 120421c2f794Smrg os=-vxworks 120521c2f794Smrg ;; 120621c2f794Smrg vxworks68) 120721c2f794Smrg basic_machine=m68k-wrs 120821c2f794Smrg os=-vxworks 120921c2f794Smrg ;; 121021c2f794Smrg vxworks29k) 121121c2f794Smrg basic_machine=a29k-wrs 121221c2f794Smrg os=-vxworks 121321c2f794Smrg ;; 121421c2f794Smrg w65*) 121521c2f794Smrg basic_machine=w65-wdc 121621c2f794Smrg os=-none 121721c2f794Smrg ;; 121821c2f794Smrg w89k-*) 121921c2f794Smrg basic_machine=hppa1.1-winbond 122021c2f794Smrg os=-proelf 122121c2f794Smrg ;; 122221c2f794Smrg xbox) 122321c2f794Smrg basic_machine=i686-pc 122421c2f794Smrg os=-mingw32 122521c2f794Smrg ;; 122621c2f794Smrg xps | xps100) 122721c2f794Smrg basic_machine=xps100-honeywell 122821c2f794Smrg ;; 122982e12b1bSmrg xscale-* | xscalee[bl]-*) 123082e12b1bSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 123182e12b1bSmrg ;; 123221c2f794Smrg ymp) 123321c2f794Smrg basic_machine=ymp-cray 123421c2f794Smrg os=-unicos 123521c2f794Smrg ;; 123621c2f794Smrg z8k-*-coff) 123721c2f794Smrg basic_machine=z8k-unknown 123821c2f794Smrg os=-sim 123921c2f794Smrg ;; 124012391620Smrg z80-*-coff) 124112391620Smrg basic_machine=z80-unknown 124212391620Smrg os=-sim 124312391620Smrg ;; 124421c2f794Smrg none) 124521c2f794Smrg basic_machine=none-none 124621c2f794Smrg os=-none 124721c2f794Smrg ;; 124821c2f794Smrg 124921c2f794Smrg# Here we handle the default manufacturer of certain CPU types. It is in 125021c2f794Smrg# some cases the only manufacturer, in others, it is the most popular. 125121c2f794Smrg w89k) 125221c2f794Smrg basic_machine=hppa1.1-winbond 125321c2f794Smrg ;; 125421c2f794Smrg op50n) 125521c2f794Smrg basic_machine=hppa1.1-oki 125621c2f794Smrg ;; 125721c2f794Smrg op60c) 125821c2f794Smrg basic_machine=hppa1.1-oki 125921c2f794Smrg ;; 126021c2f794Smrg romp) 126121c2f794Smrg basic_machine=romp-ibm 126221c2f794Smrg ;; 126321c2f794Smrg mmix) 126421c2f794Smrg basic_machine=mmix-knuth 126521c2f794Smrg ;; 126621c2f794Smrg rs6000) 126721c2f794Smrg basic_machine=rs6000-ibm 126821c2f794Smrg ;; 126921c2f794Smrg vax) 127021c2f794Smrg basic_machine=vax-dec 127121c2f794Smrg ;; 127221c2f794Smrg pdp10) 127321c2f794Smrg # there are many clones, so DEC is not a safe bet 127421c2f794Smrg basic_machine=pdp10-unknown 127521c2f794Smrg ;; 127621c2f794Smrg pdp11) 127721c2f794Smrg basic_machine=pdp11-dec 127821c2f794Smrg ;; 127921c2f794Smrg we32k) 128021c2f794Smrg basic_machine=we32k-att 128121c2f794Smrg ;; 128212391620Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 128321c2f794Smrg basic_machine=sh-unknown 128421c2f794Smrg ;; 128521c2f794Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 128621c2f794Smrg basic_machine=sparc-sun 128721c2f794Smrg ;; 128821c2f794Smrg cydra) 128921c2f794Smrg basic_machine=cydra-cydrome 129021c2f794Smrg ;; 129121c2f794Smrg orion) 129221c2f794Smrg basic_machine=orion-highlevel 129321c2f794Smrg ;; 129421c2f794Smrg orion105) 129521c2f794Smrg basic_machine=clipper-highlevel 129621c2f794Smrg ;; 129721c2f794Smrg mac | mpw | mac-mpw) 129821c2f794Smrg basic_machine=m68k-apple 129921c2f794Smrg ;; 130021c2f794Smrg pmac | pmac-mpw) 130121c2f794Smrg basic_machine=powerpc-apple 130221c2f794Smrg ;; 130321c2f794Smrg *-unknown) 130421c2f794Smrg # Make sure to match an already-canonicalized machine name. 130521c2f794Smrg ;; 130621c2f794Smrg *) 130721c2f794Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 130821c2f794Smrg exit 1 130921c2f794Smrg ;; 131021c2f794Smrgesac 131121c2f794Smrg 131221c2f794Smrg# Here we canonicalize certain aliases for manufacturers. 131321c2f794Smrgcase $basic_machine in 131421c2f794Smrg *-digital*) 131521c2f794Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 131621c2f794Smrg ;; 131721c2f794Smrg *-commodore*) 131821c2f794Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 131921c2f794Smrg ;; 132021c2f794Smrg *) 132121c2f794Smrg ;; 132221c2f794Smrgesac 132321c2f794Smrg 132421c2f794Smrg# Decode manufacturer-specific aliases for certain operating systems. 132521c2f794Smrg 132621c2f794Smrgif [ x"$os" != x"" ] 132721c2f794Smrgthen 132821c2f794Smrgcase $os in 132982e12b1bSmrg # First match some system type aliases 133082e12b1bSmrg # that might get confused with valid system types. 133121c2f794Smrg # -solaris* is a basic system type, with this one exception. 133282e12b1bSmrg -auroraux) 133382e12b1bSmrg os=-auroraux 133412391620Smrg ;; 133521c2f794Smrg -solaris1 | -solaris1.*) 133621c2f794Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 133721c2f794Smrg ;; 133821c2f794Smrg -solaris) 133921c2f794Smrg os=-solaris2 134021c2f794Smrg ;; 134121c2f794Smrg -svr4*) 134221c2f794Smrg os=-sysv4 134321c2f794Smrg ;; 134421c2f794Smrg -unixware*) 134521c2f794Smrg os=-sysv4.2uw 134621c2f794Smrg ;; 134721c2f794Smrg -gnu/linux*) 134821c2f794Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 134921c2f794Smrg ;; 135021c2f794Smrg # First accept the basic system types. 135121c2f794Smrg # The portable systems comes first. 135221c2f794Smrg # Each alternative MUST END IN A *, to match a version number. 135321c2f794Smrg # -sysv* is not here because it comes later, after sysvr4. 135421c2f794Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 135512391620Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 135612391620Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13571b2353dbSmrg | -sym* | -kopensolaris* | -plan9* \ 135821c2f794Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 135912391620Smrg | -aos* | -aros* \ 136021c2f794Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 136121c2f794Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 136221c2f794Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13631b2353dbSmrg | -bitrig* | -openbsd* | -solidbsd* \ 136421c2f794Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 136521c2f794Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 136621c2f794Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 136721c2f794Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 136812391620Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 136982e12b1bSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13701b2353dbSmrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 13711b2353dbSmrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 137221c2f794Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 137321c2f794Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 137421c2f794Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 137521c2f794Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 137621c2f794Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 137721c2f794Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 137821c2f794Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 137912391620Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 138021c2f794Smrg # Remember, each alternative MUST END IN *, to match a version number. 138121c2f794Smrg ;; 138221c2f794Smrg -qnx*) 138321c2f794Smrg case $basic_machine in 138421c2f794Smrg x86-* | i*86-*) 138521c2f794Smrg ;; 138621c2f794Smrg *) 138721c2f794Smrg os=-nto$os 138821c2f794Smrg ;; 138921c2f794Smrg esac 139021c2f794Smrg ;; 139121c2f794Smrg -nto-qnx*) 139221c2f794Smrg ;; 139321c2f794Smrg -nto*) 139421c2f794Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 139521c2f794Smrg ;; 139621c2f794Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 139721c2f794Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 139821c2f794Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 139921c2f794Smrg ;; 140021c2f794Smrg -mac*) 140121c2f794Smrg os=`echo $os | sed -e 's|mac|macos|'` 140221c2f794Smrg ;; 140321c2f794Smrg -linux-dietlibc) 140421c2f794Smrg os=-linux-dietlibc 140521c2f794Smrg ;; 140621c2f794Smrg -linux*) 140721c2f794Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 140821c2f794Smrg ;; 140921c2f794Smrg -sunos5*) 141021c2f794Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 141121c2f794Smrg ;; 141221c2f794Smrg -sunos6*) 141321c2f794Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 141421c2f794Smrg ;; 141521c2f794Smrg -opened*) 141621c2f794Smrg os=-openedition 141721c2f794Smrg ;; 141882e12b1bSmrg -os400*) 141921c2f794Smrg os=-os400 142021c2f794Smrg ;; 142121c2f794Smrg -wince*) 142221c2f794Smrg os=-wince 142321c2f794Smrg ;; 142421c2f794Smrg -osfrose*) 142521c2f794Smrg os=-osfrose 142621c2f794Smrg ;; 142721c2f794Smrg -osf*) 142821c2f794Smrg os=-osf 142921c2f794Smrg ;; 143021c2f794Smrg -utek*) 143121c2f794Smrg os=-bsd 143221c2f794Smrg ;; 143321c2f794Smrg -dynix*) 143421c2f794Smrg os=-bsd 143521c2f794Smrg ;; 143621c2f794Smrg -acis*) 143721c2f794Smrg os=-aos 143821c2f794Smrg ;; 143921c2f794Smrg -atheos*) 144021c2f794Smrg os=-atheos 144121c2f794Smrg ;; 144221c2f794Smrg -syllable*) 144321c2f794Smrg os=-syllable 144421c2f794Smrg ;; 144521c2f794Smrg -386bsd) 144621c2f794Smrg os=-bsd 144721c2f794Smrg ;; 144821c2f794Smrg -ctix* | -uts*) 144921c2f794Smrg os=-sysv 145021c2f794Smrg ;; 145121c2f794Smrg -nova*) 145221c2f794Smrg os=-rtmk-nova 145321c2f794Smrg ;; 145421c2f794Smrg -ns2 ) 145521c2f794Smrg os=-nextstep2 145621c2f794Smrg ;; 145721c2f794Smrg -nsk*) 145821c2f794Smrg os=-nsk 145921c2f794Smrg ;; 146021c2f794Smrg # Preserve the version number of sinix5. 146121c2f794Smrg -sinix5.*) 146221c2f794Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 146321c2f794Smrg ;; 146421c2f794Smrg -sinix*) 146521c2f794Smrg os=-sysv4 146621c2f794Smrg ;; 146782e12b1bSmrg -tpf*) 146821c2f794Smrg os=-tpf 146921c2f794Smrg ;; 147021c2f794Smrg -triton*) 147121c2f794Smrg os=-sysv3 147221c2f794Smrg ;; 147321c2f794Smrg -oss*) 147421c2f794Smrg os=-sysv3 147521c2f794Smrg ;; 147621c2f794Smrg -svr4) 147721c2f794Smrg os=-sysv4 147821c2f794Smrg ;; 147921c2f794Smrg -svr3) 148021c2f794Smrg os=-sysv3 148121c2f794Smrg ;; 148221c2f794Smrg -sysvr4) 148321c2f794Smrg os=-sysv4 148421c2f794Smrg ;; 148521c2f794Smrg # This must come after -sysvr4. 148621c2f794Smrg -sysv*) 148721c2f794Smrg ;; 148821c2f794Smrg -ose*) 148921c2f794Smrg os=-ose 149021c2f794Smrg ;; 149121c2f794Smrg -es1800*) 149221c2f794Smrg os=-ose 149321c2f794Smrg ;; 149421c2f794Smrg -xenix) 149521c2f794Smrg os=-xenix 149621c2f794Smrg ;; 149721c2f794Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 149821c2f794Smrg os=-mint 149921c2f794Smrg ;; 150021c2f794Smrg -aros*) 150121c2f794Smrg os=-aros 150221c2f794Smrg ;; 150321c2f794Smrg -zvmoe) 150421c2f794Smrg os=-zvmoe 150521c2f794Smrg ;; 150612391620Smrg -dicos*) 150712391620Smrg os=-dicos 150812391620Smrg ;; 150982e12b1bSmrg -nacl*) 151082e12b1bSmrg ;; 151121c2f794Smrg -none) 151221c2f794Smrg ;; 151321c2f794Smrg *) 151421c2f794Smrg # Get rid of the `-' at the beginning of $os. 151521c2f794Smrg os=`echo $os | sed 's/[^-]*-//'` 151621c2f794Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 151721c2f794Smrg exit 1 151821c2f794Smrg ;; 151921c2f794Smrgesac 152021c2f794Smrgelse 152121c2f794Smrg 152221c2f794Smrg# Here we handle the default operating systems that come with various machines. 152321c2f794Smrg# The value should be what the vendor currently ships out the door with their 152421c2f794Smrg# machine or put another way, the most popular os provided with the machine. 152521c2f794Smrg 152621c2f794Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 152721c2f794Smrg# "-sun"), then you have to tell the case statement up towards the top 152821c2f794Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 152921c2f794Smrg# will signal an error saying that MANUFACTURER isn't an operating 153021c2f794Smrg# system, and we'll never get to this point. 153121c2f794Smrg 153221c2f794Smrgcase $basic_machine in 153382e12b1bSmrg score-*) 153421c2f794Smrg os=-elf 153521c2f794Smrg ;; 153682e12b1bSmrg spu-*) 153721c2f794Smrg os=-elf 153821c2f794Smrg ;; 153921c2f794Smrg *-acorn) 154021c2f794Smrg os=-riscix1.2 154121c2f794Smrg ;; 154221c2f794Smrg arm*-rebel) 154321c2f794Smrg os=-linux 154421c2f794Smrg ;; 154521c2f794Smrg arm*-semi) 154621c2f794Smrg os=-aout 154721c2f794Smrg ;; 154882e12b1bSmrg c4x-* | tic4x-*) 154982e12b1bSmrg os=-coff 155021c2f794Smrg ;; 15511b2353dbSmrg c8051-*) 15521b2353dbSmrg os=-elf 15531b2353dbSmrg ;; 15541b2353dbSmrg hexagon-*) 15551b2353dbSmrg os=-elf 15561b2353dbSmrg ;; 155712391620Smrg tic54x-*) 155812391620Smrg os=-coff 155912391620Smrg ;; 156012391620Smrg tic55x-*) 156112391620Smrg os=-coff 156212391620Smrg ;; 156312391620Smrg tic6x-*) 156412391620Smrg os=-coff 156512391620Smrg ;; 156621c2f794Smrg # This must come before the *-dec entry. 156721c2f794Smrg pdp10-*) 156821c2f794Smrg os=-tops20 156921c2f794Smrg ;; 157021c2f794Smrg pdp11-*) 157121c2f794Smrg os=-none 157221c2f794Smrg ;; 157321c2f794Smrg *-dec | vax-*) 157421c2f794Smrg os=-ultrix4.2 157521c2f794Smrg ;; 157621c2f794Smrg m68*-apollo) 157721c2f794Smrg os=-domain 157821c2f794Smrg ;; 157921c2f794Smrg i386-sun) 158021c2f794Smrg os=-sunos4.0.2 158121c2f794Smrg ;; 158221c2f794Smrg m68000-sun) 158321c2f794Smrg os=-sunos3 158421c2f794Smrg ;; 158521c2f794Smrg m68*-cisco) 158621c2f794Smrg os=-aout 158721c2f794Smrg ;; 158882e12b1bSmrg mep-*) 158921c2f794Smrg os=-elf 159021c2f794Smrg ;; 159121c2f794Smrg mips*-cisco) 159221c2f794Smrg os=-elf 159321c2f794Smrg ;; 159421c2f794Smrg mips*-*) 159521c2f794Smrg os=-elf 159621c2f794Smrg ;; 15971b2353dbSmrg or1k-*) 15981b2353dbSmrg os=-elf 15991b2353dbSmrg ;; 160021c2f794Smrg or32-*) 160121c2f794Smrg os=-coff 160221c2f794Smrg ;; 160321c2f794Smrg *-tti) # must be before sparc entry or we get the wrong os. 160421c2f794Smrg os=-sysv3 160521c2f794Smrg ;; 160621c2f794Smrg sparc-* | *-sun) 160721c2f794Smrg os=-sunos4.1.1 160821c2f794Smrg ;; 160921c2f794Smrg *-be) 161021c2f794Smrg os=-beos 161121c2f794Smrg ;; 161221c2f794Smrg *-haiku) 161321c2f794Smrg os=-haiku 161421c2f794Smrg ;; 161521c2f794Smrg *-ibm) 161621c2f794Smrg os=-aix 161721c2f794Smrg ;; 161882e12b1bSmrg *-knuth) 161921c2f794Smrg os=-mmixware 162021c2f794Smrg ;; 162121c2f794Smrg *-wec) 162221c2f794Smrg os=-proelf 162321c2f794Smrg ;; 162421c2f794Smrg *-winbond) 162521c2f794Smrg os=-proelf 162621c2f794Smrg ;; 162721c2f794Smrg *-oki) 162821c2f794Smrg os=-proelf 162921c2f794Smrg ;; 163021c2f794Smrg *-hp) 163121c2f794Smrg os=-hpux 163221c2f794Smrg ;; 163321c2f794Smrg *-hitachi) 163421c2f794Smrg os=-hiux 163521c2f794Smrg ;; 163621c2f794Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 163721c2f794Smrg os=-sysv 163821c2f794Smrg ;; 163921c2f794Smrg *-cbm) 164021c2f794Smrg os=-amigaos 164121c2f794Smrg ;; 164221c2f794Smrg *-dg) 164321c2f794Smrg os=-dgux 164421c2f794Smrg ;; 164521c2f794Smrg *-dolphin) 164621c2f794Smrg os=-sysv3 164721c2f794Smrg ;; 164821c2f794Smrg m68k-ccur) 164921c2f794Smrg os=-rtu 165021c2f794Smrg ;; 165121c2f794Smrg m88k-omron*) 165221c2f794Smrg os=-luna 165321c2f794Smrg ;; 165421c2f794Smrg *-next ) 165521c2f794Smrg os=-nextstep 165621c2f794Smrg ;; 165721c2f794Smrg *-sequent) 165821c2f794Smrg os=-ptx 165921c2f794Smrg ;; 166021c2f794Smrg *-crds) 166121c2f794Smrg os=-unos 166221c2f794Smrg ;; 166321c2f794Smrg *-ns) 166421c2f794Smrg os=-genix 166521c2f794Smrg ;; 166621c2f794Smrg i370-*) 166721c2f794Smrg os=-mvs 166821c2f794Smrg ;; 166921c2f794Smrg *-next) 167021c2f794Smrg os=-nextstep3 167121c2f794Smrg ;; 167221c2f794Smrg *-gould) 167321c2f794Smrg os=-sysv 167421c2f794Smrg ;; 167521c2f794Smrg *-highlevel) 167621c2f794Smrg os=-bsd 167721c2f794Smrg ;; 167821c2f794Smrg *-encore) 167921c2f794Smrg os=-bsd 168021c2f794Smrg ;; 168121c2f794Smrg *-sgi) 168221c2f794Smrg os=-irix 168321c2f794Smrg ;; 168421c2f794Smrg *-siemens) 168521c2f794Smrg os=-sysv4 168621c2f794Smrg ;; 168721c2f794Smrg *-masscomp) 168821c2f794Smrg os=-rtu 168921c2f794Smrg ;; 169021c2f794Smrg f30[01]-fujitsu | f700-fujitsu) 169121c2f794Smrg os=-uxpv 169221c2f794Smrg ;; 169321c2f794Smrg *-rom68k) 169421c2f794Smrg os=-coff 169521c2f794Smrg ;; 169621c2f794Smrg *-*bug) 169721c2f794Smrg os=-coff 169821c2f794Smrg ;; 169921c2f794Smrg *-apple) 170021c2f794Smrg os=-macos 170121c2f794Smrg ;; 170221c2f794Smrg *-atari*) 170321c2f794Smrg os=-mint 170421c2f794Smrg ;; 170521c2f794Smrg *) 170621c2f794Smrg os=-none 170721c2f794Smrg ;; 170821c2f794Smrgesac 170921c2f794Smrgfi 171021c2f794Smrg 171121c2f794Smrg# Here we handle the case where we know the os, and the CPU type, but not the 171221c2f794Smrg# manufacturer. We pick the logical manufacturer. 171321c2f794Smrgvendor=unknown 171421c2f794Smrgcase $basic_machine in 171521c2f794Smrg *-unknown) 171621c2f794Smrg case $os in 171721c2f794Smrg -riscix*) 171821c2f794Smrg vendor=acorn 171921c2f794Smrg ;; 172021c2f794Smrg -sunos*) 172121c2f794Smrg vendor=sun 172221c2f794Smrg ;; 172312391620Smrg -cnk*|-aix*) 172421c2f794Smrg vendor=ibm 172521c2f794Smrg ;; 172621c2f794Smrg -beos*) 172721c2f794Smrg vendor=be 172821c2f794Smrg ;; 172921c2f794Smrg -hpux*) 173021c2f794Smrg vendor=hp 173121c2f794Smrg ;; 173221c2f794Smrg -mpeix*) 173321c2f794Smrg vendor=hp 173421c2f794Smrg ;; 173521c2f794Smrg -hiux*) 173621c2f794Smrg vendor=hitachi 173721c2f794Smrg ;; 173821c2f794Smrg -unos*) 173921c2f794Smrg vendor=crds 174021c2f794Smrg ;; 174121c2f794Smrg -dgux*) 174221c2f794Smrg vendor=dg 174321c2f794Smrg ;; 174421c2f794Smrg -luna*) 174521c2f794Smrg vendor=omron 174621c2f794Smrg ;; 174721c2f794Smrg -genix*) 174821c2f794Smrg vendor=ns 174921c2f794Smrg ;; 175021c2f794Smrg -mvs* | -opened*) 175121c2f794Smrg vendor=ibm 175221c2f794Smrg ;; 175321c2f794Smrg -os400*) 175421c2f794Smrg vendor=ibm 175521c2f794Smrg ;; 175621c2f794Smrg -ptx*) 175721c2f794Smrg vendor=sequent 175821c2f794Smrg ;; 175921c2f794Smrg -tpf*) 176021c2f794Smrg vendor=ibm 176121c2f794Smrg ;; 176221c2f794Smrg -vxsim* | -vxworks* | -windiss*) 176321c2f794Smrg vendor=wrs 176421c2f794Smrg ;; 176521c2f794Smrg -aux*) 176621c2f794Smrg vendor=apple 176721c2f794Smrg ;; 176821c2f794Smrg -hms*) 176921c2f794Smrg vendor=hitachi 177021c2f794Smrg ;; 177121c2f794Smrg -mpw* | -macos*) 177221c2f794Smrg vendor=apple 177321c2f794Smrg ;; 177421c2f794Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 177521c2f794Smrg vendor=atari 177621c2f794Smrg ;; 177721c2f794Smrg -vos*) 177821c2f794Smrg vendor=stratus 177921c2f794Smrg ;; 178021c2f794Smrg esac 178121c2f794Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 178221c2f794Smrg ;; 178321c2f794Smrgesac 178421c2f794Smrg 178521c2f794Smrgecho $basic_machine$os 178621c2f794Smrgexit 178721c2f794Smrg 178821c2f794Smrg# Local variables: 178921c2f794Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 179021c2f794Smrg# time-stamp-start: "timestamp='" 179121c2f794Smrg# time-stamp-format: "%:y-%02m-%02d" 179221c2f794Smrg# time-stamp-end: "'" 179321c2f794Smrg# End: 1794