config.sub revision 7bd0f98d
1cbeba4aeSmrg#! /bin/sh 2cbeba4aeSmrg# Configuration validation subroutine script. 3cbeba4aeSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 47bd0f98dSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 57bd0f98dSmrg# Free Software Foundation, Inc. 6cbeba4aeSmrg 77bd0f98dSmrgtimestamp='2009-11-20' 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 787bd0f98dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 797bd0f98dSmrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 80cbeba4aeSmrg 81cbeba4aeSmrgThis is free software; see the source for copying conditions. There is NO 82cbeba4aeSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 83cbeba4aeSmrg 84cbeba4aeSmrghelp=" 85cbeba4aeSmrgTry \`$me --help' for more information." 86cbeba4aeSmrg 87cbeba4aeSmrg# Parse command line 88cbeba4aeSmrgwhile test $# -gt 0 ; do 89cbeba4aeSmrg case $1 in 90cbeba4aeSmrg --time-stamp | --time* | -t ) 917bd0f98dSmrg echo "$timestamp" ; exit ;; 92cbeba4aeSmrg --version | -v ) 937bd0f98dSmrg echo "$version" ; exit ;; 94cbeba4aeSmrg --help | --h* | -h ) 957bd0f98dSmrg echo "$usage"; exit ;; 96cbeba4aeSmrg -- ) # Stop option processing 97cbeba4aeSmrg shift; break ;; 98cbeba4aeSmrg - ) # Use stdin as input. 99cbeba4aeSmrg break ;; 100cbeba4aeSmrg -* ) 101cbeba4aeSmrg echo "$me: invalid option $1$help" 102cbeba4aeSmrg exit 1 ;; 103cbeba4aeSmrg 104cbeba4aeSmrg *local*) 105cbeba4aeSmrg # First pass through any local machine types. 106cbeba4aeSmrg echo $1 1077bd0f98dSmrg exit ;; 108cbeba4aeSmrg 109cbeba4aeSmrg * ) 110cbeba4aeSmrg break ;; 111cbeba4aeSmrg esac 112cbeba4aeSmrgdone 113cbeba4aeSmrg 114cbeba4aeSmrgcase $# in 115cbeba4aeSmrg 0) echo "$me: missing argument$help" >&2 116cbeba4aeSmrg exit 1;; 117cbeba4aeSmrg 1) ;; 118cbeba4aeSmrg *) echo "$me: too many arguments$help" >&2 119cbeba4aeSmrg exit 1;; 120cbeba4aeSmrgesac 121cbeba4aeSmrg 122cbeba4aeSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 123cbeba4aeSmrg# Here we must recognize all the valid KERNEL-OS combinations. 124cbeba4aeSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 125cbeba4aeSmrgcase $maybe_os in 1267bd0f98dSmrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 1277bd0f98dSmrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 1287bd0f98dSmrg kopensolaris*-gnu* | \ 1297bd0f98dSmrg storm-chaos* | os2-emx* | rtmk-nova*) 130cbeba4aeSmrg os=-$maybe_os 131cbeba4aeSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 132cbeba4aeSmrg ;; 133cbeba4aeSmrg *) 134cbeba4aeSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 135cbeba4aeSmrg if [ $basic_machine != $1 ] 136cbeba4aeSmrg then os=`echo $1 | sed 's/.*-/-/'` 137cbeba4aeSmrg else os=; fi 138cbeba4aeSmrg ;; 139cbeba4aeSmrgesac 140cbeba4aeSmrg 141cbeba4aeSmrg### Let's recognize common machines as not being operating systems so 142cbeba4aeSmrg### that things like config.sub decstation-3100 work. We also 143cbeba4aeSmrg### recognize some manufacturers as not being operating systems, so we 144cbeba4aeSmrg### can provide default operating systems below. 145cbeba4aeSmrgcase $os in 146cbeba4aeSmrg -sun*os*) 147cbeba4aeSmrg # Prevent following clause from handling this invalid input. 148cbeba4aeSmrg ;; 149cbeba4aeSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 150cbeba4aeSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 151cbeba4aeSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 152cbeba4aeSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 153cbeba4aeSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 154cbeba4aeSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1557bd0f98dSmrg -apple | -axis | -knuth | -cray | -microblaze) 156cbeba4aeSmrg os= 157cbeba4aeSmrg basic_machine=$1 158cbeba4aeSmrg ;; 1597bd0f98dSmrg -bluegene*) 1607bd0f98dSmrg os=-cnk 1617bd0f98dSmrg ;; 162cbeba4aeSmrg -sim | -cisco | -oki | -wec | -winbond) 163cbeba4aeSmrg os= 164cbeba4aeSmrg basic_machine=$1 165cbeba4aeSmrg ;; 166cbeba4aeSmrg -scout) 167cbeba4aeSmrg ;; 168cbeba4aeSmrg -wrs) 169cbeba4aeSmrg os=-vxworks 170cbeba4aeSmrg basic_machine=$1 171cbeba4aeSmrg ;; 172cbeba4aeSmrg -chorusos*) 173cbeba4aeSmrg os=-chorusos 174cbeba4aeSmrg basic_machine=$1 175cbeba4aeSmrg ;; 176cbeba4aeSmrg -chorusrdb) 177cbeba4aeSmrg os=-chorusrdb 178cbeba4aeSmrg basic_machine=$1 179cbeba4aeSmrg ;; 180cbeba4aeSmrg -hiux*) 181cbeba4aeSmrg os=-hiuxwe2 182cbeba4aeSmrg ;; 1837bd0f98dSmrg -sco6) 1847bd0f98dSmrg os=-sco5v6 1857bd0f98dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1867bd0f98dSmrg ;; 187cbeba4aeSmrg -sco5) 188cbeba4aeSmrg os=-sco3.2v5 189cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 190cbeba4aeSmrg ;; 191cbeba4aeSmrg -sco4) 192cbeba4aeSmrg os=-sco3.2v4 193cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 194cbeba4aeSmrg ;; 195cbeba4aeSmrg -sco3.2.[4-9]*) 196cbeba4aeSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 197cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 198cbeba4aeSmrg ;; 199cbeba4aeSmrg -sco3.2v[4-9]*) 200cbeba4aeSmrg # Don't forget version if it is 3.2v4 or newer. 201cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 202cbeba4aeSmrg ;; 2037bd0f98dSmrg -sco5v6*) 2047bd0f98dSmrg # Don't forget version if it is 3.2v4 or newer. 2057bd0f98dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2067bd0f98dSmrg ;; 207cbeba4aeSmrg -sco*) 208cbeba4aeSmrg os=-sco3.2v2 209cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 210cbeba4aeSmrg ;; 211cbeba4aeSmrg -udk*) 212cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 213cbeba4aeSmrg ;; 214cbeba4aeSmrg -isc) 215cbeba4aeSmrg os=-isc2.2 216cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 217cbeba4aeSmrg ;; 218cbeba4aeSmrg -clix*) 219cbeba4aeSmrg basic_machine=clipper-intergraph 220cbeba4aeSmrg ;; 221cbeba4aeSmrg -isc*) 222cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 223cbeba4aeSmrg ;; 224cbeba4aeSmrg -lynx*) 225cbeba4aeSmrg os=-lynxos 226cbeba4aeSmrg ;; 227cbeba4aeSmrg -ptx*) 228cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 229cbeba4aeSmrg ;; 230cbeba4aeSmrg -windowsnt*) 231cbeba4aeSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 232cbeba4aeSmrg ;; 233cbeba4aeSmrg -psos*) 234cbeba4aeSmrg os=-psos 235cbeba4aeSmrg ;; 236cbeba4aeSmrg -mint | -mint[0-9]*) 237cbeba4aeSmrg basic_machine=m68k-atari 238cbeba4aeSmrg os=-mint 239cbeba4aeSmrg ;; 240cbeba4aeSmrgesac 241cbeba4aeSmrg 242cbeba4aeSmrg# Decode aliases for certain CPU-COMPANY combinations. 243cbeba4aeSmrgcase $basic_machine in 244cbeba4aeSmrg # Recognize the basic CPU types without company name. 245cbeba4aeSmrg # Some are omitted here because they have special meanings below. 246cbeba4aeSmrg 1750a | 580 \ 247cbeba4aeSmrg | a29k \ 248cbeba4aeSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 249cbeba4aeSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2507bd0f98dSmrg | am33_2.0 \ 2517bd0f98dSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2527bd0f98dSmrg | bfin \ 253cbeba4aeSmrg | c4x | clipper \ 254cbeba4aeSmrg | d10v | d30v | dlx | dsp16xx \ 2557bd0f98dSmrg | fido | fr30 | frv \ 256cbeba4aeSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 257cbeba4aeSmrg | i370 | i860 | i960 | ia64 \ 2587bd0f98dSmrg | ip2k | iq2000 \ 2597bd0f98dSmrg | lm32 \ 2607bd0f98dSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2617bd0f98dSmrg | maxq | mb | microblaze | mcore | mep | metag \ 262cbeba4aeSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 263cbeba4aeSmrg | mips16 \ 264cbeba4aeSmrg | mips64 | mips64el \ 2657bd0f98dSmrg | mips64octeon | mips64octeonel \ 266cbeba4aeSmrg | mips64orion | mips64orionel \ 2677bd0f98dSmrg | mips64r5900 | mips64r5900el \ 2687bd0f98dSmrg | mips64vr | mips64vrel \ 269cbeba4aeSmrg | mips64vr4100 | mips64vr4100el \ 270cbeba4aeSmrg | mips64vr4300 | mips64vr4300el \ 271cbeba4aeSmrg | mips64vr5000 | mips64vr5000el \ 2727bd0f98dSmrg | mips64vr5900 | mips64vr5900el \ 273cbeba4aeSmrg | mipsisa32 | mipsisa32el \ 274cbeba4aeSmrg | mipsisa32r2 | mipsisa32r2el \ 275cbeba4aeSmrg | mipsisa64 | mipsisa64el \ 2767bd0f98dSmrg | mipsisa64r2 | mipsisa64r2el \ 277cbeba4aeSmrg | mipsisa64sb1 | mipsisa64sb1el \ 278cbeba4aeSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 279cbeba4aeSmrg | mipstx39 | mipstx39el \ 280cbeba4aeSmrg | mn10200 | mn10300 \ 2817bd0f98dSmrg | moxie \ 2827bd0f98dSmrg | mt \ 283cbeba4aeSmrg | msp430 \ 2847bd0f98dSmrg | nios | nios2 \ 285cbeba4aeSmrg | ns16k | ns32k \ 2867bd0f98dSmrg | or32 \ 287cbeba4aeSmrg | pdp10 | pdp11 | pj | pjl \ 288cbeba4aeSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 289cbeba4aeSmrg | pyramid \ 2907bd0f98dSmrg | rx \ 2917bd0f98dSmrg | score \ 2927bd0f98dSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 293cbeba4aeSmrg | sh64 | sh64le \ 2947bd0f98dSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2957bd0f98dSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2967bd0f98dSmrg | spu | strongarm \ 297cbeba4aeSmrg | tahoe | thumb | tic4x | tic80 | tron \ 2987bd0f98dSmrg | ubicom32 \ 299cbeba4aeSmrg | v850 | v850e \ 300cbeba4aeSmrg | we32k \ 3017bd0f98dSmrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 3027bd0f98dSmrg | z8k | z80) 303cbeba4aeSmrg basic_machine=$basic_machine-unknown 304cbeba4aeSmrg ;; 3057bd0f98dSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 306cbeba4aeSmrg # Motorola 68HC11/12. 307cbeba4aeSmrg basic_machine=$basic_machine-unknown 308cbeba4aeSmrg os=-none 309cbeba4aeSmrg ;; 310cbeba4aeSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 311cbeba4aeSmrg ;; 3127bd0f98dSmrg ms1) 3137bd0f98dSmrg basic_machine=mt-unknown 3147bd0f98dSmrg ;; 315cbeba4aeSmrg 316cbeba4aeSmrg # We use `pc' rather than `unknown' 317cbeba4aeSmrg # because (1) that's what they normally are, and 318cbeba4aeSmrg # (2) the word "unknown" tends to confuse beginning users. 319cbeba4aeSmrg i*86 | x86_64) 320cbeba4aeSmrg basic_machine=$basic_machine-pc 321cbeba4aeSmrg ;; 322cbeba4aeSmrg # Object if more than one company name word. 323cbeba4aeSmrg *-*-*) 324cbeba4aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 325cbeba4aeSmrg exit 1 326cbeba4aeSmrg ;; 327cbeba4aeSmrg # Recognize the basic CPU types with company name. 328cbeba4aeSmrg 580-* \ 329cbeba4aeSmrg | a29k-* \ 330cbeba4aeSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 331cbeba4aeSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 332cbeba4aeSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 333cbeba4aeSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3347bd0f98dSmrg | avr-* | avr32-* \ 3357bd0f98dSmrg | bfin-* | bs2000-* \ 336cbeba4aeSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 3377bd0f98dSmrg | clipper-* | craynv-* | cydra-* \ 338cbeba4aeSmrg | d10v-* | d30v-* | dlx-* \ 339cbeba4aeSmrg | elxsi-* \ 3407bd0f98dSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 341cbeba4aeSmrg | h8300-* | h8500-* \ 342cbeba4aeSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 343cbeba4aeSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3447bd0f98dSmrg | ip2k-* | iq2000-* \ 3457bd0f98dSmrg | lm32-* \ 3467bd0f98dSmrg | m32c-* | m32r-* | m32rle-* \ 347cbeba4aeSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3487bd0f98dSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 349cbeba4aeSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 350cbeba4aeSmrg | mips16-* \ 351cbeba4aeSmrg | mips64-* | mips64el-* \ 3527bd0f98dSmrg | mips64octeon-* | mips64octeonel-* \ 353cbeba4aeSmrg | mips64orion-* | mips64orionel-* \ 3547bd0f98dSmrg | mips64r5900-* | mips64r5900el-* \ 3557bd0f98dSmrg | mips64vr-* | mips64vrel-* \ 356cbeba4aeSmrg | mips64vr4100-* | mips64vr4100el-* \ 357cbeba4aeSmrg | mips64vr4300-* | mips64vr4300el-* \ 358cbeba4aeSmrg | mips64vr5000-* | mips64vr5000el-* \ 3597bd0f98dSmrg | mips64vr5900-* | mips64vr5900el-* \ 360cbeba4aeSmrg | mipsisa32-* | mipsisa32el-* \ 361cbeba4aeSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 362cbeba4aeSmrg | mipsisa64-* | mipsisa64el-* \ 3637bd0f98dSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 364cbeba4aeSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 365cbeba4aeSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 366cbeba4aeSmrg | mipstx39-* | mipstx39el-* \ 3677bd0f98dSmrg | mmix-* \ 3687bd0f98dSmrg | mt-* \ 369cbeba4aeSmrg | msp430-* \ 3707bd0f98dSmrg | nios-* | nios2-* \ 3717bd0f98dSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 372cbeba4aeSmrg | orion-* \ 373cbeba4aeSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 374cbeba4aeSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 375cbeba4aeSmrg | pyramid-* \ 3767bd0f98dSmrg | romp-* | rs6000-* | rx-* \ 3777bd0f98dSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 378cbeba4aeSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3797bd0f98dSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3807bd0f98dSmrg | sparclite-* \ 3817bd0f98dSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 382cbeba4aeSmrg | tahoe-* | thumb-* \ 3837bd0f98dSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ 384cbeba4aeSmrg | tron-* \ 3857bd0f98dSmrg | ubicom32-* \ 386cbeba4aeSmrg | v850-* | v850e-* | vax-* \ 387cbeba4aeSmrg | we32k-* \ 3887bd0f98dSmrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 3897bd0f98dSmrg | xstormy16-* | xtensa*-* \ 390cbeba4aeSmrg | ymp-* \ 3917bd0f98dSmrg | z8k-* | z80-*) 3927bd0f98dSmrg ;; 3937bd0f98dSmrg # Recognize the basic CPU types without company name, with glob match. 3947bd0f98dSmrg xtensa*) 3957bd0f98dSmrg basic_machine=$basic_machine-unknown 396cbeba4aeSmrg ;; 397cbeba4aeSmrg # Recognize the various machine names and aliases which stand 398cbeba4aeSmrg # for a CPU type and a company and sometimes even an OS. 399cbeba4aeSmrg 386bsd) 400cbeba4aeSmrg basic_machine=i386-unknown 401cbeba4aeSmrg os=-bsd 402cbeba4aeSmrg ;; 403cbeba4aeSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 404cbeba4aeSmrg basic_machine=m68000-att 405cbeba4aeSmrg ;; 406cbeba4aeSmrg 3b*) 407cbeba4aeSmrg basic_machine=we32k-att 408cbeba4aeSmrg ;; 409cbeba4aeSmrg a29khif) 410cbeba4aeSmrg basic_machine=a29k-amd 411cbeba4aeSmrg os=-udi 412cbeba4aeSmrg ;; 4137bd0f98dSmrg abacus) 4147bd0f98dSmrg basic_machine=abacus-unknown 4157bd0f98dSmrg ;; 416cbeba4aeSmrg adobe68k) 417cbeba4aeSmrg basic_machine=m68010-adobe 418cbeba4aeSmrg os=-scout 419cbeba4aeSmrg ;; 420cbeba4aeSmrg alliant | fx80) 421cbeba4aeSmrg basic_machine=fx80-alliant 422cbeba4aeSmrg ;; 423cbeba4aeSmrg altos | altos3068) 424cbeba4aeSmrg basic_machine=m68k-altos 425cbeba4aeSmrg ;; 426cbeba4aeSmrg am29k) 427cbeba4aeSmrg basic_machine=a29k-none 428cbeba4aeSmrg os=-bsd 429cbeba4aeSmrg ;; 430cbeba4aeSmrg amd64) 431cbeba4aeSmrg basic_machine=x86_64-pc 432cbeba4aeSmrg ;; 4337bd0f98dSmrg amd64-*) 4347bd0f98dSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4357bd0f98dSmrg ;; 436cbeba4aeSmrg amdahl) 437cbeba4aeSmrg basic_machine=580-amdahl 438cbeba4aeSmrg os=-sysv 439cbeba4aeSmrg ;; 440cbeba4aeSmrg amiga | amiga-*) 441cbeba4aeSmrg basic_machine=m68k-unknown 442cbeba4aeSmrg ;; 443cbeba4aeSmrg amigaos | amigados) 444cbeba4aeSmrg basic_machine=m68k-unknown 445cbeba4aeSmrg os=-amigaos 446cbeba4aeSmrg ;; 447cbeba4aeSmrg amigaunix | amix) 448cbeba4aeSmrg basic_machine=m68k-unknown 449cbeba4aeSmrg os=-sysv4 450cbeba4aeSmrg ;; 451cbeba4aeSmrg apollo68) 452cbeba4aeSmrg basic_machine=m68k-apollo 453cbeba4aeSmrg os=-sysv 454cbeba4aeSmrg ;; 455cbeba4aeSmrg apollo68bsd) 456cbeba4aeSmrg basic_machine=m68k-apollo 457cbeba4aeSmrg os=-bsd 458cbeba4aeSmrg ;; 4597bd0f98dSmrg aros) 4607bd0f98dSmrg basic_machine=i386-pc 4617bd0f98dSmrg os=-aros 4627bd0f98dSmrg ;; 463cbeba4aeSmrg aux) 464cbeba4aeSmrg basic_machine=m68k-apple 465cbeba4aeSmrg os=-aux 466cbeba4aeSmrg ;; 467cbeba4aeSmrg balance) 468cbeba4aeSmrg basic_machine=ns32k-sequent 469cbeba4aeSmrg os=-dynix 470cbeba4aeSmrg ;; 4717bd0f98dSmrg blackfin) 4727bd0f98dSmrg basic_machine=bfin-unknown 4737bd0f98dSmrg os=-linux 4747bd0f98dSmrg ;; 4757bd0f98dSmrg blackfin-*) 4767bd0f98dSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4777bd0f98dSmrg os=-linux 4787bd0f98dSmrg ;; 4797bd0f98dSmrg bluegene*) 4807bd0f98dSmrg basic_machine=powerpc-ibm 4817bd0f98dSmrg os=-cnk 4827bd0f98dSmrg ;; 483cbeba4aeSmrg c90) 484cbeba4aeSmrg basic_machine=c90-cray 485cbeba4aeSmrg os=-unicos 486cbeba4aeSmrg ;; 4877bd0f98dSmrg cegcc) 4887bd0f98dSmrg basic_machine=arm-unknown 4897bd0f98dSmrg os=-cegcc 4907bd0f98dSmrg ;; 491cbeba4aeSmrg convex-c1) 492cbeba4aeSmrg basic_machine=c1-convex 493cbeba4aeSmrg os=-bsd 494cbeba4aeSmrg ;; 495cbeba4aeSmrg convex-c2) 496cbeba4aeSmrg basic_machine=c2-convex 497cbeba4aeSmrg os=-bsd 498cbeba4aeSmrg ;; 499cbeba4aeSmrg convex-c32) 500cbeba4aeSmrg basic_machine=c32-convex 501cbeba4aeSmrg os=-bsd 502cbeba4aeSmrg ;; 503cbeba4aeSmrg convex-c34) 504cbeba4aeSmrg basic_machine=c34-convex 505cbeba4aeSmrg os=-bsd 506cbeba4aeSmrg ;; 507cbeba4aeSmrg convex-c38) 508cbeba4aeSmrg basic_machine=c38-convex 509cbeba4aeSmrg os=-bsd 510cbeba4aeSmrg ;; 511cbeba4aeSmrg cray | j90) 512cbeba4aeSmrg basic_machine=j90-cray 513cbeba4aeSmrg os=-unicos 514cbeba4aeSmrg ;; 5157bd0f98dSmrg craynv) 5167bd0f98dSmrg basic_machine=craynv-cray 5177bd0f98dSmrg os=-unicosmp 5187bd0f98dSmrg ;; 5197bd0f98dSmrg cr16) 5207bd0f98dSmrg basic_machine=cr16-unknown 5217bd0f98dSmrg os=-elf 5227bd0f98dSmrg ;; 523cbeba4aeSmrg crds | unos) 524cbeba4aeSmrg basic_machine=m68k-crds 525cbeba4aeSmrg ;; 5267bd0f98dSmrg crisv32 | crisv32-* | etraxfs*) 5277bd0f98dSmrg basic_machine=crisv32-axis 5287bd0f98dSmrg ;; 529cbeba4aeSmrg cris | cris-* | etrax*) 530cbeba4aeSmrg basic_machine=cris-axis 531cbeba4aeSmrg ;; 5327bd0f98dSmrg crx) 5337bd0f98dSmrg basic_machine=crx-unknown 5347bd0f98dSmrg os=-elf 5357bd0f98dSmrg ;; 536cbeba4aeSmrg da30 | da30-*) 537cbeba4aeSmrg basic_machine=m68k-da30 538cbeba4aeSmrg ;; 539cbeba4aeSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 540cbeba4aeSmrg basic_machine=mips-dec 541cbeba4aeSmrg ;; 542cbeba4aeSmrg decsystem10* | dec10*) 543cbeba4aeSmrg basic_machine=pdp10-dec 544cbeba4aeSmrg os=-tops10 545cbeba4aeSmrg ;; 546cbeba4aeSmrg decsystem20* | dec20*) 547cbeba4aeSmrg basic_machine=pdp10-dec 548cbeba4aeSmrg os=-tops20 549cbeba4aeSmrg ;; 550cbeba4aeSmrg delta | 3300 | motorola-3300 | motorola-delta \ 551cbeba4aeSmrg | 3300-motorola | delta-motorola) 552cbeba4aeSmrg basic_machine=m68k-motorola 553cbeba4aeSmrg ;; 554cbeba4aeSmrg delta88) 555cbeba4aeSmrg basic_machine=m88k-motorola 556cbeba4aeSmrg os=-sysv3 557cbeba4aeSmrg ;; 5587bd0f98dSmrg dicos) 5597bd0f98dSmrg basic_machine=i686-pc 5607bd0f98dSmrg os=-dicos 5617bd0f98dSmrg ;; 5627bd0f98dSmrg djgpp) 5637bd0f98dSmrg basic_machine=i586-pc 5647bd0f98dSmrg os=-msdosdjgpp 5657bd0f98dSmrg ;; 566cbeba4aeSmrg dpx20 | dpx20-*) 567cbeba4aeSmrg basic_machine=rs6000-bull 568cbeba4aeSmrg os=-bosx 569cbeba4aeSmrg ;; 570cbeba4aeSmrg dpx2* | dpx2*-bull) 571cbeba4aeSmrg basic_machine=m68k-bull 572cbeba4aeSmrg os=-sysv3 573cbeba4aeSmrg ;; 574cbeba4aeSmrg ebmon29k) 575cbeba4aeSmrg basic_machine=a29k-amd 576cbeba4aeSmrg os=-ebmon 577cbeba4aeSmrg ;; 578cbeba4aeSmrg elxsi) 579cbeba4aeSmrg basic_machine=elxsi-elxsi 580cbeba4aeSmrg os=-bsd 581cbeba4aeSmrg ;; 582cbeba4aeSmrg encore | umax | mmax) 583cbeba4aeSmrg basic_machine=ns32k-encore 584cbeba4aeSmrg ;; 585cbeba4aeSmrg es1800 | OSE68k | ose68k | ose | OSE) 586cbeba4aeSmrg basic_machine=m68k-ericsson 587cbeba4aeSmrg os=-ose 588cbeba4aeSmrg ;; 589cbeba4aeSmrg fx2800) 590cbeba4aeSmrg basic_machine=i860-alliant 591cbeba4aeSmrg ;; 592cbeba4aeSmrg genix) 593cbeba4aeSmrg basic_machine=ns32k-ns 594cbeba4aeSmrg ;; 595cbeba4aeSmrg gmicro) 596cbeba4aeSmrg basic_machine=tron-gmicro 597cbeba4aeSmrg os=-sysv 598cbeba4aeSmrg ;; 599cbeba4aeSmrg go32) 600cbeba4aeSmrg basic_machine=i386-pc 601cbeba4aeSmrg os=-go32 602cbeba4aeSmrg ;; 603cbeba4aeSmrg h3050r* | hiux*) 604cbeba4aeSmrg basic_machine=hppa1.1-hitachi 605cbeba4aeSmrg os=-hiuxwe2 606cbeba4aeSmrg ;; 607cbeba4aeSmrg h8300hms) 608cbeba4aeSmrg basic_machine=h8300-hitachi 609cbeba4aeSmrg os=-hms 610cbeba4aeSmrg ;; 611cbeba4aeSmrg h8300xray) 612cbeba4aeSmrg basic_machine=h8300-hitachi 613cbeba4aeSmrg os=-xray 614cbeba4aeSmrg ;; 615cbeba4aeSmrg h8500hms) 616cbeba4aeSmrg basic_machine=h8500-hitachi 617cbeba4aeSmrg os=-hms 618cbeba4aeSmrg ;; 619cbeba4aeSmrg harris) 620cbeba4aeSmrg basic_machine=m88k-harris 621cbeba4aeSmrg os=-sysv3 622cbeba4aeSmrg ;; 623cbeba4aeSmrg hp300-*) 624cbeba4aeSmrg basic_machine=m68k-hp 625cbeba4aeSmrg ;; 626cbeba4aeSmrg hp300bsd) 627cbeba4aeSmrg basic_machine=m68k-hp 628cbeba4aeSmrg os=-bsd 629cbeba4aeSmrg ;; 630cbeba4aeSmrg hp300hpux) 631cbeba4aeSmrg basic_machine=m68k-hp 632cbeba4aeSmrg os=-hpux 633cbeba4aeSmrg ;; 634cbeba4aeSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 635cbeba4aeSmrg basic_machine=hppa1.0-hp 636cbeba4aeSmrg ;; 637cbeba4aeSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 638cbeba4aeSmrg basic_machine=m68000-hp 639cbeba4aeSmrg ;; 640cbeba4aeSmrg hp9k3[2-9][0-9]) 641cbeba4aeSmrg basic_machine=m68k-hp 642cbeba4aeSmrg ;; 643cbeba4aeSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 644cbeba4aeSmrg basic_machine=hppa1.0-hp 645cbeba4aeSmrg ;; 646cbeba4aeSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 647cbeba4aeSmrg basic_machine=hppa1.1-hp 648cbeba4aeSmrg ;; 649cbeba4aeSmrg hp9k78[0-9] | hp78[0-9]) 650cbeba4aeSmrg # FIXME: really hppa2.0-hp 651cbeba4aeSmrg basic_machine=hppa1.1-hp 652cbeba4aeSmrg ;; 653cbeba4aeSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 654cbeba4aeSmrg # FIXME: really hppa2.0-hp 655cbeba4aeSmrg basic_machine=hppa1.1-hp 656cbeba4aeSmrg ;; 657cbeba4aeSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 658cbeba4aeSmrg basic_machine=hppa1.1-hp 659cbeba4aeSmrg ;; 660cbeba4aeSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 661cbeba4aeSmrg basic_machine=hppa1.0-hp 662cbeba4aeSmrg ;; 663cbeba4aeSmrg hppa-next) 664cbeba4aeSmrg os=-nextstep3 665cbeba4aeSmrg ;; 666cbeba4aeSmrg hppaosf) 667cbeba4aeSmrg basic_machine=hppa1.1-hp 668cbeba4aeSmrg os=-osf 669cbeba4aeSmrg ;; 670cbeba4aeSmrg hppro) 671cbeba4aeSmrg basic_machine=hppa1.1-hp 672cbeba4aeSmrg os=-proelf 673cbeba4aeSmrg ;; 674cbeba4aeSmrg i370-ibm* | ibm*) 675cbeba4aeSmrg basic_machine=i370-ibm 676cbeba4aeSmrg ;; 677cbeba4aeSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 678cbeba4aeSmrg i*86v32) 679cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 680cbeba4aeSmrg os=-sysv32 681cbeba4aeSmrg ;; 682cbeba4aeSmrg i*86v4*) 683cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 684cbeba4aeSmrg os=-sysv4 685cbeba4aeSmrg ;; 686cbeba4aeSmrg i*86v) 687cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 688cbeba4aeSmrg os=-sysv 689cbeba4aeSmrg ;; 690cbeba4aeSmrg i*86sol2) 691cbeba4aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 692cbeba4aeSmrg os=-solaris2 693cbeba4aeSmrg ;; 694cbeba4aeSmrg i386mach) 695cbeba4aeSmrg basic_machine=i386-mach 696cbeba4aeSmrg os=-mach 697cbeba4aeSmrg ;; 698cbeba4aeSmrg i386-vsta | vsta) 699cbeba4aeSmrg basic_machine=i386-unknown 700cbeba4aeSmrg os=-vsta 701cbeba4aeSmrg ;; 702cbeba4aeSmrg iris | iris4d) 703cbeba4aeSmrg basic_machine=mips-sgi 704cbeba4aeSmrg case $os in 705cbeba4aeSmrg -irix*) 706cbeba4aeSmrg ;; 707cbeba4aeSmrg *) 708cbeba4aeSmrg os=-irix4 709cbeba4aeSmrg ;; 710cbeba4aeSmrg esac 711cbeba4aeSmrg ;; 712cbeba4aeSmrg isi68 | isi) 713cbeba4aeSmrg basic_machine=m68k-isi 714cbeba4aeSmrg os=-sysv 715cbeba4aeSmrg ;; 7167bd0f98dSmrg m68knommu) 7177bd0f98dSmrg basic_machine=m68k-unknown 7187bd0f98dSmrg os=-linux 7197bd0f98dSmrg ;; 7207bd0f98dSmrg m68knommu-*) 7217bd0f98dSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7227bd0f98dSmrg os=-linux 7237bd0f98dSmrg ;; 724cbeba4aeSmrg m88k-omron*) 725cbeba4aeSmrg basic_machine=m88k-omron 726cbeba4aeSmrg ;; 727cbeba4aeSmrg magnum | m3230) 728cbeba4aeSmrg basic_machine=mips-mips 729cbeba4aeSmrg os=-sysv 730cbeba4aeSmrg ;; 731cbeba4aeSmrg merlin) 732cbeba4aeSmrg basic_machine=ns32k-utek 733cbeba4aeSmrg os=-sysv 734cbeba4aeSmrg ;; 7357bd0f98dSmrg microblaze) 7367bd0f98dSmrg basic_machine=microblaze-xilinx 7377bd0f98dSmrg ;; 738cbeba4aeSmrg mingw32) 739cbeba4aeSmrg basic_machine=i386-pc 740cbeba4aeSmrg os=-mingw32 741cbeba4aeSmrg ;; 7427bd0f98dSmrg mingw32ce) 7437bd0f98dSmrg basic_machine=arm-unknown 7447bd0f98dSmrg os=-mingw32ce 7457bd0f98dSmrg ;; 746cbeba4aeSmrg miniframe) 747cbeba4aeSmrg basic_machine=m68000-convergent 748cbeba4aeSmrg ;; 749cbeba4aeSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 750cbeba4aeSmrg basic_machine=m68k-atari 751cbeba4aeSmrg os=-mint 752cbeba4aeSmrg ;; 753cbeba4aeSmrg mips3*-*) 754cbeba4aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 755cbeba4aeSmrg ;; 756cbeba4aeSmrg mips3*) 757cbeba4aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 758cbeba4aeSmrg ;; 759cbeba4aeSmrg monitor) 760cbeba4aeSmrg basic_machine=m68k-rom68k 761cbeba4aeSmrg os=-coff 762cbeba4aeSmrg ;; 763cbeba4aeSmrg morphos) 764cbeba4aeSmrg basic_machine=powerpc-unknown 765cbeba4aeSmrg os=-morphos 766cbeba4aeSmrg ;; 767cbeba4aeSmrg msdos) 768cbeba4aeSmrg basic_machine=i386-pc 769cbeba4aeSmrg os=-msdos 770cbeba4aeSmrg ;; 7717bd0f98dSmrg ms1-*) 7727bd0f98dSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7737bd0f98dSmrg ;; 774cbeba4aeSmrg mvs) 775cbeba4aeSmrg basic_machine=i370-ibm 776cbeba4aeSmrg os=-mvs 777cbeba4aeSmrg ;; 778cbeba4aeSmrg ncr3000) 779cbeba4aeSmrg basic_machine=i486-ncr 780cbeba4aeSmrg os=-sysv4 781cbeba4aeSmrg ;; 782cbeba4aeSmrg netbsd386) 783cbeba4aeSmrg basic_machine=i386-unknown 784cbeba4aeSmrg os=-netbsd 785cbeba4aeSmrg ;; 786cbeba4aeSmrg netwinder) 787cbeba4aeSmrg basic_machine=armv4l-rebel 788cbeba4aeSmrg os=-linux 789cbeba4aeSmrg ;; 790cbeba4aeSmrg news | news700 | news800 | news900) 791cbeba4aeSmrg basic_machine=m68k-sony 792cbeba4aeSmrg os=-newsos 793cbeba4aeSmrg ;; 794cbeba4aeSmrg news1000) 795cbeba4aeSmrg basic_machine=m68030-sony 796cbeba4aeSmrg os=-newsos 797cbeba4aeSmrg ;; 798cbeba4aeSmrg news-3600 | risc-news) 799cbeba4aeSmrg basic_machine=mips-sony 800cbeba4aeSmrg os=-newsos 801cbeba4aeSmrg ;; 802cbeba4aeSmrg necv70) 803cbeba4aeSmrg basic_machine=v70-nec 804cbeba4aeSmrg os=-sysv 805cbeba4aeSmrg ;; 806cbeba4aeSmrg next | m*-next ) 807cbeba4aeSmrg basic_machine=m68k-next 808cbeba4aeSmrg case $os in 809cbeba4aeSmrg -nextstep* ) 810cbeba4aeSmrg ;; 811cbeba4aeSmrg -ns2*) 812cbeba4aeSmrg os=-nextstep2 813cbeba4aeSmrg ;; 814cbeba4aeSmrg *) 815cbeba4aeSmrg os=-nextstep3 816cbeba4aeSmrg ;; 817cbeba4aeSmrg esac 818cbeba4aeSmrg ;; 819cbeba4aeSmrg nh3000) 820cbeba4aeSmrg basic_machine=m68k-harris 821cbeba4aeSmrg os=-cxux 822cbeba4aeSmrg ;; 823cbeba4aeSmrg nh[45]000) 824cbeba4aeSmrg basic_machine=m88k-harris 825cbeba4aeSmrg os=-cxux 826cbeba4aeSmrg ;; 827cbeba4aeSmrg nindy960) 828cbeba4aeSmrg basic_machine=i960-intel 829cbeba4aeSmrg os=-nindy 830cbeba4aeSmrg ;; 831cbeba4aeSmrg mon960) 832cbeba4aeSmrg basic_machine=i960-intel 833cbeba4aeSmrg os=-mon960 834cbeba4aeSmrg ;; 835cbeba4aeSmrg nonstopux) 836cbeba4aeSmrg basic_machine=mips-compaq 837cbeba4aeSmrg os=-nonstopux 838cbeba4aeSmrg ;; 839cbeba4aeSmrg np1) 840cbeba4aeSmrg basic_machine=np1-gould 841cbeba4aeSmrg ;; 842cbeba4aeSmrg nsr-tandem) 843cbeba4aeSmrg basic_machine=nsr-tandem 844cbeba4aeSmrg ;; 845cbeba4aeSmrg op50n-* | op60c-*) 846cbeba4aeSmrg basic_machine=hppa1.1-oki 847cbeba4aeSmrg os=-proelf 848cbeba4aeSmrg ;; 8497bd0f98dSmrg openrisc | openrisc-*) 850cbeba4aeSmrg basic_machine=or32-unknown 8517bd0f98dSmrg ;; 8527bd0f98dSmrg os400) 8537bd0f98dSmrg basic_machine=powerpc-ibm 8547bd0f98dSmrg os=-os400 855cbeba4aeSmrg ;; 856cbeba4aeSmrg OSE68000 | ose68000) 857cbeba4aeSmrg basic_machine=m68000-ericsson 858cbeba4aeSmrg os=-ose 859cbeba4aeSmrg ;; 860cbeba4aeSmrg os68k) 861cbeba4aeSmrg basic_machine=m68k-none 862cbeba4aeSmrg os=-os68k 863cbeba4aeSmrg ;; 864cbeba4aeSmrg pa-hitachi) 865cbeba4aeSmrg basic_machine=hppa1.1-hitachi 866cbeba4aeSmrg os=-hiuxwe2 867cbeba4aeSmrg ;; 868cbeba4aeSmrg paragon) 869cbeba4aeSmrg basic_machine=i860-intel 870cbeba4aeSmrg os=-osf 871cbeba4aeSmrg ;; 8727bd0f98dSmrg parisc) 8737bd0f98dSmrg basic_machine=hppa-unknown 8747bd0f98dSmrg os=-linux 8757bd0f98dSmrg ;; 8767bd0f98dSmrg parisc-*) 8777bd0f98dSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 8787bd0f98dSmrg os=-linux 8797bd0f98dSmrg ;; 880cbeba4aeSmrg pbd) 881cbeba4aeSmrg basic_machine=sparc-tti 882cbeba4aeSmrg ;; 883cbeba4aeSmrg pbb) 884cbeba4aeSmrg basic_machine=m68k-tti 885cbeba4aeSmrg ;; 886cbeba4aeSmrg pc532 | pc532-*) 887cbeba4aeSmrg basic_machine=ns32k-pc532 888cbeba4aeSmrg ;; 8897bd0f98dSmrg pc98) 8907bd0f98dSmrg basic_machine=i386-pc 8917bd0f98dSmrg ;; 8927bd0f98dSmrg pc98-*) 8937bd0f98dSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 8947bd0f98dSmrg ;; 895cbeba4aeSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 896cbeba4aeSmrg basic_machine=i586-pc 897cbeba4aeSmrg ;; 898cbeba4aeSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 899cbeba4aeSmrg basic_machine=i686-pc 900cbeba4aeSmrg ;; 901cbeba4aeSmrg pentiumii | pentium2 | pentiumiii | pentium3) 902cbeba4aeSmrg basic_machine=i686-pc 903cbeba4aeSmrg ;; 904cbeba4aeSmrg pentium4) 905cbeba4aeSmrg basic_machine=i786-pc 906cbeba4aeSmrg ;; 907cbeba4aeSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 908cbeba4aeSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 909cbeba4aeSmrg ;; 910cbeba4aeSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 911cbeba4aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 912cbeba4aeSmrg ;; 913cbeba4aeSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 914cbeba4aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 915cbeba4aeSmrg ;; 916cbeba4aeSmrg pentium4-*) 917cbeba4aeSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 918cbeba4aeSmrg ;; 919cbeba4aeSmrg pn) 920cbeba4aeSmrg basic_machine=pn-gould 921cbeba4aeSmrg ;; 922cbeba4aeSmrg power) basic_machine=power-ibm 923cbeba4aeSmrg ;; 924cbeba4aeSmrg ppc) basic_machine=powerpc-unknown 925cbeba4aeSmrg ;; 926cbeba4aeSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 927cbeba4aeSmrg ;; 928cbeba4aeSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 929cbeba4aeSmrg basic_machine=powerpcle-unknown 930cbeba4aeSmrg ;; 931cbeba4aeSmrg ppcle-* | powerpclittle-*) 932cbeba4aeSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 933cbeba4aeSmrg ;; 934cbeba4aeSmrg ppc64) basic_machine=powerpc64-unknown 935cbeba4aeSmrg ;; 936cbeba4aeSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 937cbeba4aeSmrg ;; 938cbeba4aeSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 939cbeba4aeSmrg basic_machine=powerpc64le-unknown 940cbeba4aeSmrg ;; 941cbeba4aeSmrg ppc64le-* | powerpc64little-*) 942cbeba4aeSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 943cbeba4aeSmrg ;; 944cbeba4aeSmrg ps2) 945cbeba4aeSmrg basic_machine=i386-ibm 946cbeba4aeSmrg ;; 947cbeba4aeSmrg pw32) 948cbeba4aeSmrg basic_machine=i586-unknown 949cbeba4aeSmrg os=-pw32 950cbeba4aeSmrg ;; 9517bd0f98dSmrg rdos) 9527bd0f98dSmrg basic_machine=i386-pc 9537bd0f98dSmrg os=-rdos 9547bd0f98dSmrg ;; 955cbeba4aeSmrg rom68k) 956cbeba4aeSmrg basic_machine=m68k-rom68k 957cbeba4aeSmrg os=-coff 958cbeba4aeSmrg ;; 959cbeba4aeSmrg rm[46]00) 960cbeba4aeSmrg basic_machine=mips-siemens 961cbeba4aeSmrg ;; 962cbeba4aeSmrg rtpc | rtpc-*) 963cbeba4aeSmrg basic_machine=romp-ibm 964cbeba4aeSmrg ;; 9657bd0f98dSmrg s390 | s390-*) 9667bd0f98dSmrg basic_machine=s390-ibm 9677bd0f98dSmrg ;; 9687bd0f98dSmrg s390x | s390x-*) 9697bd0f98dSmrg basic_machine=s390x-ibm 9707bd0f98dSmrg ;; 971cbeba4aeSmrg sa29200) 972cbeba4aeSmrg basic_machine=a29k-amd 973cbeba4aeSmrg os=-udi 974cbeba4aeSmrg ;; 975cbeba4aeSmrg sb1) 976cbeba4aeSmrg basic_machine=mipsisa64sb1-unknown 977cbeba4aeSmrg ;; 978cbeba4aeSmrg sb1el) 979cbeba4aeSmrg basic_machine=mipsisa64sb1el-unknown 980cbeba4aeSmrg ;; 9817bd0f98dSmrg sde) 9827bd0f98dSmrg basic_machine=mipsisa32-sde 9837bd0f98dSmrg os=-elf 9847bd0f98dSmrg ;; 985cbeba4aeSmrg sei) 986cbeba4aeSmrg basic_machine=mips-sei 987cbeba4aeSmrg os=-seiux 988cbeba4aeSmrg ;; 989cbeba4aeSmrg sequent) 990cbeba4aeSmrg basic_machine=i386-sequent 991cbeba4aeSmrg ;; 992cbeba4aeSmrg sh) 993cbeba4aeSmrg basic_machine=sh-hitachi 994cbeba4aeSmrg os=-hms 995cbeba4aeSmrg ;; 9967bd0f98dSmrg sh5el) 9977bd0f98dSmrg basic_machine=sh5le-unknown 9987bd0f98dSmrg ;; 999cbeba4aeSmrg sh64) 1000cbeba4aeSmrg basic_machine=sh64-unknown 1001cbeba4aeSmrg ;; 1002cbeba4aeSmrg sparclite-wrs | simso-wrs) 1003cbeba4aeSmrg basic_machine=sparclite-wrs 1004cbeba4aeSmrg os=-vxworks 1005cbeba4aeSmrg ;; 1006cbeba4aeSmrg sps7) 1007cbeba4aeSmrg basic_machine=m68k-bull 1008cbeba4aeSmrg os=-sysv2 1009cbeba4aeSmrg ;; 1010cbeba4aeSmrg spur) 1011cbeba4aeSmrg basic_machine=spur-unknown 1012cbeba4aeSmrg ;; 1013cbeba4aeSmrg st2000) 1014cbeba4aeSmrg basic_machine=m68k-tandem 1015cbeba4aeSmrg ;; 1016cbeba4aeSmrg stratus) 1017cbeba4aeSmrg basic_machine=i860-stratus 1018cbeba4aeSmrg os=-sysv4 1019cbeba4aeSmrg ;; 1020cbeba4aeSmrg sun2) 1021cbeba4aeSmrg basic_machine=m68000-sun 1022cbeba4aeSmrg ;; 1023cbeba4aeSmrg sun2os3) 1024cbeba4aeSmrg basic_machine=m68000-sun 1025cbeba4aeSmrg os=-sunos3 1026cbeba4aeSmrg ;; 1027cbeba4aeSmrg sun2os4) 1028cbeba4aeSmrg basic_machine=m68000-sun 1029cbeba4aeSmrg os=-sunos4 1030cbeba4aeSmrg ;; 1031cbeba4aeSmrg sun3os3) 1032cbeba4aeSmrg basic_machine=m68k-sun 1033cbeba4aeSmrg os=-sunos3 1034cbeba4aeSmrg ;; 1035cbeba4aeSmrg sun3os4) 1036cbeba4aeSmrg basic_machine=m68k-sun 1037cbeba4aeSmrg os=-sunos4 1038cbeba4aeSmrg ;; 1039cbeba4aeSmrg sun4os3) 1040cbeba4aeSmrg basic_machine=sparc-sun 1041cbeba4aeSmrg os=-sunos3 1042cbeba4aeSmrg ;; 1043cbeba4aeSmrg sun4os4) 1044cbeba4aeSmrg basic_machine=sparc-sun 1045cbeba4aeSmrg os=-sunos4 1046cbeba4aeSmrg ;; 1047cbeba4aeSmrg sun4sol2) 1048cbeba4aeSmrg basic_machine=sparc-sun 1049cbeba4aeSmrg os=-solaris2 1050cbeba4aeSmrg ;; 1051cbeba4aeSmrg sun3 | sun3-*) 1052cbeba4aeSmrg basic_machine=m68k-sun 1053cbeba4aeSmrg ;; 1054cbeba4aeSmrg sun4) 1055cbeba4aeSmrg basic_machine=sparc-sun 1056cbeba4aeSmrg ;; 1057cbeba4aeSmrg sun386 | sun386i | roadrunner) 1058cbeba4aeSmrg basic_machine=i386-sun 1059cbeba4aeSmrg ;; 1060cbeba4aeSmrg sv1) 1061cbeba4aeSmrg basic_machine=sv1-cray 1062cbeba4aeSmrg os=-unicos 1063cbeba4aeSmrg ;; 1064cbeba4aeSmrg symmetry) 1065cbeba4aeSmrg basic_machine=i386-sequent 1066cbeba4aeSmrg os=-dynix 1067cbeba4aeSmrg ;; 1068cbeba4aeSmrg t3e) 1069cbeba4aeSmrg basic_machine=alphaev5-cray 1070cbeba4aeSmrg os=-unicos 1071cbeba4aeSmrg ;; 1072cbeba4aeSmrg t90) 1073cbeba4aeSmrg basic_machine=t90-cray 1074cbeba4aeSmrg os=-unicos 1075cbeba4aeSmrg ;; 1076cbeba4aeSmrg tic54x | c54x*) 1077cbeba4aeSmrg basic_machine=tic54x-unknown 1078cbeba4aeSmrg os=-coff 1079cbeba4aeSmrg ;; 1080cbeba4aeSmrg tic55x | c55x*) 1081cbeba4aeSmrg basic_machine=tic55x-unknown 1082cbeba4aeSmrg os=-coff 1083cbeba4aeSmrg ;; 1084cbeba4aeSmrg tic6x | c6x*) 1085cbeba4aeSmrg basic_machine=tic6x-unknown 1086cbeba4aeSmrg os=-coff 1087cbeba4aeSmrg ;; 10887bd0f98dSmrg tile*) 10897bd0f98dSmrg basic_machine=tile-unknown 10907bd0f98dSmrg os=-linux-gnu 10917bd0f98dSmrg ;; 1092cbeba4aeSmrg tx39) 1093cbeba4aeSmrg basic_machine=mipstx39-unknown 1094cbeba4aeSmrg ;; 1095cbeba4aeSmrg tx39el) 1096cbeba4aeSmrg basic_machine=mipstx39el-unknown 1097cbeba4aeSmrg ;; 1098cbeba4aeSmrg toad1) 1099cbeba4aeSmrg basic_machine=pdp10-xkl 1100cbeba4aeSmrg os=-tops20 1101cbeba4aeSmrg ;; 1102cbeba4aeSmrg tower | tower-32) 1103cbeba4aeSmrg basic_machine=m68k-ncr 1104cbeba4aeSmrg ;; 11057bd0f98dSmrg tpf) 11067bd0f98dSmrg basic_machine=s390x-ibm 11077bd0f98dSmrg os=-tpf 11087bd0f98dSmrg ;; 1109cbeba4aeSmrg udi29k) 1110cbeba4aeSmrg basic_machine=a29k-amd 1111cbeba4aeSmrg os=-udi 1112cbeba4aeSmrg ;; 1113cbeba4aeSmrg ultra3) 1114cbeba4aeSmrg basic_machine=a29k-nyu 1115cbeba4aeSmrg os=-sym1 1116cbeba4aeSmrg ;; 1117cbeba4aeSmrg v810 | necv810) 1118cbeba4aeSmrg basic_machine=v810-nec 1119cbeba4aeSmrg os=-none 1120cbeba4aeSmrg ;; 1121cbeba4aeSmrg vaxv) 1122cbeba4aeSmrg basic_machine=vax-dec 1123cbeba4aeSmrg os=-sysv 1124cbeba4aeSmrg ;; 1125cbeba4aeSmrg vms) 1126cbeba4aeSmrg basic_machine=vax-dec 1127cbeba4aeSmrg os=-vms 1128cbeba4aeSmrg ;; 1129cbeba4aeSmrg vpp*|vx|vx-*) 1130cbeba4aeSmrg basic_machine=f301-fujitsu 1131cbeba4aeSmrg ;; 1132cbeba4aeSmrg vxworks960) 1133cbeba4aeSmrg basic_machine=i960-wrs 1134cbeba4aeSmrg os=-vxworks 1135cbeba4aeSmrg ;; 1136cbeba4aeSmrg vxworks68) 1137cbeba4aeSmrg basic_machine=m68k-wrs 1138cbeba4aeSmrg os=-vxworks 1139cbeba4aeSmrg ;; 1140cbeba4aeSmrg vxworks29k) 1141cbeba4aeSmrg basic_machine=a29k-wrs 1142cbeba4aeSmrg os=-vxworks 1143cbeba4aeSmrg ;; 1144cbeba4aeSmrg w65*) 1145cbeba4aeSmrg basic_machine=w65-wdc 1146cbeba4aeSmrg os=-none 1147cbeba4aeSmrg ;; 1148cbeba4aeSmrg w89k-*) 1149cbeba4aeSmrg basic_machine=hppa1.1-winbond 1150cbeba4aeSmrg os=-proelf 1151cbeba4aeSmrg ;; 11527bd0f98dSmrg xbox) 11537bd0f98dSmrg basic_machine=i686-pc 11547bd0f98dSmrg os=-mingw32 11557bd0f98dSmrg ;; 1156cbeba4aeSmrg xps | xps100) 1157cbeba4aeSmrg basic_machine=xps100-honeywell 1158cbeba4aeSmrg ;; 1159cbeba4aeSmrg ymp) 1160cbeba4aeSmrg basic_machine=ymp-cray 1161cbeba4aeSmrg os=-unicos 1162cbeba4aeSmrg ;; 1163cbeba4aeSmrg z8k-*-coff) 1164cbeba4aeSmrg basic_machine=z8k-unknown 1165cbeba4aeSmrg os=-sim 1166cbeba4aeSmrg ;; 11677bd0f98dSmrg z80-*-coff) 11687bd0f98dSmrg basic_machine=z80-unknown 11697bd0f98dSmrg os=-sim 11707bd0f98dSmrg ;; 1171cbeba4aeSmrg none) 1172cbeba4aeSmrg basic_machine=none-none 1173cbeba4aeSmrg os=-none 1174cbeba4aeSmrg ;; 1175cbeba4aeSmrg 1176cbeba4aeSmrg# Here we handle the default manufacturer of certain CPU types. It is in 1177cbeba4aeSmrg# some cases the only manufacturer, in others, it is the most popular. 1178cbeba4aeSmrg w89k) 1179cbeba4aeSmrg basic_machine=hppa1.1-winbond 1180cbeba4aeSmrg ;; 1181cbeba4aeSmrg op50n) 1182cbeba4aeSmrg basic_machine=hppa1.1-oki 1183cbeba4aeSmrg ;; 1184cbeba4aeSmrg op60c) 1185cbeba4aeSmrg basic_machine=hppa1.1-oki 1186cbeba4aeSmrg ;; 1187cbeba4aeSmrg romp) 1188cbeba4aeSmrg basic_machine=romp-ibm 1189cbeba4aeSmrg ;; 11907bd0f98dSmrg mmix) 11917bd0f98dSmrg basic_machine=mmix-knuth 11927bd0f98dSmrg ;; 1193cbeba4aeSmrg rs6000) 1194cbeba4aeSmrg basic_machine=rs6000-ibm 1195cbeba4aeSmrg ;; 1196cbeba4aeSmrg vax) 1197cbeba4aeSmrg basic_machine=vax-dec 1198cbeba4aeSmrg ;; 1199cbeba4aeSmrg pdp10) 1200cbeba4aeSmrg # there are many clones, so DEC is not a safe bet 1201cbeba4aeSmrg basic_machine=pdp10-unknown 1202cbeba4aeSmrg ;; 1203cbeba4aeSmrg pdp11) 1204cbeba4aeSmrg basic_machine=pdp11-dec 1205cbeba4aeSmrg ;; 1206cbeba4aeSmrg we32k) 1207cbeba4aeSmrg basic_machine=we32k-att 1208cbeba4aeSmrg ;; 12097bd0f98dSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1210cbeba4aeSmrg basic_machine=sh-unknown 1211cbeba4aeSmrg ;; 12127bd0f98dSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1213cbeba4aeSmrg basic_machine=sparc-sun 1214cbeba4aeSmrg ;; 1215cbeba4aeSmrg cydra) 1216cbeba4aeSmrg basic_machine=cydra-cydrome 1217cbeba4aeSmrg ;; 1218cbeba4aeSmrg orion) 1219cbeba4aeSmrg basic_machine=orion-highlevel 1220cbeba4aeSmrg ;; 1221cbeba4aeSmrg orion105) 1222cbeba4aeSmrg basic_machine=clipper-highlevel 1223cbeba4aeSmrg ;; 1224cbeba4aeSmrg mac | mpw | mac-mpw) 1225cbeba4aeSmrg basic_machine=m68k-apple 1226cbeba4aeSmrg ;; 1227cbeba4aeSmrg pmac | pmac-mpw) 1228cbeba4aeSmrg basic_machine=powerpc-apple 1229cbeba4aeSmrg ;; 1230cbeba4aeSmrg *-unknown) 1231cbeba4aeSmrg # Make sure to match an already-canonicalized machine name. 1232cbeba4aeSmrg ;; 1233cbeba4aeSmrg *) 1234cbeba4aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1235cbeba4aeSmrg exit 1 1236cbeba4aeSmrg ;; 1237cbeba4aeSmrgesac 1238cbeba4aeSmrg 1239cbeba4aeSmrg# Here we canonicalize certain aliases for manufacturers. 1240cbeba4aeSmrgcase $basic_machine in 1241cbeba4aeSmrg *-digital*) 1242cbeba4aeSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1243cbeba4aeSmrg ;; 1244cbeba4aeSmrg *-commodore*) 1245cbeba4aeSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1246cbeba4aeSmrg ;; 1247cbeba4aeSmrg *) 1248cbeba4aeSmrg ;; 1249cbeba4aeSmrgesac 1250cbeba4aeSmrg 1251cbeba4aeSmrg# Decode manufacturer-specific aliases for certain operating systems. 1252cbeba4aeSmrg 1253cbeba4aeSmrgif [ x"$os" != x"" ] 1254cbeba4aeSmrgthen 1255cbeba4aeSmrgcase $os in 1256cbeba4aeSmrg # First match some system type aliases 1257cbeba4aeSmrg # that might get confused with valid system types. 1258cbeba4aeSmrg # -solaris* is a basic system type, with this one exception. 12597bd0f98dSmrg -auroraux) 12607bd0f98dSmrg os=-auroraux 12617bd0f98dSmrg ;; 1262cbeba4aeSmrg -solaris1 | -solaris1.*) 1263cbeba4aeSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1264cbeba4aeSmrg ;; 1265cbeba4aeSmrg -solaris) 1266cbeba4aeSmrg os=-solaris2 1267cbeba4aeSmrg ;; 1268cbeba4aeSmrg -svr4*) 1269cbeba4aeSmrg os=-sysv4 1270cbeba4aeSmrg ;; 1271cbeba4aeSmrg -unixware*) 1272cbeba4aeSmrg os=-sysv4.2uw 1273cbeba4aeSmrg ;; 1274cbeba4aeSmrg -gnu/linux*) 1275cbeba4aeSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1276cbeba4aeSmrg ;; 1277cbeba4aeSmrg # First accept the basic system types. 1278cbeba4aeSmrg # The portable systems comes first. 1279cbeba4aeSmrg # Each alternative MUST END IN A *, to match a version number. 1280cbeba4aeSmrg # -sysv* is not here because it comes later, after sysvr4. 1281cbeba4aeSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 12827bd0f98dSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 12837bd0f98dSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 12847bd0f98dSmrg | -sym* | -kopensolaris* \ 1285cbeba4aeSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 12867bd0f98dSmrg | -aos* | -aros* \ 1287cbeba4aeSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1288cbeba4aeSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 12897bd0f98dSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 12907bd0f98dSmrg | -openbsd* | -solidbsd* \ 12917bd0f98dSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 12927bd0f98dSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1293cbeba4aeSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1294cbeba4aeSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 12957bd0f98dSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 1296cbeba4aeSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 12977bd0f98dSmrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 12987bd0f98dSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1299cbeba4aeSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1300cbeba4aeSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1301cbeba4aeSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1302cbeba4aeSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1303cbeba4aeSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13047bd0f98dSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13057bd0f98dSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1306cbeba4aeSmrg # Remember, each alternative MUST END IN *, to match a version number. 1307cbeba4aeSmrg ;; 1308cbeba4aeSmrg -qnx*) 1309cbeba4aeSmrg case $basic_machine in 1310cbeba4aeSmrg x86-* | i*86-*) 1311cbeba4aeSmrg ;; 1312cbeba4aeSmrg *) 1313cbeba4aeSmrg os=-nto$os 1314cbeba4aeSmrg ;; 1315cbeba4aeSmrg esac 1316cbeba4aeSmrg ;; 1317cbeba4aeSmrg -nto-qnx*) 1318cbeba4aeSmrg ;; 1319cbeba4aeSmrg -nto*) 1320cbeba4aeSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1321cbeba4aeSmrg ;; 1322cbeba4aeSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13237bd0f98dSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1324cbeba4aeSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1325cbeba4aeSmrg ;; 1326cbeba4aeSmrg -mac*) 1327cbeba4aeSmrg os=`echo $os | sed -e 's|mac|macos|'` 1328cbeba4aeSmrg ;; 13297bd0f98dSmrg -linux-dietlibc) 13307bd0f98dSmrg os=-linux-dietlibc 13317bd0f98dSmrg ;; 1332cbeba4aeSmrg -linux*) 1333cbeba4aeSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1334cbeba4aeSmrg ;; 1335cbeba4aeSmrg -sunos5*) 1336cbeba4aeSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1337cbeba4aeSmrg ;; 1338cbeba4aeSmrg -sunos6*) 1339cbeba4aeSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1340cbeba4aeSmrg ;; 1341cbeba4aeSmrg -opened*) 1342cbeba4aeSmrg os=-openedition 1343cbeba4aeSmrg ;; 13447bd0f98dSmrg -os400*) 13457bd0f98dSmrg os=-os400 13467bd0f98dSmrg ;; 1347cbeba4aeSmrg -wince*) 1348cbeba4aeSmrg os=-wince 1349cbeba4aeSmrg ;; 1350cbeba4aeSmrg -osfrose*) 1351cbeba4aeSmrg os=-osfrose 1352cbeba4aeSmrg ;; 1353cbeba4aeSmrg -osf*) 1354cbeba4aeSmrg os=-osf 1355cbeba4aeSmrg ;; 1356cbeba4aeSmrg -utek*) 1357cbeba4aeSmrg os=-bsd 1358cbeba4aeSmrg ;; 1359cbeba4aeSmrg -dynix*) 1360cbeba4aeSmrg os=-bsd 1361cbeba4aeSmrg ;; 1362cbeba4aeSmrg -acis*) 1363cbeba4aeSmrg os=-aos 1364cbeba4aeSmrg ;; 1365cbeba4aeSmrg -atheos*) 1366cbeba4aeSmrg os=-atheos 1367cbeba4aeSmrg ;; 13687bd0f98dSmrg -syllable*) 13697bd0f98dSmrg os=-syllable 13707bd0f98dSmrg ;; 1371cbeba4aeSmrg -386bsd) 1372cbeba4aeSmrg os=-bsd 1373cbeba4aeSmrg ;; 1374cbeba4aeSmrg -ctix* | -uts*) 1375cbeba4aeSmrg os=-sysv 1376cbeba4aeSmrg ;; 1377cbeba4aeSmrg -nova*) 1378cbeba4aeSmrg os=-rtmk-nova 1379cbeba4aeSmrg ;; 1380cbeba4aeSmrg -ns2 ) 1381cbeba4aeSmrg os=-nextstep2 1382cbeba4aeSmrg ;; 1383cbeba4aeSmrg -nsk*) 1384cbeba4aeSmrg os=-nsk 1385cbeba4aeSmrg ;; 1386cbeba4aeSmrg # Preserve the version number of sinix5. 1387cbeba4aeSmrg -sinix5.*) 1388cbeba4aeSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 1389cbeba4aeSmrg ;; 1390cbeba4aeSmrg -sinix*) 1391cbeba4aeSmrg os=-sysv4 1392cbeba4aeSmrg ;; 13937bd0f98dSmrg -tpf*) 13947bd0f98dSmrg os=-tpf 13957bd0f98dSmrg ;; 1396cbeba4aeSmrg -triton*) 1397cbeba4aeSmrg os=-sysv3 1398cbeba4aeSmrg ;; 1399cbeba4aeSmrg -oss*) 1400cbeba4aeSmrg os=-sysv3 1401cbeba4aeSmrg ;; 1402cbeba4aeSmrg -svr4) 1403cbeba4aeSmrg os=-sysv4 1404cbeba4aeSmrg ;; 1405cbeba4aeSmrg -svr3) 1406cbeba4aeSmrg os=-sysv3 1407cbeba4aeSmrg ;; 1408cbeba4aeSmrg -sysvr4) 1409cbeba4aeSmrg os=-sysv4 1410cbeba4aeSmrg ;; 1411cbeba4aeSmrg # This must come after -sysvr4. 1412cbeba4aeSmrg -sysv*) 1413cbeba4aeSmrg ;; 1414cbeba4aeSmrg -ose*) 1415cbeba4aeSmrg os=-ose 1416cbeba4aeSmrg ;; 1417cbeba4aeSmrg -es1800*) 1418cbeba4aeSmrg os=-ose 1419cbeba4aeSmrg ;; 1420cbeba4aeSmrg -xenix) 1421cbeba4aeSmrg os=-xenix 1422cbeba4aeSmrg ;; 1423cbeba4aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1424cbeba4aeSmrg os=-mint 1425cbeba4aeSmrg ;; 1426cbeba4aeSmrg -aros*) 1427cbeba4aeSmrg os=-aros 1428cbeba4aeSmrg ;; 1429cbeba4aeSmrg -kaos*) 1430cbeba4aeSmrg os=-kaos 1431cbeba4aeSmrg ;; 14327bd0f98dSmrg -zvmoe) 14337bd0f98dSmrg os=-zvmoe 14347bd0f98dSmrg ;; 14357bd0f98dSmrg -dicos*) 14367bd0f98dSmrg os=-dicos 14377bd0f98dSmrg ;; 1438cbeba4aeSmrg -none) 1439cbeba4aeSmrg ;; 1440cbeba4aeSmrg *) 1441cbeba4aeSmrg # Get rid of the `-' at the beginning of $os. 1442cbeba4aeSmrg os=`echo $os | sed 's/[^-]*-//'` 1443cbeba4aeSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1444cbeba4aeSmrg exit 1 1445cbeba4aeSmrg ;; 1446cbeba4aeSmrgesac 1447cbeba4aeSmrgelse 1448cbeba4aeSmrg 1449cbeba4aeSmrg# Here we handle the default operating systems that come with various machines. 1450cbeba4aeSmrg# The value should be what the vendor currently ships out the door with their 1451cbeba4aeSmrg# machine or put another way, the most popular os provided with the machine. 1452cbeba4aeSmrg 1453cbeba4aeSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1454cbeba4aeSmrg# "-sun"), then you have to tell the case statement up towards the top 1455cbeba4aeSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1456cbeba4aeSmrg# will signal an error saying that MANUFACTURER isn't an operating 1457cbeba4aeSmrg# system, and we'll never get to this point. 1458cbeba4aeSmrg 1459cbeba4aeSmrgcase $basic_machine in 14607bd0f98dSmrg score-*) 14617bd0f98dSmrg os=-elf 14627bd0f98dSmrg ;; 14637bd0f98dSmrg spu-*) 14647bd0f98dSmrg os=-elf 14657bd0f98dSmrg ;; 1466cbeba4aeSmrg *-acorn) 1467cbeba4aeSmrg os=-riscix1.2 1468cbeba4aeSmrg ;; 1469cbeba4aeSmrg arm*-rebel) 1470cbeba4aeSmrg os=-linux 1471cbeba4aeSmrg ;; 1472cbeba4aeSmrg arm*-semi) 1473cbeba4aeSmrg os=-aout 1474cbeba4aeSmrg ;; 14757bd0f98dSmrg c4x-* | tic4x-*) 14767bd0f98dSmrg os=-coff 1477cbeba4aeSmrg ;; 1478cbeba4aeSmrg # This must come before the *-dec entry. 1479cbeba4aeSmrg pdp10-*) 1480cbeba4aeSmrg os=-tops20 1481cbeba4aeSmrg ;; 1482cbeba4aeSmrg pdp11-*) 1483cbeba4aeSmrg os=-none 1484cbeba4aeSmrg ;; 1485cbeba4aeSmrg *-dec | vax-*) 1486cbeba4aeSmrg os=-ultrix4.2 1487cbeba4aeSmrg ;; 1488cbeba4aeSmrg m68*-apollo) 1489cbeba4aeSmrg os=-domain 1490cbeba4aeSmrg ;; 1491cbeba4aeSmrg i386-sun) 1492cbeba4aeSmrg os=-sunos4.0.2 1493cbeba4aeSmrg ;; 1494cbeba4aeSmrg m68000-sun) 1495cbeba4aeSmrg os=-sunos3 1496cbeba4aeSmrg # This also exists in the configure program, but was not the 1497cbeba4aeSmrg # default. 1498cbeba4aeSmrg # os=-sunos4 1499cbeba4aeSmrg ;; 1500cbeba4aeSmrg m68*-cisco) 1501cbeba4aeSmrg os=-aout 1502cbeba4aeSmrg ;; 15037bd0f98dSmrg mep-*) 15047bd0f98dSmrg os=-elf 15057bd0f98dSmrg ;; 1506cbeba4aeSmrg mips*-cisco) 1507cbeba4aeSmrg os=-elf 1508cbeba4aeSmrg ;; 1509cbeba4aeSmrg mips*-*) 1510cbeba4aeSmrg os=-elf 1511cbeba4aeSmrg ;; 1512cbeba4aeSmrg or32-*) 1513cbeba4aeSmrg os=-coff 1514cbeba4aeSmrg ;; 1515cbeba4aeSmrg *-tti) # must be before sparc entry or we get the wrong os. 1516cbeba4aeSmrg os=-sysv3 1517cbeba4aeSmrg ;; 1518cbeba4aeSmrg sparc-* | *-sun) 1519cbeba4aeSmrg os=-sunos4.1.1 1520cbeba4aeSmrg ;; 1521cbeba4aeSmrg *-be) 1522cbeba4aeSmrg os=-beos 1523cbeba4aeSmrg ;; 15247bd0f98dSmrg *-haiku) 15257bd0f98dSmrg os=-haiku 15267bd0f98dSmrg ;; 1527cbeba4aeSmrg *-ibm) 1528cbeba4aeSmrg os=-aix 1529cbeba4aeSmrg ;; 15307bd0f98dSmrg *-knuth) 15317bd0f98dSmrg os=-mmixware 15327bd0f98dSmrg ;; 1533cbeba4aeSmrg *-wec) 1534cbeba4aeSmrg os=-proelf 1535cbeba4aeSmrg ;; 1536cbeba4aeSmrg *-winbond) 1537cbeba4aeSmrg os=-proelf 1538cbeba4aeSmrg ;; 1539cbeba4aeSmrg *-oki) 1540cbeba4aeSmrg os=-proelf 1541cbeba4aeSmrg ;; 1542cbeba4aeSmrg *-hp) 1543cbeba4aeSmrg os=-hpux 1544cbeba4aeSmrg ;; 1545cbeba4aeSmrg *-hitachi) 1546cbeba4aeSmrg os=-hiux 1547cbeba4aeSmrg ;; 1548cbeba4aeSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1549cbeba4aeSmrg os=-sysv 1550cbeba4aeSmrg ;; 1551cbeba4aeSmrg *-cbm) 1552cbeba4aeSmrg os=-amigaos 1553cbeba4aeSmrg ;; 1554cbeba4aeSmrg *-dg) 1555cbeba4aeSmrg os=-dgux 1556cbeba4aeSmrg ;; 1557cbeba4aeSmrg *-dolphin) 1558cbeba4aeSmrg os=-sysv3 1559cbeba4aeSmrg ;; 1560cbeba4aeSmrg m68k-ccur) 1561cbeba4aeSmrg os=-rtu 1562cbeba4aeSmrg ;; 1563cbeba4aeSmrg m88k-omron*) 1564cbeba4aeSmrg os=-luna 1565cbeba4aeSmrg ;; 1566cbeba4aeSmrg *-next ) 1567cbeba4aeSmrg os=-nextstep 1568cbeba4aeSmrg ;; 1569cbeba4aeSmrg *-sequent) 1570cbeba4aeSmrg os=-ptx 1571cbeba4aeSmrg ;; 1572cbeba4aeSmrg *-crds) 1573cbeba4aeSmrg os=-unos 1574cbeba4aeSmrg ;; 1575cbeba4aeSmrg *-ns) 1576cbeba4aeSmrg os=-genix 1577cbeba4aeSmrg ;; 1578cbeba4aeSmrg i370-*) 1579cbeba4aeSmrg os=-mvs 1580cbeba4aeSmrg ;; 1581cbeba4aeSmrg *-next) 1582cbeba4aeSmrg os=-nextstep3 1583cbeba4aeSmrg ;; 1584cbeba4aeSmrg *-gould) 1585cbeba4aeSmrg os=-sysv 1586cbeba4aeSmrg ;; 1587cbeba4aeSmrg *-highlevel) 1588cbeba4aeSmrg os=-bsd 1589cbeba4aeSmrg ;; 1590cbeba4aeSmrg *-encore) 1591cbeba4aeSmrg os=-bsd 1592cbeba4aeSmrg ;; 1593cbeba4aeSmrg *-sgi) 1594cbeba4aeSmrg os=-irix 1595cbeba4aeSmrg ;; 1596cbeba4aeSmrg *-siemens) 1597cbeba4aeSmrg os=-sysv4 1598cbeba4aeSmrg ;; 1599cbeba4aeSmrg *-masscomp) 1600cbeba4aeSmrg os=-rtu 1601cbeba4aeSmrg ;; 1602cbeba4aeSmrg f30[01]-fujitsu | f700-fujitsu) 1603cbeba4aeSmrg os=-uxpv 1604cbeba4aeSmrg ;; 1605cbeba4aeSmrg *-rom68k) 1606cbeba4aeSmrg os=-coff 1607cbeba4aeSmrg ;; 1608cbeba4aeSmrg *-*bug) 1609cbeba4aeSmrg os=-coff 1610cbeba4aeSmrg ;; 1611cbeba4aeSmrg *-apple) 1612cbeba4aeSmrg os=-macos 1613cbeba4aeSmrg ;; 1614cbeba4aeSmrg *-atari*) 1615cbeba4aeSmrg os=-mint 1616cbeba4aeSmrg ;; 1617cbeba4aeSmrg *) 1618cbeba4aeSmrg os=-none 1619cbeba4aeSmrg ;; 1620cbeba4aeSmrgesac 1621cbeba4aeSmrgfi 1622cbeba4aeSmrg 1623cbeba4aeSmrg# Here we handle the case where we know the os, and the CPU type, but not the 1624cbeba4aeSmrg# manufacturer. We pick the logical manufacturer. 1625cbeba4aeSmrgvendor=unknown 1626cbeba4aeSmrgcase $basic_machine in 1627cbeba4aeSmrg *-unknown) 1628cbeba4aeSmrg case $os in 1629cbeba4aeSmrg -riscix*) 1630cbeba4aeSmrg vendor=acorn 1631cbeba4aeSmrg ;; 1632cbeba4aeSmrg -sunos*) 1633cbeba4aeSmrg vendor=sun 1634cbeba4aeSmrg ;; 16357bd0f98dSmrg -cnk*|-aix*) 1636cbeba4aeSmrg vendor=ibm 1637cbeba4aeSmrg ;; 1638cbeba4aeSmrg -beos*) 1639cbeba4aeSmrg vendor=be 1640cbeba4aeSmrg ;; 1641cbeba4aeSmrg -hpux*) 1642cbeba4aeSmrg vendor=hp 1643cbeba4aeSmrg ;; 1644cbeba4aeSmrg -mpeix*) 1645cbeba4aeSmrg vendor=hp 1646cbeba4aeSmrg ;; 1647cbeba4aeSmrg -hiux*) 1648cbeba4aeSmrg vendor=hitachi 1649cbeba4aeSmrg ;; 1650cbeba4aeSmrg -unos*) 1651cbeba4aeSmrg vendor=crds 1652cbeba4aeSmrg ;; 1653cbeba4aeSmrg -dgux*) 1654cbeba4aeSmrg vendor=dg 1655cbeba4aeSmrg ;; 1656cbeba4aeSmrg -luna*) 1657cbeba4aeSmrg vendor=omron 1658cbeba4aeSmrg ;; 1659cbeba4aeSmrg -genix*) 1660cbeba4aeSmrg vendor=ns 1661cbeba4aeSmrg ;; 1662cbeba4aeSmrg -mvs* | -opened*) 1663cbeba4aeSmrg vendor=ibm 1664cbeba4aeSmrg ;; 16657bd0f98dSmrg -os400*) 16667bd0f98dSmrg vendor=ibm 16677bd0f98dSmrg ;; 1668cbeba4aeSmrg -ptx*) 1669cbeba4aeSmrg vendor=sequent 1670cbeba4aeSmrg ;; 16717bd0f98dSmrg -tpf*) 16727bd0f98dSmrg vendor=ibm 16737bd0f98dSmrg ;; 1674cbeba4aeSmrg -vxsim* | -vxworks* | -windiss*) 1675cbeba4aeSmrg vendor=wrs 1676cbeba4aeSmrg ;; 1677cbeba4aeSmrg -aux*) 1678cbeba4aeSmrg vendor=apple 1679cbeba4aeSmrg ;; 1680cbeba4aeSmrg -hms*) 1681cbeba4aeSmrg vendor=hitachi 1682cbeba4aeSmrg ;; 1683cbeba4aeSmrg -mpw* | -macos*) 1684cbeba4aeSmrg vendor=apple 1685cbeba4aeSmrg ;; 1686cbeba4aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1687cbeba4aeSmrg vendor=atari 1688cbeba4aeSmrg ;; 1689cbeba4aeSmrg -vos*) 1690cbeba4aeSmrg vendor=stratus 1691cbeba4aeSmrg ;; 1692cbeba4aeSmrg esac 1693cbeba4aeSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1694cbeba4aeSmrg ;; 1695cbeba4aeSmrgesac 1696cbeba4aeSmrg 1697cbeba4aeSmrgecho $basic_machine$os 16987bd0f98dSmrgexit 1699cbeba4aeSmrg 1700cbeba4aeSmrg# Local variables: 1701cbeba4aeSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1702cbeba4aeSmrg# time-stamp-start: "timestamp='" 1703cbeba4aeSmrg# time-stamp-format: "%:y-%02m-%02d" 1704cbeba4aeSmrg# time-stamp-end: "'" 1705cbeba4aeSmrg# End: 1706