config.sub revision 11a29bac
141b2f0bdSmrg#! /bin/sh 241b2f0bdSmrg# Configuration validation subroutine script. 341b2f0bdSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 411a29bacSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 511245024Smrg# Free Software Foundation, Inc. 641b2f0bdSmrg 711a29bacSmrgtimestamp='2010-09-11' 841b2f0bdSmrg 941b2f0bdSmrg# This file is (in principle) common to ALL GNU software. 1041b2f0bdSmrg# The presence of a machine in this file suggests that SOME GNU software 1141b2f0bdSmrg# can handle that machine. It does not imply ALL GNU software can. 1241b2f0bdSmrg# 1341b2f0bdSmrg# This file is free software; you can redistribute it and/or modify 1441b2f0bdSmrg# it under the terms of the GNU General Public License as published by 1541b2f0bdSmrg# the Free Software Foundation; either version 2 of the License, or 1641b2f0bdSmrg# (at your option) any later version. 1741b2f0bdSmrg# 1841b2f0bdSmrg# This program is distributed in the hope that it will be useful, 1941b2f0bdSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2041b2f0bdSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2141b2f0bdSmrg# GNU General Public License for more details. 2241b2f0bdSmrg# 2341b2f0bdSmrg# You should have received a copy of the GNU General Public License 2441b2f0bdSmrg# along with this program; if not, write to the Free Software 2511245024Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2611245024Smrg# 02110-1301, USA. 2711245024Smrg# 2841b2f0bdSmrg# As a special exception to the GNU General Public License, if you 2941b2f0bdSmrg# distribute this file as part of a program that contains a 3041b2f0bdSmrg# configuration script generated by Autoconf, you may include it under 3141b2f0bdSmrg# the same distribution terms that you use for the rest of that program. 3241b2f0bdSmrg 3311245024Smrg 3441b2f0bdSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 3511a29bacSmrg# diff and a properly formatted GNU ChangeLog entry. 3641b2f0bdSmrg# 3741b2f0bdSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3841b2f0bdSmrg# Supply the specified configuration type as an argument. 3941b2f0bdSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 4041b2f0bdSmrg# Otherwise, we print the canonical config type on stdout and succeed. 4141b2f0bdSmrg 4211a29bacSmrg# You can get the latest version of this script from: 4311a29bacSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4411a29bacSmrg 4541b2f0bdSmrg# This file is supposed to be the same for all GNU packages 4641b2f0bdSmrg# and recognize all the CPU types, system types and aliases 4741b2f0bdSmrg# that are meaningful with *any* GNU software. 4841b2f0bdSmrg# Each package is responsible for reporting which valid configurations 4941b2f0bdSmrg# it does not support. The user should be able to distinguish 5041b2f0bdSmrg# a failure to support a valid configuration from a meaningless 5141b2f0bdSmrg# configuration. 5241b2f0bdSmrg 5341b2f0bdSmrg# The goal of this file is to map all the various variations of a given 5441b2f0bdSmrg# machine specification into a single specification in the form: 5541b2f0bdSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5641b2f0bdSmrg# or in some cases, the newer four-part form: 5741b2f0bdSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5841b2f0bdSmrg# It is wrong to echo any other type of specification. 5941b2f0bdSmrg 6041b2f0bdSmrgme=`echo "$0" | sed -e 's,.*/,,'` 6141b2f0bdSmrg 6241b2f0bdSmrgusage="\ 6341b2f0bdSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6441b2f0bdSmrg $0 [OPTION] ALIAS 6541b2f0bdSmrg 6641b2f0bdSmrgCanonicalize a configuration name. 6741b2f0bdSmrg 6841b2f0bdSmrgOperation modes: 6941b2f0bdSmrg -h, --help print this help, then exit 7041b2f0bdSmrg -t, --time-stamp print date of last modification, then exit 7141b2f0bdSmrg -v, --version print version number, then exit 7241b2f0bdSmrg 7341b2f0bdSmrgReport bugs and patches to <config-patches@gnu.org>." 7441b2f0bdSmrg 7541b2f0bdSmrgversion="\ 7641b2f0bdSmrgGNU config.sub ($timestamp) 7741b2f0bdSmrg 7811a29bacSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 7911a29bacSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 8011a29bacSmrgSoftware Foundation, Inc. 8141b2f0bdSmrg 8241b2f0bdSmrgThis is free software; see the source for copying conditions. There is NO 8341b2f0bdSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8441b2f0bdSmrg 8541b2f0bdSmrghelp=" 8641b2f0bdSmrgTry \`$me --help' for more information." 8741b2f0bdSmrg 8841b2f0bdSmrg# Parse command line 8941b2f0bdSmrgwhile test $# -gt 0 ; do 9041b2f0bdSmrg case $1 in 9141b2f0bdSmrg --time-stamp | --time* | -t ) 9211245024Smrg echo "$timestamp" ; exit ;; 9341b2f0bdSmrg --version | -v ) 9411245024Smrg echo "$version" ; exit ;; 9541b2f0bdSmrg --help | --h* | -h ) 9611245024Smrg echo "$usage"; exit ;; 9741b2f0bdSmrg -- ) # Stop option processing 9841b2f0bdSmrg shift; break ;; 9941b2f0bdSmrg - ) # Use stdin as input. 10041b2f0bdSmrg break ;; 10141b2f0bdSmrg -* ) 10241b2f0bdSmrg echo "$me: invalid option $1$help" 10341b2f0bdSmrg exit 1 ;; 10441b2f0bdSmrg 10541b2f0bdSmrg *local*) 10641b2f0bdSmrg # First pass through any local machine types. 10741b2f0bdSmrg echo $1 10811245024Smrg exit ;; 10941b2f0bdSmrg 11041b2f0bdSmrg * ) 11141b2f0bdSmrg break ;; 11241b2f0bdSmrg esac 11341b2f0bdSmrgdone 11441b2f0bdSmrg 11541b2f0bdSmrgcase $# in 11641b2f0bdSmrg 0) echo "$me: missing argument$help" >&2 11741b2f0bdSmrg exit 1;; 11841b2f0bdSmrg 1) ;; 11941b2f0bdSmrg *) echo "$me: too many arguments$help" >&2 12041b2f0bdSmrg exit 1;; 12141b2f0bdSmrgesac 12241b2f0bdSmrg 12341b2f0bdSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12441b2f0bdSmrg# Here we must recognize all the valid KERNEL-OS combinations. 12541b2f0bdSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12641b2f0bdSmrgcase $maybe_os in 12711a29bacSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 12811a29bacSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12911a29bacSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 13011a29bacSmrg kopensolaris*-gnu* | \ 13111245024Smrg storm-chaos* | os2-emx* | rtmk-nova*) 13241b2f0bdSmrg os=-$maybe_os 13341b2f0bdSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13441b2f0bdSmrg ;; 13541b2f0bdSmrg *) 13641b2f0bdSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13741b2f0bdSmrg if [ $basic_machine != $1 ] 13841b2f0bdSmrg then os=`echo $1 | sed 's/.*-/-/'` 13941b2f0bdSmrg else os=; fi 14041b2f0bdSmrg ;; 14141b2f0bdSmrgesac 14241b2f0bdSmrg 14341b2f0bdSmrg### Let's recognize common machines as not being operating systems so 14441b2f0bdSmrg### that things like config.sub decstation-3100 work. We also 14541b2f0bdSmrg### recognize some manufacturers as not being operating systems, so we 14641b2f0bdSmrg### can provide default operating systems below. 14741b2f0bdSmrgcase $os in 14841b2f0bdSmrg -sun*os*) 14941b2f0bdSmrg # Prevent following clause from handling this invalid input. 15041b2f0bdSmrg ;; 15141b2f0bdSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15241b2f0bdSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15341b2f0bdSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15441b2f0bdSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15541b2f0bdSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15641b2f0bdSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15711a29bacSmrg -apple | -axis | -knuth | -cray | -microblaze) 15841b2f0bdSmrg os= 15941b2f0bdSmrg basic_machine=$1 16041b2f0bdSmrg ;; 16111a29bacSmrg -bluegene*) 16211a29bacSmrg os=-cnk 16311a29bacSmrg ;; 16441b2f0bdSmrg -sim | -cisco | -oki | -wec | -winbond) 16541b2f0bdSmrg os= 16641b2f0bdSmrg basic_machine=$1 16741b2f0bdSmrg ;; 16841b2f0bdSmrg -scout) 16941b2f0bdSmrg ;; 17041b2f0bdSmrg -wrs) 17141b2f0bdSmrg os=-vxworks 17241b2f0bdSmrg basic_machine=$1 17341b2f0bdSmrg ;; 17441b2f0bdSmrg -chorusos*) 17541b2f0bdSmrg os=-chorusos 17641b2f0bdSmrg basic_machine=$1 17741b2f0bdSmrg ;; 17841b2f0bdSmrg -chorusrdb) 17941b2f0bdSmrg os=-chorusrdb 18041b2f0bdSmrg basic_machine=$1 18141b2f0bdSmrg ;; 18241b2f0bdSmrg -hiux*) 18341b2f0bdSmrg os=-hiuxwe2 18441b2f0bdSmrg ;; 18511245024Smrg -sco6) 18611245024Smrg os=-sco5v6 18711245024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18811245024Smrg ;; 18941b2f0bdSmrg -sco5) 19041b2f0bdSmrg os=-sco3.2v5 19141b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19241b2f0bdSmrg ;; 19341b2f0bdSmrg -sco4) 19441b2f0bdSmrg os=-sco3.2v4 19541b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19641b2f0bdSmrg ;; 19741b2f0bdSmrg -sco3.2.[4-9]*) 19841b2f0bdSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19941b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20041b2f0bdSmrg ;; 20141b2f0bdSmrg -sco3.2v[4-9]*) 20241b2f0bdSmrg # Don't forget version if it is 3.2v4 or newer. 20341b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20441b2f0bdSmrg ;; 20511245024Smrg -sco5v6*) 20611245024Smrg # Don't forget version if it is 3.2v4 or newer. 20711245024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20811245024Smrg ;; 20941b2f0bdSmrg -sco*) 21041b2f0bdSmrg os=-sco3.2v2 21141b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21241b2f0bdSmrg ;; 21341b2f0bdSmrg -udk*) 21441b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21541b2f0bdSmrg ;; 21641b2f0bdSmrg -isc) 21741b2f0bdSmrg os=-isc2.2 21841b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21941b2f0bdSmrg ;; 22041b2f0bdSmrg -clix*) 22141b2f0bdSmrg basic_machine=clipper-intergraph 22241b2f0bdSmrg ;; 22341b2f0bdSmrg -isc*) 22441b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22541b2f0bdSmrg ;; 22641b2f0bdSmrg -lynx*) 22741b2f0bdSmrg os=-lynxos 22841b2f0bdSmrg ;; 22941b2f0bdSmrg -ptx*) 23041b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23141b2f0bdSmrg ;; 23241b2f0bdSmrg -windowsnt*) 23341b2f0bdSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23441b2f0bdSmrg ;; 23541b2f0bdSmrg -psos*) 23641b2f0bdSmrg os=-psos 23741b2f0bdSmrg ;; 23841b2f0bdSmrg -mint | -mint[0-9]*) 23941b2f0bdSmrg basic_machine=m68k-atari 24041b2f0bdSmrg os=-mint 24141b2f0bdSmrg ;; 24241b2f0bdSmrgesac 24341b2f0bdSmrg 24441b2f0bdSmrg# Decode aliases for certain CPU-COMPANY combinations. 24541b2f0bdSmrgcase $basic_machine in 24641b2f0bdSmrg # Recognize the basic CPU types without company name. 24741b2f0bdSmrg # Some are omitted here because they have special meanings below. 24841b2f0bdSmrg 1750a | 580 \ 24941b2f0bdSmrg | a29k \ 25041b2f0bdSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25141b2f0bdSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25211245024Smrg | am33_2.0 \ 25311245024Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 25411245024Smrg | bfin \ 25541b2f0bdSmrg | c4x | clipper \ 25641b2f0bdSmrg | d10v | d30v | dlx | dsp16xx \ 25711245024Smrg | fido | fr30 | frv \ 25841b2f0bdSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 25941b2f0bdSmrg | i370 | i860 | i960 | ia64 \ 26011245024Smrg | ip2k | iq2000 \ 26111a29bacSmrg | lm32 \ 26211245024Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 26311a29bacSmrg | maxq | mb | microblaze | mcore | mep | metag \ 26441b2f0bdSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26541b2f0bdSmrg | mips16 \ 26641b2f0bdSmrg | mips64 | mips64el \ 26711a29bacSmrg | mips64octeon | mips64octeonel \ 26841b2f0bdSmrg | mips64orion | mips64orionel \ 26911a29bacSmrg | mips64r5900 | mips64r5900el \ 27011a29bacSmrg | mips64vr | mips64vrel \ 27141b2f0bdSmrg | mips64vr4100 | mips64vr4100el \ 27241b2f0bdSmrg | mips64vr4300 | mips64vr4300el \ 27341b2f0bdSmrg | mips64vr5000 | mips64vr5000el \ 27411245024Smrg | mips64vr5900 | mips64vr5900el \ 27541b2f0bdSmrg | mipsisa32 | mipsisa32el \ 27641b2f0bdSmrg | mipsisa32r2 | mipsisa32r2el \ 27741b2f0bdSmrg | mipsisa64 | mipsisa64el \ 27811245024Smrg | mipsisa64r2 | mipsisa64r2el \ 27941b2f0bdSmrg | mipsisa64sb1 | mipsisa64sb1el \ 28041b2f0bdSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 28141b2f0bdSmrg | mipstx39 | mipstx39el \ 28241b2f0bdSmrg | mn10200 | mn10300 \ 28311a29bacSmrg | moxie \ 28411245024Smrg | mt \ 28541b2f0bdSmrg | msp430 \ 28611a29bacSmrg | nds32 | nds32le | nds32be \ 28711245024Smrg | nios | nios2 \ 28841b2f0bdSmrg | ns16k | ns32k \ 28911245024Smrg | or32 \ 29041b2f0bdSmrg | pdp10 | pdp11 | pj | pjl \ 29141b2f0bdSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 29241b2f0bdSmrg | pyramid \ 29311a29bacSmrg | rx \ 29411245024Smrg | score \ 29511a29bacSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 29641b2f0bdSmrg | sh64 | sh64le \ 29711245024Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 29811245024Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 29911245024Smrg | spu | strongarm \ 30011a29bacSmrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 30111a29bacSmrg | ubicom32 \ 30241b2f0bdSmrg | v850 | v850e \ 30341b2f0bdSmrg | we32k \ 30411245024Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 30511a29bacSmrg | z8k | z80) 30641b2f0bdSmrg basic_machine=$basic_machine-unknown 30741b2f0bdSmrg ;; 30811a29bacSmrg c54x) 30911a29bacSmrg basic_machine=tic54x-unknown 31011a29bacSmrg ;; 31111a29bacSmrg c55x) 31211a29bacSmrg basic_machine=tic55x-unknown 31311a29bacSmrg ;; 31411a29bacSmrg c6x) 31511a29bacSmrg basic_machine=tic6x-unknown 31611a29bacSmrg ;; 31711a29bacSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 31841b2f0bdSmrg # Motorola 68HC11/12. 31941b2f0bdSmrg basic_machine=$basic_machine-unknown 32041b2f0bdSmrg os=-none 32141b2f0bdSmrg ;; 32241b2f0bdSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32341b2f0bdSmrg ;; 32411245024Smrg ms1) 32511245024Smrg basic_machine=mt-unknown 32611245024Smrg ;; 32741b2f0bdSmrg 32841b2f0bdSmrg # We use `pc' rather than `unknown' 32941b2f0bdSmrg # because (1) that's what they normally are, and 33041b2f0bdSmrg # (2) the word "unknown" tends to confuse beginning users. 33141b2f0bdSmrg i*86 | x86_64) 33241b2f0bdSmrg basic_machine=$basic_machine-pc 33341b2f0bdSmrg ;; 33441b2f0bdSmrg # Object if more than one company name word. 33541b2f0bdSmrg *-*-*) 33641b2f0bdSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 33741b2f0bdSmrg exit 1 33841b2f0bdSmrg ;; 33941b2f0bdSmrg # Recognize the basic CPU types with company name. 34041b2f0bdSmrg 580-* \ 34141b2f0bdSmrg | a29k-* \ 34241b2f0bdSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 34341b2f0bdSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 34441b2f0bdSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 34541b2f0bdSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 34611245024Smrg | avr-* | avr32-* \ 34711245024Smrg | bfin-* | bs2000-* \ 34811a29bacSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 34911245024Smrg | clipper-* | craynv-* | cydra-* \ 35041b2f0bdSmrg | d10v-* | d30v-* | dlx-* \ 35141b2f0bdSmrg | elxsi-* \ 35211245024Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 35341b2f0bdSmrg | h8300-* | h8500-* \ 35441b2f0bdSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 35541b2f0bdSmrg | i*86-* | i860-* | i960-* | ia64-* \ 35611245024Smrg | ip2k-* | iq2000-* \ 35711a29bacSmrg | lm32-* \ 35811245024Smrg | m32c-* | m32r-* | m32rle-* \ 35941b2f0bdSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 36011a29bacSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 36141b2f0bdSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 36241b2f0bdSmrg | mips16-* \ 36341b2f0bdSmrg | mips64-* | mips64el-* \ 36411a29bacSmrg | mips64octeon-* | mips64octeonel-* \ 36541b2f0bdSmrg | mips64orion-* | mips64orionel-* \ 36611a29bacSmrg | mips64r5900-* | mips64r5900el-* \ 36711a29bacSmrg | mips64vr-* | mips64vrel-* \ 36841b2f0bdSmrg | mips64vr4100-* | mips64vr4100el-* \ 36941b2f0bdSmrg | mips64vr4300-* | mips64vr4300el-* \ 37041b2f0bdSmrg | mips64vr5000-* | mips64vr5000el-* \ 37111245024Smrg | mips64vr5900-* | mips64vr5900el-* \ 37241b2f0bdSmrg | mipsisa32-* | mipsisa32el-* \ 37341b2f0bdSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 37441b2f0bdSmrg | mipsisa64-* | mipsisa64el-* \ 37511245024Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 37641b2f0bdSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 37741b2f0bdSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 37841b2f0bdSmrg | mipstx39-* | mipstx39el-* \ 37911245024Smrg | mmix-* \ 38011245024Smrg | mt-* \ 38141b2f0bdSmrg | msp430-* \ 38211a29bacSmrg | nds32-* | nds32le-* | nds32be-* \ 38311245024Smrg | nios-* | nios2-* \ 38411245024Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 38541b2f0bdSmrg | orion-* \ 38641b2f0bdSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 38741b2f0bdSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 38841b2f0bdSmrg | pyramid-* \ 38911a29bacSmrg | romp-* | rs6000-* | rx-* \ 39011a29bacSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 39141b2f0bdSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 39211245024Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 39311245024Smrg | sparclite-* \ 39411245024Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 39541b2f0bdSmrg | tahoe-* | thumb-* \ 39641b2f0bdSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 39711a29bacSmrg | tile-* | tilegx-* \ 39841b2f0bdSmrg | tron-* \ 39911a29bacSmrg | ubicom32-* \ 40041b2f0bdSmrg | v850-* | v850e-* | vax-* \ 40141b2f0bdSmrg | we32k-* \ 40211245024Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 40311245024Smrg | xstormy16-* | xtensa*-* \ 40441b2f0bdSmrg | ymp-* \ 40511a29bacSmrg | z8k-* | z80-*) 40641b2f0bdSmrg ;; 40711245024Smrg # Recognize the basic CPU types without company name, with glob match. 40811245024Smrg xtensa*) 40911245024Smrg basic_machine=$basic_machine-unknown 41011245024Smrg ;; 41141b2f0bdSmrg # Recognize the various machine names and aliases which stand 41241b2f0bdSmrg # for a CPU type and a company and sometimes even an OS. 41341b2f0bdSmrg 386bsd) 41441b2f0bdSmrg basic_machine=i386-unknown 41541b2f0bdSmrg os=-bsd 41641b2f0bdSmrg ;; 41741b2f0bdSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 41841b2f0bdSmrg basic_machine=m68000-att 41941b2f0bdSmrg ;; 42041b2f0bdSmrg 3b*) 42141b2f0bdSmrg basic_machine=we32k-att 42241b2f0bdSmrg ;; 42341b2f0bdSmrg a29khif) 42441b2f0bdSmrg basic_machine=a29k-amd 42541b2f0bdSmrg os=-udi 42641b2f0bdSmrg ;; 42711245024Smrg abacus) 42811245024Smrg basic_machine=abacus-unknown 42911245024Smrg ;; 43041b2f0bdSmrg adobe68k) 43141b2f0bdSmrg basic_machine=m68010-adobe 43241b2f0bdSmrg os=-scout 43341b2f0bdSmrg ;; 43441b2f0bdSmrg alliant | fx80) 43541b2f0bdSmrg basic_machine=fx80-alliant 43641b2f0bdSmrg ;; 43741b2f0bdSmrg altos | altos3068) 43841b2f0bdSmrg basic_machine=m68k-altos 43941b2f0bdSmrg ;; 44041b2f0bdSmrg am29k) 44141b2f0bdSmrg basic_machine=a29k-none 44241b2f0bdSmrg os=-bsd 44341b2f0bdSmrg ;; 44441b2f0bdSmrg amd64) 44541b2f0bdSmrg basic_machine=x86_64-pc 44641b2f0bdSmrg ;; 44711245024Smrg amd64-*) 44811245024Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 44911245024Smrg ;; 45041b2f0bdSmrg amdahl) 45141b2f0bdSmrg basic_machine=580-amdahl 45241b2f0bdSmrg os=-sysv 45341b2f0bdSmrg ;; 45441b2f0bdSmrg amiga | amiga-*) 45541b2f0bdSmrg basic_machine=m68k-unknown 45641b2f0bdSmrg ;; 45741b2f0bdSmrg amigaos | amigados) 45841b2f0bdSmrg basic_machine=m68k-unknown 45941b2f0bdSmrg os=-amigaos 46041b2f0bdSmrg ;; 46141b2f0bdSmrg amigaunix | amix) 46241b2f0bdSmrg basic_machine=m68k-unknown 46341b2f0bdSmrg os=-sysv4 46441b2f0bdSmrg ;; 46541b2f0bdSmrg apollo68) 46641b2f0bdSmrg basic_machine=m68k-apollo 46741b2f0bdSmrg os=-sysv 46841b2f0bdSmrg ;; 46941b2f0bdSmrg apollo68bsd) 47041b2f0bdSmrg basic_machine=m68k-apollo 47141b2f0bdSmrg os=-bsd 47241b2f0bdSmrg ;; 47311a29bacSmrg aros) 47411a29bacSmrg basic_machine=i386-pc 47511a29bacSmrg os=-aros 47611a29bacSmrg ;; 47741b2f0bdSmrg aux) 47841b2f0bdSmrg basic_machine=m68k-apple 47941b2f0bdSmrg os=-aux 48041b2f0bdSmrg ;; 48141b2f0bdSmrg balance) 48241b2f0bdSmrg basic_machine=ns32k-sequent 48341b2f0bdSmrg os=-dynix 48441b2f0bdSmrg ;; 48511245024Smrg blackfin) 48611245024Smrg basic_machine=bfin-unknown 48711245024Smrg os=-linux 48811245024Smrg ;; 48911245024Smrg blackfin-*) 49011245024Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 49111245024Smrg os=-linux 49211245024Smrg ;; 49311a29bacSmrg bluegene*) 49411a29bacSmrg basic_machine=powerpc-ibm 49511a29bacSmrg os=-cnk 49611a29bacSmrg ;; 49711a29bacSmrg c54x-*) 49811a29bacSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 49911a29bacSmrg ;; 50011a29bacSmrg c55x-*) 50111a29bacSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 50211a29bacSmrg ;; 50311a29bacSmrg c6x-*) 50411a29bacSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 50511a29bacSmrg ;; 50641b2f0bdSmrg c90) 50741b2f0bdSmrg basic_machine=c90-cray 50841b2f0bdSmrg os=-unicos 50941b2f0bdSmrg ;; 51011a29bacSmrg cegcc) 51111a29bacSmrg basic_machine=arm-unknown 51211a29bacSmrg os=-cegcc 51311a29bacSmrg ;; 51441b2f0bdSmrg convex-c1) 51541b2f0bdSmrg basic_machine=c1-convex 51641b2f0bdSmrg os=-bsd 51741b2f0bdSmrg ;; 51841b2f0bdSmrg convex-c2) 51941b2f0bdSmrg basic_machine=c2-convex 52041b2f0bdSmrg os=-bsd 52141b2f0bdSmrg ;; 52241b2f0bdSmrg convex-c32) 52341b2f0bdSmrg basic_machine=c32-convex 52441b2f0bdSmrg os=-bsd 52541b2f0bdSmrg ;; 52641b2f0bdSmrg convex-c34) 52741b2f0bdSmrg basic_machine=c34-convex 52841b2f0bdSmrg os=-bsd 52941b2f0bdSmrg ;; 53041b2f0bdSmrg convex-c38) 53141b2f0bdSmrg basic_machine=c38-convex 53241b2f0bdSmrg os=-bsd 53341b2f0bdSmrg ;; 53441b2f0bdSmrg cray | j90) 53541b2f0bdSmrg basic_machine=j90-cray 53641b2f0bdSmrg os=-unicos 53741b2f0bdSmrg ;; 53811245024Smrg craynv) 53911245024Smrg basic_machine=craynv-cray 54011245024Smrg os=-unicosmp 54111245024Smrg ;; 54211245024Smrg cr16) 54311245024Smrg basic_machine=cr16-unknown 54411245024Smrg os=-elf 54511245024Smrg ;; 54641b2f0bdSmrg crds | unos) 54741b2f0bdSmrg basic_machine=m68k-crds 54841b2f0bdSmrg ;; 54911245024Smrg crisv32 | crisv32-* | etraxfs*) 55011245024Smrg basic_machine=crisv32-axis 55111245024Smrg ;; 55241b2f0bdSmrg cris | cris-* | etrax*) 55341b2f0bdSmrg basic_machine=cris-axis 55441b2f0bdSmrg ;; 55511245024Smrg crx) 55611245024Smrg basic_machine=crx-unknown 55711245024Smrg os=-elf 55811245024Smrg ;; 55941b2f0bdSmrg da30 | da30-*) 56041b2f0bdSmrg basic_machine=m68k-da30 56141b2f0bdSmrg ;; 56241b2f0bdSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 56341b2f0bdSmrg basic_machine=mips-dec 56441b2f0bdSmrg ;; 56541b2f0bdSmrg decsystem10* | dec10*) 56641b2f0bdSmrg basic_machine=pdp10-dec 56741b2f0bdSmrg os=-tops10 56841b2f0bdSmrg ;; 56941b2f0bdSmrg decsystem20* | dec20*) 57041b2f0bdSmrg basic_machine=pdp10-dec 57141b2f0bdSmrg os=-tops20 57241b2f0bdSmrg ;; 57341b2f0bdSmrg delta | 3300 | motorola-3300 | motorola-delta \ 57441b2f0bdSmrg | 3300-motorola | delta-motorola) 57541b2f0bdSmrg basic_machine=m68k-motorola 57641b2f0bdSmrg ;; 57741b2f0bdSmrg delta88) 57841b2f0bdSmrg basic_machine=m88k-motorola 57941b2f0bdSmrg os=-sysv3 58041b2f0bdSmrg ;; 58111a29bacSmrg dicos) 58211a29bacSmrg basic_machine=i686-pc 58311a29bacSmrg os=-dicos 58411a29bacSmrg ;; 58511245024Smrg djgpp) 58611245024Smrg basic_machine=i586-pc 58711245024Smrg os=-msdosdjgpp 58811245024Smrg ;; 58941b2f0bdSmrg dpx20 | dpx20-*) 59041b2f0bdSmrg basic_machine=rs6000-bull 59141b2f0bdSmrg os=-bosx 59241b2f0bdSmrg ;; 59341b2f0bdSmrg dpx2* | dpx2*-bull) 59441b2f0bdSmrg basic_machine=m68k-bull 59541b2f0bdSmrg os=-sysv3 59641b2f0bdSmrg ;; 59741b2f0bdSmrg ebmon29k) 59841b2f0bdSmrg basic_machine=a29k-amd 59941b2f0bdSmrg os=-ebmon 60041b2f0bdSmrg ;; 60141b2f0bdSmrg elxsi) 60241b2f0bdSmrg basic_machine=elxsi-elxsi 60341b2f0bdSmrg os=-bsd 60441b2f0bdSmrg ;; 60541b2f0bdSmrg encore | umax | mmax) 60641b2f0bdSmrg basic_machine=ns32k-encore 60741b2f0bdSmrg ;; 60841b2f0bdSmrg es1800 | OSE68k | ose68k | ose | OSE) 60941b2f0bdSmrg basic_machine=m68k-ericsson 61041b2f0bdSmrg os=-ose 61141b2f0bdSmrg ;; 61241b2f0bdSmrg fx2800) 61341b2f0bdSmrg basic_machine=i860-alliant 61441b2f0bdSmrg ;; 61541b2f0bdSmrg genix) 61641b2f0bdSmrg basic_machine=ns32k-ns 61741b2f0bdSmrg ;; 61841b2f0bdSmrg gmicro) 61941b2f0bdSmrg basic_machine=tron-gmicro 62041b2f0bdSmrg os=-sysv 62141b2f0bdSmrg ;; 62241b2f0bdSmrg go32) 62341b2f0bdSmrg basic_machine=i386-pc 62441b2f0bdSmrg os=-go32 62541b2f0bdSmrg ;; 62641b2f0bdSmrg h3050r* | hiux*) 62741b2f0bdSmrg basic_machine=hppa1.1-hitachi 62841b2f0bdSmrg os=-hiuxwe2 62941b2f0bdSmrg ;; 63041b2f0bdSmrg h8300hms) 63141b2f0bdSmrg basic_machine=h8300-hitachi 63241b2f0bdSmrg os=-hms 63341b2f0bdSmrg ;; 63441b2f0bdSmrg h8300xray) 63541b2f0bdSmrg basic_machine=h8300-hitachi 63641b2f0bdSmrg os=-xray 63741b2f0bdSmrg ;; 63841b2f0bdSmrg h8500hms) 63941b2f0bdSmrg basic_machine=h8500-hitachi 64041b2f0bdSmrg os=-hms 64141b2f0bdSmrg ;; 64241b2f0bdSmrg harris) 64341b2f0bdSmrg basic_machine=m88k-harris 64441b2f0bdSmrg os=-sysv3 64541b2f0bdSmrg ;; 64641b2f0bdSmrg hp300-*) 64741b2f0bdSmrg basic_machine=m68k-hp 64841b2f0bdSmrg ;; 64941b2f0bdSmrg hp300bsd) 65041b2f0bdSmrg basic_machine=m68k-hp 65141b2f0bdSmrg os=-bsd 65241b2f0bdSmrg ;; 65341b2f0bdSmrg hp300hpux) 65441b2f0bdSmrg basic_machine=m68k-hp 65541b2f0bdSmrg os=-hpux 65641b2f0bdSmrg ;; 65741b2f0bdSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 65841b2f0bdSmrg basic_machine=hppa1.0-hp 65941b2f0bdSmrg ;; 66041b2f0bdSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 66141b2f0bdSmrg basic_machine=m68000-hp 66241b2f0bdSmrg ;; 66341b2f0bdSmrg hp9k3[2-9][0-9]) 66441b2f0bdSmrg basic_machine=m68k-hp 66541b2f0bdSmrg ;; 66641b2f0bdSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 66741b2f0bdSmrg basic_machine=hppa1.0-hp 66841b2f0bdSmrg ;; 66941b2f0bdSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 67041b2f0bdSmrg basic_machine=hppa1.1-hp 67141b2f0bdSmrg ;; 67241b2f0bdSmrg hp9k78[0-9] | hp78[0-9]) 67341b2f0bdSmrg # FIXME: really hppa2.0-hp 67441b2f0bdSmrg basic_machine=hppa1.1-hp 67541b2f0bdSmrg ;; 67641b2f0bdSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 67741b2f0bdSmrg # FIXME: really hppa2.0-hp 67841b2f0bdSmrg basic_machine=hppa1.1-hp 67941b2f0bdSmrg ;; 68041b2f0bdSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 68141b2f0bdSmrg basic_machine=hppa1.1-hp 68241b2f0bdSmrg ;; 68341b2f0bdSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 68441b2f0bdSmrg basic_machine=hppa1.0-hp 68541b2f0bdSmrg ;; 68641b2f0bdSmrg hppa-next) 68741b2f0bdSmrg os=-nextstep3 68841b2f0bdSmrg ;; 68941b2f0bdSmrg hppaosf) 69041b2f0bdSmrg basic_machine=hppa1.1-hp 69141b2f0bdSmrg os=-osf 69241b2f0bdSmrg ;; 69341b2f0bdSmrg hppro) 69441b2f0bdSmrg basic_machine=hppa1.1-hp 69541b2f0bdSmrg os=-proelf 69641b2f0bdSmrg ;; 69741b2f0bdSmrg i370-ibm* | ibm*) 69841b2f0bdSmrg basic_machine=i370-ibm 69941b2f0bdSmrg ;; 70041b2f0bdSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 70141b2f0bdSmrg i*86v32) 70241b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 70341b2f0bdSmrg os=-sysv32 70441b2f0bdSmrg ;; 70541b2f0bdSmrg i*86v4*) 70641b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 70741b2f0bdSmrg os=-sysv4 70841b2f0bdSmrg ;; 70941b2f0bdSmrg i*86v) 71041b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 71141b2f0bdSmrg os=-sysv 71241b2f0bdSmrg ;; 71341b2f0bdSmrg i*86sol2) 71441b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 71541b2f0bdSmrg os=-solaris2 71641b2f0bdSmrg ;; 71741b2f0bdSmrg i386mach) 71841b2f0bdSmrg basic_machine=i386-mach 71941b2f0bdSmrg os=-mach 72041b2f0bdSmrg ;; 72141b2f0bdSmrg i386-vsta | vsta) 72241b2f0bdSmrg basic_machine=i386-unknown 72341b2f0bdSmrg os=-vsta 72441b2f0bdSmrg ;; 72541b2f0bdSmrg iris | iris4d) 72641b2f0bdSmrg basic_machine=mips-sgi 72741b2f0bdSmrg case $os in 72841b2f0bdSmrg -irix*) 72941b2f0bdSmrg ;; 73041b2f0bdSmrg *) 73141b2f0bdSmrg os=-irix4 73241b2f0bdSmrg ;; 73341b2f0bdSmrg esac 73441b2f0bdSmrg ;; 73541b2f0bdSmrg isi68 | isi) 73641b2f0bdSmrg basic_machine=m68k-isi 73741b2f0bdSmrg os=-sysv 73841b2f0bdSmrg ;; 73911245024Smrg m68knommu) 74011245024Smrg basic_machine=m68k-unknown 74111245024Smrg os=-linux 74211245024Smrg ;; 74311245024Smrg m68knommu-*) 74411245024Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 74511245024Smrg os=-linux 74611245024Smrg ;; 74741b2f0bdSmrg m88k-omron*) 74841b2f0bdSmrg basic_machine=m88k-omron 74941b2f0bdSmrg ;; 75041b2f0bdSmrg magnum | m3230) 75141b2f0bdSmrg basic_machine=mips-mips 75241b2f0bdSmrg os=-sysv 75341b2f0bdSmrg ;; 75441b2f0bdSmrg merlin) 75541b2f0bdSmrg basic_machine=ns32k-utek 75641b2f0bdSmrg os=-sysv 75741b2f0bdSmrg ;; 75811a29bacSmrg microblaze) 75911a29bacSmrg basic_machine=microblaze-xilinx 76011a29bacSmrg ;; 76141b2f0bdSmrg mingw32) 76241b2f0bdSmrg basic_machine=i386-pc 76341b2f0bdSmrg os=-mingw32 76441b2f0bdSmrg ;; 76511245024Smrg mingw32ce) 76611245024Smrg basic_machine=arm-unknown 76711245024Smrg os=-mingw32ce 76811245024Smrg ;; 76941b2f0bdSmrg miniframe) 77041b2f0bdSmrg basic_machine=m68000-convergent 77141b2f0bdSmrg ;; 77241b2f0bdSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 77341b2f0bdSmrg basic_machine=m68k-atari 77441b2f0bdSmrg os=-mint 77541b2f0bdSmrg ;; 77641b2f0bdSmrg mips3*-*) 77741b2f0bdSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 77841b2f0bdSmrg ;; 77941b2f0bdSmrg mips3*) 78041b2f0bdSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 78141b2f0bdSmrg ;; 78241b2f0bdSmrg monitor) 78341b2f0bdSmrg basic_machine=m68k-rom68k 78441b2f0bdSmrg os=-coff 78541b2f0bdSmrg ;; 78641b2f0bdSmrg morphos) 78741b2f0bdSmrg basic_machine=powerpc-unknown 78841b2f0bdSmrg os=-morphos 78941b2f0bdSmrg ;; 79041b2f0bdSmrg msdos) 79141b2f0bdSmrg basic_machine=i386-pc 79241b2f0bdSmrg os=-msdos 79341b2f0bdSmrg ;; 79411245024Smrg ms1-*) 79511245024Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 79611245024Smrg ;; 79741b2f0bdSmrg mvs) 79841b2f0bdSmrg basic_machine=i370-ibm 79941b2f0bdSmrg os=-mvs 80041b2f0bdSmrg ;; 80141b2f0bdSmrg ncr3000) 80241b2f0bdSmrg basic_machine=i486-ncr 80341b2f0bdSmrg os=-sysv4 80441b2f0bdSmrg ;; 80541b2f0bdSmrg netbsd386) 80641b2f0bdSmrg basic_machine=i386-unknown 80741b2f0bdSmrg os=-netbsd 80841b2f0bdSmrg ;; 80941b2f0bdSmrg netwinder) 81041b2f0bdSmrg basic_machine=armv4l-rebel 81141b2f0bdSmrg os=-linux 81241b2f0bdSmrg ;; 81341b2f0bdSmrg news | news700 | news800 | news900) 81441b2f0bdSmrg basic_machine=m68k-sony 81541b2f0bdSmrg os=-newsos 81641b2f0bdSmrg ;; 81741b2f0bdSmrg news1000) 81841b2f0bdSmrg basic_machine=m68030-sony 81941b2f0bdSmrg os=-newsos 82041b2f0bdSmrg ;; 82141b2f0bdSmrg news-3600 | risc-news) 82241b2f0bdSmrg basic_machine=mips-sony 82341b2f0bdSmrg os=-newsos 82441b2f0bdSmrg ;; 82541b2f0bdSmrg necv70) 82641b2f0bdSmrg basic_machine=v70-nec 82741b2f0bdSmrg os=-sysv 82841b2f0bdSmrg ;; 82941b2f0bdSmrg next | m*-next ) 83041b2f0bdSmrg basic_machine=m68k-next 83141b2f0bdSmrg case $os in 83241b2f0bdSmrg -nextstep* ) 83341b2f0bdSmrg ;; 83441b2f0bdSmrg -ns2*) 83541b2f0bdSmrg os=-nextstep2 83641b2f0bdSmrg ;; 83741b2f0bdSmrg *) 83841b2f0bdSmrg os=-nextstep3 83941b2f0bdSmrg ;; 84041b2f0bdSmrg esac 84141b2f0bdSmrg ;; 84241b2f0bdSmrg nh3000) 84341b2f0bdSmrg basic_machine=m68k-harris 84441b2f0bdSmrg os=-cxux 84541b2f0bdSmrg ;; 84641b2f0bdSmrg nh[45]000) 84741b2f0bdSmrg basic_machine=m88k-harris 84841b2f0bdSmrg os=-cxux 84941b2f0bdSmrg ;; 85041b2f0bdSmrg nindy960) 85141b2f0bdSmrg basic_machine=i960-intel 85241b2f0bdSmrg os=-nindy 85341b2f0bdSmrg ;; 85441b2f0bdSmrg mon960) 85541b2f0bdSmrg basic_machine=i960-intel 85641b2f0bdSmrg os=-mon960 85741b2f0bdSmrg ;; 85841b2f0bdSmrg nonstopux) 85941b2f0bdSmrg basic_machine=mips-compaq 86041b2f0bdSmrg os=-nonstopux 86141b2f0bdSmrg ;; 86241b2f0bdSmrg np1) 86341b2f0bdSmrg basic_machine=np1-gould 86441b2f0bdSmrg ;; 86511a29bacSmrg neo-tandem) 86611a29bacSmrg basic_machine=neo-tandem 86711a29bacSmrg ;; 86811a29bacSmrg nse-tandem) 86911a29bacSmrg basic_machine=nse-tandem 87011a29bacSmrg ;; 87141b2f0bdSmrg nsr-tandem) 87241b2f0bdSmrg basic_machine=nsr-tandem 87341b2f0bdSmrg ;; 87441b2f0bdSmrg op50n-* | op60c-*) 87541b2f0bdSmrg basic_machine=hppa1.1-oki 87641b2f0bdSmrg os=-proelf 87741b2f0bdSmrg ;; 87811245024Smrg openrisc | openrisc-*) 87941b2f0bdSmrg basic_machine=or32-unknown 88011245024Smrg ;; 88111245024Smrg os400) 88211245024Smrg basic_machine=powerpc-ibm 88311245024Smrg os=-os400 88441b2f0bdSmrg ;; 88541b2f0bdSmrg OSE68000 | ose68000) 88641b2f0bdSmrg basic_machine=m68000-ericsson 88741b2f0bdSmrg os=-ose 88841b2f0bdSmrg ;; 88941b2f0bdSmrg os68k) 89041b2f0bdSmrg basic_machine=m68k-none 89141b2f0bdSmrg os=-os68k 89241b2f0bdSmrg ;; 89341b2f0bdSmrg pa-hitachi) 89441b2f0bdSmrg basic_machine=hppa1.1-hitachi 89541b2f0bdSmrg os=-hiuxwe2 89641b2f0bdSmrg ;; 89741b2f0bdSmrg paragon) 89841b2f0bdSmrg basic_machine=i860-intel 89941b2f0bdSmrg os=-osf 90041b2f0bdSmrg ;; 90111245024Smrg parisc) 90211245024Smrg basic_machine=hppa-unknown 90311245024Smrg os=-linux 90411245024Smrg ;; 90511245024Smrg parisc-*) 90611245024Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 90711245024Smrg os=-linux 90811245024Smrg ;; 90941b2f0bdSmrg pbd) 91041b2f0bdSmrg basic_machine=sparc-tti 91141b2f0bdSmrg ;; 91241b2f0bdSmrg pbb) 91341b2f0bdSmrg basic_machine=m68k-tti 91441b2f0bdSmrg ;; 91541b2f0bdSmrg pc532 | pc532-*) 91641b2f0bdSmrg basic_machine=ns32k-pc532 91741b2f0bdSmrg ;; 91811245024Smrg pc98) 91911245024Smrg basic_machine=i386-pc 92011245024Smrg ;; 92111245024Smrg pc98-*) 92211245024Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 92311245024Smrg ;; 92441b2f0bdSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 92541b2f0bdSmrg basic_machine=i586-pc 92641b2f0bdSmrg ;; 92741b2f0bdSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 92841b2f0bdSmrg basic_machine=i686-pc 92941b2f0bdSmrg ;; 93041b2f0bdSmrg pentiumii | pentium2 | pentiumiii | pentium3) 93141b2f0bdSmrg basic_machine=i686-pc 93241b2f0bdSmrg ;; 93341b2f0bdSmrg pentium4) 93441b2f0bdSmrg basic_machine=i786-pc 93541b2f0bdSmrg ;; 93641b2f0bdSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 93741b2f0bdSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 93841b2f0bdSmrg ;; 93941b2f0bdSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 94041b2f0bdSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 94141b2f0bdSmrg ;; 94241b2f0bdSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 94341b2f0bdSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 94441b2f0bdSmrg ;; 94541b2f0bdSmrg pentium4-*) 94641b2f0bdSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 94741b2f0bdSmrg ;; 94841b2f0bdSmrg pn) 94941b2f0bdSmrg basic_machine=pn-gould 95041b2f0bdSmrg ;; 95141b2f0bdSmrg power) basic_machine=power-ibm 95241b2f0bdSmrg ;; 95341b2f0bdSmrg ppc) basic_machine=powerpc-unknown 95441b2f0bdSmrg ;; 95541b2f0bdSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 95641b2f0bdSmrg ;; 95741b2f0bdSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 95841b2f0bdSmrg basic_machine=powerpcle-unknown 95941b2f0bdSmrg ;; 96041b2f0bdSmrg ppcle-* | powerpclittle-*) 96141b2f0bdSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 96241b2f0bdSmrg ;; 96341b2f0bdSmrg ppc64) basic_machine=powerpc64-unknown 96441b2f0bdSmrg ;; 96541b2f0bdSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 96641b2f0bdSmrg ;; 96741b2f0bdSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 96841b2f0bdSmrg basic_machine=powerpc64le-unknown 96941b2f0bdSmrg ;; 97041b2f0bdSmrg ppc64le-* | powerpc64little-*) 97141b2f0bdSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 97241b2f0bdSmrg ;; 97341b2f0bdSmrg ps2) 97441b2f0bdSmrg basic_machine=i386-ibm 97541b2f0bdSmrg ;; 97641b2f0bdSmrg pw32) 97741b2f0bdSmrg basic_machine=i586-unknown 97841b2f0bdSmrg os=-pw32 97941b2f0bdSmrg ;; 98011245024Smrg rdos) 98111245024Smrg basic_machine=i386-pc 98211245024Smrg os=-rdos 98311245024Smrg ;; 98441b2f0bdSmrg rom68k) 98541b2f0bdSmrg basic_machine=m68k-rom68k 98641b2f0bdSmrg os=-coff 98741b2f0bdSmrg ;; 98841b2f0bdSmrg rm[46]00) 98941b2f0bdSmrg basic_machine=mips-siemens 99041b2f0bdSmrg ;; 99141b2f0bdSmrg rtpc | rtpc-*) 99241b2f0bdSmrg basic_machine=romp-ibm 99341b2f0bdSmrg ;; 99411245024Smrg s390 | s390-*) 99511245024Smrg basic_machine=s390-ibm 99611245024Smrg ;; 99711245024Smrg s390x | s390x-*) 99811245024Smrg basic_machine=s390x-ibm 99911245024Smrg ;; 100041b2f0bdSmrg sa29200) 100141b2f0bdSmrg basic_machine=a29k-amd 100241b2f0bdSmrg os=-udi 100341b2f0bdSmrg ;; 100441b2f0bdSmrg sb1) 100541b2f0bdSmrg basic_machine=mipsisa64sb1-unknown 100641b2f0bdSmrg ;; 100741b2f0bdSmrg sb1el) 100841b2f0bdSmrg basic_machine=mipsisa64sb1el-unknown 100941b2f0bdSmrg ;; 101011245024Smrg sde) 101111245024Smrg basic_machine=mipsisa32-sde 101211245024Smrg os=-elf 101311245024Smrg ;; 101441b2f0bdSmrg sei) 101541b2f0bdSmrg basic_machine=mips-sei 101641b2f0bdSmrg os=-seiux 101741b2f0bdSmrg ;; 101841b2f0bdSmrg sequent) 101941b2f0bdSmrg basic_machine=i386-sequent 102041b2f0bdSmrg ;; 102141b2f0bdSmrg sh) 102241b2f0bdSmrg basic_machine=sh-hitachi 102341b2f0bdSmrg os=-hms 102441b2f0bdSmrg ;; 102511245024Smrg sh5el) 102611245024Smrg basic_machine=sh5le-unknown 102711245024Smrg ;; 102841b2f0bdSmrg sh64) 102941b2f0bdSmrg basic_machine=sh64-unknown 103041b2f0bdSmrg ;; 103141b2f0bdSmrg sparclite-wrs | simso-wrs) 103241b2f0bdSmrg basic_machine=sparclite-wrs 103341b2f0bdSmrg os=-vxworks 103441b2f0bdSmrg ;; 103541b2f0bdSmrg sps7) 103641b2f0bdSmrg basic_machine=m68k-bull 103741b2f0bdSmrg os=-sysv2 103841b2f0bdSmrg ;; 103941b2f0bdSmrg spur) 104041b2f0bdSmrg basic_machine=spur-unknown 104141b2f0bdSmrg ;; 104241b2f0bdSmrg st2000) 104341b2f0bdSmrg basic_machine=m68k-tandem 104441b2f0bdSmrg ;; 104541b2f0bdSmrg stratus) 104641b2f0bdSmrg basic_machine=i860-stratus 104741b2f0bdSmrg os=-sysv4 104841b2f0bdSmrg ;; 104941b2f0bdSmrg sun2) 105041b2f0bdSmrg basic_machine=m68000-sun 105141b2f0bdSmrg ;; 105241b2f0bdSmrg sun2os3) 105341b2f0bdSmrg basic_machine=m68000-sun 105441b2f0bdSmrg os=-sunos3 105541b2f0bdSmrg ;; 105641b2f0bdSmrg sun2os4) 105741b2f0bdSmrg basic_machine=m68000-sun 105841b2f0bdSmrg os=-sunos4 105941b2f0bdSmrg ;; 106041b2f0bdSmrg sun3os3) 106141b2f0bdSmrg basic_machine=m68k-sun 106241b2f0bdSmrg os=-sunos3 106341b2f0bdSmrg ;; 106441b2f0bdSmrg sun3os4) 106541b2f0bdSmrg basic_machine=m68k-sun 106641b2f0bdSmrg os=-sunos4 106741b2f0bdSmrg ;; 106841b2f0bdSmrg sun4os3) 106941b2f0bdSmrg basic_machine=sparc-sun 107041b2f0bdSmrg os=-sunos3 107141b2f0bdSmrg ;; 107241b2f0bdSmrg sun4os4) 107341b2f0bdSmrg basic_machine=sparc-sun 107441b2f0bdSmrg os=-sunos4 107541b2f0bdSmrg ;; 107641b2f0bdSmrg sun4sol2) 107741b2f0bdSmrg basic_machine=sparc-sun 107841b2f0bdSmrg os=-solaris2 107941b2f0bdSmrg ;; 108041b2f0bdSmrg sun3 | sun3-*) 108141b2f0bdSmrg basic_machine=m68k-sun 108241b2f0bdSmrg ;; 108341b2f0bdSmrg sun4) 108441b2f0bdSmrg basic_machine=sparc-sun 108541b2f0bdSmrg ;; 108641b2f0bdSmrg sun386 | sun386i | roadrunner) 108741b2f0bdSmrg basic_machine=i386-sun 108841b2f0bdSmrg ;; 108941b2f0bdSmrg sv1) 109041b2f0bdSmrg basic_machine=sv1-cray 109141b2f0bdSmrg os=-unicos 109241b2f0bdSmrg ;; 109341b2f0bdSmrg symmetry) 109441b2f0bdSmrg basic_machine=i386-sequent 109541b2f0bdSmrg os=-dynix 109641b2f0bdSmrg ;; 109741b2f0bdSmrg t3e) 109841b2f0bdSmrg basic_machine=alphaev5-cray 109941b2f0bdSmrg os=-unicos 110041b2f0bdSmrg ;; 110141b2f0bdSmrg t90) 110241b2f0bdSmrg basic_machine=t90-cray 110341b2f0bdSmrg os=-unicos 110441b2f0bdSmrg ;; 110511a29bacSmrg # This must be matched before tile*. 110611a29bacSmrg tilegx*) 110711a29bacSmrg basic_machine=tilegx-unknown 110811a29bacSmrg os=-linux-gnu 110941b2f0bdSmrg ;; 111011245024Smrg tile*) 111111245024Smrg basic_machine=tile-unknown 111211245024Smrg os=-linux-gnu 111311245024Smrg ;; 111441b2f0bdSmrg tx39) 111541b2f0bdSmrg basic_machine=mipstx39-unknown 111641b2f0bdSmrg ;; 111741b2f0bdSmrg tx39el) 111841b2f0bdSmrg basic_machine=mipstx39el-unknown 111941b2f0bdSmrg ;; 112041b2f0bdSmrg toad1) 112141b2f0bdSmrg basic_machine=pdp10-xkl 112241b2f0bdSmrg os=-tops20 112341b2f0bdSmrg ;; 112441b2f0bdSmrg tower | tower-32) 112541b2f0bdSmrg basic_machine=m68k-ncr 112641b2f0bdSmrg ;; 112711245024Smrg tpf) 112811245024Smrg basic_machine=s390x-ibm 112911245024Smrg os=-tpf 113011245024Smrg ;; 113141b2f0bdSmrg udi29k) 113241b2f0bdSmrg basic_machine=a29k-amd 113341b2f0bdSmrg os=-udi 113441b2f0bdSmrg ;; 113541b2f0bdSmrg ultra3) 113641b2f0bdSmrg basic_machine=a29k-nyu 113741b2f0bdSmrg os=-sym1 113841b2f0bdSmrg ;; 113941b2f0bdSmrg v810 | necv810) 114041b2f0bdSmrg basic_machine=v810-nec 114141b2f0bdSmrg os=-none 114241b2f0bdSmrg ;; 114341b2f0bdSmrg vaxv) 114441b2f0bdSmrg basic_machine=vax-dec 114541b2f0bdSmrg os=-sysv 114641b2f0bdSmrg ;; 114741b2f0bdSmrg vms) 114841b2f0bdSmrg basic_machine=vax-dec 114941b2f0bdSmrg os=-vms 115041b2f0bdSmrg ;; 115141b2f0bdSmrg vpp*|vx|vx-*) 115241b2f0bdSmrg basic_machine=f301-fujitsu 115341b2f0bdSmrg ;; 115441b2f0bdSmrg vxworks960) 115541b2f0bdSmrg basic_machine=i960-wrs 115641b2f0bdSmrg os=-vxworks 115741b2f0bdSmrg ;; 115841b2f0bdSmrg vxworks68) 115941b2f0bdSmrg basic_machine=m68k-wrs 116041b2f0bdSmrg os=-vxworks 116141b2f0bdSmrg ;; 116241b2f0bdSmrg vxworks29k) 116341b2f0bdSmrg basic_machine=a29k-wrs 116441b2f0bdSmrg os=-vxworks 116541b2f0bdSmrg ;; 116641b2f0bdSmrg w65*) 116741b2f0bdSmrg basic_machine=w65-wdc 116841b2f0bdSmrg os=-none 116941b2f0bdSmrg ;; 117041b2f0bdSmrg w89k-*) 117141b2f0bdSmrg basic_machine=hppa1.1-winbond 117241b2f0bdSmrg os=-proelf 117341b2f0bdSmrg ;; 117411245024Smrg xbox) 117511245024Smrg basic_machine=i686-pc 117611245024Smrg os=-mingw32 117711245024Smrg ;; 117841b2f0bdSmrg xps | xps100) 117941b2f0bdSmrg basic_machine=xps100-honeywell 118041b2f0bdSmrg ;; 118141b2f0bdSmrg ymp) 118241b2f0bdSmrg basic_machine=ymp-cray 118341b2f0bdSmrg os=-unicos 118441b2f0bdSmrg ;; 118541b2f0bdSmrg z8k-*-coff) 118641b2f0bdSmrg basic_machine=z8k-unknown 118741b2f0bdSmrg os=-sim 118841b2f0bdSmrg ;; 118911a29bacSmrg z80-*-coff) 119011a29bacSmrg basic_machine=z80-unknown 119111a29bacSmrg os=-sim 119211a29bacSmrg ;; 119341b2f0bdSmrg none) 119441b2f0bdSmrg basic_machine=none-none 119541b2f0bdSmrg os=-none 119641b2f0bdSmrg ;; 119741b2f0bdSmrg 119841b2f0bdSmrg# Here we handle the default manufacturer of certain CPU types. It is in 119941b2f0bdSmrg# some cases the only manufacturer, in others, it is the most popular. 120041b2f0bdSmrg w89k) 120141b2f0bdSmrg basic_machine=hppa1.1-winbond 120241b2f0bdSmrg ;; 120341b2f0bdSmrg op50n) 120441b2f0bdSmrg basic_machine=hppa1.1-oki 120541b2f0bdSmrg ;; 120641b2f0bdSmrg op60c) 120741b2f0bdSmrg basic_machine=hppa1.1-oki 120841b2f0bdSmrg ;; 120941b2f0bdSmrg romp) 121041b2f0bdSmrg basic_machine=romp-ibm 121141b2f0bdSmrg ;; 121211245024Smrg mmix) 121311245024Smrg basic_machine=mmix-knuth 121411245024Smrg ;; 121541b2f0bdSmrg rs6000) 121641b2f0bdSmrg basic_machine=rs6000-ibm 121741b2f0bdSmrg ;; 121841b2f0bdSmrg vax) 121941b2f0bdSmrg basic_machine=vax-dec 122041b2f0bdSmrg ;; 122141b2f0bdSmrg pdp10) 122241b2f0bdSmrg # there are many clones, so DEC is not a safe bet 122341b2f0bdSmrg basic_machine=pdp10-unknown 122441b2f0bdSmrg ;; 122541b2f0bdSmrg pdp11) 122641b2f0bdSmrg basic_machine=pdp11-dec 122741b2f0bdSmrg ;; 122841b2f0bdSmrg we32k) 122941b2f0bdSmrg basic_machine=we32k-att 123041b2f0bdSmrg ;; 123111a29bacSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 123241b2f0bdSmrg basic_machine=sh-unknown 123341b2f0bdSmrg ;; 123411245024Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 123541b2f0bdSmrg basic_machine=sparc-sun 123641b2f0bdSmrg ;; 123741b2f0bdSmrg cydra) 123841b2f0bdSmrg basic_machine=cydra-cydrome 123941b2f0bdSmrg ;; 124041b2f0bdSmrg orion) 124141b2f0bdSmrg basic_machine=orion-highlevel 124241b2f0bdSmrg ;; 124341b2f0bdSmrg orion105) 124441b2f0bdSmrg basic_machine=clipper-highlevel 124541b2f0bdSmrg ;; 124641b2f0bdSmrg mac | mpw | mac-mpw) 124741b2f0bdSmrg basic_machine=m68k-apple 124841b2f0bdSmrg ;; 124941b2f0bdSmrg pmac | pmac-mpw) 125041b2f0bdSmrg basic_machine=powerpc-apple 125141b2f0bdSmrg ;; 125241b2f0bdSmrg *-unknown) 125341b2f0bdSmrg # Make sure to match an already-canonicalized machine name. 125441b2f0bdSmrg ;; 125541b2f0bdSmrg *) 125641b2f0bdSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 125741b2f0bdSmrg exit 1 125841b2f0bdSmrg ;; 125941b2f0bdSmrgesac 126041b2f0bdSmrg 126141b2f0bdSmrg# Here we canonicalize certain aliases for manufacturers. 126241b2f0bdSmrgcase $basic_machine in 126341b2f0bdSmrg *-digital*) 126441b2f0bdSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 126541b2f0bdSmrg ;; 126641b2f0bdSmrg *-commodore*) 126741b2f0bdSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 126841b2f0bdSmrg ;; 126941b2f0bdSmrg *) 127041b2f0bdSmrg ;; 127141b2f0bdSmrgesac 127241b2f0bdSmrg 127341b2f0bdSmrg# Decode manufacturer-specific aliases for certain operating systems. 127441b2f0bdSmrg 127541b2f0bdSmrgif [ x"$os" != x"" ] 127641b2f0bdSmrgthen 127741b2f0bdSmrgcase $os in 127841b2f0bdSmrg # First match some system type aliases 127941b2f0bdSmrg # that might get confused with valid system types. 128041b2f0bdSmrg # -solaris* is a basic system type, with this one exception. 128111a29bacSmrg -auroraux) 128211a29bacSmrg os=-auroraux 128311a29bacSmrg ;; 128441b2f0bdSmrg -solaris1 | -solaris1.*) 128541b2f0bdSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 128641b2f0bdSmrg ;; 128741b2f0bdSmrg -solaris) 128841b2f0bdSmrg os=-solaris2 128941b2f0bdSmrg ;; 129041b2f0bdSmrg -svr4*) 129141b2f0bdSmrg os=-sysv4 129241b2f0bdSmrg ;; 129341b2f0bdSmrg -unixware*) 129441b2f0bdSmrg os=-sysv4.2uw 129541b2f0bdSmrg ;; 129641b2f0bdSmrg -gnu/linux*) 129741b2f0bdSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 129841b2f0bdSmrg ;; 129941b2f0bdSmrg # First accept the basic system types. 130041b2f0bdSmrg # The portable systems comes first. 130141b2f0bdSmrg # Each alternative MUST END IN A *, to match a version number. 130241b2f0bdSmrg # -sysv* is not here because it comes later, after sysvr4. 130341b2f0bdSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 130411a29bacSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 130511a29bacSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 130611a29bacSmrg | -sym* | -kopensolaris* \ 130741b2f0bdSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 130811a29bacSmrg | -aos* | -aros* \ 130941b2f0bdSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 131041b2f0bdSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 131111245024Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 131211245024Smrg | -openbsd* | -solidbsd* \ 131311245024Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 131411245024Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 131541b2f0bdSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 131641b2f0bdSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 131711a29bacSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 131841b2f0bdSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 131911a29bacSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 132011a29bacSmrg | -linux-newlib* | -linux-uclibc* \ 132111245024Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 132241b2f0bdSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 132341b2f0bdSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 132441b2f0bdSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 132541b2f0bdSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 132641b2f0bdSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 132711245024Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 132811a29bacSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 132941b2f0bdSmrg # Remember, each alternative MUST END IN *, to match a version number. 133041b2f0bdSmrg ;; 133141b2f0bdSmrg -qnx*) 133241b2f0bdSmrg case $basic_machine in 133341b2f0bdSmrg x86-* | i*86-*) 133441b2f0bdSmrg ;; 133541b2f0bdSmrg *) 133641b2f0bdSmrg os=-nto$os 133741b2f0bdSmrg ;; 133841b2f0bdSmrg esac 133941b2f0bdSmrg ;; 134041b2f0bdSmrg -nto-qnx*) 134141b2f0bdSmrg ;; 134241b2f0bdSmrg -nto*) 134341b2f0bdSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 134441b2f0bdSmrg ;; 134541b2f0bdSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 134611245024Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 134741b2f0bdSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 134841b2f0bdSmrg ;; 134941b2f0bdSmrg -mac*) 135041b2f0bdSmrg os=`echo $os | sed -e 's|mac|macos|'` 135141b2f0bdSmrg ;; 135211245024Smrg -linux-dietlibc) 135311245024Smrg os=-linux-dietlibc 135411245024Smrg ;; 135541b2f0bdSmrg -linux*) 135641b2f0bdSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 135741b2f0bdSmrg ;; 135841b2f0bdSmrg -sunos5*) 135941b2f0bdSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 136041b2f0bdSmrg ;; 136141b2f0bdSmrg -sunos6*) 136241b2f0bdSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 136341b2f0bdSmrg ;; 136441b2f0bdSmrg -opened*) 136541b2f0bdSmrg os=-openedition 136641b2f0bdSmrg ;; 136711245024Smrg -os400*) 136811245024Smrg os=-os400 136911245024Smrg ;; 137041b2f0bdSmrg -wince*) 137141b2f0bdSmrg os=-wince 137241b2f0bdSmrg ;; 137341b2f0bdSmrg -osfrose*) 137441b2f0bdSmrg os=-osfrose 137541b2f0bdSmrg ;; 137641b2f0bdSmrg -osf*) 137741b2f0bdSmrg os=-osf 137841b2f0bdSmrg ;; 137941b2f0bdSmrg -utek*) 138041b2f0bdSmrg os=-bsd 138141b2f0bdSmrg ;; 138241b2f0bdSmrg -dynix*) 138341b2f0bdSmrg os=-bsd 138441b2f0bdSmrg ;; 138541b2f0bdSmrg -acis*) 138641b2f0bdSmrg os=-aos 138741b2f0bdSmrg ;; 138841b2f0bdSmrg -atheos*) 138941b2f0bdSmrg os=-atheos 139041b2f0bdSmrg ;; 139111245024Smrg -syllable*) 139211245024Smrg os=-syllable 139311245024Smrg ;; 139441b2f0bdSmrg -386bsd) 139541b2f0bdSmrg os=-bsd 139641b2f0bdSmrg ;; 139741b2f0bdSmrg -ctix* | -uts*) 139841b2f0bdSmrg os=-sysv 139941b2f0bdSmrg ;; 140041b2f0bdSmrg -nova*) 140141b2f0bdSmrg os=-rtmk-nova 140241b2f0bdSmrg ;; 140341b2f0bdSmrg -ns2 ) 140441b2f0bdSmrg os=-nextstep2 140541b2f0bdSmrg ;; 140641b2f0bdSmrg -nsk*) 140741b2f0bdSmrg os=-nsk 140841b2f0bdSmrg ;; 140941b2f0bdSmrg # Preserve the version number of sinix5. 141041b2f0bdSmrg -sinix5.*) 141141b2f0bdSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 141241b2f0bdSmrg ;; 141341b2f0bdSmrg -sinix*) 141441b2f0bdSmrg os=-sysv4 141541b2f0bdSmrg ;; 141611245024Smrg -tpf*) 141711245024Smrg os=-tpf 141811245024Smrg ;; 141941b2f0bdSmrg -triton*) 142041b2f0bdSmrg os=-sysv3 142141b2f0bdSmrg ;; 142241b2f0bdSmrg -oss*) 142341b2f0bdSmrg os=-sysv3 142441b2f0bdSmrg ;; 142541b2f0bdSmrg -svr4) 142641b2f0bdSmrg os=-sysv4 142741b2f0bdSmrg ;; 142841b2f0bdSmrg -svr3) 142941b2f0bdSmrg os=-sysv3 143041b2f0bdSmrg ;; 143141b2f0bdSmrg -sysvr4) 143241b2f0bdSmrg os=-sysv4 143341b2f0bdSmrg ;; 143441b2f0bdSmrg # This must come after -sysvr4. 143541b2f0bdSmrg -sysv*) 143641b2f0bdSmrg ;; 143741b2f0bdSmrg -ose*) 143841b2f0bdSmrg os=-ose 143941b2f0bdSmrg ;; 144041b2f0bdSmrg -es1800*) 144141b2f0bdSmrg os=-ose 144241b2f0bdSmrg ;; 144341b2f0bdSmrg -xenix) 144441b2f0bdSmrg os=-xenix 144541b2f0bdSmrg ;; 144641b2f0bdSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 144741b2f0bdSmrg os=-mint 144841b2f0bdSmrg ;; 144941b2f0bdSmrg -aros*) 145041b2f0bdSmrg os=-aros 145141b2f0bdSmrg ;; 145241b2f0bdSmrg -kaos*) 145341b2f0bdSmrg os=-kaos 145441b2f0bdSmrg ;; 145511245024Smrg -zvmoe) 145611245024Smrg os=-zvmoe 145711245024Smrg ;; 145811a29bacSmrg -dicos*) 145911a29bacSmrg os=-dicos 146011a29bacSmrg ;; 146111a29bacSmrg -nacl*) 146211a29bacSmrg ;; 146341b2f0bdSmrg -none) 146441b2f0bdSmrg ;; 146541b2f0bdSmrg *) 146641b2f0bdSmrg # Get rid of the `-' at the beginning of $os. 146741b2f0bdSmrg os=`echo $os | sed 's/[^-]*-//'` 146841b2f0bdSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 146941b2f0bdSmrg exit 1 147041b2f0bdSmrg ;; 147141b2f0bdSmrgesac 147241b2f0bdSmrgelse 147341b2f0bdSmrg 147441b2f0bdSmrg# Here we handle the default operating systems that come with various machines. 147541b2f0bdSmrg# The value should be what the vendor currently ships out the door with their 147641b2f0bdSmrg# machine or put another way, the most popular os provided with the machine. 147741b2f0bdSmrg 147841b2f0bdSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 147941b2f0bdSmrg# "-sun"), then you have to tell the case statement up towards the top 148041b2f0bdSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 148141b2f0bdSmrg# will signal an error saying that MANUFACTURER isn't an operating 148241b2f0bdSmrg# system, and we'll never get to this point. 148341b2f0bdSmrg 148441b2f0bdSmrgcase $basic_machine in 148511245024Smrg score-*) 148611245024Smrg os=-elf 148711245024Smrg ;; 148811245024Smrg spu-*) 148911245024Smrg os=-elf 149011245024Smrg ;; 149141b2f0bdSmrg *-acorn) 149241b2f0bdSmrg os=-riscix1.2 149341b2f0bdSmrg ;; 149441b2f0bdSmrg arm*-rebel) 149541b2f0bdSmrg os=-linux 149641b2f0bdSmrg ;; 149741b2f0bdSmrg arm*-semi) 149841b2f0bdSmrg os=-aout 149941b2f0bdSmrg ;; 150011245024Smrg c4x-* | tic4x-*) 150111245024Smrg os=-coff 150241b2f0bdSmrg ;; 150311a29bacSmrg tic54x-*) 150411a29bacSmrg os=-coff 150511a29bacSmrg ;; 150611a29bacSmrg tic55x-*) 150711a29bacSmrg os=-coff 150811a29bacSmrg ;; 150911a29bacSmrg tic6x-*) 151011a29bacSmrg os=-coff 151111a29bacSmrg ;; 151241b2f0bdSmrg # This must come before the *-dec entry. 151341b2f0bdSmrg pdp10-*) 151441b2f0bdSmrg os=-tops20 151541b2f0bdSmrg ;; 151641b2f0bdSmrg pdp11-*) 151741b2f0bdSmrg os=-none 151841b2f0bdSmrg ;; 151941b2f0bdSmrg *-dec | vax-*) 152041b2f0bdSmrg os=-ultrix4.2 152141b2f0bdSmrg ;; 152241b2f0bdSmrg m68*-apollo) 152341b2f0bdSmrg os=-domain 152441b2f0bdSmrg ;; 152541b2f0bdSmrg i386-sun) 152641b2f0bdSmrg os=-sunos4.0.2 152741b2f0bdSmrg ;; 152841b2f0bdSmrg m68000-sun) 152941b2f0bdSmrg os=-sunos3 153041b2f0bdSmrg # This also exists in the configure program, but was not the 153141b2f0bdSmrg # default. 153241b2f0bdSmrg # os=-sunos4 153341b2f0bdSmrg ;; 153441b2f0bdSmrg m68*-cisco) 153541b2f0bdSmrg os=-aout 153641b2f0bdSmrg ;; 153711245024Smrg mep-*) 153811245024Smrg os=-elf 153911245024Smrg ;; 154041b2f0bdSmrg mips*-cisco) 154141b2f0bdSmrg os=-elf 154241b2f0bdSmrg ;; 154341b2f0bdSmrg mips*-*) 154441b2f0bdSmrg os=-elf 154541b2f0bdSmrg ;; 154641b2f0bdSmrg or32-*) 154741b2f0bdSmrg os=-coff 154841b2f0bdSmrg ;; 154941b2f0bdSmrg *-tti) # must be before sparc entry or we get the wrong os. 155041b2f0bdSmrg os=-sysv3 155141b2f0bdSmrg ;; 155241b2f0bdSmrg sparc-* | *-sun) 155341b2f0bdSmrg os=-sunos4.1.1 155441b2f0bdSmrg ;; 155541b2f0bdSmrg *-be) 155641b2f0bdSmrg os=-beos 155741b2f0bdSmrg ;; 155811245024Smrg *-haiku) 155911245024Smrg os=-haiku 156011245024Smrg ;; 156141b2f0bdSmrg *-ibm) 156241b2f0bdSmrg os=-aix 156341b2f0bdSmrg ;; 156411245024Smrg *-knuth) 156511245024Smrg os=-mmixware 156611245024Smrg ;; 156741b2f0bdSmrg *-wec) 156841b2f0bdSmrg os=-proelf 156941b2f0bdSmrg ;; 157041b2f0bdSmrg *-winbond) 157141b2f0bdSmrg os=-proelf 157241b2f0bdSmrg ;; 157341b2f0bdSmrg *-oki) 157441b2f0bdSmrg os=-proelf 157541b2f0bdSmrg ;; 157641b2f0bdSmrg *-hp) 157741b2f0bdSmrg os=-hpux 157841b2f0bdSmrg ;; 157941b2f0bdSmrg *-hitachi) 158041b2f0bdSmrg os=-hiux 158141b2f0bdSmrg ;; 158241b2f0bdSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 158341b2f0bdSmrg os=-sysv 158441b2f0bdSmrg ;; 158541b2f0bdSmrg *-cbm) 158641b2f0bdSmrg os=-amigaos 158741b2f0bdSmrg ;; 158841b2f0bdSmrg *-dg) 158941b2f0bdSmrg os=-dgux 159041b2f0bdSmrg ;; 159141b2f0bdSmrg *-dolphin) 159241b2f0bdSmrg os=-sysv3 159341b2f0bdSmrg ;; 159441b2f0bdSmrg m68k-ccur) 159541b2f0bdSmrg os=-rtu 159641b2f0bdSmrg ;; 159741b2f0bdSmrg m88k-omron*) 159841b2f0bdSmrg os=-luna 159941b2f0bdSmrg ;; 160041b2f0bdSmrg *-next ) 160141b2f0bdSmrg os=-nextstep 160241b2f0bdSmrg ;; 160341b2f0bdSmrg *-sequent) 160441b2f0bdSmrg os=-ptx 160541b2f0bdSmrg ;; 160641b2f0bdSmrg *-crds) 160741b2f0bdSmrg os=-unos 160841b2f0bdSmrg ;; 160941b2f0bdSmrg *-ns) 161041b2f0bdSmrg os=-genix 161141b2f0bdSmrg ;; 161241b2f0bdSmrg i370-*) 161341b2f0bdSmrg os=-mvs 161441b2f0bdSmrg ;; 161541b2f0bdSmrg *-next) 161641b2f0bdSmrg os=-nextstep3 161741b2f0bdSmrg ;; 161841b2f0bdSmrg *-gould) 161941b2f0bdSmrg os=-sysv 162041b2f0bdSmrg ;; 162141b2f0bdSmrg *-highlevel) 162241b2f0bdSmrg os=-bsd 162341b2f0bdSmrg ;; 162441b2f0bdSmrg *-encore) 162541b2f0bdSmrg os=-bsd 162641b2f0bdSmrg ;; 162741b2f0bdSmrg *-sgi) 162841b2f0bdSmrg os=-irix 162941b2f0bdSmrg ;; 163041b2f0bdSmrg *-siemens) 163141b2f0bdSmrg os=-sysv4 163241b2f0bdSmrg ;; 163341b2f0bdSmrg *-masscomp) 163441b2f0bdSmrg os=-rtu 163541b2f0bdSmrg ;; 163641b2f0bdSmrg f30[01]-fujitsu | f700-fujitsu) 163741b2f0bdSmrg os=-uxpv 163841b2f0bdSmrg ;; 163941b2f0bdSmrg *-rom68k) 164041b2f0bdSmrg os=-coff 164141b2f0bdSmrg ;; 164241b2f0bdSmrg *-*bug) 164341b2f0bdSmrg os=-coff 164441b2f0bdSmrg ;; 164541b2f0bdSmrg *-apple) 164641b2f0bdSmrg os=-macos 164741b2f0bdSmrg ;; 164841b2f0bdSmrg *-atari*) 164941b2f0bdSmrg os=-mint 165041b2f0bdSmrg ;; 165141b2f0bdSmrg *) 165241b2f0bdSmrg os=-none 165341b2f0bdSmrg ;; 165441b2f0bdSmrgesac 165541b2f0bdSmrgfi 165641b2f0bdSmrg 165741b2f0bdSmrg# Here we handle the case where we know the os, and the CPU type, but not the 165841b2f0bdSmrg# manufacturer. We pick the logical manufacturer. 165941b2f0bdSmrgvendor=unknown 166041b2f0bdSmrgcase $basic_machine in 166141b2f0bdSmrg *-unknown) 166241b2f0bdSmrg case $os in 166341b2f0bdSmrg -riscix*) 166441b2f0bdSmrg vendor=acorn 166541b2f0bdSmrg ;; 166641b2f0bdSmrg -sunos*) 166741b2f0bdSmrg vendor=sun 166841b2f0bdSmrg ;; 166911a29bacSmrg -cnk*|-aix*) 167041b2f0bdSmrg vendor=ibm 167141b2f0bdSmrg ;; 167241b2f0bdSmrg -beos*) 167341b2f0bdSmrg vendor=be 167441b2f0bdSmrg ;; 167541b2f0bdSmrg -hpux*) 167641b2f0bdSmrg vendor=hp 167741b2f0bdSmrg ;; 167841b2f0bdSmrg -mpeix*) 167941b2f0bdSmrg vendor=hp 168041b2f0bdSmrg ;; 168141b2f0bdSmrg -hiux*) 168241b2f0bdSmrg vendor=hitachi 168341b2f0bdSmrg ;; 168441b2f0bdSmrg -unos*) 168541b2f0bdSmrg vendor=crds 168641b2f0bdSmrg ;; 168741b2f0bdSmrg -dgux*) 168841b2f0bdSmrg vendor=dg 168941b2f0bdSmrg ;; 169041b2f0bdSmrg -luna*) 169141b2f0bdSmrg vendor=omron 169241b2f0bdSmrg ;; 169341b2f0bdSmrg -genix*) 169441b2f0bdSmrg vendor=ns 169541b2f0bdSmrg ;; 169641b2f0bdSmrg -mvs* | -opened*) 169741b2f0bdSmrg vendor=ibm 169841b2f0bdSmrg ;; 169911245024Smrg -os400*) 170011245024Smrg vendor=ibm 170111245024Smrg ;; 170241b2f0bdSmrg -ptx*) 170341b2f0bdSmrg vendor=sequent 170441b2f0bdSmrg ;; 170511245024Smrg -tpf*) 170611245024Smrg vendor=ibm 170711245024Smrg ;; 170841b2f0bdSmrg -vxsim* | -vxworks* | -windiss*) 170941b2f0bdSmrg vendor=wrs 171041b2f0bdSmrg ;; 171141b2f0bdSmrg -aux*) 171241b2f0bdSmrg vendor=apple 171341b2f0bdSmrg ;; 171441b2f0bdSmrg -hms*) 171541b2f0bdSmrg vendor=hitachi 171641b2f0bdSmrg ;; 171741b2f0bdSmrg -mpw* | -macos*) 171841b2f0bdSmrg vendor=apple 171941b2f0bdSmrg ;; 172041b2f0bdSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 172141b2f0bdSmrg vendor=atari 172241b2f0bdSmrg ;; 172341b2f0bdSmrg -vos*) 172441b2f0bdSmrg vendor=stratus 172541b2f0bdSmrg ;; 172641b2f0bdSmrg esac 172741b2f0bdSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 172841b2f0bdSmrg ;; 172941b2f0bdSmrgesac 173041b2f0bdSmrg 173141b2f0bdSmrgecho $basic_machine$os 173211245024Smrgexit 173341b2f0bdSmrg 173441b2f0bdSmrg# Local variables: 173541b2f0bdSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 173641b2f0bdSmrg# time-stamp-start: "timestamp='" 173741b2f0bdSmrg# time-stamp-format: "%:y-%02m-%02d" 173841b2f0bdSmrg# time-stamp-end: "'" 173941b2f0bdSmrg# End: 1740