config.sub revision b4d38c65
115fb4814Smrg#! /bin/sh 215fb4814Smrg# Configuration validation subroutine script. 315fb4814Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4b4d38c65Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5b4d38c65Smrg# 2011, 2012 Free Software Foundation, Inc. 615fb4814Smrg 7b4d38c65Smrgtimestamp='2012-01-01' 815fb4814Smrg 915fb4814Smrg# This file is (in principle) common to ALL GNU software. 1015fb4814Smrg# The presence of a machine in this file suggests that SOME GNU software 1115fb4814Smrg# can handle that machine. It does not imply ALL GNU software can. 1215fb4814Smrg# 1315fb4814Smrg# This file is free software; you can redistribute it and/or modify 1415fb4814Smrg# it under the terms of the GNU General Public License as published by 1515fb4814Smrg# the Free Software Foundation; either version 2 of the License, or 1615fb4814Smrg# (at your option) any later version. 1715fb4814Smrg# 1815fb4814Smrg# This program is distributed in the hope that it will be useful, 1915fb4814Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2015fb4814Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2115fb4814Smrg# GNU General Public License for more details. 2215fb4814Smrg# 2315fb4814Smrg# You should have received a copy of the GNU General Public License 2415fb4814Smrg# along with this program; if not, write to the Free Software 25de78e416Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26de78e416Smrg# 02110-1301, USA. 27de78e416Smrg# 2815fb4814Smrg# As a special exception to the GNU General Public License, if you 2915fb4814Smrg# distribute this file as part of a program that contains a 3015fb4814Smrg# configuration script generated by Autoconf, you may include it under 3115fb4814Smrg# the same distribution terms that you use for the rest of that program. 3215fb4814Smrg 33de78e416Smrg 3415fb4814Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 35b4d38c65Smrg# diff and a properly formatted GNU ChangeLog entry. 3615fb4814Smrg# 3715fb4814Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3815fb4814Smrg# Supply the specified configuration type as an argument. 3915fb4814Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 4015fb4814Smrg# Otherwise, we print the canonical config type on stdout and succeed. 4115fb4814Smrg 42b4d38c65Smrg# You can get the latest version of this script from: 43b4d38c65Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44b4d38c65Smrg 4515fb4814Smrg# This file is supposed to be the same for all GNU packages 4615fb4814Smrg# and recognize all the CPU types, system types and aliases 4715fb4814Smrg# that are meaningful with *any* GNU software. 4815fb4814Smrg# Each package is responsible for reporting which valid configurations 4915fb4814Smrg# it does not support. The user should be able to distinguish 5015fb4814Smrg# a failure to support a valid configuration from a meaningless 5115fb4814Smrg# configuration. 5215fb4814Smrg 5315fb4814Smrg# The goal of this file is to map all the various variations of a given 5415fb4814Smrg# machine specification into a single specification in the form: 5515fb4814Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5615fb4814Smrg# or in some cases, the newer four-part form: 5715fb4814Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5815fb4814Smrg# It is wrong to echo any other type of specification. 5915fb4814Smrg 6015fb4814Smrgme=`echo "$0" | sed -e 's,.*/,,'` 6115fb4814Smrg 6215fb4814Smrgusage="\ 6315fb4814SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6415fb4814Smrg $0 [OPTION] ALIAS 6515fb4814Smrg 6615fb4814SmrgCanonicalize a configuration name. 6715fb4814Smrg 6815fb4814SmrgOperation modes: 6915fb4814Smrg -h, --help print this help, then exit 7015fb4814Smrg -t, --time-stamp print date of last modification, then exit 7115fb4814Smrg -v, --version print version number, then exit 7215fb4814Smrg 7315fb4814SmrgReport bugs and patches to <config-patches@gnu.org>." 7415fb4814Smrg 7515fb4814Smrgversion="\ 7615fb4814SmrgGNU config.sub ($timestamp) 7715fb4814Smrg 78b4d38c65SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 79b4d38c65Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 80b534f209SmrgFree Software Foundation, Inc. 8115fb4814Smrg 8215fb4814SmrgThis is free software; see the source for copying conditions. There is NO 8315fb4814Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8415fb4814Smrg 8515fb4814Smrghelp=" 8615fb4814SmrgTry \`$me --help' for more information." 8715fb4814Smrg 8815fb4814Smrg# Parse command line 8915fb4814Smrgwhile test $# -gt 0 ; do 9015fb4814Smrg case $1 in 9115fb4814Smrg --time-stamp | --time* | -t ) 92de78e416Smrg echo "$timestamp" ; exit ;; 9315fb4814Smrg --version | -v ) 94de78e416Smrg echo "$version" ; exit ;; 9515fb4814Smrg --help | --h* | -h ) 96de78e416Smrg echo "$usage"; exit ;; 9715fb4814Smrg -- ) # Stop option processing 9815fb4814Smrg shift; break ;; 9915fb4814Smrg - ) # Use stdin as input. 10015fb4814Smrg break ;; 10115fb4814Smrg -* ) 10215fb4814Smrg echo "$me: invalid option $1$help" 10315fb4814Smrg exit 1 ;; 10415fb4814Smrg 10515fb4814Smrg *local*) 10615fb4814Smrg # First pass through any local machine types. 10715fb4814Smrg echo $1 108de78e416Smrg exit ;; 10915fb4814Smrg 11015fb4814Smrg * ) 11115fb4814Smrg break ;; 11215fb4814Smrg esac 11315fb4814Smrgdone 11415fb4814Smrg 11515fb4814Smrgcase $# in 11615fb4814Smrg 0) echo "$me: missing argument$help" >&2 11715fb4814Smrg exit 1;; 11815fb4814Smrg 1) ;; 11915fb4814Smrg *) echo "$me: too many arguments$help" >&2 12015fb4814Smrg exit 1;; 12115fb4814Smrgesac 12215fb4814Smrg 12315fb4814Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12415fb4814Smrg# Here we must recognize all the valid KERNEL-OS combinations. 12515fb4814Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12615fb4814Smrgcase $maybe_os in 127b4d38c65Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128b4d38c65Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129b4d38c65Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 130b4d38c65Smrg kopensolaris*-gnu* | \ 131de78e416Smrg storm-chaos* | os2-emx* | rtmk-nova*) 13215fb4814Smrg os=-$maybe_os 13315fb4814Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 13415fb4814Smrg ;; 13515fb4814Smrg *) 13615fb4814Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13715fb4814Smrg if [ $basic_machine != $1 ] 13815fb4814Smrg then os=`echo $1 | sed 's/.*-/-/'` 13915fb4814Smrg else os=; fi 14015fb4814Smrg ;; 14115fb4814Smrgesac 14215fb4814Smrg 14315fb4814Smrg### Let's recognize common machines as not being operating systems so 14415fb4814Smrg### that things like config.sub decstation-3100 work. We also 14515fb4814Smrg### recognize some manufacturers as not being operating systems, so we 14615fb4814Smrg### can provide default operating systems below. 14715fb4814Smrgcase $os in 14815fb4814Smrg -sun*os*) 14915fb4814Smrg # Prevent following clause from handling this invalid input. 15015fb4814Smrg ;; 15115fb4814Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 15215fb4814Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 15315fb4814Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 15415fb4814Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15515fb4814Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15615fb4814Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157b4d38c65Smrg -apple | -axis | -knuth | -cray | -microblaze) 15815fb4814Smrg os= 15915fb4814Smrg basic_machine=$1 16015fb4814Smrg ;; 161b4d38c65Smrg -bluegene*) 162b4d38c65Smrg os=-cnk 163b4d38c65Smrg ;; 16415fb4814Smrg -sim | -cisco | -oki | -wec | -winbond) 16515fb4814Smrg os= 16615fb4814Smrg basic_machine=$1 16715fb4814Smrg ;; 16815fb4814Smrg -scout) 16915fb4814Smrg ;; 17015fb4814Smrg -wrs) 17115fb4814Smrg os=-vxworks 17215fb4814Smrg basic_machine=$1 17315fb4814Smrg ;; 17415fb4814Smrg -chorusos*) 17515fb4814Smrg os=-chorusos 17615fb4814Smrg basic_machine=$1 17715fb4814Smrg ;; 178b4d38c65Smrg -chorusrdb) 179b4d38c65Smrg os=-chorusrdb 18015fb4814Smrg basic_machine=$1 181b4d38c65Smrg ;; 18215fb4814Smrg -hiux*) 18315fb4814Smrg os=-hiuxwe2 18415fb4814Smrg ;; 185de78e416Smrg -sco6) 186de78e416Smrg os=-sco5v6 187de78e416Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 188de78e416Smrg ;; 18915fb4814Smrg -sco5) 19015fb4814Smrg os=-sco3.2v5 19115fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19215fb4814Smrg ;; 19315fb4814Smrg -sco4) 19415fb4814Smrg os=-sco3.2v4 19515fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19615fb4814Smrg ;; 19715fb4814Smrg -sco3.2.[4-9]*) 19815fb4814Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19915fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20015fb4814Smrg ;; 20115fb4814Smrg -sco3.2v[4-9]*) 20215fb4814Smrg # Don't forget version if it is 3.2v4 or newer. 20315fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20415fb4814Smrg ;; 205de78e416Smrg -sco5v6*) 206de78e416Smrg # Don't forget version if it is 3.2v4 or newer. 207de78e416Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 208de78e416Smrg ;; 20915fb4814Smrg -sco*) 21015fb4814Smrg os=-sco3.2v2 21115fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21215fb4814Smrg ;; 21315fb4814Smrg -udk*) 21415fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21515fb4814Smrg ;; 21615fb4814Smrg -isc) 21715fb4814Smrg os=-isc2.2 21815fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21915fb4814Smrg ;; 22015fb4814Smrg -clix*) 22115fb4814Smrg basic_machine=clipper-intergraph 22215fb4814Smrg ;; 22315fb4814Smrg -isc*) 22415fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22515fb4814Smrg ;; 22615fb4814Smrg -lynx*) 22715fb4814Smrg os=-lynxos 22815fb4814Smrg ;; 22915fb4814Smrg -ptx*) 23015fb4814Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23115fb4814Smrg ;; 23215fb4814Smrg -windowsnt*) 23315fb4814Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23415fb4814Smrg ;; 23515fb4814Smrg -psos*) 23615fb4814Smrg os=-psos 23715fb4814Smrg ;; 23815fb4814Smrg -mint | -mint[0-9]*) 23915fb4814Smrg basic_machine=m68k-atari 24015fb4814Smrg os=-mint 24115fb4814Smrg ;; 24215fb4814Smrgesac 24315fb4814Smrg 24415fb4814Smrg# Decode aliases for certain CPU-COMPANY combinations. 24515fb4814Smrgcase $basic_machine in 24615fb4814Smrg # Recognize the basic CPU types without company name. 24715fb4814Smrg # Some are omitted here because they have special meanings below. 24815fb4814Smrg 1750a | 580 \ 24915fb4814Smrg | a29k \ 25015fb4814Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25115fb4814Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 252de78e416Smrg | am33_2.0 \ 253de78e416Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 254b4d38c65Smrg | be32 | be64 \ 255de78e416Smrg | bfin \ 25615fb4814Smrg | c4x | clipper \ 25715fb4814Smrg | d10v | d30v | dlx | dsp16xx \ 258b4d38c65Smrg | epiphany \ 259de78e416Smrg | fido | fr30 | frv \ 26015fb4814Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 261b4d38c65Smrg | hexagon \ 26215fb4814Smrg | i370 | i860 | i960 | ia64 \ 263de78e416Smrg | ip2k | iq2000 \ 264b4d38c65Smrg | le32 | le64 \ 265b4d38c65Smrg | lm32 \ 266de78e416Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 267b4d38c65Smrg | maxq | mb | microblaze | mcore | mep | metag \ 26815fb4814Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 26915fb4814Smrg | mips16 \ 27015fb4814Smrg | mips64 | mips64el \ 271b4d38c65Smrg | mips64octeon | mips64octeonel \ 272b534f209Smrg | mips64orion | mips64orionel \ 273b4d38c65Smrg | mips64r5900 | mips64r5900el \ 274b4d38c65Smrg | mips64vr | mips64vrel \ 27515fb4814Smrg | mips64vr4100 | mips64vr4100el \ 27615fb4814Smrg | mips64vr4300 | mips64vr4300el \ 27715fb4814Smrg | mips64vr5000 | mips64vr5000el \ 278de78e416Smrg | mips64vr5900 | mips64vr5900el \ 27915fb4814Smrg | mipsisa32 | mipsisa32el \ 28015fb4814Smrg | mipsisa32r2 | mipsisa32r2el \ 28115fb4814Smrg | mipsisa64 | mipsisa64el \ 282de78e416Smrg | mipsisa64r2 | mipsisa64r2el \ 28315fb4814Smrg | mipsisa64sb1 | mipsisa64sb1el \ 28415fb4814Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 28515fb4814Smrg | mipstx39 | mipstx39el \ 28615fb4814Smrg | mn10200 | mn10300 \ 287b4d38c65Smrg | moxie \ 288de78e416Smrg | mt \ 28915fb4814Smrg | msp430 \ 290b4d38c65Smrg | nds32 | nds32le | nds32be \ 291de78e416Smrg | nios | nios2 \ 29215fb4814Smrg | ns16k | ns32k \ 293b4d38c65Smrg | open8 \ 294de78e416Smrg | or32 \ 29515fb4814Smrg | pdp10 | pdp11 | pj | pjl \ 296b4d38c65Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 29715fb4814Smrg | pyramid \ 298b4d38c65Smrg | rl78 | rx \ 299de78e416Smrg | score \ 300b4d38c65Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30115fb4814Smrg | sh64 | sh64le \ 302de78e416Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 303de78e416Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 304b4d38c65Smrg | spu \ 305b4d38c65Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 306b4d38c65Smrg | ubicom32 \ 307b4d38c65Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 30815fb4814Smrg | we32k \ 309b4d38c65Smrg | x86 | xc16x | xstormy16 | xtensa \ 310b4d38c65Smrg | z8k | z80) 31115fb4814Smrg basic_machine=$basic_machine-unknown 31215fb4814Smrg ;; 313b4d38c65Smrg c54x) 314b4d38c65Smrg basic_machine=tic54x-unknown 315b4d38c65Smrg ;; 316b4d38c65Smrg c55x) 317b4d38c65Smrg basic_machine=tic55x-unknown 318b4d38c65Smrg ;; 319b4d38c65Smrg c6x) 320b4d38c65Smrg basic_machine=tic6x-unknown 321b4d38c65Smrg ;; 322b4d38c65Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 32315fb4814Smrg basic_machine=$basic_machine-unknown 32415fb4814Smrg os=-none 32515fb4814Smrg ;; 32615fb4814Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 32715fb4814Smrg ;; 328de78e416Smrg ms1) 329de78e416Smrg basic_machine=mt-unknown 330de78e416Smrg ;; 33115fb4814Smrg 332b4d38c65Smrg strongarm | thumb | xscale) 333b4d38c65Smrg basic_machine=arm-unknown 334b4d38c65Smrg ;; 335b4d38c65Smrg 336b4d38c65Smrg xscaleeb) 337b4d38c65Smrg basic_machine=armeb-unknown 338b4d38c65Smrg ;; 339b4d38c65Smrg 340b4d38c65Smrg xscaleel) 341b4d38c65Smrg basic_machine=armel-unknown 342b4d38c65Smrg ;; 343b4d38c65Smrg 34415fb4814Smrg # We use `pc' rather than `unknown' 34515fb4814Smrg # because (1) that's what they normally are, and 34615fb4814Smrg # (2) the word "unknown" tends to confuse beginning users. 34715fb4814Smrg i*86 | x86_64) 34815fb4814Smrg basic_machine=$basic_machine-pc 34915fb4814Smrg ;; 35015fb4814Smrg # Object if more than one company name word. 35115fb4814Smrg *-*-*) 35215fb4814Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 35315fb4814Smrg exit 1 35415fb4814Smrg ;; 35515fb4814Smrg # Recognize the basic CPU types with company name. 35615fb4814Smrg 580-* \ 35715fb4814Smrg | a29k-* \ 35815fb4814Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 35915fb4814Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 36015fb4814Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 36115fb4814Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 362de78e416Smrg | avr-* | avr32-* \ 363b4d38c65Smrg | be32-* | be64-* \ 364de78e416Smrg | bfin-* | bs2000-* \ 365b4d38c65Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 366de78e416Smrg | clipper-* | craynv-* | cydra-* \ 36715fb4814Smrg | d10v-* | d30v-* | dlx-* \ 36815fb4814Smrg | elxsi-* \ 369de78e416Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 37015fb4814Smrg | h8300-* | h8500-* \ 37115fb4814Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 372b4d38c65Smrg | hexagon-* \ 37315fb4814Smrg | i*86-* | i860-* | i960-* | ia64-* \ 374de78e416Smrg | ip2k-* | iq2000-* \ 375b4d38c65Smrg | le32-* | le64-* \ 376b4d38c65Smrg | lm32-* \ 377de78e416Smrg | m32c-* | m32r-* | m32rle-* \ 37815fb4814Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 379b4d38c65Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 38015fb4814Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 38115fb4814Smrg | mips16-* \ 38215fb4814Smrg | mips64-* | mips64el-* \ 383b4d38c65Smrg | mips64octeon-* | mips64octeonel-* \ 384b534f209Smrg | mips64orion-* | mips64orionel-* \ 385b4d38c65Smrg | mips64r5900-* | mips64r5900el-* \ 386b4d38c65Smrg | mips64vr-* | mips64vrel-* \ 38715fb4814Smrg | mips64vr4100-* | mips64vr4100el-* \ 38815fb4814Smrg | mips64vr4300-* | mips64vr4300el-* \ 38915fb4814Smrg | mips64vr5000-* | mips64vr5000el-* \ 390de78e416Smrg | mips64vr5900-* | mips64vr5900el-* \ 39115fb4814Smrg | mipsisa32-* | mipsisa32el-* \ 39215fb4814Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 39315fb4814Smrg | mipsisa64-* | mipsisa64el-* \ 394de78e416Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 39515fb4814Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 39615fb4814Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 39715fb4814Smrg | mipstx39-* | mipstx39el-* \ 398de78e416Smrg | mmix-* \ 399de78e416Smrg | mt-* \ 40015fb4814Smrg | msp430-* \ 401b4d38c65Smrg | nds32-* | nds32le-* | nds32be-* \ 402de78e416Smrg | nios-* | nios2-* \ 403de78e416Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 404b4d38c65Smrg | open8-* \ 40515fb4814Smrg | orion-* \ 40615fb4814Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 407b4d38c65Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 40815fb4814Smrg | pyramid-* \ 409b4d38c65Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 410b4d38c65Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 41115fb4814Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 412de78e416Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 413de78e416Smrg | sparclite-* \ 414b4d38c65Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 415b4d38c65Smrg | tahoe-* \ 416b534f209Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 417b4d38c65Smrg | tile*-* \ 41815fb4814Smrg | tron-* \ 419b4d38c65Smrg | ubicom32-* \ 420b4d38c65Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 421b4d38c65Smrg | vax-* \ 42215fb4814Smrg | we32k-* \ 423b4d38c65Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 424b4d38c65Smrg | xstormy16-* | xtensa*-* \ 42515fb4814Smrg | ymp-* \ 426b4d38c65Smrg | z8k-* | z80-*) 427b4d38c65Smrg ;; 428b4d38c65Smrg # Recognize the basic CPU types without company name, with glob match. 429b4d38c65Smrg xtensa*) 430b4d38c65Smrg basic_machine=$basic_machine-unknown 43183cab373Smrg ;; 43215fb4814Smrg # Recognize the various machine names and aliases which stand 43315fb4814Smrg # for a CPU type and a company and sometimes even an OS. 43415fb4814Smrg 386bsd) 43515fb4814Smrg basic_machine=i386-unknown 43615fb4814Smrg os=-bsd 43715fb4814Smrg ;; 43815fb4814Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 43915fb4814Smrg basic_machine=m68000-att 44015fb4814Smrg ;; 44115fb4814Smrg 3b*) 44215fb4814Smrg basic_machine=we32k-att 44315fb4814Smrg ;; 44415fb4814Smrg a29khif) 44515fb4814Smrg basic_machine=a29k-amd 44615fb4814Smrg os=-udi 44715fb4814Smrg ;; 448b4d38c65Smrg abacus) 449de78e416Smrg basic_machine=abacus-unknown 450de78e416Smrg ;; 45115fb4814Smrg adobe68k) 45215fb4814Smrg basic_machine=m68010-adobe 45315fb4814Smrg os=-scout 45415fb4814Smrg ;; 45515fb4814Smrg alliant | fx80) 45615fb4814Smrg basic_machine=fx80-alliant 45715fb4814Smrg ;; 45815fb4814Smrg altos | altos3068) 45915fb4814Smrg basic_machine=m68k-altos 46015fb4814Smrg ;; 46115fb4814Smrg am29k) 46215fb4814Smrg basic_machine=a29k-none 46315fb4814Smrg os=-bsd 46415fb4814Smrg ;; 46515fb4814Smrg amd64) 46615fb4814Smrg basic_machine=x86_64-pc 46715fb4814Smrg ;; 468de78e416Smrg amd64-*) 469de78e416Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 470de78e416Smrg ;; 47115fb4814Smrg amdahl) 47215fb4814Smrg basic_machine=580-amdahl 47315fb4814Smrg os=-sysv 47415fb4814Smrg ;; 47515fb4814Smrg amiga | amiga-*) 47615fb4814Smrg basic_machine=m68k-unknown 47715fb4814Smrg ;; 47815fb4814Smrg amigaos | amigados) 47915fb4814Smrg basic_machine=m68k-unknown 48015fb4814Smrg os=-amigaos 48115fb4814Smrg ;; 48215fb4814Smrg amigaunix | amix) 48315fb4814Smrg basic_machine=m68k-unknown 48415fb4814Smrg os=-sysv4 48515fb4814Smrg ;; 48615fb4814Smrg apollo68) 48715fb4814Smrg basic_machine=m68k-apollo 48815fb4814Smrg os=-sysv 48915fb4814Smrg ;; 49015fb4814Smrg apollo68bsd) 49115fb4814Smrg basic_machine=m68k-apollo 49215fb4814Smrg os=-bsd 49315fb4814Smrg ;; 494b4d38c65Smrg aros) 495b4d38c65Smrg basic_machine=i386-pc 496b4d38c65Smrg os=-aros 497b4d38c65Smrg ;; 49815fb4814Smrg aux) 49915fb4814Smrg basic_machine=m68k-apple 50015fb4814Smrg os=-aux 50115fb4814Smrg ;; 50215fb4814Smrg balance) 50315fb4814Smrg basic_machine=ns32k-sequent 50415fb4814Smrg os=-dynix 50515fb4814Smrg ;; 506b4d38c65Smrg blackfin) 507b4d38c65Smrg basic_machine=bfin-unknown 508b4d38c65Smrg os=-linux 509b4d38c65Smrg ;; 510b4d38c65Smrg blackfin-*) 511b4d38c65Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 512b4d38c65Smrg os=-linux 513b4d38c65Smrg ;; 514b4d38c65Smrg bluegene*) 515b4d38c65Smrg basic_machine=powerpc-ibm 516b4d38c65Smrg os=-cnk 517b4d38c65Smrg ;; 518b4d38c65Smrg c54x-*) 519b4d38c65Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 520b4d38c65Smrg ;; 521b4d38c65Smrg c55x-*) 522b4d38c65Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 523b4d38c65Smrg ;; 524b4d38c65Smrg c6x-*) 525b4d38c65Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 526b4d38c65Smrg ;; 52715fb4814Smrg c90) 52815fb4814Smrg basic_machine=c90-cray 52915fb4814Smrg os=-unicos 53015fb4814Smrg ;; 531b4d38c65Smrg cegcc) 532b4d38c65Smrg basic_machine=arm-unknown 533b4d38c65Smrg os=-cegcc 534b4d38c65Smrg ;; 53515fb4814Smrg convex-c1) 53615fb4814Smrg basic_machine=c1-convex 53715fb4814Smrg os=-bsd 53815fb4814Smrg ;; 53915fb4814Smrg convex-c2) 54015fb4814Smrg basic_machine=c2-convex 54115fb4814Smrg os=-bsd 54215fb4814Smrg ;; 54315fb4814Smrg convex-c32) 54415fb4814Smrg basic_machine=c32-convex 54515fb4814Smrg os=-bsd 54615fb4814Smrg ;; 54715fb4814Smrg convex-c34) 54815fb4814Smrg basic_machine=c34-convex 54915fb4814Smrg os=-bsd 55015fb4814Smrg ;; 55115fb4814Smrg convex-c38) 55215fb4814Smrg basic_machine=c38-convex 55315fb4814Smrg os=-bsd 55415fb4814Smrg ;; 55515fb4814Smrg cray | j90) 55615fb4814Smrg basic_machine=j90-cray 55715fb4814Smrg os=-unicos 55815fb4814Smrg ;; 559de78e416Smrg craynv) 560de78e416Smrg basic_machine=craynv-cray 561de78e416Smrg os=-unicosmp 562de78e416Smrg ;; 563b4d38c65Smrg cr16 | cr16-*) 564b4d38c65Smrg basic_machine=cr16-unknown 565de78e416Smrg os=-elf 566de78e416Smrg ;; 56715fb4814Smrg crds | unos) 56815fb4814Smrg basic_machine=m68k-crds 56915fb4814Smrg ;; 570de78e416Smrg crisv32 | crisv32-* | etraxfs*) 571de78e416Smrg basic_machine=crisv32-axis 572de78e416Smrg ;; 57315fb4814Smrg cris | cris-* | etrax*) 57415fb4814Smrg basic_machine=cris-axis 57515fb4814Smrg ;; 576de78e416Smrg crx) 577de78e416Smrg basic_machine=crx-unknown 578de78e416Smrg os=-elf 579de78e416Smrg ;; 58015fb4814Smrg da30 | da30-*) 58115fb4814Smrg basic_machine=m68k-da30 58215fb4814Smrg ;; 58315fb4814Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 58415fb4814Smrg basic_machine=mips-dec 58515fb4814Smrg ;; 58615fb4814Smrg decsystem10* | dec10*) 58715fb4814Smrg basic_machine=pdp10-dec 58815fb4814Smrg os=-tops10 58915fb4814Smrg ;; 59015fb4814Smrg decsystem20* | dec20*) 59115fb4814Smrg basic_machine=pdp10-dec 59215fb4814Smrg os=-tops20 59315fb4814Smrg ;; 59415fb4814Smrg delta | 3300 | motorola-3300 | motorola-delta \ 59515fb4814Smrg | 3300-motorola | delta-motorola) 59615fb4814Smrg basic_machine=m68k-motorola 59715fb4814Smrg ;; 59815fb4814Smrg delta88) 59915fb4814Smrg basic_machine=m88k-motorola 60015fb4814Smrg os=-sysv3 60115fb4814Smrg ;; 602b4d38c65Smrg dicos) 603b4d38c65Smrg basic_machine=i686-pc 604b4d38c65Smrg os=-dicos 605b4d38c65Smrg ;; 606de78e416Smrg djgpp) 607de78e416Smrg basic_machine=i586-pc 608de78e416Smrg os=-msdosdjgpp 609de78e416Smrg ;; 61015fb4814Smrg dpx20 | dpx20-*) 61115fb4814Smrg basic_machine=rs6000-bull 61215fb4814Smrg os=-bosx 61315fb4814Smrg ;; 61415fb4814Smrg dpx2* | dpx2*-bull) 61515fb4814Smrg basic_machine=m68k-bull 61615fb4814Smrg os=-sysv3 61715fb4814Smrg ;; 61815fb4814Smrg ebmon29k) 61915fb4814Smrg basic_machine=a29k-amd 62015fb4814Smrg os=-ebmon 62115fb4814Smrg ;; 62215fb4814Smrg elxsi) 62315fb4814Smrg basic_machine=elxsi-elxsi 62415fb4814Smrg os=-bsd 62515fb4814Smrg ;; 62615fb4814Smrg encore | umax | mmax) 62715fb4814Smrg basic_machine=ns32k-encore 62815fb4814Smrg ;; 62915fb4814Smrg es1800 | OSE68k | ose68k | ose | OSE) 63015fb4814Smrg basic_machine=m68k-ericsson 63115fb4814Smrg os=-ose 63215fb4814Smrg ;; 63315fb4814Smrg fx2800) 63415fb4814Smrg basic_machine=i860-alliant 63515fb4814Smrg ;; 63615fb4814Smrg genix) 63715fb4814Smrg basic_machine=ns32k-ns 63815fb4814Smrg ;; 63915fb4814Smrg gmicro) 64015fb4814Smrg basic_machine=tron-gmicro 64115fb4814Smrg os=-sysv 64215fb4814Smrg ;; 64315fb4814Smrg go32) 64415fb4814Smrg basic_machine=i386-pc 64515fb4814Smrg os=-go32 64615fb4814Smrg ;; 64715fb4814Smrg h3050r* | hiux*) 64815fb4814Smrg basic_machine=hppa1.1-hitachi 64915fb4814Smrg os=-hiuxwe2 65015fb4814Smrg ;; 65115fb4814Smrg h8300hms) 65215fb4814Smrg basic_machine=h8300-hitachi 65315fb4814Smrg os=-hms 65415fb4814Smrg ;; 65515fb4814Smrg h8300xray) 65615fb4814Smrg basic_machine=h8300-hitachi 65715fb4814Smrg os=-xray 65815fb4814Smrg ;; 65915fb4814Smrg h8500hms) 66015fb4814Smrg basic_machine=h8500-hitachi 66115fb4814Smrg os=-hms 66215fb4814Smrg ;; 66315fb4814Smrg harris) 66415fb4814Smrg basic_machine=m88k-harris 66515fb4814Smrg os=-sysv3 66615fb4814Smrg ;; 66715fb4814Smrg hp300-*) 66815fb4814Smrg basic_machine=m68k-hp 66915fb4814Smrg ;; 67015fb4814Smrg hp300bsd) 67115fb4814Smrg basic_machine=m68k-hp 67215fb4814Smrg os=-bsd 67315fb4814Smrg ;; 67415fb4814Smrg hp300hpux) 67515fb4814Smrg basic_machine=m68k-hp 67615fb4814Smrg os=-hpux 67715fb4814Smrg ;; 67815fb4814Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 67915fb4814Smrg basic_machine=hppa1.0-hp 68015fb4814Smrg ;; 68115fb4814Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 68215fb4814Smrg basic_machine=m68000-hp 68315fb4814Smrg ;; 68415fb4814Smrg hp9k3[2-9][0-9]) 68515fb4814Smrg basic_machine=m68k-hp 68615fb4814Smrg ;; 68715fb4814Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 68815fb4814Smrg basic_machine=hppa1.0-hp 68915fb4814Smrg ;; 69015fb4814Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 69115fb4814Smrg basic_machine=hppa1.1-hp 69215fb4814Smrg ;; 69315fb4814Smrg hp9k78[0-9] | hp78[0-9]) 69415fb4814Smrg # FIXME: really hppa2.0-hp 69515fb4814Smrg basic_machine=hppa1.1-hp 69615fb4814Smrg ;; 69715fb4814Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 69815fb4814Smrg # FIXME: really hppa2.0-hp 69915fb4814Smrg basic_machine=hppa1.1-hp 70015fb4814Smrg ;; 70115fb4814Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 70215fb4814Smrg basic_machine=hppa1.1-hp 70315fb4814Smrg ;; 70415fb4814Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 70515fb4814Smrg basic_machine=hppa1.0-hp 70615fb4814Smrg ;; 70715fb4814Smrg hppa-next) 70815fb4814Smrg os=-nextstep3 70915fb4814Smrg ;; 71015fb4814Smrg hppaosf) 71115fb4814Smrg basic_machine=hppa1.1-hp 71215fb4814Smrg os=-osf 71315fb4814Smrg ;; 71415fb4814Smrg hppro) 71515fb4814Smrg basic_machine=hppa1.1-hp 71615fb4814Smrg os=-proelf 71715fb4814Smrg ;; 71815fb4814Smrg i370-ibm* | ibm*) 71915fb4814Smrg basic_machine=i370-ibm 72015fb4814Smrg ;; 72115fb4814Smrg i*86v32) 72215fb4814Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72315fb4814Smrg os=-sysv32 72415fb4814Smrg ;; 72515fb4814Smrg i*86v4*) 72615fb4814Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 72715fb4814Smrg os=-sysv4 72815fb4814Smrg ;; 72915fb4814Smrg i*86v) 73015fb4814Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73115fb4814Smrg os=-sysv 73215fb4814Smrg ;; 73315fb4814Smrg i*86sol2) 73415fb4814Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73515fb4814Smrg os=-solaris2 73615fb4814Smrg ;; 73715fb4814Smrg i386mach) 73815fb4814Smrg basic_machine=i386-mach 73915fb4814Smrg os=-mach 74015fb4814Smrg ;; 74115fb4814Smrg i386-vsta | vsta) 74215fb4814Smrg basic_machine=i386-unknown 74315fb4814Smrg os=-vsta 74415fb4814Smrg ;; 74515fb4814Smrg iris | iris4d) 74615fb4814Smrg basic_machine=mips-sgi 74715fb4814Smrg case $os in 74815fb4814Smrg -irix*) 74915fb4814Smrg ;; 75015fb4814Smrg *) 75115fb4814Smrg os=-irix4 75215fb4814Smrg ;; 75315fb4814Smrg esac 75415fb4814Smrg ;; 75515fb4814Smrg isi68 | isi) 75615fb4814Smrg basic_machine=m68k-isi 75715fb4814Smrg os=-sysv 75815fb4814Smrg ;; 759b4d38c65Smrg m68knommu) 760b4d38c65Smrg basic_machine=m68k-unknown 761b4d38c65Smrg os=-linux 762b4d38c65Smrg ;; 763b4d38c65Smrg m68knommu-*) 764b4d38c65Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 765b4d38c65Smrg os=-linux 766b4d38c65Smrg ;; 76715fb4814Smrg m88k-omron*) 76815fb4814Smrg basic_machine=m88k-omron 76915fb4814Smrg ;; 77015fb4814Smrg magnum | m3230) 77115fb4814Smrg basic_machine=mips-mips 77215fb4814Smrg os=-sysv 77315fb4814Smrg ;; 77415fb4814Smrg merlin) 77515fb4814Smrg basic_machine=ns32k-utek 77615fb4814Smrg os=-sysv 77715fb4814Smrg ;; 778b4d38c65Smrg microblaze) 779b4d38c65Smrg basic_machine=microblaze-xilinx 780b4d38c65Smrg ;; 78115fb4814Smrg mingw32) 78215fb4814Smrg basic_machine=i386-pc 78315fb4814Smrg os=-mingw32 78415fb4814Smrg ;; 785de78e416Smrg mingw32ce) 786de78e416Smrg basic_machine=arm-unknown 787de78e416Smrg os=-mingw32ce 788de78e416Smrg ;; 78915fb4814Smrg miniframe) 79015fb4814Smrg basic_machine=m68000-convergent 79115fb4814Smrg ;; 79215fb4814Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 79315fb4814Smrg basic_machine=m68k-atari 79415fb4814Smrg os=-mint 79515fb4814Smrg ;; 79615fb4814Smrg mips3*-*) 79715fb4814Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 79815fb4814Smrg ;; 79915fb4814Smrg mips3*) 80015fb4814Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 80115fb4814Smrg ;; 80215fb4814Smrg monitor) 80315fb4814Smrg basic_machine=m68k-rom68k 80415fb4814Smrg os=-coff 80515fb4814Smrg ;; 80615fb4814Smrg morphos) 80715fb4814Smrg basic_machine=powerpc-unknown 80815fb4814Smrg os=-morphos 80915fb4814Smrg ;; 81015fb4814Smrg msdos) 81115fb4814Smrg basic_machine=i386-pc 81215fb4814Smrg os=-msdos 81315fb4814Smrg ;; 814de78e416Smrg ms1-*) 815de78e416Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 816de78e416Smrg ;; 817b4d38c65Smrg msys) 818b4d38c65Smrg basic_machine=i386-pc 819b4d38c65Smrg os=-msys 820b4d38c65Smrg ;; 82115fb4814Smrg mvs) 82215fb4814Smrg basic_machine=i370-ibm 82315fb4814Smrg os=-mvs 82415fb4814Smrg ;; 825b4d38c65Smrg nacl) 826b4d38c65Smrg basic_machine=le32-unknown 827b4d38c65Smrg os=-nacl 828b4d38c65Smrg ;; 82915fb4814Smrg ncr3000) 83015fb4814Smrg basic_machine=i486-ncr 83115fb4814Smrg os=-sysv4 83215fb4814Smrg ;; 83315fb4814Smrg netbsd386) 83415fb4814Smrg basic_machine=i386-unknown 83515fb4814Smrg os=-netbsd 83615fb4814Smrg ;; 83715fb4814Smrg netwinder) 83815fb4814Smrg basic_machine=armv4l-rebel 83915fb4814Smrg os=-linux 84015fb4814Smrg ;; 84115fb4814Smrg news | news700 | news800 | news900) 84215fb4814Smrg basic_machine=m68k-sony 84315fb4814Smrg os=-newsos 84415fb4814Smrg ;; 84515fb4814Smrg news1000) 84615fb4814Smrg basic_machine=m68030-sony 84715fb4814Smrg os=-newsos 84815fb4814Smrg ;; 84915fb4814Smrg news-3600 | risc-news) 85015fb4814Smrg basic_machine=mips-sony 85115fb4814Smrg os=-newsos 85215fb4814Smrg ;; 85315fb4814Smrg necv70) 85415fb4814Smrg basic_machine=v70-nec 85515fb4814Smrg os=-sysv 85615fb4814Smrg ;; 85715fb4814Smrg next | m*-next ) 85815fb4814Smrg basic_machine=m68k-next 85915fb4814Smrg case $os in 86015fb4814Smrg -nextstep* ) 86115fb4814Smrg ;; 86215fb4814Smrg -ns2*) 86315fb4814Smrg os=-nextstep2 86415fb4814Smrg ;; 86515fb4814Smrg *) 86615fb4814Smrg os=-nextstep3 86715fb4814Smrg ;; 86815fb4814Smrg esac 86915fb4814Smrg ;; 87015fb4814Smrg nh3000) 87115fb4814Smrg basic_machine=m68k-harris 87215fb4814Smrg os=-cxux 87315fb4814Smrg ;; 87415fb4814Smrg nh[45]000) 87515fb4814Smrg basic_machine=m88k-harris 87615fb4814Smrg os=-cxux 87715fb4814Smrg ;; 87815fb4814Smrg nindy960) 87915fb4814Smrg basic_machine=i960-intel 88015fb4814Smrg os=-nindy 88115fb4814Smrg ;; 88215fb4814Smrg mon960) 88315fb4814Smrg basic_machine=i960-intel 88415fb4814Smrg os=-mon960 88515fb4814Smrg ;; 88615fb4814Smrg nonstopux) 88715fb4814Smrg basic_machine=mips-compaq 88815fb4814Smrg os=-nonstopux 88915fb4814Smrg ;; 89015fb4814Smrg np1) 89115fb4814Smrg basic_machine=np1-gould 89215fb4814Smrg ;; 893b4d38c65Smrg neo-tandem) 894b4d38c65Smrg basic_machine=neo-tandem 895b4d38c65Smrg ;; 896b4d38c65Smrg nse-tandem) 897b4d38c65Smrg basic_machine=nse-tandem 898b4d38c65Smrg ;; 89915fb4814Smrg nsr-tandem) 90015fb4814Smrg basic_machine=nsr-tandem 90115fb4814Smrg ;; 90215fb4814Smrg op50n-* | op60c-*) 90315fb4814Smrg basic_machine=hppa1.1-oki 90415fb4814Smrg os=-proelf 90515fb4814Smrg ;; 906de78e416Smrg openrisc | openrisc-*) 90715fb4814Smrg basic_machine=or32-unknown 908de78e416Smrg ;; 909de78e416Smrg os400) 910de78e416Smrg basic_machine=powerpc-ibm 911de78e416Smrg os=-os400 91215fb4814Smrg ;; 91315fb4814Smrg OSE68000 | ose68000) 91415fb4814Smrg basic_machine=m68000-ericsson 91515fb4814Smrg os=-ose 91615fb4814Smrg ;; 91715fb4814Smrg os68k) 91815fb4814Smrg basic_machine=m68k-none 91915fb4814Smrg os=-os68k 92015fb4814Smrg ;; 92115fb4814Smrg pa-hitachi) 92215fb4814Smrg basic_machine=hppa1.1-hitachi 92315fb4814Smrg os=-hiuxwe2 92415fb4814Smrg ;; 92515fb4814Smrg paragon) 92615fb4814Smrg basic_machine=i860-intel 92715fb4814Smrg os=-osf 92815fb4814Smrg ;; 929b4d38c65Smrg parisc) 930b4d38c65Smrg basic_machine=hppa-unknown 931b4d38c65Smrg os=-linux 932b4d38c65Smrg ;; 933b4d38c65Smrg parisc-*) 934b4d38c65Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 935b4d38c65Smrg os=-linux 936b4d38c65Smrg ;; 93715fb4814Smrg pbd) 93815fb4814Smrg basic_machine=sparc-tti 93915fb4814Smrg ;; 94015fb4814Smrg pbb) 94115fb4814Smrg basic_machine=m68k-tti 94215fb4814Smrg ;; 94315fb4814Smrg pc532 | pc532-*) 94415fb4814Smrg basic_machine=ns32k-pc532 94515fb4814Smrg ;; 946de78e416Smrg pc98) 947de78e416Smrg basic_machine=i386-pc 948de78e416Smrg ;; 949de78e416Smrg pc98-*) 950de78e416Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 951de78e416Smrg ;; 95215fb4814Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 95315fb4814Smrg basic_machine=i586-pc 95415fb4814Smrg ;; 95515fb4814Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 95615fb4814Smrg basic_machine=i686-pc 95715fb4814Smrg ;; 95815fb4814Smrg pentiumii | pentium2 | pentiumiii | pentium3) 95915fb4814Smrg basic_machine=i686-pc 96015fb4814Smrg ;; 96115fb4814Smrg pentium4) 96215fb4814Smrg basic_machine=i786-pc 96315fb4814Smrg ;; 96415fb4814Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 96515fb4814Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 96615fb4814Smrg ;; 96715fb4814Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 96815fb4814Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 96915fb4814Smrg ;; 97015fb4814Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 97115fb4814Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 97215fb4814Smrg ;; 97315fb4814Smrg pentium4-*) 97415fb4814Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 97515fb4814Smrg ;; 97615fb4814Smrg pn) 97715fb4814Smrg basic_machine=pn-gould 97815fb4814Smrg ;; 97915fb4814Smrg power) basic_machine=power-ibm 98015fb4814Smrg ;; 981b4d38c65Smrg ppc | ppcbe) basic_machine=powerpc-unknown 98215fb4814Smrg ;; 983b4d38c65Smrg ppc-* | ppcbe-*) 984b4d38c65Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 98515fb4814Smrg ;; 98615fb4814Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 98715fb4814Smrg basic_machine=powerpcle-unknown 98815fb4814Smrg ;; 98915fb4814Smrg ppcle-* | powerpclittle-*) 99015fb4814Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 99115fb4814Smrg ;; 99215fb4814Smrg ppc64) basic_machine=powerpc64-unknown 99315fb4814Smrg ;; 99415fb4814Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 99515fb4814Smrg ;; 99615fb4814Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 99715fb4814Smrg basic_machine=powerpc64le-unknown 99815fb4814Smrg ;; 99915fb4814Smrg ppc64le-* | powerpc64little-*) 100015fb4814Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 100115fb4814Smrg ;; 100215fb4814Smrg ps2) 100315fb4814Smrg basic_machine=i386-ibm 100415fb4814Smrg ;; 100515fb4814Smrg pw32) 100615fb4814Smrg basic_machine=i586-unknown 100715fb4814Smrg os=-pw32 100815fb4814Smrg ;; 1009de78e416Smrg rdos) 1010de78e416Smrg basic_machine=i386-pc 1011de78e416Smrg os=-rdos 1012de78e416Smrg ;; 101315fb4814Smrg rom68k) 101415fb4814Smrg basic_machine=m68k-rom68k 101515fb4814Smrg os=-coff 101615fb4814Smrg ;; 101715fb4814Smrg rm[46]00) 101815fb4814Smrg basic_machine=mips-siemens 101915fb4814Smrg ;; 102015fb4814Smrg rtpc | rtpc-*) 102115fb4814Smrg basic_machine=romp-ibm 102215fb4814Smrg ;; 1023de78e416Smrg s390 | s390-*) 1024de78e416Smrg basic_machine=s390-ibm 1025de78e416Smrg ;; 1026de78e416Smrg s390x | s390x-*) 1027de78e416Smrg basic_machine=s390x-ibm 1028de78e416Smrg ;; 102915fb4814Smrg sa29200) 103015fb4814Smrg basic_machine=a29k-amd 103115fb4814Smrg os=-udi 103215fb4814Smrg ;; 103315fb4814Smrg sb1) 103415fb4814Smrg basic_machine=mipsisa64sb1-unknown 103515fb4814Smrg ;; 103615fb4814Smrg sb1el) 103715fb4814Smrg basic_machine=mipsisa64sb1el-unknown 103815fb4814Smrg ;; 1039de78e416Smrg sde) 1040de78e416Smrg basic_machine=mipsisa32-sde 1041de78e416Smrg os=-elf 1042de78e416Smrg ;; 104315fb4814Smrg sei) 104415fb4814Smrg basic_machine=mips-sei 104515fb4814Smrg os=-seiux 104615fb4814Smrg ;; 104715fb4814Smrg sequent) 104815fb4814Smrg basic_machine=i386-sequent 104915fb4814Smrg ;; 105015fb4814Smrg sh) 105115fb4814Smrg basic_machine=sh-hitachi 105215fb4814Smrg os=-hms 105315fb4814Smrg ;; 1054de78e416Smrg sh5el) 1055de78e416Smrg basic_machine=sh5le-unknown 1056de78e416Smrg ;; 105715fb4814Smrg sh64) 105815fb4814Smrg basic_machine=sh64-unknown 105915fb4814Smrg ;; 106015fb4814Smrg sparclite-wrs | simso-wrs) 106115fb4814Smrg basic_machine=sparclite-wrs 106215fb4814Smrg os=-vxworks 106315fb4814Smrg ;; 106415fb4814Smrg sps7) 106515fb4814Smrg basic_machine=m68k-bull 106615fb4814Smrg os=-sysv2 106715fb4814Smrg ;; 106815fb4814Smrg spur) 106915fb4814Smrg basic_machine=spur-unknown 107015fb4814Smrg ;; 107115fb4814Smrg st2000) 107215fb4814Smrg basic_machine=m68k-tandem 107315fb4814Smrg ;; 107415fb4814Smrg stratus) 107515fb4814Smrg basic_machine=i860-stratus 107615fb4814Smrg os=-sysv4 107715fb4814Smrg ;; 1078b4d38c65Smrg strongarm-* | thumb-*) 1079b4d38c65Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1080b4d38c65Smrg ;; 108115fb4814Smrg sun2) 108215fb4814Smrg basic_machine=m68000-sun 108315fb4814Smrg ;; 108415fb4814Smrg sun2os3) 108515fb4814Smrg basic_machine=m68000-sun 108615fb4814Smrg os=-sunos3 108715fb4814Smrg ;; 108815fb4814Smrg sun2os4) 108915fb4814Smrg basic_machine=m68000-sun 109015fb4814Smrg os=-sunos4 109115fb4814Smrg ;; 109215fb4814Smrg sun3os3) 109315fb4814Smrg basic_machine=m68k-sun 109415fb4814Smrg os=-sunos3 109515fb4814Smrg ;; 109615fb4814Smrg sun3os4) 109715fb4814Smrg basic_machine=m68k-sun 109815fb4814Smrg os=-sunos4 109915fb4814Smrg ;; 110015fb4814Smrg sun4os3) 110115fb4814Smrg basic_machine=sparc-sun 110215fb4814Smrg os=-sunos3 110315fb4814Smrg ;; 110415fb4814Smrg sun4os4) 110515fb4814Smrg basic_machine=sparc-sun 110615fb4814Smrg os=-sunos4 110715fb4814Smrg ;; 110815fb4814Smrg sun4sol2) 110915fb4814Smrg basic_machine=sparc-sun 111015fb4814Smrg os=-solaris2 111115fb4814Smrg ;; 111215fb4814Smrg sun3 | sun3-*) 111315fb4814Smrg basic_machine=m68k-sun 111415fb4814Smrg ;; 111515fb4814Smrg sun4) 111615fb4814Smrg basic_machine=sparc-sun 111715fb4814Smrg ;; 111815fb4814Smrg sun386 | sun386i | roadrunner) 111915fb4814Smrg basic_machine=i386-sun 112015fb4814Smrg ;; 112115fb4814Smrg sv1) 112215fb4814Smrg basic_machine=sv1-cray 112315fb4814Smrg os=-unicos 112415fb4814Smrg ;; 112515fb4814Smrg symmetry) 112615fb4814Smrg basic_machine=i386-sequent 112715fb4814Smrg os=-dynix 112815fb4814Smrg ;; 112915fb4814Smrg t3e) 113015fb4814Smrg basic_machine=alphaev5-cray 113115fb4814Smrg os=-unicos 113215fb4814Smrg ;; 113315fb4814Smrg t90) 113415fb4814Smrg basic_machine=t90-cray 113515fb4814Smrg os=-unicos 113615fb4814Smrg ;; 1137b4d38c65Smrg tile*) 1138b4d38c65Smrg basic_machine=$basic_machine-unknown 1139b4d38c65Smrg os=-linux-gnu 114015fb4814Smrg ;; 114115fb4814Smrg tx39) 114215fb4814Smrg basic_machine=mipstx39-unknown 114315fb4814Smrg ;; 114415fb4814Smrg tx39el) 114515fb4814Smrg basic_machine=mipstx39el-unknown 114615fb4814Smrg ;; 114715fb4814Smrg toad1) 114815fb4814Smrg basic_machine=pdp10-xkl 114915fb4814Smrg os=-tops20 115015fb4814Smrg ;; 115115fb4814Smrg tower | tower-32) 115215fb4814Smrg basic_machine=m68k-ncr 115315fb4814Smrg ;; 1154de78e416Smrg tpf) 1155de78e416Smrg basic_machine=s390x-ibm 1156de78e416Smrg os=-tpf 1157de78e416Smrg ;; 115815fb4814Smrg udi29k) 115915fb4814Smrg basic_machine=a29k-amd 116015fb4814Smrg os=-udi 116115fb4814Smrg ;; 116215fb4814Smrg ultra3) 116315fb4814Smrg basic_machine=a29k-nyu 116415fb4814Smrg os=-sym1 116515fb4814Smrg ;; 116615fb4814Smrg v810 | necv810) 116715fb4814Smrg basic_machine=v810-nec 116815fb4814Smrg os=-none 116915fb4814Smrg ;; 117015fb4814Smrg vaxv) 117115fb4814Smrg basic_machine=vax-dec 117215fb4814Smrg os=-sysv 117315fb4814Smrg ;; 117415fb4814Smrg vms) 117515fb4814Smrg basic_machine=vax-dec 117615fb4814Smrg os=-vms 117715fb4814Smrg ;; 117815fb4814Smrg vpp*|vx|vx-*) 117915fb4814Smrg basic_machine=f301-fujitsu 118015fb4814Smrg ;; 118115fb4814Smrg vxworks960) 118215fb4814Smrg basic_machine=i960-wrs 118315fb4814Smrg os=-vxworks 118415fb4814Smrg ;; 118515fb4814Smrg vxworks68) 118615fb4814Smrg basic_machine=m68k-wrs 118715fb4814Smrg os=-vxworks 118815fb4814Smrg ;; 118915fb4814Smrg vxworks29k) 119015fb4814Smrg basic_machine=a29k-wrs 119115fb4814Smrg os=-vxworks 119215fb4814Smrg ;; 119315fb4814Smrg w65*) 119415fb4814Smrg basic_machine=w65-wdc 119515fb4814Smrg os=-none 119615fb4814Smrg ;; 119715fb4814Smrg w89k-*) 119815fb4814Smrg basic_machine=hppa1.1-winbond 119915fb4814Smrg os=-proelf 120015fb4814Smrg ;; 1201de78e416Smrg xbox) 1202de78e416Smrg basic_machine=i686-pc 1203de78e416Smrg os=-mingw32 1204de78e416Smrg ;; 120515fb4814Smrg xps | xps100) 120615fb4814Smrg basic_machine=xps100-honeywell 120715fb4814Smrg ;; 1208b4d38c65Smrg xscale-* | xscalee[bl]-*) 1209b4d38c65Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1210b4d38c65Smrg ;; 121115fb4814Smrg ymp) 121215fb4814Smrg basic_machine=ymp-cray 121315fb4814Smrg os=-unicos 121415fb4814Smrg ;; 121515fb4814Smrg z8k-*-coff) 121615fb4814Smrg basic_machine=z8k-unknown 121715fb4814Smrg os=-sim 121815fb4814Smrg ;; 1219b4d38c65Smrg z80-*-coff) 1220b4d38c65Smrg basic_machine=z80-unknown 1221b4d38c65Smrg os=-sim 1222b4d38c65Smrg ;; 122315fb4814Smrg none) 122415fb4814Smrg basic_machine=none-none 122515fb4814Smrg os=-none 122615fb4814Smrg ;; 122715fb4814Smrg 122815fb4814Smrg# Here we handle the default manufacturer of certain CPU types. It is in 122915fb4814Smrg# some cases the only manufacturer, in others, it is the most popular. 123015fb4814Smrg w89k) 123115fb4814Smrg basic_machine=hppa1.1-winbond 123215fb4814Smrg ;; 123315fb4814Smrg op50n) 123415fb4814Smrg basic_machine=hppa1.1-oki 123515fb4814Smrg ;; 123615fb4814Smrg op60c) 123715fb4814Smrg basic_machine=hppa1.1-oki 123815fb4814Smrg ;; 123915fb4814Smrg romp) 124015fb4814Smrg basic_machine=romp-ibm 124115fb4814Smrg ;; 1242de78e416Smrg mmix) 1243de78e416Smrg basic_machine=mmix-knuth 1244de78e416Smrg ;; 124515fb4814Smrg rs6000) 124615fb4814Smrg basic_machine=rs6000-ibm 124715fb4814Smrg ;; 124815fb4814Smrg vax) 124915fb4814Smrg basic_machine=vax-dec 125015fb4814Smrg ;; 125115fb4814Smrg pdp10) 125215fb4814Smrg # there are many clones, so DEC is not a safe bet 125315fb4814Smrg basic_machine=pdp10-unknown 125415fb4814Smrg ;; 125515fb4814Smrg pdp11) 125615fb4814Smrg basic_machine=pdp11-dec 125715fb4814Smrg ;; 125815fb4814Smrg we32k) 125915fb4814Smrg basic_machine=we32k-att 126015fb4814Smrg ;; 1261b4d38c65Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 126215fb4814Smrg basic_machine=sh-unknown 126315fb4814Smrg ;; 1264de78e416Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 126515fb4814Smrg basic_machine=sparc-sun 126615fb4814Smrg ;; 126715fb4814Smrg cydra) 126815fb4814Smrg basic_machine=cydra-cydrome 126915fb4814Smrg ;; 127015fb4814Smrg orion) 127115fb4814Smrg basic_machine=orion-highlevel 127215fb4814Smrg ;; 127315fb4814Smrg orion105) 127415fb4814Smrg basic_machine=clipper-highlevel 127515fb4814Smrg ;; 127615fb4814Smrg mac | mpw | mac-mpw) 127715fb4814Smrg basic_machine=m68k-apple 127815fb4814Smrg ;; 127915fb4814Smrg pmac | pmac-mpw) 128015fb4814Smrg basic_machine=powerpc-apple 128115fb4814Smrg ;; 128215fb4814Smrg *-unknown) 128315fb4814Smrg # Make sure to match an already-canonicalized machine name. 128415fb4814Smrg ;; 128515fb4814Smrg *) 128615fb4814Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 128715fb4814Smrg exit 1 128815fb4814Smrg ;; 128915fb4814Smrgesac 129015fb4814Smrg 129115fb4814Smrg# Here we canonicalize certain aliases for manufacturers. 129215fb4814Smrgcase $basic_machine in 129315fb4814Smrg *-digital*) 129415fb4814Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 129515fb4814Smrg ;; 129615fb4814Smrg *-commodore*) 129715fb4814Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 129815fb4814Smrg ;; 129915fb4814Smrg *) 130015fb4814Smrg ;; 130115fb4814Smrgesac 130215fb4814Smrg 130315fb4814Smrg# Decode manufacturer-specific aliases for certain operating systems. 130415fb4814Smrg 130515fb4814Smrgif [ x"$os" != x"" ] 130615fb4814Smrgthen 130715fb4814Smrgcase $os in 1308b4d38c65Smrg # First match some system type aliases 1309b4d38c65Smrg # that might get confused with valid system types. 131015fb4814Smrg # -solaris* is a basic system type, with this one exception. 1311b4d38c65Smrg -auroraux) 1312b4d38c65Smrg os=-auroraux 1313b4d38c65Smrg ;; 131415fb4814Smrg -solaris1 | -solaris1.*) 131515fb4814Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 131615fb4814Smrg ;; 131715fb4814Smrg -solaris) 131815fb4814Smrg os=-solaris2 131915fb4814Smrg ;; 132015fb4814Smrg -svr4*) 132115fb4814Smrg os=-sysv4 132215fb4814Smrg ;; 132315fb4814Smrg -unixware*) 132415fb4814Smrg os=-sysv4.2uw 132515fb4814Smrg ;; 132615fb4814Smrg -gnu/linux*) 132715fb4814Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 132815fb4814Smrg ;; 132915fb4814Smrg # First accept the basic system types. 133015fb4814Smrg # The portable systems comes first. 133115fb4814Smrg # Each alternative MUST END IN A *, to match a version number. 133215fb4814Smrg # -sysv* is not here because it comes later, after sysvr4. 133315fb4814Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1334b4d38c65Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1335b4d38c65Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1336b4d38c65Smrg | -sym* | -kopensolaris* \ 133715fb4814Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1338b4d38c65Smrg | -aos* | -aros* \ 133915fb4814Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 134015fb4814Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1341de78e416Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1342de78e416Smrg | -openbsd* | -solidbsd* \ 1343de78e416Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1344de78e416Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 134515fb4814Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 134615fb4814Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1347b4d38c65Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1348b4d38c65Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1349b4d38c65Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1350b4d38c65Smrg | -linux-newlib* | -linux-uclibc* \ 1351de78e416Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 135215fb4814Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 135315fb4814Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 135415fb4814Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 135515fb4814Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 135615fb4814Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1357de78e416Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1358b4d38c65Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 135915fb4814Smrg # Remember, each alternative MUST END IN *, to match a version number. 136015fb4814Smrg ;; 136115fb4814Smrg -qnx*) 136215fb4814Smrg case $basic_machine in 136315fb4814Smrg x86-* | i*86-*) 136415fb4814Smrg ;; 136515fb4814Smrg *) 136615fb4814Smrg os=-nto$os 136715fb4814Smrg ;; 136815fb4814Smrg esac 136915fb4814Smrg ;; 137015fb4814Smrg -nto-qnx*) 137115fb4814Smrg ;; 137215fb4814Smrg -nto*) 137315fb4814Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 137415fb4814Smrg ;; 137515fb4814Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1376de78e416Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 137715fb4814Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 137815fb4814Smrg ;; 137915fb4814Smrg -mac*) 138015fb4814Smrg os=`echo $os | sed -e 's|mac|macos|'` 138115fb4814Smrg ;; 1382de78e416Smrg -linux-dietlibc) 1383de78e416Smrg os=-linux-dietlibc 1384de78e416Smrg ;; 138515fb4814Smrg -linux*) 138615fb4814Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 138715fb4814Smrg ;; 138815fb4814Smrg -sunos5*) 138915fb4814Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 139015fb4814Smrg ;; 139115fb4814Smrg -sunos6*) 139215fb4814Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 139315fb4814Smrg ;; 139415fb4814Smrg -opened*) 139515fb4814Smrg os=-openedition 139615fb4814Smrg ;; 1397b4d38c65Smrg -os400*) 1398de78e416Smrg os=-os400 1399de78e416Smrg ;; 140015fb4814Smrg -wince*) 140115fb4814Smrg os=-wince 140215fb4814Smrg ;; 140315fb4814Smrg -osfrose*) 140415fb4814Smrg os=-osfrose 140515fb4814Smrg ;; 140615fb4814Smrg -osf*) 140715fb4814Smrg os=-osf 140815fb4814Smrg ;; 140915fb4814Smrg -utek*) 141015fb4814Smrg os=-bsd 141115fb4814Smrg ;; 141215fb4814Smrg -dynix*) 141315fb4814Smrg os=-bsd 141415fb4814Smrg ;; 141515fb4814Smrg -acis*) 141615fb4814Smrg os=-aos 141715fb4814Smrg ;; 141815fb4814Smrg -atheos*) 141915fb4814Smrg os=-atheos 142015fb4814Smrg ;; 1421de78e416Smrg -syllable*) 1422de78e416Smrg os=-syllable 1423de78e416Smrg ;; 142415fb4814Smrg -386bsd) 142515fb4814Smrg os=-bsd 142615fb4814Smrg ;; 142715fb4814Smrg -ctix* | -uts*) 142815fb4814Smrg os=-sysv 142915fb4814Smrg ;; 143015fb4814Smrg -nova*) 143115fb4814Smrg os=-rtmk-nova 143215fb4814Smrg ;; 143315fb4814Smrg -ns2 ) 143415fb4814Smrg os=-nextstep2 143515fb4814Smrg ;; 143615fb4814Smrg -nsk*) 143715fb4814Smrg os=-nsk 143815fb4814Smrg ;; 143915fb4814Smrg # Preserve the version number of sinix5. 144015fb4814Smrg -sinix5.*) 144115fb4814Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 144215fb4814Smrg ;; 144315fb4814Smrg -sinix*) 144415fb4814Smrg os=-sysv4 144515fb4814Smrg ;; 1446b4d38c65Smrg -tpf*) 1447de78e416Smrg os=-tpf 1448de78e416Smrg ;; 144915fb4814Smrg -triton*) 145015fb4814Smrg os=-sysv3 145115fb4814Smrg ;; 145215fb4814Smrg -oss*) 145315fb4814Smrg os=-sysv3 145415fb4814Smrg ;; 145515fb4814Smrg -svr4) 145615fb4814Smrg os=-sysv4 145715fb4814Smrg ;; 145815fb4814Smrg -svr3) 145915fb4814Smrg os=-sysv3 146015fb4814Smrg ;; 146115fb4814Smrg -sysvr4) 146215fb4814Smrg os=-sysv4 146315fb4814Smrg ;; 146415fb4814Smrg # This must come after -sysvr4. 146515fb4814Smrg -sysv*) 146615fb4814Smrg ;; 146715fb4814Smrg -ose*) 146815fb4814Smrg os=-ose 146915fb4814Smrg ;; 147015fb4814Smrg -es1800*) 147115fb4814Smrg os=-ose 147215fb4814Smrg ;; 147315fb4814Smrg -xenix) 147415fb4814Smrg os=-xenix 147515fb4814Smrg ;; 147615fb4814Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 147715fb4814Smrg os=-mint 147815fb4814Smrg ;; 147915fb4814Smrg -aros*) 148015fb4814Smrg os=-aros 148115fb4814Smrg ;; 148215fb4814Smrg -kaos*) 148315fb4814Smrg os=-kaos 148415fb4814Smrg ;; 1485de78e416Smrg -zvmoe) 1486de78e416Smrg os=-zvmoe 1487de78e416Smrg ;; 1488b4d38c65Smrg -dicos*) 1489b4d38c65Smrg os=-dicos 1490b4d38c65Smrg ;; 1491b4d38c65Smrg -nacl*) 1492b4d38c65Smrg ;; 149315fb4814Smrg -none) 149415fb4814Smrg ;; 149515fb4814Smrg *) 149615fb4814Smrg # Get rid of the `-' at the beginning of $os. 149715fb4814Smrg os=`echo $os | sed 's/[^-]*-//'` 149815fb4814Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 149915fb4814Smrg exit 1 150015fb4814Smrg ;; 150115fb4814Smrgesac 150215fb4814Smrgelse 150315fb4814Smrg 150415fb4814Smrg# Here we handle the default operating systems that come with various machines. 150515fb4814Smrg# The value should be what the vendor currently ships out the door with their 150615fb4814Smrg# machine or put another way, the most popular os provided with the machine. 150715fb4814Smrg 150815fb4814Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 150915fb4814Smrg# "-sun"), then you have to tell the case statement up towards the top 151015fb4814Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 151115fb4814Smrg# will signal an error saying that MANUFACTURER isn't an operating 151215fb4814Smrg# system, and we'll never get to this point. 151315fb4814Smrg 151415fb4814Smrgcase $basic_machine in 1515b4d38c65Smrg score-*) 1516de78e416Smrg os=-elf 1517de78e416Smrg ;; 1518b4d38c65Smrg spu-*) 1519de78e416Smrg os=-elf 1520de78e416Smrg ;; 152115fb4814Smrg *-acorn) 152215fb4814Smrg os=-riscix1.2 152315fb4814Smrg ;; 152415fb4814Smrg arm*-rebel) 152515fb4814Smrg os=-linux 152615fb4814Smrg ;; 152715fb4814Smrg arm*-semi) 152815fb4814Smrg os=-aout 152915fb4814Smrg ;; 1530b4d38c65Smrg c4x-* | tic4x-*) 1531b4d38c65Smrg os=-coff 1532b4d38c65Smrg ;; 1533b4d38c65Smrg tic54x-*) 1534b4d38c65Smrg os=-coff 1535b4d38c65Smrg ;; 1536b4d38c65Smrg tic55x-*) 1537b4d38c65Smrg os=-coff 1538b4d38c65Smrg ;; 1539b4d38c65Smrg tic6x-*) 1540b4d38c65Smrg os=-coff 154115fb4814Smrg ;; 154215fb4814Smrg # This must come before the *-dec entry. 154315fb4814Smrg pdp10-*) 154415fb4814Smrg os=-tops20 154515fb4814Smrg ;; 154615fb4814Smrg pdp11-*) 154715fb4814Smrg os=-none 154815fb4814Smrg ;; 154915fb4814Smrg *-dec | vax-*) 155015fb4814Smrg os=-ultrix4.2 155115fb4814Smrg ;; 155215fb4814Smrg m68*-apollo) 155315fb4814Smrg os=-domain 155415fb4814Smrg ;; 155515fb4814Smrg i386-sun) 155615fb4814Smrg os=-sunos4.0.2 155715fb4814Smrg ;; 155815fb4814Smrg m68000-sun) 155915fb4814Smrg os=-sunos3 156015fb4814Smrg ;; 156115fb4814Smrg m68*-cisco) 156215fb4814Smrg os=-aout 156315fb4814Smrg ;; 1564b4d38c65Smrg mep-*) 1565de78e416Smrg os=-elf 1566de78e416Smrg ;; 156715fb4814Smrg mips*-cisco) 156815fb4814Smrg os=-elf 156915fb4814Smrg ;; 157015fb4814Smrg mips*-*) 157115fb4814Smrg os=-elf 157215fb4814Smrg ;; 157315fb4814Smrg or32-*) 157415fb4814Smrg os=-coff 157515fb4814Smrg ;; 157615fb4814Smrg *-tti) # must be before sparc entry or we get the wrong os. 157715fb4814Smrg os=-sysv3 157815fb4814Smrg ;; 157915fb4814Smrg sparc-* | *-sun) 158015fb4814Smrg os=-sunos4.1.1 158115fb4814Smrg ;; 158215fb4814Smrg *-be) 158315fb4814Smrg os=-beos 158415fb4814Smrg ;; 1585de78e416Smrg *-haiku) 1586de78e416Smrg os=-haiku 1587de78e416Smrg ;; 158815fb4814Smrg *-ibm) 158915fb4814Smrg os=-aix 159015fb4814Smrg ;; 1591b4d38c65Smrg *-knuth) 1592de78e416Smrg os=-mmixware 1593de78e416Smrg ;; 159415fb4814Smrg *-wec) 159515fb4814Smrg os=-proelf 159615fb4814Smrg ;; 159715fb4814Smrg *-winbond) 159815fb4814Smrg os=-proelf 159915fb4814Smrg ;; 160015fb4814Smrg *-oki) 160115fb4814Smrg os=-proelf 160215fb4814Smrg ;; 160315fb4814Smrg *-hp) 160415fb4814Smrg os=-hpux 160515fb4814Smrg ;; 160615fb4814Smrg *-hitachi) 160715fb4814Smrg os=-hiux 160815fb4814Smrg ;; 160915fb4814Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 161015fb4814Smrg os=-sysv 161115fb4814Smrg ;; 161215fb4814Smrg *-cbm) 161315fb4814Smrg os=-amigaos 161415fb4814Smrg ;; 161515fb4814Smrg *-dg) 161615fb4814Smrg os=-dgux 161715fb4814Smrg ;; 161815fb4814Smrg *-dolphin) 161915fb4814Smrg os=-sysv3 162015fb4814Smrg ;; 162115fb4814Smrg m68k-ccur) 162215fb4814Smrg os=-rtu 162315fb4814Smrg ;; 162415fb4814Smrg m88k-omron*) 162515fb4814Smrg os=-luna 162615fb4814Smrg ;; 162715fb4814Smrg *-next ) 162815fb4814Smrg os=-nextstep 162915fb4814Smrg ;; 163015fb4814Smrg *-sequent) 163115fb4814Smrg os=-ptx 163215fb4814Smrg ;; 163315fb4814Smrg *-crds) 163415fb4814Smrg os=-unos 163515fb4814Smrg ;; 163615fb4814Smrg *-ns) 163715fb4814Smrg os=-genix 163815fb4814Smrg ;; 163915fb4814Smrg i370-*) 164015fb4814Smrg os=-mvs 164115fb4814Smrg ;; 164215fb4814Smrg *-next) 164315fb4814Smrg os=-nextstep3 164415fb4814Smrg ;; 164515fb4814Smrg *-gould) 164615fb4814Smrg os=-sysv 164715fb4814Smrg ;; 164815fb4814Smrg *-highlevel) 164915fb4814Smrg os=-bsd 165015fb4814Smrg ;; 165115fb4814Smrg *-encore) 165215fb4814Smrg os=-bsd 165315fb4814Smrg ;; 165415fb4814Smrg *-sgi) 165515fb4814Smrg os=-irix 165615fb4814Smrg ;; 165715fb4814Smrg *-siemens) 165815fb4814Smrg os=-sysv4 165915fb4814Smrg ;; 166015fb4814Smrg *-masscomp) 166115fb4814Smrg os=-rtu 166215fb4814Smrg ;; 166315fb4814Smrg f30[01]-fujitsu | f700-fujitsu) 166415fb4814Smrg os=-uxpv 166515fb4814Smrg ;; 166615fb4814Smrg *-rom68k) 166715fb4814Smrg os=-coff 166815fb4814Smrg ;; 166915fb4814Smrg *-*bug) 167015fb4814Smrg os=-coff 167115fb4814Smrg ;; 167215fb4814Smrg *-apple) 167315fb4814Smrg os=-macos 167415fb4814Smrg ;; 167515fb4814Smrg *-atari*) 167615fb4814Smrg os=-mint 167715fb4814Smrg ;; 167815fb4814Smrg *) 167915fb4814Smrg os=-none 168015fb4814Smrg ;; 168115fb4814Smrgesac 168215fb4814Smrgfi 168315fb4814Smrg 168415fb4814Smrg# Here we handle the case where we know the os, and the CPU type, but not the 168515fb4814Smrg# manufacturer. We pick the logical manufacturer. 168615fb4814Smrgvendor=unknown 168715fb4814Smrgcase $basic_machine in 168815fb4814Smrg *-unknown) 168915fb4814Smrg case $os in 169015fb4814Smrg -riscix*) 169115fb4814Smrg vendor=acorn 169215fb4814Smrg ;; 169315fb4814Smrg -sunos*) 169415fb4814Smrg vendor=sun 169515fb4814Smrg ;; 1696b4d38c65Smrg -cnk*|-aix*) 169715fb4814Smrg vendor=ibm 169815fb4814Smrg ;; 169915fb4814Smrg -beos*) 170015fb4814Smrg vendor=be 170115fb4814Smrg ;; 170215fb4814Smrg -hpux*) 170315fb4814Smrg vendor=hp 170415fb4814Smrg ;; 170515fb4814Smrg -mpeix*) 170615fb4814Smrg vendor=hp 170715fb4814Smrg ;; 170815fb4814Smrg -hiux*) 170915fb4814Smrg vendor=hitachi 171015fb4814Smrg ;; 171115fb4814Smrg -unos*) 171215fb4814Smrg vendor=crds 171315fb4814Smrg ;; 171415fb4814Smrg -dgux*) 171515fb4814Smrg vendor=dg 171615fb4814Smrg ;; 171715fb4814Smrg -luna*) 171815fb4814Smrg vendor=omron 171915fb4814Smrg ;; 172015fb4814Smrg -genix*) 172115fb4814Smrg vendor=ns 172215fb4814Smrg ;; 172315fb4814Smrg -mvs* | -opened*) 172415fb4814Smrg vendor=ibm 172515fb4814Smrg ;; 1726de78e416Smrg -os400*) 1727de78e416Smrg vendor=ibm 1728de78e416Smrg ;; 172915fb4814Smrg -ptx*) 173015fb4814Smrg vendor=sequent 173115fb4814Smrg ;; 1732de78e416Smrg -tpf*) 1733de78e416Smrg vendor=ibm 1734de78e416Smrg ;; 173515fb4814Smrg -vxsim* | -vxworks* | -windiss*) 173615fb4814Smrg vendor=wrs 173715fb4814Smrg ;; 173815fb4814Smrg -aux*) 173915fb4814Smrg vendor=apple 174015fb4814Smrg ;; 174115fb4814Smrg -hms*) 174215fb4814Smrg vendor=hitachi 174315fb4814Smrg ;; 174415fb4814Smrg -mpw* | -macos*) 174515fb4814Smrg vendor=apple 174615fb4814Smrg ;; 174715fb4814Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 174815fb4814Smrg vendor=atari 174915fb4814Smrg ;; 175015fb4814Smrg -vos*) 175115fb4814Smrg vendor=stratus 175215fb4814Smrg ;; 175315fb4814Smrg esac 175415fb4814Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 175515fb4814Smrg ;; 175615fb4814Smrgesac 175715fb4814Smrg 175815fb4814Smrgecho $basic_machine$os 1759de78e416Smrgexit 176015fb4814Smrg 176115fb4814Smrg# Local variables: 176215fb4814Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 176315fb4814Smrg# time-stamp-start: "timestamp='" 176415fb4814Smrg# time-stamp-format: "%:y-%02m-%02d" 176515fb4814Smrg# time-stamp-end: "'" 176615fb4814Smrg# End: 1767