config.sub revision e9fcaa8a
11ab64890Smrg#! /bin/sh 21ab64890Smrg# Configuration validation subroutine script. 31ab64890Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 447f86ac1Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 561b2299dSmrg# Free Software Foundation, Inc. 61ab64890Smrg 7e9fcaa8aSmrgtimestamp='2010-09-11' 81ab64890Smrg 91ab64890Smrg# This file is (in principle) common to ALL GNU software. 101ab64890Smrg# The presence of a machine in this file suggests that SOME GNU software 111ab64890Smrg# can handle that machine. It does not imply ALL GNU software can. 121ab64890Smrg# 131ab64890Smrg# This file is free software; you can redistribute it and/or modify 141ab64890Smrg# it under the terms of the GNU General Public License as published by 151ab64890Smrg# the Free Software Foundation; either version 2 of the License, or 161ab64890Smrg# (at your option) any later version. 171ab64890Smrg# 181ab64890Smrg# This program is distributed in the hope that it will be useful, 191ab64890Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 201ab64890Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 211ab64890Smrg# GNU General Public License for more details. 221ab64890Smrg# 231ab64890Smrg# You should have received a copy of the GNU General Public License 241ab64890Smrg# along with this program; if not, write to the Free Software 251ab64890Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 261ab64890Smrg# 02110-1301, USA. 271ab64890Smrg# 281ab64890Smrg# As a special exception to the GNU General Public License, if you 291ab64890Smrg# distribute this file as part of a program that contains a 301ab64890Smrg# configuration script generated by Autoconf, you may include it under 311ab64890Smrg# the same distribution terms that you use for the rest of that program. 321ab64890Smrg 331ab64890Smrg 341ab64890Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 3588de56ccSmrg# diff and a properly formatted GNU ChangeLog entry. 361ab64890Smrg# 371ab64890Smrg# Configuration subroutine to validate and canonicalize a configuration type. 381ab64890Smrg# Supply the specified configuration type as an argument. 391ab64890Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 401ab64890Smrg# Otherwise, we print the canonical config type on stdout and succeed. 411ab64890Smrg 4288de56ccSmrg# You can get the latest version of this script from: 4388de56ccSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4488de56ccSmrg 451ab64890Smrg# This file is supposed to be the same for all GNU packages 461ab64890Smrg# and recognize all the CPU types, system types and aliases 471ab64890Smrg# that are meaningful with *any* GNU software. 481ab64890Smrg# Each package is responsible for reporting which valid configurations 491ab64890Smrg# it does not support. The user should be able to distinguish 501ab64890Smrg# a failure to support a valid configuration from a meaningless 511ab64890Smrg# configuration. 521ab64890Smrg 531ab64890Smrg# The goal of this file is to map all the various variations of a given 541ab64890Smrg# machine specification into a single specification in the form: 551ab64890Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 561ab64890Smrg# or in some cases, the newer four-part form: 571ab64890Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 581ab64890Smrg# It is wrong to echo any other type of specification. 591ab64890Smrg 601ab64890Smrgme=`echo "$0" | sed -e 's,.*/,,'` 611ab64890Smrg 621ab64890Smrgusage="\ 631ab64890SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 641ab64890Smrg $0 [OPTION] ALIAS 651ab64890Smrg 661ab64890SmrgCanonicalize a configuration name. 671ab64890Smrg 681ab64890SmrgOperation modes: 691ab64890Smrg -h, --help print this help, then exit 701ab64890Smrg -t, --time-stamp print date of last modification, then exit 711ab64890Smrg -v, --version print version number, then exit 721ab64890Smrg 731ab64890SmrgReport bugs and patches to <config-patches@gnu.org>." 741ab64890Smrg 751ab64890Smrgversion="\ 761ab64890SmrgGNU config.sub ($timestamp) 771ab64890Smrg 7847f86ac1SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 7947f86ac1Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 8047f86ac1SmrgSoftware Foundation, Inc. 811ab64890Smrg 821ab64890SmrgThis is free software; see the source for copying conditions. There is NO 831ab64890Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 841ab64890Smrg 851ab64890Smrghelp=" 861ab64890SmrgTry \`$me --help' for more information." 871ab64890Smrg 881ab64890Smrg# Parse command line 891ab64890Smrgwhile test $# -gt 0 ; do 901ab64890Smrg case $1 in 911ab64890Smrg --time-stamp | --time* | -t ) 921ab64890Smrg echo "$timestamp" ; exit ;; 931ab64890Smrg --version | -v ) 941ab64890Smrg echo "$version" ; exit ;; 951ab64890Smrg --help | --h* | -h ) 961ab64890Smrg echo "$usage"; exit ;; 971ab64890Smrg -- ) # Stop option processing 981ab64890Smrg shift; break ;; 991ab64890Smrg - ) # Use stdin as input. 1001ab64890Smrg break ;; 1011ab64890Smrg -* ) 1021ab64890Smrg echo "$me: invalid option $1$help" 1031ab64890Smrg exit 1 ;; 1041ab64890Smrg 1051ab64890Smrg *local*) 1061ab64890Smrg # First pass through any local machine types. 1071ab64890Smrg echo $1 1081ab64890Smrg exit ;; 1091ab64890Smrg 1101ab64890Smrg * ) 1111ab64890Smrg break ;; 1121ab64890Smrg esac 1131ab64890Smrgdone 1141ab64890Smrg 1151ab64890Smrgcase $# in 1161ab64890Smrg 0) echo "$me: missing argument$help" >&2 1171ab64890Smrg exit 1;; 1181ab64890Smrg 1) ;; 1191ab64890Smrg *) echo "$me: too many arguments$help" >&2 1201ab64890Smrg exit 1;; 1211ab64890Smrgesac 1221ab64890Smrg 1231ab64890Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1241ab64890Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1251ab64890Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1261ab64890Smrgcase $maybe_os in 127e9fcaa8aSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128e9fcaa8aSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129e9fcaa8aSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 13088de56ccSmrg kopensolaris*-gnu* | \ 1311ab64890Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1321ab64890Smrg os=-$maybe_os 1331ab64890Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1341ab64890Smrg ;; 1351ab64890Smrg *) 1361ab64890Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1371ab64890Smrg if [ $basic_machine != $1 ] 1381ab64890Smrg then os=`echo $1 | sed 's/.*-/-/'` 1391ab64890Smrg else os=; fi 1401ab64890Smrg ;; 1411ab64890Smrgesac 1421ab64890Smrg 1431ab64890Smrg### Let's recognize common machines as not being operating systems so 1441ab64890Smrg### that things like config.sub decstation-3100 work. We also 1451ab64890Smrg### recognize some manufacturers as not being operating systems, so we 1461ab64890Smrg### can provide default operating systems below. 1471ab64890Smrgcase $os in 1481ab64890Smrg -sun*os*) 1491ab64890Smrg # Prevent following clause from handling this invalid input. 1501ab64890Smrg ;; 1511ab64890Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1521ab64890Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1531ab64890Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1541ab64890Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1551ab64890Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1561ab64890Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15788de56ccSmrg -apple | -axis | -knuth | -cray | -microblaze) 1581ab64890Smrg os= 1591ab64890Smrg basic_machine=$1 1601ab64890Smrg ;; 16188de56ccSmrg -bluegene*) 16288de56ccSmrg os=-cnk 16388de56ccSmrg ;; 1641ab64890Smrg -sim | -cisco | -oki | -wec | -winbond) 1651ab64890Smrg os= 1661ab64890Smrg basic_machine=$1 1671ab64890Smrg ;; 1681ab64890Smrg -scout) 1691ab64890Smrg ;; 1701ab64890Smrg -wrs) 1711ab64890Smrg os=-vxworks 1721ab64890Smrg basic_machine=$1 1731ab64890Smrg ;; 1741ab64890Smrg -chorusos*) 1751ab64890Smrg os=-chorusos 1761ab64890Smrg basic_machine=$1 1771ab64890Smrg ;; 1781ab64890Smrg -chorusrdb) 1791ab64890Smrg os=-chorusrdb 1801ab64890Smrg basic_machine=$1 1811ab64890Smrg ;; 1821ab64890Smrg -hiux*) 1831ab64890Smrg os=-hiuxwe2 1841ab64890Smrg ;; 1851ab64890Smrg -sco6) 1861ab64890Smrg os=-sco5v6 1871ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1881ab64890Smrg ;; 1891ab64890Smrg -sco5) 1901ab64890Smrg os=-sco3.2v5 1911ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1921ab64890Smrg ;; 1931ab64890Smrg -sco4) 1941ab64890Smrg os=-sco3.2v4 1951ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1961ab64890Smrg ;; 1971ab64890Smrg -sco3.2.[4-9]*) 1981ab64890Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1991ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2001ab64890Smrg ;; 2011ab64890Smrg -sco3.2v[4-9]*) 2021ab64890Smrg # Don't forget version if it is 3.2v4 or newer. 2031ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2041ab64890Smrg ;; 2051ab64890Smrg -sco5v6*) 2061ab64890Smrg # Don't forget version if it is 3.2v4 or newer. 2071ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2081ab64890Smrg ;; 2091ab64890Smrg -sco*) 2101ab64890Smrg os=-sco3.2v2 2111ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2121ab64890Smrg ;; 2131ab64890Smrg -udk*) 2141ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2151ab64890Smrg ;; 2161ab64890Smrg -isc) 2171ab64890Smrg os=-isc2.2 2181ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2191ab64890Smrg ;; 2201ab64890Smrg -clix*) 2211ab64890Smrg basic_machine=clipper-intergraph 2221ab64890Smrg ;; 2231ab64890Smrg -isc*) 2241ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2251ab64890Smrg ;; 2261ab64890Smrg -lynx*) 2271ab64890Smrg os=-lynxos 2281ab64890Smrg ;; 2291ab64890Smrg -ptx*) 2301ab64890Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2311ab64890Smrg ;; 2321ab64890Smrg -windowsnt*) 2331ab64890Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2341ab64890Smrg ;; 2351ab64890Smrg -psos*) 2361ab64890Smrg os=-psos 2371ab64890Smrg ;; 2381ab64890Smrg -mint | -mint[0-9]*) 2391ab64890Smrg basic_machine=m68k-atari 2401ab64890Smrg os=-mint 2411ab64890Smrg ;; 2421ab64890Smrgesac 2431ab64890Smrg 2441ab64890Smrg# Decode aliases for certain CPU-COMPANY combinations. 2451ab64890Smrgcase $basic_machine in 2461ab64890Smrg # Recognize the basic CPU types without company name. 2471ab64890Smrg # Some are omitted here because they have special meanings below. 2481ab64890Smrg 1750a | 580 \ 2491ab64890Smrg | a29k \ 2501ab64890Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2511ab64890Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2521ab64890Smrg | am33_2.0 \ 2531ab64890Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2541ab64890Smrg | bfin \ 2551ab64890Smrg | c4x | clipper \ 2561ab64890Smrg | d10v | d30v | dlx | dsp16xx \ 2571ab64890Smrg | fido | fr30 | frv \ 2581ab64890Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2591ab64890Smrg | i370 | i860 | i960 | ia64 \ 2601ab64890Smrg | ip2k | iq2000 \ 26188de56ccSmrg | lm32 \ 2621ab64890Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 26388de56ccSmrg | maxq | mb | microblaze | mcore | mep | metag \ 2641ab64890Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2651ab64890Smrg | mips16 \ 2661ab64890Smrg | mips64 | mips64el \ 26788de56ccSmrg | mips64octeon | mips64octeonel \ 2681ab64890Smrg | mips64orion | mips64orionel \ 26988de56ccSmrg | mips64r5900 | mips64r5900el \ 27088de56ccSmrg | mips64vr | mips64vrel \ 2711ab64890Smrg | mips64vr4100 | mips64vr4100el \ 2721ab64890Smrg | mips64vr4300 | mips64vr4300el \ 2731ab64890Smrg | mips64vr5000 | mips64vr5000el \ 2741ab64890Smrg | mips64vr5900 | mips64vr5900el \ 2751ab64890Smrg | mipsisa32 | mipsisa32el \ 2761ab64890Smrg | mipsisa32r2 | mipsisa32r2el \ 2771ab64890Smrg | mipsisa64 | mipsisa64el \ 2781ab64890Smrg | mipsisa64r2 | mipsisa64r2el \ 2791ab64890Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2801ab64890Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2811ab64890Smrg | mipstx39 | mipstx39el \ 2821ab64890Smrg | mn10200 | mn10300 \ 28388de56ccSmrg | moxie \ 2841ab64890Smrg | mt \ 2851ab64890Smrg | msp430 \ 286e9fcaa8aSmrg | nds32 | nds32le | nds32be \ 2871ab64890Smrg | nios | nios2 \ 2881ab64890Smrg | ns16k | ns32k \ 2891ab64890Smrg | or32 \ 2901ab64890Smrg | pdp10 | pdp11 | pj | pjl \ 2911ab64890Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2921ab64890Smrg | pyramid \ 29388de56ccSmrg | rx \ 2941ab64890Smrg | score \ 29588de56ccSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2961ab64890Smrg | sh64 | sh64le \ 2971ab64890Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2981ab64890Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2991ab64890Smrg | spu | strongarm \ 300e9fcaa8aSmrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 30188de56ccSmrg | ubicom32 \ 3021ab64890Smrg | v850 | v850e \ 3031ab64890Smrg | we32k \ 3041ab64890Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 30588de56ccSmrg | z8k | z80) 3061ab64890Smrg basic_machine=$basic_machine-unknown 3071ab64890Smrg ;; 308e9fcaa8aSmrg c54x) 309e9fcaa8aSmrg basic_machine=tic54x-unknown 310e9fcaa8aSmrg ;; 311e9fcaa8aSmrg c55x) 312e9fcaa8aSmrg basic_machine=tic55x-unknown 313e9fcaa8aSmrg ;; 314e9fcaa8aSmrg c6x) 315e9fcaa8aSmrg basic_machine=tic6x-unknown 316e9fcaa8aSmrg ;; 31788de56ccSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 3181ab64890Smrg # Motorola 68HC11/12. 3191ab64890Smrg basic_machine=$basic_machine-unknown 3201ab64890Smrg os=-none 3211ab64890Smrg ;; 3221ab64890Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3231ab64890Smrg ;; 3241ab64890Smrg ms1) 3251ab64890Smrg basic_machine=mt-unknown 3261ab64890Smrg ;; 3271ab64890Smrg 3281ab64890Smrg # We use `pc' rather than `unknown' 3291ab64890Smrg # because (1) that's what they normally are, and 3301ab64890Smrg # (2) the word "unknown" tends to confuse beginning users. 3311ab64890Smrg i*86 | x86_64) 3321ab64890Smrg basic_machine=$basic_machine-pc 3331ab64890Smrg ;; 3341ab64890Smrg # Object if more than one company name word. 3351ab64890Smrg *-*-*) 3361ab64890Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3371ab64890Smrg exit 1 3381ab64890Smrg ;; 3391ab64890Smrg # Recognize the basic CPU types with company name. 3401ab64890Smrg 580-* \ 3411ab64890Smrg | a29k-* \ 3421ab64890Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3431ab64890Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3441ab64890Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3451ab64890Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3461ab64890Smrg | avr-* | avr32-* \ 3471ab64890Smrg | bfin-* | bs2000-* \ 348e9fcaa8aSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3491ab64890Smrg | clipper-* | craynv-* | cydra-* \ 3501ab64890Smrg | d10v-* | d30v-* | dlx-* \ 3511ab64890Smrg | elxsi-* \ 3521ab64890Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3531ab64890Smrg | h8300-* | h8500-* \ 3541ab64890Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3551ab64890Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3561ab64890Smrg | ip2k-* | iq2000-* \ 35788de56ccSmrg | lm32-* \ 3581ab64890Smrg | m32c-* | m32r-* | m32rle-* \ 3591ab64890Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 36088de56ccSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3611ab64890Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3621ab64890Smrg | mips16-* \ 3631ab64890Smrg | mips64-* | mips64el-* \ 36488de56ccSmrg | mips64octeon-* | mips64octeonel-* \ 3651ab64890Smrg | mips64orion-* | mips64orionel-* \ 36688de56ccSmrg | mips64r5900-* | mips64r5900el-* \ 36788de56ccSmrg | mips64vr-* | mips64vrel-* \ 3681ab64890Smrg | mips64vr4100-* | mips64vr4100el-* \ 3691ab64890Smrg | mips64vr4300-* | mips64vr4300el-* \ 3701ab64890Smrg | mips64vr5000-* | mips64vr5000el-* \ 3711ab64890Smrg | mips64vr5900-* | mips64vr5900el-* \ 3721ab64890Smrg | mipsisa32-* | mipsisa32el-* \ 3731ab64890Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 3741ab64890Smrg | mipsisa64-* | mipsisa64el-* \ 3751ab64890Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3761ab64890Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3771ab64890Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3781ab64890Smrg | mipstx39-* | mipstx39el-* \ 3791ab64890Smrg | mmix-* \ 3801ab64890Smrg | mt-* \ 3811ab64890Smrg | msp430-* \ 382e9fcaa8aSmrg | nds32-* | nds32le-* | nds32be-* \ 3831ab64890Smrg | nios-* | nios2-* \ 3841ab64890Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 3851ab64890Smrg | orion-* \ 3861ab64890Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3871ab64890Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3881ab64890Smrg | pyramid-* \ 38988de56ccSmrg | romp-* | rs6000-* | rx-* \ 39088de56ccSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3911ab64890Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3921ab64890Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3931ab64890Smrg | sparclite-* \ 3941ab64890Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3951ab64890Smrg | tahoe-* | thumb-* \ 39647f86ac1Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 39747f86ac1Smrg | tile-* | tilegx-* \ 3981ab64890Smrg | tron-* \ 39988de56ccSmrg | ubicom32-* \ 4001ab64890Smrg | v850-* | v850e-* | vax-* \ 4011ab64890Smrg | we32k-* \ 4021ab64890Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 40361b2299dSmrg | xstormy16-* | xtensa*-* \ 4041ab64890Smrg | ymp-* \ 40588de56ccSmrg | z8k-* | z80-*) 4061ab64890Smrg ;; 40761b2299dSmrg # Recognize the basic CPU types without company name, with glob match. 40861b2299dSmrg xtensa*) 40961b2299dSmrg basic_machine=$basic_machine-unknown 41061b2299dSmrg ;; 4111ab64890Smrg # Recognize the various machine names and aliases which stand 4121ab64890Smrg # for a CPU type and a company and sometimes even an OS. 4131ab64890Smrg 386bsd) 4141ab64890Smrg basic_machine=i386-unknown 4151ab64890Smrg os=-bsd 4161ab64890Smrg ;; 4171ab64890Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4181ab64890Smrg basic_machine=m68000-att 4191ab64890Smrg ;; 4201ab64890Smrg 3b*) 4211ab64890Smrg basic_machine=we32k-att 4221ab64890Smrg ;; 4231ab64890Smrg a29khif) 4241ab64890Smrg basic_machine=a29k-amd 4251ab64890Smrg os=-udi 4261ab64890Smrg ;; 4271ab64890Smrg abacus) 4281ab64890Smrg basic_machine=abacus-unknown 4291ab64890Smrg ;; 4301ab64890Smrg adobe68k) 4311ab64890Smrg basic_machine=m68010-adobe 4321ab64890Smrg os=-scout 4331ab64890Smrg ;; 4341ab64890Smrg alliant | fx80) 4351ab64890Smrg basic_machine=fx80-alliant 4361ab64890Smrg ;; 4371ab64890Smrg altos | altos3068) 4381ab64890Smrg basic_machine=m68k-altos 4391ab64890Smrg ;; 4401ab64890Smrg am29k) 4411ab64890Smrg basic_machine=a29k-none 4421ab64890Smrg os=-bsd 4431ab64890Smrg ;; 4441ab64890Smrg amd64) 4451ab64890Smrg basic_machine=x86_64-pc 4461ab64890Smrg ;; 4471ab64890Smrg amd64-*) 4481ab64890Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4491ab64890Smrg ;; 4501ab64890Smrg amdahl) 4511ab64890Smrg basic_machine=580-amdahl 4521ab64890Smrg os=-sysv 4531ab64890Smrg ;; 4541ab64890Smrg amiga | amiga-*) 4551ab64890Smrg basic_machine=m68k-unknown 4561ab64890Smrg ;; 4571ab64890Smrg amigaos | amigados) 4581ab64890Smrg basic_machine=m68k-unknown 4591ab64890Smrg os=-amigaos 4601ab64890Smrg ;; 4611ab64890Smrg amigaunix | amix) 4621ab64890Smrg basic_machine=m68k-unknown 4631ab64890Smrg os=-sysv4 4641ab64890Smrg ;; 4651ab64890Smrg apollo68) 4661ab64890Smrg basic_machine=m68k-apollo 4671ab64890Smrg os=-sysv 4681ab64890Smrg ;; 4691ab64890Smrg apollo68bsd) 4701ab64890Smrg basic_machine=m68k-apollo 4711ab64890Smrg os=-bsd 4721ab64890Smrg ;; 47388de56ccSmrg aros) 47488de56ccSmrg basic_machine=i386-pc 47588de56ccSmrg os=-aros 47688de56ccSmrg ;; 4771ab64890Smrg aux) 4781ab64890Smrg basic_machine=m68k-apple 4791ab64890Smrg os=-aux 4801ab64890Smrg ;; 4811ab64890Smrg balance) 4821ab64890Smrg basic_machine=ns32k-sequent 4831ab64890Smrg os=-dynix 4841ab64890Smrg ;; 48561b2299dSmrg blackfin) 48661b2299dSmrg basic_machine=bfin-unknown 48761b2299dSmrg os=-linux 48861b2299dSmrg ;; 48961b2299dSmrg blackfin-*) 49061b2299dSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 49161b2299dSmrg os=-linux 49261b2299dSmrg ;; 49388de56ccSmrg bluegene*) 49488de56ccSmrg basic_machine=powerpc-ibm 49588de56ccSmrg os=-cnk 49688de56ccSmrg ;; 497e9fcaa8aSmrg c54x-*) 498e9fcaa8aSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 499e9fcaa8aSmrg ;; 500e9fcaa8aSmrg c55x-*) 501e9fcaa8aSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 502e9fcaa8aSmrg ;; 503e9fcaa8aSmrg c6x-*) 504e9fcaa8aSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 505e9fcaa8aSmrg ;; 5061ab64890Smrg c90) 5071ab64890Smrg basic_machine=c90-cray 5081ab64890Smrg os=-unicos 5091ab64890Smrg ;; 51088de56ccSmrg cegcc) 51188de56ccSmrg basic_machine=arm-unknown 51288de56ccSmrg os=-cegcc 51388de56ccSmrg ;; 5141ab64890Smrg convex-c1) 5151ab64890Smrg basic_machine=c1-convex 5161ab64890Smrg os=-bsd 5171ab64890Smrg ;; 5181ab64890Smrg convex-c2) 5191ab64890Smrg basic_machine=c2-convex 5201ab64890Smrg os=-bsd 5211ab64890Smrg ;; 5221ab64890Smrg convex-c32) 5231ab64890Smrg basic_machine=c32-convex 5241ab64890Smrg os=-bsd 5251ab64890Smrg ;; 5261ab64890Smrg convex-c34) 5271ab64890Smrg basic_machine=c34-convex 5281ab64890Smrg os=-bsd 5291ab64890Smrg ;; 5301ab64890Smrg convex-c38) 5311ab64890Smrg basic_machine=c38-convex 5321ab64890Smrg os=-bsd 5331ab64890Smrg ;; 5341ab64890Smrg cray | j90) 5351ab64890Smrg basic_machine=j90-cray 5361ab64890Smrg os=-unicos 5371ab64890Smrg ;; 5381ab64890Smrg craynv) 5391ab64890Smrg basic_machine=craynv-cray 5401ab64890Smrg os=-unicosmp 5411ab64890Smrg ;; 54261b2299dSmrg cr16) 54361b2299dSmrg basic_machine=cr16-unknown 5441ab64890Smrg os=-elf 5451ab64890Smrg ;; 5461ab64890Smrg crds | unos) 5471ab64890Smrg basic_machine=m68k-crds 5481ab64890Smrg ;; 5491ab64890Smrg crisv32 | crisv32-* | etraxfs*) 5501ab64890Smrg basic_machine=crisv32-axis 5511ab64890Smrg ;; 5521ab64890Smrg cris | cris-* | etrax*) 5531ab64890Smrg basic_machine=cris-axis 5541ab64890Smrg ;; 5551ab64890Smrg crx) 5561ab64890Smrg basic_machine=crx-unknown 5571ab64890Smrg os=-elf 5581ab64890Smrg ;; 5591ab64890Smrg da30 | da30-*) 5601ab64890Smrg basic_machine=m68k-da30 5611ab64890Smrg ;; 5621ab64890Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5631ab64890Smrg basic_machine=mips-dec 5641ab64890Smrg ;; 5651ab64890Smrg decsystem10* | dec10*) 5661ab64890Smrg basic_machine=pdp10-dec 5671ab64890Smrg os=-tops10 5681ab64890Smrg ;; 5691ab64890Smrg decsystem20* | dec20*) 5701ab64890Smrg basic_machine=pdp10-dec 5711ab64890Smrg os=-tops20 5721ab64890Smrg ;; 5731ab64890Smrg delta | 3300 | motorola-3300 | motorola-delta \ 5741ab64890Smrg | 3300-motorola | delta-motorola) 5751ab64890Smrg basic_machine=m68k-motorola 5761ab64890Smrg ;; 5771ab64890Smrg delta88) 5781ab64890Smrg basic_machine=m88k-motorola 5791ab64890Smrg os=-sysv3 5801ab64890Smrg ;; 58188de56ccSmrg dicos) 58288de56ccSmrg basic_machine=i686-pc 58388de56ccSmrg os=-dicos 58488de56ccSmrg ;; 5851ab64890Smrg djgpp) 5861ab64890Smrg basic_machine=i586-pc 5871ab64890Smrg os=-msdosdjgpp 5881ab64890Smrg ;; 5891ab64890Smrg dpx20 | dpx20-*) 5901ab64890Smrg basic_machine=rs6000-bull 5911ab64890Smrg os=-bosx 5921ab64890Smrg ;; 5931ab64890Smrg dpx2* | dpx2*-bull) 5941ab64890Smrg basic_machine=m68k-bull 5951ab64890Smrg os=-sysv3 5961ab64890Smrg ;; 5971ab64890Smrg ebmon29k) 5981ab64890Smrg basic_machine=a29k-amd 5991ab64890Smrg os=-ebmon 6001ab64890Smrg ;; 6011ab64890Smrg elxsi) 6021ab64890Smrg basic_machine=elxsi-elxsi 6031ab64890Smrg os=-bsd 6041ab64890Smrg ;; 6051ab64890Smrg encore | umax | mmax) 6061ab64890Smrg basic_machine=ns32k-encore 6071ab64890Smrg ;; 6081ab64890Smrg es1800 | OSE68k | ose68k | ose | OSE) 6091ab64890Smrg basic_machine=m68k-ericsson 6101ab64890Smrg os=-ose 6111ab64890Smrg ;; 6121ab64890Smrg fx2800) 6131ab64890Smrg basic_machine=i860-alliant 6141ab64890Smrg ;; 6151ab64890Smrg genix) 6161ab64890Smrg basic_machine=ns32k-ns 6171ab64890Smrg ;; 6181ab64890Smrg gmicro) 6191ab64890Smrg basic_machine=tron-gmicro 6201ab64890Smrg os=-sysv 6211ab64890Smrg ;; 6221ab64890Smrg go32) 6231ab64890Smrg basic_machine=i386-pc 6241ab64890Smrg os=-go32 6251ab64890Smrg ;; 6261ab64890Smrg h3050r* | hiux*) 6271ab64890Smrg basic_machine=hppa1.1-hitachi 6281ab64890Smrg os=-hiuxwe2 6291ab64890Smrg ;; 6301ab64890Smrg h8300hms) 6311ab64890Smrg basic_machine=h8300-hitachi 6321ab64890Smrg os=-hms 6331ab64890Smrg ;; 6341ab64890Smrg h8300xray) 6351ab64890Smrg basic_machine=h8300-hitachi 6361ab64890Smrg os=-xray 6371ab64890Smrg ;; 6381ab64890Smrg h8500hms) 6391ab64890Smrg basic_machine=h8500-hitachi 6401ab64890Smrg os=-hms 6411ab64890Smrg ;; 6421ab64890Smrg harris) 6431ab64890Smrg basic_machine=m88k-harris 6441ab64890Smrg os=-sysv3 6451ab64890Smrg ;; 6461ab64890Smrg hp300-*) 6471ab64890Smrg basic_machine=m68k-hp 6481ab64890Smrg ;; 6491ab64890Smrg hp300bsd) 6501ab64890Smrg basic_machine=m68k-hp 6511ab64890Smrg os=-bsd 6521ab64890Smrg ;; 6531ab64890Smrg hp300hpux) 6541ab64890Smrg basic_machine=m68k-hp 6551ab64890Smrg os=-hpux 6561ab64890Smrg ;; 6571ab64890Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6581ab64890Smrg basic_machine=hppa1.0-hp 6591ab64890Smrg ;; 6601ab64890Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6611ab64890Smrg basic_machine=m68000-hp 6621ab64890Smrg ;; 6631ab64890Smrg hp9k3[2-9][0-9]) 6641ab64890Smrg basic_machine=m68k-hp 6651ab64890Smrg ;; 6661ab64890Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6671ab64890Smrg basic_machine=hppa1.0-hp 6681ab64890Smrg ;; 6691ab64890Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6701ab64890Smrg basic_machine=hppa1.1-hp 6711ab64890Smrg ;; 6721ab64890Smrg hp9k78[0-9] | hp78[0-9]) 6731ab64890Smrg # FIXME: really hppa2.0-hp 6741ab64890Smrg basic_machine=hppa1.1-hp 6751ab64890Smrg ;; 6761ab64890Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6771ab64890Smrg # FIXME: really hppa2.0-hp 6781ab64890Smrg basic_machine=hppa1.1-hp 6791ab64890Smrg ;; 6801ab64890Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6811ab64890Smrg basic_machine=hppa1.1-hp 6821ab64890Smrg ;; 6831ab64890Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6841ab64890Smrg basic_machine=hppa1.0-hp 6851ab64890Smrg ;; 6861ab64890Smrg hppa-next) 6871ab64890Smrg os=-nextstep3 6881ab64890Smrg ;; 6891ab64890Smrg hppaosf) 6901ab64890Smrg basic_machine=hppa1.1-hp 6911ab64890Smrg os=-osf 6921ab64890Smrg ;; 6931ab64890Smrg hppro) 6941ab64890Smrg basic_machine=hppa1.1-hp 6951ab64890Smrg os=-proelf 6961ab64890Smrg ;; 6971ab64890Smrg i370-ibm* | ibm*) 6981ab64890Smrg basic_machine=i370-ibm 6991ab64890Smrg ;; 7001ab64890Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 7011ab64890Smrg i*86v32) 7021ab64890Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7031ab64890Smrg os=-sysv32 7041ab64890Smrg ;; 7051ab64890Smrg i*86v4*) 7061ab64890Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7071ab64890Smrg os=-sysv4 7081ab64890Smrg ;; 7091ab64890Smrg i*86v) 7101ab64890Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7111ab64890Smrg os=-sysv 7121ab64890Smrg ;; 7131ab64890Smrg i*86sol2) 7141ab64890Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7151ab64890Smrg os=-solaris2 7161ab64890Smrg ;; 7171ab64890Smrg i386mach) 7181ab64890Smrg basic_machine=i386-mach 7191ab64890Smrg os=-mach 7201ab64890Smrg ;; 7211ab64890Smrg i386-vsta | vsta) 7221ab64890Smrg basic_machine=i386-unknown 7231ab64890Smrg os=-vsta 7241ab64890Smrg ;; 7251ab64890Smrg iris | iris4d) 7261ab64890Smrg basic_machine=mips-sgi 7271ab64890Smrg case $os in 7281ab64890Smrg -irix*) 7291ab64890Smrg ;; 7301ab64890Smrg *) 7311ab64890Smrg os=-irix4 7321ab64890Smrg ;; 7331ab64890Smrg esac 7341ab64890Smrg ;; 7351ab64890Smrg isi68 | isi) 7361ab64890Smrg basic_machine=m68k-isi 7371ab64890Smrg os=-sysv 7381ab64890Smrg ;; 73961b2299dSmrg m68knommu) 74061b2299dSmrg basic_machine=m68k-unknown 74161b2299dSmrg os=-linux 74261b2299dSmrg ;; 74361b2299dSmrg m68knommu-*) 74461b2299dSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 74561b2299dSmrg os=-linux 74661b2299dSmrg ;; 7471ab64890Smrg m88k-omron*) 7481ab64890Smrg basic_machine=m88k-omron 7491ab64890Smrg ;; 7501ab64890Smrg magnum | m3230) 7511ab64890Smrg basic_machine=mips-mips 7521ab64890Smrg os=-sysv 7531ab64890Smrg ;; 7541ab64890Smrg merlin) 7551ab64890Smrg basic_machine=ns32k-utek 7561ab64890Smrg os=-sysv 7571ab64890Smrg ;; 75888de56ccSmrg microblaze) 75988de56ccSmrg basic_machine=microblaze-xilinx 76088de56ccSmrg ;; 7611ab64890Smrg mingw32) 7621ab64890Smrg basic_machine=i386-pc 7631ab64890Smrg os=-mingw32 7641ab64890Smrg ;; 7651ab64890Smrg mingw32ce) 7661ab64890Smrg basic_machine=arm-unknown 7671ab64890Smrg os=-mingw32ce 7681ab64890Smrg ;; 7691ab64890Smrg miniframe) 7701ab64890Smrg basic_machine=m68000-convergent 7711ab64890Smrg ;; 7721ab64890Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7731ab64890Smrg basic_machine=m68k-atari 7741ab64890Smrg os=-mint 7751ab64890Smrg ;; 7761ab64890Smrg mips3*-*) 7771ab64890Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7781ab64890Smrg ;; 7791ab64890Smrg mips3*) 7801ab64890Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7811ab64890Smrg ;; 7821ab64890Smrg monitor) 7831ab64890Smrg basic_machine=m68k-rom68k 7841ab64890Smrg os=-coff 7851ab64890Smrg ;; 7861ab64890Smrg morphos) 7871ab64890Smrg basic_machine=powerpc-unknown 7881ab64890Smrg os=-morphos 7891ab64890Smrg ;; 7901ab64890Smrg msdos) 7911ab64890Smrg basic_machine=i386-pc 7921ab64890Smrg os=-msdos 7931ab64890Smrg ;; 7941ab64890Smrg ms1-*) 7951ab64890Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7961ab64890Smrg ;; 7971ab64890Smrg mvs) 7981ab64890Smrg basic_machine=i370-ibm 7991ab64890Smrg os=-mvs 8001ab64890Smrg ;; 8011ab64890Smrg ncr3000) 8021ab64890Smrg basic_machine=i486-ncr 8031ab64890Smrg os=-sysv4 8041ab64890Smrg ;; 8051ab64890Smrg netbsd386) 8061ab64890Smrg basic_machine=i386-unknown 8071ab64890Smrg os=-netbsd 8081ab64890Smrg ;; 8091ab64890Smrg netwinder) 8101ab64890Smrg basic_machine=armv4l-rebel 8111ab64890Smrg os=-linux 8121ab64890Smrg ;; 8131ab64890Smrg news | news700 | news800 | news900) 8141ab64890Smrg basic_machine=m68k-sony 8151ab64890Smrg os=-newsos 8161ab64890Smrg ;; 8171ab64890Smrg news1000) 8181ab64890Smrg basic_machine=m68030-sony 8191ab64890Smrg os=-newsos 8201ab64890Smrg ;; 8211ab64890Smrg news-3600 | risc-news) 8221ab64890Smrg basic_machine=mips-sony 8231ab64890Smrg os=-newsos 8241ab64890Smrg ;; 8251ab64890Smrg necv70) 8261ab64890Smrg basic_machine=v70-nec 8271ab64890Smrg os=-sysv 8281ab64890Smrg ;; 8291ab64890Smrg next | m*-next ) 8301ab64890Smrg basic_machine=m68k-next 8311ab64890Smrg case $os in 8321ab64890Smrg -nextstep* ) 8331ab64890Smrg ;; 8341ab64890Smrg -ns2*) 8351ab64890Smrg os=-nextstep2 8361ab64890Smrg ;; 8371ab64890Smrg *) 8381ab64890Smrg os=-nextstep3 8391ab64890Smrg ;; 8401ab64890Smrg esac 8411ab64890Smrg ;; 8421ab64890Smrg nh3000) 8431ab64890Smrg basic_machine=m68k-harris 8441ab64890Smrg os=-cxux 8451ab64890Smrg ;; 8461ab64890Smrg nh[45]000) 8471ab64890Smrg basic_machine=m88k-harris 8481ab64890Smrg os=-cxux 8491ab64890Smrg ;; 8501ab64890Smrg nindy960) 8511ab64890Smrg basic_machine=i960-intel 8521ab64890Smrg os=-nindy 8531ab64890Smrg ;; 8541ab64890Smrg mon960) 8551ab64890Smrg basic_machine=i960-intel 8561ab64890Smrg os=-mon960 8571ab64890Smrg ;; 8581ab64890Smrg nonstopux) 8591ab64890Smrg basic_machine=mips-compaq 8601ab64890Smrg os=-nonstopux 8611ab64890Smrg ;; 8621ab64890Smrg np1) 8631ab64890Smrg basic_machine=np1-gould 8641ab64890Smrg ;; 865e9fcaa8aSmrg neo-tandem) 866e9fcaa8aSmrg basic_machine=neo-tandem 867e9fcaa8aSmrg ;; 868e9fcaa8aSmrg nse-tandem) 869e9fcaa8aSmrg basic_machine=nse-tandem 870e9fcaa8aSmrg ;; 8711ab64890Smrg nsr-tandem) 8721ab64890Smrg basic_machine=nsr-tandem 8731ab64890Smrg ;; 8741ab64890Smrg op50n-* | op60c-*) 8751ab64890Smrg basic_machine=hppa1.1-oki 8761ab64890Smrg os=-proelf 8771ab64890Smrg ;; 8781ab64890Smrg openrisc | openrisc-*) 8791ab64890Smrg basic_machine=or32-unknown 8801ab64890Smrg ;; 8811ab64890Smrg os400) 8821ab64890Smrg basic_machine=powerpc-ibm 8831ab64890Smrg os=-os400 8841ab64890Smrg ;; 8851ab64890Smrg OSE68000 | ose68000) 8861ab64890Smrg basic_machine=m68000-ericsson 8871ab64890Smrg os=-ose 8881ab64890Smrg ;; 8891ab64890Smrg os68k) 8901ab64890Smrg basic_machine=m68k-none 8911ab64890Smrg os=-os68k 8921ab64890Smrg ;; 8931ab64890Smrg pa-hitachi) 8941ab64890Smrg basic_machine=hppa1.1-hitachi 8951ab64890Smrg os=-hiuxwe2 8961ab64890Smrg ;; 8971ab64890Smrg paragon) 8981ab64890Smrg basic_machine=i860-intel 8991ab64890Smrg os=-osf 9001ab64890Smrg ;; 90161b2299dSmrg parisc) 90261b2299dSmrg basic_machine=hppa-unknown 90361b2299dSmrg os=-linux 90461b2299dSmrg ;; 90561b2299dSmrg parisc-*) 90661b2299dSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 90761b2299dSmrg os=-linux 90861b2299dSmrg ;; 9091ab64890Smrg pbd) 9101ab64890Smrg basic_machine=sparc-tti 9111ab64890Smrg ;; 9121ab64890Smrg pbb) 9131ab64890Smrg basic_machine=m68k-tti 9141ab64890Smrg ;; 9151ab64890Smrg pc532 | pc532-*) 9161ab64890Smrg basic_machine=ns32k-pc532 9171ab64890Smrg ;; 9181ab64890Smrg pc98) 9191ab64890Smrg basic_machine=i386-pc 9201ab64890Smrg ;; 9211ab64890Smrg pc98-*) 9221ab64890Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9231ab64890Smrg ;; 9241ab64890Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9251ab64890Smrg basic_machine=i586-pc 9261ab64890Smrg ;; 9271ab64890Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9281ab64890Smrg basic_machine=i686-pc 9291ab64890Smrg ;; 9301ab64890Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9311ab64890Smrg basic_machine=i686-pc 9321ab64890Smrg ;; 9331ab64890Smrg pentium4) 9341ab64890Smrg basic_machine=i786-pc 9351ab64890Smrg ;; 9361ab64890Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9371ab64890Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9381ab64890Smrg ;; 9391ab64890Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9401ab64890Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9411ab64890Smrg ;; 9421ab64890Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9431ab64890Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9441ab64890Smrg ;; 9451ab64890Smrg pentium4-*) 9461ab64890Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9471ab64890Smrg ;; 9481ab64890Smrg pn) 9491ab64890Smrg basic_machine=pn-gould 9501ab64890Smrg ;; 9511ab64890Smrg power) basic_machine=power-ibm 9521ab64890Smrg ;; 9531ab64890Smrg ppc) basic_machine=powerpc-unknown 9541ab64890Smrg ;; 9551ab64890Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9561ab64890Smrg ;; 9571ab64890Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 9581ab64890Smrg basic_machine=powerpcle-unknown 9591ab64890Smrg ;; 9601ab64890Smrg ppcle-* | powerpclittle-*) 9611ab64890Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9621ab64890Smrg ;; 9631ab64890Smrg ppc64) basic_machine=powerpc64-unknown 9641ab64890Smrg ;; 9651ab64890Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9661ab64890Smrg ;; 9671ab64890Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9681ab64890Smrg basic_machine=powerpc64le-unknown 9691ab64890Smrg ;; 9701ab64890Smrg ppc64le-* | powerpc64little-*) 9711ab64890Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9721ab64890Smrg ;; 9731ab64890Smrg ps2) 9741ab64890Smrg basic_machine=i386-ibm 9751ab64890Smrg ;; 9761ab64890Smrg pw32) 9771ab64890Smrg basic_machine=i586-unknown 9781ab64890Smrg os=-pw32 9791ab64890Smrg ;; 9801ab64890Smrg rdos) 9811ab64890Smrg basic_machine=i386-pc 9821ab64890Smrg os=-rdos 9831ab64890Smrg ;; 9841ab64890Smrg rom68k) 9851ab64890Smrg basic_machine=m68k-rom68k 9861ab64890Smrg os=-coff 9871ab64890Smrg ;; 9881ab64890Smrg rm[46]00) 9891ab64890Smrg basic_machine=mips-siemens 9901ab64890Smrg ;; 9911ab64890Smrg rtpc | rtpc-*) 9921ab64890Smrg basic_machine=romp-ibm 9931ab64890Smrg ;; 9941ab64890Smrg s390 | s390-*) 9951ab64890Smrg basic_machine=s390-ibm 9961ab64890Smrg ;; 9971ab64890Smrg s390x | s390x-*) 9981ab64890Smrg basic_machine=s390x-ibm 9991ab64890Smrg ;; 10001ab64890Smrg sa29200) 10011ab64890Smrg basic_machine=a29k-amd 10021ab64890Smrg os=-udi 10031ab64890Smrg ;; 10041ab64890Smrg sb1) 10051ab64890Smrg basic_machine=mipsisa64sb1-unknown 10061ab64890Smrg ;; 10071ab64890Smrg sb1el) 10081ab64890Smrg basic_machine=mipsisa64sb1el-unknown 10091ab64890Smrg ;; 10101ab64890Smrg sde) 10111ab64890Smrg basic_machine=mipsisa32-sde 10121ab64890Smrg os=-elf 10131ab64890Smrg ;; 10141ab64890Smrg sei) 10151ab64890Smrg basic_machine=mips-sei 10161ab64890Smrg os=-seiux 10171ab64890Smrg ;; 10181ab64890Smrg sequent) 10191ab64890Smrg basic_machine=i386-sequent 10201ab64890Smrg ;; 10211ab64890Smrg sh) 10221ab64890Smrg basic_machine=sh-hitachi 10231ab64890Smrg os=-hms 10241ab64890Smrg ;; 10251ab64890Smrg sh5el) 10261ab64890Smrg basic_machine=sh5le-unknown 10271ab64890Smrg ;; 10281ab64890Smrg sh64) 10291ab64890Smrg basic_machine=sh64-unknown 10301ab64890Smrg ;; 10311ab64890Smrg sparclite-wrs | simso-wrs) 10321ab64890Smrg basic_machine=sparclite-wrs 10331ab64890Smrg os=-vxworks 10341ab64890Smrg ;; 10351ab64890Smrg sps7) 10361ab64890Smrg basic_machine=m68k-bull 10371ab64890Smrg os=-sysv2 10381ab64890Smrg ;; 10391ab64890Smrg spur) 10401ab64890Smrg basic_machine=spur-unknown 10411ab64890Smrg ;; 10421ab64890Smrg st2000) 10431ab64890Smrg basic_machine=m68k-tandem 10441ab64890Smrg ;; 10451ab64890Smrg stratus) 10461ab64890Smrg basic_machine=i860-stratus 10471ab64890Smrg os=-sysv4 10481ab64890Smrg ;; 10491ab64890Smrg sun2) 10501ab64890Smrg basic_machine=m68000-sun 10511ab64890Smrg ;; 10521ab64890Smrg sun2os3) 10531ab64890Smrg basic_machine=m68000-sun 10541ab64890Smrg os=-sunos3 10551ab64890Smrg ;; 10561ab64890Smrg sun2os4) 10571ab64890Smrg basic_machine=m68000-sun 10581ab64890Smrg os=-sunos4 10591ab64890Smrg ;; 10601ab64890Smrg sun3os3) 10611ab64890Smrg basic_machine=m68k-sun 10621ab64890Smrg os=-sunos3 10631ab64890Smrg ;; 10641ab64890Smrg sun3os4) 10651ab64890Smrg basic_machine=m68k-sun 10661ab64890Smrg os=-sunos4 10671ab64890Smrg ;; 10681ab64890Smrg sun4os3) 10691ab64890Smrg basic_machine=sparc-sun 10701ab64890Smrg os=-sunos3 10711ab64890Smrg ;; 10721ab64890Smrg sun4os4) 10731ab64890Smrg basic_machine=sparc-sun 10741ab64890Smrg os=-sunos4 10751ab64890Smrg ;; 10761ab64890Smrg sun4sol2) 10771ab64890Smrg basic_machine=sparc-sun 10781ab64890Smrg os=-solaris2 10791ab64890Smrg ;; 10801ab64890Smrg sun3 | sun3-*) 10811ab64890Smrg basic_machine=m68k-sun 10821ab64890Smrg ;; 10831ab64890Smrg sun4) 10841ab64890Smrg basic_machine=sparc-sun 10851ab64890Smrg ;; 10861ab64890Smrg sun386 | sun386i | roadrunner) 10871ab64890Smrg basic_machine=i386-sun 10881ab64890Smrg ;; 10891ab64890Smrg sv1) 10901ab64890Smrg basic_machine=sv1-cray 10911ab64890Smrg os=-unicos 10921ab64890Smrg ;; 10931ab64890Smrg symmetry) 10941ab64890Smrg basic_machine=i386-sequent 10951ab64890Smrg os=-dynix 10961ab64890Smrg ;; 10971ab64890Smrg t3e) 10981ab64890Smrg basic_machine=alphaev5-cray 10991ab64890Smrg os=-unicos 11001ab64890Smrg ;; 11011ab64890Smrg t90) 11021ab64890Smrg basic_machine=t90-cray 11031ab64890Smrg os=-unicos 11041ab64890Smrg ;; 110547f86ac1Smrg # This must be matched before tile*. 110647f86ac1Smrg tilegx*) 110747f86ac1Smrg basic_machine=tilegx-unknown 110847f86ac1Smrg os=-linux-gnu 110947f86ac1Smrg ;; 111061b2299dSmrg tile*) 111161b2299dSmrg basic_machine=tile-unknown 111261b2299dSmrg os=-linux-gnu 111361b2299dSmrg ;; 11141ab64890Smrg tx39) 11151ab64890Smrg basic_machine=mipstx39-unknown 11161ab64890Smrg ;; 11171ab64890Smrg tx39el) 11181ab64890Smrg basic_machine=mipstx39el-unknown 11191ab64890Smrg ;; 11201ab64890Smrg toad1) 11211ab64890Smrg basic_machine=pdp10-xkl 11221ab64890Smrg os=-tops20 11231ab64890Smrg ;; 11241ab64890Smrg tower | tower-32) 11251ab64890Smrg basic_machine=m68k-ncr 11261ab64890Smrg ;; 11271ab64890Smrg tpf) 11281ab64890Smrg basic_machine=s390x-ibm 11291ab64890Smrg os=-tpf 11301ab64890Smrg ;; 11311ab64890Smrg udi29k) 11321ab64890Smrg basic_machine=a29k-amd 11331ab64890Smrg os=-udi 11341ab64890Smrg ;; 11351ab64890Smrg ultra3) 11361ab64890Smrg basic_machine=a29k-nyu 11371ab64890Smrg os=-sym1 11381ab64890Smrg ;; 11391ab64890Smrg v810 | necv810) 11401ab64890Smrg basic_machine=v810-nec 11411ab64890Smrg os=-none 11421ab64890Smrg ;; 11431ab64890Smrg vaxv) 11441ab64890Smrg basic_machine=vax-dec 11451ab64890Smrg os=-sysv 11461ab64890Smrg ;; 11471ab64890Smrg vms) 11481ab64890Smrg basic_machine=vax-dec 11491ab64890Smrg os=-vms 11501ab64890Smrg ;; 11511ab64890Smrg vpp*|vx|vx-*) 11521ab64890Smrg basic_machine=f301-fujitsu 11531ab64890Smrg ;; 11541ab64890Smrg vxworks960) 11551ab64890Smrg basic_machine=i960-wrs 11561ab64890Smrg os=-vxworks 11571ab64890Smrg ;; 11581ab64890Smrg vxworks68) 11591ab64890Smrg basic_machine=m68k-wrs 11601ab64890Smrg os=-vxworks 11611ab64890Smrg ;; 11621ab64890Smrg vxworks29k) 11631ab64890Smrg basic_machine=a29k-wrs 11641ab64890Smrg os=-vxworks 11651ab64890Smrg ;; 11661ab64890Smrg w65*) 11671ab64890Smrg basic_machine=w65-wdc 11681ab64890Smrg os=-none 11691ab64890Smrg ;; 11701ab64890Smrg w89k-*) 11711ab64890Smrg basic_machine=hppa1.1-winbond 11721ab64890Smrg os=-proelf 11731ab64890Smrg ;; 11741ab64890Smrg xbox) 11751ab64890Smrg basic_machine=i686-pc 11761ab64890Smrg os=-mingw32 11771ab64890Smrg ;; 11781ab64890Smrg xps | xps100) 11791ab64890Smrg basic_machine=xps100-honeywell 11801ab64890Smrg ;; 11811ab64890Smrg ymp) 11821ab64890Smrg basic_machine=ymp-cray 11831ab64890Smrg os=-unicos 11841ab64890Smrg ;; 11851ab64890Smrg z8k-*-coff) 11861ab64890Smrg basic_machine=z8k-unknown 11871ab64890Smrg os=-sim 11881ab64890Smrg ;; 118988de56ccSmrg z80-*-coff) 119088de56ccSmrg basic_machine=z80-unknown 119188de56ccSmrg os=-sim 119288de56ccSmrg ;; 11931ab64890Smrg none) 11941ab64890Smrg basic_machine=none-none 11951ab64890Smrg os=-none 11961ab64890Smrg ;; 11971ab64890Smrg 11981ab64890Smrg# Here we handle the default manufacturer of certain CPU types. It is in 11991ab64890Smrg# some cases the only manufacturer, in others, it is the most popular. 12001ab64890Smrg w89k) 12011ab64890Smrg basic_machine=hppa1.1-winbond 12021ab64890Smrg ;; 12031ab64890Smrg op50n) 12041ab64890Smrg basic_machine=hppa1.1-oki 12051ab64890Smrg ;; 12061ab64890Smrg op60c) 12071ab64890Smrg basic_machine=hppa1.1-oki 12081ab64890Smrg ;; 12091ab64890Smrg romp) 12101ab64890Smrg basic_machine=romp-ibm 12111ab64890Smrg ;; 12121ab64890Smrg mmix) 12131ab64890Smrg basic_machine=mmix-knuth 12141ab64890Smrg ;; 12151ab64890Smrg rs6000) 12161ab64890Smrg basic_machine=rs6000-ibm 12171ab64890Smrg ;; 12181ab64890Smrg vax) 12191ab64890Smrg basic_machine=vax-dec 12201ab64890Smrg ;; 12211ab64890Smrg pdp10) 12221ab64890Smrg # there are many clones, so DEC is not a safe bet 12231ab64890Smrg basic_machine=pdp10-unknown 12241ab64890Smrg ;; 12251ab64890Smrg pdp11) 12261ab64890Smrg basic_machine=pdp11-dec 12271ab64890Smrg ;; 12281ab64890Smrg we32k) 12291ab64890Smrg basic_machine=we32k-att 12301ab64890Smrg ;; 123188de56ccSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12321ab64890Smrg basic_machine=sh-unknown 12331ab64890Smrg ;; 12341ab64890Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12351ab64890Smrg basic_machine=sparc-sun 12361ab64890Smrg ;; 12371ab64890Smrg cydra) 12381ab64890Smrg basic_machine=cydra-cydrome 12391ab64890Smrg ;; 12401ab64890Smrg orion) 12411ab64890Smrg basic_machine=orion-highlevel 12421ab64890Smrg ;; 12431ab64890Smrg orion105) 12441ab64890Smrg basic_machine=clipper-highlevel 12451ab64890Smrg ;; 12461ab64890Smrg mac | mpw | mac-mpw) 12471ab64890Smrg basic_machine=m68k-apple 12481ab64890Smrg ;; 12491ab64890Smrg pmac | pmac-mpw) 12501ab64890Smrg basic_machine=powerpc-apple 12511ab64890Smrg ;; 12521ab64890Smrg *-unknown) 12531ab64890Smrg # Make sure to match an already-canonicalized machine name. 12541ab64890Smrg ;; 12551ab64890Smrg *) 12561ab64890Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12571ab64890Smrg exit 1 12581ab64890Smrg ;; 12591ab64890Smrgesac 12601ab64890Smrg 12611ab64890Smrg# Here we canonicalize certain aliases for manufacturers. 12621ab64890Smrgcase $basic_machine in 12631ab64890Smrg *-digital*) 12641ab64890Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12651ab64890Smrg ;; 12661ab64890Smrg *-commodore*) 12671ab64890Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12681ab64890Smrg ;; 12691ab64890Smrg *) 12701ab64890Smrg ;; 12711ab64890Smrgesac 12721ab64890Smrg 12731ab64890Smrg# Decode manufacturer-specific aliases for certain operating systems. 12741ab64890Smrg 12751ab64890Smrgif [ x"$os" != x"" ] 12761ab64890Smrgthen 12771ab64890Smrgcase $os in 12781ab64890Smrg # First match some system type aliases 12791ab64890Smrg # that might get confused with valid system types. 12801ab64890Smrg # -solaris* is a basic system type, with this one exception. 128188de56ccSmrg -auroraux) 128288de56ccSmrg os=-auroraux 128388de56ccSmrg ;; 12841ab64890Smrg -solaris1 | -solaris1.*) 12851ab64890Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 12861ab64890Smrg ;; 12871ab64890Smrg -solaris) 12881ab64890Smrg os=-solaris2 12891ab64890Smrg ;; 12901ab64890Smrg -svr4*) 12911ab64890Smrg os=-sysv4 12921ab64890Smrg ;; 12931ab64890Smrg -unixware*) 12941ab64890Smrg os=-sysv4.2uw 12951ab64890Smrg ;; 12961ab64890Smrg -gnu/linux*) 12971ab64890Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 12981ab64890Smrg ;; 12991ab64890Smrg # First accept the basic system types. 13001ab64890Smrg # The portable systems comes first. 13011ab64890Smrg # Each alternative MUST END IN A *, to match a version number. 13021ab64890Smrg # -sysv* is not here because it comes later, after sysvr4. 13031ab64890Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 130488de56ccSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 130588de56ccSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 130688de56ccSmrg | -sym* | -kopensolaris* \ 13071ab64890Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 130888de56ccSmrg | -aos* | -aros* \ 13091ab64890Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13101ab64890Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13111ab64890Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13121ab64890Smrg | -openbsd* | -solidbsd* \ 13131ab64890Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13141ab64890Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13151ab64890Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13161ab64890Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 131788de56ccSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 13181ab64890Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1319e9fcaa8aSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 1320e9fcaa8aSmrg | -linux-newlib* | -linux-uclibc* \ 13211ab64890Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13221ab64890Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13231ab64890Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13241ab64890Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13251ab64890Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13261ab64890Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13271ab64890Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 132888de56ccSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13291ab64890Smrg # Remember, each alternative MUST END IN *, to match a version number. 13301ab64890Smrg ;; 13311ab64890Smrg -qnx*) 13321ab64890Smrg case $basic_machine in 13331ab64890Smrg x86-* | i*86-*) 13341ab64890Smrg ;; 13351ab64890Smrg *) 13361ab64890Smrg os=-nto$os 13371ab64890Smrg ;; 13381ab64890Smrg esac 13391ab64890Smrg ;; 13401ab64890Smrg -nto-qnx*) 13411ab64890Smrg ;; 13421ab64890Smrg -nto*) 13431ab64890Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13441ab64890Smrg ;; 13451ab64890Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13461ab64890Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13471ab64890Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13481ab64890Smrg ;; 13491ab64890Smrg -mac*) 13501ab64890Smrg os=`echo $os | sed -e 's|mac|macos|'` 13511ab64890Smrg ;; 13521ab64890Smrg -linux-dietlibc) 13531ab64890Smrg os=-linux-dietlibc 13541ab64890Smrg ;; 13551ab64890Smrg -linux*) 13561ab64890Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13571ab64890Smrg ;; 13581ab64890Smrg -sunos5*) 13591ab64890Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13601ab64890Smrg ;; 13611ab64890Smrg -sunos6*) 13621ab64890Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13631ab64890Smrg ;; 13641ab64890Smrg -opened*) 13651ab64890Smrg os=-openedition 13661ab64890Smrg ;; 13671ab64890Smrg -os400*) 13681ab64890Smrg os=-os400 13691ab64890Smrg ;; 13701ab64890Smrg -wince*) 13711ab64890Smrg os=-wince 13721ab64890Smrg ;; 13731ab64890Smrg -osfrose*) 13741ab64890Smrg os=-osfrose 13751ab64890Smrg ;; 13761ab64890Smrg -osf*) 13771ab64890Smrg os=-osf 13781ab64890Smrg ;; 13791ab64890Smrg -utek*) 13801ab64890Smrg os=-bsd 13811ab64890Smrg ;; 13821ab64890Smrg -dynix*) 13831ab64890Smrg os=-bsd 13841ab64890Smrg ;; 13851ab64890Smrg -acis*) 13861ab64890Smrg os=-aos 13871ab64890Smrg ;; 13881ab64890Smrg -atheos*) 13891ab64890Smrg os=-atheos 13901ab64890Smrg ;; 13911ab64890Smrg -syllable*) 13921ab64890Smrg os=-syllable 13931ab64890Smrg ;; 13941ab64890Smrg -386bsd) 13951ab64890Smrg os=-bsd 13961ab64890Smrg ;; 13971ab64890Smrg -ctix* | -uts*) 13981ab64890Smrg os=-sysv 13991ab64890Smrg ;; 14001ab64890Smrg -nova*) 14011ab64890Smrg os=-rtmk-nova 14021ab64890Smrg ;; 14031ab64890Smrg -ns2 ) 14041ab64890Smrg os=-nextstep2 14051ab64890Smrg ;; 14061ab64890Smrg -nsk*) 14071ab64890Smrg os=-nsk 14081ab64890Smrg ;; 14091ab64890Smrg # Preserve the version number of sinix5. 14101ab64890Smrg -sinix5.*) 14111ab64890Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14121ab64890Smrg ;; 14131ab64890Smrg -sinix*) 14141ab64890Smrg os=-sysv4 14151ab64890Smrg ;; 14161ab64890Smrg -tpf*) 14171ab64890Smrg os=-tpf 14181ab64890Smrg ;; 14191ab64890Smrg -triton*) 14201ab64890Smrg os=-sysv3 14211ab64890Smrg ;; 14221ab64890Smrg -oss*) 14231ab64890Smrg os=-sysv3 14241ab64890Smrg ;; 14251ab64890Smrg -svr4) 14261ab64890Smrg os=-sysv4 14271ab64890Smrg ;; 14281ab64890Smrg -svr3) 14291ab64890Smrg os=-sysv3 14301ab64890Smrg ;; 14311ab64890Smrg -sysvr4) 14321ab64890Smrg os=-sysv4 14331ab64890Smrg ;; 14341ab64890Smrg # This must come after -sysvr4. 14351ab64890Smrg -sysv*) 14361ab64890Smrg ;; 14371ab64890Smrg -ose*) 14381ab64890Smrg os=-ose 14391ab64890Smrg ;; 14401ab64890Smrg -es1800*) 14411ab64890Smrg os=-ose 14421ab64890Smrg ;; 14431ab64890Smrg -xenix) 14441ab64890Smrg os=-xenix 14451ab64890Smrg ;; 14461ab64890Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14471ab64890Smrg os=-mint 14481ab64890Smrg ;; 14491ab64890Smrg -aros*) 14501ab64890Smrg os=-aros 14511ab64890Smrg ;; 14521ab64890Smrg -kaos*) 14531ab64890Smrg os=-kaos 14541ab64890Smrg ;; 14551ab64890Smrg -zvmoe) 14561ab64890Smrg os=-zvmoe 14571ab64890Smrg ;; 145888de56ccSmrg -dicos*) 145988de56ccSmrg os=-dicos 146088de56ccSmrg ;; 146147f86ac1Smrg -nacl*) 146247f86ac1Smrg ;; 14631ab64890Smrg -none) 14641ab64890Smrg ;; 14651ab64890Smrg *) 14661ab64890Smrg # Get rid of the `-' at the beginning of $os. 14671ab64890Smrg os=`echo $os | sed 's/[^-]*-//'` 14681ab64890Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14691ab64890Smrg exit 1 14701ab64890Smrg ;; 14711ab64890Smrgesac 14721ab64890Smrgelse 14731ab64890Smrg 14741ab64890Smrg# Here we handle the default operating systems that come with various machines. 14751ab64890Smrg# The value should be what the vendor currently ships out the door with their 14761ab64890Smrg# machine or put another way, the most popular os provided with the machine. 14771ab64890Smrg 14781ab64890Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14791ab64890Smrg# "-sun"), then you have to tell the case statement up towards the top 14801ab64890Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14811ab64890Smrg# will signal an error saying that MANUFACTURER isn't an operating 14821ab64890Smrg# system, and we'll never get to this point. 14831ab64890Smrg 14841ab64890Smrgcase $basic_machine in 14851ab64890Smrg score-*) 14861ab64890Smrg os=-elf 14871ab64890Smrg ;; 14881ab64890Smrg spu-*) 14891ab64890Smrg os=-elf 14901ab64890Smrg ;; 14911ab64890Smrg *-acorn) 14921ab64890Smrg os=-riscix1.2 14931ab64890Smrg ;; 14941ab64890Smrg arm*-rebel) 14951ab64890Smrg os=-linux 14961ab64890Smrg ;; 14971ab64890Smrg arm*-semi) 14981ab64890Smrg os=-aout 14991ab64890Smrg ;; 15001ab64890Smrg c4x-* | tic4x-*) 15011ab64890Smrg os=-coff 15021ab64890Smrg ;; 1503e9fcaa8aSmrg tic54x-*) 1504e9fcaa8aSmrg os=-coff 1505e9fcaa8aSmrg ;; 1506e9fcaa8aSmrg tic55x-*) 1507e9fcaa8aSmrg os=-coff 1508e9fcaa8aSmrg ;; 1509e9fcaa8aSmrg tic6x-*) 1510e9fcaa8aSmrg os=-coff 1511e9fcaa8aSmrg ;; 15121ab64890Smrg # This must come before the *-dec entry. 15131ab64890Smrg pdp10-*) 15141ab64890Smrg os=-tops20 15151ab64890Smrg ;; 15161ab64890Smrg pdp11-*) 15171ab64890Smrg os=-none 15181ab64890Smrg ;; 15191ab64890Smrg *-dec | vax-*) 15201ab64890Smrg os=-ultrix4.2 15211ab64890Smrg ;; 15221ab64890Smrg m68*-apollo) 15231ab64890Smrg os=-domain 15241ab64890Smrg ;; 15251ab64890Smrg i386-sun) 15261ab64890Smrg os=-sunos4.0.2 15271ab64890Smrg ;; 15281ab64890Smrg m68000-sun) 15291ab64890Smrg os=-sunos3 15301ab64890Smrg # This also exists in the configure program, but was not the 15311ab64890Smrg # default. 15321ab64890Smrg # os=-sunos4 15331ab64890Smrg ;; 15341ab64890Smrg m68*-cisco) 15351ab64890Smrg os=-aout 15361ab64890Smrg ;; 15371ab64890Smrg mep-*) 15381ab64890Smrg os=-elf 15391ab64890Smrg ;; 15401ab64890Smrg mips*-cisco) 15411ab64890Smrg os=-elf 15421ab64890Smrg ;; 15431ab64890Smrg mips*-*) 15441ab64890Smrg os=-elf 15451ab64890Smrg ;; 15461ab64890Smrg or32-*) 15471ab64890Smrg os=-coff 15481ab64890Smrg ;; 15491ab64890Smrg *-tti) # must be before sparc entry or we get the wrong os. 15501ab64890Smrg os=-sysv3 15511ab64890Smrg ;; 15521ab64890Smrg sparc-* | *-sun) 15531ab64890Smrg os=-sunos4.1.1 15541ab64890Smrg ;; 15551ab64890Smrg *-be) 15561ab64890Smrg os=-beos 15571ab64890Smrg ;; 15581ab64890Smrg *-haiku) 15591ab64890Smrg os=-haiku 15601ab64890Smrg ;; 15611ab64890Smrg *-ibm) 15621ab64890Smrg os=-aix 15631ab64890Smrg ;; 15641ab64890Smrg *-knuth) 15651ab64890Smrg os=-mmixware 15661ab64890Smrg ;; 15671ab64890Smrg *-wec) 15681ab64890Smrg os=-proelf 15691ab64890Smrg ;; 15701ab64890Smrg *-winbond) 15711ab64890Smrg os=-proelf 15721ab64890Smrg ;; 15731ab64890Smrg *-oki) 15741ab64890Smrg os=-proelf 15751ab64890Smrg ;; 15761ab64890Smrg *-hp) 15771ab64890Smrg os=-hpux 15781ab64890Smrg ;; 15791ab64890Smrg *-hitachi) 15801ab64890Smrg os=-hiux 15811ab64890Smrg ;; 15821ab64890Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 15831ab64890Smrg os=-sysv 15841ab64890Smrg ;; 15851ab64890Smrg *-cbm) 15861ab64890Smrg os=-amigaos 15871ab64890Smrg ;; 15881ab64890Smrg *-dg) 15891ab64890Smrg os=-dgux 15901ab64890Smrg ;; 15911ab64890Smrg *-dolphin) 15921ab64890Smrg os=-sysv3 15931ab64890Smrg ;; 15941ab64890Smrg m68k-ccur) 15951ab64890Smrg os=-rtu 15961ab64890Smrg ;; 15971ab64890Smrg m88k-omron*) 15981ab64890Smrg os=-luna 15991ab64890Smrg ;; 16001ab64890Smrg *-next ) 16011ab64890Smrg os=-nextstep 16021ab64890Smrg ;; 16031ab64890Smrg *-sequent) 16041ab64890Smrg os=-ptx 16051ab64890Smrg ;; 16061ab64890Smrg *-crds) 16071ab64890Smrg os=-unos 16081ab64890Smrg ;; 16091ab64890Smrg *-ns) 16101ab64890Smrg os=-genix 16111ab64890Smrg ;; 16121ab64890Smrg i370-*) 16131ab64890Smrg os=-mvs 16141ab64890Smrg ;; 16151ab64890Smrg *-next) 16161ab64890Smrg os=-nextstep3 16171ab64890Smrg ;; 16181ab64890Smrg *-gould) 16191ab64890Smrg os=-sysv 16201ab64890Smrg ;; 16211ab64890Smrg *-highlevel) 16221ab64890Smrg os=-bsd 16231ab64890Smrg ;; 16241ab64890Smrg *-encore) 16251ab64890Smrg os=-bsd 16261ab64890Smrg ;; 16271ab64890Smrg *-sgi) 16281ab64890Smrg os=-irix 16291ab64890Smrg ;; 16301ab64890Smrg *-siemens) 16311ab64890Smrg os=-sysv4 16321ab64890Smrg ;; 16331ab64890Smrg *-masscomp) 16341ab64890Smrg os=-rtu 16351ab64890Smrg ;; 16361ab64890Smrg f30[01]-fujitsu | f700-fujitsu) 16371ab64890Smrg os=-uxpv 16381ab64890Smrg ;; 16391ab64890Smrg *-rom68k) 16401ab64890Smrg os=-coff 16411ab64890Smrg ;; 16421ab64890Smrg *-*bug) 16431ab64890Smrg os=-coff 16441ab64890Smrg ;; 16451ab64890Smrg *-apple) 16461ab64890Smrg os=-macos 16471ab64890Smrg ;; 16481ab64890Smrg *-atari*) 16491ab64890Smrg os=-mint 16501ab64890Smrg ;; 16511ab64890Smrg *) 16521ab64890Smrg os=-none 16531ab64890Smrg ;; 16541ab64890Smrgesac 16551ab64890Smrgfi 16561ab64890Smrg 16571ab64890Smrg# Here we handle the case where we know the os, and the CPU type, but not the 16581ab64890Smrg# manufacturer. We pick the logical manufacturer. 16591ab64890Smrgvendor=unknown 16601ab64890Smrgcase $basic_machine in 16611ab64890Smrg *-unknown) 16621ab64890Smrg case $os in 16631ab64890Smrg -riscix*) 16641ab64890Smrg vendor=acorn 16651ab64890Smrg ;; 16661ab64890Smrg -sunos*) 16671ab64890Smrg vendor=sun 16681ab64890Smrg ;; 166988de56ccSmrg -cnk*|-aix*) 16701ab64890Smrg vendor=ibm 16711ab64890Smrg ;; 16721ab64890Smrg -beos*) 16731ab64890Smrg vendor=be 16741ab64890Smrg ;; 16751ab64890Smrg -hpux*) 16761ab64890Smrg vendor=hp 16771ab64890Smrg ;; 16781ab64890Smrg -mpeix*) 16791ab64890Smrg vendor=hp 16801ab64890Smrg ;; 16811ab64890Smrg -hiux*) 16821ab64890Smrg vendor=hitachi 16831ab64890Smrg ;; 16841ab64890Smrg -unos*) 16851ab64890Smrg vendor=crds 16861ab64890Smrg ;; 16871ab64890Smrg -dgux*) 16881ab64890Smrg vendor=dg 16891ab64890Smrg ;; 16901ab64890Smrg -luna*) 16911ab64890Smrg vendor=omron 16921ab64890Smrg ;; 16931ab64890Smrg -genix*) 16941ab64890Smrg vendor=ns 16951ab64890Smrg ;; 16961ab64890Smrg -mvs* | -opened*) 16971ab64890Smrg vendor=ibm 16981ab64890Smrg ;; 16991ab64890Smrg -os400*) 17001ab64890Smrg vendor=ibm 17011ab64890Smrg ;; 17021ab64890Smrg -ptx*) 17031ab64890Smrg vendor=sequent 17041ab64890Smrg ;; 17051ab64890Smrg -tpf*) 17061ab64890Smrg vendor=ibm 17071ab64890Smrg ;; 17081ab64890Smrg -vxsim* | -vxworks* | -windiss*) 17091ab64890Smrg vendor=wrs 17101ab64890Smrg ;; 17111ab64890Smrg -aux*) 17121ab64890Smrg vendor=apple 17131ab64890Smrg ;; 17141ab64890Smrg -hms*) 17151ab64890Smrg vendor=hitachi 17161ab64890Smrg ;; 17171ab64890Smrg -mpw* | -macos*) 17181ab64890Smrg vendor=apple 17191ab64890Smrg ;; 17201ab64890Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17211ab64890Smrg vendor=atari 17221ab64890Smrg ;; 17231ab64890Smrg -vos*) 17241ab64890Smrg vendor=stratus 17251ab64890Smrg ;; 17261ab64890Smrg esac 17271ab64890Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17281ab64890Smrg ;; 17291ab64890Smrgesac 17301ab64890Smrg 17311ab64890Smrgecho $basic_machine$os 17321ab64890Smrgexit 17331ab64890Smrg 17341ab64890Smrg# Local variables: 17351ab64890Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17361ab64890Smrg# time-stamp-start: "timestamp='" 17371ab64890Smrg# time-stamp-format: "%:y-%02m-%02d" 17381ab64890Smrg# time-stamp-end: "'" 17391ab64890Smrg# End: 1740