config.sub revision ca08ab68
12c393a42Smrg#! /bin/sh 22c393a42Smrg# Configuration validation subroutine script. 32c393a42Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4ca08ab68Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5ca08ab68Smrg# 2011, 2012 Free Software Foundation, Inc. 62c393a42Smrg 7ca08ab68Smrgtimestamp='2012-02-10' 82c393a42Smrg 92c393a42Smrg# This file is (in principle) common to ALL GNU software. 102c393a42Smrg# The presence of a machine in this file suggests that SOME GNU software 112c393a42Smrg# can handle that machine. It does not imply ALL GNU software can. 122c393a42Smrg# 132c393a42Smrg# This file is free software; you can redistribute it and/or modify 142c393a42Smrg# it under the terms of the GNU General Public License as published by 152c393a42Smrg# the Free Software Foundation; either version 2 of the License, or 162c393a42Smrg# (at your option) any later version. 172c393a42Smrg# 182c393a42Smrg# This program is distributed in the hope that it will be useful, 192c393a42Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 202c393a42Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 212c393a42Smrg# GNU General Public License for more details. 222c393a42Smrg# 232c393a42Smrg# You should have received a copy of the GNU General Public License 24ca08ab68Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 252c393a42Smrg# 262c393a42Smrg# As a special exception to the GNU General Public License, if you 272c393a42Smrg# distribute this file as part of a program that contains a 282c393a42Smrg# configuration script generated by Autoconf, you may include it under 292c393a42Smrg# the same distribution terms that you use for the rest of that program. 302c393a42Smrg 312c393a42Smrg 322c393a42Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 33ca08ab68Smrg# diff and a properly formatted GNU ChangeLog entry. 342c393a42Smrg# 352c393a42Smrg# Configuration subroutine to validate and canonicalize a configuration type. 362c393a42Smrg# Supply the specified configuration type as an argument. 372c393a42Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 382c393a42Smrg# Otherwise, we print the canonical config type on stdout and succeed. 392c393a42Smrg 40ca08ab68Smrg# You can get the latest version of this script from: 41ca08ab68Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 42ca08ab68Smrg 432c393a42Smrg# This file is supposed to be the same for all GNU packages 442c393a42Smrg# and recognize all the CPU types, system types and aliases 452c393a42Smrg# that are meaningful with *any* GNU software. 462c393a42Smrg# Each package is responsible for reporting which valid configurations 472c393a42Smrg# it does not support. The user should be able to distinguish 482c393a42Smrg# a failure to support a valid configuration from a meaningless 492c393a42Smrg# configuration. 502c393a42Smrg 512c393a42Smrg# The goal of this file is to map all the various variations of a given 522c393a42Smrg# machine specification into a single specification in the form: 532c393a42Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 542c393a42Smrg# or in some cases, the newer four-part form: 552c393a42Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 562c393a42Smrg# It is wrong to echo any other type of specification. 572c393a42Smrg 582c393a42Smrgme=`echo "$0" | sed -e 's,.*/,,'` 592c393a42Smrg 602c393a42Smrgusage="\ 612c393a42SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 622c393a42Smrg $0 [OPTION] ALIAS 632c393a42Smrg 642c393a42SmrgCanonicalize a configuration name. 652c393a42Smrg 662c393a42SmrgOperation modes: 672c393a42Smrg -h, --help print this help, then exit 682c393a42Smrg -t, --time-stamp print date of last modification, then exit 692c393a42Smrg -v, --version print version number, then exit 702c393a42Smrg 712c393a42SmrgReport bugs and patches to <config-patches@gnu.org>." 722c393a42Smrg 732c393a42Smrgversion="\ 742c393a42SmrgGNU config.sub ($timestamp) 752c393a42Smrg 76ca08ab68SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 77ca08ab68Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 78ca08ab68SmrgFree Software Foundation, Inc. 792c393a42Smrg 802c393a42SmrgThis is free software; see the source for copying conditions. There is NO 812c393a42Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 822c393a42Smrg 832c393a42Smrghelp=" 842c393a42SmrgTry \`$me --help' for more information." 852c393a42Smrg 862c393a42Smrg# Parse command line 872c393a42Smrgwhile test $# -gt 0 ; do 882c393a42Smrg case $1 in 892c393a42Smrg --time-stamp | --time* | -t ) 902c393a42Smrg echo "$timestamp" ; exit ;; 912c393a42Smrg --version | -v ) 922c393a42Smrg echo "$version" ; exit ;; 932c393a42Smrg --help | --h* | -h ) 942c393a42Smrg echo "$usage"; exit ;; 952c393a42Smrg -- ) # Stop option processing 962c393a42Smrg shift; break ;; 972c393a42Smrg - ) # Use stdin as input. 982c393a42Smrg break ;; 992c393a42Smrg -* ) 1002c393a42Smrg echo "$me: invalid option $1$help" 1012c393a42Smrg exit 1 ;; 1022c393a42Smrg 1032c393a42Smrg *local*) 1042c393a42Smrg # First pass through any local machine types. 1052c393a42Smrg echo $1 1062c393a42Smrg exit ;; 1072c393a42Smrg 1082c393a42Smrg * ) 1092c393a42Smrg break ;; 1102c393a42Smrg esac 1112c393a42Smrgdone 1122c393a42Smrg 1132c393a42Smrgcase $# in 1142c393a42Smrg 0) echo "$me: missing argument$help" >&2 1152c393a42Smrg exit 1;; 1162c393a42Smrg 1) ;; 1172c393a42Smrg *) echo "$me: too many arguments$help" >&2 1182c393a42Smrg exit 1;; 1192c393a42Smrgesac 1202c393a42Smrg 1212c393a42Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1222c393a42Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1232c393a42Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1242c393a42Smrgcase $maybe_os in 125ca08ab68Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 126ca08ab68Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 127ca08ab68Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 128ca08ab68Smrg kopensolaris*-gnu* | \ 1292c393a42Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1302c393a42Smrg os=-$maybe_os 1312c393a42Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1322c393a42Smrg ;; 133ca08ab68Smrg android-linux) 134ca08ab68Smrg os=-linux-android 135ca08ab68Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 136ca08ab68Smrg ;; 1372c393a42Smrg *) 1382c393a42Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1392c393a42Smrg if [ $basic_machine != $1 ] 1402c393a42Smrg then os=`echo $1 | sed 's/.*-/-/'` 1412c393a42Smrg else os=; fi 1422c393a42Smrg ;; 1432c393a42Smrgesac 1442c393a42Smrg 1452c393a42Smrg### Let's recognize common machines as not being operating systems so 1462c393a42Smrg### that things like config.sub decstation-3100 work. We also 1472c393a42Smrg### recognize some manufacturers as not being operating systems, so we 1482c393a42Smrg### can provide default operating systems below. 1492c393a42Smrgcase $os in 1502c393a42Smrg -sun*os*) 1512c393a42Smrg # Prevent following clause from handling this invalid input. 1522c393a42Smrg ;; 1532c393a42Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1542c393a42Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1552c393a42Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1562c393a42Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1572c393a42Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1582c393a42Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 159ca08ab68Smrg -apple | -axis | -knuth | -cray | -microblaze) 1602c393a42Smrg os= 1612c393a42Smrg basic_machine=$1 1622c393a42Smrg ;; 163ca08ab68Smrg -bluegene*) 164ca08ab68Smrg os=-cnk 165ca08ab68Smrg ;; 1662c393a42Smrg -sim | -cisco | -oki | -wec | -winbond) 1672c393a42Smrg os= 1682c393a42Smrg basic_machine=$1 1692c393a42Smrg ;; 1702c393a42Smrg -scout) 1712c393a42Smrg ;; 1722c393a42Smrg -wrs) 1732c393a42Smrg os=-vxworks 1742c393a42Smrg basic_machine=$1 1752c393a42Smrg ;; 1762c393a42Smrg -chorusos*) 1772c393a42Smrg os=-chorusos 1782c393a42Smrg basic_machine=$1 1792c393a42Smrg ;; 180ca08ab68Smrg -chorusrdb) 181ca08ab68Smrg os=-chorusrdb 1822c393a42Smrg basic_machine=$1 183ca08ab68Smrg ;; 1842c393a42Smrg -hiux*) 1852c393a42Smrg os=-hiuxwe2 1862c393a42Smrg ;; 1872c393a42Smrg -sco6) 1882c393a42Smrg os=-sco5v6 1892c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1902c393a42Smrg ;; 1912c393a42Smrg -sco5) 1922c393a42Smrg os=-sco3.2v5 1932c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1942c393a42Smrg ;; 1952c393a42Smrg -sco4) 1962c393a42Smrg os=-sco3.2v4 1972c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1982c393a42Smrg ;; 1992c393a42Smrg -sco3.2.[4-9]*) 2002c393a42Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 2012c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2022c393a42Smrg ;; 2032c393a42Smrg -sco3.2v[4-9]*) 2042c393a42Smrg # Don't forget version if it is 3.2v4 or newer. 2052c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2062c393a42Smrg ;; 2072c393a42Smrg -sco5v6*) 2082c393a42Smrg # Don't forget version if it is 3.2v4 or newer. 2092c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2102c393a42Smrg ;; 2112c393a42Smrg -sco*) 2122c393a42Smrg os=-sco3.2v2 2132c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2142c393a42Smrg ;; 2152c393a42Smrg -udk*) 2162c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2172c393a42Smrg ;; 2182c393a42Smrg -isc) 2192c393a42Smrg os=-isc2.2 2202c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2212c393a42Smrg ;; 2222c393a42Smrg -clix*) 2232c393a42Smrg basic_machine=clipper-intergraph 2242c393a42Smrg ;; 2252c393a42Smrg -isc*) 2262c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2272c393a42Smrg ;; 2282c393a42Smrg -lynx*) 2292c393a42Smrg os=-lynxos 2302c393a42Smrg ;; 2312c393a42Smrg -ptx*) 2322c393a42Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2332c393a42Smrg ;; 2342c393a42Smrg -windowsnt*) 2352c393a42Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2362c393a42Smrg ;; 2372c393a42Smrg -psos*) 2382c393a42Smrg os=-psos 2392c393a42Smrg ;; 2402c393a42Smrg -mint | -mint[0-9]*) 2412c393a42Smrg basic_machine=m68k-atari 2422c393a42Smrg os=-mint 2432c393a42Smrg ;; 2442c393a42Smrgesac 2452c393a42Smrg 2462c393a42Smrg# Decode aliases for certain CPU-COMPANY combinations. 2472c393a42Smrgcase $basic_machine in 2482c393a42Smrg # Recognize the basic CPU types without company name. 2492c393a42Smrg # Some are omitted here because they have special meanings below. 2502c393a42Smrg 1750a | 580 \ 2512c393a42Smrg | a29k \ 252ca08ab68Smrg | aarch64 | aarch64_be \ 2532c393a42Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2542c393a42Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2552c393a42Smrg | am33_2.0 \ 2562c393a42Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 257ca08ab68Smrg | be32 | be64 \ 2582c393a42Smrg | bfin \ 2592c393a42Smrg | c4x | clipper \ 2602c393a42Smrg | d10v | d30v | dlx | dsp16xx \ 261ca08ab68Smrg | epiphany \ 2622c393a42Smrg | fido | fr30 | frv \ 2632c393a42Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 264ca08ab68Smrg | hexagon \ 2652c393a42Smrg | i370 | i860 | i960 | ia64 \ 2662c393a42Smrg | ip2k | iq2000 \ 267ca08ab68Smrg | le32 | le64 \ 268ca08ab68Smrg | lm32 \ 2692c393a42Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 270ca08ab68Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2712c393a42Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2722c393a42Smrg | mips16 \ 2732c393a42Smrg | mips64 | mips64el \ 274ca08ab68Smrg | mips64octeon | mips64octeonel \ 2752c393a42Smrg | mips64orion | mips64orionel \ 276ca08ab68Smrg | mips64r5900 | mips64r5900el \ 277ca08ab68Smrg | mips64vr | mips64vrel \ 2782c393a42Smrg | mips64vr4100 | mips64vr4100el \ 2792c393a42Smrg | mips64vr4300 | mips64vr4300el \ 2802c393a42Smrg | mips64vr5000 | mips64vr5000el \ 2812c393a42Smrg | mips64vr5900 | mips64vr5900el \ 2822c393a42Smrg | mipsisa32 | mipsisa32el \ 2832c393a42Smrg | mipsisa32r2 | mipsisa32r2el \ 2842c393a42Smrg | mipsisa64 | mipsisa64el \ 2852c393a42Smrg | mipsisa64r2 | mipsisa64r2el \ 2862c393a42Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2872c393a42Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2882c393a42Smrg | mipstx39 | mipstx39el \ 2892c393a42Smrg | mn10200 | mn10300 \ 290ca08ab68Smrg | moxie \ 2912c393a42Smrg | mt \ 2922c393a42Smrg | msp430 \ 293ca08ab68Smrg | nds32 | nds32le | nds32be \ 2942c393a42Smrg | nios | nios2 \ 2952c393a42Smrg | ns16k | ns32k \ 296ca08ab68Smrg | open8 \ 2972c393a42Smrg | or32 \ 2982c393a42Smrg | pdp10 | pdp11 | pj | pjl \ 299ca08ab68Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3002c393a42Smrg | pyramid \ 301ca08ab68Smrg | rl78 | rx \ 3022c393a42Smrg | score \ 303ca08ab68Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3042c393a42Smrg | sh64 | sh64le \ 3052c393a42Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3062c393a42Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 307ca08ab68Smrg | spu \ 308ca08ab68Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 309ca08ab68Smrg | ubicom32 \ 310ca08ab68Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3112c393a42Smrg | we32k \ 312ca08ab68Smrg | x86 | xc16x | xstormy16 | xtensa \ 313ca08ab68Smrg | z8k | z80) 3142c393a42Smrg basic_machine=$basic_machine-unknown 3152c393a42Smrg ;; 316ca08ab68Smrg c54x) 317ca08ab68Smrg basic_machine=tic54x-unknown 318ca08ab68Smrg ;; 319ca08ab68Smrg c55x) 320ca08ab68Smrg basic_machine=tic55x-unknown 321ca08ab68Smrg ;; 322ca08ab68Smrg c6x) 323ca08ab68Smrg basic_machine=tic6x-unknown 324ca08ab68Smrg ;; 325ca08ab68Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 3262c393a42Smrg basic_machine=$basic_machine-unknown 3272c393a42Smrg os=-none 3282c393a42Smrg ;; 3292c393a42Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3302c393a42Smrg ;; 3312c393a42Smrg ms1) 3322c393a42Smrg basic_machine=mt-unknown 3332c393a42Smrg ;; 3342c393a42Smrg 335ca08ab68Smrg strongarm | thumb | xscale) 336ca08ab68Smrg basic_machine=arm-unknown 337ca08ab68Smrg ;; 338ca08ab68Smrg xgate) 339ca08ab68Smrg basic_machine=$basic_machine-unknown 340ca08ab68Smrg os=-none 341ca08ab68Smrg ;; 342ca08ab68Smrg xscaleeb) 343ca08ab68Smrg basic_machine=armeb-unknown 344ca08ab68Smrg ;; 345ca08ab68Smrg 346ca08ab68Smrg xscaleel) 347ca08ab68Smrg basic_machine=armel-unknown 348ca08ab68Smrg ;; 349ca08ab68Smrg 3502c393a42Smrg # We use `pc' rather than `unknown' 3512c393a42Smrg # because (1) that's what they normally are, and 3522c393a42Smrg # (2) the word "unknown" tends to confuse beginning users. 3532c393a42Smrg i*86 | x86_64) 3542c393a42Smrg basic_machine=$basic_machine-pc 3552c393a42Smrg ;; 3562c393a42Smrg # Object if more than one company name word. 3572c393a42Smrg *-*-*) 3582c393a42Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3592c393a42Smrg exit 1 3602c393a42Smrg ;; 3612c393a42Smrg # Recognize the basic CPU types with company name. 3622c393a42Smrg 580-* \ 3632c393a42Smrg | a29k-* \ 364ca08ab68Smrg | aarch64-* | aarch64_be-* \ 3652c393a42Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3662c393a42Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3672c393a42Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3682c393a42Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3692c393a42Smrg | avr-* | avr32-* \ 370ca08ab68Smrg | be32-* | be64-* \ 3712c393a42Smrg | bfin-* | bs2000-* \ 372ca08ab68Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3732c393a42Smrg | clipper-* | craynv-* | cydra-* \ 3742c393a42Smrg | d10v-* | d30v-* | dlx-* \ 3752c393a42Smrg | elxsi-* \ 3762c393a42Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3772c393a42Smrg | h8300-* | h8500-* \ 3782c393a42Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 379ca08ab68Smrg | hexagon-* \ 3802c393a42Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3812c393a42Smrg | ip2k-* | iq2000-* \ 382ca08ab68Smrg | le32-* | le64-* \ 383ca08ab68Smrg | lm32-* \ 3842c393a42Smrg | m32c-* | m32r-* | m32rle-* \ 3852c393a42Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 386ca08ab68Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3872c393a42Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3882c393a42Smrg | mips16-* \ 3892c393a42Smrg | mips64-* | mips64el-* \ 390ca08ab68Smrg | mips64octeon-* | mips64octeonel-* \ 3912c393a42Smrg | mips64orion-* | mips64orionel-* \ 392ca08ab68Smrg | mips64r5900-* | mips64r5900el-* \ 393ca08ab68Smrg | mips64vr-* | mips64vrel-* \ 3942c393a42Smrg | mips64vr4100-* | mips64vr4100el-* \ 3952c393a42Smrg | mips64vr4300-* | mips64vr4300el-* \ 3962c393a42Smrg | mips64vr5000-* | mips64vr5000el-* \ 3972c393a42Smrg | mips64vr5900-* | mips64vr5900el-* \ 3982c393a42Smrg | mipsisa32-* | mipsisa32el-* \ 3992c393a42Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 4002c393a42Smrg | mipsisa64-* | mipsisa64el-* \ 4012c393a42Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 4022c393a42Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 4032c393a42Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 4042c393a42Smrg | mipstx39-* | mipstx39el-* \ 4052c393a42Smrg | mmix-* \ 4062c393a42Smrg | mt-* \ 4072c393a42Smrg | msp430-* \ 408ca08ab68Smrg | nds32-* | nds32le-* | nds32be-* \ 4092c393a42Smrg | nios-* | nios2-* \ 4102c393a42Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 411ca08ab68Smrg | open8-* \ 4122c393a42Smrg | orion-* \ 4132c393a42Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 414ca08ab68Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4152c393a42Smrg | pyramid-* \ 416ca08ab68Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 417ca08ab68Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4182c393a42Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4192c393a42Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4202c393a42Smrg | sparclite-* \ 421ca08ab68Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 422ca08ab68Smrg | tahoe-* \ 4232c393a42Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 424ca08ab68Smrg | tile*-* \ 4252c393a42Smrg | tron-* \ 426ca08ab68Smrg | ubicom32-* \ 427ca08ab68Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 428ca08ab68Smrg | vax-* \ 4292c393a42Smrg | we32k-* \ 430ca08ab68Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4312c393a42Smrg | xstormy16-* | xtensa*-* \ 4322c393a42Smrg | ymp-* \ 433ca08ab68Smrg | z8k-* | z80-*) 4342c393a42Smrg ;; 4352c393a42Smrg # Recognize the basic CPU types without company name, with glob match. 4362c393a42Smrg xtensa*) 4372c393a42Smrg basic_machine=$basic_machine-unknown 4382c393a42Smrg ;; 4392c393a42Smrg # Recognize the various machine names and aliases which stand 4402c393a42Smrg # for a CPU type and a company and sometimes even an OS. 4412c393a42Smrg 386bsd) 4422c393a42Smrg basic_machine=i386-unknown 4432c393a42Smrg os=-bsd 4442c393a42Smrg ;; 4452c393a42Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4462c393a42Smrg basic_machine=m68000-att 4472c393a42Smrg ;; 4482c393a42Smrg 3b*) 4492c393a42Smrg basic_machine=we32k-att 4502c393a42Smrg ;; 4512c393a42Smrg a29khif) 4522c393a42Smrg basic_machine=a29k-amd 4532c393a42Smrg os=-udi 4542c393a42Smrg ;; 455ca08ab68Smrg abacus) 4562c393a42Smrg basic_machine=abacus-unknown 4572c393a42Smrg ;; 4582c393a42Smrg adobe68k) 4592c393a42Smrg basic_machine=m68010-adobe 4602c393a42Smrg os=-scout 4612c393a42Smrg ;; 4622c393a42Smrg alliant | fx80) 4632c393a42Smrg basic_machine=fx80-alliant 4642c393a42Smrg ;; 4652c393a42Smrg altos | altos3068) 4662c393a42Smrg basic_machine=m68k-altos 4672c393a42Smrg ;; 4682c393a42Smrg am29k) 4692c393a42Smrg basic_machine=a29k-none 4702c393a42Smrg os=-bsd 4712c393a42Smrg ;; 4722c393a42Smrg amd64) 4732c393a42Smrg basic_machine=x86_64-pc 4742c393a42Smrg ;; 4752c393a42Smrg amd64-*) 4762c393a42Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4772c393a42Smrg ;; 4782c393a42Smrg amdahl) 4792c393a42Smrg basic_machine=580-amdahl 4802c393a42Smrg os=-sysv 4812c393a42Smrg ;; 4822c393a42Smrg amiga | amiga-*) 4832c393a42Smrg basic_machine=m68k-unknown 4842c393a42Smrg ;; 4852c393a42Smrg amigaos | amigados) 4862c393a42Smrg basic_machine=m68k-unknown 4872c393a42Smrg os=-amigaos 4882c393a42Smrg ;; 4892c393a42Smrg amigaunix | amix) 4902c393a42Smrg basic_machine=m68k-unknown 4912c393a42Smrg os=-sysv4 4922c393a42Smrg ;; 4932c393a42Smrg apollo68) 4942c393a42Smrg basic_machine=m68k-apollo 4952c393a42Smrg os=-sysv 4962c393a42Smrg ;; 4972c393a42Smrg apollo68bsd) 4982c393a42Smrg basic_machine=m68k-apollo 4992c393a42Smrg os=-bsd 5002c393a42Smrg ;; 501ca08ab68Smrg aros) 502ca08ab68Smrg basic_machine=i386-pc 503ca08ab68Smrg os=-aros 504ca08ab68Smrg ;; 5052c393a42Smrg aux) 5062c393a42Smrg basic_machine=m68k-apple 5072c393a42Smrg os=-aux 5082c393a42Smrg ;; 5092c393a42Smrg balance) 5102c393a42Smrg basic_machine=ns32k-sequent 5112c393a42Smrg os=-dynix 5122c393a42Smrg ;; 5132c393a42Smrg blackfin) 5142c393a42Smrg basic_machine=bfin-unknown 5152c393a42Smrg os=-linux 5162c393a42Smrg ;; 5172c393a42Smrg blackfin-*) 5182c393a42Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5192c393a42Smrg os=-linux 5202c393a42Smrg ;; 521ca08ab68Smrg bluegene*) 522ca08ab68Smrg basic_machine=powerpc-ibm 523ca08ab68Smrg os=-cnk 524ca08ab68Smrg ;; 525ca08ab68Smrg c54x-*) 526ca08ab68Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 527ca08ab68Smrg ;; 528ca08ab68Smrg c55x-*) 529ca08ab68Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 530ca08ab68Smrg ;; 531ca08ab68Smrg c6x-*) 532ca08ab68Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 533ca08ab68Smrg ;; 5342c393a42Smrg c90) 5352c393a42Smrg basic_machine=c90-cray 5362c393a42Smrg os=-unicos 5372c393a42Smrg ;; 538ca08ab68Smrg cegcc) 539ca08ab68Smrg basic_machine=arm-unknown 540ca08ab68Smrg os=-cegcc 541ca08ab68Smrg ;; 5422c393a42Smrg convex-c1) 5432c393a42Smrg basic_machine=c1-convex 5442c393a42Smrg os=-bsd 5452c393a42Smrg ;; 5462c393a42Smrg convex-c2) 5472c393a42Smrg basic_machine=c2-convex 5482c393a42Smrg os=-bsd 5492c393a42Smrg ;; 5502c393a42Smrg convex-c32) 5512c393a42Smrg basic_machine=c32-convex 5522c393a42Smrg os=-bsd 5532c393a42Smrg ;; 5542c393a42Smrg convex-c34) 5552c393a42Smrg basic_machine=c34-convex 5562c393a42Smrg os=-bsd 5572c393a42Smrg ;; 5582c393a42Smrg convex-c38) 5592c393a42Smrg basic_machine=c38-convex 5602c393a42Smrg os=-bsd 5612c393a42Smrg ;; 5622c393a42Smrg cray | j90) 5632c393a42Smrg basic_machine=j90-cray 5642c393a42Smrg os=-unicos 5652c393a42Smrg ;; 5662c393a42Smrg craynv) 5672c393a42Smrg basic_machine=craynv-cray 5682c393a42Smrg os=-unicosmp 5692c393a42Smrg ;; 570ca08ab68Smrg cr16 | cr16-*) 5712c393a42Smrg basic_machine=cr16-unknown 5722c393a42Smrg os=-elf 5732c393a42Smrg ;; 5742c393a42Smrg crds | unos) 5752c393a42Smrg basic_machine=m68k-crds 5762c393a42Smrg ;; 5772c393a42Smrg crisv32 | crisv32-* | etraxfs*) 5782c393a42Smrg basic_machine=crisv32-axis 5792c393a42Smrg ;; 5802c393a42Smrg cris | cris-* | etrax*) 5812c393a42Smrg basic_machine=cris-axis 5822c393a42Smrg ;; 5832c393a42Smrg crx) 5842c393a42Smrg basic_machine=crx-unknown 5852c393a42Smrg os=-elf 5862c393a42Smrg ;; 5872c393a42Smrg da30 | da30-*) 5882c393a42Smrg basic_machine=m68k-da30 5892c393a42Smrg ;; 5902c393a42Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5912c393a42Smrg basic_machine=mips-dec 5922c393a42Smrg ;; 5932c393a42Smrg decsystem10* | dec10*) 5942c393a42Smrg basic_machine=pdp10-dec 5952c393a42Smrg os=-tops10 5962c393a42Smrg ;; 5972c393a42Smrg decsystem20* | dec20*) 5982c393a42Smrg basic_machine=pdp10-dec 5992c393a42Smrg os=-tops20 6002c393a42Smrg ;; 6012c393a42Smrg delta | 3300 | motorola-3300 | motorola-delta \ 6022c393a42Smrg | 3300-motorola | delta-motorola) 6032c393a42Smrg basic_machine=m68k-motorola 6042c393a42Smrg ;; 6052c393a42Smrg delta88) 6062c393a42Smrg basic_machine=m88k-motorola 6072c393a42Smrg os=-sysv3 6082c393a42Smrg ;; 609ca08ab68Smrg dicos) 610ca08ab68Smrg basic_machine=i686-pc 611ca08ab68Smrg os=-dicos 612ca08ab68Smrg ;; 6132c393a42Smrg djgpp) 6142c393a42Smrg basic_machine=i586-pc 6152c393a42Smrg os=-msdosdjgpp 6162c393a42Smrg ;; 6172c393a42Smrg dpx20 | dpx20-*) 6182c393a42Smrg basic_machine=rs6000-bull 6192c393a42Smrg os=-bosx 6202c393a42Smrg ;; 6212c393a42Smrg dpx2* | dpx2*-bull) 6222c393a42Smrg basic_machine=m68k-bull 6232c393a42Smrg os=-sysv3 6242c393a42Smrg ;; 6252c393a42Smrg ebmon29k) 6262c393a42Smrg basic_machine=a29k-amd 6272c393a42Smrg os=-ebmon 6282c393a42Smrg ;; 6292c393a42Smrg elxsi) 6302c393a42Smrg basic_machine=elxsi-elxsi 6312c393a42Smrg os=-bsd 6322c393a42Smrg ;; 6332c393a42Smrg encore | umax | mmax) 6342c393a42Smrg basic_machine=ns32k-encore 6352c393a42Smrg ;; 6362c393a42Smrg es1800 | OSE68k | ose68k | ose | OSE) 6372c393a42Smrg basic_machine=m68k-ericsson 6382c393a42Smrg os=-ose 6392c393a42Smrg ;; 6402c393a42Smrg fx2800) 6412c393a42Smrg basic_machine=i860-alliant 6422c393a42Smrg ;; 6432c393a42Smrg genix) 6442c393a42Smrg basic_machine=ns32k-ns 6452c393a42Smrg ;; 6462c393a42Smrg gmicro) 6472c393a42Smrg basic_machine=tron-gmicro 6482c393a42Smrg os=-sysv 6492c393a42Smrg ;; 6502c393a42Smrg go32) 6512c393a42Smrg basic_machine=i386-pc 6522c393a42Smrg os=-go32 6532c393a42Smrg ;; 6542c393a42Smrg h3050r* | hiux*) 6552c393a42Smrg basic_machine=hppa1.1-hitachi 6562c393a42Smrg os=-hiuxwe2 6572c393a42Smrg ;; 6582c393a42Smrg h8300hms) 6592c393a42Smrg basic_machine=h8300-hitachi 6602c393a42Smrg os=-hms 6612c393a42Smrg ;; 6622c393a42Smrg h8300xray) 6632c393a42Smrg basic_machine=h8300-hitachi 6642c393a42Smrg os=-xray 6652c393a42Smrg ;; 6662c393a42Smrg h8500hms) 6672c393a42Smrg basic_machine=h8500-hitachi 6682c393a42Smrg os=-hms 6692c393a42Smrg ;; 6702c393a42Smrg harris) 6712c393a42Smrg basic_machine=m88k-harris 6722c393a42Smrg os=-sysv3 6732c393a42Smrg ;; 6742c393a42Smrg hp300-*) 6752c393a42Smrg basic_machine=m68k-hp 6762c393a42Smrg ;; 6772c393a42Smrg hp300bsd) 6782c393a42Smrg basic_machine=m68k-hp 6792c393a42Smrg os=-bsd 6802c393a42Smrg ;; 6812c393a42Smrg hp300hpux) 6822c393a42Smrg basic_machine=m68k-hp 6832c393a42Smrg os=-hpux 6842c393a42Smrg ;; 6852c393a42Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6862c393a42Smrg basic_machine=hppa1.0-hp 6872c393a42Smrg ;; 6882c393a42Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6892c393a42Smrg basic_machine=m68000-hp 6902c393a42Smrg ;; 6912c393a42Smrg hp9k3[2-9][0-9]) 6922c393a42Smrg basic_machine=m68k-hp 6932c393a42Smrg ;; 6942c393a42Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6952c393a42Smrg basic_machine=hppa1.0-hp 6962c393a42Smrg ;; 6972c393a42Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6982c393a42Smrg basic_machine=hppa1.1-hp 6992c393a42Smrg ;; 7002c393a42Smrg hp9k78[0-9] | hp78[0-9]) 7012c393a42Smrg # FIXME: really hppa2.0-hp 7022c393a42Smrg basic_machine=hppa1.1-hp 7032c393a42Smrg ;; 7042c393a42Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7052c393a42Smrg # FIXME: really hppa2.0-hp 7062c393a42Smrg basic_machine=hppa1.1-hp 7072c393a42Smrg ;; 7082c393a42Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7092c393a42Smrg basic_machine=hppa1.1-hp 7102c393a42Smrg ;; 7112c393a42Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7122c393a42Smrg basic_machine=hppa1.0-hp 7132c393a42Smrg ;; 7142c393a42Smrg hppa-next) 7152c393a42Smrg os=-nextstep3 7162c393a42Smrg ;; 7172c393a42Smrg hppaosf) 7182c393a42Smrg basic_machine=hppa1.1-hp 7192c393a42Smrg os=-osf 7202c393a42Smrg ;; 7212c393a42Smrg hppro) 7222c393a42Smrg basic_machine=hppa1.1-hp 7232c393a42Smrg os=-proelf 7242c393a42Smrg ;; 7252c393a42Smrg i370-ibm* | ibm*) 7262c393a42Smrg basic_machine=i370-ibm 7272c393a42Smrg ;; 7282c393a42Smrg i*86v32) 7292c393a42Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7302c393a42Smrg os=-sysv32 7312c393a42Smrg ;; 7322c393a42Smrg i*86v4*) 7332c393a42Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7342c393a42Smrg os=-sysv4 7352c393a42Smrg ;; 7362c393a42Smrg i*86v) 7372c393a42Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7382c393a42Smrg os=-sysv 7392c393a42Smrg ;; 7402c393a42Smrg i*86sol2) 7412c393a42Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7422c393a42Smrg os=-solaris2 7432c393a42Smrg ;; 7442c393a42Smrg i386mach) 7452c393a42Smrg basic_machine=i386-mach 7462c393a42Smrg os=-mach 7472c393a42Smrg ;; 7482c393a42Smrg i386-vsta | vsta) 7492c393a42Smrg basic_machine=i386-unknown 7502c393a42Smrg os=-vsta 7512c393a42Smrg ;; 7522c393a42Smrg iris | iris4d) 7532c393a42Smrg basic_machine=mips-sgi 7542c393a42Smrg case $os in 7552c393a42Smrg -irix*) 7562c393a42Smrg ;; 7572c393a42Smrg *) 7582c393a42Smrg os=-irix4 7592c393a42Smrg ;; 7602c393a42Smrg esac 7612c393a42Smrg ;; 7622c393a42Smrg isi68 | isi) 7632c393a42Smrg basic_machine=m68k-isi 7642c393a42Smrg os=-sysv 7652c393a42Smrg ;; 7662c393a42Smrg m68knommu) 7672c393a42Smrg basic_machine=m68k-unknown 7682c393a42Smrg os=-linux 7692c393a42Smrg ;; 7702c393a42Smrg m68knommu-*) 7712c393a42Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7722c393a42Smrg os=-linux 7732c393a42Smrg ;; 7742c393a42Smrg m88k-omron*) 7752c393a42Smrg basic_machine=m88k-omron 7762c393a42Smrg ;; 7772c393a42Smrg magnum | m3230) 7782c393a42Smrg basic_machine=mips-mips 7792c393a42Smrg os=-sysv 7802c393a42Smrg ;; 7812c393a42Smrg merlin) 7822c393a42Smrg basic_machine=ns32k-utek 7832c393a42Smrg os=-sysv 7842c393a42Smrg ;; 785ca08ab68Smrg microblaze) 786ca08ab68Smrg basic_machine=microblaze-xilinx 787ca08ab68Smrg ;; 7882c393a42Smrg mingw32) 7892c393a42Smrg basic_machine=i386-pc 7902c393a42Smrg os=-mingw32 7912c393a42Smrg ;; 7922c393a42Smrg mingw32ce) 7932c393a42Smrg basic_machine=arm-unknown 7942c393a42Smrg os=-mingw32ce 7952c393a42Smrg ;; 7962c393a42Smrg miniframe) 7972c393a42Smrg basic_machine=m68000-convergent 7982c393a42Smrg ;; 7992c393a42Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8002c393a42Smrg basic_machine=m68k-atari 8012c393a42Smrg os=-mint 8022c393a42Smrg ;; 8032c393a42Smrg mips3*-*) 8042c393a42Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8052c393a42Smrg ;; 8062c393a42Smrg mips3*) 8072c393a42Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8082c393a42Smrg ;; 8092c393a42Smrg monitor) 8102c393a42Smrg basic_machine=m68k-rom68k 8112c393a42Smrg os=-coff 8122c393a42Smrg ;; 8132c393a42Smrg morphos) 8142c393a42Smrg basic_machine=powerpc-unknown 8152c393a42Smrg os=-morphos 8162c393a42Smrg ;; 8172c393a42Smrg msdos) 8182c393a42Smrg basic_machine=i386-pc 8192c393a42Smrg os=-msdos 8202c393a42Smrg ;; 8212c393a42Smrg ms1-*) 8222c393a42Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8232c393a42Smrg ;; 824ca08ab68Smrg msys) 825ca08ab68Smrg basic_machine=i386-pc 826ca08ab68Smrg os=-msys 827ca08ab68Smrg ;; 8282c393a42Smrg mvs) 8292c393a42Smrg basic_machine=i370-ibm 8302c393a42Smrg os=-mvs 8312c393a42Smrg ;; 832ca08ab68Smrg nacl) 833ca08ab68Smrg basic_machine=le32-unknown 834ca08ab68Smrg os=-nacl 835ca08ab68Smrg ;; 8362c393a42Smrg ncr3000) 8372c393a42Smrg basic_machine=i486-ncr 8382c393a42Smrg os=-sysv4 8392c393a42Smrg ;; 8402c393a42Smrg netbsd386) 8412c393a42Smrg basic_machine=i386-unknown 8422c393a42Smrg os=-netbsd 8432c393a42Smrg ;; 8442c393a42Smrg netwinder) 8452c393a42Smrg basic_machine=armv4l-rebel 8462c393a42Smrg os=-linux 8472c393a42Smrg ;; 8482c393a42Smrg news | news700 | news800 | news900) 8492c393a42Smrg basic_machine=m68k-sony 8502c393a42Smrg os=-newsos 8512c393a42Smrg ;; 8522c393a42Smrg news1000) 8532c393a42Smrg basic_machine=m68030-sony 8542c393a42Smrg os=-newsos 8552c393a42Smrg ;; 8562c393a42Smrg news-3600 | risc-news) 8572c393a42Smrg basic_machine=mips-sony 8582c393a42Smrg os=-newsos 8592c393a42Smrg ;; 8602c393a42Smrg necv70) 8612c393a42Smrg basic_machine=v70-nec 8622c393a42Smrg os=-sysv 8632c393a42Smrg ;; 8642c393a42Smrg next | m*-next ) 8652c393a42Smrg basic_machine=m68k-next 8662c393a42Smrg case $os in 8672c393a42Smrg -nextstep* ) 8682c393a42Smrg ;; 8692c393a42Smrg -ns2*) 8702c393a42Smrg os=-nextstep2 8712c393a42Smrg ;; 8722c393a42Smrg *) 8732c393a42Smrg os=-nextstep3 8742c393a42Smrg ;; 8752c393a42Smrg esac 8762c393a42Smrg ;; 8772c393a42Smrg nh3000) 8782c393a42Smrg basic_machine=m68k-harris 8792c393a42Smrg os=-cxux 8802c393a42Smrg ;; 8812c393a42Smrg nh[45]000) 8822c393a42Smrg basic_machine=m88k-harris 8832c393a42Smrg os=-cxux 8842c393a42Smrg ;; 8852c393a42Smrg nindy960) 8862c393a42Smrg basic_machine=i960-intel 8872c393a42Smrg os=-nindy 8882c393a42Smrg ;; 8892c393a42Smrg mon960) 8902c393a42Smrg basic_machine=i960-intel 8912c393a42Smrg os=-mon960 8922c393a42Smrg ;; 8932c393a42Smrg nonstopux) 8942c393a42Smrg basic_machine=mips-compaq 8952c393a42Smrg os=-nonstopux 8962c393a42Smrg ;; 8972c393a42Smrg np1) 8982c393a42Smrg basic_machine=np1-gould 8992c393a42Smrg ;; 900ca08ab68Smrg neo-tandem) 901ca08ab68Smrg basic_machine=neo-tandem 902ca08ab68Smrg ;; 903ca08ab68Smrg nse-tandem) 904ca08ab68Smrg basic_machine=nse-tandem 905ca08ab68Smrg ;; 9062c393a42Smrg nsr-tandem) 9072c393a42Smrg basic_machine=nsr-tandem 9082c393a42Smrg ;; 9092c393a42Smrg op50n-* | op60c-*) 9102c393a42Smrg basic_machine=hppa1.1-oki 9112c393a42Smrg os=-proelf 9122c393a42Smrg ;; 9132c393a42Smrg openrisc | openrisc-*) 9142c393a42Smrg basic_machine=or32-unknown 9152c393a42Smrg ;; 9162c393a42Smrg os400) 9172c393a42Smrg basic_machine=powerpc-ibm 9182c393a42Smrg os=-os400 9192c393a42Smrg ;; 9202c393a42Smrg OSE68000 | ose68000) 9212c393a42Smrg basic_machine=m68000-ericsson 9222c393a42Smrg os=-ose 9232c393a42Smrg ;; 9242c393a42Smrg os68k) 9252c393a42Smrg basic_machine=m68k-none 9262c393a42Smrg os=-os68k 9272c393a42Smrg ;; 9282c393a42Smrg pa-hitachi) 9292c393a42Smrg basic_machine=hppa1.1-hitachi 9302c393a42Smrg os=-hiuxwe2 9312c393a42Smrg ;; 9322c393a42Smrg paragon) 9332c393a42Smrg basic_machine=i860-intel 9342c393a42Smrg os=-osf 9352c393a42Smrg ;; 9362c393a42Smrg parisc) 9372c393a42Smrg basic_machine=hppa-unknown 9382c393a42Smrg os=-linux 9392c393a42Smrg ;; 9402c393a42Smrg parisc-*) 9412c393a42Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9422c393a42Smrg os=-linux 9432c393a42Smrg ;; 9442c393a42Smrg pbd) 9452c393a42Smrg basic_machine=sparc-tti 9462c393a42Smrg ;; 9472c393a42Smrg pbb) 9482c393a42Smrg basic_machine=m68k-tti 9492c393a42Smrg ;; 9502c393a42Smrg pc532 | pc532-*) 9512c393a42Smrg basic_machine=ns32k-pc532 9522c393a42Smrg ;; 9532c393a42Smrg pc98) 9542c393a42Smrg basic_machine=i386-pc 9552c393a42Smrg ;; 9562c393a42Smrg pc98-*) 9572c393a42Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9582c393a42Smrg ;; 9592c393a42Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9602c393a42Smrg basic_machine=i586-pc 9612c393a42Smrg ;; 9622c393a42Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9632c393a42Smrg basic_machine=i686-pc 9642c393a42Smrg ;; 9652c393a42Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9662c393a42Smrg basic_machine=i686-pc 9672c393a42Smrg ;; 9682c393a42Smrg pentium4) 9692c393a42Smrg basic_machine=i786-pc 9702c393a42Smrg ;; 9712c393a42Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9722c393a42Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9732c393a42Smrg ;; 9742c393a42Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9752c393a42Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9762c393a42Smrg ;; 9772c393a42Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9782c393a42Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9792c393a42Smrg ;; 9802c393a42Smrg pentium4-*) 9812c393a42Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9822c393a42Smrg ;; 9832c393a42Smrg pn) 9842c393a42Smrg basic_machine=pn-gould 9852c393a42Smrg ;; 9862c393a42Smrg power) basic_machine=power-ibm 9872c393a42Smrg ;; 988ca08ab68Smrg ppc | ppcbe) basic_machine=powerpc-unknown 9892c393a42Smrg ;; 990ca08ab68Smrg ppc-* | ppcbe-*) 991ca08ab68Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9922c393a42Smrg ;; 9932c393a42Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 9942c393a42Smrg basic_machine=powerpcle-unknown 9952c393a42Smrg ;; 9962c393a42Smrg ppcle-* | powerpclittle-*) 9972c393a42Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9982c393a42Smrg ;; 9992c393a42Smrg ppc64) basic_machine=powerpc64-unknown 10002c393a42Smrg ;; 10012c393a42Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10022c393a42Smrg ;; 10032c393a42Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10042c393a42Smrg basic_machine=powerpc64le-unknown 10052c393a42Smrg ;; 10062c393a42Smrg ppc64le-* | powerpc64little-*) 10072c393a42Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10082c393a42Smrg ;; 10092c393a42Smrg ps2) 10102c393a42Smrg basic_machine=i386-ibm 10112c393a42Smrg ;; 10122c393a42Smrg pw32) 10132c393a42Smrg basic_machine=i586-unknown 10142c393a42Smrg os=-pw32 10152c393a42Smrg ;; 10162c393a42Smrg rdos) 10172c393a42Smrg basic_machine=i386-pc 10182c393a42Smrg os=-rdos 10192c393a42Smrg ;; 10202c393a42Smrg rom68k) 10212c393a42Smrg basic_machine=m68k-rom68k 10222c393a42Smrg os=-coff 10232c393a42Smrg ;; 10242c393a42Smrg rm[46]00) 10252c393a42Smrg basic_machine=mips-siemens 10262c393a42Smrg ;; 10272c393a42Smrg rtpc | rtpc-*) 10282c393a42Smrg basic_machine=romp-ibm 10292c393a42Smrg ;; 10302c393a42Smrg s390 | s390-*) 10312c393a42Smrg basic_machine=s390-ibm 10322c393a42Smrg ;; 10332c393a42Smrg s390x | s390x-*) 10342c393a42Smrg basic_machine=s390x-ibm 10352c393a42Smrg ;; 10362c393a42Smrg sa29200) 10372c393a42Smrg basic_machine=a29k-amd 10382c393a42Smrg os=-udi 10392c393a42Smrg ;; 10402c393a42Smrg sb1) 10412c393a42Smrg basic_machine=mipsisa64sb1-unknown 10422c393a42Smrg ;; 10432c393a42Smrg sb1el) 10442c393a42Smrg basic_machine=mipsisa64sb1el-unknown 10452c393a42Smrg ;; 10462c393a42Smrg sde) 10472c393a42Smrg basic_machine=mipsisa32-sde 10482c393a42Smrg os=-elf 10492c393a42Smrg ;; 10502c393a42Smrg sei) 10512c393a42Smrg basic_machine=mips-sei 10522c393a42Smrg os=-seiux 10532c393a42Smrg ;; 10542c393a42Smrg sequent) 10552c393a42Smrg basic_machine=i386-sequent 10562c393a42Smrg ;; 10572c393a42Smrg sh) 10582c393a42Smrg basic_machine=sh-hitachi 10592c393a42Smrg os=-hms 10602c393a42Smrg ;; 10612c393a42Smrg sh5el) 10622c393a42Smrg basic_machine=sh5le-unknown 10632c393a42Smrg ;; 10642c393a42Smrg sh64) 10652c393a42Smrg basic_machine=sh64-unknown 10662c393a42Smrg ;; 10672c393a42Smrg sparclite-wrs | simso-wrs) 10682c393a42Smrg basic_machine=sparclite-wrs 10692c393a42Smrg os=-vxworks 10702c393a42Smrg ;; 10712c393a42Smrg sps7) 10722c393a42Smrg basic_machine=m68k-bull 10732c393a42Smrg os=-sysv2 10742c393a42Smrg ;; 10752c393a42Smrg spur) 10762c393a42Smrg basic_machine=spur-unknown 10772c393a42Smrg ;; 10782c393a42Smrg st2000) 10792c393a42Smrg basic_machine=m68k-tandem 10802c393a42Smrg ;; 10812c393a42Smrg stratus) 10822c393a42Smrg basic_machine=i860-stratus 10832c393a42Smrg os=-sysv4 10842c393a42Smrg ;; 1085ca08ab68Smrg strongarm-* | thumb-*) 1086ca08ab68Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1087ca08ab68Smrg ;; 10882c393a42Smrg sun2) 10892c393a42Smrg basic_machine=m68000-sun 10902c393a42Smrg ;; 10912c393a42Smrg sun2os3) 10922c393a42Smrg basic_machine=m68000-sun 10932c393a42Smrg os=-sunos3 10942c393a42Smrg ;; 10952c393a42Smrg sun2os4) 10962c393a42Smrg basic_machine=m68000-sun 10972c393a42Smrg os=-sunos4 10982c393a42Smrg ;; 10992c393a42Smrg sun3os3) 11002c393a42Smrg basic_machine=m68k-sun 11012c393a42Smrg os=-sunos3 11022c393a42Smrg ;; 11032c393a42Smrg sun3os4) 11042c393a42Smrg basic_machine=m68k-sun 11052c393a42Smrg os=-sunos4 11062c393a42Smrg ;; 11072c393a42Smrg sun4os3) 11082c393a42Smrg basic_machine=sparc-sun 11092c393a42Smrg os=-sunos3 11102c393a42Smrg ;; 11112c393a42Smrg sun4os4) 11122c393a42Smrg basic_machine=sparc-sun 11132c393a42Smrg os=-sunos4 11142c393a42Smrg ;; 11152c393a42Smrg sun4sol2) 11162c393a42Smrg basic_machine=sparc-sun 11172c393a42Smrg os=-solaris2 11182c393a42Smrg ;; 11192c393a42Smrg sun3 | sun3-*) 11202c393a42Smrg basic_machine=m68k-sun 11212c393a42Smrg ;; 11222c393a42Smrg sun4) 11232c393a42Smrg basic_machine=sparc-sun 11242c393a42Smrg ;; 11252c393a42Smrg sun386 | sun386i | roadrunner) 11262c393a42Smrg basic_machine=i386-sun 11272c393a42Smrg ;; 11282c393a42Smrg sv1) 11292c393a42Smrg basic_machine=sv1-cray 11302c393a42Smrg os=-unicos 11312c393a42Smrg ;; 11322c393a42Smrg symmetry) 11332c393a42Smrg basic_machine=i386-sequent 11342c393a42Smrg os=-dynix 11352c393a42Smrg ;; 11362c393a42Smrg t3e) 11372c393a42Smrg basic_machine=alphaev5-cray 11382c393a42Smrg os=-unicos 11392c393a42Smrg ;; 11402c393a42Smrg t90) 11412c393a42Smrg basic_machine=t90-cray 11422c393a42Smrg os=-unicos 11432c393a42Smrg ;; 11442c393a42Smrg tile*) 1145ca08ab68Smrg basic_machine=$basic_machine-unknown 11462c393a42Smrg os=-linux-gnu 11472c393a42Smrg ;; 11482c393a42Smrg tx39) 11492c393a42Smrg basic_machine=mipstx39-unknown 11502c393a42Smrg ;; 11512c393a42Smrg tx39el) 11522c393a42Smrg basic_machine=mipstx39el-unknown 11532c393a42Smrg ;; 11542c393a42Smrg toad1) 11552c393a42Smrg basic_machine=pdp10-xkl 11562c393a42Smrg os=-tops20 11572c393a42Smrg ;; 11582c393a42Smrg tower | tower-32) 11592c393a42Smrg basic_machine=m68k-ncr 11602c393a42Smrg ;; 11612c393a42Smrg tpf) 11622c393a42Smrg basic_machine=s390x-ibm 11632c393a42Smrg os=-tpf 11642c393a42Smrg ;; 11652c393a42Smrg udi29k) 11662c393a42Smrg basic_machine=a29k-amd 11672c393a42Smrg os=-udi 11682c393a42Smrg ;; 11692c393a42Smrg ultra3) 11702c393a42Smrg basic_machine=a29k-nyu 11712c393a42Smrg os=-sym1 11722c393a42Smrg ;; 11732c393a42Smrg v810 | necv810) 11742c393a42Smrg basic_machine=v810-nec 11752c393a42Smrg os=-none 11762c393a42Smrg ;; 11772c393a42Smrg vaxv) 11782c393a42Smrg basic_machine=vax-dec 11792c393a42Smrg os=-sysv 11802c393a42Smrg ;; 11812c393a42Smrg vms) 11822c393a42Smrg basic_machine=vax-dec 11832c393a42Smrg os=-vms 11842c393a42Smrg ;; 11852c393a42Smrg vpp*|vx|vx-*) 11862c393a42Smrg basic_machine=f301-fujitsu 11872c393a42Smrg ;; 11882c393a42Smrg vxworks960) 11892c393a42Smrg basic_machine=i960-wrs 11902c393a42Smrg os=-vxworks 11912c393a42Smrg ;; 11922c393a42Smrg vxworks68) 11932c393a42Smrg basic_machine=m68k-wrs 11942c393a42Smrg os=-vxworks 11952c393a42Smrg ;; 11962c393a42Smrg vxworks29k) 11972c393a42Smrg basic_machine=a29k-wrs 11982c393a42Smrg os=-vxworks 11992c393a42Smrg ;; 12002c393a42Smrg w65*) 12012c393a42Smrg basic_machine=w65-wdc 12022c393a42Smrg os=-none 12032c393a42Smrg ;; 12042c393a42Smrg w89k-*) 12052c393a42Smrg basic_machine=hppa1.1-winbond 12062c393a42Smrg os=-proelf 12072c393a42Smrg ;; 12082c393a42Smrg xbox) 12092c393a42Smrg basic_machine=i686-pc 12102c393a42Smrg os=-mingw32 12112c393a42Smrg ;; 12122c393a42Smrg xps | xps100) 12132c393a42Smrg basic_machine=xps100-honeywell 12142c393a42Smrg ;; 1215ca08ab68Smrg xscale-* | xscalee[bl]-*) 1216ca08ab68Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1217ca08ab68Smrg ;; 12182c393a42Smrg ymp) 12192c393a42Smrg basic_machine=ymp-cray 12202c393a42Smrg os=-unicos 12212c393a42Smrg ;; 12222c393a42Smrg z8k-*-coff) 12232c393a42Smrg basic_machine=z8k-unknown 12242c393a42Smrg os=-sim 12252c393a42Smrg ;; 1226ca08ab68Smrg z80-*-coff) 1227ca08ab68Smrg basic_machine=z80-unknown 1228ca08ab68Smrg os=-sim 1229ca08ab68Smrg ;; 12302c393a42Smrg none) 12312c393a42Smrg basic_machine=none-none 12322c393a42Smrg os=-none 12332c393a42Smrg ;; 12342c393a42Smrg 12352c393a42Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12362c393a42Smrg# some cases the only manufacturer, in others, it is the most popular. 12372c393a42Smrg w89k) 12382c393a42Smrg basic_machine=hppa1.1-winbond 12392c393a42Smrg ;; 12402c393a42Smrg op50n) 12412c393a42Smrg basic_machine=hppa1.1-oki 12422c393a42Smrg ;; 12432c393a42Smrg op60c) 12442c393a42Smrg basic_machine=hppa1.1-oki 12452c393a42Smrg ;; 12462c393a42Smrg romp) 12472c393a42Smrg basic_machine=romp-ibm 12482c393a42Smrg ;; 12492c393a42Smrg mmix) 12502c393a42Smrg basic_machine=mmix-knuth 12512c393a42Smrg ;; 12522c393a42Smrg rs6000) 12532c393a42Smrg basic_machine=rs6000-ibm 12542c393a42Smrg ;; 12552c393a42Smrg vax) 12562c393a42Smrg basic_machine=vax-dec 12572c393a42Smrg ;; 12582c393a42Smrg pdp10) 12592c393a42Smrg # there are many clones, so DEC is not a safe bet 12602c393a42Smrg basic_machine=pdp10-unknown 12612c393a42Smrg ;; 12622c393a42Smrg pdp11) 12632c393a42Smrg basic_machine=pdp11-dec 12642c393a42Smrg ;; 12652c393a42Smrg we32k) 12662c393a42Smrg basic_machine=we32k-att 12672c393a42Smrg ;; 1268ca08ab68Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12692c393a42Smrg basic_machine=sh-unknown 12702c393a42Smrg ;; 12712c393a42Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12722c393a42Smrg basic_machine=sparc-sun 12732c393a42Smrg ;; 12742c393a42Smrg cydra) 12752c393a42Smrg basic_machine=cydra-cydrome 12762c393a42Smrg ;; 12772c393a42Smrg orion) 12782c393a42Smrg basic_machine=orion-highlevel 12792c393a42Smrg ;; 12802c393a42Smrg orion105) 12812c393a42Smrg basic_machine=clipper-highlevel 12822c393a42Smrg ;; 12832c393a42Smrg mac | mpw | mac-mpw) 12842c393a42Smrg basic_machine=m68k-apple 12852c393a42Smrg ;; 12862c393a42Smrg pmac | pmac-mpw) 12872c393a42Smrg basic_machine=powerpc-apple 12882c393a42Smrg ;; 12892c393a42Smrg *-unknown) 12902c393a42Smrg # Make sure to match an already-canonicalized machine name. 12912c393a42Smrg ;; 12922c393a42Smrg *) 12932c393a42Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12942c393a42Smrg exit 1 12952c393a42Smrg ;; 12962c393a42Smrgesac 12972c393a42Smrg 12982c393a42Smrg# Here we canonicalize certain aliases for manufacturers. 12992c393a42Smrgcase $basic_machine in 13002c393a42Smrg *-digital*) 13012c393a42Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13022c393a42Smrg ;; 13032c393a42Smrg *-commodore*) 13042c393a42Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13052c393a42Smrg ;; 13062c393a42Smrg *) 13072c393a42Smrg ;; 13082c393a42Smrgesac 13092c393a42Smrg 13102c393a42Smrg# Decode manufacturer-specific aliases for certain operating systems. 13112c393a42Smrg 13122c393a42Smrgif [ x"$os" != x"" ] 13132c393a42Smrgthen 13142c393a42Smrgcase $os in 1315ca08ab68Smrg # First match some system type aliases 1316ca08ab68Smrg # that might get confused with valid system types. 13172c393a42Smrg # -solaris* is a basic system type, with this one exception. 1318ca08ab68Smrg -auroraux) 1319ca08ab68Smrg os=-auroraux 1320ca08ab68Smrg ;; 13212c393a42Smrg -solaris1 | -solaris1.*) 13222c393a42Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13232c393a42Smrg ;; 13242c393a42Smrg -solaris) 13252c393a42Smrg os=-solaris2 13262c393a42Smrg ;; 13272c393a42Smrg -svr4*) 13282c393a42Smrg os=-sysv4 13292c393a42Smrg ;; 13302c393a42Smrg -unixware*) 13312c393a42Smrg os=-sysv4.2uw 13322c393a42Smrg ;; 13332c393a42Smrg -gnu/linux*) 13342c393a42Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13352c393a42Smrg ;; 13362c393a42Smrg # First accept the basic system types. 13372c393a42Smrg # The portable systems comes first. 13382c393a42Smrg # Each alternative MUST END IN A *, to match a version number. 13392c393a42Smrg # -sysv* is not here because it comes later, after sysvr4. 13402c393a42Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1341ca08ab68Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1342ca08ab68Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1343ca08ab68Smrg | -sym* | -kopensolaris* \ 13442c393a42Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1345ca08ab68Smrg | -aos* | -aros* \ 13462c393a42Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13472c393a42Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13482c393a42Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13492c393a42Smrg | -openbsd* | -solidbsd* \ 13502c393a42Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13512c393a42Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13522c393a42Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13532c393a42Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1354ca08ab68Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1355ca08ab68Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1356ca08ab68Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1357ca08ab68Smrg | -linux-newlib* | -linux-uclibc* \ 13582c393a42Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13592c393a42Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13602c393a42Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13612c393a42Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13622c393a42Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13632c393a42Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13642c393a42Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1365ca08ab68Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13662c393a42Smrg # Remember, each alternative MUST END IN *, to match a version number. 13672c393a42Smrg ;; 13682c393a42Smrg -qnx*) 13692c393a42Smrg case $basic_machine in 13702c393a42Smrg x86-* | i*86-*) 13712c393a42Smrg ;; 13722c393a42Smrg *) 13732c393a42Smrg os=-nto$os 13742c393a42Smrg ;; 13752c393a42Smrg esac 13762c393a42Smrg ;; 13772c393a42Smrg -nto-qnx*) 13782c393a42Smrg ;; 13792c393a42Smrg -nto*) 13802c393a42Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13812c393a42Smrg ;; 13822c393a42Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13832c393a42Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13842c393a42Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13852c393a42Smrg ;; 13862c393a42Smrg -mac*) 13872c393a42Smrg os=`echo $os | sed -e 's|mac|macos|'` 13882c393a42Smrg ;; 13892c393a42Smrg -linux-dietlibc) 13902c393a42Smrg os=-linux-dietlibc 13912c393a42Smrg ;; 13922c393a42Smrg -linux*) 13932c393a42Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13942c393a42Smrg ;; 13952c393a42Smrg -sunos5*) 13962c393a42Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13972c393a42Smrg ;; 13982c393a42Smrg -sunos6*) 13992c393a42Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 14002c393a42Smrg ;; 14012c393a42Smrg -opened*) 14022c393a42Smrg os=-openedition 14032c393a42Smrg ;; 1404ca08ab68Smrg -os400*) 14052c393a42Smrg os=-os400 14062c393a42Smrg ;; 14072c393a42Smrg -wince*) 14082c393a42Smrg os=-wince 14092c393a42Smrg ;; 14102c393a42Smrg -osfrose*) 14112c393a42Smrg os=-osfrose 14122c393a42Smrg ;; 14132c393a42Smrg -osf*) 14142c393a42Smrg os=-osf 14152c393a42Smrg ;; 14162c393a42Smrg -utek*) 14172c393a42Smrg os=-bsd 14182c393a42Smrg ;; 14192c393a42Smrg -dynix*) 14202c393a42Smrg os=-bsd 14212c393a42Smrg ;; 14222c393a42Smrg -acis*) 14232c393a42Smrg os=-aos 14242c393a42Smrg ;; 14252c393a42Smrg -atheos*) 14262c393a42Smrg os=-atheos 14272c393a42Smrg ;; 14282c393a42Smrg -syllable*) 14292c393a42Smrg os=-syllable 14302c393a42Smrg ;; 14312c393a42Smrg -386bsd) 14322c393a42Smrg os=-bsd 14332c393a42Smrg ;; 14342c393a42Smrg -ctix* | -uts*) 14352c393a42Smrg os=-sysv 14362c393a42Smrg ;; 14372c393a42Smrg -nova*) 14382c393a42Smrg os=-rtmk-nova 14392c393a42Smrg ;; 14402c393a42Smrg -ns2 ) 14412c393a42Smrg os=-nextstep2 14422c393a42Smrg ;; 14432c393a42Smrg -nsk*) 14442c393a42Smrg os=-nsk 14452c393a42Smrg ;; 14462c393a42Smrg # Preserve the version number of sinix5. 14472c393a42Smrg -sinix5.*) 14482c393a42Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14492c393a42Smrg ;; 14502c393a42Smrg -sinix*) 14512c393a42Smrg os=-sysv4 14522c393a42Smrg ;; 1453ca08ab68Smrg -tpf*) 14542c393a42Smrg os=-tpf 14552c393a42Smrg ;; 14562c393a42Smrg -triton*) 14572c393a42Smrg os=-sysv3 14582c393a42Smrg ;; 14592c393a42Smrg -oss*) 14602c393a42Smrg os=-sysv3 14612c393a42Smrg ;; 14622c393a42Smrg -svr4) 14632c393a42Smrg os=-sysv4 14642c393a42Smrg ;; 14652c393a42Smrg -svr3) 14662c393a42Smrg os=-sysv3 14672c393a42Smrg ;; 14682c393a42Smrg -sysvr4) 14692c393a42Smrg os=-sysv4 14702c393a42Smrg ;; 14712c393a42Smrg # This must come after -sysvr4. 14722c393a42Smrg -sysv*) 14732c393a42Smrg ;; 14742c393a42Smrg -ose*) 14752c393a42Smrg os=-ose 14762c393a42Smrg ;; 14772c393a42Smrg -es1800*) 14782c393a42Smrg os=-ose 14792c393a42Smrg ;; 14802c393a42Smrg -xenix) 14812c393a42Smrg os=-xenix 14822c393a42Smrg ;; 14832c393a42Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14842c393a42Smrg os=-mint 14852c393a42Smrg ;; 14862c393a42Smrg -aros*) 14872c393a42Smrg os=-aros 14882c393a42Smrg ;; 14892c393a42Smrg -kaos*) 14902c393a42Smrg os=-kaos 14912c393a42Smrg ;; 14922c393a42Smrg -zvmoe) 14932c393a42Smrg os=-zvmoe 14942c393a42Smrg ;; 1495ca08ab68Smrg -dicos*) 1496ca08ab68Smrg os=-dicos 1497ca08ab68Smrg ;; 1498ca08ab68Smrg -nacl*) 1499ca08ab68Smrg ;; 15002c393a42Smrg -none) 15012c393a42Smrg ;; 15022c393a42Smrg *) 15032c393a42Smrg # Get rid of the `-' at the beginning of $os. 15042c393a42Smrg os=`echo $os | sed 's/[^-]*-//'` 15052c393a42Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15062c393a42Smrg exit 1 15072c393a42Smrg ;; 15082c393a42Smrgesac 15092c393a42Smrgelse 15102c393a42Smrg 15112c393a42Smrg# Here we handle the default operating systems that come with various machines. 15122c393a42Smrg# The value should be what the vendor currently ships out the door with their 15132c393a42Smrg# machine or put another way, the most popular os provided with the machine. 15142c393a42Smrg 15152c393a42Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15162c393a42Smrg# "-sun"), then you have to tell the case statement up towards the top 15172c393a42Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15182c393a42Smrg# will signal an error saying that MANUFACTURER isn't an operating 15192c393a42Smrg# system, and we'll never get to this point. 15202c393a42Smrg 15212c393a42Smrgcase $basic_machine in 1522ca08ab68Smrg score-*) 15232c393a42Smrg os=-elf 15242c393a42Smrg ;; 1525ca08ab68Smrg spu-*) 15262c393a42Smrg os=-elf 15272c393a42Smrg ;; 15282c393a42Smrg *-acorn) 15292c393a42Smrg os=-riscix1.2 15302c393a42Smrg ;; 15312c393a42Smrg arm*-rebel) 15322c393a42Smrg os=-linux 15332c393a42Smrg ;; 15342c393a42Smrg arm*-semi) 15352c393a42Smrg os=-aout 15362c393a42Smrg ;; 1537ca08ab68Smrg c4x-* | tic4x-*) 1538ca08ab68Smrg os=-coff 1539ca08ab68Smrg ;; 1540ca08ab68Smrg tic54x-*) 1541ca08ab68Smrg os=-coff 1542ca08ab68Smrg ;; 1543ca08ab68Smrg tic55x-*) 1544ca08ab68Smrg os=-coff 1545ca08ab68Smrg ;; 1546ca08ab68Smrg tic6x-*) 1547ca08ab68Smrg os=-coff 15482c393a42Smrg ;; 15492c393a42Smrg # This must come before the *-dec entry. 15502c393a42Smrg pdp10-*) 15512c393a42Smrg os=-tops20 15522c393a42Smrg ;; 15532c393a42Smrg pdp11-*) 15542c393a42Smrg os=-none 15552c393a42Smrg ;; 15562c393a42Smrg *-dec | vax-*) 15572c393a42Smrg os=-ultrix4.2 15582c393a42Smrg ;; 15592c393a42Smrg m68*-apollo) 15602c393a42Smrg os=-domain 15612c393a42Smrg ;; 15622c393a42Smrg i386-sun) 15632c393a42Smrg os=-sunos4.0.2 15642c393a42Smrg ;; 15652c393a42Smrg m68000-sun) 15662c393a42Smrg os=-sunos3 15672c393a42Smrg ;; 15682c393a42Smrg m68*-cisco) 15692c393a42Smrg os=-aout 15702c393a42Smrg ;; 1571ca08ab68Smrg mep-*) 15722c393a42Smrg os=-elf 15732c393a42Smrg ;; 15742c393a42Smrg mips*-cisco) 15752c393a42Smrg os=-elf 15762c393a42Smrg ;; 15772c393a42Smrg mips*-*) 15782c393a42Smrg os=-elf 15792c393a42Smrg ;; 15802c393a42Smrg or32-*) 15812c393a42Smrg os=-coff 15822c393a42Smrg ;; 15832c393a42Smrg *-tti) # must be before sparc entry or we get the wrong os. 15842c393a42Smrg os=-sysv3 15852c393a42Smrg ;; 15862c393a42Smrg sparc-* | *-sun) 15872c393a42Smrg os=-sunos4.1.1 15882c393a42Smrg ;; 15892c393a42Smrg *-be) 15902c393a42Smrg os=-beos 15912c393a42Smrg ;; 15922c393a42Smrg *-haiku) 15932c393a42Smrg os=-haiku 15942c393a42Smrg ;; 15952c393a42Smrg *-ibm) 15962c393a42Smrg os=-aix 15972c393a42Smrg ;; 1598ca08ab68Smrg *-knuth) 15992c393a42Smrg os=-mmixware 16002c393a42Smrg ;; 16012c393a42Smrg *-wec) 16022c393a42Smrg os=-proelf 16032c393a42Smrg ;; 16042c393a42Smrg *-winbond) 16052c393a42Smrg os=-proelf 16062c393a42Smrg ;; 16072c393a42Smrg *-oki) 16082c393a42Smrg os=-proelf 16092c393a42Smrg ;; 16102c393a42Smrg *-hp) 16112c393a42Smrg os=-hpux 16122c393a42Smrg ;; 16132c393a42Smrg *-hitachi) 16142c393a42Smrg os=-hiux 16152c393a42Smrg ;; 16162c393a42Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16172c393a42Smrg os=-sysv 16182c393a42Smrg ;; 16192c393a42Smrg *-cbm) 16202c393a42Smrg os=-amigaos 16212c393a42Smrg ;; 16222c393a42Smrg *-dg) 16232c393a42Smrg os=-dgux 16242c393a42Smrg ;; 16252c393a42Smrg *-dolphin) 16262c393a42Smrg os=-sysv3 16272c393a42Smrg ;; 16282c393a42Smrg m68k-ccur) 16292c393a42Smrg os=-rtu 16302c393a42Smrg ;; 16312c393a42Smrg m88k-omron*) 16322c393a42Smrg os=-luna 16332c393a42Smrg ;; 16342c393a42Smrg *-next ) 16352c393a42Smrg os=-nextstep 16362c393a42Smrg ;; 16372c393a42Smrg *-sequent) 16382c393a42Smrg os=-ptx 16392c393a42Smrg ;; 16402c393a42Smrg *-crds) 16412c393a42Smrg os=-unos 16422c393a42Smrg ;; 16432c393a42Smrg *-ns) 16442c393a42Smrg os=-genix 16452c393a42Smrg ;; 16462c393a42Smrg i370-*) 16472c393a42Smrg os=-mvs 16482c393a42Smrg ;; 16492c393a42Smrg *-next) 16502c393a42Smrg os=-nextstep3 16512c393a42Smrg ;; 16522c393a42Smrg *-gould) 16532c393a42Smrg os=-sysv 16542c393a42Smrg ;; 16552c393a42Smrg *-highlevel) 16562c393a42Smrg os=-bsd 16572c393a42Smrg ;; 16582c393a42Smrg *-encore) 16592c393a42Smrg os=-bsd 16602c393a42Smrg ;; 16612c393a42Smrg *-sgi) 16622c393a42Smrg os=-irix 16632c393a42Smrg ;; 16642c393a42Smrg *-siemens) 16652c393a42Smrg os=-sysv4 16662c393a42Smrg ;; 16672c393a42Smrg *-masscomp) 16682c393a42Smrg os=-rtu 16692c393a42Smrg ;; 16702c393a42Smrg f30[01]-fujitsu | f700-fujitsu) 16712c393a42Smrg os=-uxpv 16722c393a42Smrg ;; 16732c393a42Smrg *-rom68k) 16742c393a42Smrg os=-coff 16752c393a42Smrg ;; 16762c393a42Smrg *-*bug) 16772c393a42Smrg os=-coff 16782c393a42Smrg ;; 16792c393a42Smrg *-apple) 16802c393a42Smrg os=-macos 16812c393a42Smrg ;; 16822c393a42Smrg *-atari*) 16832c393a42Smrg os=-mint 16842c393a42Smrg ;; 16852c393a42Smrg *) 16862c393a42Smrg os=-none 16872c393a42Smrg ;; 16882c393a42Smrgesac 16892c393a42Smrgfi 16902c393a42Smrg 16912c393a42Smrg# Here we handle the case where we know the os, and the CPU type, but not the 16922c393a42Smrg# manufacturer. We pick the logical manufacturer. 16932c393a42Smrgvendor=unknown 16942c393a42Smrgcase $basic_machine in 16952c393a42Smrg *-unknown) 16962c393a42Smrg case $os in 16972c393a42Smrg -riscix*) 16982c393a42Smrg vendor=acorn 16992c393a42Smrg ;; 17002c393a42Smrg -sunos*) 17012c393a42Smrg vendor=sun 17022c393a42Smrg ;; 1703ca08ab68Smrg -cnk*|-aix*) 17042c393a42Smrg vendor=ibm 17052c393a42Smrg ;; 17062c393a42Smrg -beos*) 17072c393a42Smrg vendor=be 17082c393a42Smrg ;; 17092c393a42Smrg -hpux*) 17102c393a42Smrg vendor=hp 17112c393a42Smrg ;; 17122c393a42Smrg -mpeix*) 17132c393a42Smrg vendor=hp 17142c393a42Smrg ;; 17152c393a42Smrg -hiux*) 17162c393a42Smrg vendor=hitachi 17172c393a42Smrg ;; 17182c393a42Smrg -unos*) 17192c393a42Smrg vendor=crds 17202c393a42Smrg ;; 17212c393a42Smrg -dgux*) 17222c393a42Smrg vendor=dg 17232c393a42Smrg ;; 17242c393a42Smrg -luna*) 17252c393a42Smrg vendor=omron 17262c393a42Smrg ;; 17272c393a42Smrg -genix*) 17282c393a42Smrg vendor=ns 17292c393a42Smrg ;; 17302c393a42Smrg -mvs* | -opened*) 17312c393a42Smrg vendor=ibm 17322c393a42Smrg ;; 17332c393a42Smrg -os400*) 17342c393a42Smrg vendor=ibm 17352c393a42Smrg ;; 17362c393a42Smrg -ptx*) 17372c393a42Smrg vendor=sequent 17382c393a42Smrg ;; 17392c393a42Smrg -tpf*) 17402c393a42Smrg vendor=ibm 17412c393a42Smrg ;; 17422c393a42Smrg -vxsim* | -vxworks* | -windiss*) 17432c393a42Smrg vendor=wrs 17442c393a42Smrg ;; 17452c393a42Smrg -aux*) 17462c393a42Smrg vendor=apple 17472c393a42Smrg ;; 17482c393a42Smrg -hms*) 17492c393a42Smrg vendor=hitachi 17502c393a42Smrg ;; 17512c393a42Smrg -mpw* | -macos*) 17522c393a42Smrg vendor=apple 17532c393a42Smrg ;; 17542c393a42Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17552c393a42Smrg vendor=atari 17562c393a42Smrg ;; 17572c393a42Smrg -vos*) 17582c393a42Smrg vendor=stratus 17592c393a42Smrg ;; 17602c393a42Smrg esac 17612c393a42Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17622c393a42Smrg ;; 17632c393a42Smrgesac 17642c393a42Smrg 17652c393a42Smrgecho $basic_machine$os 17662c393a42Smrgexit 17672c393a42Smrg 17682c393a42Smrg# Local variables: 17692c393a42Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17702c393a42Smrg# time-stamp-start: "timestamp='" 17712c393a42Smrg# time-stamp-format: "%:y-%02m-%02d" 17722c393a42Smrg# time-stamp-end: "'" 17732c393a42Smrg# End: 1774