config.sub revision 6dbd43aa
167f05d30Smrg#! /bin/sh 267f05d30Smrg# Configuration validation subroutine script. 367f05d30Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 46dbd43aaSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 56dbd43aaSmrg# 2011 Free Software Foundation, Inc. 667f05d30Smrg 76dbd43aaSmrgtimestamp='2011-11-11' 867f05d30Smrg 967f05d30Smrg# This file is (in principle) common to ALL GNU software. 1067f05d30Smrg# The presence of a machine in this file suggests that SOME GNU software 1167f05d30Smrg# can handle that machine. It does not imply ALL GNU software can. 1267f05d30Smrg# 1367f05d30Smrg# This file is free software; you can redistribute it and/or modify 1467f05d30Smrg# it under the terms of the GNU General Public License as published by 1567f05d30Smrg# the Free Software Foundation; either version 2 of the License, or 1667f05d30Smrg# (at your option) any later version. 1767f05d30Smrg# 1867f05d30Smrg# This program is distributed in the hope that it will be useful, 1967f05d30Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2067f05d30Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2167f05d30Smrg# GNU General Public License for more details. 2267f05d30Smrg# 2367f05d30Smrg# You should have received a copy of the GNU General Public License 2467f05d30Smrg# along with this program; if not, write to the Free Software 25fffe5102Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26fffe5102Smrg# 02110-1301, USA. 27fffe5102Smrg# 2867f05d30Smrg# As a special exception to the GNU General Public License, if you 2967f05d30Smrg# distribute this file as part of a program that contains a 3067f05d30Smrg# configuration script generated by Autoconf, you may include it under 3167f05d30Smrg# the same distribution terms that you use for the rest of that program. 3267f05d30Smrg 33fffe5102Smrg 3467f05d30Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 35fffe5102Smrg# diff and a properly formatted GNU ChangeLog entry. 3667f05d30Smrg# 3767f05d30Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3867f05d30Smrg# Supply the specified configuration type as an argument. 3967f05d30Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 4067f05d30Smrg# Otherwise, we print the canonical config type on stdout and succeed. 4167f05d30Smrg 42fffe5102Smrg# You can get the latest version of this script from: 43fffe5102Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44fffe5102Smrg 4567f05d30Smrg# This file is supposed to be the same for all GNU packages 4667f05d30Smrg# and recognize all the CPU types, system types and aliases 4767f05d30Smrg# that are meaningful with *any* GNU software. 4867f05d30Smrg# Each package is responsible for reporting which valid configurations 4967f05d30Smrg# it does not support. The user should be able to distinguish 5067f05d30Smrg# a failure to support a valid configuration from a meaningless 5167f05d30Smrg# configuration. 5267f05d30Smrg 5367f05d30Smrg# The goal of this file is to map all the various variations of a given 5467f05d30Smrg# machine specification into a single specification in the form: 5567f05d30Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5667f05d30Smrg# or in some cases, the newer four-part form: 5767f05d30Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5867f05d30Smrg# It is wrong to echo any other type of specification. 5967f05d30Smrg 6067f05d30Smrgme=`echo "$0" | sed -e 's,.*/,,'` 6167f05d30Smrg 6267f05d30Smrgusage="\ 6367f05d30SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6467f05d30Smrg $0 [OPTION] ALIAS 6567f05d30Smrg 6667f05d30SmrgCanonicalize a configuration name. 6767f05d30Smrg 6867f05d30SmrgOperation modes: 6967f05d30Smrg -h, --help print this help, then exit 7067f05d30Smrg -t, --time-stamp print date of last modification, then exit 7167f05d30Smrg -v, --version print version number, then exit 7267f05d30Smrg 7367f05d30SmrgReport bugs and patches to <config-patches@gnu.org>." 7467f05d30Smrg 7567f05d30Smrgversion="\ 7667f05d30SmrgGNU config.sub ($timestamp) 7767f05d30Smrg 78fc51f767SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 796dbd43aaSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free 80fc51f767SmrgSoftware Foundation, Inc. 8167f05d30Smrg 8267f05d30SmrgThis is free software; see the source for copying conditions. There is NO 8367f05d30Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8467f05d30Smrg 8567f05d30Smrghelp=" 8667f05d30SmrgTry \`$me --help' for more information." 8767f05d30Smrg 8867f05d30Smrg# Parse command line 8967f05d30Smrgwhile test $# -gt 0 ; do 9067f05d30Smrg case $1 in 9167f05d30Smrg --time-stamp | --time* | -t ) 92fffe5102Smrg echo "$timestamp" ; exit ;; 9367f05d30Smrg --version | -v ) 94fffe5102Smrg echo "$version" ; exit ;; 9567f05d30Smrg --help | --h* | -h ) 96fffe5102Smrg echo "$usage"; exit ;; 9767f05d30Smrg -- ) # Stop option processing 9867f05d30Smrg shift; break ;; 9967f05d30Smrg - ) # Use stdin as input. 10067f05d30Smrg break ;; 10167f05d30Smrg -* ) 10267f05d30Smrg echo "$me: invalid option $1$help" 10367f05d30Smrg exit 1 ;; 10467f05d30Smrg 10567f05d30Smrg *local*) 10667f05d30Smrg # First pass through any local machine types. 10767f05d30Smrg echo $1 108fffe5102Smrg exit ;; 10967f05d30Smrg 11067f05d30Smrg * ) 11167f05d30Smrg break ;; 11267f05d30Smrg esac 11367f05d30Smrgdone 11467f05d30Smrg 11567f05d30Smrgcase $# in 11667f05d30Smrg 0) echo "$me: missing argument$help" >&2 11767f05d30Smrg exit 1;; 11867f05d30Smrg 1) ;; 11967f05d30Smrg *) echo "$me: too many arguments$help" >&2 12067f05d30Smrg exit 1;; 12167f05d30Smrgesac 12267f05d30Smrg 12367f05d30Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12467f05d30Smrg# Here we must recognize all the valid KERNEL-OS combinations. 12567f05d30Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12667f05d30Smrgcase $maybe_os in 127fc51f767Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128fc51f767Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129fc51f767Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 130fffe5102Smrg kopensolaris*-gnu* | \ 131fffe5102Smrg storm-chaos* | os2-emx* | rtmk-nova*) 13267f05d30Smrg os=-$maybe_os 13367f05d30Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13467f05d30Smrg ;; 13567f05d30Smrg *) 13667f05d30Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13767f05d30Smrg if [ $basic_machine != $1 ] 13867f05d30Smrg then os=`echo $1 | sed 's/.*-/-/'` 13967f05d30Smrg else os=; fi 14067f05d30Smrg ;; 14167f05d30Smrgesac 14267f05d30Smrg 14367f05d30Smrg### Let's recognize common machines as not being operating systems so 14467f05d30Smrg### that things like config.sub decstation-3100 work. We also 14567f05d30Smrg### recognize some manufacturers as not being operating systems, so we 14667f05d30Smrg### can provide default operating systems below. 14767f05d30Smrgcase $os in 14867f05d30Smrg -sun*os*) 14967f05d30Smrg # Prevent following clause from handling this invalid input. 15067f05d30Smrg ;; 15167f05d30Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15267f05d30Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15367f05d30Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15467f05d30Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15567f05d30Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15667f05d30Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157fffe5102Smrg -apple | -axis | -knuth | -cray | -microblaze) 15867f05d30Smrg os= 15967f05d30Smrg basic_machine=$1 16067f05d30Smrg ;; 1616dbd43aaSmrg -bluegene*) 1626dbd43aaSmrg os=-cnk 163fffe5102Smrg ;; 16467f05d30Smrg -sim | -cisco | -oki | -wec | -winbond) 16567f05d30Smrg os= 16667f05d30Smrg basic_machine=$1 16767f05d30Smrg ;; 16867f05d30Smrg -scout) 16967f05d30Smrg ;; 17067f05d30Smrg -wrs) 17167f05d30Smrg os=-vxworks 17267f05d30Smrg basic_machine=$1 17367f05d30Smrg ;; 17467f05d30Smrg -chorusos*) 17567f05d30Smrg os=-chorusos 17667f05d30Smrg basic_machine=$1 17767f05d30Smrg ;; 1786dbd43aaSmrg -chorusrdb) 1796dbd43aaSmrg os=-chorusrdb 18067f05d30Smrg basic_machine=$1 1816dbd43aaSmrg ;; 18267f05d30Smrg -hiux*) 18367f05d30Smrg os=-hiuxwe2 18467f05d30Smrg ;; 185fffe5102Smrg -sco6) 186fffe5102Smrg os=-sco5v6 187fffe5102Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 188fffe5102Smrg ;; 18967f05d30Smrg -sco5) 19067f05d30Smrg os=-sco3.2v5 19167f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19267f05d30Smrg ;; 19367f05d30Smrg -sco4) 19467f05d30Smrg os=-sco3.2v4 19567f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19667f05d30Smrg ;; 19767f05d30Smrg -sco3.2.[4-9]*) 19867f05d30Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19967f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20067f05d30Smrg ;; 20167f05d30Smrg -sco3.2v[4-9]*) 20267f05d30Smrg # Don't forget version if it is 3.2v4 or newer. 20367f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20467f05d30Smrg ;; 205fffe5102Smrg -sco5v6*) 206fffe5102Smrg # Don't forget version if it is 3.2v4 or newer. 207fffe5102Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 208fffe5102Smrg ;; 20967f05d30Smrg -sco*) 21067f05d30Smrg os=-sco3.2v2 21167f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21267f05d30Smrg ;; 21367f05d30Smrg -udk*) 21467f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21567f05d30Smrg ;; 21667f05d30Smrg -isc) 21767f05d30Smrg os=-isc2.2 21867f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21967f05d30Smrg ;; 22067f05d30Smrg -clix*) 22167f05d30Smrg basic_machine=clipper-intergraph 22267f05d30Smrg ;; 22367f05d30Smrg -isc*) 22467f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22567f05d30Smrg ;; 22667f05d30Smrg -lynx*) 22767f05d30Smrg os=-lynxos 22867f05d30Smrg ;; 22967f05d30Smrg -ptx*) 23067f05d30Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23167f05d30Smrg ;; 23267f05d30Smrg -windowsnt*) 23367f05d30Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23467f05d30Smrg ;; 23567f05d30Smrg -psos*) 23667f05d30Smrg os=-psos 23767f05d30Smrg ;; 23867f05d30Smrg -mint | -mint[0-9]*) 23967f05d30Smrg basic_machine=m68k-atari 24067f05d30Smrg os=-mint 24167f05d30Smrg ;; 24267f05d30Smrgesac 24367f05d30Smrg 24467f05d30Smrg# Decode aliases for certain CPU-COMPANY combinations. 24567f05d30Smrgcase $basic_machine in 24667f05d30Smrg # Recognize the basic CPU types without company name. 24767f05d30Smrg # Some are omitted here because they have special meanings below. 24867f05d30Smrg 1750a | 580 \ 24967f05d30Smrg | a29k \ 25067f05d30Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25167f05d30Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 252fffe5102Smrg | am33_2.0 \ 253fffe5102Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2546dbd43aaSmrg | be32 | be64 \ 255fffe5102Smrg | bfin \ 25667f05d30Smrg | c4x | clipper \ 25767f05d30Smrg | d10v | d30v | dlx | dsp16xx \ 2586dbd43aaSmrg | epiphany \ 259fffe5102Smrg | fido | fr30 | frv \ 26067f05d30Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2616dbd43aaSmrg | hexagon \ 26267f05d30Smrg | i370 | i860 | i960 | ia64 \ 263fffe5102Smrg | ip2k | iq2000 \ 2646dbd43aaSmrg | le32 | le64 \ 265fffe5102Smrg | lm32 \ 266fffe5102Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 267fffe5102Smrg | maxq | mb | microblaze | mcore | mep | metag \ 26867f05d30Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26967f05d30Smrg | mips16 \ 27067f05d30Smrg | mips64 | mips64el \ 271fffe5102Smrg | mips64octeon | mips64octeonel \ 27267f05d30Smrg | mips64orion | mips64orionel \ 273fffe5102Smrg | mips64r5900 | mips64r5900el \ 274fffe5102Smrg | mips64vr | mips64vrel \ 27567f05d30Smrg | mips64vr4100 | mips64vr4100el \ 27667f05d30Smrg | mips64vr4300 | mips64vr4300el \ 27767f05d30Smrg | mips64vr5000 | mips64vr5000el \ 278fffe5102Smrg | mips64vr5900 | mips64vr5900el \ 27967f05d30Smrg | mipsisa32 | mipsisa32el \ 28067f05d30Smrg | mipsisa32r2 | mipsisa32r2el \ 28167f05d30Smrg | mipsisa64 | mipsisa64el \ 282fffe5102Smrg | mipsisa64r2 | mipsisa64r2el \ 28367f05d30Smrg | mipsisa64sb1 | mipsisa64sb1el \ 28467f05d30Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 28567f05d30Smrg | mipstx39 | mipstx39el \ 28667f05d30Smrg | mn10200 | mn10300 \ 287fffe5102Smrg | moxie \ 288fffe5102Smrg | mt \ 28967f05d30Smrg | msp430 \ 290fc51f767Smrg | nds32 | nds32le | nds32be \ 291fffe5102Smrg | nios | nios2 \ 29267f05d30Smrg | ns16k | ns32k \ 2936dbd43aaSmrg | open8 \ 294fffe5102Smrg | or32 \ 29567f05d30Smrg | pdp10 | pdp11 | pj | pjl \ 2966dbd43aaSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 29767f05d30Smrg | pyramid \ 2986dbd43aaSmrg | rl78 | rx \ 299fffe5102Smrg | score \ 300fffe5102Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30167f05d30Smrg | sh64 | sh64le \ 302fffe5102Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 303fffe5102Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 3046dbd43aaSmrg | spu \ 3056dbd43aaSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 306fffe5102Smrg | ubicom32 \ 3076dbd43aaSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 30867f05d30Smrg | we32k \ 3096dbd43aaSmrg | x86 | xc16x | xstormy16 | xtensa \ 310fffe5102Smrg | z8k | z80) 31167f05d30Smrg basic_machine=$basic_machine-unknown 31267f05d30Smrg ;; 313fc51f767Smrg c54x) 314fc51f767Smrg basic_machine=tic54x-unknown 315fc51f767Smrg ;; 316fc51f767Smrg c55x) 317fc51f767Smrg basic_machine=tic55x-unknown 318fc51f767Smrg ;; 319fc51f767Smrg c6x) 320fc51f767Smrg basic_machine=tic6x-unknown 321fc51f767Smrg ;; 322fffe5102Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 32367f05d30Smrg # Motorola 68HC11/12. 32467f05d30Smrg basic_machine=$basic_machine-unknown 32567f05d30Smrg os=-none 32667f05d30Smrg ;; 32767f05d30Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32867f05d30Smrg ;; 329fffe5102Smrg ms1) 330fffe5102Smrg basic_machine=mt-unknown 331fffe5102Smrg ;; 33267f05d30Smrg 3336dbd43aaSmrg strongarm | thumb | xscale) 3346dbd43aaSmrg basic_machine=arm-unknown 3356dbd43aaSmrg ;; 3366dbd43aaSmrg 3376dbd43aaSmrg xscaleeb) 3386dbd43aaSmrg basic_machine=armeb-unknown 3396dbd43aaSmrg ;; 3406dbd43aaSmrg 3416dbd43aaSmrg xscaleel) 3426dbd43aaSmrg basic_machine=armel-unknown 3436dbd43aaSmrg ;; 3446dbd43aaSmrg 34567f05d30Smrg # We use `pc' rather than `unknown' 34667f05d30Smrg # because (1) that's what they normally are, and 34767f05d30Smrg # (2) the word "unknown" tends to confuse beginning users. 34867f05d30Smrg i*86 | x86_64) 34967f05d30Smrg basic_machine=$basic_machine-pc 35067f05d30Smrg ;; 35167f05d30Smrg # Object if more than one company name word. 35267f05d30Smrg *-*-*) 35367f05d30Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 35467f05d30Smrg exit 1 35567f05d30Smrg ;; 35667f05d30Smrg # Recognize the basic CPU types with company name. 35767f05d30Smrg 580-* \ 35867f05d30Smrg | a29k-* \ 35967f05d30Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 36067f05d30Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 36167f05d30Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 36267f05d30Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 363fffe5102Smrg | avr-* | avr32-* \ 3646dbd43aaSmrg | be32-* | be64-* \ 365fffe5102Smrg | bfin-* | bs2000-* \ 366fc51f767Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 367fffe5102Smrg | clipper-* | craynv-* | cydra-* \ 36867f05d30Smrg | d10v-* | d30v-* | dlx-* \ 36967f05d30Smrg | elxsi-* \ 370fffe5102Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 37167f05d30Smrg | h8300-* | h8500-* \ 37267f05d30Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3736dbd43aaSmrg | hexagon-* \ 37467f05d30Smrg | i*86-* | i860-* | i960-* | ia64-* \ 375fffe5102Smrg | ip2k-* | iq2000-* \ 3766dbd43aaSmrg | le32-* | le64-* \ 377fffe5102Smrg | lm32-* \ 378fffe5102Smrg | m32c-* | m32r-* | m32rle-* \ 37967f05d30Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 380fffe5102Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 38167f05d30Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 38267f05d30Smrg | mips16-* \ 38367f05d30Smrg | mips64-* | mips64el-* \ 384fffe5102Smrg | mips64octeon-* | mips64octeonel-* \ 38567f05d30Smrg | mips64orion-* | mips64orionel-* \ 386fffe5102Smrg | mips64r5900-* | mips64r5900el-* \ 387fffe5102Smrg | mips64vr-* | mips64vrel-* \ 38867f05d30Smrg | mips64vr4100-* | mips64vr4100el-* \ 38967f05d30Smrg | mips64vr4300-* | mips64vr4300el-* \ 39067f05d30Smrg | mips64vr5000-* | mips64vr5000el-* \ 391fffe5102Smrg | mips64vr5900-* | mips64vr5900el-* \ 39267f05d30Smrg | mipsisa32-* | mipsisa32el-* \ 39367f05d30Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 39467f05d30Smrg | mipsisa64-* | mipsisa64el-* \ 395fffe5102Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 39667f05d30Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 39767f05d30Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 39867f05d30Smrg | mipstx39-* | mipstx39el-* \ 399fffe5102Smrg | mmix-* \ 400fffe5102Smrg | mt-* \ 40167f05d30Smrg | msp430-* \ 402fc51f767Smrg | nds32-* | nds32le-* | nds32be-* \ 403fffe5102Smrg | nios-* | nios2-* \ 404fffe5102Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 4056dbd43aaSmrg | open8-* \ 40667f05d30Smrg | orion-* \ 40767f05d30Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 4086dbd43aaSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 40967f05d30Smrg | pyramid-* \ 4106dbd43aaSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 411fffe5102Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 41267f05d30Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 413fffe5102Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 414fffe5102Smrg | sparclite-* \ 4156dbd43aaSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 4166dbd43aaSmrg | tahoe-* \ 417fc51f767Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 4186dbd43aaSmrg | tile*-* \ 41967f05d30Smrg | tron-* \ 420fffe5102Smrg | ubicom32-* \ 4216dbd43aaSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 4226dbd43aaSmrg | vax-* \ 42367f05d30Smrg | we32k-* \ 4246dbd43aaSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 425fffe5102Smrg | xstormy16-* | xtensa*-* \ 42667f05d30Smrg | ymp-* \ 427fffe5102Smrg | z8k-* | z80-*) 428fffe5102Smrg ;; 429fffe5102Smrg # Recognize the basic CPU types without company name, with glob match. 430fffe5102Smrg xtensa*) 431fffe5102Smrg basic_machine=$basic_machine-unknown 43267f05d30Smrg ;; 43367f05d30Smrg # Recognize the various machine names and aliases which stand 43467f05d30Smrg # for a CPU type and a company and sometimes even an OS. 43567f05d30Smrg 386bsd) 43667f05d30Smrg basic_machine=i386-unknown 43767f05d30Smrg os=-bsd 43867f05d30Smrg ;; 43967f05d30Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 44067f05d30Smrg basic_machine=m68000-att 44167f05d30Smrg ;; 44267f05d30Smrg 3b*) 44367f05d30Smrg basic_machine=we32k-att 44467f05d30Smrg ;; 44567f05d30Smrg a29khif) 44667f05d30Smrg basic_machine=a29k-amd 44767f05d30Smrg os=-udi 44867f05d30Smrg ;; 4496dbd43aaSmrg abacus) 450fffe5102Smrg basic_machine=abacus-unknown 451fffe5102Smrg ;; 45267f05d30Smrg adobe68k) 45367f05d30Smrg basic_machine=m68010-adobe 45467f05d30Smrg os=-scout 45567f05d30Smrg ;; 45667f05d30Smrg alliant | fx80) 45767f05d30Smrg basic_machine=fx80-alliant 45867f05d30Smrg ;; 45967f05d30Smrg altos | altos3068) 46067f05d30Smrg basic_machine=m68k-altos 46167f05d30Smrg ;; 46267f05d30Smrg am29k) 46367f05d30Smrg basic_machine=a29k-none 46467f05d30Smrg os=-bsd 46567f05d30Smrg ;; 46667f05d30Smrg amd64) 46767f05d30Smrg basic_machine=x86_64-pc 46867f05d30Smrg ;; 469fffe5102Smrg amd64-*) 470fffe5102Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 471fffe5102Smrg ;; 47267f05d30Smrg amdahl) 47367f05d30Smrg basic_machine=580-amdahl 47467f05d30Smrg os=-sysv 47567f05d30Smrg ;; 47667f05d30Smrg amiga | amiga-*) 47767f05d30Smrg basic_machine=m68k-unknown 47867f05d30Smrg ;; 47967f05d30Smrg amigaos | amigados) 48067f05d30Smrg basic_machine=m68k-unknown 48167f05d30Smrg os=-amigaos 48267f05d30Smrg ;; 48367f05d30Smrg amigaunix | amix) 48467f05d30Smrg basic_machine=m68k-unknown 48567f05d30Smrg os=-sysv4 48667f05d30Smrg ;; 48767f05d30Smrg apollo68) 48867f05d30Smrg basic_machine=m68k-apollo 48967f05d30Smrg os=-sysv 49067f05d30Smrg ;; 49167f05d30Smrg apollo68bsd) 49267f05d30Smrg basic_machine=m68k-apollo 49367f05d30Smrg os=-bsd 49467f05d30Smrg ;; 495fffe5102Smrg aros) 496fffe5102Smrg basic_machine=i386-pc 497fffe5102Smrg os=-aros 498fffe5102Smrg ;; 49967f05d30Smrg aux) 50067f05d30Smrg basic_machine=m68k-apple 50167f05d30Smrg os=-aux 50267f05d30Smrg ;; 50367f05d30Smrg balance) 50467f05d30Smrg basic_machine=ns32k-sequent 50567f05d30Smrg os=-dynix 50667f05d30Smrg ;; 507fffe5102Smrg blackfin) 508fffe5102Smrg basic_machine=bfin-unknown 509fffe5102Smrg os=-linux 510fffe5102Smrg ;; 511fffe5102Smrg blackfin-*) 512fffe5102Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 513fffe5102Smrg os=-linux 514fffe5102Smrg ;; 515fffe5102Smrg bluegene*) 516fffe5102Smrg basic_machine=powerpc-ibm 517fffe5102Smrg os=-cnk 518fffe5102Smrg ;; 519fc51f767Smrg c54x-*) 520fc51f767Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 521fc51f767Smrg ;; 522fc51f767Smrg c55x-*) 523fc51f767Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 524fc51f767Smrg ;; 525fc51f767Smrg c6x-*) 526fc51f767Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 527fc51f767Smrg ;; 52867f05d30Smrg c90) 52967f05d30Smrg basic_machine=c90-cray 53067f05d30Smrg os=-unicos 53167f05d30Smrg ;; 5326dbd43aaSmrg cegcc) 533fffe5102Smrg basic_machine=arm-unknown 534fffe5102Smrg os=-cegcc 535fffe5102Smrg ;; 53667f05d30Smrg convex-c1) 53767f05d30Smrg basic_machine=c1-convex 53867f05d30Smrg os=-bsd 53967f05d30Smrg ;; 54067f05d30Smrg convex-c2) 54167f05d30Smrg basic_machine=c2-convex 54267f05d30Smrg os=-bsd 54367f05d30Smrg ;; 54467f05d30Smrg convex-c32) 54567f05d30Smrg basic_machine=c32-convex 54667f05d30Smrg os=-bsd 54767f05d30Smrg ;; 54867f05d30Smrg convex-c34) 54967f05d30Smrg basic_machine=c34-convex 55067f05d30Smrg os=-bsd 55167f05d30Smrg ;; 55267f05d30Smrg convex-c38) 55367f05d30Smrg basic_machine=c38-convex 55467f05d30Smrg os=-bsd 55567f05d30Smrg ;; 55667f05d30Smrg cray | j90) 55767f05d30Smrg basic_machine=j90-cray 55867f05d30Smrg os=-unicos 55967f05d30Smrg ;; 560fffe5102Smrg craynv) 561fffe5102Smrg basic_machine=craynv-cray 562fffe5102Smrg os=-unicosmp 563fffe5102Smrg ;; 5646dbd43aaSmrg cr16 | cr16-*) 565fffe5102Smrg basic_machine=cr16-unknown 566fffe5102Smrg os=-elf 567fffe5102Smrg ;; 56867f05d30Smrg crds | unos) 56967f05d30Smrg basic_machine=m68k-crds 57067f05d30Smrg ;; 571fffe5102Smrg crisv32 | crisv32-* | etraxfs*) 572fffe5102Smrg basic_machine=crisv32-axis 573fffe5102Smrg ;; 57467f05d30Smrg cris | cris-* | etrax*) 57567f05d30Smrg basic_machine=cris-axis 57667f05d30Smrg ;; 577fffe5102Smrg crx) 578fffe5102Smrg basic_machine=crx-unknown 579fffe5102Smrg os=-elf 580fffe5102Smrg ;; 58167f05d30Smrg da30 | da30-*) 58267f05d30Smrg basic_machine=m68k-da30 58367f05d30Smrg ;; 58467f05d30Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 58567f05d30Smrg basic_machine=mips-dec 58667f05d30Smrg ;; 58767f05d30Smrg decsystem10* | dec10*) 58867f05d30Smrg basic_machine=pdp10-dec 58967f05d30Smrg os=-tops10 59067f05d30Smrg ;; 59167f05d30Smrg decsystem20* | dec20*) 59267f05d30Smrg basic_machine=pdp10-dec 59367f05d30Smrg os=-tops20 59467f05d30Smrg ;; 59567f05d30Smrg delta | 3300 | motorola-3300 | motorola-delta \ 59667f05d30Smrg | 3300-motorola | delta-motorola) 59767f05d30Smrg basic_machine=m68k-motorola 59867f05d30Smrg ;; 59967f05d30Smrg delta88) 60067f05d30Smrg basic_machine=m88k-motorola 60167f05d30Smrg os=-sysv3 60267f05d30Smrg ;; 603fffe5102Smrg dicos) 604fffe5102Smrg basic_machine=i686-pc 605fffe5102Smrg os=-dicos 606fffe5102Smrg ;; 607fffe5102Smrg djgpp) 608fffe5102Smrg basic_machine=i586-pc 609fffe5102Smrg os=-msdosdjgpp 610fffe5102Smrg ;; 61167f05d30Smrg dpx20 | dpx20-*) 61267f05d30Smrg basic_machine=rs6000-bull 61367f05d30Smrg os=-bosx 61467f05d30Smrg ;; 61567f05d30Smrg dpx2* | dpx2*-bull) 61667f05d30Smrg basic_machine=m68k-bull 61767f05d30Smrg os=-sysv3 61867f05d30Smrg ;; 61967f05d30Smrg ebmon29k) 62067f05d30Smrg basic_machine=a29k-amd 62167f05d30Smrg os=-ebmon 62267f05d30Smrg ;; 62367f05d30Smrg elxsi) 62467f05d30Smrg basic_machine=elxsi-elxsi 62567f05d30Smrg os=-bsd 62667f05d30Smrg ;; 62767f05d30Smrg encore | umax | mmax) 62867f05d30Smrg basic_machine=ns32k-encore 62967f05d30Smrg ;; 63067f05d30Smrg es1800 | OSE68k | ose68k | ose | OSE) 63167f05d30Smrg basic_machine=m68k-ericsson 63267f05d30Smrg os=-ose 63367f05d30Smrg ;; 63467f05d30Smrg fx2800) 63567f05d30Smrg basic_machine=i860-alliant 63667f05d30Smrg ;; 63767f05d30Smrg genix) 63867f05d30Smrg basic_machine=ns32k-ns 63967f05d30Smrg ;; 64067f05d30Smrg gmicro) 64167f05d30Smrg basic_machine=tron-gmicro 64267f05d30Smrg os=-sysv 64367f05d30Smrg ;; 64467f05d30Smrg go32) 64567f05d30Smrg basic_machine=i386-pc 64667f05d30Smrg os=-go32 64767f05d30Smrg ;; 64867f05d30Smrg h3050r* | hiux*) 64967f05d30Smrg basic_machine=hppa1.1-hitachi 65067f05d30Smrg os=-hiuxwe2 65167f05d30Smrg ;; 65267f05d30Smrg h8300hms) 65367f05d30Smrg basic_machine=h8300-hitachi 65467f05d30Smrg os=-hms 65567f05d30Smrg ;; 65667f05d30Smrg h8300xray) 65767f05d30Smrg basic_machine=h8300-hitachi 65867f05d30Smrg os=-xray 65967f05d30Smrg ;; 66067f05d30Smrg h8500hms) 66167f05d30Smrg basic_machine=h8500-hitachi 66267f05d30Smrg os=-hms 66367f05d30Smrg ;; 66467f05d30Smrg harris) 66567f05d30Smrg basic_machine=m88k-harris 66667f05d30Smrg os=-sysv3 66767f05d30Smrg ;; 66867f05d30Smrg hp300-*) 66967f05d30Smrg basic_machine=m68k-hp 67067f05d30Smrg ;; 67167f05d30Smrg hp300bsd) 67267f05d30Smrg basic_machine=m68k-hp 67367f05d30Smrg os=-bsd 67467f05d30Smrg ;; 67567f05d30Smrg hp300hpux) 67667f05d30Smrg basic_machine=m68k-hp 67767f05d30Smrg os=-hpux 67867f05d30Smrg ;; 67967f05d30Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 68067f05d30Smrg basic_machine=hppa1.0-hp 68167f05d30Smrg ;; 68267f05d30Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 68367f05d30Smrg basic_machine=m68000-hp 68467f05d30Smrg ;; 68567f05d30Smrg hp9k3[2-9][0-9]) 68667f05d30Smrg basic_machine=m68k-hp 68767f05d30Smrg ;; 68867f05d30Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 68967f05d30Smrg basic_machine=hppa1.0-hp 69067f05d30Smrg ;; 69167f05d30Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 69267f05d30Smrg basic_machine=hppa1.1-hp 69367f05d30Smrg ;; 69467f05d30Smrg hp9k78[0-9] | hp78[0-9]) 69567f05d30Smrg # FIXME: really hppa2.0-hp 69667f05d30Smrg basic_machine=hppa1.1-hp 69767f05d30Smrg ;; 69867f05d30Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 69967f05d30Smrg # FIXME: really hppa2.0-hp 70067f05d30Smrg basic_machine=hppa1.1-hp 70167f05d30Smrg ;; 70267f05d30Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 70367f05d30Smrg basic_machine=hppa1.1-hp 70467f05d30Smrg ;; 70567f05d30Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 70667f05d30Smrg basic_machine=hppa1.0-hp 70767f05d30Smrg ;; 70867f05d30Smrg hppa-next) 70967f05d30Smrg os=-nextstep3 71067f05d30Smrg ;; 71167f05d30Smrg hppaosf) 71267f05d30Smrg basic_machine=hppa1.1-hp 71367f05d30Smrg os=-osf 71467f05d30Smrg ;; 71567f05d30Smrg hppro) 71667f05d30Smrg basic_machine=hppa1.1-hp 71767f05d30Smrg os=-proelf 71867f05d30Smrg ;; 71967f05d30Smrg i370-ibm* | ibm*) 72067f05d30Smrg basic_machine=i370-ibm 72167f05d30Smrg ;; 72267f05d30Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 72367f05d30Smrg i*86v32) 72467f05d30Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72567f05d30Smrg os=-sysv32 72667f05d30Smrg ;; 72767f05d30Smrg i*86v4*) 72867f05d30Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72967f05d30Smrg os=-sysv4 73067f05d30Smrg ;; 73167f05d30Smrg i*86v) 73267f05d30Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73367f05d30Smrg os=-sysv 73467f05d30Smrg ;; 73567f05d30Smrg i*86sol2) 73667f05d30Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73767f05d30Smrg os=-solaris2 73867f05d30Smrg ;; 73967f05d30Smrg i386mach) 74067f05d30Smrg basic_machine=i386-mach 74167f05d30Smrg os=-mach 74267f05d30Smrg ;; 74367f05d30Smrg i386-vsta | vsta) 74467f05d30Smrg basic_machine=i386-unknown 74567f05d30Smrg os=-vsta 74667f05d30Smrg ;; 74767f05d30Smrg iris | iris4d) 74867f05d30Smrg basic_machine=mips-sgi 74967f05d30Smrg case $os in 75067f05d30Smrg -irix*) 75167f05d30Smrg ;; 75267f05d30Smrg *) 75367f05d30Smrg os=-irix4 75467f05d30Smrg ;; 75567f05d30Smrg esac 75667f05d30Smrg ;; 75767f05d30Smrg isi68 | isi) 75867f05d30Smrg basic_machine=m68k-isi 75967f05d30Smrg os=-sysv 76067f05d30Smrg ;; 761fffe5102Smrg m68knommu) 762fffe5102Smrg basic_machine=m68k-unknown 763fffe5102Smrg os=-linux 764fffe5102Smrg ;; 765fffe5102Smrg m68knommu-*) 766fffe5102Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 767fffe5102Smrg os=-linux 768fffe5102Smrg ;; 76967f05d30Smrg m88k-omron*) 77067f05d30Smrg basic_machine=m88k-omron 77167f05d30Smrg ;; 77267f05d30Smrg magnum | m3230) 77367f05d30Smrg basic_machine=mips-mips 77467f05d30Smrg os=-sysv 77567f05d30Smrg ;; 77667f05d30Smrg merlin) 77767f05d30Smrg basic_machine=ns32k-utek 77867f05d30Smrg os=-sysv 77967f05d30Smrg ;; 7806dbd43aaSmrg microblaze) 781fffe5102Smrg basic_machine=microblaze-xilinx 782fffe5102Smrg ;; 78367f05d30Smrg mingw32) 78467f05d30Smrg basic_machine=i386-pc 78567f05d30Smrg os=-mingw32 78667f05d30Smrg ;; 787fffe5102Smrg mingw32ce) 788fffe5102Smrg basic_machine=arm-unknown 789fffe5102Smrg os=-mingw32ce 790fffe5102Smrg ;; 79167f05d30Smrg miniframe) 79267f05d30Smrg basic_machine=m68000-convergent 79367f05d30Smrg ;; 79467f05d30Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 79567f05d30Smrg basic_machine=m68k-atari 79667f05d30Smrg os=-mint 79767f05d30Smrg ;; 79867f05d30Smrg mips3*-*) 79967f05d30Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 80067f05d30Smrg ;; 80167f05d30Smrg mips3*) 80267f05d30Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 80367f05d30Smrg ;; 80467f05d30Smrg monitor) 80567f05d30Smrg basic_machine=m68k-rom68k 80667f05d30Smrg os=-coff 80767f05d30Smrg ;; 80867f05d30Smrg morphos) 80967f05d30Smrg basic_machine=powerpc-unknown 81067f05d30Smrg os=-morphos 81167f05d30Smrg ;; 81267f05d30Smrg msdos) 81367f05d30Smrg basic_machine=i386-pc 81467f05d30Smrg os=-msdos 81567f05d30Smrg ;; 816fffe5102Smrg ms1-*) 817fffe5102Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 818fffe5102Smrg ;; 8196dbd43aaSmrg msys) 8206dbd43aaSmrg basic_machine=i386-pc 8216dbd43aaSmrg os=-msys 8226dbd43aaSmrg ;; 82367f05d30Smrg mvs) 82467f05d30Smrg basic_machine=i370-ibm 82567f05d30Smrg os=-mvs 82667f05d30Smrg ;; 8276dbd43aaSmrg nacl) 8286dbd43aaSmrg basic_machine=le32-unknown 8296dbd43aaSmrg os=-nacl 8306dbd43aaSmrg ;; 83167f05d30Smrg ncr3000) 83267f05d30Smrg basic_machine=i486-ncr 83367f05d30Smrg os=-sysv4 83467f05d30Smrg ;; 83567f05d30Smrg netbsd386) 83667f05d30Smrg basic_machine=i386-unknown 83767f05d30Smrg os=-netbsd 83867f05d30Smrg ;; 83967f05d30Smrg netwinder) 84067f05d30Smrg basic_machine=armv4l-rebel 84167f05d30Smrg os=-linux 84267f05d30Smrg ;; 84367f05d30Smrg news | news700 | news800 | news900) 84467f05d30Smrg basic_machine=m68k-sony 84567f05d30Smrg os=-newsos 84667f05d30Smrg ;; 84767f05d30Smrg news1000) 84867f05d30Smrg basic_machine=m68030-sony 84967f05d30Smrg os=-newsos 85067f05d30Smrg ;; 85167f05d30Smrg news-3600 | risc-news) 85267f05d30Smrg basic_machine=mips-sony 85367f05d30Smrg os=-newsos 85467f05d30Smrg ;; 85567f05d30Smrg necv70) 85667f05d30Smrg basic_machine=v70-nec 85767f05d30Smrg os=-sysv 85867f05d30Smrg ;; 85967f05d30Smrg next | m*-next ) 86067f05d30Smrg basic_machine=m68k-next 86167f05d30Smrg case $os in 86267f05d30Smrg -nextstep* ) 86367f05d30Smrg ;; 86467f05d30Smrg -ns2*) 86567f05d30Smrg os=-nextstep2 86667f05d30Smrg ;; 86767f05d30Smrg *) 86867f05d30Smrg os=-nextstep3 86967f05d30Smrg ;; 87067f05d30Smrg esac 87167f05d30Smrg ;; 87267f05d30Smrg nh3000) 87367f05d30Smrg basic_machine=m68k-harris 87467f05d30Smrg os=-cxux 87567f05d30Smrg ;; 87667f05d30Smrg nh[45]000) 87767f05d30Smrg basic_machine=m88k-harris 87867f05d30Smrg os=-cxux 87967f05d30Smrg ;; 88067f05d30Smrg nindy960) 88167f05d30Smrg basic_machine=i960-intel 88267f05d30Smrg os=-nindy 88367f05d30Smrg ;; 88467f05d30Smrg mon960) 88567f05d30Smrg basic_machine=i960-intel 88667f05d30Smrg os=-mon960 88767f05d30Smrg ;; 88867f05d30Smrg nonstopux) 88967f05d30Smrg basic_machine=mips-compaq 89067f05d30Smrg os=-nonstopux 89167f05d30Smrg ;; 89267f05d30Smrg np1) 89367f05d30Smrg basic_machine=np1-gould 89467f05d30Smrg ;; 8956dbd43aaSmrg neo-tandem) 896fc51f767Smrg basic_machine=neo-tandem 897fc51f767Smrg ;; 8986dbd43aaSmrg nse-tandem) 899fc51f767Smrg basic_machine=nse-tandem 900fc51f767Smrg ;; 90167f05d30Smrg nsr-tandem) 90267f05d30Smrg basic_machine=nsr-tandem 90367f05d30Smrg ;; 90467f05d30Smrg op50n-* | op60c-*) 90567f05d30Smrg basic_machine=hppa1.1-oki 90667f05d30Smrg os=-proelf 90767f05d30Smrg ;; 908fffe5102Smrg openrisc | openrisc-*) 90967f05d30Smrg basic_machine=or32-unknown 910fffe5102Smrg ;; 911fffe5102Smrg os400) 912fffe5102Smrg basic_machine=powerpc-ibm 913fffe5102Smrg os=-os400 91467f05d30Smrg ;; 91567f05d30Smrg OSE68000 | ose68000) 91667f05d30Smrg basic_machine=m68000-ericsson 91767f05d30Smrg os=-ose 91867f05d30Smrg ;; 91967f05d30Smrg os68k) 92067f05d30Smrg basic_machine=m68k-none 92167f05d30Smrg os=-os68k 92267f05d30Smrg ;; 92367f05d30Smrg pa-hitachi) 92467f05d30Smrg basic_machine=hppa1.1-hitachi 92567f05d30Smrg os=-hiuxwe2 92667f05d30Smrg ;; 92767f05d30Smrg paragon) 92867f05d30Smrg basic_machine=i860-intel 92967f05d30Smrg os=-osf 93067f05d30Smrg ;; 931fffe5102Smrg parisc) 932fffe5102Smrg basic_machine=hppa-unknown 933fffe5102Smrg os=-linux 934fffe5102Smrg ;; 935fffe5102Smrg parisc-*) 936fffe5102Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 937fffe5102Smrg os=-linux 938fffe5102Smrg ;; 93967f05d30Smrg pbd) 94067f05d30Smrg basic_machine=sparc-tti 94167f05d30Smrg ;; 94267f05d30Smrg pbb) 94367f05d30Smrg basic_machine=m68k-tti 94467f05d30Smrg ;; 94567f05d30Smrg pc532 | pc532-*) 94667f05d30Smrg basic_machine=ns32k-pc532 94767f05d30Smrg ;; 948fffe5102Smrg pc98) 949fffe5102Smrg basic_machine=i386-pc 950fffe5102Smrg ;; 951fffe5102Smrg pc98-*) 952fffe5102Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 953fffe5102Smrg ;; 95467f05d30Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 95567f05d30Smrg basic_machine=i586-pc 95667f05d30Smrg ;; 95767f05d30Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 95867f05d30Smrg basic_machine=i686-pc 95967f05d30Smrg ;; 96067f05d30Smrg pentiumii | pentium2 | pentiumiii | pentium3) 96167f05d30Smrg basic_machine=i686-pc 96267f05d30Smrg ;; 96367f05d30Smrg pentium4) 96467f05d30Smrg basic_machine=i786-pc 96567f05d30Smrg ;; 96667f05d30Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 96767f05d30Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 96867f05d30Smrg ;; 96967f05d30Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 97067f05d30Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 97167f05d30Smrg ;; 97267f05d30Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 97367f05d30Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 97467f05d30Smrg ;; 97567f05d30Smrg pentium4-*) 97667f05d30Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 97767f05d30Smrg ;; 97867f05d30Smrg pn) 97967f05d30Smrg basic_machine=pn-gould 98067f05d30Smrg ;; 98167f05d30Smrg power) basic_machine=power-ibm 98267f05d30Smrg ;; 9836dbd43aaSmrg ppc | ppcbe) basic_machine=powerpc-unknown 98467f05d30Smrg ;; 9856dbd43aaSmrg ppc-* | ppcbe-*) 9866dbd43aaSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 98767f05d30Smrg ;; 98867f05d30Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 98967f05d30Smrg basic_machine=powerpcle-unknown 99067f05d30Smrg ;; 99167f05d30Smrg ppcle-* | powerpclittle-*) 99267f05d30Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 99367f05d30Smrg ;; 99467f05d30Smrg ppc64) basic_machine=powerpc64-unknown 99567f05d30Smrg ;; 99667f05d30Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 99767f05d30Smrg ;; 99867f05d30Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 99967f05d30Smrg basic_machine=powerpc64le-unknown 100067f05d30Smrg ;; 100167f05d30Smrg ppc64le-* | powerpc64little-*) 100267f05d30Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 100367f05d30Smrg ;; 100467f05d30Smrg ps2) 100567f05d30Smrg basic_machine=i386-ibm 100667f05d30Smrg ;; 100767f05d30Smrg pw32) 100867f05d30Smrg basic_machine=i586-unknown 100967f05d30Smrg os=-pw32 101067f05d30Smrg ;; 1011fffe5102Smrg rdos) 1012fffe5102Smrg basic_machine=i386-pc 1013fffe5102Smrg os=-rdos 1014fffe5102Smrg ;; 101567f05d30Smrg rom68k) 101667f05d30Smrg basic_machine=m68k-rom68k 101767f05d30Smrg os=-coff 101867f05d30Smrg ;; 101967f05d30Smrg rm[46]00) 102067f05d30Smrg basic_machine=mips-siemens 102167f05d30Smrg ;; 102267f05d30Smrg rtpc | rtpc-*) 102367f05d30Smrg basic_machine=romp-ibm 102467f05d30Smrg ;; 1025fffe5102Smrg s390 | s390-*) 1026fffe5102Smrg basic_machine=s390-ibm 1027fffe5102Smrg ;; 1028fffe5102Smrg s390x | s390x-*) 1029fffe5102Smrg basic_machine=s390x-ibm 1030fffe5102Smrg ;; 103167f05d30Smrg sa29200) 103267f05d30Smrg basic_machine=a29k-amd 103367f05d30Smrg os=-udi 103467f05d30Smrg ;; 103567f05d30Smrg sb1) 103667f05d30Smrg basic_machine=mipsisa64sb1-unknown 103767f05d30Smrg ;; 103867f05d30Smrg sb1el) 103967f05d30Smrg basic_machine=mipsisa64sb1el-unknown 104067f05d30Smrg ;; 1041fffe5102Smrg sde) 1042fffe5102Smrg basic_machine=mipsisa32-sde 1043fffe5102Smrg os=-elf 1044fffe5102Smrg ;; 104567f05d30Smrg sei) 104667f05d30Smrg basic_machine=mips-sei 104767f05d30Smrg os=-seiux 104867f05d30Smrg ;; 104967f05d30Smrg sequent) 105067f05d30Smrg basic_machine=i386-sequent 105167f05d30Smrg ;; 105267f05d30Smrg sh) 105367f05d30Smrg basic_machine=sh-hitachi 105467f05d30Smrg os=-hms 105567f05d30Smrg ;; 1056fffe5102Smrg sh5el) 1057fffe5102Smrg basic_machine=sh5le-unknown 1058fffe5102Smrg ;; 105967f05d30Smrg sh64) 106067f05d30Smrg basic_machine=sh64-unknown 106167f05d30Smrg ;; 106267f05d30Smrg sparclite-wrs | simso-wrs) 106367f05d30Smrg basic_machine=sparclite-wrs 106467f05d30Smrg os=-vxworks 106567f05d30Smrg ;; 106667f05d30Smrg sps7) 106767f05d30Smrg basic_machine=m68k-bull 106867f05d30Smrg os=-sysv2 106967f05d30Smrg ;; 107067f05d30Smrg spur) 107167f05d30Smrg basic_machine=spur-unknown 107267f05d30Smrg ;; 107367f05d30Smrg st2000) 107467f05d30Smrg basic_machine=m68k-tandem 107567f05d30Smrg ;; 107667f05d30Smrg stratus) 107767f05d30Smrg basic_machine=i860-stratus 107867f05d30Smrg os=-sysv4 107967f05d30Smrg ;; 10806dbd43aaSmrg strongarm-* | thumb-*) 10816dbd43aaSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 10826dbd43aaSmrg ;; 108367f05d30Smrg sun2) 108467f05d30Smrg basic_machine=m68000-sun 108567f05d30Smrg ;; 108667f05d30Smrg sun2os3) 108767f05d30Smrg basic_machine=m68000-sun 108867f05d30Smrg os=-sunos3 108967f05d30Smrg ;; 109067f05d30Smrg sun2os4) 109167f05d30Smrg basic_machine=m68000-sun 109267f05d30Smrg os=-sunos4 109367f05d30Smrg ;; 109467f05d30Smrg sun3os3) 109567f05d30Smrg basic_machine=m68k-sun 109667f05d30Smrg os=-sunos3 109767f05d30Smrg ;; 109867f05d30Smrg sun3os4) 109967f05d30Smrg basic_machine=m68k-sun 110067f05d30Smrg os=-sunos4 110167f05d30Smrg ;; 110267f05d30Smrg sun4os3) 110367f05d30Smrg basic_machine=sparc-sun 110467f05d30Smrg os=-sunos3 110567f05d30Smrg ;; 110667f05d30Smrg sun4os4) 110767f05d30Smrg basic_machine=sparc-sun 110867f05d30Smrg os=-sunos4 110967f05d30Smrg ;; 111067f05d30Smrg sun4sol2) 111167f05d30Smrg basic_machine=sparc-sun 111267f05d30Smrg os=-solaris2 111367f05d30Smrg ;; 111467f05d30Smrg sun3 | sun3-*) 111567f05d30Smrg basic_machine=m68k-sun 111667f05d30Smrg ;; 111767f05d30Smrg sun4) 111867f05d30Smrg basic_machine=sparc-sun 111967f05d30Smrg ;; 112067f05d30Smrg sun386 | sun386i | roadrunner) 112167f05d30Smrg basic_machine=i386-sun 112267f05d30Smrg ;; 112367f05d30Smrg sv1) 112467f05d30Smrg basic_machine=sv1-cray 112567f05d30Smrg os=-unicos 112667f05d30Smrg ;; 112767f05d30Smrg symmetry) 112867f05d30Smrg basic_machine=i386-sequent 112967f05d30Smrg os=-dynix 113067f05d30Smrg ;; 113167f05d30Smrg t3e) 113267f05d30Smrg basic_machine=alphaev5-cray 113367f05d30Smrg os=-unicos 113467f05d30Smrg ;; 113567f05d30Smrg t90) 113667f05d30Smrg basic_machine=t90-cray 113767f05d30Smrg os=-unicos 113867f05d30Smrg ;; 1139fffe5102Smrg tile*) 11406dbd43aaSmrg basic_machine=$basic_machine-unknown 1141fffe5102Smrg os=-linux-gnu 1142fffe5102Smrg ;; 114367f05d30Smrg tx39) 114467f05d30Smrg basic_machine=mipstx39-unknown 114567f05d30Smrg ;; 114667f05d30Smrg tx39el) 114767f05d30Smrg basic_machine=mipstx39el-unknown 114867f05d30Smrg ;; 114967f05d30Smrg toad1) 115067f05d30Smrg basic_machine=pdp10-xkl 115167f05d30Smrg os=-tops20 115267f05d30Smrg ;; 115367f05d30Smrg tower | tower-32) 115467f05d30Smrg basic_machine=m68k-ncr 115567f05d30Smrg ;; 1156fffe5102Smrg tpf) 1157fffe5102Smrg basic_machine=s390x-ibm 1158fffe5102Smrg os=-tpf 1159fffe5102Smrg ;; 116067f05d30Smrg udi29k) 116167f05d30Smrg basic_machine=a29k-amd 116267f05d30Smrg os=-udi 116367f05d30Smrg ;; 116467f05d30Smrg ultra3) 116567f05d30Smrg basic_machine=a29k-nyu 116667f05d30Smrg os=-sym1 116767f05d30Smrg ;; 116867f05d30Smrg v810 | necv810) 116967f05d30Smrg basic_machine=v810-nec 117067f05d30Smrg os=-none 117167f05d30Smrg ;; 117267f05d30Smrg vaxv) 117367f05d30Smrg basic_machine=vax-dec 117467f05d30Smrg os=-sysv 117567f05d30Smrg ;; 117667f05d30Smrg vms) 117767f05d30Smrg basic_machine=vax-dec 117867f05d30Smrg os=-vms 117967f05d30Smrg ;; 118067f05d30Smrg vpp*|vx|vx-*) 118167f05d30Smrg basic_machine=f301-fujitsu 118267f05d30Smrg ;; 118367f05d30Smrg vxworks960) 118467f05d30Smrg basic_machine=i960-wrs 118567f05d30Smrg os=-vxworks 118667f05d30Smrg ;; 118767f05d30Smrg vxworks68) 118867f05d30Smrg basic_machine=m68k-wrs 118967f05d30Smrg os=-vxworks 119067f05d30Smrg ;; 119167f05d30Smrg vxworks29k) 119267f05d30Smrg basic_machine=a29k-wrs 119367f05d30Smrg os=-vxworks 119467f05d30Smrg ;; 119567f05d30Smrg w65*) 119667f05d30Smrg basic_machine=w65-wdc 119767f05d30Smrg os=-none 119867f05d30Smrg ;; 119967f05d30Smrg w89k-*) 120067f05d30Smrg basic_machine=hppa1.1-winbond 120167f05d30Smrg os=-proelf 120267f05d30Smrg ;; 1203fffe5102Smrg xbox) 1204fffe5102Smrg basic_machine=i686-pc 1205fffe5102Smrg os=-mingw32 1206fffe5102Smrg ;; 120767f05d30Smrg xps | xps100) 120867f05d30Smrg basic_machine=xps100-honeywell 120967f05d30Smrg ;; 12106dbd43aaSmrg xscale-* | xscalee[bl]-*) 12116dbd43aaSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 12126dbd43aaSmrg ;; 121367f05d30Smrg ymp) 121467f05d30Smrg basic_machine=ymp-cray 121567f05d30Smrg os=-unicos 121667f05d30Smrg ;; 121767f05d30Smrg z8k-*-coff) 121867f05d30Smrg basic_machine=z8k-unknown 121967f05d30Smrg os=-sim 122067f05d30Smrg ;; 1221fffe5102Smrg z80-*-coff) 1222fffe5102Smrg basic_machine=z80-unknown 1223fffe5102Smrg os=-sim 1224fffe5102Smrg ;; 122567f05d30Smrg none) 122667f05d30Smrg basic_machine=none-none 122767f05d30Smrg os=-none 122867f05d30Smrg ;; 122967f05d30Smrg 123067f05d30Smrg# Here we handle the default manufacturer of certain CPU types. It is in 123167f05d30Smrg# some cases the only manufacturer, in others, it is the most popular. 123267f05d30Smrg w89k) 123367f05d30Smrg basic_machine=hppa1.1-winbond 123467f05d30Smrg ;; 123567f05d30Smrg op50n) 123667f05d30Smrg basic_machine=hppa1.1-oki 123767f05d30Smrg ;; 123867f05d30Smrg op60c) 123967f05d30Smrg basic_machine=hppa1.1-oki 124067f05d30Smrg ;; 124167f05d30Smrg romp) 124267f05d30Smrg basic_machine=romp-ibm 124367f05d30Smrg ;; 1244fffe5102Smrg mmix) 1245fffe5102Smrg basic_machine=mmix-knuth 1246fffe5102Smrg ;; 124767f05d30Smrg rs6000) 124867f05d30Smrg basic_machine=rs6000-ibm 124967f05d30Smrg ;; 125067f05d30Smrg vax) 125167f05d30Smrg basic_machine=vax-dec 125267f05d30Smrg ;; 125367f05d30Smrg pdp10) 125467f05d30Smrg # there are many clones, so DEC is not a safe bet 125567f05d30Smrg basic_machine=pdp10-unknown 125667f05d30Smrg ;; 125767f05d30Smrg pdp11) 125867f05d30Smrg basic_machine=pdp11-dec 125967f05d30Smrg ;; 126067f05d30Smrg we32k) 126167f05d30Smrg basic_machine=we32k-att 126267f05d30Smrg ;; 1263fffe5102Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 126467f05d30Smrg basic_machine=sh-unknown 126567f05d30Smrg ;; 1266fffe5102Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 126767f05d30Smrg basic_machine=sparc-sun 126867f05d30Smrg ;; 126967f05d30Smrg cydra) 127067f05d30Smrg basic_machine=cydra-cydrome 127167f05d30Smrg ;; 127267f05d30Smrg orion) 127367f05d30Smrg basic_machine=orion-highlevel 127467f05d30Smrg ;; 127567f05d30Smrg orion105) 127667f05d30Smrg basic_machine=clipper-highlevel 127767f05d30Smrg ;; 127867f05d30Smrg mac | mpw | mac-mpw) 127967f05d30Smrg basic_machine=m68k-apple 128067f05d30Smrg ;; 128167f05d30Smrg pmac | pmac-mpw) 128267f05d30Smrg basic_machine=powerpc-apple 128367f05d30Smrg ;; 128467f05d30Smrg *-unknown) 128567f05d30Smrg # Make sure to match an already-canonicalized machine name. 128667f05d30Smrg ;; 128767f05d30Smrg *) 128867f05d30Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 128967f05d30Smrg exit 1 129067f05d30Smrg ;; 129167f05d30Smrgesac 129267f05d30Smrg 129367f05d30Smrg# Here we canonicalize certain aliases for manufacturers. 129467f05d30Smrgcase $basic_machine in 129567f05d30Smrg *-digital*) 129667f05d30Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 129767f05d30Smrg ;; 129867f05d30Smrg *-commodore*) 129967f05d30Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 130067f05d30Smrg ;; 130167f05d30Smrg *) 130267f05d30Smrg ;; 130367f05d30Smrgesac 130467f05d30Smrg 130567f05d30Smrg# Decode manufacturer-specific aliases for certain operating systems. 130667f05d30Smrg 130767f05d30Smrgif [ x"$os" != x"" ] 130867f05d30Smrgthen 130967f05d30Smrgcase $os in 13106dbd43aaSmrg # First match some system type aliases 13116dbd43aaSmrg # that might get confused with valid system types. 131267f05d30Smrg # -solaris* is a basic system type, with this one exception. 13136dbd43aaSmrg -auroraux) 13146dbd43aaSmrg os=-auroraux 1315fffe5102Smrg ;; 131667f05d30Smrg -solaris1 | -solaris1.*) 131767f05d30Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 131867f05d30Smrg ;; 131967f05d30Smrg -solaris) 132067f05d30Smrg os=-solaris2 132167f05d30Smrg ;; 132267f05d30Smrg -svr4*) 132367f05d30Smrg os=-sysv4 132467f05d30Smrg ;; 132567f05d30Smrg -unixware*) 132667f05d30Smrg os=-sysv4.2uw 132767f05d30Smrg ;; 132867f05d30Smrg -gnu/linux*) 132967f05d30Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 133067f05d30Smrg ;; 133167f05d30Smrg # First accept the basic system types. 133267f05d30Smrg # The portable systems comes first. 133367f05d30Smrg # Each alternative MUST END IN A *, to match a version number. 133467f05d30Smrg # -sysv* is not here because it comes later, after sysvr4. 133567f05d30Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1336fffe5102Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1337fffe5102Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1338fffe5102Smrg | -sym* | -kopensolaris* \ 133967f05d30Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1340fffe5102Smrg | -aos* | -aros* \ 134167f05d30Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 134267f05d30Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1343fffe5102Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1344fffe5102Smrg | -openbsd* | -solidbsd* \ 1345fffe5102Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1346fffe5102Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 134767f05d30Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 134867f05d30Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1349fffe5102Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 13506dbd43aaSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1351fc51f767Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1352fc51f767Smrg | -linux-newlib* | -linux-uclibc* \ 1353fffe5102Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 135467f05d30Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 135567f05d30Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 135667f05d30Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 135767f05d30Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 135867f05d30Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1359fffe5102Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1360fffe5102Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 136167f05d30Smrg # Remember, each alternative MUST END IN *, to match a version number. 136267f05d30Smrg ;; 136367f05d30Smrg -qnx*) 136467f05d30Smrg case $basic_machine in 136567f05d30Smrg x86-* | i*86-*) 136667f05d30Smrg ;; 136767f05d30Smrg *) 136867f05d30Smrg os=-nto$os 136967f05d30Smrg ;; 137067f05d30Smrg esac 137167f05d30Smrg ;; 137267f05d30Smrg -nto-qnx*) 137367f05d30Smrg ;; 137467f05d30Smrg -nto*) 137567f05d30Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 137667f05d30Smrg ;; 137767f05d30Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1378fffe5102Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 137967f05d30Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 138067f05d30Smrg ;; 138167f05d30Smrg -mac*) 138267f05d30Smrg os=`echo $os | sed -e 's|mac|macos|'` 138367f05d30Smrg ;; 1384fffe5102Smrg -linux-dietlibc) 1385fffe5102Smrg os=-linux-dietlibc 1386fffe5102Smrg ;; 138767f05d30Smrg -linux*) 138867f05d30Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 138967f05d30Smrg ;; 139067f05d30Smrg -sunos5*) 139167f05d30Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 139267f05d30Smrg ;; 139367f05d30Smrg -sunos6*) 139467f05d30Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 139567f05d30Smrg ;; 139667f05d30Smrg -opened*) 139767f05d30Smrg os=-openedition 139867f05d30Smrg ;; 13996dbd43aaSmrg -os400*) 1400fffe5102Smrg os=-os400 1401fffe5102Smrg ;; 140267f05d30Smrg -wince*) 140367f05d30Smrg os=-wince 140467f05d30Smrg ;; 140567f05d30Smrg -osfrose*) 140667f05d30Smrg os=-osfrose 140767f05d30Smrg ;; 140867f05d30Smrg -osf*) 140967f05d30Smrg os=-osf 141067f05d30Smrg ;; 141167f05d30Smrg -utek*) 141267f05d30Smrg os=-bsd 141367f05d30Smrg ;; 141467f05d30Smrg -dynix*) 141567f05d30Smrg os=-bsd 141667f05d30Smrg ;; 141767f05d30Smrg -acis*) 141867f05d30Smrg os=-aos 141967f05d30Smrg ;; 142067f05d30Smrg -atheos*) 142167f05d30Smrg os=-atheos 142267f05d30Smrg ;; 1423fffe5102Smrg -syllable*) 1424fffe5102Smrg os=-syllable 1425fffe5102Smrg ;; 142667f05d30Smrg -386bsd) 142767f05d30Smrg os=-bsd 142867f05d30Smrg ;; 142967f05d30Smrg -ctix* | -uts*) 143067f05d30Smrg os=-sysv 143167f05d30Smrg ;; 143267f05d30Smrg -nova*) 143367f05d30Smrg os=-rtmk-nova 143467f05d30Smrg ;; 143567f05d30Smrg -ns2 ) 143667f05d30Smrg os=-nextstep2 143767f05d30Smrg ;; 143867f05d30Smrg -nsk*) 143967f05d30Smrg os=-nsk 144067f05d30Smrg ;; 144167f05d30Smrg # Preserve the version number of sinix5. 144267f05d30Smrg -sinix5.*) 144367f05d30Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 144467f05d30Smrg ;; 144567f05d30Smrg -sinix*) 144667f05d30Smrg os=-sysv4 144767f05d30Smrg ;; 14486dbd43aaSmrg -tpf*) 1449fffe5102Smrg os=-tpf 1450fffe5102Smrg ;; 145167f05d30Smrg -triton*) 145267f05d30Smrg os=-sysv3 145367f05d30Smrg ;; 145467f05d30Smrg -oss*) 145567f05d30Smrg os=-sysv3 145667f05d30Smrg ;; 145767f05d30Smrg -svr4) 145867f05d30Smrg os=-sysv4 145967f05d30Smrg ;; 146067f05d30Smrg -svr3) 146167f05d30Smrg os=-sysv3 146267f05d30Smrg ;; 146367f05d30Smrg -sysvr4) 146467f05d30Smrg os=-sysv4 146567f05d30Smrg ;; 146667f05d30Smrg # This must come after -sysvr4. 146767f05d30Smrg -sysv*) 146867f05d30Smrg ;; 146967f05d30Smrg -ose*) 147067f05d30Smrg os=-ose 147167f05d30Smrg ;; 147267f05d30Smrg -es1800*) 147367f05d30Smrg os=-ose 147467f05d30Smrg ;; 147567f05d30Smrg -xenix) 147667f05d30Smrg os=-xenix 147767f05d30Smrg ;; 147867f05d30Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 147967f05d30Smrg os=-mint 148067f05d30Smrg ;; 148167f05d30Smrg -aros*) 148267f05d30Smrg os=-aros 148367f05d30Smrg ;; 148467f05d30Smrg -kaos*) 148567f05d30Smrg os=-kaos 148667f05d30Smrg ;; 1487fffe5102Smrg -zvmoe) 1488fffe5102Smrg os=-zvmoe 1489fffe5102Smrg ;; 1490fffe5102Smrg -dicos*) 1491fffe5102Smrg os=-dicos 1492fffe5102Smrg ;; 14936dbd43aaSmrg -nacl*) 14946dbd43aaSmrg ;; 149567f05d30Smrg -none) 149667f05d30Smrg ;; 149767f05d30Smrg *) 149867f05d30Smrg # Get rid of the `-' at the beginning of $os. 149967f05d30Smrg os=`echo $os | sed 's/[^-]*-//'` 150067f05d30Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 150167f05d30Smrg exit 1 150267f05d30Smrg ;; 150367f05d30Smrgesac 150467f05d30Smrgelse 150567f05d30Smrg 150667f05d30Smrg# Here we handle the default operating systems that come with various machines. 150767f05d30Smrg# The value should be what the vendor currently ships out the door with their 150867f05d30Smrg# machine or put another way, the most popular os provided with the machine. 150967f05d30Smrg 151067f05d30Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 151167f05d30Smrg# "-sun"), then you have to tell the case statement up towards the top 151267f05d30Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 151367f05d30Smrg# will signal an error saying that MANUFACTURER isn't an operating 151467f05d30Smrg# system, and we'll never get to this point. 151567f05d30Smrg 151667f05d30Smrgcase $basic_machine in 15176dbd43aaSmrg score-*) 1518fffe5102Smrg os=-elf 1519fffe5102Smrg ;; 15206dbd43aaSmrg spu-*) 1521fffe5102Smrg os=-elf 1522fffe5102Smrg ;; 152367f05d30Smrg *-acorn) 152467f05d30Smrg os=-riscix1.2 152567f05d30Smrg ;; 152667f05d30Smrg arm*-rebel) 152767f05d30Smrg os=-linux 152867f05d30Smrg ;; 152967f05d30Smrg arm*-semi) 153067f05d30Smrg os=-aout 153167f05d30Smrg ;; 15326dbd43aaSmrg c4x-* | tic4x-*) 15336dbd43aaSmrg os=-coff 153467f05d30Smrg ;; 1535fc51f767Smrg tic54x-*) 1536fc51f767Smrg os=-coff 1537fc51f767Smrg ;; 1538fc51f767Smrg tic55x-*) 1539fc51f767Smrg os=-coff 1540fc51f767Smrg ;; 1541fc51f767Smrg tic6x-*) 1542fc51f767Smrg os=-coff 1543fc51f767Smrg ;; 154467f05d30Smrg # This must come before the *-dec entry. 154567f05d30Smrg pdp10-*) 154667f05d30Smrg os=-tops20 154767f05d30Smrg ;; 154867f05d30Smrg pdp11-*) 154967f05d30Smrg os=-none 155067f05d30Smrg ;; 155167f05d30Smrg *-dec | vax-*) 155267f05d30Smrg os=-ultrix4.2 155367f05d30Smrg ;; 155467f05d30Smrg m68*-apollo) 155567f05d30Smrg os=-domain 155667f05d30Smrg ;; 155767f05d30Smrg i386-sun) 155867f05d30Smrg os=-sunos4.0.2 155967f05d30Smrg ;; 156067f05d30Smrg m68000-sun) 156167f05d30Smrg os=-sunos3 156267f05d30Smrg # This also exists in the configure program, but was not the 156367f05d30Smrg # default. 156467f05d30Smrg # os=-sunos4 156567f05d30Smrg ;; 156667f05d30Smrg m68*-cisco) 156767f05d30Smrg os=-aout 156867f05d30Smrg ;; 15696dbd43aaSmrg mep-*) 1570fffe5102Smrg os=-elf 1571fffe5102Smrg ;; 157267f05d30Smrg mips*-cisco) 157367f05d30Smrg os=-elf 157467f05d30Smrg ;; 157567f05d30Smrg mips*-*) 157667f05d30Smrg os=-elf 157767f05d30Smrg ;; 157867f05d30Smrg or32-*) 157967f05d30Smrg os=-coff 158067f05d30Smrg ;; 158167f05d30Smrg *-tti) # must be before sparc entry or we get the wrong os. 158267f05d30Smrg os=-sysv3 158367f05d30Smrg ;; 158467f05d30Smrg sparc-* | *-sun) 158567f05d30Smrg os=-sunos4.1.1 158667f05d30Smrg ;; 158767f05d30Smrg *-be) 158867f05d30Smrg os=-beos 158967f05d30Smrg ;; 1590fffe5102Smrg *-haiku) 1591fffe5102Smrg os=-haiku 1592fffe5102Smrg ;; 159367f05d30Smrg *-ibm) 159467f05d30Smrg os=-aix 159567f05d30Smrg ;; 15966dbd43aaSmrg *-knuth) 1597fffe5102Smrg os=-mmixware 1598fffe5102Smrg ;; 159967f05d30Smrg *-wec) 160067f05d30Smrg os=-proelf 160167f05d30Smrg ;; 160267f05d30Smrg *-winbond) 160367f05d30Smrg os=-proelf 160467f05d30Smrg ;; 160567f05d30Smrg *-oki) 160667f05d30Smrg os=-proelf 160767f05d30Smrg ;; 160867f05d30Smrg *-hp) 160967f05d30Smrg os=-hpux 161067f05d30Smrg ;; 161167f05d30Smrg *-hitachi) 161267f05d30Smrg os=-hiux 161367f05d30Smrg ;; 161467f05d30Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 161567f05d30Smrg os=-sysv 161667f05d30Smrg ;; 161767f05d30Smrg *-cbm) 161867f05d30Smrg os=-amigaos 161967f05d30Smrg ;; 162067f05d30Smrg *-dg) 162167f05d30Smrg os=-dgux 162267f05d30Smrg ;; 162367f05d30Smrg *-dolphin) 162467f05d30Smrg os=-sysv3 162567f05d30Smrg ;; 162667f05d30Smrg m68k-ccur) 162767f05d30Smrg os=-rtu 162867f05d30Smrg ;; 162967f05d30Smrg m88k-omron*) 163067f05d30Smrg os=-luna 163167f05d30Smrg ;; 163267f05d30Smrg *-next ) 163367f05d30Smrg os=-nextstep 163467f05d30Smrg ;; 163567f05d30Smrg *-sequent) 163667f05d30Smrg os=-ptx 163767f05d30Smrg ;; 163867f05d30Smrg *-crds) 163967f05d30Smrg os=-unos 164067f05d30Smrg ;; 164167f05d30Smrg *-ns) 164267f05d30Smrg os=-genix 164367f05d30Smrg ;; 164467f05d30Smrg i370-*) 164567f05d30Smrg os=-mvs 164667f05d30Smrg ;; 164767f05d30Smrg *-next) 164867f05d30Smrg os=-nextstep3 164967f05d30Smrg ;; 165067f05d30Smrg *-gould) 165167f05d30Smrg os=-sysv 165267f05d30Smrg ;; 165367f05d30Smrg *-highlevel) 165467f05d30Smrg os=-bsd 165567f05d30Smrg ;; 165667f05d30Smrg *-encore) 165767f05d30Smrg os=-bsd 165867f05d30Smrg ;; 165967f05d30Smrg *-sgi) 166067f05d30Smrg os=-irix 166167f05d30Smrg ;; 166267f05d30Smrg *-siemens) 166367f05d30Smrg os=-sysv4 166467f05d30Smrg ;; 166567f05d30Smrg *-masscomp) 166667f05d30Smrg os=-rtu 166767f05d30Smrg ;; 166867f05d30Smrg f30[01]-fujitsu | f700-fujitsu) 166967f05d30Smrg os=-uxpv 167067f05d30Smrg ;; 167167f05d30Smrg *-rom68k) 167267f05d30Smrg os=-coff 167367f05d30Smrg ;; 167467f05d30Smrg *-*bug) 167567f05d30Smrg os=-coff 167667f05d30Smrg ;; 167767f05d30Smrg *-apple) 167867f05d30Smrg os=-macos 167967f05d30Smrg ;; 168067f05d30Smrg *-atari*) 168167f05d30Smrg os=-mint 168267f05d30Smrg ;; 168367f05d30Smrg *) 168467f05d30Smrg os=-none 168567f05d30Smrg ;; 168667f05d30Smrgesac 168767f05d30Smrgfi 168867f05d30Smrg 168967f05d30Smrg# Here we handle the case where we know the os, and the CPU type, but not the 169067f05d30Smrg# manufacturer. We pick the logical manufacturer. 169167f05d30Smrgvendor=unknown 169267f05d30Smrgcase $basic_machine in 169367f05d30Smrg *-unknown) 169467f05d30Smrg case $os in 169567f05d30Smrg -riscix*) 169667f05d30Smrg vendor=acorn 169767f05d30Smrg ;; 169867f05d30Smrg -sunos*) 169967f05d30Smrg vendor=sun 170067f05d30Smrg ;; 1701fffe5102Smrg -cnk*|-aix*) 170267f05d30Smrg vendor=ibm 170367f05d30Smrg ;; 170467f05d30Smrg -beos*) 170567f05d30Smrg vendor=be 170667f05d30Smrg ;; 170767f05d30Smrg -hpux*) 170867f05d30Smrg vendor=hp 170967f05d30Smrg ;; 171067f05d30Smrg -mpeix*) 171167f05d30Smrg vendor=hp 171267f05d30Smrg ;; 171367f05d30Smrg -hiux*) 171467f05d30Smrg vendor=hitachi 171567f05d30Smrg ;; 171667f05d30Smrg -unos*) 171767f05d30Smrg vendor=crds 171867f05d30Smrg ;; 171967f05d30Smrg -dgux*) 172067f05d30Smrg vendor=dg 172167f05d30Smrg ;; 172267f05d30Smrg -luna*) 172367f05d30Smrg vendor=omron 172467f05d30Smrg ;; 172567f05d30Smrg -genix*) 172667f05d30Smrg vendor=ns 172767f05d30Smrg ;; 172867f05d30Smrg -mvs* | -opened*) 172967f05d30Smrg vendor=ibm 173067f05d30Smrg ;; 1731fffe5102Smrg -os400*) 1732fffe5102Smrg vendor=ibm 1733fffe5102Smrg ;; 173467f05d30Smrg -ptx*) 173567f05d30Smrg vendor=sequent 173667f05d30Smrg ;; 1737fffe5102Smrg -tpf*) 1738fffe5102Smrg vendor=ibm 1739fffe5102Smrg ;; 174067f05d30Smrg -vxsim* | -vxworks* | -windiss*) 174167f05d30Smrg vendor=wrs 174267f05d30Smrg ;; 174367f05d30Smrg -aux*) 174467f05d30Smrg vendor=apple 174567f05d30Smrg ;; 174667f05d30Smrg -hms*) 174767f05d30Smrg vendor=hitachi 174867f05d30Smrg ;; 174967f05d30Smrg -mpw* | -macos*) 175067f05d30Smrg vendor=apple 175167f05d30Smrg ;; 175267f05d30Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 175367f05d30Smrg vendor=atari 175467f05d30Smrg ;; 175567f05d30Smrg -vos*) 175667f05d30Smrg vendor=stratus 175767f05d30Smrg ;; 175867f05d30Smrg esac 175967f05d30Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 176067f05d30Smrg ;; 176167f05d30Smrgesac 176267f05d30Smrg 176367f05d30Smrgecho $basic_machine$os 1764fffe5102Smrgexit 176567f05d30Smrg 176667f05d30Smrg# Local variables: 176767f05d30Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 176867f05d30Smrg# time-stamp-start: "timestamp='" 176967f05d30Smrg# time-stamp-format: "%:y-%02m-%02d" 177067f05d30Smrg# time-stamp-end: "'" 177167f05d30Smrg# End: 1772