config.sub revision 1a669bc9
1cbeba4aeSmrg#! /bin/sh 2cbeba4aeSmrg# Configuration validation subroutine script. 3cbeba4aeSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 41a669bc9Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 57bd0f98dSmrg# Free Software Foundation, Inc. 6cbeba4aeSmrg 71a669bc9Smrgtimestamp='2010-09-11' 8cbeba4aeSmrg 9cbeba4aeSmrg# This file is (in principle) common to ALL GNU software. 10cbeba4aeSmrg# The presence of a machine in this file suggests that SOME GNU software 11cbeba4aeSmrg# can handle that machine. It does not imply ALL GNU software can. 12cbeba4aeSmrg# 13cbeba4aeSmrg# This file is free software; you can redistribute it and/or modify 14cbeba4aeSmrg# it under the terms of the GNU General Public License as published by 15cbeba4aeSmrg# the Free Software Foundation; either version 2 of the License, or 16cbeba4aeSmrg# (at your option) any later version. 17cbeba4aeSmrg# 18cbeba4aeSmrg# This program is distributed in the hope that it will be useful, 19cbeba4aeSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20cbeba4aeSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21cbeba4aeSmrg# GNU General Public License for more details. 22cbeba4aeSmrg# 23cbeba4aeSmrg# You should have received a copy of the GNU General Public License 24cbeba4aeSmrg# along with this program; if not, write to the Free Software 257bd0f98dSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 267bd0f98dSmrg# 02110-1301, USA. 277bd0f98dSmrg# 28cbeba4aeSmrg# As a special exception to the GNU General Public License, if you 29cbeba4aeSmrg# distribute this file as part of a program that contains a 30cbeba4aeSmrg# configuration script generated by Autoconf, you may include it under 31cbeba4aeSmrg# the same distribution terms that you use for the rest of that program. 32cbeba4aeSmrg 337bd0f98dSmrg 34cbeba4aeSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 357bd0f98dSmrg# diff and a properly formatted GNU ChangeLog entry. 36cbeba4aeSmrg# 37cbeba4aeSmrg# Configuration subroutine to validate and canonicalize a configuration type. 38cbeba4aeSmrg# Supply the specified configuration type as an argument. 39cbeba4aeSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 40cbeba4aeSmrg# Otherwise, we print the canonical config type on stdout and succeed. 41cbeba4aeSmrg 427bd0f98dSmrg# You can get the latest version of this script from: 437bd0f98dSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 447bd0f98dSmrg 45cbeba4aeSmrg# This file is supposed to be the same for all GNU packages 46cbeba4aeSmrg# and recognize all the CPU types, system types and aliases 47cbeba4aeSmrg# that are meaningful with *any* GNU software. 48cbeba4aeSmrg# Each package is responsible for reporting which valid configurations 49cbeba4aeSmrg# it does not support. The user should be able to distinguish 50cbeba4aeSmrg# a failure to support a valid configuration from a meaningless 51cbeba4aeSmrg# configuration. 52cbeba4aeSmrg 53cbeba4aeSmrg# The goal of this file is to map all the various variations of a given 54cbeba4aeSmrg# machine specification into a single specification in the form: 55cbeba4aeSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 56cbeba4aeSmrg# or in some cases, the newer four-part form: 57cbeba4aeSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 58cbeba4aeSmrg# It is wrong to echo any other type of specification. 59cbeba4aeSmrg 60cbeba4aeSmrgme=`echo "$0" | sed -e 's,.*/,,'` 61cbeba4aeSmrg 62cbeba4aeSmrgusage="\ 63cbeba4aeSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 64cbeba4aeSmrg $0 [OPTION] ALIAS 65cbeba4aeSmrg 66cbeba4aeSmrgCanonicalize a configuration name. 67cbeba4aeSmrg 68cbeba4aeSmrgOperation modes: 69cbeba4aeSmrg -h, --help print this help, then exit 70cbeba4aeSmrg -t, --time-stamp print date of last modification, then exit 71cbeba4aeSmrg -v, --version print version number, then exit 72cbeba4aeSmrg 73cbeba4aeSmrgReport bugs and patches to <config-patches@gnu.org>." 74cbeba4aeSmrg 75cbeba4aeSmrgversion="\ 76cbeba4aeSmrgGNU config.sub ($timestamp) 77cbeba4aeSmrg 781a669bc9SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 791a669bc9Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 801a669bc9SmrgSoftware Foundation, Inc. 81cbeba4aeSmrg 82cbeba4aeSmrgThis is free software; see the source for copying conditions. There is NO 83cbeba4aeSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 84cbeba4aeSmrg 85cbeba4aeSmrghelp=" 86cbeba4aeSmrgTry \`$me --help' for more information." 87cbeba4aeSmrg 88cbeba4aeSmrg# Parse command line 89cbeba4aeSmrgwhile test $# -gt 0 ; do 90cbeba4aeSmrg case $1 in 91cbeba4aeSmrg --time-stamp | --time* | -t ) 927bd0f98dSmrg echo "$timestamp" ; exit ;; 93cbeba4aeSmrg --version | -v ) 947bd0f98dSmrg echo "$version" ; exit ;; 95cbeba4aeSmrg --help | --h* | -h ) 967bd0f98dSmrg echo "$usage"; exit ;; 97cbeba4aeSmrg -- ) # Stop option processing 98cbeba4aeSmrg shift; break ;; 99cbeba4aeSmrg - ) # Use stdin as input. 100cbeba4aeSmrg break ;; 101cbeba4aeSmrg -* ) 102cbeba4aeSmrg echo "$me: invalid option $1$help" 103cbeba4aeSmrg exit 1 ;; 104cbeba4aeSmrg 105cbeba4aeSmrg *local*) 106cbeba4aeSmrg # First pass through any local machine types. 107cbeba4aeSmrg echo $1 1087bd0f98dSmrg exit ;; 109cbeba4aeSmrg 110cbeba4aeSmrg * ) 111cbeba4aeSmrg break ;; 112cbeba4aeSmrg esac 113cbeba4aeSmrgdone 114cbeba4aeSmrg 115cbeba4aeSmrgcase $# in 116cbeba4aeSmrg 0) echo "$me: missing argument$help" >&2 117cbeba4aeSmrg exit 1;; 118cbeba4aeSmrg 1) ;; 119cbeba4aeSmrg *) echo "$me: too many arguments$help" >&2 120cbeba4aeSmrg exit 1;; 121cbeba4aeSmrgesac 122cbeba4aeSmrg 123cbeba4aeSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 124cbeba4aeSmrg# Here we must recognize all the valid KERNEL-OS combinations. 125cbeba4aeSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 126cbeba4aeSmrgcase $maybe_os in 1271a669bc9Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1281a669bc9Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1291a669bc9Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1307bd0f98dSmrg kopensolaris*-gnu* | \ 1317bd0f98dSmrg storm-chaos* | os2-emx* | rtmk-nova*) 132cbeba4aeSmrg os=-$maybe_os 133cbeba4aeSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 134cbeba4aeSmrg ;; 135cbeba4aeSmrg *) 136cbeba4aeSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 137cbeba4aeSmrg if [ $basic_machine != $1 ] 138cbeba4aeSmrg then os=`echo $1 | sed 's/.*-/-/'` 139cbeba4aeSmrg else os=; fi 140cbeba4aeSmrg ;; 141cbeba4aeSmrgesac 142cbeba4aeSmrg 143cbeba4aeSmrg### Let's recognize common machines as not being operating systems so 144cbeba4aeSmrg### that things like config.sub decstation-3100 work. We also 145cbeba4aeSmrg### recognize some manufacturers as not being operating systems, so we 146cbeba4aeSmrg### can provide default operating systems below. 147cbeba4aeSmrgcase $os in 148cbeba4aeSmrg -sun*os*) 149cbeba4aeSmrg # Prevent following clause from handling this invalid input. 150cbeba4aeSmrg ;; 151cbeba4aeSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 152cbeba4aeSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 153cbeba4aeSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 154cbeba4aeSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 155cbeba4aeSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 156cbeba4aeSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1577bd0f98dSmrg -apple | -axis | -knuth | -cray | -microblaze) 158cbeba4aeSmrg os= 159cbeba4aeSmrg basic_machine=$1 160cbeba4aeSmrg ;; 1617bd0f98dSmrg -bluegene*) 1627bd0f98dSmrg os=-cnk 1637bd0f98dSmrg ;; 164cbeba4aeSmrg -sim | -cisco | -oki | -wec | -winbond) 165cbeba4aeSmrg os= 166cbeba4aeSmrg basic_machine=$1 167cbeba4aeSmrg ;; 168cbeba4aeSmrg -scout) 169cbeba4aeSmrg ;; 170cbeba4aeSmrg -wrs) 171cbeba4aeSmrg os=-vxworks 172cbeba4aeSmrg basic_machine=$1 173cbeba4aeSmrg ;; 174cbeba4aeSmrg -chorusos*) 175cbeba4aeSmrg os=-chorusos 176cbeba4aeSmrg basic_machine=$1 177cbeba4aeSmrg ;; 178cbeba4aeSmrg -chorusrdb) 179cbeba4aeSmrg os=-chorusrdb 180cbeba4aeSmrg basic_machine=$1 181cbeba4aeSmrg ;; 182cbeba4aeSmrg -hiux*) 183cbeba4aeSmrg os=-hiuxwe2 184cbeba4aeSmrg ;; 1857bd0f98dSmrg -sco6) 1867bd0f98dSmrg os=-sco5v6 1877bd0f98dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1887bd0f98dSmrg ;; 189cbeba4aeSmrg -sco5) 190cbeba4aeSmrg os=-sco3.2v5 191cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 192cbeba4aeSmrg ;; 193cbeba4aeSmrg -sco4) 194cbeba4aeSmrg os=-sco3.2v4 195cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 196cbeba4aeSmrg ;; 197cbeba4aeSmrg -sco3.2.[4-9]*) 198cbeba4aeSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 199cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 200cbeba4aeSmrg ;; 201cbeba4aeSmrg -sco3.2v[4-9]*) 202cbeba4aeSmrg # Don't forget version if it is 3.2v4 or newer. 203cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 204cbeba4aeSmrg ;; 2057bd0f98dSmrg -sco5v6*) 2067bd0f98dSmrg # Don't forget version if it is 3.2v4 or newer. 2077bd0f98dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2087bd0f98dSmrg ;; 209cbeba4aeSmrg -sco*) 210cbeba4aeSmrg os=-sco3.2v2 211cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 212cbeba4aeSmrg ;; 213cbeba4aeSmrg -udk*) 214cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 215cbeba4aeSmrg ;; 216cbeba4aeSmrg -isc) 217cbeba4aeSmrg os=-isc2.2 218cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 219cbeba4aeSmrg ;; 220cbeba4aeSmrg -clix*) 221cbeba4aeSmrg basic_machine=clipper-intergraph 222cbeba4aeSmrg ;; 223cbeba4aeSmrg -isc*) 224cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 225cbeba4aeSmrg ;; 226cbeba4aeSmrg -lynx*) 227cbeba4aeSmrg os=-lynxos 228cbeba4aeSmrg ;; 229cbeba4aeSmrg -ptx*) 230cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 231cbeba4aeSmrg ;; 232cbeba4aeSmrg -windowsnt*) 233cbeba4aeSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 234cbeba4aeSmrg ;; 235cbeba4aeSmrg -psos*) 236cbeba4aeSmrg os=-psos 237cbeba4aeSmrg ;; 238cbeba4aeSmrg -mint | -mint[0-9]*) 239cbeba4aeSmrg basic_machine=m68k-atari 240cbeba4aeSmrg os=-mint 241cbeba4aeSmrg ;; 242cbeba4aeSmrgesac 243cbeba4aeSmrg 244cbeba4aeSmrg# Decode aliases for certain CPU-COMPANY combinations. 245cbeba4aeSmrgcase $basic_machine in 246cbeba4aeSmrg # Recognize the basic CPU types without company name. 247cbeba4aeSmrg # Some are omitted here because they have special meanings below. 248cbeba4aeSmrg 1750a | 580 \ 249cbeba4aeSmrg | a29k \ 250cbeba4aeSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 251cbeba4aeSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2527bd0f98dSmrg | am33_2.0 \ 2537bd0f98dSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2547bd0f98dSmrg | bfin \ 255cbeba4aeSmrg | c4x | clipper \ 256cbeba4aeSmrg | d10v | d30v | dlx | dsp16xx \ 2577bd0f98dSmrg | fido | fr30 | frv \ 258cbeba4aeSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 259cbeba4aeSmrg | i370 | i860 | i960 | ia64 \ 2607bd0f98dSmrg | ip2k | iq2000 \ 2617bd0f98dSmrg | lm32 \ 2627bd0f98dSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2637bd0f98dSmrg | maxq | mb | microblaze | mcore | mep | metag \ 264cbeba4aeSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 265cbeba4aeSmrg | mips16 \ 266cbeba4aeSmrg | mips64 | mips64el \ 2677bd0f98dSmrg | mips64octeon | mips64octeonel \ 268cbeba4aeSmrg | mips64orion | mips64orionel \ 2697bd0f98dSmrg | mips64r5900 | mips64r5900el \ 2707bd0f98dSmrg | mips64vr | mips64vrel \ 271cbeba4aeSmrg | mips64vr4100 | mips64vr4100el \ 272cbeba4aeSmrg | mips64vr4300 | mips64vr4300el \ 273cbeba4aeSmrg | mips64vr5000 | mips64vr5000el \ 2747bd0f98dSmrg | mips64vr5900 | mips64vr5900el \ 275cbeba4aeSmrg | mipsisa32 | mipsisa32el \ 276cbeba4aeSmrg | mipsisa32r2 | mipsisa32r2el \ 277cbeba4aeSmrg | mipsisa64 | mipsisa64el \ 2787bd0f98dSmrg | mipsisa64r2 | mipsisa64r2el \ 279cbeba4aeSmrg | mipsisa64sb1 | mipsisa64sb1el \ 280cbeba4aeSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 281cbeba4aeSmrg | mipstx39 | mipstx39el \ 282cbeba4aeSmrg | mn10200 | mn10300 \ 2837bd0f98dSmrg | moxie \ 2847bd0f98dSmrg | mt \ 285cbeba4aeSmrg | msp430 \ 2861a669bc9Smrg | nds32 | nds32le | nds32be \ 2877bd0f98dSmrg | nios | nios2 \ 288cbeba4aeSmrg | ns16k | ns32k \ 2897bd0f98dSmrg | or32 \ 290cbeba4aeSmrg | pdp10 | pdp11 | pj | pjl \ 291cbeba4aeSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 292cbeba4aeSmrg | pyramid \ 2937bd0f98dSmrg | rx \ 2947bd0f98dSmrg | score \ 2957bd0f98dSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 296cbeba4aeSmrg | sh64 | sh64le \ 2977bd0f98dSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2987bd0f98dSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2997bd0f98dSmrg | spu | strongarm \ 3001a669bc9Smrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3017bd0f98dSmrg | ubicom32 \ 302cbeba4aeSmrg | v850 | v850e \ 303cbeba4aeSmrg | we32k \ 3047bd0f98dSmrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 3057bd0f98dSmrg | z8k | z80) 306cbeba4aeSmrg basic_machine=$basic_machine-unknown 307cbeba4aeSmrg ;; 3081a669bc9Smrg c54x) 3091a669bc9Smrg basic_machine=tic54x-unknown 3101a669bc9Smrg ;; 3111a669bc9Smrg c55x) 3121a669bc9Smrg basic_machine=tic55x-unknown 3131a669bc9Smrg ;; 3141a669bc9Smrg c6x) 3151a669bc9Smrg basic_machine=tic6x-unknown 3161a669bc9Smrg ;; 3177bd0f98dSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 318cbeba4aeSmrg # Motorola 68HC11/12. 319cbeba4aeSmrg basic_machine=$basic_machine-unknown 320cbeba4aeSmrg os=-none 321cbeba4aeSmrg ;; 322cbeba4aeSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 323cbeba4aeSmrg ;; 3247bd0f98dSmrg ms1) 3257bd0f98dSmrg basic_machine=mt-unknown 3267bd0f98dSmrg ;; 327cbeba4aeSmrg 328cbeba4aeSmrg # We use `pc' rather than `unknown' 329cbeba4aeSmrg # because (1) that's what they normally are, and 330cbeba4aeSmrg # (2) the word "unknown" tends to confuse beginning users. 331cbeba4aeSmrg i*86 | x86_64) 332cbeba4aeSmrg basic_machine=$basic_machine-pc 333cbeba4aeSmrg ;; 334cbeba4aeSmrg # Object if more than one company name word. 335cbeba4aeSmrg *-*-*) 336cbeba4aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 337cbeba4aeSmrg exit 1 338cbeba4aeSmrg ;; 339cbeba4aeSmrg # Recognize the basic CPU types with company name. 340cbeba4aeSmrg 580-* \ 341cbeba4aeSmrg | a29k-* \ 342cbeba4aeSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 343cbeba4aeSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 344cbeba4aeSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 345cbeba4aeSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3467bd0f98dSmrg | avr-* | avr32-* \ 3477bd0f98dSmrg | bfin-* | bs2000-* \ 3481a669bc9Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3497bd0f98dSmrg | clipper-* | craynv-* | cydra-* \ 350cbeba4aeSmrg | d10v-* | d30v-* | dlx-* \ 351cbeba4aeSmrg | elxsi-* \ 3527bd0f98dSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 353cbeba4aeSmrg | h8300-* | h8500-* \ 354cbeba4aeSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 355cbeba4aeSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3567bd0f98dSmrg | ip2k-* | iq2000-* \ 3577bd0f98dSmrg | lm32-* \ 3587bd0f98dSmrg | m32c-* | m32r-* | m32rle-* \ 359cbeba4aeSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3607bd0f98dSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 361cbeba4aeSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 362cbeba4aeSmrg | mips16-* \ 363cbeba4aeSmrg | mips64-* | mips64el-* \ 3647bd0f98dSmrg | mips64octeon-* | mips64octeonel-* \ 365cbeba4aeSmrg | mips64orion-* | mips64orionel-* \ 3667bd0f98dSmrg | mips64r5900-* | mips64r5900el-* \ 3677bd0f98dSmrg | mips64vr-* | mips64vrel-* \ 368cbeba4aeSmrg | mips64vr4100-* | mips64vr4100el-* \ 369cbeba4aeSmrg | mips64vr4300-* | mips64vr4300el-* \ 370cbeba4aeSmrg | mips64vr5000-* | mips64vr5000el-* \ 3717bd0f98dSmrg | mips64vr5900-* | mips64vr5900el-* \ 372cbeba4aeSmrg | mipsisa32-* | mipsisa32el-* \ 373cbeba4aeSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 374cbeba4aeSmrg | mipsisa64-* | mipsisa64el-* \ 3757bd0f98dSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 376cbeba4aeSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 377cbeba4aeSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 378cbeba4aeSmrg | mipstx39-* | mipstx39el-* \ 3797bd0f98dSmrg | mmix-* \ 3807bd0f98dSmrg | mt-* \ 381cbeba4aeSmrg | msp430-* \ 3821a669bc9Smrg | nds32-* | nds32le-* | nds32be-* \ 3837bd0f98dSmrg | nios-* | nios2-* \ 3847bd0f98dSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 385cbeba4aeSmrg | orion-* \ 386cbeba4aeSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 387cbeba4aeSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 388cbeba4aeSmrg | pyramid-* \ 3897bd0f98dSmrg | romp-* | rs6000-* | rx-* \ 3907bd0f98dSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 391cbeba4aeSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3927bd0f98dSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3937bd0f98dSmrg | sparclite-* \ 3947bd0f98dSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 395cbeba4aeSmrg | tahoe-* | thumb-* \ 3961a669bc9Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 3971a669bc9Smrg | tile-* | tilegx-* \ 398cbeba4aeSmrg | tron-* \ 3997bd0f98dSmrg | ubicom32-* \ 400cbeba4aeSmrg | v850-* | v850e-* | vax-* \ 401cbeba4aeSmrg | we32k-* \ 4027bd0f98dSmrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 4037bd0f98dSmrg | xstormy16-* | xtensa*-* \ 404cbeba4aeSmrg | ymp-* \ 4057bd0f98dSmrg | z8k-* | z80-*) 4067bd0f98dSmrg ;; 4077bd0f98dSmrg # Recognize the basic CPU types without company name, with glob match. 4087bd0f98dSmrg xtensa*) 4097bd0f98dSmrg basic_machine=$basic_machine-unknown 410cbeba4aeSmrg ;; 411cbeba4aeSmrg # Recognize the various machine names and aliases which stand 412cbeba4aeSmrg # for a CPU type and a company and sometimes even an OS. 413cbeba4aeSmrg 386bsd) 414cbeba4aeSmrg basic_machine=i386-unknown 415cbeba4aeSmrg os=-bsd 416cbeba4aeSmrg ;; 417cbeba4aeSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 418cbeba4aeSmrg basic_machine=m68000-att 419cbeba4aeSmrg ;; 420cbeba4aeSmrg 3b*) 421cbeba4aeSmrg basic_machine=we32k-att 422cbeba4aeSmrg ;; 423cbeba4aeSmrg a29khif) 424cbeba4aeSmrg basic_machine=a29k-amd 425cbeba4aeSmrg os=-udi 426cbeba4aeSmrg ;; 4277bd0f98dSmrg abacus) 4287bd0f98dSmrg basic_machine=abacus-unknown 4297bd0f98dSmrg ;; 430cbeba4aeSmrg adobe68k) 431cbeba4aeSmrg basic_machine=m68010-adobe 432cbeba4aeSmrg os=-scout 433cbeba4aeSmrg ;; 434cbeba4aeSmrg alliant | fx80) 435cbeba4aeSmrg basic_machine=fx80-alliant 436cbeba4aeSmrg ;; 437cbeba4aeSmrg altos | altos3068) 438cbeba4aeSmrg basic_machine=m68k-altos 439cbeba4aeSmrg ;; 440cbeba4aeSmrg am29k) 441cbeba4aeSmrg basic_machine=a29k-none 442cbeba4aeSmrg os=-bsd 443cbeba4aeSmrg ;; 444cbeba4aeSmrg amd64) 445cbeba4aeSmrg basic_machine=x86_64-pc 446cbeba4aeSmrg ;; 4477bd0f98dSmrg amd64-*) 4487bd0f98dSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4497bd0f98dSmrg ;; 450cbeba4aeSmrg amdahl) 451cbeba4aeSmrg basic_machine=580-amdahl 452cbeba4aeSmrg os=-sysv 453cbeba4aeSmrg ;; 454cbeba4aeSmrg amiga | amiga-*) 455cbeba4aeSmrg basic_machine=m68k-unknown 456cbeba4aeSmrg ;; 457cbeba4aeSmrg amigaos | amigados) 458cbeba4aeSmrg basic_machine=m68k-unknown 459cbeba4aeSmrg os=-amigaos 460cbeba4aeSmrg ;; 461cbeba4aeSmrg amigaunix | amix) 462cbeba4aeSmrg basic_machine=m68k-unknown 463cbeba4aeSmrg os=-sysv4 464cbeba4aeSmrg ;; 465cbeba4aeSmrg apollo68) 466cbeba4aeSmrg basic_machine=m68k-apollo 467cbeba4aeSmrg os=-sysv 468cbeba4aeSmrg ;; 469cbeba4aeSmrg apollo68bsd) 470cbeba4aeSmrg basic_machine=m68k-apollo 471cbeba4aeSmrg os=-bsd 472cbeba4aeSmrg ;; 4737bd0f98dSmrg aros) 4747bd0f98dSmrg basic_machine=i386-pc 4757bd0f98dSmrg os=-aros 4767bd0f98dSmrg ;; 477cbeba4aeSmrg aux) 478cbeba4aeSmrg basic_machine=m68k-apple 479cbeba4aeSmrg os=-aux 480cbeba4aeSmrg ;; 481cbeba4aeSmrg balance) 482cbeba4aeSmrg basic_machine=ns32k-sequent 483cbeba4aeSmrg os=-dynix 484cbeba4aeSmrg ;; 4857bd0f98dSmrg blackfin) 4867bd0f98dSmrg basic_machine=bfin-unknown 4877bd0f98dSmrg os=-linux 4887bd0f98dSmrg ;; 4897bd0f98dSmrg blackfin-*) 4907bd0f98dSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4917bd0f98dSmrg os=-linux 4927bd0f98dSmrg ;; 4937bd0f98dSmrg bluegene*) 4947bd0f98dSmrg basic_machine=powerpc-ibm 4957bd0f98dSmrg os=-cnk 4967bd0f98dSmrg ;; 4971a669bc9Smrg c54x-*) 4981a669bc9Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 4991a669bc9Smrg ;; 5001a669bc9Smrg c55x-*) 5011a669bc9Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5021a669bc9Smrg ;; 5031a669bc9Smrg c6x-*) 5041a669bc9Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5051a669bc9Smrg ;; 506cbeba4aeSmrg c90) 507cbeba4aeSmrg basic_machine=c90-cray 508cbeba4aeSmrg os=-unicos 509cbeba4aeSmrg ;; 5107bd0f98dSmrg cegcc) 5117bd0f98dSmrg basic_machine=arm-unknown 5127bd0f98dSmrg os=-cegcc 5137bd0f98dSmrg ;; 514cbeba4aeSmrg convex-c1) 515cbeba4aeSmrg basic_machine=c1-convex 516cbeba4aeSmrg os=-bsd 517cbeba4aeSmrg ;; 518cbeba4aeSmrg convex-c2) 519cbeba4aeSmrg basic_machine=c2-convex 520cbeba4aeSmrg os=-bsd 521cbeba4aeSmrg ;; 522cbeba4aeSmrg convex-c32) 523cbeba4aeSmrg basic_machine=c32-convex 524cbeba4aeSmrg os=-bsd 525cbeba4aeSmrg ;; 526cbeba4aeSmrg convex-c34) 527cbeba4aeSmrg basic_machine=c34-convex 528cbeba4aeSmrg os=-bsd 529cbeba4aeSmrg ;; 530cbeba4aeSmrg convex-c38) 531cbeba4aeSmrg basic_machine=c38-convex 532cbeba4aeSmrg os=-bsd 533cbeba4aeSmrg ;; 534cbeba4aeSmrg cray | j90) 535cbeba4aeSmrg basic_machine=j90-cray 536cbeba4aeSmrg os=-unicos 537cbeba4aeSmrg ;; 5387bd0f98dSmrg craynv) 5397bd0f98dSmrg basic_machine=craynv-cray 5407bd0f98dSmrg os=-unicosmp 5417bd0f98dSmrg ;; 5427bd0f98dSmrg cr16) 5437bd0f98dSmrg basic_machine=cr16-unknown 5447bd0f98dSmrg os=-elf 5457bd0f98dSmrg ;; 546cbeba4aeSmrg crds | unos) 547cbeba4aeSmrg basic_machine=m68k-crds 548cbeba4aeSmrg ;; 5497bd0f98dSmrg crisv32 | crisv32-* | etraxfs*) 5507bd0f98dSmrg basic_machine=crisv32-axis 5517bd0f98dSmrg ;; 552cbeba4aeSmrg cris | cris-* | etrax*) 553cbeba4aeSmrg basic_machine=cris-axis 554cbeba4aeSmrg ;; 5557bd0f98dSmrg crx) 5567bd0f98dSmrg basic_machine=crx-unknown 5577bd0f98dSmrg os=-elf 5587bd0f98dSmrg ;; 559cbeba4aeSmrg da30 | da30-*) 560cbeba4aeSmrg basic_machine=m68k-da30 561cbeba4aeSmrg ;; 562cbeba4aeSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 563cbeba4aeSmrg basic_machine=mips-dec 564cbeba4aeSmrg ;; 565cbeba4aeSmrg decsystem10* | dec10*) 566cbeba4aeSmrg basic_machine=pdp10-dec 567cbeba4aeSmrg os=-tops10 568cbeba4aeSmrg ;; 569cbeba4aeSmrg decsystem20* | dec20*) 570cbeba4aeSmrg basic_machine=pdp10-dec 571cbeba4aeSmrg os=-tops20 572cbeba4aeSmrg ;; 573cbeba4aeSmrg delta | 3300 | motorola-3300 | motorola-delta \ 574cbeba4aeSmrg | 3300-motorola | delta-motorola) 575cbeba4aeSmrg basic_machine=m68k-motorola 576cbeba4aeSmrg ;; 577cbeba4aeSmrg delta88) 578cbeba4aeSmrg basic_machine=m88k-motorola 579cbeba4aeSmrg os=-sysv3 580cbeba4aeSmrg ;; 5817bd0f98dSmrg dicos) 5827bd0f98dSmrg basic_machine=i686-pc 5837bd0f98dSmrg os=-dicos 5847bd0f98dSmrg ;; 5857bd0f98dSmrg djgpp) 5867bd0f98dSmrg basic_machine=i586-pc 5877bd0f98dSmrg os=-msdosdjgpp 5887bd0f98dSmrg ;; 589cbeba4aeSmrg dpx20 | dpx20-*) 590cbeba4aeSmrg basic_machine=rs6000-bull 591cbeba4aeSmrg os=-bosx 592cbeba4aeSmrg ;; 593cbeba4aeSmrg dpx2* | dpx2*-bull) 594cbeba4aeSmrg basic_machine=m68k-bull 595cbeba4aeSmrg os=-sysv3 596cbeba4aeSmrg ;; 597cbeba4aeSmrg ebmon29k) 598cbeba4aeSmrg basic_machine=a29k-amd 599cbeba4aeSmrg os=-ebmon 600cbeba4aeSmrg ;; 601cbeba4aeSmrg elxsi) 602cbeba4aeSmrg basic_machine=elxsi-elxsi 603cbeba4aeSmrg os=-bsd 604cbeba4aeSmrg ;; 605cbeba4aeSmrg encore | umax | mmax) 606cbeba4aeSmrg basic_machine=ns32k-encore 607cbeba4aeSmrg ;; 608cbeba4aeSmrg es1800 | OSE68k | ose68k | ose | OSE) 609cbeba4aeSmrg basic_machine=m68k-ericsson 610cbeba4aeSmrg os=-ose 611cbeba4aeSmrg ;; 612cbeba4aeSmrg fx2800) 613cbeba4aeSmrg basic_machine=i860-alliant 614cbeba4aeSmrg ;; 615cbeba4aeSmrg genix) 616cbeba4aeSmrg basic_machine=ns32k-ns 617cbeba4aeSmrg ;; 618cbeba4aeSmrg gmicro) 619cbeba4aeSmrg basic_machine=tron-gmicro 620cbeba4aeSmrg os=-sysv 621cbeba4aeSmrg ;; 622cbeba4aeSmrg go32) 623cbeba4aeSmrg basic_machine=i386-pc 624cbeba4aeSmrg os=-go32 625cbeba4aeSmrg ;; 626cbeba4aeSmrg h3050r* | hiux*) 627cbeba4aeSmrg basic_machine=hppa1.1-hitachi 628cbeba4aeSmrg os=-hiuxwe2 629cbeba4aeSmrg ;; 630cbeba4aeSmrg h8300hms) 631cbeba4aeSmrg basic_machine=h8300-hitachi 632cbeba4aeSmrg os=-hms 633cbeba4aeSmrg ;; 634cbeba4aeSmrg h8300xray) 635cbeba4aeSmrg basic_machine=h8300-hitachi 636cbeba4aeSmrg os=-xray 637cbeba4aeSmrg ;; 638cbeba4aeSmrg h8500hms) 639cbeba4aeSmrg basic_machine=h8500-hitachi 640cbeba4aeSmrg os=-hms 641cbeba4aeSmrg ;; 642cbeba4aeSmrg harris) 643cbeba4aeSmrg basic_machine=m88k-harris 644cbeba4aeSmrg os=-sysv3 645cbeba4aeSmrg ;; 646cbeba4aeSmrg hp300-*) 647cbeba4aeSmrg basic_machine=m68k-hp 648cbeba4aeSmrg ;; 649cbeba4aeSmrg hp300bsd) 650cbeba4aeSmrg basic_machine=m68k-hp 651cbeba4aeSmrg os=-bsd 652cbeba4aeSmrg ;; 653cbeba4aeSmrg hp300hpux) 654cbeba4aeSmrg basic_machine=m68k-hp 655cbeba4aeSmrg os=-hpux 656cbeba4aeSmrg ;; 657cbeba4aeSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 658cbeba4aeSmrg basic_machine=hppa1.0-hp 659cbeba4aeSmrg ;; 660cbeba4aeSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 661cbeba4aeSmrg basic_machine=m68000-hp 662cbeba4aeSmrg ;; 663cbeba4aeSmrg hp9k3[2-9][0-9]) 664cbeba4aeSmrg basic_machine=m68k-hp 665cbeba4aeSmrg ;; 666cbeba4aeSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 667cbeba4aeSmrg basic_machine=hppa1.0-hp 668cbeba4aeSmrg ;; 669cbeba4aeSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 670cbeba4aeSmrg basic_machine=hppa1.1-hp 671cbeba4aeSmrg ;; 672cbeba4aeSmrg hp9k78[0-9] | hp78[0-9]) 673cbeba4aeSmrg # FIXME: really hppa2.0-hp 674cbeba4aeSmrg basic_machine=hppa1.1-hp 675cbeba4aeSmrg ;; 676cbeba4aeSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 677cbeba4aeSmrg # FIXME: really hppa2.0-hp 678cbeba4aeSmrg basic_machine=hppa1.1-hp 679cbeba4aeSmrg ;; 680cbeba4aeSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 681cbeba4aeSmrg basic_machine=hppa1.1-hp 682cbeba4aeSmrg ;; 683cbeba4aeSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 684cbeba4aeSmrg basic_machine=hppa1.0-hp 685cbeba4aeSmrg ;; 686cbeba4aeSmrg hppa-next) 687cbeba4aeSmrg os=-nextstep3 688cbeba4aeSmrg ;; 689cbeba4aeSmrg hppaosf) 690cbeba4aeSmrg basic_machine=hppa1.1-hp 691cbeba4aeSmrg os=-osf 692cbeba4aeSmrg ;; 693cbeba4aeSmrg hppro) 694cbeba4aeSmrg basic_machine=hppa1.1-hp 695cbeba4aeSmrg os=-proelf 696cbeba4aeSmrg ;; 697cbeba4aeSmrg i370-ibm* | ibm*) 698cbeba4aeSmrg basic_machine=i370-ibm 699cbeba4aeSmrg ;; 700cbeba4aeSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 701cbeba4aeSmrg i*86v32) 702cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 703cbeba4aeSmrg os=-sysv32 704cbeba4aeSmrg ;; 705cbeba4aeSmrg i*86v4*) 706cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 707cbeba4aeSmrg os=-sysv4 708cbeba4aeSmrg ;; 709cbeba4aeSmrg i*86v) 710cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 711cbeba4aeSmrg os=-sysv 712cbeba4aeSmrg ;; 713cbeba4aeSmrg i*86sol2) 714cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 715cbeba4aeSmrg os=-solaris2 716cbeba4aeSmrg ;; 717cbeba4aeSmrg i386mach) 718cbeba4aeSmrg basic_machine=i386-mach 719cbeba4aeSmrg os=-mach 720cbeba4aeSmrg ;; 721cbeba4aeSmrg i386-vsta | vsta) 722cbeba4aeSmrg basic_machine=i386-unknown 723cbeba4aeSmrg os=-vsta 724cbeba4aeSmrg ;; 725cbeba4aeSmrg iris | iris4d) 726cbeba4aeSmrg basic_machine=mips-sgi 727cbeba4aeSmrg case $os in 728cbeba4aeSmrg -irix*) 729cbeba4aeSmrg ;; 730cbeba4aeSmrg *) 731cbeba4aeSmrg os=-irix4 732cbeba4aeSmrg ;; 733cbeba4aeSmrg esac 734cbeba4aeSmrg ;; 735cbeba4aeSmrg isi68 | isi) 736cbeba4aeSmrg basic_machine=m68k-isi 737cbeba4aeSmrg os=-sysv 738cbeba4aeSmrg ;; 7397bd0f98dSmrg m68knommu) 7407bd0f98dSmrg basic_machine=m68k-unknown 7417bd0f98dSmrg os=-linux 7427bd0f98dSmrg ;; 7437bd0f98dSmrg m68knommu-*) 7447bd0f98dSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7457bd0f98dSmrg os=-linux 7467bd0f98dSmrg ;; 747cbeba4aeSmrg m88k-omron*) 748cbeba4aeSmrg basic_machine=m88k-omron 749cbeba4aeSmrg ;; 750cbeba4aeSmrg magnum | m3230) 751cbeba4aeSmrg basic_machine=mips-mips 752cbeba4aeSmrg os=-sysv 753cbeba4aeSmrg ;; 754cbeba4aeSmrg merlin) 755cbeba4aeSmrg basic_machine=ns32k-utek 756cbeba4aeSmrg os=-sysv 757cbeba4aeSmrg ;; 7587bd0f98dSmrg microblaze) 7597bd0f98dSmrg basic_machine=microblaze-xilinx 7607bd0f98dSmrg ;; 761cbeba4aeSmrg mingw32) 762cbeba4aeSmrg basic_machine=i386-pc 763cbeba4aeSmrg os=-mingw32 764cbeba4aeSmrg ;; 7657bd0f98dSmrg mingw32ce) 7667bd0f98dSmrg basic_machine=arm-unknown 7677bd0f98dSmrg os=-mingw32ce 7687bd0f98dSmrg ;; 769cbeba4aeSmrg miniframe) 770cbeba4aeSmrg basic_machine=m68000-convergent 771cbeba4aeSmrg ;; 772cbeba4aeSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 773cbeba4aeSmrg basic_machine=m68k-atari 774cbeba4aeSmrg os=-mint 775cbeba4aeSmrg ;; 776cbeba4aeSmrg mips3*-*) 777cbeba4aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 778cbeba4aeSmrg ;; 779cbeba4aeSmrg mips3*) 780cbeba4aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 781cbeba4aeSmrg ;; 782cbeba4aeSmrg monitor) 783cbeba4aeSmrg basic_machine=m68k-rom68k 784cbeba4aeSmrg os=-coff 785cbeba4aeSmrg ;; 786cbeba4aeSmrg morphos) 787cbeba4aeSmrg basic_machine=powerpc-unknown 788cbeba4aeSmrg os=-morphos 789cbeba4aeSmrg ;; 790cbeba4aeSmrg msdos) 791cbeba4aeSmrg basic_machine=i386-pc 792cbeba4aeSmrg os=-msdos 793cbeba4aeSmrg ;; 7947bd0f98dSmrg ms1-*) 7957bd0f98dSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7967bd0f98dSmrg ;; 797cbeba4aeSmrg mvs) 798cbeba4aeSmrg basic_machine=i370-ibm 799cbeba4aeSmrg os=-mvs 800cbeba4aeSmrg ;; 801cbeba4aeSmrg ncr3000) 802cbeba4aeSmrg basic_machine=i486-ncr 803cbeba4aeSmrg os=-sysv4 804cbeba4aeSmrg ;; 805cbeba4aeSmrg netbsd386) 806cbeba4aeSmrg basic_machine=i386-unknown 807cbeba4aeSmrg os=-netbsd 808cbeba4aeSmrg ;; 809cbeba4aeSmrg netwinder) 810cbeba4aeSmrg basic_machine=armv4l-rebel 811cbeba4aeSmrg os=-linux 812cbeba4aeSmrg ;; 813cbeba4aeSmrg news | news700 | news800 | news900) 814cbeba4aeSmrg basic_machine=m68k-sony 815cbeba4aeSmrg os=-newsos 816cbeba4aeSmrg ;; 817cbeba4aeSmrg news1000) 818cbeba4aeSmrg basic_machine=m68030-sony 819cbeba4aeSmrg os=-newsos 820cbeba4aeSmrg ;; 821cbeba4aeSmrg news-3600 | risc-news) 822cbeba4aeSmrg basic_machine=mips-sony 823cbeba4aeSmrg os=-newsos 824cbeba4aeSmrg ;; 825cbeba4aeSmrg necv70) 826cbeba4aeSmrg basic_machine=v70-nec 827cbeba4aeSmrg os=-sysv 828cbeba4aeSmrg ;; 829cbeba4aeSmrg next | m*-next ) 830cbeba4aeSmrg basic_machine=m68k-next 831cbeba4aeSmrg case $os in 832cbeba4aeSmrg -nextstep* ) 833cbeba4aeSmrg ;; 834cbeba4aeSmrg -ns2*) 835cbeba4aeSmrg os=-nextstep2 836cbeba4aeSmrg ;; 837cbeba4aeSmrg *) 838cbeba4aeSmrg os=-nextstep3 839cbeba4aeSmrg ;; 840cbeba4aeSmrg esac 841cbeba4aeSmrg ;; 842cbeba4aeSmrg nh3000) 843cbeba4aeSmrg basic_machine=m68k-harris 844cbeba4aeSmrg os=-cxux 845cbeba4aeSmrg ;; 846cbeba4aeSmrg nh[45]000) 847cbeba4aeSmrg basic_machine=m88k-harris 848cbeba4aeSmrg os=-cxux 849cbeba4aeSmrg ;; 850cbeba4aeSmrg nindy960) 851cbeba4aeSmrg basic_machine=i960-intel 852cbeba4aeSmrg os=-nindy 853cbeba4aeSmrg ;; 854cbeba4aeSmrg mon960) 855cbeba4aeSmrg basic_machine=i960-intel 856cbeba4aeSmrg os=-mon960 857cbeba4aeSmrg ;; 858cbeba4aeSmrg nonstopux) 859cbeba4aeSmrg basic_machine=mips-compaq 860cbeba4aeSmrg os=-nonstopux 861cbeba4aeSmrg ;; 862cbeba4aeSmrg np1) 863cbeba4aeSmrg basic_machine=np1-gould 864cbeba4aeSmrg ;; 8651a669bc9Smrg neo-tandem) 8661a669bc9Smrg basic_machine=neo-tandem 8671a669bc9Smrg ;; 8681a669bc9Smrg nse-tandem) 8691a669bc9Smrg basic_machine=nse-tandem 8701a669bc9Smrg ;; 871cbeba4aeSmrg nsr-tandem) 872cbeba4aeSmrg basic_machine=nsr-tandem 873cbeba4aeSmrg ;; 874cbeba4aeSmrg op50n-* | op60c-*) 875cbeba4aeSmrg basic_machine=hppa1.1-oki 876cbeba4aeSmrg os=-proelf 877cbeba4aeSmrg ;; 8787bd0f98dSmrg openrisc | openrisc-*) 879cbeba4aeSmrg basic_machine=or32-unknown 8807bd0f98dSmrg ;; 8817bd0f98dSmrg os400) 8827bd0f98dSmrg basic_machine=powerpc-ibm 8837bd0f98dSmrg os=-os400 884cbeba4aeSmrg ;; 885cbeba4aeSmrg OSE68000 | ose68000) 886cbeba4aeSmrg basic_machine=m68000-ericsson 887cbeba4aeSmrg os=-ose 888cbeba4aeSmrg ;; 889cbeba4aeSmrg os68k) 890cbeba4aeSmrg basic_machine=m68k-none 891cbeba4aeSmrg os=-os68k 892cbeba4aeSmrg ;; 893cbeba4aeSmrg pa-hitachi) 894cbeba4aeSmrg basic_machine=hppa1.1-hitachi 895cbeba4aeSmrg os=-hiuxwe2 896cbeba4aeSmrg ;; 897cbeba4aeSmrg paragon) 898cbeba4aeSmrg basic_machine=i860-intel 899cbeba4aeSmrg os=-osf 900cbeba4aeSmrg ;; 9017bd0f98dSmrg parisc) 9027bd0f98dSmrg basic_machine=hppa-unknown 9037bd0f98dSmrg os=-linux 9047bd0f98dSmrg ;; 9057bd0f98dSmrg parisc-*) 9067bd0f98dSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9077bd0f98dSmrg os=-linux 9087bd0f98dSmrg ;; 909cbeba4aeSmrg pbd) 910cbeba4aeSmrg basic_machine=sparc-tti 911cbeba4aeSmrg ;; 912cbeba4aeSmrg pbb) 913cbeba4aeSmrg basic_machine=m68k-tti 914cbeba4aeSmrg ;; 915cbeba4aeSmrg pc532 | pc532-*) 916cbeba4aeSmrg basic_machine=ns32k-pc532 917cbeba4aeSmrg ;; 9187bd0f98dSmrg pc98) 9197bd0f98dSmrg basic_machine=i386-pc 9207bd0f98dSmrg ;; 9217bd0f98dSmrg pc98-*) 9227bd0f98dSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9237bd0f98dSmrg ;; 924cbeba4aeSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 925cbeba4aeSmrg basic_machine=i586-pc 926cbeba4aeSmrg ;; 927cbeba4aeSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 928cbeba4aeSmrg basic_machine=i686-pc 929cbeba4aeSmrg ;; 930cbeba4aeSmrg pentiumii | pentium2 | pentiumiii | pentium3) 931cbeba4aeSmrg basic_machine=i686-pc 932cbeba4aeSmrg ;; 933cbeba4aeSmrg pentium4) 934cbeba4aeSmrg basic_machine=i786-pc 935cbeba4aeSmrg ;; 936cbeba4aeSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 937cbeba4aeSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 938cbeba4aeSmrg ;; 939cbeba4aeSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 940cbeba4aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 941cbeba4aeSmrg ;; 942cbeba4aeSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 943cbeba4aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 944cbeba4aeSmrg ;; 945cbeba4aeSmrg pentium4-*) 946cbeba4aeSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 947cbeba4aeSmrg ;; 948cbeba4aeSmrg pn) 949cbeba4aeSmrg basic_machine=pn-gould 950cbeba4aeSmrg ;; 951cbeba4aeSmrg power) basic_machine=power-ibm 952cbeba4aeSmrg ;; 953cbeba4aeSmrg ppc) basic_machine=powerpc-unknown 954cbeba4aeSmrg ;; 955cbeba4aeSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 956cbeba4aeSmrg ;; 957cbeba4aeSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 958cbeba4aeSmrg basic_machine=powerpcle-unknown 959cbeba4aeSmrg ;; 960cbeba4aeSmrg ppcle-* | powerpclittle-*) 961cbeba4aeSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 962cbeba4aeSmrg ;; 963cbeba4aeSmrg ppc64) basic_machine=powerpc64-unknown 964cbeba4aeSmrg ;; 965cbeba4aeSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 966cbeba4aeSmrg ;; 967cbeba4aeSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 968cbeba4aeSmrg basic_machine=powerpc64le-unknown 969cbeba4aeSmrg ;; 970cbeba4aeSmrg ppc64le-* | powerpc64little-*) 971cbeba4aeSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 972cbeba4aeSmrg ;; 973cbeba4aeSmrg ps2) 974cbeba4aeSmrg basic_machine=i386-ibm 975cbeba4aeSmrg ;; 976cbeba4aeSmrg pw32) 977cbeba4aeSmrg basic_machine=i586-unknown 978cbeba4aeSmrg os=-pw32 979cbeba4aeSmrg ;; 9807bd0f98dSmrg rdos) 9817bd0f98dSmrg basic_machine=i386-pc 9827bd0f98dSmrg os=-rdos 9837bd0f98dSmrg ;; 984cbeba4aeSmrg rom68k) 985cbeba4aeSmrg basic_machine=m68k-rom68k 986cbeba4aeSmrg os=-coff 987cbeba4aeSmrg ;; 988cbeba4aeSmrg rm[46]00) 989cbeba4aeSmrg basic_machine=mips-siemens 990cbeba4aeSmrg ;; 991cbeba4aeSmrg rtpc | rtpc-*) 992cbeba4aeSmrg basic_machine=romp-ibm 993cbeba4aeSmrg ;; 9947bd0f98dSmrg s390 | s390-*) 9957bd0f98dSmrg basic_machine=s390-ibm 9967bd0f98dSmrg ;; 9977bd0f98dSmrg s390x | s390x-*) 9987bd0f98dSmrg basic_machine=s390x-ibm 9997bd0f98dSmrg ;; 1000cbeba4aeSmrg sa29200) 1001cbeba4aeSmrg basic_machine=a29k-amd 1002cbeba4aeSmrg os=-udi 1003cbeba4aeSmrg ;; 1004cbeba4aeSmrg sb1) 1005cbeba4aeSmrg basic_machine=mipsisa64sb1-unknown 1006cbeba4aeSmrg ;; 1007cbeba4aeSmrg sb1el) 1008cbeba4aeSmrg basic_machine=mipsisa64sb1el-unknown 1009cbeba4aeSmrg ;; 10107bd0f98dSmrg sde) 10117bd0f98dSmrg basic_machine=mipsisa32-sde 10127bd0f98dSmrg os=-elf 10137bd0f98dSmrg ;; 1014cbeba4aeSmrg sei) 1015cbeba4aeSmrg basic_machine=mips-sei 1016cbeba4aeSmrg os=-seiux 1017cbeba4aeSmrg ;; 1018cbeba4aeSmrg sequent) 1019cbeba4aeSmrg basic_machine=i386-sequent 1020cbeba4aeSmrg ;; 1021cbeba4aeSmrg sh) 1022cbeba4aeSmrg basic_machine=sh-hitachi 1023cbeba4aeSmrg os=-hms 1024cbeba4aeSmrg ;; 10257bd0f98dSmrg sh5el) 10267bd0f98dSmrg basic_machine=sh5le-unknown 10277bd0f98dSmrg ;; 1028cbeba4aeSmrg sh64) 1029cbeba4aeSmrg basic_machine=sh64-unknown 1030cbeba4aeSmrg ;; 1031cbeba4aeSmrg sparclite-wrs | simso-wrs) 1032cbeba4aeSmrg basic_machine=sparclite-wrs 1033cbeba4aeSmrg os=-vxworks 1034cbeba4aeSmrg ;; 1035cbeba4aeSmrg sps7) 1036cbeba4aeSmrg basic_machine=m68k-bull 1037cbeba4aeSmrg os=-sysv2 1038cbeba4aeSmrg ;; 1039cbeba4aeSmrg spur) 1040cbeba4aeSmrg basic_machine=spur-unknown 1041cbeba4aeSmrg ;; 1042cbeba4aeSmrg st2000) 1043cbeba4aeSmrg basic_machine=m68k-tandem 1044cbeba4aeSmrg ;; 1045cbeba4aeSmrg stratus) 1046cbeba4aeSmrg basic_machine=i860-stratus 1047cbeba4aeSmrg os=-sysv4 1048cbeba4aeSmrg ;; 1049cbeba4aeSmrg sun2) 1050cbeba4aeSmrg basic_machine=m68000-sun 1051cbeba4aeSmrg ;; 1052cbeba4aeSmrg sun2os3) 1053cbeba4aeSmrg basic_machine=m68000-sun 1054cbeba4aeSmrg os=-sunos3 1055cbeba4aeSmrg ;; 1056cbeba4aeSmrg sun2os4) 1057cbeba4aeSmrg basic_machine=m68000-sun 1058cbeba4aeSmrg os=-sunos4 1059cbeba4aeSmrg ;; 1060cbeba4aeSmrg sun3os3) 1061cbeba4aeSmrg basic_machine=m68k-sun 1062cbeba4aeSmrg os=-sunos3 1063cbeba4aeSmrg ;; 1064cbeba4aeSmrg sun3os4) 1065cbeba4aeSmrg basic_machine=m68k-sun 1066cbeba4aeSmrg os=-sunos4 1067cbeba4aeSmrg ;; 1068cbeba4aeSmrg sun4os3) 1069cbeba4aeSmrg basic_machine=sparc-sun 1070cbeba4aeSmrg os=-sunos3 1071cbeba4aeSmrg ;; 1072cbeba4aeSmrg sun4os4) 1073cbeba4aeSmrg basic_machine=sparc-sun 1074cbeba4aeSmrg os=-sunos4 1075cbeba4aeSmrg ;; 1076cbeba4aeSmrg sun4sol2) 1077cbeba4aeSmrg basic_machine=sparc-sun 1078cbeba4aeSmrg os=-solaris2 1079cbeba4aeSmrg ;; 1080cbeba4aeSmrg sun3 | sun3-*) 1081cbeba4aeSmrg basic_machine=m68k-sun 1082cbeba4aeSmrg ;; 1083cbeba4aeSmrg sun4) 1084cbeba4aeSmrg basic_machine=sparc-sun 1085cbeba4aeSmrg ;; 1086cbeba4aeSmrg sun386 | sun386i | roadrunner) 1087cbeba4aeSmrg basic_machine=i386-sun 1088cbeba4aeSmrg ;; 1089cbeba4aeSmrg sv1) 1090cbeba4aeSmrg basic_machine=sv1-cray 1091cbeba4aeSmrg os=-unicos 1092cbeba4aeSmrg ;; 1093cbeba4aeSmrg symmetry) 1094cbeba4aeSmrg basic_machine=i386-sequent 1095cbeba4aeSmrg os=-dynix 1096cbeba4aeSmrg ;; 1097cbeba4aeSmrg t3e) 1098cbeba4aeSmrg basic_machine=alphaev5-cray 1099cbeba4aeSmrg os=-unicos 1100cbeba4aeSmrg ;; 1101cbeba4aeSmrg t90) 1102cbeba4aeSmrg basic_machine=t90-cray 1103cbeba4aeSmrg os=-unicos 1104cbeba4aeSmrg ;; 11051a669bc9Smrg # This must be matched before tile*. 11061a669bc9Smrg tilegx*) 11071a669bc9Smrg basic_machine=tilegx-unknown 11081a669bc9Smrg os=-linux-gnu 1109cbeba4aeSmrg ;; 11107bd0f98dSmrg tile*) 11117bd0f98dSmrg basic_machine=tile-unknown 11127bd0f98dSmrg os=-linux-gnu 11137bd0f98dSmrg ;; 1114cbeba4aeSmrg tx39) 1115cbeba4aeSmrg basic_machine=mipstx39-unknown 1116cbeba4aeSmrg ;; 1117cbeba4aeSmrg tx39el) 1118cbeba4aeSmrg basic_machine=mipstx39el-unknown 1119cbeba4aeSmrg ;; 1120cbeba4aeSmrg toad1) 1121cbeba4aeSmrg basic_machine=pdp10-xkl 1122cbeba4aeSmrg os=-tops20 1123cbeba4aeSmrg ;; 1124cbeba4aeSmrg tower | tower-32) 1125cbeba4aeSmrg basic_machine=m68k-ncr 1126cbeba4aeSmrg ;; 11277bd0f98dSmrg tpf) 11287bd0f98dSmrg basic_machine=s390x-ibm 11297bd0f98dSmrg os=-tpf 11307bd0f98dSmrg ;; 1131cbeba4aeSmrg udi29k) 1132cbeba4aeSmrg basic_machine=a29k-amd 1133cbeba4aeSmrg os=-udi 1134cbeba4aeSmrg ;; 1135cbeba4aeSmrg ultra3) 1136cbeba4aeSmrg basic_machine=a29k-nyu 1137cbeba4aeSmrg os=-sym1 1138cbeba4aeSmrg ;; 1139cbeba4aeSmrg v810 | necv810) 1140cbeba4aeSmrg basic_machine=v810-nec 1141cbeba4aeSmrg os=-none 1142cbeba4aeSmrg ;; 1143cbeba4aeSmrg vaxv) 1144cbeba4aeSmrg basic_machine=vax-dec 1145cbeba4aeSmrg os=-sysv 1146cbeba4aeSmrg ;; 1147cbeba4aeSmrg vms) 1148cbeba4aeSmrg basic_machine=vax-dec 1149cbeba4aeSmrg os=-vms 1150cbeba4aeSmrg ;; 1151cbeba4aeSmrg vpp*|vx|vx-*) 1152cbeba4aeSmrg basic_machine=f301-fujitsu 1153cbeba4aeSmrg ;; 1154cbeba4aeSmrg vxworks960) 1155cbeba4aeSmrg basic_machine=i960-wrs 1156cbeba4aeSmrg os=-vxworks 1157cbeba4aeSmrg ;; 1158cbeba4aeSmrg vxworks68) 1159cbeba4aeSmrg basic_machine=m68k-wrs 1160cbeba4aeSmrg os=-vxworks 1161cbeba4aeSmrg ;; 1162cbeba4aeSmrg vxworks29k) 1163cbeba4aeSmrg basic_machine=a29k-wrs 1164cbeba4aeSmrg os=-vxworks 1165cbeba4aeSmrg ;; 1166cbeba4aeSmrg w65*) 1167cbeba4aeSmrg basic_machine=w65-wdc 1168cbeba4aeSmrg os=-none 1169cbeba4aeSmrg ;; 1170cbeba4aeSmrg w89k-*) 1171cbeba4aeSmrg basic_machine=hppa1.1-winbond 1172cbeba4aeSmrg os=-proelf 1173cbeba4aeSmrg ;; 11747bd0f98dSmrg xbox) 11757bd0f98dSmrg basic_machine=i686-pc 11767bd0f98dSmrg os=-mingw32 11777bd0f98dSmrg ;; 1178cbeba4aeSmrg xps | xps100) 1179cbeba4aeSmrg basic_machine=xps100-honeywell 1180cbeba4aeSmrg ;; 1181cbeba4aeSmrg ymp) 1182cbeba4aeSmrg basic_machine=ymp-cray 1183cbeba4aeSmrg os=-unicos 1184cbeba4aeSmrg ;; 1185cbeba4aeSmrg z8k-*-coff) 1186cbeba4aeSmrg basic_machine=z8k-unknown 1187cbeba4aeSmrg os=-sim 1188cbeba4aeSmrg ;; 11897bd0f98dSmrg z80-*-coff) 11907bd0f98dSmrg basic_machine=z80-unknown 11917bd0f98dSmrg os=-sim 11927bd0f98dSmrg ;; 1193cbeba4aeSmrg none) 1194cbeba4aeSmrg basic_machine=none-none 1195cbeba4aeSmrg os=-none 1196cbeba4aeSmrg ;; 1197cbeba4aeSmrg 1198cbeba4aeSmrg# Here we handle the default manufacturer of certain CPU types. It is in 1199cbeba4aeSmrg# some cases the only manufacturer, in others, it is the most popular. 1200cbeba4aeSmrg w89k) 1201cbeba4aeSmrg basic_machine=hppa1.1-winbond 1202cbeba4aeSmrg ;; 1203cbeba4aeSmrg op50n) 1204cbeba4aeSmrg basic_machine=hppa1.1-oki 1205cbeba4aeSmrg ;; 1206cbeba4aeSmrg op60c) 1207cbeba4aeSmrg basic_machine=hppa1.1-oki 1208cbeba4aeSmrg ;; 1209cbeba4aeSmrg romp) 1210cbeba4aeSmrg basic_machine=romp-ibm 1211cbeba4aeSmrg ;; 12127bd0f98dSmrg mmix) 12137bd0f98dSmrg basic_machine=mmix-knuth 12147bd0f98dSmrg ;; 1215cbeba4aeSmrg rs6000) 1216cbeba4aeSmrg basic_machine=rs6000-ibm 1217cbeba4aeSmrg ;; 1218cbeba4aeSmrg vax) 1219cbeba4aeSmrg basic_machine=vax-dec 1220cbeba4aeSmrg ;; 1221cbeba4aeSmrg pdp10) 1222cbeba4aeSmrg # there are many clones, so DEC is not a safe bet 1223cbeba4aeSmrg basic_machine=pdp10-unknown 1224cbeba4aeSmrg ;; 1225cbeba4aeSmrg pdp11) 1226cbeba4aeSmrg basic_machine=pdp11-dec 1227cbeba4aeSmrg ;; 1228cbeba4aeSmrg we32k) 1229cbeba4aeSmrg basic_machine=we32k-att 1230cbeba4aeSmrg ;; 12317bd0f98dSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1232cbeba4aeSmrg basic_machine=sh-unknown 1233cbeba4aeSmrg ;; 12347bd0f98dSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1235cbeba4aeSmrg basic_machine=sparc-sun 1236cbeba4aeSmrg ;; 1237cbeba4aeSmrg cydra) 1238cbeba4aeSmrg basic_machine=cydra-cydrome 1239cbeba4aeSmrg ;; 1240cbeba4aeSmrg orion) 1241cbeba4aeSmrg basic_machine=orion-highlevel 1242cbeba4aeSmrg ;; 1243cbeba4aeSmrg orion105) 1244cbeba4aeSmrg basic_machine=clipper-highlevel 1245cbeba4aeSmrg ;; 1246cbeba4aeSmrg mac | mpw | mac-mpw) 1247cbeba4aeSmrg basic_machine=m68k-apple 1248cbeba4aeSmrg ;; 1249cbeba4aeSmrg pmac | pmac-mpw) 1250cbeba4aeSmrg basic_machine=powerpc-apple 1251cbeba4aeSmrg ;; 1252cbeba4aeSmrg *-unknown) 1253cbeba4aeSmrg # Make sure to match an already-canonicalized machine name. 1254cbeba4aeSmrg ;; 1255cbeba4aeSmrg *) 1256cbeba4aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1257cbeba4aeSmrg exit 1 1258cbeba4aeSmrg ;; 1259cbeba4aeSmrgesac 1260cbeba4aeSmrg 1261cbeba4aeSmrg# Here we canonicalize certain aliases for manufacturers. 1262cbeba4aeSmrgcase $basic_machine in 1263cbeba4aeSmrg *-digital*) 1264cbeba4aeSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1265cbeba4aeSmrg ;; 1266cbeba4aeSmrg *-commodore*) 1267cbeba4aeSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1268cbeba4aeSmrg ;; 1269cbeba4aeSmrg *) 1270cbeba4aeSmrg ;; 1271cbeba4aeSmrgesac 1272cbeba4aeSmrg 1273cbeba4aeSmrg# Decode manufacturer-specific aliases for certain operating systems. 1274cbeba4aeSmrg 1275cbeba4aeSmrgif [ x"$os" != x"" ] 1276cbeba4aeSmrgthen 1277cbeba4aeSmrgcase $os in 1278cbeba4aeSmrg # First match some system type aliases 1279cbeba4aeSmrg # that might get confused with valid system types. 1280cbeba4aeSmrg # -solaris* is a basic system type, with this one exception. 12817bd0f98dSmrg -auroraux) 12827bd0f98dSmrg os=-auroraux 12837bd0f98dSmrg ;; 1284cbeba4aeSmrg -solaris1 | -solaris1.*) 1285cbeba4aeSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1286cbeba4aeSmrg ;; 1287cbeba4aeSmrg -solaris) 1288cbeba4aeSmrg os=-solaris2 1289cbeba4aeSmrg ;; 1290cbeba4aeSmrg -svr4*) 1291cbeba4aeSmrg os=-sysv4 1292cbeba4aeSmrg ;; 1293cbeba4aeSmrg -unixware*) 1294cbeba4aeSmrg os=-sysv4.2uw 1295cbeba4aeSmrg ;; 1296cbeba4aeSmrg -gnu/linux*) 1297cbeba4aeSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1298cbeba4aeSmrg ;; 1299cbeba4aeSmrg # First accept the basic system types. 1300cbeba4aeSmrg # The portable systems comes first. 1301cbeba4aeSmrg # Each alternative MUST END IN A *, to match a version number. 1302cbeba4aeSmrg # -sysv* is not here because it comes later, after sysvr4. 1303cbeba4aeSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13047bd0f98dSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13057bd0f98dSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13067bd0f98dSmrg | -sym* | -kopensolaris* \ 1307cbeba4aeSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13087bd0f98dSmrg | -aos* | -aros* \ 1309cbeba4aeSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1310cbeba4aeSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13117bd0f98dSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13127bd0f98dSmrg | -openbsd* | -solidbsd* \ 13137bd0f98dSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13147bd0f98dSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1315cbeba4aeSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1316cbeba4aeSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13177bd0f98dSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 1318cbeba4aeSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13191a669bc9Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 13201a669bc9Smrg | -linux-newlib* | -linux-uclibc* \ 13217bd0f98dSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1322cbeba4aeSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1323cbeba4aeSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1324cbeba4aeSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1325cbeba4aeSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1326cbeba4aeSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13277bd0f98dSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13287bd0f98dSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1329cbeba4aeSmrg # Remember, each alternative MUST END IN *, to match a version number. 1330cbeba4aeSmrg ;; 1331cbeba4aeSmrg -qnx*) 1332cbeba4aeSmrg case $basic_machine in 1333cbeba4aeSmrg x86-* | i*86-*) 1334cbeba4aeSmrg ;; 1335cbeba4aeSmrg *) 1336cbeba4aeSmrg os=-nto$os 1337cbeba4aeSmrg ;; 1338cbeba4aeSmrg esac 1339cbeba4aeSmrg ;; 1340cbeba4aeSmrg -nto-qnx*) 1341cbeba4aeSmrg ;; 1342cbeba4aeSmrg -nto*) 1343cbeba4aeSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1344cbeba4aeSmrg ;; 1345cbeba4aeSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13467bd0f98dSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1347cbeba4aeSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1348cbeba4aeSmrg ;; 1349cbeba4aeSmrg -mac*) 1350cbeba4aeSmrg os=`echo $os | sed -e 's|mac|macos|'` 1351cbeba4aeSmrg ;; 13527bd0f98dSmrg -linux-dietlibc) 13537bd0f98dSmrg os=-linux-dietlibc 13547bd0f98dSmrg ;; 1355cbeba4aeSmrg -linux*) 1356cbeba4aeSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1357cbeba4aeSmrg ;; 1358cbeba4aeSmrg -sunos5*) 1359cbeba4aeSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1360cbeba4aeSmrg ;; 1361cbeba4aeSmrg -sunos6*) 1362cbeba4aeSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1363cbeba4aeSmrg ;; 1364cbeba4aeSmrg -opened*) 1365cbeba4aeSmrg os=-openedition 1366cbeba4aeSmrg ;; 13677bd0f98dSmrg -os400*) 13687bd0f98dSmrg os=-os400 13697bd0f98dSmrg ;; 1370cbeba4aeSmrg -wince*) 1371cbeba4aeSmrg os=-wince 1372cbeba4aeSmrg ;; 1373cbeba4aeSmrg -osfrose*) 1374cbeba4aeSmrg os=-osfrose 1375cbeba4aeSmrg ;; 1376cbeba4aeSmrg -osf*) 1377cbeba4aeSmrg os=-osf 1378cbeba4aeSmrg ;; 1379cbeba4aeSmrg -utek*) 1380cbeba4aeSmrg os=-bsd 1381cbeba4aeSmrg ;; 1382cbeba4aeSmrg -dynix*) 1383cbeba4aeSmrg os=-bsd 1384cbeba4aeSmrg ;; 1385cbeba4aeSmrg -acis*) 1386cbeba4aeSmrg os=-aos 1387cbeba4aeSmrg ;; 1388cbeba4aeSmrg -atheos*) 1389cbeba4aeSmrg os=-atheos 1390cbeba4aeSmrg ;; 13917bd0f98dSmrg -syllable*) 13927bd0f98dSmrg os=-syllable 13937bd0f98dSmrg ;; 1394cbeba4aeSmrg -386bsd) 1395cbeba4aeSmrg os=-bsd 1396cbeba4aeSmrg ;; 1397cbeba4aeSmrg -ctix* | -uts*) 1398cbeba4aeSmrg os=-sysv 1399cbeba4aeSmrg ;; 1400cbeba4aeSmrg -nova*) 1401cbeba4aeSmrg os=-rtmk-nova 1402cbeba4aeSmrg ;; 1403cbeba4aeSmrg -ns2 ) 1404cbeba4aeSmrg os=-nextstep2 1405cbeba4aeSmrg ;; 1406cbeba4aeSmrg -nsk*) 1407cbeba4aeSmrg os=-nsk 1408cbeba4aeSmrg ;; 1409cbeba4aeSmrg # Preserve the version number of sinix5. 1410cbeba4aeSmrg -sinix5.*) 1411cbeba4aeSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 1412cbeba4aeSmrg ;; 1413cbeba4aeSmrg -sinix*) 1414cbeba4aeSmrg os=-sysv4 1415cbeba4aeSmrg ;; 14167bd0f98dSmrg -tpf*) 14177bd0f98dSmrg os=-tpf 14187bd0f98dSmrg ;; 1419cbeba4aeSmrg -triton*) 1420cbeba4aeSmrg os=-sysv3 1421cbeba4aeSmrg ;; 1422cbeba4aeSmrg -oss*) 1423cbeba4aeSmrg os=-sysv3 1424cbeba4aeSmrg ;; 1425cbeba4aeSmrg -svr4) 1426cbeba4aeSmrg os=-sysv4 1427cbeba4aeSmrg ;; 1428cbeba4aeSmrg -svr3) 1429cbeba4aeSmrg os=-sysv3 1430cbeba4aeSmrg ;; 1431cbeba4aeSmrg -sysvr4) 1432cbeba4aeSmrg os=-sysv4 1433cbeba4aeSmrg ;; 1434cbeba4aeSmrg # This must come after -sysvr4. 1435cbeba4aeSmrg -sysv*) 1436cbeba4aeSmrg ;; 1437cbeba4aeSmrg -ose*) 1438cbeba4aeSmrg os=-ose 1439cbeba4aeSmrg ;; 1440cbeba4aeSmrg -es1800*) 1441cbeba4aeSmrg os=-ose 1442cbeba4aeSmrg ;; 1443cbeba4aeSmrg -xenix) 1444cbeba4aeSmrg os=-xenix 1445cbeba4aeSmrg ;; 1446cbeba4aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1447cbeba4aeSmrg os=-mint 1448cbeba4aeSmrg ;; 1449cbeba4aeSmrg -aros*) 1450cbeba4aeSmrg os=-aros 1451cbeba4aeSmrg ;; 1452cbeba4aeSmrg -kaos*) 1453cbeba4aeSmrg os=-kaos 1454cbeba4aeSmrg ;; 14557bd0f98dSmrg -zvmoe) 14567bd0f98dSmrg os=-zvmoe 14577bd0f98dSmrg ;; 14587bd0f98dSmrg -dicos*) 14597bd0f98dSmrg os=-dicos 14607bd0f98dSmrg ;; 14611a669bc9Smrg -nacl*) 14621a669bc9Smrg ;; 1463cbeba4aeSmrg -none) 1464cbeba4aeSmrg ;; 1465cbeba4aeSmrg *) 1466cbeba4aeSmrg # Get rid of the `-' at the beginning of $os. 1467cbeba4aeSmrg os=`echo $os | sed 's/[^-]*-//'` 1468cbeba4aeSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1469cbeba4aeSmrg exit 1 1470cbeba4aeSmrg ;; 1471cbeba4aeSmrgesac 1472cbeba4aeSmrgelse 1473cbeba4aeSmrg 1474cbeba4aeSmrg# Here we handle the default operating systems that come with various machines. 1475cbeba4aeSmrg# The value should be what the vendor currently ships out the door with their 1476cbeba4aeSmrg# machine or put another way, the most popular os provided with the machine. 1477cbeba4aeSmrg 1478cbeba4aeSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1479cbeba4aeSmrg# "-sun"), then you have to tell the case statement up towards the top 1480cbeba4aeSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1481cbeba4aeSmrg# will signal an error saying that MANUFACTURER isn't an operating 1482cbeba4aeSmrg# system, and we'll never get to this point. 1483cbeba4aeSmrg 1484cbeba4aeSmrgcase $basic_machine in 14857bd0f98dSmrg score-*) 14867bd0f98dSmrg os=-elf 14877bd0f98dSmrg ;; 14887bd0f98dSmrg spu-*) 14897bd0f98dSmrg os=-elf 14907bd0f98dSmrg ;; 1491cbeba4aeSmrg *-acorn) 1492cbeba4aeSmrg os=-riscix1.2 1493cbeba4aeSmrg ;; 1494cbeba4aeSmrg arm*-rebel) 1495cbeba4aeSmrg os=-linux 1496cbeba4aeSmrg ;; 1497cbeba4aeSmrg arm*-semi) 1498cbeba4aeSmrg os=-aout 1499cbeba4aeSmrg ;; 15007bd0f98dSmrg c4x-* | tic4x-*) 15017bd0f98dSmrg os=-coff 1502cbeba4aeSmrg ;; 15031a669bc9Smrg tic54x-*) 15041a669bc9Smrg os=-coff 15051a669bc9Smrg ;; 15061a669bc9Smrg tic55x-*) 15071a669bc9Smrg os=-coff 15081a669bc9Smrg ;; 15091a669bc9Smrg tic6x-*) 15101a669bc9Smrg os=-coff 15111a669bc9Smrg ;; 1512cbeba4aeSmrg # This must come before the *-dec entry. 1513cbeba4aeSmrg pdp10-*) 1514cbeba4aeSmrg os=-tops20 1515cbeba4aeSmrg ;; 1516cbeba4aeSmrg pdp11-*) 1517cbeba4aeSmrg os=-none 1518cbeba4aeSmrg ;; 1519cbeba4aeSmrg *-dec | vax-*) 1520cbeba4aeSmrg os=-ultrix4.2 1521cbeba4aeSmrg ;; 1522cbeba4aeSmrg m68*-apollo) 1523cbeba4aeSmrg os=-domain 1524cbeba4aeSmrg ;; 1525cbeba4aeSmrg i386-sun) 1526cbeba4aeSmrg os=-sunos4.0.2 1527cbeba4aeSmrg ;; 1528cbeba4aeSmrg m68000-sun) 1529cbeba4aeSmrg os=-sunos3 1530cbeba4aeSmrg # This also exists in the configure program, but was not the 1531cbeba4aeSmrg # default. 1532cbeba4aeSmrg # os=-sunos4 1533cbeba4aeSmrg ;; 1534cbeba4aeSmrg m68*-cisco) 1535cbeba4aeSmrg os=-aout 1536cbeba4aeSmrg ;; 15377bd0f98dSmrg mep-*) 15387bd0f98dSmrg os=-elf 15397bd0f98dSmrg ;; 1540cbeba4aeSmrg mips*-cisco) 1541cbeba4aeSmrg os=-elf 1542cbeba4aeSmrg ;; 1543cbeba4aeSmrg mips*-*) 1544cbeba4aeSmrg os=-elf 1545cbeba4aeSmrg ;; 1546cbeba4aeSmrg or32-*) 1547cbeba4aeSmrg os=-coff 1548cbeba4aeSmrg ;; 1549cbeba4aeSmrg *-tti) # must be before sparc entry or we get the wrong os. 1550cbeba4aeSmrg os=-sysv3 1551cbeba4aeSmrg ;; 1552cbeba4aeSmrg sparc-* | *-sun) 1553cbeba4aeSmrg os=-sunos4.1.1 1554cbeba4aeSmrg ;; 1555cbeba4aeSmrg *-be) 1556cbeba4aeSmrg os=-beos 1557cbeba4aeSmrg ;; 15587bd0f98dSmrg *-haiku) 15597bd0f98dSmrg os=-haiku 15607bd0f98dSmrg ;; 1561cbeba4aeSmrg *-ibm) 1562cbeba4aeSmrg os=-aix 1563cbeba4aeSmrg ;; 15647bd0f98dSmrg *-knuth) 15657bd0f98dSmrg os=-mmixware 15667bd0f98dSmrg ;; 1567cbeba4aeSmrg *-wec) 1568cbeba4aeSmrg os=-proelf 1569cbeba4aeSmrg ;; 1570cbeba4aeSmrg *-winbond) 1571cbeba4aeSmrg os=-proelf 1572cbeba4aeSmrg ;; 1573cbeba4aeSmrg *-oki) 1574cbeba4aeSmrg os=-proelf 1575cbeba4aeSmrg ;; 1576cbeba4aeSmrg *-hp) 1577cbeba4aeSmrg os=-hpux 1578cbeba4aeSmrg ;; 1579cbeba4aeSmrg *-hitachi) 1580cbeba4aeSmrg os=-hiux 1581cbeba4aeSmrg ;; 1582cbeba4aeSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1583cbeba4aeSmrg os=-sysv 1584cbeba4aeSmrg ;; 1585cbeba4aeSmrg *-cbm) 1586cbeba4aeSmrg os=-amigaos 1587cbeba4aeSmrg ;; 1588cbeba4aeSmrg *-dg) 1589cbeba4aeSmrg os=-dgux 1590cbeba4aeSmrg ;; 1591cbeba4aeSmrg *-dolphin) 1592cbeba4aeSmrg os=-sysv3 1593cbeba4aeSmrg ;; 1594cbeba4aeSmrg m68k-ccur) 1595cbeba4aeSmrg os=-rtu 1596cbeba4aeSmrg ;; 1597cbeba4aeSmrg m88k-omron*) 1598cbeba4aeSmrg os=-luna 1599cbeba4aeSmrg ;; 1600cbeba4aeSmrg *-next ) 1601cbeba4aeSmrg os=-nextstep 1602cbeba4aeSmrg ;; 1603cbeba4aeSmrg *-sequent) 1604cbeba4aeSmrg os=-ptx 1605cbeba4aeSmrg ;; 1606cbeba4aeSmrg *-crds) 1607cbeba4aeSmrg os=-unos 1608cbeba4aeSmrg ;; 1609cbeba4aeSmrg *-ns) 1610cbeba4aeSmrg os=-genix 1611cbeba4aeSmrg ;; 1612cbeba4aeSmrg i370-*) 1613cbeba4aeSmrg os=-mvs 1614cbeba4aeSmrg ;; 1615cbeba4aeSmrg *-next) 1616cbeba4aeSmrg os=-nextstep3 1617cbeba4aeSmrg ;; 1618cbeba4aeSmrg *-gould) 1619cbeba4aeSmrg os=-sysv 1620cbeba4aeSmrg ;; 1621cbeba4aeSmrg *-highlevel) 1622cbeba4aeSmrg os=-bsd 1623cbeba4aeSmrg ;; 1624cbeba4aeSmrg *-encore) 1625cbeba4aeSmrg os=-bsd 1626cbeba4aeSmrg ;; 1627cbeba4aeSmrg *-sgi) 1628cbeba4aeSmrg os=-irix 1629cbeba4aeSmrg ;; 1630cbeba4aeSmrg *-siemens) 1631cbeba4aeSmrg os=-sysv4 1632cbeba4aeSmrg ;; 1633cbeba4aeSmrg *-masscomp) 1634cbeba4aeSmrg os=-rtu 1635cbeba4aeSmrg ;; 1636cbeba4aeSmrg f30[01]-fujitsu | f700-fujitsu) 1637cbeba4aeSmrg os=-uxpv 1638cbeba4aeSmrg ;; 1639cbeba4aeSmrg *-rom68k) 1640cbeba4aeSmrg os=-coff 1641cbeba4aeSmrg ;; 1642cbeba4aeSmrg *-*bug) 1643cbeba4aeSmrg os=-coff 1644cbeba4aeSmrg ;; 1645cbeba4aeSmrg *-apple) 1646cbeba4aeSmrg os=-macos 1647cbeba4aeSmrg ;; 1648cbeba4aeSmrg *-atari*) 1649cbeba4aeSmrg os=-mint 1650cbeba4aeSmrg ;; 1651cbeba4aeSmrg *) 1652cbeba4aeSmrg os=-none 1653cbeba4aeSmrg ;; 1654cbeba4aeSmrgesac 1655cbeba4aeSmrgfi 1656cbeba4aeSmrg 1657cbeba4aeSmrg# Here we handle the case where we know the os, and the CPU type, but not the 1658cbeba4aeSmrg# manufacturer. We pick the logical manufacturer. 1659cbeba4aeSmrgvendor=unknown 1660cbeba4aeSmrgcase $basic_machine in 1661cbeba4aeSmrg *-unknown) 1662cbeba4aeSmrg case $os in 1663cbeba4aeSmrg -riscix*) 1664cbeba4aeSmrg vendor=acorn 1665cbeba4aeSmrg ;; 1666cbeba4aeSmrg -sunos*) 1667cbeba4aeSmrg vendor=sun 1668cbeba4aeSmrg ;; 16697bd0f98dSmrg -cnk*|-aix*) 1670cbeba4aeSmrg vendor=ibm 1671cbeba4aeSmrg ;; 1672cbeba4aeSmrg -beos*) 1673cbeba4aeSmrg vendor=be 1674cbeba4aeSmrg ;; 1675cbeba4aeSmrg -hpux*) 1676cbeba4aeSmrg vendor=hp 1677cbeba4aeSmrg ;; 1678cbeba4aeSmrg -mpeix*) 1679cbeba4aeSmrg vendor=hp 1680cbeba4aeSmrg ;; 1681cbeba4aeSmrg -hiux*) 1682cbeba4aeSmrg vendor=hitachi 1683cbeba4aeSmrg ;; 1684cbeba4aeSmrg -unos*) 1685cbeba4aeSmrg vendor=crds 1686cbeba4aeSmrg ;; 1687cbeba4aeSmrg -dgux*) 1688cbeba4aeSmrg vendor=dg 1689cbeba4aeSmrg ;; 1690cbeba4aeSmrg -luna*) 1691cbeba4aeSmrg vendor=omron 1692cbeba4aeSmrg ;; 1693cbeba4aeSmrg -genix*) 1694cbeba4aeSmrg vendor=ns 1695cbeba4aeSmrg ;; 1696cbeba4aeSmrg -mvs* | -opened*) 1697cbeba4aeSmrg vendor=ibm 1698cbeba4aeSmrg ;; 16997bd0f98dSmrg -os400*) 17007bd0f98dSmrg vendor=ibm 17017bd0f98dSmrg ;; 1702cbeba4aeSmrg -ptx*) 1703cbeba4aeSmrg vendor=sequent 1704cbeba4aeSmrg ;; 17057bd0f98dSmrg -tpf*) 17067bd0f98dSmrg vendor=ibm 17077bd0f98dSmrg ;; 1708cbeba4aeSmrg -vxsim* | -vxworks* | -windiss*) 1709cbeba4aeSmrg vendor=wrs 1710cbeba4aeSmrg ;; 1711cbeba4aeSmrg -aux*) 1712cbeba4aeSmrg vendor=apple 1713cbeba4aeSmrg ;; 1714cbeba4aeSmrg -hms*) 1715cbeba4aeSmrg vendor=hitachi 1716cbeba4aeSmrg ;; 1717cbeba4aeSmrg -mpw* | -macos*) 1718cbeba4aeSmrg vendor=apple 1719cbeba4aeSmrg ;; 1720cbeba4aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1721cbeba4aeSmrg vendor=atari 1722cbeba4aeSmrg ;; 1723cbeba4aeSmrg -vos*) 1724cbeba4aeSmrg vendor=stratus 1725cbeba4aeSmrg ;; 1726cbeba4aeSmrg esac 1727cbeba4aeSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1728cbeba4aeSmrg ;; 1729cbeba4aeSmrgesac 1730cbeba4aeSmrg 1731cbeba4aeSmrgecho $basic_machine$os 17327bd0f98dSmrgexit 1733cbeba4aeSmrg 1734cbeba4aeSmrg# Local variables: 1735cbeba4aeSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1736cbeba4aeSmrg# time-stamp-start: "timestamp='" 1737cbeba4aeSmrg# time-stamp-format: "%:y-%02m-%02d" 1738cbeba4aeSmrg# time-stamp-end: "'" 1739cbeba4aeSmrg# End: 1740