config.sub revision 3f6d0e1d
1692f60a7Smrg#! /bin/sh 2692f60a7Smrg# Configuration validation subroutine script. 3692f60a7Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 43f6d0e1dSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 53f6d0e1dSmrg# 2011, 2012 Free Software Foundation, Inc. 6692f60a7Smrg 73f6d0e1dSmrgtimestamp='2012-01-01' 8692f60a7Smrg 9692f60a7Smrg# This file is (in principle) common to ALL GNU software. 10692f60a7Smrg# The presence of a machine in this file suggests that SOME GNU software 11692f60a7Smrg# can handle that machine. It does not imply ALL GNU software can. 12692f60a7Smrg# 13692f60a7Smrg# This file is free software; you can redistribute it and/or modify 14692f60a7Smrg# it under the terms of the GNU General Public License as published by 15692f60a7Smrg# the Free Software Foundation; either version 2 of the License, or 16692f60a7Smrg# (at your option) any later version. 17692f60a7Smrg# 18692f60a7Smrg# This program is distributed in the hope that it will be useful, 19692f60a7Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20692f60a7Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21692f60a7Smrg# GNU General Public License for more details. 22692f60a7Smrg# 23692f60a7Smrg# You should have received a copy of the GNU General Public License 24692f60a7Smrg# along with this program; if not, write to the Free Software 2554569438Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2654569438Smrg# 02110-1301, USA. 2754569438Smrg# 28692f60a7Smrg# As a special exception to the GNU General Public License, if you 29692f60a7Smrg# distribute this file as part of a program that contains a 30692f60a7Smrg# configuration script generated by Autoconf, you may include it under 31692f60a7Smrg# the same distribution terms that you use for the rest of that program. 32692f60a7Smrg 3354569438Smrg 34692f60a7Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 353f6d0e1dSmrg# diff and a properly formatted GNU ChangeLog entry. 36692f60a7Smrg# 37692f60a7Smrg# Configuration subroutine to validate and canonicalize a configuration type. 38692f60a7Smrg# Supply the specified configuration type as an argument. 39692f60a7Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 40692f60a7Smrg# Otherwise, we print the canonical config type on stdout and succeed. 41692f60a7Smrg 423f6d0e1dSmrg# You can get the latest version of this script from: 433f6d0e1dSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 443f6d0e1dSmrg 45692f60a7Smrg# This file is supposed to be the same for all GNU packages 46692f60a7Smrg# and recognize all the CPU types, system types and aliases 47692f60a7Smrg# that are meaningful with *any* GNU software. 48692f60a7Smrg# Each package is responsible for reporting which valid configurations 49692f60a7Smrg# it does not support. The user should be able to distinguish 50692f60a7Smrg# a failure to support a valid configuration from a meaningless 51692f60a7Smrg# configuration. 52692f60a7Smrg 53692f60a7Smrg# The goal of this file is to map all the various variations of a given 54692f60a7Smrg# machine specification into a single specification in the form: 55692f60a7Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 56692f60a7Smrg# or in some cases, the newer four-part form: 57692f60a7Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 58692f60a7Smrg# It is wrong to echo any other type of specification. 59692f60a7Smrg 60692f60a7Smrgme=`echo "$0" | sed -e 's,.*/,,'` 61692f60a7Smrg 62692f60a7Smrgusage="\ 63692f60a7SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 64692f60a7Smrg $0 [OPTION] ALIAS 65692f60a7Smrg 66692f60a7SmrgCanonicalize a configuration name. 67692f60a7Smrg 68692f60a7SmrgOperation modes: 69692f60a7Smrg -h, --help print this help, then exit 70692f60a7Smrg -t, --time-stamp print date of last modification, then exit 71692f60a7Smrg -v, --version print version number, then exit 72692f60a7Smrg 73692f60a7SmrgReport bugs and patches to <config-patches@gnu.org>." 74692f60a7Smrg 75692f60a7Smrgversion="\ 76692f60a7SmrgGNU config.sub ($timestamp) 77692f60a7Smrg 783f6d0e1dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 793f6d0e1dSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 803f6d0e1dSmrgFree Software Foundation, Inc. 81692f60a7Smrg 82692f60a7SmrgThis is free software; see the source for copying conditions. There is NO 83692f60a7Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 84692f60a7Smrg 85692f60a7Smrghelp=" 86692f60a7SmrgTry \`$me --help' for more information." 87692f60a7Smrg 88692f60a7Smrg# Parse command line 89692f60a7Smrgwhile test $# -gt 0 ; do 90692f60a7Smrg case $1 in 91692f60a7Smrg --time-stamp | --time* | -t ) 9254569438Smrg echo "$timestamp" ; exit ;; 93692f60a7Smrg --version | -v ) 9454569438Smrg echo "$version" ; exit ;; 95692f60a7Smrg --help | --h* | -h ) 9654569438Smrg echo "$usage"; exit ;; 97692f60a7Smrg -- ) # Stop option processing 98692f60a7Smrg shift; break ;; 99692f60a7Smrg - ) # Use stdin as input. 100692f60a7Smrg break ;; 101692f60a7Smrg -* ) 102692f60a7Smrg echo "$me: invalid option $1$help" 103692f60a7Smrg exit 1 ;; 104692f60a7Smrg 105692f60a7Smrg *local*) 106692f60a7Smrg # First pass through any local machine types. 107692f60a7Smrg echo $1 10854569438Smrg exit ;; 109692f60a7Smrg 110692f60a7Smrg * ) 111692f60a7Smrg break ;; 112692f60a7Smrg esac 113692f60a7Smrgdone 114692f60a7Smrg 115692f60a7Smrgcase $# in 116692f60a7Smrg 0) echo "$me: missing argument$help" >&2 117692f60a7Smrg exit 1;; 118692f60a7Smrg 1) ;; 119692f60a7Smrg *) echo "$me: too many arguments$help" >&2 120692f60a7Smrg exit 1;; 121692f60a7Smrgesac 122692f60a7Smrg 123692f60a7Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 124692f60a7Smrg# Here we must recognize all the valid KERNEL-OS combinations. 125692f60a7Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 126692f60a7Smrgcase $maybe_os in 1273f6d0e1dSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1283f6d0e1dSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1293f6d0e1dSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 1303f6d0e1dSmrg kopensolaris*-gnu* | \ 13154569438Smrg storm-chaos* | os2-emx* | rtmk-nova*) 132692f60a7Smrg os=-$maybe_os 133692f60a7Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 134692f60a7Smrg ;; 135692f60a7Smrg *) 136692f60a7Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 137692f60a7Smrg if [ $basic_machine != $1 ] 138692f60a7Smrg then os=`echo $1 | sed 's/.*-/-/'` 139692f60a7Smrg else os=; fi 140692f60a7Smrg ;; 141692f60a7Smrgesac 142692f60a7Smrg 143692f60a7Smrg### Let's recognize common machines as not being operating systems so 144692f60a7Smrg### that things like config.sub decstation-3100 work. We also 145692f60a7Smrg### recognize some manufacturers as not being operating systems, so we 146692f60a7Smrg### can provide default operating systems below. 147692f60a7Smrgcase $os in 148692f60a7Smrg -sun*os*) 149692f60a7Smrg # Prevent following clause from handling this invalid input. 150692f60a7Smrg ;; 151692f60a7Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 152692f60a7Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 153692f60a7Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 154692f60a7Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 155692f60a7Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 156692f60a7Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1573f6d0e1dSmrg -apple | -axis | -knuth | -cray | -microblaze) 158692f60a7Smrg os= 159692f60a7Smrg basic_machine=$1 160692f60a7Smrg ;; 1613f6d0e1dSmrg -bluegene*) 1623f6d0e1dSmrg os=-cnk 1633f6d0e1dSmrg ;; 164692f60a7Smrg -sim | -cisco | -oki | -wec | -winbond) 165692f60a7Smrg os= 166692f60a7Smrg basic_machine=$1 167692f60a7Smrg ;; 168692f60a7Smrg -scout) 169692f60a7Smrg ;; 170692f60a7Smrg -wrs) 171692f60a7Smrg os=-vxworks 172692f60a7Smrg basic_machine=$1 173692f60a7Smrg ;; 174692f60a7Smrg -chorusos*) 175692f60a7Smrg os=-chorusos 176692f60a7Smrg basic_machine=$1 177692f60a7Smrg ;; 1783f6d0e1dSmrg -chorusrdb) 1793f6d0e1dSmrg os=-chorusrdb 180692f60a7Smrg basic_machine=$1 1813f6d0e1dSmrg ;; 182692f60a7Smrg -hiux*) 183692f60a7Smrg os=-hiuxwe2 184692f60a7Smrg ;; 18554569438Smrg -sco6) 18654569438Smrg os=-sco5v6 18754569438Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18854569438Smrg ;; 189692f60a7Smrg -sco5) 190692f60a7Smrg os=-sco3.2v5 191692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 192692f60a7Smrg ;; 193692f60a7Smrg -sco4) 194692f60a7Smrg os=-sco3.2v4 195692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 196692f60a7Smrg ;; 197692f60a7Smrg -sco3.2.[4-9]*) 198692f60a7Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 199692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 200692f60a7Smrg ;; 201692f60a7Smrg -sco3.2v[4-9]*) 202692f60a7Smrg # Don't forget version if it is 3.2v4 or newer. 203692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 204692f60a7Smrg ;; 20554569438Smrg -sco5v6*) 20654569438Smrg # Don't forget version if it is 3.2v4 or newer. 20754569438Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20854569438Smrg ;; 209692f60a7Smrg -sco*) 210692f60a7Smrg os=-sco3.2v2 211692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 212692f60a7Smrg ;; 213692f60a7Smrg -udk*) 214692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 215692f60a7Smrg ;; 216692f60a7Smrg -isc) 217692f60a7Smrg os=-isc2.2 218692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 219692f60a7Smrg ;; 220692f60a7Smrg -clix*) 221692f60a7Smrg basic_machine=clipper-intergraph 222692f60a7Smrg ;; 223692f60a7Smrg -isc*) 224692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 225692f60a7Smrg ;; 226692f60a7Smrg -lynx*) 227692f60a7Smrg os=-lynxos 228692f60a7Smrg ;; 229692f60a7Smrg -ptx*) 230692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 231692f60a7Smrg ;; 232692f60a7Smrg -windowsnt*) 233692f60a7Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 234692f60a7Smrg ;; 235692f60a7Smrg -psos*) 236692f60a7Smrg os=-psos 237692f60a7Smrg ;; 238692f60a7Smrg -mint | -mint[0-9]*) 239692f60a7Smrg basic_machine=m68k-atari 240692f60a7Smrg os=-mint 241692f60a7Smrg ;; 242692f60a7Smrgesac 243692f60a7Smrg 244692f60a7Smrg# Decode aliases for certain CPU-COMPANY combinations. 245692f60a7Smrgcase $basic_machine in 246692f60a7Smrg # Recognize the basic CPU types without company name. 247692f60a7Smrg # Some are omitted here because they have special meanings below. 248692f60a7Smrg 1750a | 580 \ 249692f60a7Smrg | a29k \ 250692f60a7Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 251692f60a7Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25254569438Smrg | am33_2.0 \ 25354569438Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2543f6d0e1dSmrg | be32 | be64 \ 25554569438Smrg | bfin \ 256692f60a7Smrg | c4x | clipper \ 257692f60a7Smrg | d10v | d30v | dlx | dsp16xx \ 2583f6d0e1dSmrg | epiphany \ 25954569438Smrg | fido | fr30 | frv \ 260692f60a7Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2613f6d0e1dSmrg | hexagon \ 262692f60a7Smrg | i370 | i860 | i960 | ia64 \ 26354569438Smrg | ip2k | iq2000 \ 2643f6d0e1dSmrg | le32 | le64 \ 2653f6d0e1dSmrg | lm32 \ 26654569438Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2673f6d0e1dSmrg | maxq | mb | microblaze | mcore | mep | metag \ 268692f60a7Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 269692f60a7Smrg | mips16 \ 270692f60a7Smrg | mips64 | mips64el \ 2713f6d0e1dSmrg | mips64octeon | mips64octeonel \ 2722e71ea71Smrg | mips64orion | mips64orionel \ 2733f6d0e1dSmrg | mips64r5900 | mips64r5900el \ 2743f6d0e1dSmrg | mips64vr | mips64vrel \ 275692f60a7Smrg | mips64vr4100 | mips64vr4100el \ 276692f60a7Smrg | mips64vr4300 | mips64vr4300el \ 277692f60a7Smrg | mips64vr5000 | mips64vr5000el \ 27854569438Smrg | mips64vr5900 | mips64vr5900el \ 279692f60a7Smrg | mipsisa32 | mipsisa32el \ 280692f60a7Smrg | mipsisa32r2 | mipsisa32r2el \ 281692f60a7Smrg | mipsisa64 | mipsisa64el \ 28254569438Smrg | mipsisa64r2 | mipsisa64r2el \ 283692f60a7Smrg | mipsisa64sb1 | mipsisa64sb1el \ 284692f60a7Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 285692f60a7Smrg | mipstx39 | mipstx39el \ 286692f60a7Smrg | mn10200 | mn10300 \ 2873f6d0e1dSmrg | moxie \ 28854569438Smrg | mt \ 289692f60a7Smrg | msp430 \ 2903f6d0e1dSmrg | nds32 | nds32le | nds32be \ 29154569438Smrg | nios | nios2 \ 292692f60a7Smrg | ns16k | ns32k \ 2933f6d0e1dSmrg | open8 \ 29454569438Smrg | or32 \ 295692f60a7Smrg | pdp10 | pdp11 | pj | pjl \ 2963f6d0e1dSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 297692f60a7Smrg | pyramid \ 2983f6d0e1dSmrg | rl78 | rx \ 29954569438Smrg | score \ 3003f6d0e1dSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 301692f60a7Smrg | sh64 | sh64le \ 30254569438Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 30354569438Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 3043f6d0e1dSmrg | spu \ 3053f6d0e1dSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3063f6d0e1dSmrg | ubicom32 \ 3073f6d0e1dSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 308692f60a7Smrg | we32k \ 3093f6d0e1dSmrg | x86 | xc16x | xstormy16 | xtensa \ 3103f6d0e1dSmrg | z8k | z80) 311692f60a7Smrg basic_machine=$basic_machine-unknown 312692f60a7Smrg ;; 3133f6d0e1dSmrg c54x) 3143f6d0e1dSmrg basic_machine=tic54x-unknown 3153f6d0e1dSmrg ;; 3163f6d0e1dSmrg c55x) 3173f6d0e1dSmrg basic_machine=tic55x-unknown 3183f6d0e1dSmrg ;; 3193f6d0e1dSmrg c6x) 3203f6d0e1dSmrg basic_machine=tic6x-unknown 3213f6d0e1dSmrg ;; 3223f6d0e1dSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 323692f60a7Smrg basic_machine=$basic_machine-unknown 324692f60a7Smrg os=-none 325692f60a7Smrg ;; 326692f60a7Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 327692f60a7Smrg ;; 32854569438Smrg ms1) 32954569438Smrg basic_machine=mt-unknown 33054569438Smrg ;; 331692f60a7Smrg 3323f6d0e1dSmrg strongarm | thumb | xscale) 3333f6d0e1dSmrg basic_machine=arm-unknown 3343f6d0e1dSmrg ;; 3353f6d0e1dSmrg 3363f6d0e1dSmrg xscaleeb) 3373f6d0e1dSmrg basic_machine=armeb-unknown 3383f6d0e1dSmrg ;; 3393f6d0e1dSmrg 3403f6d0e1dSmrg xscaleel) 3413f6d0e1dSmrg basic_machine=armel-unknown 3423f6d0e1dSmrg ;; 3433f6d0e1dSmrg 344692f60a7Smrg # We use `pc' rather than `unknown' 345692f60a7Smrg # because (1) that's what they normally are, and 346692f60a7Smrg # (2) the word "unknown" tends to confuse beginning users. 347692f60a7Smrg i*86 | x86_64) 348692f60a7Smrg basic_machine=$basic_machine-pc 349692f60a7Smrg ;; 350692f60a7Smrg # Object if more than one company name word. 351692f60a7Smrg *-*-*) 352692f60a7Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 353692f60a7Smrg exit 1 354692f60a7Smrg ;; 355692f60a7Smrg # Recognize the basic CPU types with company name. 356692f60a7Smrg 580-* \ 357692f60a7Smrg | a29k-* \ 358692f60a7Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 359692f60a7Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 360692f60a7Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 361692f60a7Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 36254569438Smrg | avr-* | avr32-* \ 3633f6d0e1dSmrg | be32-* | be64-* \ 36454569438Smrg | bfin-* | bs2000-* \ 3653f6d0e1dSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 36654569438Smrg | clipper-* | craynv-* | cydra-* \ 367692f60a7Smrg | d10v-* | d30v-* | dlx-* \ 368692f60a7Smrg | elxsi-* \ 36954569438Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 370692f60a7Smrg | h8300-* | h8500-* \ 371692f60a7Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3723f6d0e1dSmrg | hexagon-* \ 373692f60a7Smrg | i*86-* | i860-* | i960-* | ia64-* \ 37454569438Smrg | ip2k-* | iq2000-* \ 3753f6d0e1dSmrg | le32-* | le64-* \ 3763f6d0e1dSmrg | lm32-* \ 37754569438Smrg | m32c-* | m32r-* | m32rle-* \ 378692f60a7Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3793f6d0e1dSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 380692f60a7Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 381692f60a7Smrg | mips16-* \ 382692f60a7Smrg | mips64-* | mips64el-* \ 3833f6d0e1dSmrg | mips64octeon-* | mips64octeonel-* \ 3842e71ea71Smrg | mips64orion-* | mips64orionel-* \ 3853f6d0e1dSmrg | mips64r5900-* | mips64r5900el-* \ 3863f6d0e1dSmrg | mips64vr-* | mips64vrel-* \ 387692f60a7Smrg | mips64vr4100-* | mips64vr4100el-* \ 388692f60a7Smrg | mips64vr4300-* | mips64vr4300el-* \ 389692f60a7Smrg | mips64vr5000-* | mips64vr5000el-* \ 39054569438Smrg | mips64vr5900-* | mips64vr5900el-* \ 391692f60a7Smrg | mipsisa32-* | mipsisa32el-* \ 392692f60a7Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 393692f60a7Smrg | mipsisa64-* | mipsisa64el-* \ 39454569438Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 395692f60a7Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 396692f60a7Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 397692f60a7Smrg | mipstx39-* | mipstx39el-* \ 39854569438Smrg | mmix-* \ 39954569438Smrg | mt-* \ 400692f60a7Smrg | msp430-* \ 4013f6d0e1dSmrg | nds32-* | nds32le-* | nds32be-* \ 40254569438Smrg | nios-* | nios2-* \ 40354569438Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 4043f6d0e1dSmrg | open8-* \ 405692f60a7Smrg | orion-* \ 406692f60a7Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 4073f6d0e1dSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 408692f60a7Smrg | pyramid-* \ 4093f6d0e1dSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 4103f6d0e1dSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 411692f60a7Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 41254569438Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 41354569438Smrg | sparclite-* \ 4143f6d0e1dSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 4153f6d0e1dSmrg | tahoe-* \ 4162e71ea71Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 4173f6d0e1dSmrg | tile*-* \ 418692f60a7Smrg | tron-* \ 4193f6d0e1dSmrg | ubicom32-* \ 4203f6d0e1dSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 4213f6d0e1dSmrg | vax-* \ 422692f60a7Smrg | we32k-* \ 4233f6d0e1dSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 42454569438Smrg | xstormy16-* | xtensa*-* \ 425692f60a7Smrg | ymp-* \ 4263f6d0e1dSmrg | z8k-* | z80-*) 427692f60a7Smrg ;; 42854569438Smrg # Recognize the basic CPU types without company name, with glob match. 42954569438Smrg xtensa*) 43054569438Smrg basic_machine=$basic_machine-unknown 43154569438Smrg ;; 432692f60a7Smrg # Recognize the various machine names and aliases which stand 433692f60a7Smrg # for a CPU type and a company and sometimes even an OS. 434692f60a7Smrg 386bsd) 435692f60a7Smrg basic_machine=i386-unknown 436692f60a7Smrg os=-bsd 437692f60a7Smrg ;; 438692f60a7Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 439692f60a7Smrg basic_machine=m68000-att 440692f60a7Smrg ;; 441692f60a7Smrg 3b*) 442692f60a7Smrg basic_machine=we32k-att 443692f60a7Smrg ;; 444692f60a7Smrg a29khif) 445692f60a7Smrg basic_machine=a29k-amd 446692f60a7Smrg os=-udi 447692f60a7Smrg ;; 4483f6d0e1dSmrg abacus) 44954569438Smrg basic_machine=abacus-unknown 45054569438Smrg ;; 451692f60a7Smrg adobe68k) 452692f60a7Smrg basic_machine=m68010-adobe 453692f60a7Smrg os=-scout 454692f60a7Smrg ;; 455692f60a7Smrg alliant | fx80) 456692f60a7Smrg basic_machine=fx80-alliant 457692f60a7Smrg ;; 458692f60a7Smrg altos | altos3068) 459692f60a7Smrg basic_machine=m68k-altos 460692f60a7Smrg ;; 461692f60a7Smrg am29k) 462692f60a7Smrg basic_machine=a29k-none 463692f60a7Smrg os=-bsd 464692f60a7Smrg ;; 465692f60a7Smrg amd64) 466692f60a7Smrg basic_machine=x86_64-pc 467692f60a7Smrg ;; 46854569438Smrg amd64-*) 46954569438Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 47054569438Smrg ;; 471692f60a7Smrg amdahl) 472692f60a7Smrg basic_machine=580-amdahl 473692f60a7Smrg os=-sysv 474692f60a7Smrg ;; 475692f60a7Smrg amiga | amiga-*) 476692f60a7Smrg basic_machine=m68k-unknown 477692f60a7Smrg ;; 478692f60a7Smrg amigaos | amigados) 479692f60a7Smrg basic_machine=m68k-unknown 480692f60a7Smrg os=-amigaos 481692f60a7Smrg ;; 482692f60a7Smrg amigaunix | amix) 483692f60a7Smrg basic_machine=m68k-unknown 484692f60a7Smrg os=-sysv4 485692f60a7Smrg ;; 486692f60a7Smrg apollo68) 487692f60a7Smrg basic_machine=m68k-apollo 488692f60a7Smrg os=-sysv 489692f60a7Smrg ;; 490692f60a7Smrg apollo68bsd) 491692f60a7Smrg basic_machine=m68k-apollo 492692f60a7Smrg os=-bsd 493692f60a7Smrg ;; 4943f6d0e1dSmrg aros) 4953f6d0e1dSmrg basic_machine=i386-pc 4963f6d0e1dSmrg os=-aros 4973f6d0e1dSmrg ;; 498692f60a7Smrg aux) 499692f60a7Smrg basic_machine=m68k-apple 500692f60a7Smrg os=-aux 501692f60a7Smrg ;; 502692f60a7Smrg balance) 503692f60a7Smrg basic_machine=ns32k-sequent 504692f60a7Smrg os=-dynix 505692f60a7Smrg ;; 50654569438Smrg blackfin) 50754569438Smrg basic_machine=bfin-unknown 50854569438Smrg os=-linux 50954569438Smrg ;; 51054569438Smrg blackfin-*) 51154569438Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 51254569438Smrg os=-linux 51354569438Smrg ;; 5143f6d0e1dSmrg bluegene*) 5153f6d0e1dSmrg basic_machine=powerpc-ibm 5163f6d0e1dSmrg os=-cnk 5173f6d0e1dSmrg ;; 5183f6d0e1dSmrg c54x-*) 5193f6d0e1dSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 5203f6d0e1dSmrg ;; 5213f6d0e1dSmrg c55x-*) 5223f6d0e1dSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5233f6d0e1dSmrg ;; 5243f6d0e1dSmrg c6x-*) 5253f6d0e1dSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5263f6d0e1dSmrg ;; 527692f60a7Smrg c90) 528692f60a7Smrg basic_machine=c90-cray 529692f60a7Smrg os=-unicos 530692f60a7Smrg ;; 5313f6d0e1dSmrg cegcc) 5323f6d0e1dSmrg basic_machine=arm-unknown 5333f6d0e1dSmrg os=-cegcc 5343f6d0e1dSmrg ;; 535692f60a7Smrg convex-c1) 536692f60a7Smrg basic_machine=c1-convex 537692f60a7Smrg os=-bsd 538692f60a7Smrg ;; 539692f60a7Smrg convex-c2) 540692f60a7Smrg basic_machine=c2-convex 541692f60a7Smrg os=-bsd 542692f60a7Smrg ;; 543692f60a7Smrg convex-c32) 544692f60a7Smrg basic_machine=c32-convex 545692f60a7Smrg os=-bsd 546692f60a7Smrg ;; 547692f60a7Smrg convex-c34) 548692f60a7Smrg basic_machine=c34-convex 549692f60a7Smrg os=-bsd 550692f60a7Smrg ;; 551692f60a7Smrg convex-c38) 552692f60a7Smrg basic_machine=c38-convex 553692f60a7Smrg os=-bsd 554692f60a7Smrg ;; 555692f60a7Smrg cray | j90) 556692f60a7Smrg basic_machine=j90-cray 557692f60a7Smrg os=-unicos 558692f60a7Smrg ;; 55954569438Smrg craynv) 56054569438Smrg basic_machine=craynv-cray 56154569438Smrg os=-unicosmp 56254569438Smrg ;; 5633f6d0e1dSmrg cr16 | cr16-*) 56454569438Smrg basic_machine=cr16-unknown 56554569438Smrg os=-elf 56654569438Smrg ;; 567692f60a7Smrg crds | unos) 568692f60a7Smrg basic_machine=m68k-crds 569692f60a7Smrg ;; 57054569438Smrg crisv32 | crisv32-* | etraxfs*) 57154569438Smrg basic_machine=crisv32-axis 57254569438Smrg ;; 573692f60a7Smrg cris | cris-* | etrax*) 574692f60a7Smrg basic_machine=cris-axis 575692f60a7Smrg ;; 57654569438Smrg crx) 57754569438Smrg basic_machine=crx-unknown 57854569438Smrg os=-elf 57954569438Smrg ;; 580692f60a7Smrg da30 | da30-*) 581692f60a7Smrg basic_machine=m68k-da30 582692f60a7Smrg ;; 583692f60a7Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 584692f60a7Smrg basic_machine=mips-dec 585692f60a7Smrg ;; 586692f60a7Smrg decsystem10* | dec10*) 587692f60a7Smrg basic_machine=pdp10-dec 588692f60a7Smrg os=-tops10 589692f60a7Smrg ;; 590692f60a7Smrg decsystem20* | dec20*) 591692f60a7Smrg basic_machine=pdp10-dec 592692f60a7Smrg os=-tops20 593692f60a7Smrg ;; 594692f60a7Smrg delta | 3300 | motorola-3300 | motorola-delta \ 595692f60a7Smrg | 3300-motorola | delta-motorola) 596692f60a7Smrg basic_machine=m68k-motorola 597692f60a7Smrg ;; 598692f60a7Smrg delta88) 599692f60a7Smrg basic_machine=m88k-motorola 600692f60a7Smrg os=-sysv3 601692f60a7Smrg ;; 6023f6d0e1dSmrg dicos) 6033f6d0e1dSmrg basic_machine=i686-pc 6043f6d0e1dSmrg os=-dicos 6053f6d0e1dSmrg ;; 60654569438Smrg djgpp) 60754569438Smrg basic_machine=i586-pc 60854569438Smrg os=-msdosdjgpp 60954569438Smrg ;; 610692f60a7Smrg dpx20 | dpx20-*) 611692f60a7Smrg basic_machine=rs6000-bull 612692f60a7Smrg os=-bosx 613692f60a7Smrg ;; 614692f60a7Smrg dpx2* | dpx2*-bull) 615692f60a7Smrg basic_machine=m68k-bull 616692f60a7Smrg os=-sysv3 617692f60a7Smrg ;; 618692f60a7Smrg ebmon29k) 619692f60a7Smrg basic_machine=a29k-amd 620692f60a7Smrg os=-ebmon 621692f60a7Smrg ;; 622692f60a7Smrg elxsi) 623692f60a7Smrg basic_machine=elxsi-elxsi 624692f60a7Smrg os=-bsd 625692f60a7Smrg ;; 626692f60a7Smrg encore | umax | mmax) 627692f60a7Smrg basic_machine=ns32k-encore 628692f60a7Smrg ;; 629692f60a7Smrg es1800 | OSE68k | ose68k | ose | OSE) 630692f60a7Smrg basic_machine=m68k-ericsson 631692f60a7Smrg os=-ose 632692f60a7Smrg ;; 633692f60a7Smrg fx2800) 634692f60a7Smrg basic_machine=i860-alliant 635692f60a7Smrg ;; 636692f60a7Smrg genix) 637692f60a7Smrg basic_machine=ns32k-ns 638692f60a7Smrg ;; 639692f60a7Smrg gmicro) 640692f60a7Smrg basic_machine=tron-gmicro 641692f60a7Smrg os=-sysv 642692f60a7Smrg ;; 643692f60a7Smrg go32) 644692f60a7Smrg basic_machine=i386-pc 645692f60a7Smrg os=-go32 646692f60a7Smrg ;; 647692f60a7Smrg h3050r* | hiux*) 648692f60a7Smrg basic_machine=hppa1.1-hitachi 649692f60a7Smrg os=-hiuxwe2 650692f60a7Smrg ;; 651692f60a7Smrg h8300hms) 652692f60a7Smrg basic_machine=h8300-hitachi 653692f60a7Smrg os=-hms 654692f60a7Smrg ;; 655692f60a7Smrg h8300xray) 656692f60a7Smrg basic_machine=h8300-hitachi 657692f60a7Smrg os=-xray 658692f60a7Smrg ;; 659692f60a7Smrg h8500hms) 660692f60a7Smrg basic_machine=h8500-hitachi 661692f60a7Smrg os=-hms 662692f60a7Smrg ;; 663692f60a7Smrg harris) 664692f60a7Smrg basic_machine=m88k-harris 665692f60a7Smrg os=-sysv3 666692f60a7Smrg ;; 667692f60a7Smrg hp300-*) 668692f60a7Smrg basic_machine=m68k-hp 669692f60a7Smrg ;; 670692f60a7Smrg hp300bsd) 671692f60a7Smrg basic_machine=m68k-hp 672692f60a7Smrg os=-bsd 673692f60a7Smrg ;; 674692f60a7Smrg hp300hpux) 675692f60a7Smrg basic_machine=m68k-hp 676692f60a7Smrg os=-hpux 677692f60a7Smrg ;; 678692f60a7Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 679692f60a7Smrg basic_machine=hppa1.0-hp 680692f60a7Smrg ;; 681692f60a7Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 682692f60a7Smrg basic_machine=m68000-hp 683692f60a7Smrg ;; 684692f60a7Smrg hp9k3[2-9][0-9]) 685692f60a7Smrg basic_machine=m68k-hp 686692f60a7Smrg ;; 687692f60a7Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 688692f60a7Smrg basic_machine=hppa1.0-hp 689692f60a7Smrg ;; 690692f60a7Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 691692f60a7Smrg basic_machine=hppa1.1-hp 692692f60a7Smrg ;; 693692f60a7Smrg hp9k78[0-9] | hp78[0-9]) 694692f60a7Smrg # FIXME: really hppa2.0-hp 695692f60a7Smrg basic_machine=hppa1.1-hp 696692f60a7Smrg ;; 697692f60a7Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 698692f60a7Smrg # FIXME: really hppa2.0-hp 699692f60a7Smrg basic_machine=hppa1.1-hp 700692f60a7Smrg ;; 701692f60a7Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 702692f60a7Smrg basic_machine=hppa1.1-hp 703692f60a7Smrg ;; 704692f60a7Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 705692f60a7Smrg basic_machine=hppa1.0-hp 706692f60a7Smrg ;; 707692f60a7Smrg hppa-next) 708692f60a7Smrg os=-nextstep3 709692f60a7Smrg ;; 710692f60a7Smrg hppaosf) 711692f60a7Smrg basic_machine=hppa1.1-hp 712692f60a7Smrg os=-osf 713692f60a7Smrg ;; 714692f60a7Smrg hppro) 715692f60a7Smrg basic_machine=hppa1.1-hp 716692f60a7Smrg os=-proelf 717692f60a7Smrg ;; 718692f60a7Smrg i370-ibm* | ibm*) 719692f60a7Smrg basic_machine=i370-ibm 720692f60a7Smrg ;; 721692f60a7Smrg i*86v32) 722692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 723692f60a7Smrg os=-sysv32 724692f60a7Smrg ;; 725692f60a7Smrg i*86v4*) 726692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 727692f60a7Smrg os=-sysv4 728692f60a7Smrg ;; 729692f60a7Smrg i*86v) 730692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 731692f60a7Smrg os=-sysv 732692f60a7Smrg ;; 733692f60a7Smrg i*86sol2) 734692f60a7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 735692f60a7Smrg os=-solaris2 736692f60a7Smrg ;; 737692f60a7Smrg i386mach) 738692f60a7Smrg basic_machine=i386-mach 739692f60a7Smrg os=-mach 740692f60a7Smrg ;; 741692f60a7Smrg i386-vsta | vsta) 742692f60a7Smrg basic_machine=i386-unknown 743692f60a7Smrg os=-vsta 744692f60a7Smrg ;; 745692f60a7Smrg iris | iris4d) 746692f60a7Smrg basic_machine=mips-sgi 747692f60a7Smrg case $os in 748692f60a7Smrg -irix*) 749692f60a7Smrg ;; 750692f60a7Smrg *) 751692f60a7Smrg os=-irix4 752692f60a7Smrg ;; 753692f60a7Smrg esac 754692f60a7Smrg ;; 755692f60a7Smrg isi68 | isi) 756692f60a7Smrg basic_machine=m68k-isi 757692f60a7Smrg os=-sysv 758692f60a7Smrg ;; 75954569438Smrg m68knommu) 76054569438Smrg basic_machine=m68k-unknown 76154569438Smrg os=-linux 76254569438Smrg ;; 76354569438Smrg m68knommu-*) 76454569438Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 76554569438Smrg os=-linux 76654569438Smrg ;; 767692f60a7Smrg m88k-omron*) 768692f60a7Smrg basic_machine=m88k-omron 769692f60a7Smrg ;; 770692f60a7Smrg magnum | m3230) 771692f60a7Smrg basic_machine=mips-mips 772692f60a7Smrg os=-sysv 773692f60a7Smrg ;; 774692f60a7Smrg merlin) 775692f60a7Smrg basic_machine=ns32k-utek 776692f60a7Smrg os=-sysv 777692f60a7Smrg ;; 7783f6d0e1dSmrg microblaze) 7793f6d0e1dSmrg basic_machine=microblaze-xilinx 7803f6d0e1dSmrg ;; 781692f60a7Smrg mingw32) 782692f60a7Smrg basic_machine=i386-pc 783692f60a7Smrg os=-mingw32 784692f60a7Smrg ;; 78554569438Smrg mingw32ce) 78654569438Smrg basic_machine=arm-unknown 78754569438Smrg os=-mingw32ce 78854569438Smrg ;; 789692f60a7Smrg miniframe) 790692f60a7Smrg basic_machine=m68000-convergent 791692f60a7Smrg ;; 792692f60a7Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 793692f60a7Smrg basic_machine=m68k-atari 794692f60a7Smrg os=-mint 795692f60a7Smrg ;; 796692f60a7Smrg mips3*-*) 797692f60a7Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 798692f60a7Smrg ;; 799692f60a7Smrg mips3*) 800692f60a7Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 801692f60a7Smrg ;; 802692f60a7Smrg monitor) 803692f60a7Smrg basic_machine=m68k-rom68k 804692f60a7Smrg os=-coff 805692f60a7Smrg ;; 806692f60a7Smrg morphos) 807692f60a7Smrg basic_machine=powerpc-unknown 808692f60a7Smrg os=-morphos 809692f60a7Smrg ;; 810692f60a7Smrg msdos) 811692f60a7Smrg basic_machine=i386-pc 812692f60a7Smrg os=-msdos 813692f60a7Smrg ;; 81454569438Smrg ms1-*) 81554569438Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 81654569438Smrg ;; 8173f6d0e1dSmrg msys) 8183f6d0e1dSmrg basic_machine=i386-pc 8193f6d0e1dSmrg os=-msys 8203f6d0e1dSmrg ;; 821692f60a7Smrg mvs) 822692f60a7Smrg basic_machine=i370-ibm 823692f60a7Smrg os=-mvs 824692f60a7Smrg ;; 8253f6d0e1dSmrg nacl) 8263f6d0e1dSmrg basic_machine=le32-unknown 8273f6d0e1dSmrg os=-nacl 8283f6d0e1dSmrg ;; 829692f60a7Smrg ncr3000) 830692f60a7Smrg basic_machine=i486-ncr 831692f60a7Smrg os=-sysv4 832692f60a7Smrg ;; 833692f60a7Smrg netbsd386) 834692f60a7Smrg basic_machine=i386-unknown 835692f60a7Smrg os=-netbsd 836692f60a7Smrg ;; 837692f60a7Smrg netwinder) 838692f60a7Smrg basic_machine=armv4l-rebel 839692f60a7Smrg os=-linux 840692f60a7Smrg ;; 841692f60a7Smrg news | news700 | news800 | news900) 842692f60a7Smrg basic_machine=m68k-sony 843692f60a7Smrg os=-newsos 844692f60a7Smrg ;; 845692f60a7Smrg news1000) 846692f60a7Smrg basic_machine=m68030-sony 847692f60a7Smrg os=-newsos 848692f60a7Smrg ;; 849692f60a7Smrg news-3600 | risc-news) 850692f60a7Smrg basic_machine=mips-sony 851692f60a7Smrg os=-newsos 852692f60a7Smrg ;; 853692f60a7Smrg necv70) 854692f60a7Smrg basic_machine=v70-nec 855692f60a7Smrg os=-sysv 856692f60a7Smrg ;; 857692f60a7Smrg next | m*-next ) 858692f60a7Smrg basic_machine=m68k-next 859692f60a7Smrg case $os in 860692f60a7Smrg -nextstep* ) 861692f60a7Smrg ;; 862692f60a7Smrg -ns2*) 863692f60a7Smrg os=-nextstep2 864692f60a7Smrg ;; 865692f60a7Smrg *) 866692f60a7Smrg os=-nextstep3 867692f60a7Smrg ;; 868692f60a7Smrg esac 869692f60a7Smrg ;; 870692f60a7Smrg nh3000) 871692f60a7Smrg basic_machine=m68k-harris 872692f60a7Smrg os=-cxux 873692f60a7Smrg ;; 874692f60a7Smrg nh[45]000) 875692f60a7Smrg basic_machine=m88k-harris 876692f60a7Smrg os=-cxux 877692f60a7Smrg ;; 878692f60a7Smrg nindy960) 879692f60a7Smrg basic_machine=i960-intel 880692f60a7Smrg os=-nindy 881692f60a7Smrg ;; 882692f60a7Smrg mon960) 883692f60a7Smrg basic_machine=i960-intel 884692f60a7Smrg os=-mon960 885692f60a7Smrg ;; 886692f60a7Smrg nonstopux) 887692f60a7Smrg basic_machine=mips-compaq 888692f60a7Smrg os=-nonstopux 889692f60a7Smrg ;; 890692f60a7Smrg np1) 891692f60a7Smrg basic_machine=np1-gould 892692f60a7Smrg ;; 8933f6d0e1dSmrg neo-tandem) 8943f6d0e1dSmrg basic_machine=neo-tandem 8953f6d0e1dSmrg ;; 8963f6d0e1dSmrg nse-tandem) 8973f6d0e1dSmrg basic_machine=nse-tandem 8983f6d0e1dSmrg ;; 899692f60a7Smrg nsr-tandem) 900692f60a7Smrg basic_machine=nsr-tandem 901692f60a7Smrg ;; 902692f60a7Smrg op50n-* | op60c-*) 903692f60a7Smrg basic_machine=hppa1.1-oki 904692f60a7Smrg os=-proelf 905692f60a7Smrg ;; 90654569438Smrg openrisc | openrisc-*) 907692f60a7Smrg basic_machine=or32-unknown 90854569438Smrg ;; 90954569438Smrg os400) 91054569438Smrg basic_machine=powerpc-ibm 91154569438Smrg os=-os400 912692f60a7Smrg ;; 913692f60a7Smrg OSE68000 | ose68000) 914692f60a7Smrg basic_machine=m68000-ericsson 915692f60a7Smrg os=-ose 916692f60a7Smrg ;; 917692f60a7Smrg os68k) 918692f60a7Smrg basic_machine=m68k-none 919692f60a7Smrg os=-os68k 920692f60a7Smrg ;; 921692f60a7Smrg pa-hitachi) 922692f60a7Smrg basic_machine=hppa1.1-hitachi 923692f60a7Smrg os=-hiuxwe2 924692f60a7Smrg ;; 925692f60a7Smrg paragon) 926692f60a7Smrg basic_machine=i860-intel 927692f60a7Smrg os=-osf 928692f60a7Smrg ;; 92954569438Smrg parisc) 93054569438Smrg basic_machine=hppa-unknown 93154569438Smrg os=-linux 93254569438Smrg ;; 93354569438Smrg parisc-*) 93454569438Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 93554569438Smrg os=-linux 93654569438Smrg ;; 937692f60a7Smrg pbd) 938692f60a7Smrg basic_machine=sparc-tti 939692f60a7Smrg ;; 940692f60a7Smrg pbb) 941692f60a7Smrg basic_machine=m68k-tti 942692f60a7Smrg ;; 943692f60a7Smrg pc532 | pc532-*) 944692f60a7Smrg basic_machine=ns32k-pc532 945692f60a7Smrg ;; 94654569438Smrg pc98) 94754569438Smrg basic_machine=i386-pc 94854569438Smrg ;; 94954569438Smrg pc98-*) 95054569438Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 95154569438Smrg ;; 952692f60a7Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 953692f60a7Smrg basic_machine=i586-pc 954692f60a7Smrg ;; 955692f60a7Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 956692f60a7Smrg basic_machine=i686-pc 957692f60a7Smrg ;; 958692f60a7Smrg pentiumii | pentium2 | pentiumiii | pentium3) 959692f60a7Smrg basic_machine=i686-pc 960692f60a7Smrg ;; 961692f60a7Smrg pentium4) 962692f60a7Smrg basic_machine=i786-pc 963692f60a7Smrg ;; 964692f60a7Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 965692f60a7Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 966692f60a7Smrg ;; 967692f60a7Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 968692f60a7Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 969692f60a7Smrg ;; 970692f60a7Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 971692f60a7Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 972692f60a7Smrg ;; 973692f60a7Smrg pentium4-*) 974692f60a7Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 975692f60a7Smrg ;; 976692f60a7Smrg pn) 977692f60a7Smrg basic_machine=pn-gould 978692f60a7Smrg ;; 979692f60a7Smrg power) basic_machine=power-ibm 980692f60a7Smrg ;; 9813f6d0e1dSmrg ppc | ppcbe) basic_machine=powerpc-unknown 982692f60a7Smrg ;; 9833f6d0e1dSmrg ppc-* | ppcbe-*) 9843f6d0e1dSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 985692f60a7Smrg ;; 986692f60a7Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 987692f60a7Smrg basic_machine=powerpcle-unknown 988692f60a7Smrg ;; 989692f60a7Smrg ppcle-* | powerpclittle-*) 990692f60a7Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 991692f60a7Smrg ;; 992692f60a7Smrg ppc64) basic_machine=powerpc64-unknown 993692f60a7Smrg ;; 994692f60a7Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 995692f60a7Smrg ;; 996692f60a7Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 997692f60a7Smrg basic_machine=powerpc64le-unknown 998692f60a7Smrg ;; 999692f60a7Smrg ppc64le-* | powerpc64little-*) 1000692f60a7Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1001692f60a7Smrg ;; 1002692f60a7Smrg ps2) 1003692f60a7Smrg basic_machine=i386-ibm 1004692f60a7Smrg ;; 1005692f60a7Smrg pw32) 1006692f60a7Smrg basic_machine=i586-unknown 1007692f60a7Smrg os=-pw32 1008692f60a7Smrg ;; 100954569438Smrg rdos) 101054569438Smrg basic_machine=i386-pc 101154569438Smrg os=-rdos 101254569438Smrg ;; 1013692f60a7Smrg rom68k) 1014692f60a7Smrg basic_machine=m68k-rom68k 1015692f60a7Smrg os=-coff 1016692f60a7Smrg ;; 1017692f60a7Smrg rm[46]00) 1018692f60a7Smrg basic_machine=mips-siemens 1019692f60a7Smrg ;; 1020692f60a7Smrg rtpc | rtpc-*) 1021692f60a7Smrg basic_machine=romp-ibm 1022692f60a7Smrg ;; 102354569438Smrg s390 | s390-*) 102454569438Smrg basic_machine=s390-ibm 102554569438Smrg ;; 102654569438Smrg s390x | s390x-*) 102754569438Smrg basic_machine=s390x-ibm 102854569438Smrg ;; 1029692f60a7Smrg sa29200) 1030692f60a7Smrg basic_machine=a29k-amd 1031692f60a7Smrg os=-udi 1032692f60a7Smrg ;; 1033692f60a7Smrg sb1) 1034692f60a7Smrg basic_machine=mipsisa64sb1-unknown 1035692f60a7Smrg ;; 1036692f60a7Smrg sb1el) 1037692f60a7Smrg basic_machine=mipsisa64sb1el-unknown 1038692f60a7Smrg ;; 103954569438Smrg sde) 104054569438Smrg basic_machine=mipsisa32-sde 104154569438Smrg os=-elf 104254569438Smrg ;; 1043692f60a7Smrg sei) 1044692f60a7Smrg basic_machine=mips-sei 1045692f60a7Smrg os=-seiux 1046692f60a7Smrg ;; 1047692f60a7Smrg sequent) 1048692f60a7Smrg basic_machine=i386-sequent 1049692f60a7Smrg ;; 1050692f60a7Smrg sh) 1051692f60a7Smrg basic_machine=sh-hitachi 1052692f60a7Smrg os=-hms 1053692f60a7Smrg ;; 105454569438Smrg sh5el) 105554569438Smrg basic_machine=sh5le-unknown 105654569438Smrg ;; 1057692f60a7Smrg sh64) 1058692f60a7Smrg basic_machine=sh64-unknown 1059692f60a7Smrg ;; 1060692f60a7Smrg sparclite-wrs | simso-wrs) 1061692f60a7Smrg basic_machine=sparclite-wrs 1062692f60a7Smrg os=-vxworks 1063692f60a7Smrg ;; 1064692f60a7Smrg sps7) 1065692f60a7Smrg basic_machine=m68k-bull 1066692f60a7Smrg os=-sysv2 1067692f60a7Smrg ;; 1068692f60a7Smrg spur) 1069692f60a7Smrg basic_machine=spur-unknown 1070692f60a7Smrg ;; 1071692f60a7Smrg st2000) 1072692f60a7Smrg basic_machine=m68k-tandem 1073692f60a7Smrg ;; 1074692f60a7Smrg stratus) 1075692f60a7Smrg basic_machine=i860-stratus 1076692f60a7Smrg os=-sysv4 1077692f60a7Smrg ;; 10783f6d0e1dSmrg strongarm-* | thumb-*) 10793f6d0e1dSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 10803f6d0e1dSmrg ;; 1081692f60a7Smrg sun2) 1082692f60a7Smrg basic_machine=m68000-sun 1083692f60a7Smrg ;; 1084692f60a7Smrg sun2os3) 1085692f60a7Smrg basic_machine=m68000-sun 1086692f60a7Smrg os=-sunos3 1087692f60a7Smrg ;; 1088692f60a7Smrg sun2os4) 1089692f60a7Smrg basic_machine=m68000-sun 1090692f60a7Smrg os=-sunos4 1091692f60a7Smrg ;; 1092692f60a7Smrg sun3os3) 1093692f60a7Smrg basic_machine=m68k-sun 1094692f60a7Smrg os=-sunos3 1095692f60a7Smrg ;; 1096692f60a7Smrg sun3os4) 1097692f60a7Smrg basic_machine=m68k-sun 1098692f60a7Smrg os=-sunos4 1099692f60a7Smrg ;; 1100692f60a7Smrg sun4os3) 1101692f60a7Smrg basic_machine=sparc-sun 1102692f60a7Smrg os=-sunos3 1103692f60a7Smrg ;; 1104692f60a7Smrg sun4os4) 1105692f60a7Smrg basic_machine=sparc-sun 1106692f60a7Smrg os=-sunos4 1107692f60a7Smrg ;; 1108692f60a7Smrg sun4sol2) 1109692f60a7Smrg basic_machine=sparc-sun 1110692f60a7Smrg os=-solaris2 1111692f60a7Smrg ;; 1112692f60a7Smrg sun3 | sun3-*) 1113692f60a7Smrg basic_machine=m68k-sun 1114692f60a7Smrg ;; 1115692f60a7Smrg sun4) 1116692f60a7Smrg basic_machine=sparc-sun 1117692f60a7Smrg ;; 1118692f60a7Smrg sun386 | sun386i | roadrunner) 1119692f60a7Smrg basic_machine=i386-sun 1120692f60a7Smrg ;; 1121692f60a7Smrg sv1) 1122692f60a7Smrg basic_machine=sv1-cray 1123692f60a7Smrg os=-unicos 1124692f60a7Smrg ;; 1125692f60a7Smrg symmetry) 1126692f60a7Smrg basic_machine=i386-sequent 1127692f60a7Smrg os=-dynix 1128692f60a7Smrg ;; 1129692f60a7Smrg t3e) 1130692f60a7Smrg basic_machine=alphaev5-cray 1131692f60a7Smrg os=-unicos 1132692f60a7Smrg ;; 1133692f60a7Smrg t90) 1134692f60a7Smrg basic_machine=t90-cray 1135692f60a7Smrg os=-unicos 1136692f60a7Smrg ;; 113754569438Smrg tile*) 11383f6d0e1dSmrg basic_machine=$basic_machine-unknown 113954569438Smrg os=-linux-gnu 114054569438Smrg ;; 1141692f60a7Smrg tx39) 1142692f60a7Smrg basic_machine=mipstx39-unknown 1143692f60a7Smrg ;; 1144692f60a7Smrg tx39el) 1145692f60a7Smrg basic_machine=mipstx39el-unknown 1146692f60a7Smrg ;; 1147692f60a7Smrg toad1) 1148692f60a7Smrg basic_machine=pdp10-xkl 1149692f60a7Smrg os=-tops20 1150692f60a7Smrg ;; 1151692f60a7Smrg tower | tower-32) 1152692f60a7Smrg basic_machine=m68k-ncr 1153692f60a7Smrg ;; 115454569438Smrg tpf) 115554569438Smrg basic_machine=s390x-ibm 115654569438Smrg os=-tpf 115754569438Smrg ;; 1158692f60a7Smrg udi29k) 1159692f60a7Smrg basic_machine=a29k-amd 1160692f60a7Smrg os=-udi 1161692f60a7Smrg ;; 1162692f60a7Smrg ultra3) 1163692f60a7Smrg basic_machine=a29k-nyu 1164692f60a7Smrg os=-sym1 1165692f60a7Smrg ;; 1166692f60a7Smrg v810 | necv810) 1167692f60a7Smrg basic_machine=v810-nec 1168692f60a7Smrg os=-none 1169692f60a7Smrg ;; 1170692f60a7Smrg vaxv) 1171692f60a7Smrg basic_machine=vax-dec 1172692f60a7Smrg os=-sysv 1173692f60a7Smrg ;; 1174692f60a7Smrg vms) 1175692f60a7Smrg basic_machine=vax-dec 1176692f60a7Smrg os=-vms 1177692f60a7Smrg ;; 1178692f60a7Smrg vpp*|vx|vx-*) 1179692f60a7Smrg basic_machine=f301-fujitsu 1180692f60a7Smrg ;; 1181692f60a7Smrg vxworks960) 1182692f60a7Smrg basic_machine=i960-wrs 1183692f60a7Smrg os=-vxworks 1184692f60a7Smrg ;; 1185692f60a7Smrg vxworks68) 1186692f60a7Smrg basic_machine=m68k-wrs 1187692f60a7Smrg os=-vxworks 1188692f60a7Smrg ;; 1189692f60a7Smrg vxworks29k) 1190692f60a7Smrg basic_machine=a29k-wrs 1191692f60a7Smrg os=-vxworks 1192692f60a7Smrg ;; 1193692f60a7Smrg w65*) 1194692f60a7Smrg basic_machine=w65-wdc 1195692f60a7Smrg os=-none 1196692f60a7Smrg ;; 1197692f60a7Smrg w89k-*) 1198692f60a7Smrg basic_machine=hppa1.1-winbond 1199692f60a7Smrg os=-proelf 1200692f60a7Smrg ;; 120154569438Smrg xbox) 120254569438Smrg basic_machine=i686-pc 120354569438Smrg os=-mingw32 120454569438Smrg ;; 1205692f60a7Smrg xps | xps100) 1206692f60a7Smrg basic_machine=xps100-honeywell 1207692f60a7Smrg ;; 12083f6d0e1dSmrg xscale-* | xscalee[bl]-*) 12093f6d0e1dSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 12103f6d0e1dSmrg ;; 1211692f60a7Smrg ymp) 1212692f60a7Smrg basic_machine=ymp-cray 1213692f60a7Smrg os=-unicos 1214692f60a7Smrg ;; 1215692f60a7Smrg z8k-*-coff) 1216692f60a7Smrg basic_machine=z8k-unknown 1217692f60a7Smrg os=-sim 1218692f60a7Smrg ;; 12193f6d0e1dSmrg z80-*-coff) 12203f6d0e1dSmrg basic_machine=z80-unknown 12213f6d0e1dSmrg os=-sim 12223f6d0e1dSmrg ;; 1223692f60a7Smrg none) 1224692f60a7Smrg basic_machine=none-none 1225692f60a7Smrg os=-none 1226692f60a7Smrg ;; 1227692f60a7Smrg 1228692f60a7Smrg# Here we handle the default manufacturer of certain CPU types. It is in 1229692f60a7Smrg# some cases the only manufacturer, in others, it is the most popular. 1230692f60a7Smrg w89k) 1231692f60a7Smrg basic_machine=hppa1.1-winbond 1232692f60a7Smrg ;; 1233692f60a7Smrg op50n) 1234692f60a7Smrg basic_machine=hppa1.1-oki 1235692f60a7Smrg ;; 1236692f60a7Smrg op60c) 1237692f60a7Smrg basic_machine=hppa1.1-oki 1238692f60a7Smrg ;; 1239692f60a7Smrg romp) 1240692f60a7Smrg basic_machine=romp-ibm 1241692f60a7Smrg ;; 124254569438Smrg mmix) 124354569438Smrg basic_machine=mmix-knuth 124454569438Smrg ;; 1245692f60a7Smrg rs6000) 1246692f60a7Smrg basic_machine=rs6000-ibm 1247692f60a7Smrg ;; 1248692f60a7Smrg vax) 1249692f60a7Smrg basic_machine=vax-dec 1250692f60a7Smrg ;; 1251692f60a7Smrg pdp10) 1252692f60a7Smrg # there are many clones, so DEC is not a safe bet 1253692f60a7Smrg basic_machine=pdp10-unknown 1254692f60a7Smrg ;; 1255692f60a7Smrg pdp11) 1256692f60a7Smrg basic_machine=pdp11-dec 1257692f60a7Smrg ;; 1258692f60a7Smrg we32k) 1259692f60a7Smrg basic_machine=we32k-att 1260692f60a7Smrg ;; 12613f6d0e1dSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1262692f60a7Smrg basic_machine=sh-unknown 1263692f60a7Smrg ;; 126454569438Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1265692f60a7Smrg basic_machine=sparc-sun 1266692f60a7Smrg ;; 1267692f60a7Smrg cydra) 1268692f60a7Smrg basic_machine=cydra-cydrome 1269692f60a7Smrg ;; 1270692f60a7Smrg orion) 1271692f60a7Smrg basic_machine=orion-highlevel 1272692f60a7Smrg ;; 1273692f60a7Smrg orion105) 1274692f60a7Smrg basic_machine=clipper-highlevel 1275692f60a7Smrg ;; 1276692f60a7Smrg mac | mpw | mac-mpw) 1277692f60a7Smrg basic_machine=m68k-apple 1278692f60a7Smrg ;; 1279692f60a7Smrg pmac | pmac-mpw) 1280692f60a7Smrg basic_machine=powerpc-apple 1281692f60a7Smrg ;; 1282692f60a7Smrg *-unknown) 1283692f60a7Smrg # Make sure to match an already-canonicalized machine name. 1284692f60a7Smrg ;; 1285692f60a7Smrg *) 1286692f60a7Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1287692f60a7Smrg exit 1 1288692f60a7Smrg ;; 1289692f60a7Smrgesac 1290692f60a7Smrg 1291692f60a7Smrg# Here we canonicalize certain aliases for manufacturers. 1292692f60a7Smrgcase $basic_machine in 1293692f60a7Smrg *-digital*) 1294692f60a7Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1295692f60a7Smrg ;; 1296692f60a7Smrg *-commodore*) 1297692f60a7Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1298692f60a7Smrg ;; 1299692f60a7Smrg *) 1300692f60a7Smrg ;; 1301692f60a7Smrgesac 1302692f60a7Smrg 1303692f60a7Smrg# Decode manufacturer-specific aliases for certain operating systems. 1304692f60a7Smrg 1305692f60a7Smrgif [ x"$os" != x"" ] 1306692f60a7Smrgthen 1307692f60a7Smrgcase $os in 13083f6d0e1dSmrg # First match some system type aliases 13093f6d0e1dSmrg # that might get confused with valid system types. 1310692f60a7Smrg # -solaris* is a basic system type, with this one exception. 13113f6d0e1dSmrg -auroraux) 13123f6d0e1dSmrg os=-auroraux 13133f6d0e1dSmrg ;; 1314692f60a7Smrg -solaris1 | -solaris1.*) 1315692f60a7Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1316692f60a7Smrg ;; 1317692f60a7Smrg -solaris) 1318692f60a7Smrg os=-solaris2 1319692f60a7Smrg ;; 1320692f60a7Smrg -svr4*) 1321692f60a7Smrg os=-sysv4 1322692f60a7Smrg ;; 1323692f60a7Smrg -unixware*) 1324692f60a7Smrg os=-sysv4.2uw 1325692f60a7Smrg ;; 1326692f60a7Smrg -gnu/linux*) 1327692f60a7Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1328692f60a7Smrg ;; 1329692f60a7Smrg # First accept the basic system types. 1330692f60a7Smrg # The portable systems comes first. 1331692f60a7Smrg # Each alternative MUST END IN A *, to match a version number. 1332692f60a7Smrg # -sysv* is not here because it comes later, after sysvr4. 1333692f60a7Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13343f6d0e1dSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13353f6d0e1dSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13363f6d0e1dSmrg | -sym* | -kopensolaris* \ 1337692f60a7Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13383f6d0e1dSmrg | -aos* | -aros* \ 1339692f60a7Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1340692f60a7Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 134154569438Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 134254569438Smrg | -openbsd* | -solidbsd* \ 134354569438Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 134454569438Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1345692f60a7Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1346692f60a7Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13473f6d0e1dSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 13483f6d0e1dSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13493f6d0e1dSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 13503f6d0e1dSmrg | -linux-newlib* | -linux-uclibc* \ 135154569438Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1352692f60a7Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1353692f60a7Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1354692f60a7Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1355692f60a7Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1356692f60a7Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 135754569438Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13583f6d0e1dSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1359692f60a7Smrg # Remember, each alternative MUST END IN *, to match a version number. 1360692f60a7Smrg ;; 1361692f60a7Smrg -qnx*) 1362692f60a7Smrg case $basic_machine in 1363692f60a7Smrg x86-* | i*86-*) 1364692f60a7Smrg ;; 1365692f60a7Smrg *) 1366692f60a7Smrg os=-nto$os 1367692f60a7Smrg ;; 1368692f60a7Smrg esac 1369692f60a7Smrg ;; 1370692f60a7Smrg -nto-qnx*) 1371692f60a7Smrg ;; 1372692f60a7Smrg -nto*) 1373692f60a7Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1374692f60a7Smrg ;; 1375692f60a7Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 137654569438Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1377692f60a7Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1378692f60a7Smrg ;; 1379692f60a7Smrg -mac*) 1380692f60a7Smrg os=`echo $os | sed -e 's|mac|macos|'` 1381692f60a7Smrg ;; 138254569438Smrg -linux-dietlibc) 138354569438Smrg os=-linux-dietlibc 138454569438Smrg ;; 1385692f60a7Smrg -linux*) 1386692f60a7Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1387692f60a7Smrg ;; 1388692f60a7Smrg -sunos5*) 1389692f60a7Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1390692f60a7Smrg ;; 1391692f60a7Smrg -sunos6*) 1392692f60a7Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1393692f60a7Smrg ;; 1394692f60a7Smrg -opened*) 1395692f60a7Smrg os=-openedition 1396692f60a7Smrg ;; 13973f6d0e1dSmrg -os400*) 139854569438Smrg os=-os400 139954569438Smrg ;; 1400692f60a7Smrg -wince*) 1401692f60a7Smrg os=-wince 1402692f60a7Smrg ;; 1403692f60a7Smrg -osfrose*) 1404692f60a7Smrg os=-osfrose 1405692f60a7Smrg ;; 1406692f60a7Smrg -osf*) 1407692f60a7Smrg os=-osf 1408692f60a7Smrg ;; 1409692f60a7Smrg -utek*) 1410692f60a7Smrg os=-bsd 1411692f60a7Smrg ;; 1412692f60a7Smrg -dynix*) 1413692f60a7Smrg os=-bsd 1414692f60a7Smrg ;; 1415692f60a7Smrg -acis*) 1416692f60a7Smrg os=-aos 1417692f60a7Smrg ;; 1418692f60a7Smrg -atheos*) 1419692f60a7Smrg os=-atheos 1420692f60a7Smrg ;; 142154569438Smrg -syllable*) 142254569438Smrg os=-syllable 142354569438Smrg ;; 1424692f60a7Smrg -386bsd) 1425692f60a7Smrg os=-bsd 1426692f60a7Smrg ;; 1427692f60a7Smrg -ctix* | -uts*) 1428692f60a7Smrg os=-sysv 1429692f60a7Smrg ;; 1430692f60a7Smrg -nova*) 1431692f60a7Smrg os=-rtmk-nova 1432692f60a7Smrg ;; 1433692f60a7Smrg -ns2 ) 1434692f60a7Smrg os=-nextstep2 1435692f60a7Smrg ;; 1436692f60a7Smrg -nsk*) 1437692f60a7Smrg os=-nsk 1438692f60a7Smrg ;; 1439692f60a7Smrg # Preserve the version number of sinix5. 1440692f60a7Smrg -sinix5.*) 1441692f60a7Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 1442692f60a7Smrg ;; 1443692f60a7Smrg -sinix*) 1444692f60a7Smrg os=-sysv4 1445692f60a7Smrg ;; 14463f6d0e1dSmrg -tpf*) 144754569438Smrg os=-tpf 144854569438Smrg ;; 1449692f60a7Smrg -triton*) 1450692f60a7Smrg os=-sysv3 1451692f60a7Smrg ;; 1452692f60a7Smrg -oss*) 1453692f60a7Smrg os=-sysv3 1454692f60a7Smrg ;; 1455692f60a7Smrg -svr4) 1456692f60a7Smrg os=-sysv4 1457692f60a7Smrg ;; 1458692f60a7Smrg -svr3) 1459692f60a7Smrg os=-sysv3 1460692f60a7Smrg ;; 1461692f60a7Smrg -sysvr4) 1462692f60a7Smrg os=-sysv4 1463692f60a7Smrg ;; 1464692f60a7Smrg # This must come after -sysvr4. 1465692f60a7Smrg -sysv*) 1466692f60a7Smrg ;; 1467692f60a7Smrg -ose*) 1468692f60a7Smrg os=-ose 1469692f60a7Smrg ;; 1470692f60a7Smrg -es1800*) 1471692f60a7Smrg os=-ose 1472692f60a7Smrg ;; 1473692f60a7Smrg -xenix) 1474692f60a7Smrg os=-xenix 1475692f60a7Smrg ;; 1476692f60a7Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1477692f60a7Smrg os=-mint 1478692f60a7Smrg ;; 1479692f60a7Smrg -aros*) 1480692f60a7Smrg os=-aros 1481692f60a7Smrg ;; 1482692f60a7Smrg -kaos*) 1483692f60a7Smrg os=-kaos 1484692f60a7Smrg ;; 148554569438Smrg -zvmoe) 148654569438Smrg os=-zvmoe 148754569438Smrg ;; 14883f6d0e1dSmrg -dicos*) 14893f6d0e1dSmrg os=-dicos 14903f6d0e1dSmrg ;; 14913f6d0e1dSmrg -nacl*) 14923f6d0e1dSmrg ;; 1493692f60a7Smrg -none) 1494692f60a7Smrg ;; 1495692f60a7Smrg *) 1496692f60a7Smrg # Get rid of the `-' at the beginning of $os. 1497692f60a7Smrg os=`echo $os | sed 's/[^-]*-//'` 1498692f60a7Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1499692f60a7Smrg exit 1 1500692f60a7Smrg ;; 1501692f60a7Smrgesac 1502692f60a7Smrgelse 1503692f60a7Smrg 1504692f60a7Smrg# Here we handle the default operating systems that come with various machines. 1505692f60a7Smrg# The value should be what the vendor currently ships out the door with their 1506692f60a7Smrg# machine or put another way, the most popular os provided with the machine. 1507692f60a7Smrg 1508692f60a7Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1509692f60a7Smrg# "-sun"), then you have to tell the case statement up towards the top 1510692f60a7Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1511692f60a7Smrg# will signal an error saying that MANUFACTURER isn't an operating 1512692f60a7Smrg# system, and we'll never get to this point. 1513692f60a7Smrg 1514692f60a7Smrgcase $basic_machine in 15153f6d0e1dSmrg score-*) 151654569438Smrg os=-elf 151754569438Smrg ;; 15183f6d0e1dSmrg spu-*) 151954569438Smrg os=-elf 152054569438Smrg ;; 1521692f60a7Smrg *-acorn) 1522692f60a7Smrg os=-riscix1.2 1523692f60a7Smrg ;; 1524692f60a7Smrg arm*-rebel) 1525692f60a7Smrg os=-linux 1526692f60a7Smrg ;; 1527692f60a7Smrg arm*-semi) 1528692f60a7Smrg os=-aout 1529692f60a7Smrg ;; 15303f6d0e1dSmrg c4x-* | tic4x-*) 15313f6d0e1dSmrg os=-coff 15323f6d0e1dSmrg ;; 15333f6d0e1dSmrg tic54x-*) 15343f6d0e1dSmrg os=-coff 15353f6d0e1dSmrg ;; 15363f6d0e1dSmrg tic55x-*) 15373f6d0e1dSmrg os=-coff 15383f6d0e1dSmrg ;; 15393f6d0e1dSmrg tic6x-*) 15403f6d0e1dSmrg os=-coff 1541692f60a7Smrg ;; 1542692f60a7Smrg # This must come before the *-dec entry. 1543692f60a7Smrg pdp10-*) 1544692f60a7Smrg os=-tops20 1545692f60a7Smrg ;; 1546692f60a7Smrg pdp11-*) 1547692f60a7Smrg os=-none 1548692f60a7Smrg ;; 1549692f60a7Smrg *-dec | vax-*) 1550692f60a7Smrg os=-ultrix4.2 1551692f60a7Smrg ;; 1552692f60a7Smrg m68*-apollo) 1553692f60a7Smrg os=-domain 1554692f60a7Smrg ;; 1555692f60a7Smrg i386-sun) 1556692f60a7Smrg os=-sunos4.0.2 1557692f60a7Smrg ;; 1558692f60a7Smrg m68000-sun) 1559692f60a7Smrg os=-sunos3 1560692f60a7Smrg ;; 1561692f60a7Smrg m68*-cisco) 1562692f60a7Smrg os=-aout 1563692f60a7Smrg ;; 15643f6d0e1dSmrg mep-*) 156554569438Smrg os=-elf 156654569438Smrg ;; 1567692f60a7Smrg mips*-cisco) 1568692f60a7Smrg os=-elf 1569692f60a7Smrg ;; 1570692f60a7Smrg mips*-*) 1571692f60a7Smrg os=-elf 1572692f60a7Smrg ;; 1573692f60a7Smrg or32-*) 1574692f60a7Smrg os=-coff 1575692f60a7Smrg ;; 1576692f60a7Smrg *-tti) # must be before sparc entry or we get the wrong os. 1577692f60a7Smrg os=-sysv3 1578692f60a7Smrg ;; 1579692f60a7Smrg sparc-* | *-sun) 1580692f60a7Smrg os=-sunos4.1.1 1581692f60a7Smrg ;; 1582692f60a7Smrg *-be) 1583692f60a7Smrg os=-beos 1584692f60a7Smrg ;; 158554569438Smrg *-haiku) 158654569438Smrg os=-haiku 158754569438Smrg ;; 1588692f60a7Smrg *-ibm) 1589692f60a7Smrg os=-aix 1590692f60a7Smrg ;; 15913f6d0e1dSmrg *-knuth) 159254569438Smrg os=-mmixware 159354569438Smrg ;; 1594692f60a7Smrg *-wec) 1595692f60a7Smrg os=-proelf 1596692f60a7Smrg ;; 1597692f60a7Smrg *-winbond) 1598692f60a7Smrg os=-proelf 1599692f60a7Smrg ;; 1600692f60a7Smrg *-oki) 1601692f60a7Smrg os=-proelf 1602692f60a7Smrg ;; 1603692f60a7Smrg *-hp) 1604692f60a7Smrg os=-hpux 1605692f60a7Smrg ;; 1606692f60a7Smrg *-hitachi) 1607692f60a7Smrg os=-hiux 1608692f60a7Smrg ;; 1609692f60a7Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1610692f60a7Smrg os=-sysv 1611692f60a7Smrg ;; 1612692f60a7Smrg *-cbm) 1613692f60a7Smrg os=-amigaos 1614692f60a7Smrg ;; 1615692f60a7Smrg *-dg) 1616692f60a7Smrg os=-dgux 1617692f60a7Smrg ;; 1618692f60a7Smrg *-dolphin) 1619692f60a7Smrg os=-sysv3 1620692f60a7Smrg ;; 1621692f60a7Smrg m68k-ccur) 1622692f60a7Smrg os=-rtu 1623692f60a7Smrg ;; 1624692f60a7Smrg m88k-omron*) 1625692f60a7Smrg os=-luna 1626692f60a7Smrg ;; 1627692f60a7Smrg *-next ) 1628692f60a7Smrg os=-nextstep 1629692f60a7Smrg ;; 1630692f60a7Smrg *-sequent) 1631692f60a7Smrg os=-ptx 1632692f60a7Smrg ;; 1633692f60a7Smrg *-crds) 1634692f60a7Smrg os=-unos 1635692f60a7Smrg ;; 1636692f60a7Smrg *-ns) 1637692f60a7Smrg os=-genix 1638692f60a7Smrg ;; 1639692f60a7Smrg i370-*) 1640692f60a7Smrg os=-mvs 1641692f60a7Smrg ;; 1642692f60a7Smrg *-next) 1643692f60a7Smrg os=-nextstep3 1644692f60a7Smrg ;; 1645692f60a7Smrg *-gould) 1646692f60a7Smrg os=-sysv 1647692f60a7Smrg ;; 1648692f60a7Smrg *-highlevel) 1649692f60a7Smrg os=-bsd 1650692f60a7Smrg ;; 1651692f60a7Smrg *-encore) 1652692f60a7Smrg os=-bsd 1653692f60a7Smrg ;; 1654692f60a7Smrg *-sgi) 1655692f60a7Smrg os=-irix 1656692f60a7Smrg ;; 1657692f60a7Smrg *-siemens) 1658692f60a7Smrg os=-sysv4 1659692f60a7Smrg ;; 1660692f60a7Smrg *-masscomp) 1661692f60a7Smrg os=-rtu 1662692f60a7Smrg ;; 1663692f60a7Smrg f30[01]-fujitsu | f700-fujitsu) 1664692f60a7Smrg os=-uxpv 1665692f60a7Smrg ;; 1666692f60a7Smrg *-rom68k) 1667692f60a7Smrg os=-coff 1668692f60a7Smrg ;; 1669692f60a7Smrg *-*bug) 1670692f60a7Smrg os=-coff 1671692f60a7Smrg ;; 1672692f60a7Smrg *-apple) 1673692f60a7Smrg os=-macos 1674692f60a7Smrg ;; 1675692f60a7Smrg *-atari*) 1676692f60a7Smrg os=-mint 1677692f60a7Smrg ;; 1678692f60a7Smrg *) 1679692f60a7Smrg os=-none 1680692f60a7Smrg ;; 1681692f60a7Smrgesac 1682692f60a7Smrgfi 1683692f60a7Smrg 1684692f60a7Smrg# Here we handle the case where we know the os, and the CPU type, but not the 1685692f60a7Smrg# manufacturer. We pick the logical manufacturer. 1686692f60a7Smrgvendor=unknown 1687692f60a7Smrgcase $basic_machine in 1688692f60a7Smrg *-unknown) 1689692f60a7Smrg case $os in 1690692f60a7Smrg -riscix*) 1691692f60a7Smrg vendor=acorn 1692692f60a7Smrg ;; 1693692f60a7Smrg -sunos*) 1694692f60a7Smrg vendor=sun 1695692f60a7Smrg ;; 16963f6d0e1dSmrg -cnk*|-aix*) 1697692f60a7Smrg vendor=ibm 1698692f60a7Smrg ;; 1699692f60a7Smrg -beos*) 1700692f60a7Smrg vendor=be 1701692f60a7Smrg ;; 1702692f60a7Smrg -hpux*) 1703692f60a7Smrg vendor=hp 1704692f60a7Smrg ;; 1705692f60a7Smrg -mpeix*) 1706692f60a7Smrg vendor=hp 1707692f60a7Smrg ;; 1708692f60a7Smrg -hiux*) 1709692f60a7Smrg vendor=hitachi 1710692f60a7Smrg ;; 1711692f60a7Smrg -unos*) 1712692f60a7Smrg vendor=crds 1713692f60a7Smrg ;; 1714692f60a7Smrg -dgux*) 1715692f60a7Smrg vendor=dg 1716692f60a7Smrg ;; 1717692f60a7Smrg -luna*) 1718692f60a7Smrg vendor=omron 1719692f60a7Smrg ;; 1720692f60a7Smrg -genix*) 1721692f60a7Smrg vendor=ns 1722692f60a7Smrg ;; 1723692f60a7Smrg -mvs* | -opened*) 1724692f60a7Smrg vendor=ibm 1725692f60a7Smrg ;; 172654569438Smrg -os400*) 172754569438Smrg vendor=ibm 172854569438Smrg ;; 1729692f60a7Smrg -ptx*) 1730692f60a7Smrg vendor=sequent 1731692f60a7Smrg ;; 173254569438Smrg -tpf*) 173354569438Smrg vendor=ibm 173454569438Smrg ;; 1735692f60a7Smrg -vxsim* | -vxworks* | -windiss*) 1736692f60a7Smrg vendor=wrs 1737692f60a7Smrg ;; 1738692f60a7Smrg -aux*) 1739692f60a7Smrg vendor=apple 1740692f60a7Smrg ;; 1741692f60a7Smrg -hms*) 1742692f60a7Smrg vendor=hitachi 1743692f60a7Smrg ;; 1744692f60a7Smrg -mpw* | -macos*) 1745692f60a7Smrg vendor=apple 1746692f60a7Smrg ;; 1747692f60a7Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1748692f60a7Smrg vendor=atari 1749692f60a7Smrg ;; 1750692f60a7Smrg -vos*) 1751692f60a7Smrg vendor=stratus 1752692f60a7Smrg ;; 1753692f60a7Smrg esac 1754692f60a7Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1755692f60a7Smrg ;; 1756692f60a7Smrgesac 1757692f60a7Smrg 1758692f60a7Smrgecho $basic_machine$os 175954569438Smrgexit 1760692f60a7Smrg 1761692f60a7Smrg# Local variables: 1762692f60a7Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1763692f60a7Smrg# time-stamp-start: "timestamp='" 1764692f60a7Smrg# time-stamp-format: "%:y-%02m-%02d" 1765692f60a7Smrg# time-stamp-end: "'" 1766692f60a7Smrg# End: 1767