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