config.sub revision b40a6198
145bc899bSmrg#! /bin/sh 245bc899bSmrg# Configuration validation subroutine script. 345bc899bSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4b40a6198Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5b40a6198Smrg# 2011, 2012 Free Software Foundation, Inc. 645bc899bSmrg 7b40a6198Smrgtimestamp='2012-01-01' 845bc899bSmrg 945bc899bSmrg# This file is (in principle) common to ALL GNU software. 1045bc899bSmrg# The presence of a machine in this file suggests that SOME GNU software 1145bc899bSmrg# can handle that machine. It does not imply ALL GNU software can. 1245bc899bSmrg# 1345bc899bSmrg# This file is free software; you can redistribute it and/or modify 1445bc899bSmrg# it under the terms of the GNU General Public License as published by 1545bc899bSmrg# the Free Software Foundation; either version 2 of the License, or 1645bc899bSmrg# (at your option) any later version. 1745bc899bSmrg# 1845bc899bSmrg# This program is distributed in the hope that it will be useful, 1945bc899bSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2045bc899bSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2145bc899bSmrg# GNU General Public License for more details. 2245bc899bSmrg# 2345bc899bSmrg# You should have received a copy of the GNU General Public License 2445bc899bSmrg# along with this program; if not, write to the Free Software 2550f2e948Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2650f2e948Smrg# 02110-1301, USA. 2750f2e948Smrg# 2845bc899bSmrg# As a special exception to the GNU General Public License, if you 2945bc899bSmrg# distribute this file as part of a program that contains a 3045bc899bSmrg# configuration script generated by Autoconf, you may include it under 3145bc899bSmrg# the same distribution terms that you use for the rest of that program. 3245bc899bSmrg 3350f2e948Smrg 3445bc899bSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 35b40a6198Smrg# diff and a properly formatted GNU ChangeLog entry. 3645bc899bSmrg# 3745bc899bSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3845bc899bSmrg# Supply the specified configuration type as an argument. 3945bc899bSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 4045bc899bSmrg# Otherwise, we print the canonical config type on stdout and succeed. 4145bc899bSmrg 42b40a6198Smrg# You can get the latest version of this script from: 43b40a6198Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44b40a6198Smrg 4545bc899bSmrg# This file is supposed to be the same for all GNU packages 4645bc899bSmrg# and recognize all the CPU types, system types and aliases 4745bc899bSmrg# that are meaningful with *any* GNU software. 4845bc899bSmrg# Each package is responsible for reporting which valid configurations 4945bc899bSmrg# it does not support. The user should be able to distinguish 5045bc899bSmrg# a failure to support a valid configuration from a meaningless 5145bc899bSmrg# configuration. 5245bc899bSmrg 5345bc899bSmrg# The goal of this file is to map all the various variations of a given 5445bc899bSmrg# machine specification into a single specification in the form: 5545bc899bSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5645bc899bSmrg# or in some cases, the newer four-part form: 5745bc899bSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5845bc899bSmrg# It is wrong to echo any other type of specification. 5945bc899bSmrg 6045bc899bSmrgme=`echo "$0" | sed -e 's,.*/,,'` 6145bc899bSmrg 6245bc899bSmrgusage="\ 6345bc899bSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6445bc899bSmrg $0 [OPTION] ALIAS 6545bc899bSmrg 6645bc899bSmrgCanonicalize a configuration name. 6745bc899bSmrg 6845bc899bSmrgOperation modes: 6945bc899bSmrg -h, --help print this help, then exit 7045bc899bSmrg -t, --time-stamp print date of last modification, then exit 7145bc899bSmrg -v, --version print version number, then exit 7245bc899bSmrg 7345bc899bSmrgReport bugs and patches to <config-patches@gnu.org>." 7445bc899bSmrg 7545bc899bSmrgversion="\ 7645bc899bSmrgGNU config.sub ($timestamp) 7745bc899bSmrg 78b40a6198SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 79b40a6198Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 80b40a6198SmrgFree Software Foundation, Inc. 8145bc899bSmrg 8245bc899bSmrgThis is free software; see the source for copying conditions. There is NO 8345bc899bSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8445bc899bSmrg 8545bc899bSmrghelp=" 8645bc899bSmrgTry \`$me --help' for more information." 8745bc899bSmrg 8845bc899bSmrg# Parse command line 8945bc899bSmrgwhile test $# -gt 0 ; do 9045bc899bSmrg case $1 in 9145bc899bSmrg --time-stamp | --time* | -t ) 9250f2e948Smrg echo "$timestamp" ; exit ;; 9345bc899bSmrg --version | -v ) 9450f2e948Smrg echo "$version" ; exit ;; 9545bc899bSmrg --help | --h* | -h ) 9650f2e948Smrg echo "$usage"; exit ;; 9745bc899bSmrg -- ) # Stop option processing 9845bc899bSmrg shift; break ;; 9945bc899bSmrg - ) # Use stdin as input. 10045bc899bSmrg break ;; 10145bc899bSmrg -* ) 10245bc899bSmrg echo "$me: invalid option $1$help" 10345bc899bSmrg exit 1 ;; 10445bc899bSmrg 10545bc899bSmrg *local*) 10645bc899bSmrg # First pass through any local machine types. 10745bc899bSmrg echo $1 10850f2e948Smrg exit ;; 10945bc899bSmrg 11045bc899bSmrg * ) 11145bc899bSmrg break ;; 11245bc899bSmrg esac 11345bc899bSmrgdone 11445bc899bSmrg 11545bc899bSmrgcase $# in 11645bc899bSmrg 0) echo "$me: missing argument$help" >&2 11745bc899bSmrg exit 1;; 11845bc899bSmrg 1) ;; 11945bc899bSmrg *) echo "$me: too many arguments$help" >&2 12045bc899bSmrg exit 1;; 12145bc899bSmrgesac 12245bc899bSmrg 12345bc899bSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12445bc899bSmrg# Here we must recognize all the valid KERNEL-OS combinations. 12545bc899bSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12645bc899bSmrgcase $maybe_os in 127b40a6198Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128b40a6198Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129b40a6198Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 130b40a6198Smrg kopensolaris*-gnu* | \ 13150f2e948Smrg storm-chaos* | os2-emx* | rtmk-nova*) 13245bc899bSmrg os=-$maybe_os 13345bc899bSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13445bc899bSmrg ;; 13545bc899bSmrg *) 13645bc899bSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13745bc899bSmrg if [ $basic_machine != $1 ] 13845bc899bSmrg then os=`echo $1 | sed 's/.*-/-/'` 13945bc899bSmrg else os=; fi 14045bc899bSmrg ;; 14145bc899bSmrgesac 14245bc899bSmrg 14345bc899bSmrg### Let's recognize common machines as not being operating systems so 14445bc899bSmrg### that things like config.sub decstation-3100 work. We also 14545bc899bSmrg### recognize some manufacturers as not being operating systems, so we 14645bc899bSmrg### can provide default operating systems below. 14745bc899bSmrgcase $os in 14845bc899bSmrg -sun*os*) 14945bc899bSmrg # Prevent following clause from handling this invalid input. 15045bc899bSmrg ;; 15145bc899bSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15245bc899bSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15345bc899bSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15445bc899bSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15545bc899bSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15645bc899bSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157b40a6198Smrg -apple | -axis | -knuth | -cray | -microblaze) 15845bc899bSmrg os= 15945bc899bSmrg basic_machine=$1 16045bc899bSmrg ;; 161b40a6198Smrg -bluegene*) 162b40a6198Smrg os=-cnk 163b40a6198Smrg ;; 16445bc899bSmrg -sim | -cisco | -oki | -wec | -winbond) 16545bc899bSmrg os= 16645bc899bSmrg basic_machine=$1 16745bc899bSmrg ;; 16845bc899bSmrg -scout) 16945bc899bSmrg ;; 17045bc899bSmrg -wrs) 17145bc899bSmrg os=-vxworks 17245bc899bSmrg basic_machine=$1 17345bc899bSmrg ;; 17445bc899bSmrg -chorusos*) 17545bc899bSmrg os=-chorusos 17645bc899bSmrg basic_machine=$1 17745bc899bSmrg ;; 178b40a6198Smrg -chorusrdb) 179b40a6198Smrg os=-chorusrdb 18045bc899bSmrg basic_machine=$1 181b40a6198Smrg ;; 18245bc899bSmrg -hiux*) 18345bc899bSmrg os=-hiuxwe2 18445bc899bSmrg ;; 18550f2e948Smrg -sco6) 18650f2e948Smrg os=-sco5v6 18750f2e948Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18850f2e948Smrg ;; 18945bc899bSmrg -sco5) 19045bc899bSmrg os=-sco3.2v5 19145bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19245bc899bSmrg ;; 19345bc899bSmrg -sco4) 19445bc899bSmrg os=-sco3.2v4 19545bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19645bc899bSmrg ;; 19745bc899bSmrg -sco3.2.[4-9]*) 19845bc899bSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19945bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20045bc899bSmrg ;; 20145bc899bSmrg -sco3.2v[4-9]*) 20245bc899bSmrg # Don't forget version if it is 3.2v4 or newer. 20345bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20445bc899bSmrg ;; 20550f2e948Smrg -sco5v6*) 20650f2e948Smrg # Don't forget version if it is 3.2v4 or newer. 20750f2e948Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20850f2e948Smrg ;; 20945bc899bSmrg -sco*) 21045bc899bSmrg os=-sco3.2v2 21145bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21245bc899bSmrg ;; 21345bc899bSmrg -udk*) 21445bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21545bc899bSmrg ;; 21645bc899bSmrg -isc) 21745bc899bSmrg os=-isc2.2 21845bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21945bc899bSmrg ;; 22045bc899bSmrg -clix*) 22145bc899bSmrg basic_machine=clipper-intergraph 22245bc899bSmrg ;; 22345bc899bSmrg -isc*) 22445bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22545bc899bSmrg ;; 22645bc899bSmrg -lynx*) 22745bc899bSmrg os=-lynxos 22845bc899bSmrg ;; 22945bc899bSmrg -ptx*) 23045bc899bSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23145bc899bSmrg ;; 23245bc899bSmrg -windowsnt*) 23345bc899bSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23445bc899bSmrg ;; 23545bc899bSmrg -psos*) 23645bc899bSmrg os=-psos 23745bc899bSmrg ;; 23845bc899bSmrg -mint | -mint[0-9]*) 23945bc899bSmrg basic_machine=m68k-atari 24045bc899bSmrg os=-mint 24145bc899bSmrg ;; 24245bc899bSmrgesac 24345bc899bSmrg 24445bc899bSmrg# Decode aliases for certain CPU-COMPANY combinations. 24545bc899bSmrgcase $basic_machine in 24645bc899bSmrg # Recognize the basic CPU types without company name. 24745bc899bSmrg # Some are omitted here because they have special meanings below. 24845bc899bSmrg 1750a | 580 \ 24945bc899bSmrg | a29k \ 25045bc899bSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25145bc899bSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25250f2e948Smrg | am33_2.0 \ 25350f2e948Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 254b40a6198Smrg | be32 | be64 \ 25550f2e948Smrg | bfin \ 25645bc899bSmrg | c4x | clipper \ 25745bc899bSmrg | d10v | d30v | dlx | dsp16xx \ 258b40a6198Smrg | epiphany \ 25950f2e948Smrg | fido | fr30 | frv \ 26045bc899bSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 261b40a6198Smrg | hexagon \ 26245bc899bSmrg | i370 | i860 | i960 | ia64 \ 26350f2e948Smrg | ip2k | iq2000 \ 264b40a6198Smrg | le32 | le64 \ 265b40a6198Smrg | lm32 \ 26650f2e948Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 267b40a6198Smrg | maxq | mb | microblaze | mcore | mep | metag \ 26845bc899bSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26945bc899bSmrg | mips16 \ 27045bc899bSmrg | mips64 | mips64el \ 271b40a6198Smrg | mips64octeon | mips64octeonel \ 27245bc899bSmrg | mips64orion | mips64orionel \ 273b40a6198Smrg | mips64r5900 | mips64r5900el \ 274b40a6198Smrg | mips64vr | mips64vrel \ 27545bc899bSmrg | mips64vr4100 | mips64vr4100el \ 27645bc899bSmrg | mips64vr4300 | mips64vr4300el \ 27745bc899bSmrg | mips64vr5000 | mips64vr5000el \ 27850f2e948Smrg | mips64vr5900 | mips64vr5900el \ 27945bc899bSmrg | mipsisa32 | mipsisa32el \ 28045bc899bSmrg | mipsisa32r2 | mipsisa32r2el \ 28145bc899bSmrg | mipsisa64 | mipsisa64el \ 28250f2e948Smrg | mipsisa64r2 | mipsisa64r2el \ 28345bc899bSmrg | mipsisa64sb1 | mipsisa64sb1el \ 28445bc899bSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 28545bc899bSmrg | mipstx39 | mipstx39el \ 28645bc899bSmrg | mn10200 | mn10300 \ 287b40a6198Smrg | moxie \ 28850f2e948Smrg | mt \ 28945bc899bSmrg | msp430 \ 290b40a6198Smrg | nds32 | nds32le | nds32be \ 29150f2e948Smrg | nios | nios2 \ 29245bc899bSmrg | ns16k | ns32k \ 293b40a6198Smrg | open8 \ 29450f2e948Smrg | or32 \ 29545bc899bSmrg | pdp10 | pdp11 | pj | pjl \ 296b40a6198Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 29745bc899bSmrg | pyramid \ 298b40a6198Smrg | rl78 | rx \ 29950f2e948Smrg | score \ 300b40a6198Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30145bc899bSmrg | sh64 | sh64le \ 30250f2e948Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 30350f2e948Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 304b40a6198Smrg | spu \ 305b40a6198Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 306b40a6198Smrg | ubicom32 \ 307b40a6198Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 30845bc899bSmrg | we32k \ 309b40a6198Smrg | x86 | xc16x | xstormy16 | xtensa \ 310b40a6198Smrg | z8k | z80) 31145bc899bSmrg basic_machine=$basic_machine-unknown 31245bc899bSmrg ;; 313b40a6198Smrg c54x) 314b40a6198Smrg basic_machine=tic54x-unknown 315b40a6198Smrg ;; 316b40a6198Smrg c55x) 317b40a6198Smrg basic_machine=tic55x-unknown 318b40a6198Smrg ;; 319b40a6198Smrg c6x) 320b40a6198Smrg basic_machine=tic6x-unknown 321b40a6198Smrg ;; 322b40a6198Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 32345bc899bSmrg basic_machine=$basic_machine-unknown 32445bc899bSmrg os=-none 32545bc899bSmrg ;; 32645bc899bSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32745bc899bSmrg ;; 32850f2e948Smrg ms1) 32950f2e948Smrg basic_machine=mt-unknown 33050f2e948Smrg ;; 33145bc899bSmrg 332b40a6198Smrg strongarm | thumb | xscale) 333b40a6198Smrg basic_machine=arm-unknown 334b40a6198Smrg ;; 335b40a6198Smrg 336b40a6198Smrg xscaleeb) 337b40a6198Smrg basic_machine=armeb-unknown 338b40a6198Smrg ;; 339b40a6198Smrg 340b40a6198Smrg xscaleel) 341b40a6198Smrg basic_machine=armel-unknown 342b40a6198Smrg ;; 343b40a6198Smrg 34445bc899bSmrg # We use `pc' rather than `unknown' 34545bc899bSmrg # because (1) that's what they normally are, and 34645bc899bSmrg # (2) the word "unknown" tends to confuse beginning users. 34745bc899bSmrg i*86 | x86_64) 34845bc899bSmrg basic_machine=$basic_machine-pc 34945bc899bSmrg ;; 35045bc899bSmrg # Object if more than one company name word. 35145bc899bSmrg *-*-*) 35245bc899bSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 35345bc899bSmrg exit 1 35445bc899bSmrg ;; 35545bc899bSmrg # Recognize the basic CPU types with company name. 35645bc899bSmrg 580-* \ 35745bc899bSmrg | a29k-* \ 35845bc899bSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 35945bc899bSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 36045bc899bSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 36145bc899bSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 36250f2e948Smrg | avr-* | avr32-* \ 363b40a6198Smrg | be32-* | be64-* \ 36450f2e948Smrg | bfin-* | bs2000-* \ 365b40a6198Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 36650f2e948Smrg | clipper-* | craynv-* | cydra-* \ 36745bc899bSmrg | d10v-* | d30v-* | dlx-* \ 36845bc899bSmrg | elxsi-* \ 36950f2e948Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 37045bc899bSmrg | h8300-* | h8500-* \ 37145bc899bSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 372b40a6198Smrg | hexagon-* \ 37345bc899bSmrg | i*86-* | i860-* | i960-* | ia64-* \ 37450f2e948Smrg | ip2k-* | iq2000-* \ 375b40a6198Smrg | le32-* | le64-* \ 376b40a6198Smrg | lm32-* \ 37750f2e948Smrg | m32c-* | m32r-* | m32rle-* \ 37845bc899bSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 379b40a6198Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 38045bc899bSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 38145bc899bSmrg | mips16-* \ 38245bc899bSmrg | mips64-* | mips64el-* \ 383b40a6198Smrg | mips64octeon-* | mips64octeonel-* \ 38445bc899bSmrg | mips64orion-* | mips64orionel-* \ 385b40a6198Smrg | mips64r5900-* | mips64r5900el-* \ 386b40a6198Smrg | mips64vr-* | mips64vrel-* \ 38745bc899bSmrg | mips64vr4100-* | mips64vr4100el-* \ 38845bc899bSmrg | mips64vr4300-* | mips64vr4300el-* \ 38945bc899bSmrg | mips64vr5000-* | mips64vr5000el-* \ 39050f2e948Smrg | mips64vr5900-* | mips64vr5900el-* \ 39145bc899bSmrg | mipsisa32-* | mipsisa32el-* \ 39245bc899bSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 39345bc899bSmrg | mipsisa64-* | mipsisa64el-* \ 39450f2e948Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 39545bc899bSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 39645bc899bSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 39745bc899bSmrg | mipstx39-* | mipstx39el-* \ 39850f2e948Smrg | mmix-* \ 39950f2e948Smrg | mt-* \ 40045bc899bSmrg | msp430-* \ 401b40a6198Smrg | nds32-* | nds32le-* | nds32be-* \ 40250f2e948Smrg | nios-* | nios2-* \ 40350f2e948Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 404b40a6198Smrg | open8-* \ 40545bc899bSmrg | orion-* \ 40645bc899bSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 407b40a6198Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 40845bc899bSmrg | pyramid-* \ 409b40a6198Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 410b40a6198Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 41145bc899bSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 41250f2e948Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 41350f2e948Smrg | sparclite-* \ 414b40a6198Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 415b40a6198Smrg | tahoe-* \ 41645bc899bSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 417b40a6198Smrg | tile*-* \ 41845bc899bSmrg | tron-* \ 419b40a6198Smrg | ubicom32-* \ 420b40a6198Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 421b40a6198Smrg | vax-* \ 42245bc899bSmrg | we32k-* \ 423b40a6198Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 42450f2e948Smrg | xstormy16-* | xtensa*-* \ 42545bc899bSmrg | ymp-* \ 426b40a6198Smrg | z8k-* | z80-*) 42745bc899bSmrg ;; 42850f2e948Smrg # Recognize the basic CPU types without company name, with glob match. 42950f2e948Smrg xtensa*) 43050f2e948Smrg basic_machine=$basic_machine-unknown 43150f2e948Smrg ;; 43245bc899bSmrg # Recognize the various machine names and aliases which stand 43345bc899bSmrg # for a CPU type and a company and sometimes even an OS. 43445bc899bSmrg 386bsd) 43545bc899bSmrg basic_machine=i386-unknown 43645bc899bSmrg os=-bsd 43745bc899bSmrg ;; 43845bc899bSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 43945bc899bSmrg basic_machine=m68000-att 44045bc899bSmrg ;; 44145bc899bSmrg 3b*) 44245bc899bSmrg basic_machine=we32k-att 44345bc899bSmrg ;; 44445bc899bSmrg a29khif) 44545bc899bSmrg basic_machine=a29k-amd 44645bc899bSmrg os=-udi 44745bc899bSmrg ;; 448b40a6198Smrg abacus) 44950f2e948Smrg basic_machine=abacus-unknown 45050f2e948Smrg ;; 45145bc899bSmrg adobe68k) 45245bc899bSmrg basic_machine=m68010-adobe 45345bc899bSmrg os=-scout 45445bc899bSmrg ;; 45545bc899bSmrg alliant | fx80) 45645bc899bSmrg basic_machine=fx80-alliant 45745bc899bSmrg ;; 45845bc899bSmrg altos | altos3068) 45945bc899bSmrg basic_machine=m68k-altos 46045bc899bSmrg ;; 46145bc899bSmrg am29k) 46245bc899bSmrg basic_machine=a29k-none 46345bc899bSmrg os=-bsd 46445bc899bSmrg ;; 46545bc899bSmrg amd64) 46645bc899bSmrg basic_machine=x86_64-pc 46745bc899bSmrg ;; 46850f2e948Smrg amd64-*) 46950f2e948Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 47050f2e948Smrg ;; 47145bc899bSmrg amdahl) 47245bc899bSmrg basic_machine=580-amdahl 47345bc899bSmrg os=-sysv 47445bc899bSmrg ;; 47545bc899bSmrg amiga | amiga-*) 47645bc899bSmrg basic_machine=m68k-unknown 47745bc899bSmrg ;; 47845bc899bSmrg amigaos | amigados) 47945bc899bSmrg basic_machine=m68k-unknown 48045bc899bSmrg os=-amigaos 48145bc899bSmrg ;; 48245bc899bSmrg amigaunix | amix) 48345bc899bSmrg basic_machine=m68k-unknown 48445bc899bSmrg os=-sysv4 48545bc899bSmrg ;; 48645bc899bSmrg apollo68) 48745bc899bSmrg basic_machine=m68k-apollo 48845bc899bSmrg os=-sysv 48945bc899bSmrg ;; 49045bc899bSmrg apollo68bsd) 49145bc899bSmrg basic_machine=m68k-apollo 49245bc899bSmrg os=-bsd 49345bc899bSmrg ;; 494b40a6198Smrg aros) 495b40a6198Smrg basic_machine=i386-pc 496b40a6198Smrg os=-aros 497b40a6198Smrg ;; 49845bc899bSmrg aux) 49945bc899bSmrg basic_machine=m68k-apple 50045bc899bSmrg os=-aux 50145bc899bSmrg ;; 50245bc899bSmrg balance) 50345bc899bSmrg basic_machine=ns32k-sequent 50445bc899bSmrg os=-dynix 50545bc899bSmrg ;; 50650f2e948Smrg blackfin) 50750f2e948Smrg basic_machine=bfin-unknown 50850f2e948Smrg os=-linux 50950f2e948Smrg ;; 51050f2e948Smrg blackfin-*) 51150f2e948Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 51250f2e948Smrg os=-linux 51350f2e948Smrg ;; 514b40a6198Smrg bluegene*) 515b40a6198Smrg basic_machine=powerpc-ibm 516b40a6198Smrg os=-cnk 517b40a6198Smrg ;; 518b40a6198Smrg c54x-*) 519b40a6198Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 520b40a6198Smrg ;; 521b40a6198Smrg c55x-*) 522b40a6198Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 523b40a6198Smrg ;; 524b40a6198Smrg c6x-*) 525b40a6198Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 526b40a6198Smrg ;; 52745bc899bSmrg c90) 52845bc899bSmrg basic_machine=c90-cray 52945bc899bSmrg os=-unicos 53045bc899bSmrg ;; 531b40a6198Smrg cegcc) 532b40a6198Smrg basic_machine=arm-unknown 533b40a6198Smrg os=-cegcc 534b40a6198Smrg ;; 53545bc899bSmrg convex-c1) 53645bc899bSmrg basic_machine=c1-convex 53745bc899bSmrg os=-bsd 53845bc899bSmrg ;; 53945bc899bSmrg convex-c2) 54045bc899bSmrg basic_machine=c2-convex 54145bc899bSmrg os=-bsd 54245bc899bSmrg ;; 54345bc899bSmrg convex-c32) 54445bc899bSmrg basic_machine=c32-convex 54545bc899bSmrg os=-bsd 54645bc899bSmrg ;; 54745bc899bSmrg convex-c34) 54845bc899bSmrg basic_machine=c34-convex 54945bc899bSmrg os=-bsd 55045bc899bSmrg ;; 55145bc899bSmrg convex-c38) 55245bc899bSmrg basic_machine=c38-convex 55345bc899bSmrg os=-bsd 55445bc899bSmrg ;; 55545bc899bSmrg cray | j90) 55645bc899bSmrg basic_machine=j90-cray 55745bc899bSmrg os=-unicos 55845bc899bSmrg ;; 55950f2e948Smrg craynv) 56050f2e948Smrg basic_machine=craynv-cray 56150f2e948Smrg os=-unicosmp 56250f2e948Smrg ;; 563b40a6198Smrg cr16 | cr16-*) 56450f2e948Smrg basic_machine=cr16-unknown 56550f2e948Smrg os=-elf 56650f2e948Smrg ;; 56745bc899bSmrg crds | unos) 56845bc899bSmrg basic_machine=m68k-crds 56945bc899bSmrg ;; 57050f2e948Smrg crisv32 | crisv32-* | etraxfs*) 57150f2e948Smrg basic_machine=crisv32-axis 57250f2e948Smrg ;; 57345bc899bSmrg cris | cris-* | etrax*) 57445bc899bSmrg basic_machine=cris-axis 57545bc899bSmrg ;; 57650f2e948Smrg crx) 57750f2e948Smrg basic_machine=crx-unknown 57850f2e948Smrg os=-elf 57950f2e948Smrg ;; 58045bc899bSmrg da30 | da30-*) 58145bc899bSmrg basic_machine=m68k-da30 58245bc899bSmrg ;; 58345bc899bSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 58445bc899bSmrg basic_machine=mips-dec 58545bc899bSmrg ;; 58645bc899bSmrg decsystem10* | dec10*) 58745bc899bSmrg basic_machine=pdp10-dec 58845bc899bSmrg os=-tops10 58945bc899bSmrg ;; 59045bc899bSmrg decsystem20* | dec20*) 59145bc899bSmrg basic_machine=pdp10-dec 59245bc899bSmrg os=-tops20 59345bc899bSmrg ;; 59445bc899bSmrg delta | 3300 | motorola-3300 | motorola-delta \ 59545bc899bSmrg | 3300-motorola | delta-motorola) 59645bc899bSmrg basic_machine=m68k-motorola 59745bc899bSmrg ;; 59845bc899bSmrg delta88) 59945bc899bSmrg basic_machine=m88k-motorola 60045bc899bSmrg os=-sysv3 60145bc899bSmrg ;; 602b40a6198Smrg dicos) 603b40a6198Smrg basic_machine=i686-pc 604b40a6198Smrg os=-dicos 605b40a6198Smrg ;; 60650f2e948Smrg djgpp) 60750f2e948Smrg basic_machine=i586-pc 60850f2e948Smrg os=-msdosdjgpp 60950f2e948Smrg ;; 61045bc899bSmrg dpx20 | dpx20-*) 61145bc899bSmrg basic_machine=rs6000-bull 61245bc899bSmrg os=-bosx 61345bc899bSmrg ;; 61445bc899bSmrg dpx2* | dpx2*-bull) 61545bc899bSmrg basic_machine=m68k-bull 61645bc899bSmrg os=-sysv3 61745bc899bSmrg ;; 61845bc899bSmrg ebmon29k) 61945bc899bSmrg basic_machine=a29k-amd 62045bc899bSmrg os=-ebmon 62145bc899bSmrg ;; 62245bc899bSmrg elxsi) 62345bc899bSmrg basic_machine=elxsi-elxsi 62445bc899bSmrg os=-bsd 62545bc899bSmrg ;; 62645bc899bSmrg encore | umax | mmax) 62745bc899bSmrg basic_machine=ns32k-encore 62845bc899bSmrg ;; 62945bc899bSmrg es1800 | OSE68k | ose68k | ose | OSE) 63045bc899bSmrg basic_machine=m68k-ericsson 63145bc899bSmrg os=-ose 63245bc899bSmrg ;; 63345bc899bSmrg fx2800) 63445bc899bSmrg basic_machine=i860-alliant 63545bc899bSmrg ;; 63645bc899bSmrg genix) 63745bc899bSmrg basic_machine=ns32k-ns 63845bc899bSmrg ;; 63945bc899bSmrg gmicro) 64045bc899bSmrg basic_machine=tron-gmicro 64145bc899bSmrg os=-sysv 64245bc899bSmrg ;; 64345bc899bSmrg go32) 64445bc899bSmrg basic_machine=i386-pc 64545bc899bSmrg os=-go32 64645bc899bSmrg ;; 64745bc899bSmrg h3050r* | hiux*) 64845bc899bSmrg basic_machine=hppa1.1-hitachi 64945bc899bSmrg os=-hiuxwe2 65045bc899bSmrg ;; 65145bc899bSmrg h8300hms) 65245bc899bSmrg basic_machine=h8300-hitachi 65345bc899bSmrg os=-hms 65445bc899bSmrg ;; 65545bc899bSmrg h8300xray) 65645bc899bSmrg basic_machine=h8300-hitachi 65745bc899bSmrg os=-xray 65845bc899bSmrg ;; 65945bc899bSmrg h8500hms) 66045bc899bSmrg basic_machine=h8500-hitachi 66145bc899bSmrg os=-hms 66245bc899bSmrg ;; 66345bc899bSmrg harris) 66445bc899bSmrg basic_machine=m88k-harris 66545bc899bSmrg os=-sysv3 66645bc899bSmrg ;; 66745bc899bSmrg hp300-*) 66845bc899bSmrg basic_machine=m68k-hp 66945bc899bSmrg ;; 67045bc899bSmrg hp300bsd) 67145bc899bSmrg basic_machine=m68k-hp 67245bc899bSmrg os=-bsd 67345bc899bSmrg ;; 67445bc899bSmrg hp300hpux) 67545bc899bSmrg basic_machine=m68k-hp 67645bc899bSmrg os=-hpux 67745bc899bSmrg ;; 67845bc899bSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 67945bc899bSmrg basic_machine=hppa1.0-hp 68045bc899bSmrg ;; 68145bc899bSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 68245bc899bSmrg basic_machine=m68000-hp 68345bc899bSmrg ;; 68445bc899bSmrg hp9k3[2-9][0-9]) 68545bc899bSmrg basic_machine=m68k-hp 68645bc899bSmrg ;; 68745bc899bSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 68845bc899bSmrg basic_machine=hppa1.0-hp 68945bc899bSmrg ;; 69045bc899bSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 69145bc899bSmrg basic_machine=hppa1.1-hp 69245bc899bSmrg ;; 69345bc899bSmrg hp9k78[0-9] | hp78[0-9]) 69445bc899bSmrg # FIXME: really hppa2.0-hp 69545bc899bSmrg basic_machine=hppa1.1-hp 69645bc899bSmrg ;; 69745bc899bSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 69845bc899bSmrg # FIXME: really hppa2.0-hp 69945bc899bSmrg basic_machine=hppa1.1-hp 70045bc899bSmrg ;; 70145bc899bSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 70245bc899bSmrg basic_machine=hppa1.1-hp 70345bc899bSmrg ;; 70445bc899bSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 70545bc899bSmrg basic_machine=hppa1.0-hp 70645bc899bSmrg ;; 70745bc899bSmrg hppa-next) 70845bc899bSmrg os=-nextstep3 70945bc899bSmrg ;; 71045bc899bSmrg hppaosf) 71145bc899bSmrg basic_machine=hppa1.1-hp 71245bc899bSmrg os=-osf 71345bc899bSmrg ;; 71445bc899bSmrg hppro) 71545bc899bSmrg basic_machine=hppa1.1-hp 71645bc899bSmrg os=-proelf 71745bc899bSmrg ;; 71845bc899bSmrg i370-ibm* | ibm*) 71945bc899bSmrg basic_machine=i370-ibm 72045bc899bSmrg ;; 72145bc899bSmrg i*86v32) 72245bc899bSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72345bc899bSmrg os=-sysv32 72445bc899bSmrg ;; 72545bc899bSmrg i*86v4*) 72645bc899bSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72745bc899bSmrg os=-sysv4 72845bc899bSmrg ;; 72945bc899bSmrg i*86v) 73045bc899bSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73145bc899bSmrg os=-sysv 73245bc899bSmrg ;; 73345bc899bSmrg i*86sol2) 73445bc899bSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73545bc899bSmrg os=-solaris2 73645bc899bSmrg ;; 73745bc899bSmrg i386mach) 73845bc899bSmrg basic_machine=i386-mach 73945bc899bSmrg os=-mach 74045bc899bSmrg ;; 74145bc899bSmrg i386-vsta | vsta) 74245bc899bSmrg basic_machine=i386-unknown 74345bc899bSmrg os=-vsta 74445bc899bSmrg ;; 74545bc899bSmrg iris | iris4d) 74645bc899bSmrg basic_machine=mips-sgi 74745bc899bSmrg case $os in 74845bc899bSmrg -irix*) 74945bc899bSmrg ;; 75045bc899bSmrg *) 75145bc899bSmrg os=-irix4 75245bc899bSmrg ;; 75345bc899bSmrg esac 75445bc899bSmrg ;; 75545bc899bSmrg isi68 | isi) 75645bc899bSmrg basic_machine=m68k-isi 75745bc899bSmrg os=-sysv 75845bc899bSmrg ;; 75950f2e948Smrg m68knommu) 76050f2e948Smrg basic_machine=m68k-unknown 76150f2e948Smrg os=-linux 76250f2e948Smrg ;; 76350f2e948Smrg m68knommu-*) 76450f2e948Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 76550f2e948Smrg os=-linux 76650f2e948Smrg ;; 76745bc899bSmrg m88k-omron*) 76845bc899bSmrg basic_machine=m88k-omron 76945bc899bSmrg ;; 77045bc899bSmrg magnum | m3230) 77145bc899bSmrg basic_machine=mips-mips 77245bc899bSmrg os=-sysv 77345bc899bSmrg ;; 77445bc899bSmrg merlin) 77545bc899bSmrg basic_machine=ns32k-utek 77645bc899bSmrg os=-sysv 77745bc899bSmrg ;; 778b40a6198Smrg microblaze) 779b40a6198Smrg basic_machine=microblaze-xilinx 780b40a6198Smrg ;; 78145bc899bSmrg mingw32) 78245bc899bSmrg basic_machine=i386-pc 78345bc899bSmrg os=-mingw32 78445bc899bSmrg ;; 78550f2e948Smrg mingw32ce) 78650f2e948Smrg basic_machine=arm-unknown 78750f2e948Smrg os=-mingw32ce 78850f2e948Smrg ;; 78945bc899bSmrg miniframe) 79045bc899bSmrg basic_machine=m68000-convergent 79145bc899bSmrg ;; 79245bc899bSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 79345bc899bSmrg basic_machine=m68k-atari 79445bc899bSmrg os=-mint 79545bc899bSmrg ;; 79645bc899bSmrg mips3*-*) 79745bc899bSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 79845bc899bSmrg ;; 79945bc899bSmrg mips3*) 80045bc899bSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 80145bc899bSmrg ;; 80245bc899bSmrg monitor) 80345bc899bSmrg basic_machine=m68k-rom68k 80445bc899bSmrg os=-coff 80545bc899bSmrg ;; 80645bc899bSmrg morphos) 80745bc899bSmrg basic_machine=powerpc-unknown 80845bc899bSmrg os=-morphos 80945bc899bSmrg ;; 81045bc899bSmrg msdos) 81145bc899bSmrg basic_machine=i386-pc 81245bc899bSmrg os=-msdos 81345bc899bSmrg ;; 81450f2e948Smrg ms1-*) 81550f2e948Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 81650f2e948Smrg ;; 817b40a6198Smrg msys) 818b40a6198Smrg basic_machine=i386-pc 819b40a6198Smrg os=-msys 820b40a6198Smrg ;; 82145bc899bSmrg mvs) 82245bc899bSmrg basic_machine=i370-ibm 82345bc899bSmrg os=-mvs 82445bc899bSmrg ;; 825b40a6198Smrg nacl) 826b40a6198Smrg basic_machine=le32-unknown 827b40a6198Smrg os=-nacl 828b40a6198Smrg ;; 82945bc899bSmrg ncr3000) 83045bc899bSmrg basic_machine=i486-ncr 83145bc899bSmrg os=-sysv4 83245bc899bSmrg ;; 83345bc899bSmrg netbsd386) 83445bc899bSmrg basic_machine=i386-unknown 83545bc899bSmrg os=-netbsd 83645bc899bSmrg ;; 83745bc899bSmrg netwinder) 83845bc899bSmrg basic_machine=armv4l-rebel 83945bc899bSmrg os=-linux 84045bc899bSmrg ;; 84145bc899bSmrg news | news700 | news800 | news900) 84245bc899bSmrg basic_machine=m68k-sony 84345bc899bSmrg os=-newsos 84445bc899bSmrg ;; 84545bc899bSmrg news1000) 84645bc899bSmrg basic_machine=m68030-sony 84745bc899bSmrg os=-newsos 84845bc899bSmrg ;; 84945bc899bSmrg news-3600 | risc-news) 85045bc899bSmrg basic_machine=mips-sony 85145bc899bSmrg os=-newsos 85245bc899bSmrg ;; 85345bc899bSmrg necv70) 85445bc899bSmrg basic_machine=v70-nec 85545bc899bSmrg os=-sysv 85645bc899bSmrg ;; 85745bc899bSmrg next | m*-next ) 85845bc899bSmrg basic_machine=m68k-next 85945bc899bSmrg case $os in 86045bc899bSmrg -nextstep* ) 86145bc899bSmrg ;; 86245bc899bSmrg -ns2*) 86345bc899bSmrg os=-nextstep2 86445bc899bSmrg ;; 86545bc899bSmrg *) 86645bc899bSmrg os=-nextstep3 86745bc899bSmrg ;; 86845bc899bSmrg esac 86945bc899bSmrg ;; 87045bc899bSmrg nh3000) 87145bc899bSmrg basic_machine=m68k-harris 87245bc899bSmrg os=-cxux 87345bc899bSmrg ;; 87445bc899bSmrg nh[45]000) 87545bc899bSmrg basic_machine=m88k-harris 87645bc899bSmrg os=-cxux 87745bc899bSmrg ;; 87845bc899bSmrg nindy960) 87945bc899bSmrg basic_machine=i960-intel 88045bc899bSmrg os=-nindy 88145bc899bSmrg ;; 88245bc899bSmrg mon960) 88345bc899bSmrg basic_machine=i960-intel 88445bc899bSmrg os=-mon960 88545bc899bSmrg ;; 88645bc899bSmrg nonstopux) 88745bc899bSmrg basic_machine=mips-compaq 88845bc899bSmrg os=-nonstopux 88945bc899bSmrg ;; 89045bc899bSmrg np1) 89145bc899bSmrg basic_machine=np1-gould 89245bc899bSmrg ;; 893b40a6198Smrg neo-tandem) 894b40a6198Smrg basic_machine=neo-tandem 895b40a6198Smrg ;; 896b40a6198Smrg nse-tandem) 897b40a6198Smrg basic_machine=nse-tandem 898b40a6198Smrg ;; 89945bc899bSmrg nsr-tandem) 90045bc899bSmrg basic_machine=nsr-tandem 90145bc899bSmrg ;; 90245bc899bSmrg op50n-* | op60c-*) 90345bc899bSmrg basic_machine=hppa1.1-oki 90445bc899bSmrg os=-proelf 90545bc899bSmrg ;; 90650f2e948Smrg openrisc | openrisc-*) 90745bc899bSmrg basic_machine=or32-unknown 90850f2e948Smrg ;; 90950f2e948Smrg os400) 91050f2e948Smrg basic_machine=powerpc-ibm 91150f2e948Smrg os=-os400 91245bc899bSmrg ;; 91345bc899bSmrg OSE68000 | ose68000) 91445bc899bSmrg basic_machine=m68000-ericsson 91545bc899bSmrg os=-ose 91645bc899bSmrg ;; 91745bc899bSmrg os68k) 91845bc899bSmrg basic_machine=m68k-none 91945bc899bSmrg os=-os68k 92045bc899bSmrg ;; 92145bc899bSmrg pa-hitachi) 92245bc899bSmrg basic_machine=hppa1.1-hitachi 92345bc899bSmrg os=-hiuxwe2 92445bc899bSmrg ;; 92545bc899bSmrg paragon) 92645bc899bSmrg basic_machine=i860-intel 92745bc899bSmrg os=-osf 92845bc899bSmrg ;; 92950f2e948Smrg parisc) 93050f2e948Smrg basic_machine=hppa-unknown 93150f2e948Smrg os=-linux 93250f2e948Smrg ;; 93350f2e948Smrg parisc-*) 93450f2e948Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 93550f2e948Smrg os=-linux 93650f2e948Smrg ;; 93745bc899bSmrg pbd) 93845bc899bSmrg basic_machine=sparc-tti 93945bc899bSmrg ;; 94045bc899bSmrg pbb) 94145bc899bSmrg basic_machine=m68k-tti 94245bc899bSmrg ;; 94345bc899bSmrg pc532 | pc532-*) 94445bc899bSmrg basic_machine=ns32k-pc532 94545bc899bSmrg ;; 94650f2e948Smrg pc98) 94750f2e948Smrg basic_machine=i386-pc 94850f2e948Smrg ;; 94950f2e948Smrg pc98-*) 95050f2e948Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 95150f2e948Smrg ;; 95245bc899bSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 95345bc899bSmrg basic_machine=i586-pc 95445bc899bSmrg ;; 95545bc899bSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 95645bc899bSmrg basic_machine=i686-pc 95745bc899bSmrg ;; 95845bc899bSmrg pentiumii | pentium2 | pentiumiii | pentium3) 95945bc899bSmrg basic_machine=i686-pc 96045bc899bSmrg ;; 96145bc899bSmrg pentium4) 96245bc899bSmrg basic_machine=i786-pc 96345bc899bSmrg ;; 96445bc899bSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 96545bc899bSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 96645bc899bSmrg ;; 96745bc899bSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 96845bc899bSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 96945bc899bSmrg ;; 97045bc899bSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 97145bc899bSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 97245bc899bSmrg ;; 97345bc899bSmrg pentium4-*) 97445bc899bSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 97545bc899bSmrg ;; 97645bc899bSmrg pn) 97745bc899bSmrg basic_machine=pn-gould 97845bc899bSmrg ;; 97945bc899bSmrg power) basic_machine=power-ibm 98045bc899bSmrg ;; 981b40a6198Smrg ppc | ppcbe) basic_machine=powerpc-unknown 98245bc899bSmrg ;; 983b40a6198Smrg ppc-* | ppcbe-*) 984b40a6198Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 98545bc899bSmrg ;; 98645bc899bSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 98745bc899bSmrg basic_machine=powerpcle-unknown 98845bc899bSmrg ;; 98945bc899bSmrg ppcle-* | powerpclittle-*) 99045bc899bSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 99145bc899bSmrg ;; 99245bc899bSmrg ppc64) basic_machine=powerpc64-unknown 99345bc899bSmrg ;; 99445bc899bSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 99545bc899bSmrg ;; 99645bc899bSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 99745bc899bSmrg basic_machine=powerpc64le-unknown 99845bc899bSmrg ;; 99945bc899bSmrg ppc64le-* | powerpc64little-*) 100045bc899bSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 100145bc899bSmrg ;; 100245bc899bSmrg ps2) 100345bc899bSmrg basic_machine=i386-ibm 100445bc899bSmrg ;; 100545bc899bSmrg pw32) 100645bc899bSmrg basic_machine=i586-unknown 100745bc899bSmrg os=-pw32 100845bc899bSmrg ;; 100950f2e948Smrg rdos) 101050f2e948Smrg basic_machine=i386-pc 101150f2e948Smrg os=-rdos 101250f2e948Smrg ;; 101345bc899bSmrg rom68k) 101445bc899bSmrg basic_machine=m68k-rom68k 101545bc899bSmrg os=-coff 101645bc899bSmrg ;; 101745bc899bSmrg rm[46]00) 101845bc899bSmrg basic_machine=mips-siemens 101945bc899bSmrg ;; 102045bc899bSmrg rtpc | rtpc-*) 102145bc899bSmrg basic_machine=romp-ibm 102245bc899bSmrg ;; 102350f2e948Smrg s390 | s390-*) 102450f2e948Smrg basic_machine=s390-ibm 102550f2e948Smrg ;; 102650f2e948Smrg s390x | s390x-*) 102750f2e948Smrg basic_machine=s390x-ibm 102850f2e948Smrg ;; 102945bc899bSmrg sa29200) 103045bc899bSmrg basic_machine=a29k-amd 103145bc899bSmrg os=-udi 103245bc899bSmrg ;; 103345bc899bSmrg sb1) 103445bc899bSmrg basic_machine=mipsisa64sb1-unknown 103545bc899bSmrg ;; 103645bc899bSmrg sb1el) 103745bc899bSmrg basic_machine=mipsisa64sb1el-unknown 103845bc899bSmrg ;; 103950f2e948Smrg sde) 104050f2e948Smrg basic_machine=mipsisa32-sde 104150f2e948Smrg os=-elf 104250f2e948Smrg ;; 104345bc899bSmrg sei) 104445bc899bSmrg basic_machine=mips-sei 104545bc899bSmrg os=-seiux 104645bc899bSmrg ;; 104745bc899bSmrg sequent) 104845bc899bSmrg basic_machine=i386-sequent 104945bc899bSmrg ;; 105045bc899bSmrg sh) 105145bc899bSmrg basic_machine=sh-hitachi 105245bc899bSmrg os=-hms 105345bc899bSmrg ;; 105450f2e948Smrg sh5el) 105550f2e948Smrg basic_machine=sh5le-unknown 105650f2e948Smrg ;; 105745bc899bSmrg sh64) 105845bc899bSmrg basic_machine=sh64-unknown 105945bc899bSmrg ;; 106045bc899bSmrg sparclite-wrs | simso-wrs) 106145bc899bSmrg basic_machine=sparclite-wrs 106245bc899bSmrg os=-vxworks 106345bc899bSmrg ;; 106445bc899bSmrg sps7) 106545bc899bSmrg basic_machine=m68k-bull 106645bc899bSmrg os=-sysv2 106745bc899bSmrg ;; 106845bc899bSmrg spur) 106945bc899bSmrg basic_machine=spur-unknown 107045bc899bSmrg ;; 107145bc899bSmrg st2000) 107245bc899bSmrg basic_machine=m68k-tandem 107345bc899bSmrg ;; 107445bc899bSmrg stratus) 107545bc899bSmrg basic_machine=i860-stratus 107645bc899bSmrg os=-sysv4 107745bc899bSmrg ;; 1078b40a6198Smrg strongarm-* | thumb-*) 1079b40a6198Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1080b40a6198Smrg ;; 108145bc899bSmrg sun2) 108245bc899bSmrg basic_machine=m68000-sun 108345bc899bSmrg ;; 108445bc899bSmrg sun2os3) 108545bc899bSmrg basic_machine=m68000-sun 108645bc899bSmrg os=-sunos3 108745bc899bSmrg ;; 108845bc899bSmrg sun2os4) 108945bc899bSmrg basic_machine=m68000-sun 109045bc899bSmrg os=-sunos4 109145bc899bSmrg ;; 109245bc899bSmrg sun3os3) 109345bc899bSmrg basic_machine=m68k-sun 109445bc899bSmrg os=-sunos3 109545bc899bSmrg ;; 109645bc899bSmrg sun3os4) 109745bc899bSmrg basic_machine=m68k-sun 109845bc899bSmrg os=-sunos4 109945bc899bSmrg ;; 110045bc899bSmrg sun4os3) 110145bc899bSmrg basic_machine=sparc-sun 110245bc899bSmrg os=-sunos3 110345bc899bSmrg ;; 110445bc899bSmrg sun4os4) 110545bc899bSmrg basic_machine=sparc-sun 110645bc899bSmrg os=-sunos4 110745bc899bSmrg ;; 110845bc899bSmrg sun4sol2) 110945bc899bSmrg basic_machine=sparc-sun 111045bc899bSmrg os=-solaris2 111145bc899bSmrg ;; 111245bc899bSmrg sun3 | sun3-*) 111345bc899bSmrg basic_machine=m68k-sun 111445bc899bSmrg ;; 111545bc899bSmrg sun4) 111645bc899bSmrg basic_machine=sparc-sun 111745bc899bSmrg ;; 111845bc899bSmrg sun386 | sun386i | roadrunner) 111945bc899bSmrg basic_machine=i386-sun 112045bc899bSmrg ;; 112145bc899bSmrg sv1) 112245bc899bSmrg basic_machine=sv1-cray 112345bc899bSmrg os=-unicos 112445bc899bSmrg ;; 112545bc899bSmrg symmetry) 112645bc899bSmrg basic_machine=i386-sequent 112745bc899bSmrg os=-dynix 112845bc899bSmrg ;; 112945bc899bSmrg t3e) 113045bc899bSmrg basic_machine=alphaev5-cray 113145bc899bSmrg os=-unicos 113245bc899bSmrg ;; 113345bc899bSmrg t90) 113445bc899bSmrg basic_machine=t90-cray 113545bc899bSmrg os=-unicos 113645bc899bSmrg ;; 113750f2e948Smrg tile*) 1138b40a6198Smrg basic_machine=$basic_machine-unknown 113950f2e948Smrg os=-linux-gnu 114050f2e948Smrg ;; 114145bc899bSmrg tx39) 114245bc899bSmrg basic_machine=mipstx39-unknown 114345bc899bSmrg ;; 114445bc899bSmrg tx39el) 114545bc899bSmrg basic_machine=mipstx39el-unknown 114645bc899bSmrg ;; 114745bc899bSmrg toad1) 114845bc899bSmrg basic_machine=pdp10-xkl 114945bc899bSmrg os=-tops20 115045bc899bSmrg ;; 115145bc899bSmrg tower | tower-32) 115245bc899bSmrg basic_machine=m68k-ncr 115345bc899bSmrg ;; 115450f2e948Smrg tpf) 115550f2e948Smrg basic_machine=s390x-ibm 115650f2e948Smrg os=-tpf 115750f2e948Smrg ;; 115845bc899bSmrg udi29k) 115945bc899bSmrg basic_machine=a29k-amd 116045bc899bSmrg os=-udi 116145bc899bSmrg ;; 116245bc899bSmrg ultra3) 116345bc899bSmrg basic_machine=a29k-nyu 116445bc899bSmrg os=-sym1 116545bc899bSmrg ;; 116645bc899bSmrg v810 | necv810) 116745bc899bSmrg basic_machine=v810-nec 116845bc899bSmrg os=-none 116945bc899bSmrg ;; 117045bc899bSmrg vaxv) 117145bc899bSmrg basic_machine=vax-dec 117245bc899bSmrg os=-sysv 117345bc899bSmrg ;; 117445bc899bSmrg vms) 117545bc899bSmrg basic_machine=vax-dec 117645bc899bSmrg os=-vms 117745bc899bSmrg ;; 117845bc899bSmrg vpp*|vx|vx-*) 117945bc899bSmrg basic_machine=f301-fujitsu 118045bc899bSmrg ;; 118145bc899bSmrg vxworks960) 118245bc899bSmrg basic_machine=i960-wrs 118345bc899bSmrg os=-vxworks 118445bc899bSmrg ;; 118545bc899bSmrg vxworks68) 118645bc899bSmrg basic_machine=m68k-wrs 118745bc899bSmrg os=-vxworks 118845bc899bSmrg ;; 118945bc899bSmrg vxworks29k) 119045bc899bSmrg basic_machine=a29k-wrs 119145bc899bSmrg os=-vxworks 119245bc899bSmrg ;; 119345bc899bSmrg w65*) 119445bc899bSmrg basic_machine=w65-wdc 119545bc899bSmrg os=-none 119645bc899bSmrg ;; 119745bc899bSmrg w89k-*) 119845bc899bSmrg basic_machine=hppa1.1-winbond 119945bc899bSmrg os=-proelf 120045bc899bSmrg ;; 120150f2e948Smrg xbox) 120250f2e948Smrg basic_machine=i686-pc 120350f2e948Smrg os=-mingw32 120450f2e948Smrg ;; 120545bc899bSmrg xps | xps100) 120645bc899bSmrg basic_machine=xps100-honeywell 120745bc899bSmrg ;; 1208b40a6198Smrg xscale-* | xscalee[bl]-*) 1209b40a6198Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1210b40a6198Smrg ;; 121145bc899bSmrg ymp) 121245bc899bSmrg basic_machine=ymp-cray 121345bc899bSmrg os=-unicos 121445bc899bSmrg ;; 121545bc899bSmrg z8k-*-coff) 121645bc899bSmrg basic_machine=z8k-unknown 121745bc899bSmrg os=-sim 121845bc899bSmrg ;; 1219b40a6198Smrg z80-*-coff) 1220b40a6198Smrg basic_machine=z80-unknown 1221b40a6198Smrg os=-sim 1222b40a6198Smrg ;; 122345bc899bSmrg none) 122445bc899bSmrg basic_machine=none-none 122545bc899bSmrg os=-none 122645bc899bSmrg ;; 122745bc899bSmrg 122845bc899bSmrg# Here we handle the default manufacturer of certain CPU types. It is in 122945bc899bSmrg# some cases the only manufacturer, in others, it is the most popular. 123045bc899bSmrg w89k) 123145bc899bSmrg basic_machine=hppa1.1-winbond 123245bc899bSmrg ;; 123345bc899bSmrg op50n) 123445bc899bSmrg basic_machine=hppa1.1-oki 123545bc899bSmrg ;; 123645bc899bSmrg op60c) 123745bc899bSmrg basic_machine=hppa1.1-oki 123845bc899bSmrg ;; 123945bc899bSmrg romp) 124045bc899bSmrg basic_machine=romp-ibm 124145bc899bSmrg ;; 124250f2e948Smrg mmix) 124350f2e948Smrg basic_machine=mmix-knuth 124450f2e948Smrg ;; 124545bc899bSmrg rs6000) 124645bc899bSmrg basic_machine=rs6000-ibm 124745bc899bSmrg ;; 124845bc899bSmrg vax) 124945bc899bSmrg basic_machine=vax-dec 125045bc899bSmrg ;; 125145bc899bSmrg pdp10) 125245bc899bSmrg # there are many clones, so DEC is not a safe bet 125345bc899bSmrg basic_machine=pdp10-unknown 125445bc899bSmrg ;; 125545bc899bSmrg pdp11) 125645bc899bSmrg basic_machine=pdp11-dec 125745bc899bSmrg ;; 125845bc899bSmrg we32k) 125945bc899bSmrg basic_machine=we32k-att 126045bc899bSmrg ;; 1261b40a6198Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 126245bc899bSmrg basic_machine=sh-unknown 126345bc899bSmrg ;; 126450f2e948Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 126545bc899bSmrg basic_machine=sparc-sun 126645bc899bSmrg ;; 126745bc899bSmrg cydra) 126845bc899bSmrg basic_machine=cydra-cydrome 126945bc899bSmrg ;; 127045bc899bSmrg orion) 127145bc899bSmrg basic_machine=orion-highlevel 127245bc899bSmrg ;; 127345bc899bSmrg orion105) 127445bc899bSmrg basic_machine=clipper-highlevel 127545bc899bSmrg ;; 127645bc899bSmrg mac | mpw | mac-mpw) 127745bc899bSmrg basic_machine=m68k-apple 127845bc899bSmrg ;; 127945bc899bSmrg pmac | pmac-mpw) 128045bc899bSmrg basic_machine=powerpc-apple 128145bc899bSmrg ;; 128245bc899bSmrg *-unknown) 128345bc899bSmrg # Make sure to match an already-canonicalized machine name. 128445bc899bSmrg ;; 128545bc899bSmrg *) 128645bc899bSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 128745bc899bSmrg exit 1 128845bc899bSmrg ;; 128945bc899bSmrgesac 129045bc899bSmrg 129145bc899bSmrg# Here we canonicalize certain aliases for manufacturers. 129245bc899bSmrgcase $basic_machine in 129345bc899bSmrg *-digital*) 129445bc899bSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 129545bc899bSmrg ;; 129645bc899bSmrg *-commodore*) 129745bc899bSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 129845bc899bSmrg ;; 129945bc899bSmrg *) 130045bc899bSmrg ;; 130145bc899bSmrgesac 130245bc899bSmrg 130345bc899bSmrg# Decode manufacturer-specific aliases for certain operating systems. 130445bc899bSmrg 130545bc899bSmrgif [ x"$os" != x"" ] 130645bc899bSmrgthen 130745bc899bSmrgcase $os in 1308b40a6198Smrg # First match some system type aliases 1309b40a6198Smrg # that might get confused with valid system types. 131045bc899bSmrg # -solaris* is a basic system type, with this one exception. 1311b40a6198Smrg -auroraux) 1312b40a6198Smrg os=-auroraux 1313b40a6198Smrg ;; 131445bc899bSmrg -solaris1 | -solaris1.*) 131545bc899bSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 131645bc899bSmrg ;; 131745bc899bSmrg -solaris) 131845bc899bSmrg os=-solaris2 131945bc899bSmrg ;; 132045bc899bSmrg -svr4*) 132145bc899bSmrg os=-sysv4 132245bc899bSmrg ;; 132345bc899bSmrg -unixware*) 132445bc899bSmrg os=-sysv4.2uw 132545bc899bSmrg ;; 132645bc899bSmrg -gnu/linux*) 132745bc899bSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 132845bc899bSmrg ;; 132945bc899bSmrg # First accept the basic system types. 133045bc899bSmrg # The portable systems comes first. 133145bc899bSmrg # Each alternative MUST END IN A *, to match a version number. 133245bc899bSmrg # -sysv* is not here because it comes later, after sysvr4. 133345bc899bSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1334b40a6198Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1335b40a6198Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1336b40a6198Smrg | -sym* | -kopensolaris* \ 133745bc899bSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1338b40a6198Smrg | -aos* | -aros* \ 133945bc899bSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 134045bc899bSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 134150f2e948Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 134250f2e948Smrg | -openbsd* | -solidbsd* \ 134350f2e948Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 134450f2e948Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 134545bc899bSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 134645bc899bSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1347b40a6198Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1348b40a6198Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1349b40a6198Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1350b40a6198Smrg | -linux-newlib* | -linux-uclibc* \ 135150f2e948Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 135245bc899bSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 135345bc899bSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 135445bc899bSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 135545bc899bSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 135645bc899bSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 135750f2e948Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1358b40a6198Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 135945bc899bSmrg # Remember, each alternative MUST END IN *, to match a version number. 136045bc899bSmrg ;; 136145bc899bSmrg -qnx*) 136245bc899bSmrg case $basic_machine in 136345bc899bSmrg x86-* | i*86-*) 136445bc899bSmrg ;; 136545bc899bSmrg *) 136645bc899bSmrg os=-nto$os 136745bc899bSmrg ;; 136845bc899bSmrg esac 136945bc899bSmrg ;; 137045bc899bSmrg -nto-qnx*) 137145bc899bSmrg ;; 137245bc899bSmrg -nto*) 137345bc899bSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 137445bc899bSmrg ;; 137545bc899bSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 137650f2e948Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 137745bc899bSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 137845bc899bSmrg ;; 137945bc899bSmrg -mac*) 138045bc899bSmrg os=`echo $os | sed -e 's|mac|macos|'` 138145bc899bSmrg ;; 138250f2e948Smrg -linux-dietlibc) 138350f2e948Smrg os=-linux-dietlibc 138450f2e948Smrg ;; 138545bc899bSmrg -linux*) 138645bc899bSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 138745bc899bSmrg ;; 138845bc899bSmrg -sunos5*) 138945bc899bSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 139045bc899bSmrg ;; 139145bc899bSmrg -sunos6*) 139245bc899bSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 139345bc899bSmrg ;; 139445bc899bSmrg -opened*) 139545bc899bSmrg os=-openedition 139645bc899bSmrg ;; 1397b40a6198Smrg -os400*) 139850f2e948Smrg os=-os400 139950f2e948Smrg ;; 140045bc899bSmrg -wince*) 140145bc899bSmrg os=-wince 140245bc899bSmrg ;; 140345bc899bSmrg -osfrose*) 140445bc899bSmrg os=-osfrose 140545bc899bSmrg ;; 140645bc899bSmrg -osf*) 140745bc899bSmrg os=-osf 140845bc899bSmrg ;; 140945bc899bSmrg -utek*) 141045bc899bSmrg os=-bsd 141145bc899bSmrg ;; 141245bc899bSmrg -dynix*) 141345bc899bSmrg os=-bsd 141445bc899bSmrg ;; 141545bc899bSmrg -acis*) 141645bc899bSmrg os=-aos 141745bc899bSmrg ;; 141845bc899bSmrg -atheos*) 141945bc899bSmrg os=-atheos 142045bc899bSmrg ;; 142150f2e948Smrg -syllable*) 142250f2e948Smrg os=-syllable 142350f2e948Smrg ;; 142445bc899bSmrg -386bsd) 142545bc899bSmrg os=-bsd 142645bc899bSmrg ;; 142745bc899bSmrg -ctix* | -uts*) 142845bc899bSmrg os=-sysv 142945bc899bSmrg ;; 143045bc899bSmrg -nova*) 143145bc899bSmrg os=-rtmk-nova 143245bc899bSmrg ;; 143345bc899bSmrg -ns2 ) 143445bc899bSmrg os=-nextstep2 143545bc899bSmrg ;; 143645bc899bSmrg -nsk*) 143745bc899bSmrg os=-nsk 143845bc899bSmrg ;; 143945bc899bSmrg # Preserve the version number of sinix5. 144045bc899bSmrg -sinix5.*) 144145bc899bSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 144245bc899bSmrg ;; 144345bc899bSmrg -sinix*) 144445bc899bSmrg os=-sysv4 144545bc899bSmrg ;; 1446b40a6198Smrg -tpf*) 144750f2e948Smrg os=-tpf 144850f2e948Smrg ;; 144945bc899bSmrg -triton*) 145045bc899bSmrg os=-sysv3 145145bc899bSmrg ;; 145245bc899bSmrg -oss*) 145345bc899bSmrg os=-sysv3 145445bc899bSmrg ;; 145545bc899bSmrg -svr4) 145645bc899bSmrg os=-sysv4 145745bc899bSmrg ;; 145845bc899bSmrg -svr3) 145945bc899bSmrg os=-sysv3 146045bc899bSmrg ;; 146145bc899bSmrg -sysvr4) 146245bc899bSmrg os=-sysv4 146345bc899bSmrg ;; 146445bc899bSmrg # This must come after -sysvr4. 146545bc899bSmrg -sysv*) 146645bc899bSmrg ;; 146745bc899bSmrg -ose*) 146845bc899bSmrg os=-ose 146945bc899bSmrg ;; 147045bc899bSmrg -es1800*) 147145bc899bSmrg os=-ose 147245bc899bSmrg ;; 147345bc899bSmrg -xenix) 147445bc899bSmrg os=-xenix 147545bc899bSmrg ;; 147645bc899bSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 147745bc899bSmrg os=-mint 147845bc899bSmrg ;; 147945bc899bSmrg -aros*) 148045bc899bSmrg os=-aros 148145bc899bSmrg ;; 148245bc899bSmrg -kaos*) 148345bc899bSmrg os=-kaos 148445bc899bSmrg ;; 148550f2e948Smrg -zvmoe) 148650f2e948Smrg os=-zvmoe 148750f2e948Smrg ;; 1488b40a6198Smrg -dicos*) 1489b40a6198Smrg os=-dicos 1490b40a6198Smrg ;; 1491b40a6198Smrg -nacl*) 1492b40a6198Smrg ;; 149345bc899bSmrg -none) 149445bc899bSmrg ;; 149545bc899bSmrg *) 149645bc899bSmrg # Get rid of the `-' at the beginning of $os. 149745bc899bSmrg os=`echo $os | sed 's/[^-]*-//'` 149845bc899bSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 149945bc899bSmrg exit 1 150045bc899bSmrg ;; 150145bc899bSmrgesac 150245bc899bSmrgelse 150345bc899bSmrg 150445bc899bSmrg# Here we handle the default operating systems that come with various machines. 150545bc899bSmrg# The value should be what the vendor currently ships out the door with their 150645bc899bSmrg# machine or put another way, the most popular os provided with the machine. 150745bc899bSmrg 150845bc899bSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 150945bc899bSmrg# "-sun"), then you have to tell the case statement up towards the top 151045bc899bSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 151145bc899bSmrg# will signal an error saying that MANUFACTURER isn't an operating 151245bc899bSmrg# system, and we'll never get to this point. 151345bc899bSmrg 151445bc899bSmrgcase $basic_machine in 1515b40a6198Smrg score-*) 151650f2e948Smrg os=-elf 151750f2e948Smrg ;; 1518b40a6198Smrg spu-*) 151950f2e948Smrg os=-elf 152050f2e948Smrg ;; 152145bc899bSmrg *-acorn) 152245bc899bSmrg os=-riscix1.2 152345bc899bSmrg ;; 152445bc899bSmrg arm*-rebel) 152545bc899bSmrg os=-linux 152645bc899bSmrg ;; 152745bc899bSmrg arm*-semi) 152845bc899bSmrg os=-aout 152945bc899bSmrg ;; 1530b40a6198Smrg c4x-* | tic4x-*) 1531b40a6198Smrg os=-coff 1532b40a6198Smrg ;; 1533b40a6198Smrg tic54x-*) 1534b40a6198Smrg os=-coff 1535b40a6198Smrg ;; 1536b40a6198Smrg tic55x-*) 1537b40a6198Smrg os=-coff 1538b40a6198Smrg ;; 1539b40a6198Smrg tic6x-*) 1540b40a6198Smrg os=-coff 154145bc899bSmrg ;; 154245bc899bSmrg # This must come before the *-dec entry. 154345bc899bSmrg pdp10-*) 154445bc899bSmrg os=-tops20 154545bc899bSmrg ;; 154645bc899bSmrg pdp11-*) 154745bc899bSmrg os=-none 154845bc899bSmrg ;; 154945bc899bSmrg *-dec | vax-*) 155045bc899bSmrg os=-ultrix4.2 155145bc899bSmrg ;; 155245bc899bSmrg m68*-apollo) 155345bc899bSmrg os=-domain 155445bc899bSmrg ;; 155545bc899bSmrg i386-sun) 155645bc899bSmrg os=-sunos4.0.2 155745bc899bSmrg ;; 155845bc899bSmrg m68000-sun) 155945bc899bSmrg os=-sunos3 156045bc899bSmrg ;; 156145bc899bSmrg m68*-cisco) 156245bc899bSmrg os=-aout 156345bc899bSmrg ;; 1564b40a6198Smrg mep-*) 156550f2e948Smrg os=-elf 156650f2e948Smrg ;; 156745bc899bSmrg mips*-cisco) 156845bc899bSmrg os=-elf 156945bc899bSmrg ;; 157045bc899bSmrg mips*-*) 157145bc899bSmrg os=-elf 157245bc899bSmrg ;; 157345bc899bSmrg or32-*) 157445bc899bSmrg os=-coff 157545bc899bSmrg ;; 157645bc899bSmrg *-tti) # must be before sparc entry or we get the wrong os. 157745bc899bSmrg os=-sysv3 157845bc899bSmrg ;; 157945bc899bSmrg sparc-* | *-sun) 158045bc899bSmrg os=-sunos4.1.1 158145bc899bSmrg ;; 158245bc899bSmrg *-be) 158345bc899bSmrg os=-beos 158445bc899bSmrg ;; 158550f2e948Smrg *-haiku) 158650f2e948Smrg os=-haiku 158750f2e948Smrg ;; 158845bc899bSmrg *-ibm) 158945bc899bSmrg os=-aix 159045bc899bSmrg ;; 1591b40a6198Smrg *-knuth) 159250f2e948Smrg os=-mmixware 159350f2e948Smrg ;; 159445bc899bSmrg *-wec) 159545bc899bSmrg os=-proelf 159645bc899bSmrg ;; 159745bc899bSmrg *-winbond) 159845bc899bSmrg os=-proelf 159945bc899bSmrg ;; 160045bc899bSmrg *-oki) 160145bc899bSmrg os=-proelf 160245bc899bSmrg ;; 160345bc899bSmrg *-hp) 160445bc899bSmrg os=-hpux 160545bc899bSmrg ;; 160645bc899bSmrg *-hitachi) 160745bc899bSmrg os=-hiux 160845bc899bSmrg ;; 160945bc899bSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 161045bc899bSmrg os=-sysv 161145bc899bSmrg ;; 161245bc899bSmrg *-cbm) 161345bc899bSmrg os=-amigaos 161445bc899bSmrg ;; 161545bc899bSmrg *-dg) 161645bc899bSmrg os=-dgux 161745bc899bSmrg ;; 161845bc899bSmrg *-dolphin) 161945bc899bSmrg os=-sysv3 162045bc899bSmrg ;; 162145bc899bSmrg m68k-ccur) 162245bc899bSmrg os=-rtu 162345bc899bSmrg ;; 162445bc899bSmrg m88k-omron*) 162545bc899bSmrg os=-luna 162645bc899bSmrg ;; 162745bc899bSmrg *-next ) 162845bc899bSmrg os=-nextstep 162945bc899bSmrg ;; 163045bc899bSmrg *-sequent) 163145bc899bSmrg os=-ptx 163245bc899bSmrg ;; 163345bc899bSmrg *-crds) 163445bc899bSmrg os=-unos 163545bc899bSmrg ;; 163645bc899bSmrg *-ns) 163745bc899bSmrg os=-genix 163845bc899bSmrg ;; 163945bc899bSmrg i370-*) 164045bc899bSmrg os=-mvs 164145bc899bSmrg ;; 164245bc899bSmrg *-next) 164345bc899bSmrg os=-nextstep3 164445bc899bSmrg ;; 164545bc899bSmrg *-gould) 164645bc899bSmrg os=-sysv 164745bc899bSmrg ;; 164845bc899bSmrg *-highlevel) 164945bc899bSmrg os=-bsd 165045bc899bSmrg ;; 165145bc899bSmrg *-encore) 165245bc899bSmrg os=-bsd 165345bc899bSmrg ;; 165445bc899bSmrg *-sgi) 165545bc899bSmrg os=-irix 165645bc899bSmrg ;; 165745bc899bSmrg *-siemens) 165845bc899bSmrg os=-sysv4 165945bc899bSmrg ;; 166045bc899bSmrg *-masscomp) 166145bc899bSmrg os=-rtu 166245bc899bSmrg ;; 166345bc899bSmrg f30[01]-fujitsu | f700-fujitsu) 166445bc899bSmrg os=-uxpv 166545bc899bSmrg ;; 166645bc899bSmrg *-rom68k) 166745bc899bSmrg os=-coff 166845bc899bSmrg ;; 166945bc899bSmrg *-*bug) 167045bc899bSmrg os=-coff 167145bc899bSmrg ;; 167245bc899bSmrg *-apple) 167345bc899bSmrg os=-macos 167445bc899bSmrg ;; 167545bc899bSmrg *-atari*) 167645bc899bSmrg os=-mint 167745bc899bSmrg ;; 167845bc899bSmrg *) 167945bc899bSmrg os=-none 168045bc899bSmrg ;; 168145bc899bSmrgesac 168245bc899bSmrgfi 168345bc899bSmrg 168445bc899bSmrg# Here we handle the case where we know the os, and the CPU type, but not the 168545bc899bSmrg# manufacturer. We pick the logical manufacturer. 168645bc899bSmrgvendor=unknown 168745bc899bSmrgcase $basic_machine in 168845bc899bSmrg *-unknown) 168945bc899bSmrg case $os in 169045bc899bSmrg -riscix*) 169145bc899bSmrg vendor=acorn 169245bc899bSmrg ;; 169345bc899bSmrg -sunos*) 169445bc899bSmrg vendor=sun 169545bc899bSmrg ;; 1696b40a6198Smrg -cnk*|-aix*) 169745bc899bSmrg vendor=ibm 169845bc899bSmrg ;; 169945bc899bSmrg -beos*) 170045bc899bSmrg vendor=be 170145bc899bSmrg ;; 170245bc899bSmrg -hpux*) 170345bc899bSmrg vendor=hp 170445bc899bSmrg ;; 170545bc899bSmrg -mpeix*) 170645bc899bSmrg vendor=hp 170745bc899bSmrg ;; 170845bc899bSmrg -hiux*) 170945bc899bSmrg vendor=hitachi 171045bc899bSmrg ;; 171145bc899bSmrg -unos*) 171245bc899bSmrg vendor=crds 171345bc899bSmrg ;; 171445bc899bSmrg -dgux*) 171545bc899bSmrg vendor=dg 171645bc899bSmrg ;; 171745bc899bSmrg -luna*) 171845bc899bSmrg vendor=omron 171945bc899bSmrg ;; 172045bc899bSmrg -genix*) 172145bc899bSmrg vendor=ns 172245bc899bSmrg ;; 172345bc899bSmrg -mvs* | -opened*) 172445bc899bSmrg vendor=ibm 172545bc899bSmrg ;; 172650f2e948Smrg -os400*) 172750f2e948Smrg vendor=ibm 172850f2e948Smrg ;; 172945bc899bSmrg -ptx*) 173045bc899bSmrg vendor=sequent 173145bc899bSmrg ;; 173250f2e948Smrg -tpf*) 173350f2e948Smrg vendor=ibm 173450f2e948Smrg ;; 173545bc899bSmrg -vxsim* | -vxworks* | -windiss*) 173645bc899bSmrg vendor=wrs 173745bc899bSmrg ;; 173845bc899bSmrg -aux*) 173945bc899bSmrg vendor=apple 174045bc899bSmrg ;; 174145bc899bSmrg -hms*) 174245bc899bSmrg vendor=hitachi 174345bc899bSmrg ;; 174445bc899bSmrg -mpw* | -macos*) 174545bc899bSmrg vendor=apple 174645bc899bSmrg ;; 174745bc899bSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 174845bc899bSmrg vendor=atari 174945bc899bSmrg ;; 175045bc899bSmrg -vos*) 175145bc899bSmrg vendor=stratus 175245bc899bSmrg ;; 175345bc899bSmrg esac 175445bc899bSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 175545bc899bSmrg ;; 175645bc899bSmrgesac 175745bc899bSmrg 175845bc899bSmrgecho $basic_machine$os 175950f2e948Smrgexit 176045bc899bSmrg 176145bc899bSmrg# Local variables: 176245bc899bSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 176345bc899bSmrg# time-stamp-start: "timestamp='" 176445bc899bSmrg# time-stamp-format: "%:y-%02m-%02d" 176545bc899bSmrg# time-stamp-end: "'" 176645bc899bSmrg# End: 1767