config.sub revision 0dd80ee0
117a48c7cSmrg#! /bin/sh 217a48c7cSmrg# Configuration validation subroutine script. 317a48c7cSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 40dd80ee0Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 50dd80ee0Smrg# 2011, 2012 Free Software Foundation, Inc. 617a48c7cSmrg 70dd80ee0Smrgtimestamp='2012-01-01' 817a48c7cSmrg 917a48c7cSmrg# This file is (in principle) common to ALL GNU software. 1017a48c7cSmrg# The presence of a machine in this file suggests that SOME GNU software 1117a48c7cSmrg# can handle that machine. It does not imply ALL GNU software can. 1217a48c7cSmrg# 1317a48c7cSmrg# This file is free software; you can redistribute it and/or modify 1417a48c7cSmrg# it under the terms of the GNU General Public License as published by 1517a48c7cSmrg# the Free Software Foundation; either version 2 of the License, or 1617a48c7cSmrg# (at your option) any later version. 1717a48c7cSmrg# 1817a48c7cSmrg# This program is distributed in the hope that it will be useful, 1917a48c7cSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2017a48c7cSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2117a48c7cSmrg# GNU General Public License for more details. 2217a48c7cSmrg# 2317a48c7cSmrg# You should have received a copy of the GNU General Public License 2417a48c7cSmrg# along with this program; if not, write to the Free Software 258e0ed500Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 268e0ed500Smrg# 02110-1301, USA. 278e0ed500Smrg# 2817a48c7cSmrg# As a special exception to the GNU General Public License, if you 2917a48c7cSmrg# distribute this file as part of a program that contains a 3017a48c7cSmrg# configuration script generated by Autoconf, you may include it under 3117a48c7cSmrg# the same distribution terms that you use for the rest of that program. 3217a48c7cSmrg 338e0ed500Smrg 3417a48c7cSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 355f5b92ffSmrg# diff and a properly formatted GNU ChangeLog entry. 3617a48c7cSmrg# 3717a48c7cSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3817a48c7cSmrg# Supply the specified configuration type as an argument. 3917a48c7cSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 4017a48c7cSmrg# Otherwise, we print the canonical config type on stdout and succeed. 4117a48c7cSmrg 425f5b92ffSmrg# You can get the latest version of this script from: 435f5b92ffSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 445f5b92ffSmrg 4517a48c7cSmrg# This file is supposed to be the same for all GNU packages 4617a48c7cSmrg# and recognize all the CPU types, system types and aliases 4717a48c7cSmrg# that are meaningful with *any* GNU software. 4817a48c7cSmrg# Each package is responsible for reporting which valid configurations 4917a48c7cSmrg# it does not support. The user should be able to distinguish 5017a48c7cSmrg# a failure to support a valid configuration from a meaningless 5117a48c7cSmrg# configuration. 5217a48c7cSmrg 5317a48c7cSmrg# The goal of this file is to map all the various variations of a given 5417a48c7cSmrg# machine specification into a single specification in the form: 5517a48c7cSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5617a48c7cSmrg# or in some cases, the newer four-part form: 5717a48c7cSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5817a48c7cSmrg# It is wrong to echo any other type of specification. 5917a48c7cSmrg 6017a48c7cSmrgme=`echo "$0" | sed -e 's,.*/,,'` 6117a48c7cSmrg 6217a48c7cSmrgusage="\ 6317a48c7cSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6417a48c7cSmrg $0 [OPTION] ALIAS 6517a48c7cSmrg 6617a48c7cSmrgCanonicalize a configuration name. 6717a48c7cSmrg 6817a48c7cSmrgOperation modes: 6917a48c7cSmrg -h, --help print this help, then exit 7017a48c7cSmrg -t, --time-stamp print date of last modification, then exit 7117a48c7cSmrg -v, --version print version number, then exit 7217a48c7cSmrg 7317a48c7cSmrgReport bugs and patches to <config-patches@gnu.org>." 7417a48c7cSmrg 7517a48c7cSmrgversion="\ 7617a48c7cSmrgGNU config.sub ($timestamp) 7717a48c7cSmrg 780dd80ee0SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 790dd80ee0Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 800dd80ee0SmrgFree Software Foundation, Inc. 8117a48c7cSmrg 8217a48c7cSmrgThis is free software; see the source for copying conditions. There is NO 8317a48c7cSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8417a48c7cSmrg 8517a48c7cSmrghelp=" 8617a48c7cSmrgTry \`$me --help' for more information." 8717a48c7cSmrg 8817a48c7cSmrg# Parse command line 8917a48c7cSmrgwhile test $# -gt 0 ; do 9017a48c7cSmrg case $1 in 9117a48c7cSmrg --time-stamp | --time* | -t ) 928e0ed500Smrg echo "$timestamp" ; exit ;; 9317a48c7cSmrg --version | -v ) 948e0ed500Smrg echo "$version" ; exit ;; 9517a48c7cSmrg --help | --h* | -h ) 968e0ed500Smrg echo "$usage"; exit ;; 9717a48c7cSmrg -- ) # Stop option processing 9817a48c7cSmrg shift; break ;; 9917a48c7cSmrg - ) # Use stdin as input. 10017a48c7cSmrg break ;; 10117a48c7cSmrg -* ) 10217a48c7cSmrg echo "$me: invalid option $1$help" 10317a48c7cSmrg exit 1 ;; 10417a48c7cSmrg 10517a48c7cSmrg *local*) 10617a48c7cSmrg # First pass through any local machine types. 10717a48c7cSmrg echo $1 1088e0ed500Smrg exit ;; 10917a48c7cSmrg 11017a48c7cSmrg * ) 11117a48c7cSmrg break ;; 11217a48c7cSmrg esac 11317a48c7cSmrgdone 11417a48c7cSmrg 11517a48c7cSmrgcase $# in 11617a48c7cSmrg 0) echo "$me: missing argument$help" >&2 11717a48c7cSmrg exit 1;; 11817a48c7cSmrg 1) ;; 11917a48c7cSmrg *) echo "$me: too many arguments$help" >&2 12017a48c7cSmrg exit 1;; 12117a48c7cSmrgesac 12217a48c7cSmrg 12317a48c7cSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12417a48c7cSmrg# Here we must recognize all the valid KERNEL-OS combinations. 12517a48c7cSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12617a48c7cSmrgcase $maybe_os in 1270dd80ee0Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1280dd80ee0Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1290dd80ee0Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1305f5b92ffSmrg kopensolaris*-gnu* | \ 1318e0ed500Smrg storm-chaos* | os2-emx* | rtmk-nova*) 13217a48c7cSmrg os=-$maybe_os 13317a48c7cSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13417a48c7cSmrg ;; 13517a48c7cSmrg *) 13617a48c7cSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13717a48c7cSmrg if [ $basic_machine != $1 ] 13817a48c7cSmrg then os=`echo $1 | sed 's/.*-/-/'` 13917a48c7cSmrg else os=; fi 14017a48c7cSmrg ;; 14117a48c7cSmrgesac 14217a48c7cSmrg 14317a48c7cSmrg### Let's recognize common machines as not being operating systems so 14417a48c7cSmrg### that things like config.sub decstation-3100 work. We also 14517a48c7cSmrg### recognize some manufacturers as not being operating systems, so we 14617a48c7cSmrg### can provide default operating systems below. 14717a48c7cSmrgcase $os in 14817a48c7cSmrg -sun*os*) 14917a48c7cSmrg # Prevent following clause from handling this invalid input. 15017a48c7cSmrg ;; 15117a48c7cSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15217a48c7cSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15317a48c7cSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15417a48c7cSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15517a48c7cSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15617a48c7cSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1575f5b92ffSmrg -apple | -axis | -knuth | -cray | -microblaze) 15817a48c7cSmrg os= 15917a48c7cSmrg basic_machine=$1 16017a48c7cSmrg ;; 1610dd80ee0Smrg -bluegene*) 1620dd80ee0Smrg os=-cnk 1635f5b92ffSmrg ;; 16417a48c7cSmrg -sim | -cisco | -oki | -wec | -winbond) 16517a48c7cSmrg os= 16617a48c7cSmrg basic_machine=$1 16717a48c7cSmrg ;; 16817a48c7cSmrg -scout) 16917a48c7cSmrg ;; 17017a48c7cSmrg -wrs) 17117a48c7cSmrg os=-vxworks 17217a48c7cSmrg basic_machine=$1 17317a48c7cSmrg ;; 17417a48c7cSmrg -chorusos*) 17517a48c7cSmrg os=-chorusos 17617a48c7cSmrg basic_machine=$1 17717a48c7cSmrg ;; 1780dd80ee0Smrg -chorusrdb) 1790dd80ee0Smrg os=-chorusrdb 18017a48c7cSmrg basic_machine=$1 1810dd80ee0Smrg ;; 18217a48c7cSmrg -hiux*) 18317a48c7cSmrg os=-hiuxwe2 18417a48c7cSmrg ;; 1858e0ed500Smrg -sco6) 1868e0ed500Smrg os=-sco5v6 1878e0ed500Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1888e0ed500Smrg ;; 18917a48c7cSmrg -sco5) 19017a48c7cSmrg os=-sco3.2v5 19117a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19217a48c7cSmrg ;; 19317a48c7cSmrg -sco4) 19417a48c7cSmrg os=-sco3.2v4 19517a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19617a48c7cSmrg ;; 19717a48c7cSmrg -sco3.2.[4-9]*) 19817a48c7cSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19917a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20017a48c7cSmrg ;; 20117a48c7cSmrg -sco3.2v[4-9]*) 20217a48c7cSmrg # Don't forget version if it is 3.2v4 or newer. 20317a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20417a48c7cSmrg ;; 2058e0ed500Smrg -sco5v6*) 2068e0ed500Smrg # Don't forget version if it is 3.2v4 or newer. 2078e0ed500Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2088e0ed500Smrg ;; 20917a48c7cSmrg -sco*) 21017a48c7cSmrg os=-sco3.2v2 21117a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21217a48c7cSmrg ;; 21317a48c7cSmrg -udk*) 21417a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21517a48c7cSmrg ;; 21617a48c7cSmrg -isc) 21717a48c7cSmrg os=-isc2.2 21817a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21917a48c7cSmrg ;; 22017a48c7cSmrg -clix*) 22117a48c7cSmrg basic_machine=clipper-intergraph 22217a48c7cSmrg ;; 22317a48c7cSmrg -isc*) 22417a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22517a48c7cSmrg ;; 22617a48c7cSmrg -lynx*) 22717a48c7cSmrg os=-lynxos 22817a48c7cSmrg ;; 22917a48c7cSmrg -ptx*) 23017a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23117a48c7cSmrg ;; 23217a48c7cSmrg -windowsnt*) 23317a48c7cSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23417a48c7cSmrg ;; 23517a48c7cSmrg -psos*) 23617a48c7cSmrg os=-psos 23717a48c7cSmrg ;; 23817a48c7cSmrg -mint | -mint[0-9]*) 23917a48c7cSmrg basic_machine=m68k-atari 24017a48c7cSmrg os=-mint 24117a48c7cSmrg ;; 24217a48c7cSmrgesac 24317a48c7cSmrg 24417a48c7cSmrg# Decode aliases for certain CPU-COMPANY combinations. 24517a48c7cSmrgcase $basic_machine in 24617a48c7cSmrg # Recognize the basic CPU types without company name. 24717a48c7cSmrg # Some are omitted here because they have special meanings below. 24817a48c7cSmrg 1750a | 580 \ 24917a48c7cSmrg | a29k \ 25017a48c7cSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25117a48c7cSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2528e0ed500Smrg | am33_2.0 \ 2538e0ed500Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2540dd80ee0Smrg | be32 | be64 \ 2558e0ed500Smrg | bfin \ 25617a48c7cSmrg | c4x | clipper \ 25717a48c7cSmrg | d10v | d30v | dlx | dsp16xx \ 2580dd80ee0Smrg | epiphany \ 259fbed5abfSmrg | fido | fr30 | frv \ 26017a48c7cSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2610dd80ee0Smrg | hexagon \ 26217a48c7cSmrg | i370 | i860 | i960 | ia64 \ 2638e0ed500Smrg | ip2k | iq2000 \ 2640dd80ee0Smrg | le32 | le64 \ 2655f5b92ffSmrg | lm32 \ 2668e0ed500Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2675f5b92ffSmrg | maxq | mb | microblaze | mcore | mep | metag \ 26817a48c7cSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26917a48c7cSmrg | mips16 \ 27017a48c7cSmrg | mips64 | mips64el \ 2715f5b92ffSmrg | mips64octeon | mips64octeonel \ 27217a48c7cSmrg | mips64orion | mips64orionel \ 2735f5b92ffSmrg | mips64r5900 | mips64r5900el \ 2745f5b92ffSmrg | mips64vr | mips64vrel \ 27517a48c7cSmrg | mips64vr4100 | mips64vr4100el \ 27617a48c7cSmrg | mips64vr4300 | mips64vr4300el \ 27717a48c7cSmrg | mips64vr5000 | mips64vr5000el \ 2788e0ed500Smrg | mips64vr5900 | mips64vr5900el \ 27917a48c7cSmrg | mipsisa32 | mipsisa32el \ 28017a48c7cSmrg | mipsisa32r2 | mipsisa32r2el \ 28117a48c7cSmrg | mipsisa64 | mipsisa64el \ 2828e0ed500Smrg | mipsisa64r2 | mipsisa64r2el \ 28317a48c7cSmrg | mipsisa64sb1 | mipsisa64sb1el \ 28417a48c7cSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 28517a48c7cSmrg | mipstx39 | mipstx39el \ 28617a48c7cSmrg | mn10200 | mn10300 \ 2875f5b92ffSmrg | moxie \ 2888e0ed500Smrg | mt \ 28917a48c7cSmrg | msp430 \ 2900dd80ee0Smrg | nds32 | nds32le | nds32be \ 2918e0ed500Smrg | nios | nios2 \ 29217a48c7cSmrg | ns16k | ns32k \ 2930dd80ee0Smrg | open8 \ 2948e0ed500Smrg | or32 \ 29517a48c7cSmrg | pdp10 | pdp11 | pj | pjl \ 2960dd80ee0Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 29717a48c7cSmrg | pyramid \ 2980dd80ee0Smrg | rl78 | rx \ 2998e0ed500Smrg | score \ 3005f5b92ffSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30117a48c7cSmrg | sh64 | sh64le \ 3028e0ed500Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3038e0ed500Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 3040dd80ee0Smrg | spu \ 3050dd80ee0Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3065f5b92ffSmrg | ubicom32 \ 3070dd80ee0Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 30817a48c7cSmrg | we32k \ 3090dd80ee0Smrg | x86 | xc16x | xstormy16 | xtensa \ 3105f5b92ffSmrg | z8k | z80) 31117a48c7cSmrg basic_machine=$basic_machine-unknown 31217a48c7cSmrg ;; 3130dd80ee0Smrg c54x) 3140dd80ee0Smrg basic_machine=tic54x-unknown 3150dd80ee0Smrg ;; 3160dd80ee0Smrg c55x) 3170dd80ee0Smrg basic_machine=tic55x-unknown 3180dd80ee0Smrg ;; 3190dd80ee0Smrg c6x) 3200dd80ee0Smrg basic_machine=tic6x-unknown 3210dd80ee0Smrg ;; 3225f5b92ffSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 32317a48c7cSmrg basic_machine=$basic_machine-unknown 32417a48c7cSmrg os=-none 32517a48c7cSmrg ;; 32617a48c7cSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32717a48c7cSmrg ;; 3288e0ed500Smrg ms1) 3298e0ed500Smrg basic_machine=mt-unknown 3308e0ed500Smrg ;; 33117a48c7cSmrg 3320dd80ee0Smrg strongarm | thumb | xscale) 3330dd80ee0Smrg basic_machine=arm-unknown 3340dd80ee0Smrg ;; 3350dd80ee0Smrg 3360dd80ee0Smrg xscaleeb) 3370dd80ee0Smrg basic_machine=armeb-unknown 3380dd80ee0Smrg ;; 3390dd80ee0Smrg 3400dd80ee0Smrg xscaleel) 3410dd80ee0Smrg basic_machine=armel-unknown 3420dd80ee0Smrg ;; 3430dd80ee0Smrg 34417a48c7cSmrg # We use `pc' rather than `unknown' 34517a48c7cSmrg # because (1) that's what they normally are, and 34617a48c7cSmrg # (2) the word "unknown" tends to confuse beginning users. 34717a48c7cSmrg i*86 | x86_64) 34817a48c7cSmrg basic_machine=$basic_machine-pc 34917a48c7cSmrg ;; 35017a48c7cSmrg # Object if more than one company name word. 35117a48c7cSmrg *-*-*) 35217a48c7cSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 35317a48c7cSmrg exit 1 35417a48c7cSmrg ;; 35517a48c7cSmrg # Recognize the basic CPU types with company name. 35617a48c7cSmrg 580-* \ 35717a48c7cSmrg | a29k-* \ 35817a48c7cSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 35917a48c7cSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 36017a48c7cSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 36117a48c7cSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3628e0ed500Smrg | avr-* | avr32-* \ 3630dd80ee0Smrg | be32-* | be64-* \ 3648e0ed500Smrg | bfin-* | bs2000-* \ 3650dd80ee0Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3668e0ed500Smrg | clipper-* | craynv-* | cydra-* \ 36717a48c7cSmrg | d10v-* | d30v-* | dlx-* \ 36817a48c7cSmrg | elxsi-* \ 369fbed5abfSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 37017a48c7cSmrg | h8300-* | h8500-* \ 37117a48c7cSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3720dd80ee0Smrg | hexagon-* \ 37317a48c7cSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3748e0ed500Smrg | ip2k-* | iq2000-* \ 3750dd80ee0Smrg | le32-* | le64-* \ 3765f5b92ffSmrg | lm32-* \ 3778e0ed500Smrg | m32c-* | m32r-* | m32rle-* \ 37817a48c7cSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3795f5b92ffSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 38017a48c7cSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 38117a48c7cSmrg | mips16-* \ 38217a48c7cSmrg | mips64-* | mips64el-* \ 3835f5b92ffSmrg | mips64octeon-* | mips64octeonel-* \ 38417a48c7cSmrg | mips64orion-* | mips64orionel-* \ 3855f5b92ffSmrg | mips64r5900-* | mips64r5900el-* \ 3865f5b92ffSmrg | mips64vr-* | mips64vrel-* \ 38717a48c7cSmrg | mips64vr4100-* | mips64vr4100el-* \ 38817a48c7cSmrg | mips64vr4300-* | mips64vr4300el-* \ 38917a48c7cSmrg | mips64vr5000-* | mips64vr5000el-* \ 3908e0ed500Smrg | mips64vr5900-* | mips64vr5900el-* \ 39117a48c7cSmrg | mipsisa32-* | mipsisa32el-* \ 39217a48c7cSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 39317a48c7cSmrg | mipsisa64-* | mipsisa64el-* \ 3948e0ed500Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 39517a48c7cSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 39617a48c7cSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 39717a48c7cSmrg | mipstx39-* | mipstx39el-* \ 3988e0ed500Smrg | mmix-* \ 3998e0ed500Smrg | mt-* \ 40017a48c7cSmrg | msp430-* \ 4010dd80ee0Smrg | nds32-* | nds32le-* | nds32be-* \ 4028e0ed500Smrg | nios-* | nios2-* \ 4038e0ed500Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 4040dd80ee0Smrg | open8-* \ 40517a48c7cSmrg | orion-* \ 40617a48c7cSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 4070dd80ee0Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 40817a48c7cSmrg | pyramid-* \ 4090dd80ee0Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 4105f5b92ffSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 41117a48c7cSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4128e0ed500Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4138e0ed500Smrg | sparclite-* \ 4140dd80ee0Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 4150dd80ee0Smrg | tahoe-* \ 4160dd80ee0Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 4170dd80ee0Smrg | tile*-* \ 41817a48c7cSmrg | tron-* \ 4195f5b92ffSmrg | ubicom32-* \ 4200dd80ee0Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 4210dd80ee0Smrg | vax-* \ 42217a48c7cSmrg | we32k-* \ 4230dd80ee0Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 424fbed5abfSmrg | xstormy16-* | xtensa*-* \ 42517a48c7cSmrg | ymp-* \ 4265f5b92ffSmrg | z8k-* | z80-*) 42717a48c7cSmrg ;; 428fbed5abfSmrg # Recognize the basic CPU types without company name, with glob match. 429fbed5abfSmrg xtensa*) 430fbed5abfSmrg basic_machine=$basic_machine-unknown 431fbed5abfSmrg ;; 43217a48c7cSmrg # Recognize the various machine names and aliases which stand 43317a48c7cSmrg # for a CPU type and a company and sometimes even an OS. 43417a48c7cSmrg 386bsd) 43517a48c7cSmrg basic_machine=i386-unknown 43617a48c7cSmrg os=-bsd 43717a48c7cSmrg ;; 43817a48c7cSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 43917a48c7cSmrg basic_machine=m68000-att 44017a48c7cSmrg ;; 44117a48c7cSmrg 3b*) 44217a48c7cSmrg basic_machine=we32k-att 44317a48c7cSmrg ;; 44417a48c7cSmrg a29khif) 44517a48c7cSmrg basic_machine=a29k-amd 44617a48c7cSmrg os=-udi 44717a48c7cSmrg ;; 4480dd80ee0Smrg abacus) 4498e0ed500Smrg basic_machine=abacus-unknown 4508e0ed500Smrg ;; 45117a48c7cSmrg adobe68k) 45217a48c7cSmrg basic_machine=m68010-adobe 45317a48c7cSmrg os=-scout 45417a48c7cSmrg ;; 45517a48c7cSmrg alliant | fx80) 45617a48c7cSmrg basic_machine=fx80-alliant 45717a48c7cSmrg ;; 45817a48c7cSmrg altos | altos3068) 45917a48c7cSmrg basic_machine=m68k-altos 46017a48c7cSmrg ;; 46117a48c7cSmrg am29k) 46217a48c7cSmrg basic_machine=a29k-none 46317a48c7cSmrg os=-bsd 46417a48c7cSmrg ;; 46517a48c7cSmrg amd64) 46617a48c7cSmrg basic_machine=x86_64-pc 46717a48c7cSmrg ;; 4688e0ed500Smrg amd64-*) 4698e0ed500Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4708e0ed500Smrg ;; 47117a48c7cSmrg amdahl) 47217a48c7cSmrg basic_machine=580-amdahl 47317a48c7cSmrg os=-sysv 47417a48c7cSmrg ;; 47517a48c7cSmrg amiga | amiga-*) 47617a48c7cSmrg basic_machine=m68k-unknown 47717a48c7cSmrg ;; 47817a48c7cSmrg amigaos | amigados) 47917a48c7cSmrg basic_machine=m68k-unknown 48017a48c7cSmrg os=-amigaos 48117a48c7cSmrg ;; 48217a48c7cSmrg amigaunix | amix) 48317a48c7cSmrg basic_machine=m68k-unknown 48417a48c7cSmrg os=-sysv4 48517a48c7cSmrg ;; 48617a48c7cSmrg apollo68) 48717a48c7cSmrg basic_machine=m68k-apollo 48817a48c7cSmrg os=-sysv 48917a48c7cSmrg ;; 49017a48c7cSmrg apollo68bsd) 49117a48c7cSmrg basic_machine=m68k-apollo 49217a48c7cSmrg os=-bsd 49317a48c7cSmrg ;; 4945f5b92ffSmrg aros) 4955f5b92ffSmrg basic_machine=i386-pc 4965f5b92ffSmrg os=-aros 4975f5b92ffSmrg ;; 49817a48c7cSmrg aux) 49917a48c7cSmrg basic_machine=m68k-apple 50017a48c7cSmrg os=-aux 50117a48c7cSmrg ;; 50217a48c7cSmrg balance) 50317a48c7cSmrg basic_machine=ns32k-sequent 50417a48c7cSmrg os=-dynix 50517a48c7cSmrg ;; 506fbed5abfSmrg blackfin) 507fbed5abfSmrg basic_machine=bfin-unknown 508fbed5abfSmrg os=-linux 509fbed5abfSmrg ;; 510fbed5abfSmrg blackfin-*) 511fbed5abfSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 512fbed5abfSmrg os=-linux 513fbed5abfSmrg ;; 5145f5b92ffSmrg bluegene*) 5155f5b92ffSmrg basic_machine=powerpc-ibm 5165f5b92ffSmrg os=-cnk 5175f5b92ffSmrg ;; 5180dd80ee0Smrg c54x-*) 5190dd80ee0Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 5200dd80ee0Smrg ;; 5210dd80ee0Smrg c55x-*) 5220dd80ee0Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5230dd80ee0Smrg ;; 5240dd80ee0Smrg c6x-*) 5250dd80ee0Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5260dd80ee0Smrg ;; 52717a48c7cSmrg c90) 52817a48c7cSmrg basic_machine=c90-cray 52917a48c7cSmrg os=-unicos 53017a48c7cSmrg ;; 5310dd80ee0Smrg cegcc) 5325f5b92ffSmrg basic_machine=arm-unknown 5335f5b92ffSmrg os=-cegcc 5345f5b92ffSmrg ;; 53517a48c7cSmrg convex-c1) 53617a48c7cSmrg basic_machine=c1-convex 53717a48c7cSmrg os=-bsd 53817a48c7cSmrg ;; 53917a48c7cSmrg convex-c2) 54017a48c7cSmrg basic_machine=c2-convex 54117a48c7cSmrg os=-bsd 54217a48c7cSmrg ;; 54317a48c7cSmrg convex-c32) 54417a48c7cSmrg basic_machine=c32-convex 54517a48c7cSmrg os=-bsd 54617a48c7cSmrg ;; 54717a48c7cSmrg convex-c34) 54817a48c7cSmrg basic_machine=c34-convex 54917a48c7cSmrg os=-bsd 55017a48c7cSmrg ;; 55117a48c7cSmrg convex-c38) 55217a48c7cSmrg basic_machine=c38-convex 55317a48c7cSmrg os=-bsd 55417a48c7cSmrg ;; 55517a48c7cSmrg cray | j90) 55617a48c7cSmrg basic_machine=j90-cray 55717a48c7cSmrg os=-unicos 55817a48c7cSmrg ;; 5598e0ed500Smrg craynv) 5608e0ed500Smrg basic_machine=craynv-cray 5618e0ed500Smrg os=-unicosmp 5628e0ed500Smrg ;; 5630dd80ee0Smrg cr16 | cr16-*) 564fbed5abfSmrg basic_machine=cr16-unknown 5658e0ed500Smrg os=-elf 5668e0ed500Smrg ;; 56717a48c7cSmrg crds | unos) 56817a48c7cSmrg basic_machine=m68k-crds 56917a48c7cSmrg ;; 5708e0ed500Smrg crisv32 | crisv32-* | etraxfs*) 5718e0ed500Smrg basic_machine=crisv32-axis 5728e0ed500Smrg ;; 57317a48c7cSmrg cris | cris-* | etrax*) 57417a48c7cSmrg basic_machine=cris-axis 57517a48c7cSmrg ;; 5768e0ed500Smrg crx) 5778e0ed500Smrg basic_machine=crx-unknown 5788e0ed500Smrg os=-elf 5798e0ed500Smrg ;; 58017a48c7cSmrg da30 | da30-*) 58117a48c7cSmrg basic_machine=m68k-da30 58217a48c7cSmrg ;; 58317a48c7cSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 58417a48c7cSmrg basic_machine=mips-dec 58517a48c7cSmrg ;; 58617a48c7cSmrg decsystem10* | dec10*) 58717a48c7cSmrg basic_machine=pdp10-dec 58817a48c7cSmrg os=-tops10 58917a48c7cSmrg ;; 59017a48c7cSmrg decsystem20* | dec20*) 59117a48c7cSmrg basic_machine=pdp10-dec 59217a48c7cSmrg os=-tops20 59317a48c7cSmrg ;; 59417a48c7cSmrg delta | 3300 | motorola-3300 | motorola-delta \ 59517a48c7cSmrg | 3300-motorola | delta-motorola) 59617a48c7cSmrg basic_machine=m68k-motorola 59717a48c7cSmrg ;; 59817a48c7cSmrg delta88) 59917a48c7cSmrg basic_machine=m88k-motorola 60017a48c7cSmrg os=-sysv3 60117a48c7cSmrg ;; 6025f5b92ffSmrg dicos) 6035f5b92ffSmrg basic_machine=i686-pc 6045f5b92ffSmrg os=-dicos 6055f5b92ffSmrg ;; 6068e0ed500Smrg djgpp) 6078e0ed500Smrg basic_machine=i586-pc 6088e0ed500Smrg os=-msdosdjgpp 6098e0ed500Smrg ;; 61017a48c7cSmrg dpx20 | dpx20-*) 61117a48c7cSmrg basic_machine=rs6000-bull 61217a48c7cSmrg os=-bosx 61317a48c7cSmrg ;; 61417a48c7cSmrg dpx2* | dpx2*-bull) 61517a48c7cSmrg basic_machine=m68k-bull 61617a48c7cSmrg os=-sysv3 61717a48c7cSmrg ;; 61817a48c7cSmrg ebmon29k) 61917a48c7cSmrg basic_machine=a29k-amd 62017a48c7cSmrg os=-ebmon 62117a48c7cSmrg ;; 62217a48c7cSmrg elxsi) 62317a48c7cSmrg basic_machine=elxsi-elxsi 62417a48c7cSmrg os=-bsd 62517a48c7cSmrg ;; 62617a48c7cSmrg encore | umax | mmax) 62717a48c7cSmrg basic_machine=ns32k-encore 62817a48c7cSmrg ;; 62917a48c7cSmrg es1800 | OSE68k | ose68k | ose | OSE) 63017a48c7cSmrg basic_machine=m68k-ericsson 63117a48c7cSmrg os=-ose 63217a48c7cSmrg ;; 63317a48c7cSmrg fx2800) 63417a48c7cSmrg basic_machine=i860-alliant 63517a48c7cSmrg ;; 63617a48c7cSmrg genix) 63717a48c7cSmrg basic_machine=ns32k-ns 63817a48c7cSmrg ;; 63917a48c7cSmrg gmicro) 64017a48c7cSmrg basic_machine=tron-gmicro 64117a48c7cSmrg os=-sysv 64217a48c7cSmrg ;; 64317a48c7cSmrg go32) 64417a48c7cSmrg basic_machine=i386-pc 64517a48c7cSmrg os=-go32 64617a48c7cSmrg ;; 64717a48c7cSmrg h3050r* | hiux*) 64817a48c7cSmrg basic_machine=hppa1.1-hitachi 64917a48c7cSmrg os=-hiuxwe2 65017a48c7cSmrg ;; 65117a48c7cSmrg h8300hms) 65217a48c7cSmrg basic_machine=h8300-hitachi 65317a48c7cSmrg os=-hms 65417a48c7cSmrg ;; 65517a48c7cSmrg h8300xray) 65617a48c7cSmrg basic_machine=h8300-hitachi 65717a48c7cSmrg os=-xray 65817a48c7cSmrg ;; 65917a48c7cSmrg h8500hms) 66017a48c7cSmrg basic_machine=h8500-hitachi 66117a48c7cSmrg os=-hms 66217a48c7cSmrg ;; 66317a48c7cSmrg harris) 66417a48c7cSmrg basic_machine=m88k-harris 66517a48c7cSmrg os=-sysv3 66617a48c7cSmrg ;; 66717a48c7cSmrg hp300-*) 66817a48c7cSmrg basic_machine=m68k-hp 66917a48c7cSmrg ;; 67017a48c7cSmrg hp300bsd) 67117a48c7cSmrg basic_machine=m68k-hp 67217a48c7cSmrg os=-bsd 67317a48c7cSmrg ;; 67417a48c7cSmrg hp300hpux) 67517a48c7cSmrg basic_machine=m68k-hp 67617a48c7cSmrg os=-hpux 67717a48c7cSmrg ;; 67817a48c7cSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 67917a48c7cSmrg basic_machine=hppa1.0-hp 68017a48c7cSmrg ;; 68117a48c7cSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 68217a48c7cSmrg basic_machine=m68000-hp 68317a48c7cSmrg ;; 68417a48c7cSmrg hp9k3[2-9][0-9]) 68517a48c7cSmrg basic_machine=m68k-hp 68617a48c7cSmrg ;; 68717a48c7cSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 68817a48c7cSmrg basic_machine=hppa1.0-hp 68917a48c7cSmrg ;; 69017a48c7cSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 69117a48c7cSmrg basic_machine=hppa1.1-hp 69217a48c7cSmrg ;; 69317a48c7cSmrg hp9k78[0-9] | hp78[0-9]) 69417a48c7cSmrg # FIXME: really hppa2.0-hp 69517a48c7cSmrg basic_machine=hppa1.1-hp 69617a48c7cSmrg ;; 69717a48c7cSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 69817a48c7cSmrg # FIXME: really hppa2.0-hp 69917a48c7cSmrg basic_machine=hppa1.1-hp 70017a48c7cSmrg ;; 70117a48c7cSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 70217a48c7cSmrg basic_machine=hppa1.1-hp 70317a48c7cSmrg ;; 70417a48c7cSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 70517a48c7cSmrg basic_machine=hppa1.0-hp 70617a48c7cSmrg ;; 70717a48c7cSmrg hppa-next) 70817a48c7cSmrg os=-nextstep3 70917a48c7cSmrg ;; 71017a48c7cSmrg hppaosf) 71117a48c7cSmrg basic_machine=hppa1.1-hp 71217a48c7cSmrg os=-osf 71317a48c7cSmrg ;; 71417a48c7cSmrg hppro) 71517a48c7cSmrg basic_machine=hppa1.1-hp 71617a48c7cSmrg os=-proelf 71717a48c7cSmrg ;; 71817a48c7cSmrg i370-ibm* | ibm*) 71917a48c7cSmrg basic_machine=i370-ibm 72017a48c7cSmrg ;; 72117a48c7cSmrg i*86v32) 72217a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72317a48c7cSmrg os=-sysv32 72417a48c7cSmrg ;; 72517a48c7cSmrg i*86v4*) 72617a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72717a48c7cSmrg os=-sysv4 72817a48c7cSmrg ;; 72917a48c7cSmrg i*86v) 73017a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73117a48c7cSmrg os=-sysv 73217a48c7cSmrg ;; 73317a48c7cSmrg i*86sol2) 73417a48c7cSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73517a48c7cSmrg os=-solaris2 73617a48c7cSmrg ;; 73717a48c7cSmrg i386mach) 73817a48c7cSmrg basic_machine=i386-mach 73917a48c7cSmrg os=-mach 74017a48c7cSmrg ;; 74117a48c7cSmrg i386-vsta | vsta) 74217a48c7cSmrg basic_machine=i386-unknown 74317a48c7cSmrg os=-vsta 74417a48c7cSmrg ;; 74517a48c7cSmrg iris | iris4d) 74617a48c7cSmrg basic_machine=mips-sgi 74717a48c7cSmrg case $os in 74817a48c7cSmrg -irix*) 74917a48c7cSmrg ;; 75017a48c7cSmrg *) 75117a48c7cSmrg os=-irix4 75217a48c7cSmrg ;; 75317a48c7cSmrg esac 75417a48c7cSmrg ;; 75517a48c7cSmrg isi68 | isi) 75617a48c7cSmrg basic_machine=m68k-isi 75717a48c7cSmrg os=-sysv 75817a48c7cSmrg ;; 759fbed5abfSmrg m68knommu) 760fbed5abfSmrg basic_machine=m68k-unknown 761fbed5abfSmrg os=-linux 762fbed5abfSmrg ;; 763fbed5abfSmrg m68knommu-*) 764fbed5abfSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 765fbed5abfSmrg os=-linux 766fbed5abfSmrg ;; 76717a48c7cSmrg m88k-omron*) 76817a48c7cSmrg basic_machine=m88k-omron 76917a48c7cSmrg ;; 77017a48c7cSmrg magnum | m3230) 77117a48c7cSmrg basic_machine=mips-mips 77217a48c7cSmrg os=-sysv 77317a48c7cSmrg ;; 77417a48c7cSmrg merlin) 77517a48c7cSmrg basic_machine=ns32k-utek 77617a48c7cSmrg os=-sysv 77717a48c7cSmrg ;; 7780dd80ee0Smrg microblaze) 7795f5b92ffSmrg basic_machine=microblaze-xilinx 7805f5b92ffSmrg ;; 78117a48c7cSmrg mingw32) 78217a48c7cSmrg basic_machine=i386-pc 78317a48c7cSmrg os=-mingw32 78417a48c7cSmrg ;; 785fbed5abfSmrg mingw32ce) 786fbed5abfSmrg basic_machine=arm-unknown 787fbed5abfSmrg os=-mingw32ce 788fbed5abfSmrg ;; 78917a48c7cSmrg miniframe) 79017a48c7cSmrg basic_machine=m68000-convergent 79117a48c7cSmrg ;; 79217a48c7cSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 79317a48c7cSmrg basic_machine=m68k-atari 79417a48c7cSmrg os=-mint 79517a48c7cSmrg ;; 79617a48c7cSmrg mips3*-*) 79717a48c7cSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 79817a48c7cSmrg ;; 79917a48c7cSmrg mips3*) 80017a48c7cSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 80117a48c7cSmrg ;; 80217a48c7cSmrg monitor) 80317a48c7cSmrg basic_machine=m68k-rom68k 80417a48c7cSmrg os=-coff 80517a48c7cSmrg ;; 80617a48c7cSmrg morphos) 80717a48c7cSmrg basic_machine=powerpc-unknown 80817a48c7cSmrg os=-morphos 80917a48c7cSmrg ;; 81017a48c7cSmrg msdos) 81117a48c7cSmrg basic_machine=i386-pc 81217a48c7cSmrg os=-msdos 81317a48c7cSmrg ;; 8148e0ed500Smrg ms1-*) 8158e0ed500Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8168e0ed500Smrg ;; 8170dd80ee0Smrg msys) 8180dd80ee0Smrg basic_machine=i386-pc 8190dd80ee0Smrg os=-msys 8200dd80ee0Smrg ;; 82117a48c7cSmrg mvs) 82217a48c7cSmrg basic_machine=i370-ibm 82317a48c7cSmrg os=-mvs 82417a48c7cSmrg ;; 8250dd80ee0Smrg nacl) 8260dd80ee0Smrg basic_machine=le32-unknown 8270dd80ee0Smrg os=-nacl 8280dd80ee0Smrg ;; 82917a48c7cSmrg ncr3000) 83017a48c7cSmrg basic_machine=i486-ncr 83117a48c7cSmrg os=-sysv4 83217a48c7cSmrg ;; 83317a48c7cSmrg netbsd386) 83417a48c7cSmrg basic_machine=i386-unknown 83517a48c7cSmrg os=-netbsd 83617a48c7cSmrg ;; 83717a48c7cSmrg netwinder) 83817a48c7cSmrg basic_machine=armv4l-rebel 83917a48c7cSmrg os=-linux 84017a48c7cSmrg ;; 84117a48c7cSmrg news | news700 | news800 | news900) 84217a48c7cSmrg basic_machine=m68k-sony 84317a48c7cSmrg os=-newsos 84417a48c7cSmrg ;; 84517a48c7cSmrg news1000) 84617a48c7cSmrg basic_machine=m68030-sony 84717a48c7cSmrg os=-newsos 84817a48c7cSmrg ;; 84917a48c7cSmrg news-3600 | risc-news) 85017a48c7cSmrg basic_machine=mips-sony 85117a48c7cSmrg os=-newsos 85217a48c7cSmrg ;; 85317a48c7cSmrg necv70) 85417a48c7cSmrg basic_machine=v70-nec 85517a48c7cSmrg os=-sysv 85617a48c7cSmrg ;; 85717a48c7cSmrg next | m*-next ) 85817a48c7cSmrg basic_machine=m68k-next 85917a48c7cSmrg case $os in 86017a48c7cSmrg -nextstep* ) 86117a48c7cSmrg ;; 86217a48c7cSmrg -ns2*) 86317a48c7cSmrg os=-nextstep2 86417a48c7cSmrg ;; 86517a48c7cSmrg *) 86617a48c7cSmrg os=-nextstep3 86717a48c7cSmrg ;; 86817a48c7cSmrg esac 86917a48c7cSmrg ;; 87017a48c7cSmrg nh3000) 87117a48c7cSmrg basic_machine=m68k-harris 87217a48c7cSmrg os=-cxux 87317a48c7cSmrg ;; 87417a48c7cSmrg nh[45]000) 87517a48c7cSmrg basic_machine=m88k-harris 87617a48c7cSmrg os=-cxux 87717a48c7cSmrg ;; 87817a48c7cSmrg nindy960) 87917a48c7cSmrg basic_machine=i960-intel 88017a48c7cSmrg os=-nindy 88117a48c7cSmrg ;; 88217a48c7cSmrg mon960) 88317a48c7cSmrg basic_machine=i960-intel 88417a48c7cSmrg os=-mon960 88517a48c7cSmrg ;; 88617a48c7cSmrg nonstopux) 88717a48c7cSmrg basic_machine=mips-compaq 88817a48c7cSmrg os=-nonstopux 88917a48c7cSmrg ;; 89017a48c7cSmrg np1) 89117a48c7cSmrg basic_machine=np1-gould 89217a48c7cSmrg ;; 8930dd80ee0Smrg neo-tandem) 8940dd80ee0Smrg basic_machine=neo-tandem 8950dd80ee0Smrg ;; 8960dd80ee0Smrg nse-tandem) 8970dd80ee0Smrg basic_machine=nse-tandem 8980dd80ee0Smrg ;; 89917a48c7cSmrg nsr-tandem) 90017a48c7cSmrg basic_machine=nsr-tandem 90117a48c7cSmrg ;; 90217a48c7cSmrg op50n-* | op60c-*) 90317a48c7cSmrg basic_machine=hppa1.1-oki 90417a48c7cSmrg os=-proelf 90517a48c7cSmrg ;; 9068e0ed500Smrg openrisc | openrisc-*) 90717a48c7cSmrg basic_machine=or32-unknown 9088e0ed500Smrg ;; 9098e0ed500Smrg os400) 9108e0ed500Smrg basic_machine=powerpc-ibm 9118e0ed500Smrg os=-os400 91217a48c7cSmrg ;; 91317a48c7cSmrg OSE68000 | ose68000) 91417a48c7cSmrg basic_machine=m68000-ericsson 91517a48c7cSmrg os=-ose 91617a48c7cSmrg ;; 91717a48c7cSmrg os68k) 91817a48c7cSmrg basic_machine=m68k-none 91917a48c7cSmrg os=-os68k 92017a48c7cSmrg ;; 92117a48c7cSmrg pa-hitachi) 92217a48c7cSmrg basic_machine=hppa1.1-hitachi 92317a48c7cSmrg os=-hiuxwe2 92417a48c7cSmrg ;; 92517a48c7cSmrg paragon) 92617a48c7cSmrg basic_machine=i860-intel 92717a48c7cSmrg os=-osf 92817a48c7cSmrg ;; 929fbed5abfSmrg parisc) 930fbed5abfSmrg basic_machine=hppa-unknown 931fbed5abfSmrg os=-linux 932fbed5abfSmrg ;; 933fbed5abfSmrg parisc-*) 934fbed5abfSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 935fbed5abfSmrg os=-linux 936fbed5abfSmrg ;; 93717a48c7cSmrg pbd) 93817a48c7cSmrg basic_machine=sparc-tti 93917a48c7cSmrg ;; 94017a48c7cSmrg pbb) 94117a48c7cSmrg basic_machine=m68k-tti 94217a48c7cSmrg ;; 94317a48c7cSmrg pc532 | pc532-*) 94417a48c7cSmrg basic_machine=ns32k-pc532 94517a48c7cSmrg ;; 9468e0ed500Smrg pc98) 9478e0ed500Smrg basic_machine=i386-pc 9488e0ed500Smrg ;; 9498e0ed500Smrg pc98-*) 9508e0ed500Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9518e0ed500Smrg ;; 95217a48c7cSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 95317a48c7cSmrg basic_machine=i586-pc 95417a48c7cSmrg ;; 95517a48c7cSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 95617a48c7cSmrg basic_machine=i686-pc 95717a48c7cSmrg ;; 95817a48c7cSmrg pentiumii | pentium2 | pentiumiii | pentium3) 95917a48c7cSmrg basic_machine=i686-pc 96017a48c7cSmrg ;; 96117a48c7cSmrg pentium4) 96217a48c7cSmrg basic_machine=i786-pc 96317a48c7cSmrg ;; 96417a48c7cSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 96517a48c7cSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 96617a48c7cSmrg ;; 96717a48c7cSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 96817a48c7cSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 96917a48c7cSmrg ;; 97017a48c7cSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 97117a48c7cSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 97217a48c7cSmrg ;; 97317a48c7cSmrg pentium4-*) 97417a48c7cSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 97517a48c7cSmrg ;; 97617a48c7cSmrg pn) 97717a48c7cSmrg basic_machine=pn-gould 97817a48c7cSmrg ;; 97917a48c7cSmrg power) basic_machine=power-ibm 98017a48c7cSmrg ;; 9810dd80ee0Smrg ppc | ppcbe) basic_machine=powerpc-unknown 98217a48c7cSmrg ;; 9830dd80ee0Smrg ppc-* | ppcbe-*) 9840dd80ee0Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 98517a48c7cSmrg ;; 98617a48c7cSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 98717a48c7cSmrg basic_machine=powerpcle-unknown 98817a48c7cSmrg ;; 98917a48c7cSmrg ppcle-* | powerpclittle-*) 99017a48c7cSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 99117a48c7cSmrg ;; 99217a48c7cSmrg ppc64) basic_machine=powerpc64-unknown 99317a48c7cSmrg ;; 99417a48c7cSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 99517a48c7cSmrg ;; 99617a48c7cSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 99717a48c7cSmrg basic_machine=powerpc64le-unknown 99817a48c7cSmrg ;; 99917a48c7cSmrg ppc64le-* | powerpc64little-*) 100017a48c7cSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 100117a48c7cSmrg ;; 100217a48c7cSmrg ps2) 100317a48c7cSmrg basic_machine=i386-ibm 100417a48c7cSmrg ;; 100517a48c7cSmrg pw32) 100617a48c7cSmrg basic_machine=i586-unknown 100717a48c7cSmrg os=-pw32 100817a48c7cSmrg ;; 10098e0ed500Smrg rdos) 10108e0ed500Smrg basic_machine=i386-pc 10118e0ed500Smrg os=-rdos 10128e0ed500Smrg ;; 101317a48c7cSmrg rom68k) 101417a48c7cSmrg basic_machine=m68k-rom68k 101517a48c7cSmrg os=-coff 101617a48c7cSmrg ;; 101717a48c7cSmrg rm[46]00) 101817a48c7cSmrg basic_machine=mips-siemens 101917a48c7cSmrg ;; 102017a48c7cSmrg rtpc | rtpc-*) 102117a48c7cSmrg basic_machine=romp-ibm 102217a48c7cSmrg ;; 10238e0ed500Smrg s390 | s390-*) 10248e0ed500Smrg basic_machine=s390-ibm 10258e0ed500Smrg ;; 10268e0ed500Smrg s390x | s390x-*) 10278e0ed500Smrg basic_machine=s390x-ibm 10288e0ed500Smrg ;; 102917a48c7cSmrg sa29200) 103017a48c7cSmrg basic_machine=a29k-amd 103117a48c7cSmrg os=-udi 103217a48c7cSmrg ;; 103317a48c7cSmrg sb1) 103417a48c7cSmrg basic_machine=mipsisa64sb1-unknown 103517a48c7cSmrg ;; 103617a48c7cSmrg sb1el) 103717a48c7cSmrg basic_machine=mipsisa64sb1el-unknown 103817a48c7cSmrg ;; 10398e0ed500Smrg sde) 10408e0ed500Smrg basic_machine=mipsisa32-sde 10418e0ed500Smrg os=-elf 10428e0ed500Smrg ;; 104317a48c7cSmrg sei) 104417a48c7cSmrg basic_machine=mips-sei 104517a48c7cSmrg os=-seiux 104617a48c7cSmrg ;; 104717a48c7cSmrg sequent) 104817a48c7cSmrg basic_machine=i386-sequent 104917a48c7cSmrg ;; 105017a48c7cSmrg sh) 105117a48c7cSmrg basic_machine=sh-hitachi 105217a48c7cSmrg os=-hms 105317a48c7cSmrg ;; 1054fbed5abfSmrg sh5el) 1055fbed5abfSmrg basic_machine=sh5le-unknown 1056fbed5abfSmrg ;; 105717a48c7cSmrg sh64) 105817a48c7cSmrg basic_machine=sh64-unknown 105917a48c7cSmrg ;; 106017a48c7cSmrg sparclite-wrs | simso-wrs) 106117a48c7cSmrg basic_machine=sparclite-wrs 106217a48c7cSmrg os=-vxworks 106317a48c7cSmrg ;; 106417a48c7cSmrg sps7) 106517a48c7cSmrg basic_machine=m68k-bull 106617a48c7cSmrg os=-sysv2 106717a48c7cSmrg ;; 106817a48c7cSmrg spur) 106917a48c7cSmrg basic_machine=spur-unknown 107017a48c7cSmrg ;; 107117a48c7cSmrg st2000) 107217a48c7cSmrg basic_machine=m68k-tandem 107317a48c7cSmrg ;; 107417a48c7cSmrg stratus) 107517a48c7cSmrg basic_machine=i860-stratus 107617a48c7cSmrg os=-sysv4 107717a48c7cSmrg ;; 10780dd80ee0Smrg strongarm-* | thumb-*) 10790dd80ee0Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 10800dd80ee0Smrg ;; 108117a48c7cSmrg sun2) 108217a48c7cSmrg basic_machine=m68000-sun 108317a48c7cSmrg ;; 108417a48c7cSmrg sun2os3) 108517a48c7cSmrg basic_machine=m68000-sun 108617a48c7cSmrg os=-sunos3 108717a48c7cSmrg ;; 108817a48c7cSmrg sun2os4) 108917a48c7cSmrg basic_machine=m68000-sun 109017a48c7cSmrg os=-sunos4 109117a48c7cSmrg ;; 109217a48c7cSmrg sun3os3) 109317a48c7cSmrg basic_machine=m68k-sun 109417a48c7cSmrg os=-sunos3 109517a48c7cSmrg ;; 109617a48c7cSmrg sun3os4) 109717a48c7cSmrg basic_machine=m68k-sun 109817a48c7cSmrg os=-sunos4 109917a48c7cSmrg ;; 110017a48c7cSmrg sun4os3) 110117a48c7cSmrg basic_machine=sparc-sun 110217a48c7cSmrg os=-sunos3 110317a48c7cSmrg ;; 110417a48c7cSmrg sun4os4) 110517a48c7cSmrg basic_machine=sparc-sun 110617a48c7cSmrg os=-sunos4 110717a48c7cSmrg ;; 110817a48c7cSmrg sun4sol2) 110917a48c7cSmrg basic_machine=sparc-sun 111017a48c7cSmrg os=-solaris2 111117a48c7cSmrg ;; 111217a48c7cSmrg sun3 | sun3-*) 111317a48c7cSmrg basic_machine=m68k-sun 111417a48c7cSmrg ;; 111517a48c7cSmrg sun4) 111617a48c7cSmrg basic_machine=sparc-sun 111717a48c7cSmrg ;; 111817a48c7cSmrg sun386 | sun386i | roadrunner) 111917a48c7cSmrg basic_machine=i386-sun 112017a48c7cSmrg ;; 112117a48c7cSmrg sv1) 112217a48c7cSmrg basic_machine=sv1-cray 112317a48c7cSmrg os=-unicos 112417a48c7cSmrg ;; 112517a48c7cSmrg symmetry) 112617a48c7cSmrg basic_machine=i386-sequent 112717a48c7cSmrg os=-dynix 112817a48c7cSmrg ;; 112917a48c7cSmrg t3e) 113017a48c7cSmrg basic_machine=alphaev5-cray 113117a48c7cSmrg os=-unicos 113217a48c7cSmrg ;; 113317a48c7cSmrg t90) 113417a48c7cSmrg basic_machine=t90-cray 113517a48c7cSmrg os=-unicos 113617a48c7cSmrg ;; 1137fbed5abfSmrg tile*) 11380dd80ee0Smrg basic_machine=$basic_machine-unknown 1139fbed5abfSmrg os=-linux-gnu 1140fbed5abfSmrg ;; 114117a48c7cSmrg tx39) 114217a48c7cSmrg basic_machine=mipstx39-unknown 114317a48c7cSmrg ;; 114417a48c7cSmrg tx39el) 114517a48c7cSmrg basic_machine=mipstx39el-unknown 114617a48c7cSmrg ;; 114717a48c7cSmrg toad1) 114817a48c7cSmrg basic_machine=pdp10-xkl 114917a48c7cSmrg os=-tops20 115017a48c7cSmrg ;; 115117a48c7cSmrg tower | tower-32) 115217a48c7cSmrg basic_machine=m68k-ncr 115317a48c7cSmrg ;; 11548e0ed500Smrg tpf) 11558e0ed500Smrg basic_machine=s390x-ibm 11568e0ed500Smrg os=-tpf 11578e0ed500Smrg ;; 115817a48c7cSmrg udi29k) 115917a48c7cSmrg basic_machine=a29k-amd 116017a48c7cSmrg os=-udi 116117a48c7cSmrg ;; 116217a48c7cSmrg ultra3) 116317a48c7cSmrg basic_machine=a29k-nyu 116417a48c7cSmrg os=-sym1 116517a48c7cSmrg ;; 116617a48c7cSmrg v810 | necv810) 116717a48c7cSmrg basic_machine=v810-nec 116817a48c7cSmrg os=-none 116917a48c7cSmrg ;; 117017a48c7cSmrg vaxv) 117117a48c7cSmrg basic_machine=vax-dec 117217a48c7cSmrg os=-sysv 117317a48c7cSmrg ;; 117417a48c7cSmrg vms) 117517a48c7cSmrg basic_machine=vax-dec 117617a48c7cSmrg os=-vms 117717a48c7cSmrg ;; 117817a48c7cSmrg vpp*|vx|vx-*) 117917a48c7cSmrg basic_machine=f301-fujitsu 118017a48c7cSmrg ;; 118117a48c7cSmrg vxworks960) 118217a48c7cSmrg basic_machine=i960-wrs 118317a48c7cSmrg os=-vxworks 118417a48c7cSmrg ;; 118517a48c7cSmrg vxworks68) 118617a48c7cSmrg basic_machine=m68k-wrs 118717a48c7cSmrg os=-vxworks 118817a48c7cSmrg ;; 118917a48c7cSmrg vxworks29k) 119017a48c7cSmrg basic_machine=a29k-wrs 119117a48c7cSmrg os=-vxworks 119217a48c7cSmrg ;; 119317a48c7cSmrg w65*) 119417a48c7cSmrg basic_machine=w65-wdc 119517a48c7cSmrg os=-none 119617a48c7cSmrg ;; 119717a48c7cSmrg w89k-*) 119817a48c7cSmrg basic_machine=hppa1.1-winbond 119917a48c7cSmrg os=-proelf 120017a48c7cSmrg ;; 12018e0ed500Smrg xbox) 12028e0ed500Smrg basic_machine=i686-pc 12038e0ed500Smrg os=-mingw32 12048e0ed500Smrg ;; 120517a48c7cSmrg xps | xps100) 120617a48c7cSmrg basic_machine=xps100-honeywell 120717a48c7cSmrg ;; 12080dd80ee0Smrg xscale-* | xscalee[bl]-*) 12090dd80ee0Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 12100dd80ee0Smrg ;; 121117a48c7cSmrg ymp) 121217a48c7cSmrg basic_machine=ymp-cray 121317a48c7cSmrg os=-unicos 121417a48c7cSmrg ;; 121517a48c7cSmrg z8k-*-coff) 121617a48c7cSmrg basic_machine=z8k-unknown 121717a48c7cSmrg os=-sim 121817a48c7cSmrg ;; 12195f5b92ffSmrg z80-*-coff) 12205f5b92ffSmrg basic_machine=z80-unknown 12215f5b92ffSmrg os=-sim 12225f5b92ffSmrg ;; 122317a48c7cSmrg none) 122417a48c7cSmrg basic_machine=none-none 122517a48c7cSmrg os=-none 122617a48c7cSmrg ;; 122717a48c7cSmrg 122817a48c7cSmrg# Here we handle the default manufacturer of certain CPU types. It is in 122917a48c7cSmrg# some cases the only manufacturer, in others, it is the most popular. 123017a48c7cSmrg w89k) 123117a48c7cSmrg basic_machine=hppa1.1-winbond 123217a48c7cSmrg ;; 123317a48c7cSmrg op50n) 123417a48c7cSmrg basic_machine=hppa1.1-oki 123517a48c7cSmrg ;; 123617a48c7cSmrg op60c) 123717a48c7cSmrg basic_machine=hppa1.1-oki 123817a48c7cSmrg ;; 123917a48c7cSmrg romp) 124017a48c7cSmrg basic_machine=romp-ibm 124117a48c7cSmrg ;; 12428e0ed500Smrg mmix) 12438e0ed500Smrg basic_machine=mmix-knuth 12448e0ed500Smrg ;; 124517a48c7cSmrg rs6000) 124617a48c7cSmrg basic_machine=rs6000-ibm 124717a48c7cSmrg ;; 124817a48c7cSmrg vax) 124917a48c7cSmrg basic_machine=vax-dec 125017a48c7cSmrg ;; 125117a48c7cSmrg pdp10) 125217a48c7cSmrg # there are many clones, so DEC is not a safe bet 125317a48c7cSmrg basic_machine=pdp10-unknown 125417a48c7cSmrg ;; 125517a48c7cSmrg pdp11) 125617a48c7cSmrg basic_machine=pdp11-dec 125717a48c7cSmrg ;; 125817a48c7cSmrg we32k) 125917a48c7cSmrg basic_machine=we32k-att 126017a48c7cSmrg ;; 12615f5b92ffSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 126217a48c7cSmrg basic_machine=sh-unknown 126317a48c7cSmrg ;; 12648e0ed500Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 126517a48c7cSmrg basic_machine=sparc-sun 126617a48c7cSmrg ;; 126717a48c7cSmrg cydra) 126817a48c7cSmrg basic_machine=cydra-cydrome 126917a48c7cSmrg ;; 127017a48c7cSmrg orion) 127117a48c7cSmrg basic_machine=orion-highlevel 127217a48c7cSmrg ;; 127317a48c7cSmrg orion105) 127417a48c7cSmrg basic_machine=clipper-highlevel 127517a48c7cSmrg ;; 127617a48c7cSmrg mac | mpw | mac-mpw) 127717a48c7cSmrg basic_machine=m68k-apple 127817a48c7cSmrg ;; 127917a48c7cSmrg pmac | pmac-mpw) 128017a48c7cSmrg basic_machine=powerpc-apple 128117a48c7cSmrg ;; 128217a48c7cSmrg *-unknown) 128317a48c7cSmrg # Make sure to match an already-canonicalized machine name. 128417a48c7cSmrg ;; 128517a48c7cSmrg *) 128617a48c7cSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 128717a48c7cSmrg exit 1 128817a48c7cSmrg ;; 128917a48c7cSmrgesac 129017a48c7cSmrg 129117a48c7cSmrg# Here we canonicalize certain aliases for manufacturers. 129217a48c7cSmrgcase $basic_machine in 129317a48c7cSmrg *-digital*) 129417a48c7cSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 129517a48c7cSmrg ;; 129617a48c7cSmrg *-commodore*) 129717a48c7cSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 129817a48c7cSmrg ;; 129917a48c7cSmrg *) 130017a48c7cSmrg ;; 130117a48c7cSmrgesac 130217a48c7cSmrg 130317a48c7cSmrg# Decode manufacturer-specific aliases for certain operating systems. 130417a48c7cSmrg 130517a48c7cSmrgif [ x"$os" != x"" ] 130617a48c7cSmrgthen 130717a48c7cSmrgcase $os in 13080dd80ee0Smrg # First match some system type aliases 13090dd80ee0Smrg # that might get confused with valid system types. 131017a48c7cSmrg # -solaris* is a basic system type, with this one exception. 13110dd80ee0Smrg -auroraux) 13120dd80ee0Smrg os=-auroraux 13135f5b92ffSmrg ;; 131417a48c7cSmrg -solaris1 | -solaris1.*) 131517a48c7cSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 131617a48c7cSmrg ;; 131717a48c7cSmrg -solaris) 131817a48c7cSmrg os=-solaris2 131917a48c7cSmrg ;; 132017a48c7cSmrg -svr4*) 132117a48c7cSmrg os=-sysv4 132217a48c7cSmrg ;; 132317a48c7cSmrg -unixware*) 132417a48c7cSmrg os=-sysv4.2uw 132517a48c7cSmrg ;; 132617a48c7cSmrg -gnu/linux*) 132717a48c7cSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 132817a48c7cSmrg ;; 132917a48c7cSmrg # First accept the basic system types. 133017a48c7cSmrg # The portable systems comes first. 133117a48c7cSmrg # Each alternative MUST END IN A *, to match a version number. 133217a48c7cSmrg # -sysv* is not here because it comes later, after sysvr4. 133317a48c7cSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13345f5b92ffSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13355f5b92ffSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13365f5b92ffSmrg | -sym* | -kopensolaris* \ 133717a48c7cSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13385f5b92ffSmrg | -aos* | -aros* \ 133917a48c7cSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 134017a48c7cSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13418e0ed500Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13428e0ed500Smrg | -openbsd* | -solidbsd* \ 13438e0ed500Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13448e0ed500Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 134517a48c7cSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 134617a48c7cSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13475f5b92ffSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 13480dd80ee0Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13490dd80ee0Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 13500dd80ee0Smrg | -linux-newlib* | -linux-uclibc* \ 13518e0ed500Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 135217a48c7cSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 135317a48c7cSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 135417a48c7cSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 135517a48c7cSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 135617a48c7cSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13578e0ed500Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13585f5b92ffSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 135917a48c7cSmrg # Remember, each alternative MUST END IN *, to match a version number. 136017a48c7cSmrg ;; 136117a48c7cSmrg -qnx*) 136217a48c7cSmrg case $basic_machine in 136317a48c7cSmrg x86-* | i*86-*) 136417a48c7cSmrg ;; 136517a48c7cSmrg *) 136617a48c7cSmrg os=-nto$os 136717a48c7cSmrg ;; 136817a48c7cSmrg esac 136917a48c7cSmrg ;; 137017a48c7cSmrg -nto-qnx*) 137117a48c7cSmrg ;; 137217a48c7cSmrg -nto*) 137317a48c7cSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 137417a48c7cSmrg ;; 137517a48c7cSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13768e0ed500Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 137717a48c7cSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 137817a48c7cSmrg ;; 137917a48c7cSmrg -mac*) 138017a48c7cSmrg os=`echo $os | sed -e 's|mac|macos|'` 138117a48c7cSmrg ;; 13828e0ed500Smrg -linux-dietlibc) 13838e0ed500Smrg os=-linux-dietlibc 13848e0ed500Smrg ;; 138517a48c7cSmrg -linux*) 138617a48c7cSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 138717a48c7cSmrg ;; 138817a48c7cSmrg -sunos5*) 138917a48c7cSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 139017a48c7cSmrg ;; 139117a48c7cSmrg -sunos6*) 139217a48c7cSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 139317a48c7cSmrg ;; 139417a48c7cSmrg -opened*) 139517a48c7cSmrg os=-openedition 139617a48c7cSmrg ;; 13970dd80ee0Smrg -os400*) 13988e0ed500Smrg os=-os400 13998e0ed500Smrg ;; 140017a48c7cSmrg -wince*) 140117a48c7cSmrg os=-wince 140217a48c7cSmrg ;; 140317a48c7cSmrg -osfrose*) 140417a48c7cSmrg os=-osfrose 140517a48c7cSmrg ;; 140617a48c7cSmrg -osf*) 140717a48c7cSmrg os=-osf 140817a48c7cSmrg ;; 140917a48c7cSmrg -utek*) 141017a48c7cSmrg os=-bsd 141117a48c7cSmrg ;; 141217a48c7cSmrg -dynix*) 141317a48c7cSmrg os=-bsd 141417a48c7cSmrg ;; 141517a48c7cSmrg -acis*) 141617a48c7cSmrg os=-aos 141717a48c7cSmrg ;; 141817a48c7cSmrg -atheos*) 141917a48c7cSmrg os=-atheos 142017a48c7cSmrg ;; 14218e0ed500Smrg -syllable*) 14228e0ed500Smrg os=-syllable 14238e0ed500Smrg ;; 142417a48c7cSmrg -386bsd) 142517a48c7cSmrg os=-bsd 142617a48c7cSmrg ;; 142717a48c7cSmrg -ctix* | -uts*) 142817a48c7cSmrg os=-sysv 142917a48c7cSmrg ;; 143017a48c7cSmrg -nova*) 143117a48c7cSmrg os=-rtmk-nova 143217a48c7cSmrg ;; 143317a48c7cSmrg -ns2 ) 143417a48c7cSmrg os=-nextstep2 143517a48c7cSmrg ;; 143617a48c7cSmrg -nsk*) 143717a48c7cSmrg os=-nsk 143817a48c7cSmrg ;; 143917a48c7cSmrg # Preserve the version number of sinix5. 144017a48c7cSmrg -sinix5.*) 144117a48c7cSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 144217a48c7cSmrg ;; 144317a48c7cSmrg -sinix*) 144417a48c7cSmrg os=-sysv4 144517a48c7cSmrg ;; 14460dd80ee0Smrg -tpf*) 14478e0ed500Smrg os=-tpf 14488e0ed500Smrg ;; 144917a48c7cSmrg -triton*) 145017a48c7cSmrg os=-sysv3 145117a48c7cSmrg ;; 145217a48c7cSmrg -oss*) 145317a48c7cSmrg os=-sysv3 145417a48c7cSmrg ;; 145517a48c7cSmrg -svr4) 145617a48c7cSmrg os=-sysv4 145717a48c7cSmrg ;; 145817a48c7cSmrg -svr3) 145917a48c7cSmrg os=-sysv3 146017a48c7cSmrg ;; 146117a48c7cSmrg -sysvr4) 146217a48c7cSmrg os=-sysv4 146317a48c7cSmrg ;; 146417a48c7cSmrg # This must come after -sysvr4. 146517a48c7cSmrg -sysv*) 146617a48c7cSmrg ;; 146717a48c7cSmrg -ose*) 146817a48c7cSmrg os=-ose 146917a48c7cSmrg ;; 147017a48c7cSmrg -es1800*) 147117a48c7cSmrg os=-ose 147217a48c7cSmrg ;; 147317a48c7cSmrg -xenix) 147417a48c7cSmrg os=-xenix 147517a48c7cSmrg ;; 147617a48c7cSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 147717a48c7cSmrg os=-mint 147817a48c7cSmrg ;; 147917a48c7cSmrg -aros*) 148017a48c7cSmrg os=-aros 148117a48c7cSmrg ;; 148217a48c7cSmrg -kaos*) 148317a48c7cSmrg os=-kaos 148417a48c7cSmrg ;; 14858e0ed500Smrg -zvmoe) 14868e0ed500Smrg os=-zvmoe 14878e0ed500Smrg ;; 14885f5b92ffSmrg -dicos*) 14895f5b92ffSmrg os=-dicos 14905f5b92ffSmrg ;; 14910dd80ee0Smrg -nacl*) 14920dd80ee0Smrg ;; 149317a48c7cSmrg -none) 149417a48c7cSmrg ;; 149517a48c7cSmrg *) 149617a48c7cSmrg # Get rid of the `-' at the beginning of $os. 149717a48c7cSmrg os=`echo $os | sed 's/[^-]*-//'` 149817a48c7cSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 149917a48c7cSmrg exit 1 150017a48c7cSmrg ;; 150117a48c7cSmrgesac 150217a48c7cSmrgelse 150317a48c7cSmrg 150417a48c7cSmrg# Here we handle the default operating systems that come with various machines. 150517a48c7cSmrg# The value should be what the vendor currently ships out the door with their 150617a48c7cSmrg# machine or put another way, the most popular os provided with the machine. 150717a48c7cSmrg 150817a48c7cSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 150917a48c7cSmrg# "-sun"), then you have to tell the case statement up towards the top 151017a48c7cSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 151117a48c7cSmrg# will signal an error saying that MANUFACTURER isn't an operating 151217a48c7cSmrg# system, and we'll never get to this point. 151317a48c7cSmrg 151417a48c7cSmrgcase $basic_machine in 15150dd80ee0Smrg score-*) 15168e0ed500Smrg os=-elf 15178e0ed500Smrg ;; 15180dd80ee0Smrg spu-*) 15198e0ed500Smrg os=-elf 15208e0ed500Smrg ;; 152117a48c7cSmrg *-acorn) 152217a48c7cSmrg os=-riscix1.2 152317a48c7cSmrg ;; 152417a48c7cSmrg arm*-rebel) 152517a48c7cSmrg os=-linux 152617a48c7cSmrg ;; 152717a48c7cSmrg arm*-semi) 152817a48c7cSmrg os=-aout 152917a48c7cSmrg ;; 15300dd80ee0Smrg c4x-* | tic4x-*) 15310dd80ee0Smrg os=-coff 15320dd80ee0Smrg ;; 15330dd80ee0Smrg tic54x-*) 15340dd80ee0Smrg os=-coff 15350dd80ee0Smrg ;; 15360dd80ee0Smrg tic55x-*) 15370dd80ee0Smrg os=-coff 15380dd80ee0Smrg ;; 15390dd80ee0Smrg tic6x-*) 15400dd80ee0Smrg os=-coff 154117a48c7cSmrg ;; 154217a48c7cSmrg # This must come before the *-dec entry. 154317a48c7cSmrg pdp10-*) 154417a48c7cSmrg os=-tops20 154517a48c7cSmrg ;; 154617a48c7cSmrg pdp11-*) 154717a48c7cSmrg os=-none 154817a48c7cSmrg ;; 154917a48c7cSmrg *-dec | vax-*) 155017a48c7cSmrg os=-ultrix4.2 155117a48c7cSmrg ;; 155217a48c7cSmrg m68*-apollo) 155317a48c7cSmrg os=-domain 155417a48c7cSmrg ;; 155517a48c7cSmrg i386-sun) 155617a48c7cSmrg os=-sunos4.0.2 155717a48c7cSmrg ;; 155817a48c7cSmrg m68000-sun) 155917a48c7cSmrg os=-sunos3 156017a48c7cSmrg ;; 156117a48c7cSmrg m68*-cisco) 156217a48c7cSmrg os=-aout 156317a48c7cSmrg ;; 15640dd80ee0Smrg mep-*) 1565fbed5abfSmrg os=-elf 1566fbed5abfSmrg ;; 156717a48c7cSmrg mips*-cisco) 156817a48c7cSmrg os=-elf 156917a48c7cSmrg ;; 157017a48c7cSmrg mips*-*) 157117a48c7cSmrg os=-elf 157217a48c7cSmrg ;; 157317a48c7cSmrg or32-*) 157417a48c7cSmrg os=-coff 157517a48c7cSmrg ;; 157617a48c7cSmrg *-tti) # must be before sparc entry or we get the wrong os. 157717a48c7cSmrg os=-sysv3 157817a48c7cSmrg ;; 157917a48c7cSmrg sparc-* | *-sun) 158017a48c7cSmrg os=-sunos4.1.1 158117a48c7cSmrg ;; 158217a48c7cSmrg *-be) 158317a48c7cSmrg os=-beos 158417a48c7cSmrg ;; 15858e0ed500Smrg *-haiku) 15868e0ed500Smrg os=-haiku 15878e0ed500Smrg ;; 158817a48c7cSmrg *-ibm) 158917a48c7cSmrg os=-aix 159017a48c7cSmrg ;; 15910dd80ee0Smrg *-knuth) 15928e0ed500Smrg os=-mmixware 15938e0ed500Smrg ;; 159417a48c7cSmrg *-wec) 159517a48c7cSmrg os=-proelf 159617a48c7cSmrg ;; 159717a48c7cSmrg *-winbond) 159817a48c7cSmrg os=-proelf 159917a48c7cSmrg ;; 160017a48c7cSmrg *-oki) 160117a48c7cSmrg os=-proelf 160217a48c7cSmrg ;; 160317a48c7cSmrg *-hp) 160417a48c7cSmrg os=-hpux 160517a48c7cSmrg ;; 160617a48c7cSmrg *-hitachi) 160717a48c7cSmrg os=-hiux 160817a48c7cSmrg ;; 160917a48c7cSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 161017a48c7cSmrg os=-sysv 161117a48c7cSmrg ;; 161217a48c7cSmrg *-cbm) 161317a48c7cSmrg os=-amigaos 161417a48c7cSmrg ;; 161517a48c7cSmrg *-dg) 161617a48c7cSmrg os=-dgux 161717a48c7cSmrg ;; 161817a48c7cSmrg *-dolphin) 161917a48c7cSmrg os=-sysv3 162017a48c7cSmrg ;; 162117a48c7cSmrg m68k-ccur) 162217a48c7cSmrg os=-rtu 162317a48c7cSmrg ;; 162417a48c7cSmrg m88k-omron*) 162517a48c7cSmrg os=-luna 162617a48c7cSmrg ;; 162717a48c7cSmrg *-next ) 162817a48c7cSmrg os=-nextstep 162917a48c7cSmrg ;; 163017a48c7cSmrg *-sequent) 163117a48c7cSmrg os=-ptx 163217a48c7cSmrg ;; 163317a48c7cSmrg *-crds) 163417a48c7cSmrg os=-unos 163517a48c7cSmrg ;; 163617a48c7cSmrg *-ns) 163717a48c7cSmrg os=-genix 163817a48c7cSmrg ;; 163917a48c7cSmrg i370-*) 164017a48c7cSmrg os=-mvs 164117a48c7cSmrg ;; 164217a48c7cSmrg *-next) 164317a48c7cSmrg os=-nextstep3 164417a48c7cSmrg ;; 164517a48c7cSmrg *-gould) 164617a48c7cSmrg os=-sysv 164717a48c7cSmrg ;; 164817a48c7cSmrg *-highlevel) 164917a48c7cSmrg os=-bsd 165017a48c7cSmrg ;; 165117a48c7cSmrg *-encore) 165217a48c7cSmrg os=-bsd 165317a48c7cSmrg ;; 165417a48c7cSmrg *-sgi) 165517a48c7cSmrg os=-irix 165617a48c7cSmrg ;; 165717a48c7cSmrg *-siemens) 165817a48c7cSmrg os=-sysv4 165917a48c7cSmrg ;; 166017a48c7cSmrg *-masscomp) 166117a48c7cSmrg os=-rtu 166217a48c7cSmrg ;; 166317a48c7cSmrg f30[01]-fujitsu | f700-fujitsu) 166417a48c7cSmrg os=-uxpv 166517a48c7cSmrg ;; 166617a48c7cSmrg *-rom68k) 166717a48c7cSmrg os=-coff 166817a48c7cSmrg ;; 166917a48c7cSmrg *-*bug) 167017a48c7cSmrg os=-coff 167117a48c7cSmrg ;; 167217a48c7cSmrg *-apple) 167317a48c7cSmrg os=-macos 167417a48c7cSmrg ;; 167517a48c7cSmrg *-atari*) 167617a48c7cSmrg os=-mint 167717a48c7cSmrg ;; 167817a48c7cSmrg *) 167917a48c7cSmrg os=-none 168017a48c7cSmrg ;; 168117a48c7cSmrgesac 168217a48c7cSmrgfi 168317a48c7cSmrg 168417a48c7cSmrg# Here we handle the case where we know the os, and the CPU type, but not the 168517a48c7cSmrg# manufacturer. We pick the logical manufacturer. 168617a48c7cSmrgvendor=unknown 168717a48c7cSmrgcase $basic_machine in 168817a48c7cSmrg *-unknown) 168917a48c7cSmrg case $os in 169017a48c7cSmrg -riscix*) 169117a48c7cSmrg vendor=acorn 169217a48c7cSmrg ;; 169317a48c7cSmrg -sunos*) 169417a48c7cSmrg vendor=sun 169517a48c7cSmrg ;; 16965f5b92ffSmrg -cnk*|-aix*) 169717a48c7cSmrg vendor=ibm 169817a48c7cSmrg ;; 169917a48c7cSmrg -beos*) 170017a48c7cSmrg vendor=be 170117a48c7cSmrg ;; 170217a48c7cSmrg -hpux*) 170317a48c7cSmrg vendor=hp 170417a48c7cSmrg ;; 170517a48c7cSmrg -mpeix*) 170617a48c7cSmrg vendor=hp 170717a48c7cSmrg ;; 170817a48c7cSmrg -hiux*) 170917a48c7cSmrg vendor=hitachi 171017a48c7cSmrg ;; 171117a48c7cSmrg -unos*) 171217a48c7cSmrg vendor=crds 171317a48c7cSmrg ;; 171417a48c7cSmrg -dgux*) 171517a48c7cSmrg vendor=dg 171617a48c7cSmrg ;; 171717a48c7cSmrg -luna*) 171817a48c7cSmrg vendor=omron 171917a48c7cSmrg ;; 172017a48c7cSmrg -genix*) 172117a48c7cSmrg vendor=ns 172217a48c7cSmrg ;; 172317a48c7cSmrg -mvs* | -opened*) 172417a48c7cSmrg vendor=ibm 172517a48c7cSmrg ;; 17268e0ed500Smrg -os400*) 17278e0ed500Smrg vendor=ibm 17288e0ed500Smrg ;; 172917a48c7cSmrg -ptx*) 173017a48c7cSmrg vendor=sequent 173117a48c7cSmrg ;; 17328e0ed500Smrg -tpf*) 17338e0ed500Smrg vendor=ibm 17348e0ed500Smrg ;; 173517a48c7cSmrg -vxsim* | -vxworks* | -windiss*) 173617a48c7cSmrg vendor=wrs 173717a48c7cSmrg ;; 173817a48c7cSmrg -aux*) 173917a48c7cSmrg vendor=apple 174017a48c7cSmrg ;; 174117a48c7cSmrg -hms*) 174217a48c7cSmrg vendor=hitachi 174317a48c7cSmrg ;; 174417a48c7cSmrg -mpw* | -macos*) 174517a48c7cSmrg vendor=apple 174617a48c7cSmrg ;; 174717a48c7cSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 174817a48c7cSmrg vendor=atari 174917a48c7cSmrg ;; 175017a48c7cSmrg -vos*) 175117a48c7cSmrg vendor=stratus 175217a48c7cSmrg ;; 175317a48c7cSmrg esac 175417a48c7cSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 175517a48c7cSmrg ;; 175617a48c7cSmrgesac 175717a48c7cSmrg 175817a48c7cSmrgecho $basic_machine$os 17598e0ed500Smrgexit 176017a48c7cSmrg 176117a48c7cSmrg# Local variables: 176217a48c7cSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 176317a48c7cSmrg# time-stamp-start: "timestamp='" 176417a48c7cSmrg# time-stamp-format: "%:y-%02m-%02d" 176517a48c7cSmrg# time-stamp-end: "'" 176617a48c7cSmrg# End: 1767