config.sub revision 3a72f200
19027f4a0Smrg#! /bin/sh 29027f4a0Smrg# Configuration validation subroutine script. 39027f4a0Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 43a72f200Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 53a72f200Smrg# Free Software Foundation, Inc. 69027f4a0Smrg 73a72f200Smrgtimestamp='2010-09-11' 89027f4a0Smrg 99027f4a0Smrg# This file is (in principle) common to ALL GNU software. 109027f4a0Smrg# The presence of a machine in this file suggests that SOME GNU software 119027f4a0Smrg# can handle that machine. It does not imply ALL GNU software can. 129027f4a0Smrg# 139027f4a0Smrg# This file is free software; you can redistribute it and/or modify 149027f4a0Smrg# it under the terms of the GNU General Public License as published by 159027f4a0Smrg# the Free Software Foundation; either version 2 of the License, or 169027f4a0Smrg# (at your option) any later version. 179027f4a0Smrg# 189027f4a0Smrg# This program is distributed in the hope that it will be useful, 199027f4a0Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 209027f4a0Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 219027f4a0Smrg# GNU General Public License for more details. 229027f4a0Smrg# 239027f4a0Smrg# You should have received a copy of the GNU General Public License 249027f4a0Smrg# along with this program; if not, write to the Free Software 259027f4a0Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 269027f4a0Smrg# 02110-1301, USA. 279027f4a0Smrg# 289027f4a0Smrg# As a special exception to the GNU General Public License, if you 299027f4a0Smrg# distribute this file as part of a program that contains a 309027f4a0Smrg# configuration script generated by Autoconf, you may include it under 319027f4a0Smrg# the same distribution terms that you use for the rest of that program. 329027f4a0Smrg 339027f4a0Smrg 349027f4a0Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 353a72f200Smrg# diff and a properly formatted GNU ChangeLog entry. 369027f4a0Smrg# 379027f4a0Smrg# Configuration subroutine to validate and canonicalize a configuration type. 389027f4a0Smrg# Supply the specified configuration type as an argument. 399027f4a0Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 409027f4a0Smrg# Otherwise, we print the canonical config type on stdout and succeed. 419027f4a0Smrg 423a72f200Smrg# You can get the latest version of this script from: 433a72f200Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 443a72f200Smrg 459027f4a0Smrg# This file is supposed to be the same for all GNU packages 469027f4a0Smrg# and recognize all the CPU types, system types and aliases 479027f4a0Smrg# that are meaningful with *any* GNU software. 489027f4a0Smrg# Each package is responsible for reporting which valid configurations 499027f4a0Smrg# it does not support. The user should be able to distinguish 509027f4a0Smrg# a failure to support a valid configuration from a meaningless 519027f4a0Smrg# configuration. 529027f4a0Smrg 539027f4a0Smrg# The goal of this file is to map all the various variations of a given 549027f4a0Smrg# machine specification into a single specification in the form: 559027f4a0Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 569027f4a0Smrg# or in some cases, the newer four-part form: 579027f4a0Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 589027f4a0Smrg# It is wrong to echo any other type of specification. 599027f4a0Smrg 609027f4a0Smrgme=`echo "$0" | sed -e 's,.*/,,'` 619027f4a0Smrg 629027f4a0Smrgusage="\ 639027f4a0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 649027f4a0Smrg $0 [OPTION] ALIAS 659027f4a0Smrg 669027f4a0SmrgCanonicalize a configuration name. 679027f4a0Smrg 689027f4a0SmrgOperation modes: 699027f4a0Smrg -h, --help print this help, then exit 709027f4a0Smrg -t, --time-stamp print date of last modification, then exit 719027f4a0Smrg -v, --version print version number, then exit 729027f4a0Smrg 739027f4a0SmrgReport bugs and patches to <config-patches@gnu.org>." 749027f4a0Smrg 759027f4a0Smrgversion="\ 769027f4a0SmrgGNU config.sub ($timestamp) 779027f4a0Smrg 783a72f200SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 793a72f200Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 803a72f200SmrgSoftware Foundation, Inc. 819027f4a0Smrg 829027f4a0SmrgThis is free software; see the source for copying conditions. There is NO 839027f4a0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 849027f4a0Smrg 859027f4a0Smrghelp=" 869027f4a0SmrgTry \`$me --help' for more information." 879027f4a0Smrg 889027f4a0Smrg# Parse command line 899027f4a0Smrgwhile test $# -gt 0 ; do 909027f4a0Smrg case $1 in 919027f4a0Smrg --time-stamp | --time* | -t ) 929027f4a0Smrg echo "$timestamp" ; exit ;; 939027f4a0Smrg --version | -v ) 949027f4a0Smrg echo "$version" ; exit ;; 959027f4a0Smrg --help | --h* | -h ) 969027f4a0Smrg echo "$usage"; exit ;; 979027f4a0Smrg -- ) # Stop option processing 989027f4a0Smrg shift; break ;; 999027f4a0Smrg - ) # Use stdin as input. 1009027f4a0Smrg break ;; 1019027f4a0Smrg -* ) 1029027f4a0Smrg echo "$me: invalid option $1$help" 1039027f4a0Smrg exit 1 ;; 1049027f4a0Smrg 1059027f4a0Smrg *local*) 1069027f4a0Smrg # First pass through any local machine types. 1079027f4a0Smrg echo $1 1089027f4a0Smrg exit ;; 1099027f4a0Smrg 1109027f4a0Smrg * ) 1119027f4a0Smrg break ;; 1129027f4a0Smrg esac 1139027f4a0Smrgdone 1149027f4a0Smrg 1159027f4a0Smrgcase $# in 1169027f4a0Smrg 0) echo "$me: missing argument$help" >&2 1179027f4a0Smrg exit 1;; 1189027f4a0Smrg 1) ;; 1199027f4a0Smrg *) echo "$me: too many arguments$help" >&2 1209027f4a0Smrg exit 1;; 1219027f4a0Smrgesac 1229027f4a0Smrg 1239027f4a0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1249027f4a0Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1259027f4a0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1269027f4a0Smrgcase $maybe_os in 1273a72f200Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1283a72f200Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1293a72f200Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1303a72f200Smrg kopensolaris*-gnu* | \ 1319027f4a0Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1329027f4a0Smrg os=-$maybe_os 1339027f4a0Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1349027f4a0Smrg ;; 1359027f4a0Smrg *) 1369027f4a0Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1379027f4a0Smrg if [ $basic_machine != $1 ] 1389027f4a0Smrg then os=`echo $1 | sed 's/.*-/-/'` 1399027f4a0Smrg else os=; fi 1409027f4a0Smrg ;; 1419027f4a0Smrgesac 1429027f4a0Smrg 1439027f4a0Smrg### Let's recognize common machines as not being operating systems so 1449027f4a0Smrg### that things like config.sub decstation-3100 work. We also 1459027f4a0Smrg### recognize some manufacturers as not being operating systems, so we 1469027f4a0Smrg### can provide default operating systems below. 1479027f4a0Smrgcase $os in 1489027f4a0Smrg -sun*os*) 1499027f4a0Smrg # Prevent following clause from handling this invalid input. 1509027f4a0Smrg ;; 1519027f4a0Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1529027f4a0Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1539027f4a0Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1549027f4a0Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1559027f4a0Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1569027f4a0Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1573a72f200Smrg -apple | -axis | -knuth | -cray | -microblaze) 1589027f4a0Smrg os= 1599027f4a0Smrg basic_machine=$1 1609027f4a0Smrg ;; 1613a72f200Smrg -bluegene*) 1623a72f200Smrg os=-cnk 1633a72f200Smrg ;; 1649027f4a0Smrg -sim | -cisco | -oki | -wec | -winbond) 1659027f4a0Smrg os= 1669027f4a0Smrg basic_machine=$1 1679027f4a0Smrg ;; 1689027f4a0Smrg -scout) 1699027f4a0Smrg ;; 1709027f4a0Smrg -wrs) 1719027f4a0Smrg os=-vxworks 1729027f4a0Smrg basic_machine=$1 1739027f4a0Smrg ;; 1749027f4a0Smrg -chorusos*) 1759027f4a0Smrg os=-chorusos 1769027f4a0Smrg basic_machine=$1 1779027f4a0Smrg ;; 1789027f4a0Smrg -chorusrdb) 1799027f4a0Smrg os=-chorusrdb 1809027f4a0Smrg basic_machine=$1 1819027f4a0Smrg ;; 1829027f4a0Smrg -hiux*) 1839027f4a0Smrg os=-hiuxwe2 1849027f4a0Smrg ;; 1859027f4a0Smrg -sco6) 1869027f4a0Smrg os=-sco5v6 1879027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1889027f4a0Smrg ;; 1899027f4a0Smrg -sco5) 1909027f4a0Smrg os=-sco3.2v5 1919027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1929027f4a0Smrg ;; 1939027f4a0Smrg -sco4) 1949027f4a0Smrg os=-sco3.2v4 1959027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1969027f4a0Smrg ;; 1979027f4a0Smrg -sco3.2.[4-9]*) 1989027f4a0Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1999027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2009027f4a0Smrg ;; 2019027f4a0Smrg -sco3.2v[4-9]*) 2029027f4a0Smrg # Don't forget version if it is 3.2v4 or newer. 2039027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2049027f4a0Smrg ;; 2059027f4a0Smrg -sco5v6*) 2069027f4a0Smrg # Don't forget version if it is 3.2v4 or newer. 2079027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2089027f4a0Smrg ;; 2099027f4a0Smrg -sco*) 2109027f4a0Smrg os=-sco3.2v2 2119027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2129027f4a0Smrg ;; 2139027f4a0Smrg -udk*) 2149027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2159027f4a0Smrg ;; 2169027f4a0Smrg -isc) 2179027f4a0Smrg os=-isc2.2 2189027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2199027f4a0Smrg ;; 2209027f4a0Smrg -clix*) 2219027f4a0Smrg basic_machine=clipper-intergraph 2229027f4a0Smrg ;; 2239027f4a0Smrg -isc*) 2249027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2259027f4a0Smrg ;; 2269027f4a0Smrg -lynx*) 2279027f4a0Smrg os=-lynxos 2289027f4a0Smrg ;; 2299027f4a0Smrg -ptx*) 2309027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2319027f4a0Smrg ;; 2329027f4a0Smrg -windowsnt*) 2339027f4a0Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2349027f4a0Smrg ;; 2359027f4a0Smrg -psos*) 2369027f4a0Smrg os=-psos 2379027f4a0Smrg ;; 2389027f4a0Smrg -mint | -mint[0-9]*) 2399027f4a0Smrg basic_machine=m68k-atari 2409027f4a0Smrg os=-mint 2419027f4a0Smrg ;; 2429027f4a0Smrgesac 2439027f4a0Smrg 2449027f4a0Smrg# Decode aliases for certain CPU-COMPANY combinations. 2459027f4a0Smrgcase $basic_machine in 2469027f4a0Smrg # Recognize the basic CPU types without company name. 2479027f4a0Smrg # Some are omitted here because they have special meanings below. 2489027f4a0Smrg 1750a | 580 \ 2499027f4a0Smrg | a29k \ 2509027f4a0Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2519027f4a0Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2529027f4a0Smrg | am33_2.0 \ 2539027f4a0Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2549027f4a0Smrg | bfin \ 2559027f4a0Smrg | c4x | clipper \ 2569027f4a0Smrg | d10v | d30v | dlx | dsp16xx \ 2579027f4a0Smrg | fido | fr30 | frv \ 2589027f4a0Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2599027f4a0Smrg | i370 | i860 | i960 | ia64 \ 2609027f4a0Smrg | ip2k | iq2000 \ 2613a72f200Smrg | lm32 \ 2629027f4a0Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2633a72f200Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2649027f4a0Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2659027f4a0Smrg | mips16 \ 2669027f4a0Smrg | mips64 | mips64el \ 2673a72f200Smrg | mips64octeon | mips64octeonel \ 2689027f4a0Smrg | mips64orion | mips64orionel \ 2693a72f200Smrg | mips64r5900 | mips64r5900el \ 2703a72f200Smrg | mips64vr | mips64vrel \ 2719027f4a0Smrg | mips64vr4100 | mips64vr4100el \ 2729027f4a0Smrg | mips64vr4300 | mips64vr4300el \ 2739027f4a0Smrg | mips64vr5000 | mips64vr5000el \ 2749027f4a0Smrg | mips64vr5900 | mips64vr5900el \ 2759027f4a0Smrg | mipsisa32 | mipsisa32el \ 2769027f4a0Smrg | mipsisa32r2 | mipsisa32r2el \ 2779027f4a0Smrg | mipsisa64 | mipsisa64el \ 2789027f4a0Smrg | mipsisa64r2 | mipsisa64r2el \ 2799027f4a0Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2809027f4a0Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2819027f4a0Smrg | mipstx39 | mipstx39el \ 2829027f4a0Smrg | mn10200 | mn10300 \ 2833a72f200Smrg | moxie \ 2849027f4a0Smrg | mt \ 2859027f4a0Smrg | msp430 \ 2863a72f200Smrg | nds32 | nds32le | nds32be \ 2879027f4a0Smrg | nios | nios2 \ 2889027f4a0Smrg | ns16k | ns32k \ 2899027f4a0Smrg | or32 \ 2909027f4a0Smrg | pdp10 | pdp11 | pj | pjl \ 2919027f4a0Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2929027f4a0Smrg | pyramid \ 2933a72f200Smrg | rx \ 2949027f4a0Smrg | score \ 2953a72f200Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2969027f4a0Smrg | sh64 | sh64le \ 2979027f4a0Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2989027f4a0Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2999027f4a0Smrg | spu | strongarm \ 3003a72f200Smrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3013a72f200Smrg | ubicom32 \ 3029027f4a0Smrg | v850 | v850e \ 3039027f4a0Smrg | we32k \ 3049027f4a0Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 3053a72f200Smrg | z8k | z80) 3069027f4a0Smrg basic_machine=$basic_machine-unknown 3079027f4a0Smrg ;; 3083a72f200Smrg c54x) 3093a72f200Smrg basic_machine=tic54x-unknown 3103a72f200Smrg ;; 3113a72f200Smrg c55x) 3123a72f200Smrg basic_machine=tic55x-unknown 3133a72f200Smrg ;; 3143a72f200Smrg c6x) 3153a72f200Smrg basic_machine=tic6x-unknown 3163a72f200Smrg ;; 3173a72f200Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 3189027f4a0Smrg # Motorola 68HC11/12. 3199027f4a0Smrg basic_machine=$basic_machine-unknown 3209027f4a0Smrg os=-none 3219027f4a0Smrg ;; 3229027f4a0Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3239027f4a0Smrg ;; 3249027f4a0Smrg ms1) 3259027f4a0Smrg basic_machine=mt-unknown 3269027f4a0Smrg ;; 3279027f4a0Smrg 3289027f4a0Smrg # We use `pc' rather than `unknown' 3299027f4a0Smrg # because (1) that's what they normally are, and 3309027f4a0Smrg # (2) the word "unknown" tends to confuse beginning users. 3319027f4a0Smrg i*86 | x86_64) 3329027f4a0Smrg basic_machine=$basic_machine-pc 3339027f4a0Smrg ;; 3349027f4a0Smrg # Object if more than one company name word. 3359027f4a0Smrg *-*-*) 3369027f4a0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3379027f4a0Smrg exit 1 3389027f4a0Smrg ;; 3399027f4a0Smrg # Recognize the basic CPU types with company name. 3409027f4a0Smrg 580-* \ 3419027f4a0Smrg | a29k-* \ 3429027f4a0Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3439027f4a0Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3449027f4a0Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3459027f4a0Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3469027f4a0Smrg | avr-* | avr32-* \ 3479027f4a0Smrg | bfin-* | bs2000-* \ 3483a72f200Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3499027f4a0Smrg | clipper-* | craynv-* | cydra-* \ 3509027f4a0Smrg | d10v-* | d30v-* | dlx-* \ 3519027f4a0Smrg | elxsi-* \ 3529027f4a0Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3539027f4a0Smrg | h8300-* | h8500-* \ 3549027f4a0Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3559027f4a0Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3569027f4a0Smrg | ip2k-* | iq2000-* \ 3573a72f200Smrg | lm32-* \ 3589027f4a0Smrg | m32c-* | m32r-* | m32rle-* \ 3599027f4a0Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3603a72f200Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3619027f4a0Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3629027f4a0Smrg | mips16-* \ 3639027f4a0Smrg | mips64-* | mips64el-* \ 3643a72f200Smrg | mips64octeon-* | mips64octeonel-* \ 3659027f4a0Smrg | mips64orion-* | mips64orionel-* \ 3663a72f200Smrg | mips64r5900-* | mips64r5900el-* \ 3673a72f200Smrg | mips64vr-* | mips64vrel-* \ 3689027f4a0Smrg | mips64vr4100-* | mips64vr4100el-* \ 3699027f4a0Smrg | mips64vr4300-* | mips64vr4300el-* \ 3709027f4a0Smrg | mips64vr5000-* | mips64vr5000el-* \ 3719027f4a0Smrg | mips64vr5900-* | mips64vr5900el-* \ 3729027f4a0Smrg | mipsisa32-* | mipsisa32el-* \ 3739027f4a0Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 3749027f4a0Smrg | mipsisa64-* | mipsisa64el-* \ 3759027f4a0Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3769027f4a0Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3779027f4a0Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3789027f4a0Smrg | mipstx39-* | mipstx39el-* \ 3799027f4a0Smrg | mmix-* \ 3809027f4a0Smrg | mt-* \ 3819027f4a0Smrg | msp430-* \ 3823a72f200Smrg | nds32-* | nds32le-* | nds32be-* \ 3839027f4a0Smrg | nios-* | nios2-* \ 3849027f4a0Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 3859027f4a0Smrg | orion-* \ 3869027f4a0Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3879027f4a0Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3889027f4a0Smrg | pyramid-* \ 3893a72f200Smrg | romp-* | rs6000-* | rx-* \ 3903a72f200Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3919027f4a0Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3929027f4a0Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3939027f4a0Smrg | sparclite-* \ 3949027f4a0Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3959027f4a0Smrg | tahoe-* | thumb-* \ 3969027f4a0Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 3973a72f200Smrg | tile-* | tilegx-* \ 3989027f4a0Smrg | tron-* \ 3993a72f200Smrg | ubicom32-* \ 4009027f4a0Smrg | v850-* | v850e-* | vax-* \ 4019027f4a0Smrg | we32k-* \ 4029027f4a0Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 4033a72f200Smrg | xstormy16-* | xtensa*-* \ 4049027f4a0Smrg | ymp-* \ 4053a72f200Smrg | z8k-* | z80-*) 4063a72f200Smrg ;; 4073a72f200Smrg # Recognize the basic CPU types without company name, with glob match. 4083a72f200Smrg xtensa*) 4093a72f200Smrg basic_machine=$basic_machine-unknown 4109027f4a0Smrg ;; 4119027f4a0Smrg # Recognize the various machine names and aliases which stand 4129027f4a0Smrg # for a CPU type and a company and sometimes even an OS. 4139027f4a0Smrg 386bsd) 4149027f4a0Smrg basic_machine=i386-unknown 4159027f4a0Smrg os=-bsd 4169027f4a0Smrg ;; 4179027f4a0Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4189027f4a0Smrg basic_machine=m68000-att 4199027f4a0Smrg ;; 4209027f4a0Smrg 3b*) 4219027f4a0Smrg basic_machine=we32k-att 4229027f4a0Smrg ;; 4239027f4a0Smrg a29khif) 4249027f4a0Smrg basic_machine=a29k-amd 4259027f4a0Smrg os=-udi 4269027f4a0Smrg ;; 4279027f4a0Smrg abacus) 4289027f4a0Smrg basic_machine=abacus-unknown 4299027f4a0Smrg ;; 4309027f4a0Smrg adobe68k) 4319027f4a0Smrg basic_machine=m68010-adobe 4329027f4a0Smrg os=-scout 4339027f4a0Smrg ;; 4349027f4a0Smrg alliant | fx80) 4359027f4a0Smrg basic_machine=fx80-alliant 4369027f4a0Smrg ;; 4379027f4a0Smrg altos | altos3068) 4389027f4a0Smrg basic_machine=m68k-altos 4399027f4a0Smrg ;; 4409027f4a0Smrg am29k) 4419027f4a0Smrg basic_machine=a29k-none 4429027f4a0Smrg os=-bsd 4439027f4a0Smrg ;; 4449027f4a0Smrg amd64) 4459027f4a0Smrg basic_machine=x86_64-pc 4469027f4a0Smrg ;; 4479027f4a0Smrg amd64-*) 4489027f4a0Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4499027f4a0Smrg ;; 4509027f4a0Smrg amdahl) 4519027f4a0Smrg basic_machine=580-amdahl 4529027f4a0Smrg os=-sysv 4539027f4a0Smrg ;; 4549027f4a0Smrg amiga | amiga-*) 4559027f4a0Smrg basic_machine=m68k-unknown 4569027f4a0Smrg ;; 4579027f4a0Smrg amigaos | amigados) 4589027f4a0Smrg basic_machine=m68k-unknown 4599027f4a0Smrg os=-amigaos 4609027f4a0Smrg ;; 4619027f4a0Smrg amigaunix | amix) 4629027f4a0Smrg basic_machine=m68k-unknown 4639027f4a0Smrg os=-sysv4 4649027f4a0Smrg ;; 4659027f4a0Smrg apollo68) 4669027f4a0Smrg basic_machine=m68k-apollo 4679027f4a0Smrg os=-sysv 4689027f4a0Smrg ;; 4699027f4a0Smrg apollo68bsd) 4709027f4a0Smrg basic_machine=m68k-apollo 4719027f4a0Smrg os=-bsd 4729027f4a0Smrg ;; 4733a72f200Smrg aros) 4743a72f200Smrg basic_machine=i386-pc 4753a72f200Smrg os=-aros 4763a72f200Smrg ;; 4779027f4a0Smrg aux) 4789027f4a0Smrg basic_machine=m68k-apple 4799027f4a0Smrg os=-aux 4809027f4a0Smrg ;; 4819027f4a0Smrg balance) 4829027f4a0Smrg basic_machine=ns32k-sequent 4839027f4a0Smrg os=-dynix 4849027f4a0Smrg ;; 4853a72f200Smrg blackfin) 4863a72f200Smrg basic_machine=bfin-unknown 4873a72f200Smrg os=-linux 4883a72f200Smrg ;; 4893a72f200Smrg blackfin-*) 4903a72f200Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4913a72f200Smrg os=-linux 4923a72f200Smrg ;; 4933a72f200Smrg bluegene*) 4943a72f200Smrg basic_machine=powerpc-ibm 4953a72f200Smrg os=-cnk 4963a72f200Smrg ;; 4973a72f200Smrg c54x-*) 4983a72f200Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 4993a72f200Smrg ;; 5003a72f200Smrg c55x-*) 5013a72f200Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5023a72f200Smrg ;; 5033a72f200Smrg c6x-*) 5043a72f200Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5053a72f200Smrg ;; 5069027f4a0Smrg c90) 5079027f4a0Smrg basic_machine=c90-cray 5089027f4a0Smrg os=-unicos 5099027f4a0Smrg ;; 5103a72f200Smrg cegcc) 5113a72f200Smrg basic_machine=arm-unknown 5123a72f200Smrg os=-cegcc 5133a72f200Smrg ;; 5149027f4a0Smrg convex-c1) 5159027f4a0Smrg basic_machine=c1-convex 5169027f4a0Smrg os=-bsd 5179027f4a0Smrg ;; 5189027f4a0Smrg convex-c2) 5199027f4a0Smrg basic_machine=c2-convex 5209027f4a0Smrg os=-bsd 5219027f4a0Smrg ;; 5229027f4a0Smrg convex-c32) 5239027f4a0Smrg basic_machine=c32-convex 5249027f4a0Smrg os=-bsd 5259027f4a0Smrg ;; 5269027f4a0Smrg convex-c34) 5279027f4a0Smrg basic_machine=c34-convex 5289027f4a0Smrg os=-bsd 5299027f4a0Smrg ;; 5309027f4a0Smrg convex-c38) 5319027f4a0Smrg basic_machine=c38-convex 5329027f4a0Smrg os=-bsd 5339027f4a0Smrg ;; 5349027f4a0Smrg cray | j90) 5359027f4a0Smrg basic_machine=j90-cray 5369027f4a0Smrg os=-unicos 5379027f4a0Smrg ;; 5389027f4a0Smrg craynv) 5399027f4a0Smrg basic_machine=craynv-cray 5409027f4a0Smrg os=-unicosmp 5419027f4a0Smrg ;; 5423a72f200Smrg cr16) 5433a72f200Smrg basic_machine=cr16-unknown 5449027f4a0Smrg os=-elf 5459027f4a0Smrg ;; 5469027f4a0Smrg crds | unos) 5479027f4a0Smrg basic_machine=m68k-crds 5489027f4a0Smrg ;; 5499027f4a0Smrg crisv32 | crisv32-* | etraxfs*) 5509027f4a0Smrg basic_machine=crisv32-axis 5519027f4a0Smrg ;; 5529027f4a0Smrg cris | cris-* | etrax*) 5539027f4a0Smrg basic_machine=cris-axis 5549027f4a0Smrg ;; 5559027f4a0Smrg crx) 5569027f4a0Smrg basic_machine=crx-unknown 5579027f4a0Smrg os=-elf 5589027f4a0Smrg ;; 5599027f4a0Smrg da30 | da30-*) 5609027f4a0Smrg basic_machine=m68k-da30 5619027f4a0Smrg ;; 5629027f4a0Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5639027f4a0Smrg basic_machine=mips-dec 5649027f4a0Smrg ;; 5659027f4a0Smrg decsystem10* | dec10*) 5669027f4a0Smrg basic_machine=pdp10-dec 5679027f4a0Smrg os=-tops10 5689027f4a0Smrg ;; 5699027f4a0Smrg decsystem20* | dec20*) 5709027f4a0Smrg basic_machine=pdp10-dec 5719027f4a0Smrg os=-tops20 5729027f4a0Smrg ;; 5739027f4a0Smrg delta | 3300 | motorola-3300 | motorola-delta \ 5749027f4a0Smrg | 3300-motorola | delta-motorola) 5759027f4a0Smrg basic_machine=m68k-motorola 5769027f4a0Smrg ;; 5779027f4a0Smrg delta88) 5789027f4a0Smrg basic_machine=m88k-motorola 5799027f4a0Smrg os=-sysv3 5809027f4a0Smrg ;; 5813a72f200Smrg dicos) 5823a72f200Smrg basic_machine=i686-pc 5833a72f200Smrg os=-dicos 5843a72f200Smrg ;; 5859027f4a0Smrg djgpp) 5869027f4a0Smrg basic_machine=i586-pc 5879027f4a0Smrg os=-msdosdjgpp 5889027f4a0Smrg ;; 5899027f4a0Smrg dpx20 | dpx20-*) 5909027f4a0Smrg basic_machine=rs6000-bull 5919027f4a0Smrg os=-bosx 5929027f4a0Smrg ;; 5939027f4a0Smrg dpx2* | dpx2*-bull) 5949027f4a0Smrg basic_machine=m68k-bull 5959027f4a0Smrg os=-sysv3 5969027f4a0Smrg ;; 5979027f4a0Smrg ebmon29k) 5989027f4a0Smrg basic_machine=a29k-amd 5999027f4a0Smrg os=-ebmon 6009027f4a0Smrg ;; 6019027f4a0Smrg elxsi) 6029027f4a0Smrg basic_machine=elxsi-elxsi 6039027f4a0Smrg os=-bsd 6049027f4a0Smrg ;; 6059027f4a0Smrg encore | umax | mmax) 6069027f4a0Smrg basic_machine=ns32k-encore 6079027f4a0Smrg ;; 6089027f4a0Smrg es1800 | OSE68k | ose68k | ose | OSE) 6099027f4a0Smrg basic_machine=m68k-ericsson 6109027f4a0Smrg os=-ose 6119027f4a0Smrg ;; 6129027f4a0Smrg fx2800) 6139027f4a0Smrg basic_machine=i860-alliant 6149027f4a0Smrg ;; 6159027f4a0Smrg genix) 6169027f4a0Smrg basic_machine=ns32k-ns 6179027f4a0Smrg ;; 6189027f4a0Smrg gmicro) 6199027f4a0Smrg basic_machine=tron-gmicro 6209027f4a0Smrg os=-sysv 6219027f4a0Smrg ;; 6229027f4a0Smrg go32) 6239027f4a0Smrg basic_machine=i386-pc 6249027f4a0Smrg os=-go32 6259027f4a0Smrg ;; 6269027f4a0Smrg h3050r* | hiux*) 6279027f4a0Smrg basic_machine=hppa1.1-hitachi 6289027f4a0Smrg os=-hiuxwe2 6299027f4a0Smrg ;; 6309027f4a0Smrg h8300hms) 6319027f4a0Smrg basic_machine=h8300-hitachi 6329027f4a0Smrg os=-hms 6339027f4a0Smrg ;; 6349027f4a0Smrg h8300xray) 6359027f4a0Smrg basic_machine=h8300-hitachi 6369027f4a0Smrg os=-xray 6379027f4a0Smrg ;; 6389027f4a0Smrg h8500hms) 6399027f4a0Smrg basic_machine=h8500-hitachi 6409027f4a0Smrg os=-hms 6419027f4a0Smrg ;; 6429027f4a0Smrg harris) 6439027f4a0Smrg basic_machine=m88k-harris 6449027f4a0Smrg os=-sysv3 6459027f4a0Smrg ;; 6469027f4a0Smrg hp300-*) 6479027f4a0Smrg basic_machine=m68k-hp 6489027f4a0Smrg ;; 6499027f4a0Smrg hp300bsd) 6509027f4a0Smrg basic_machine=m68k-hp 6519027f4a0Smrg os=-bsd 6529027f4a0Smrg ;; 6539027f4a0Smrg hp300hpux) 6549027f4a0Smrg basic_machine=m68k-hp 6559027f4a0Smrg os=-hpux 6569027f4a0Smrg ;; 6579027f4a0Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6589027f4a0Smrg basic_machine=hppa1.0-hp 6599027f4a0Smrg ;; 6609027f4a0Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6619027f4a0Smrg basic_machine=m68000-hp 6629027f4a0Smrg ;; 6639027f4a0Smrg hp9k3[2-9][0-9]) 6649027f4a0Smrg basic_machine=m68k-hp 6659027f4a0Smrg ;; 6669027f4a0Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6679027f4a0Smrg basic_machine=hppa1.0-hp 6689027f4a0Smrg ;; 6699027f4a0Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6709027f4a0Smrg basic_machine=hppa1.1-hp 6719027f4a0Smrg ;; 6729027f4a0Smrg hp9k78[0-9] | hp78[0-9]) 6739027f4a0Smrg # FIXME: really hppa2.0-hp 6749027f4a0Smrg basic_machine=hppa1.1-hp 6759027f4a0Smrg ;; 6769027f4a0Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6779027f4a0Smrg # FIXME: really hppa2.0-hp 6789027f4a0Smrg basic_machine=hppa1.1-hp 6799027f4a0Smrg ;; 6809027f4a0Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6819027f4a0Smrg basic_machine=hppa1.1-hp 6829027f4a0Smrg ;; 6839027f4a0Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6849027f4a0Smrg basic_machine=hppa1.0-hp 6859027f4a0Smrg ;; 6869027f4a0Smrg hppa-next) 6879027f4a0Smrg os=-nextstep3 6889027f4a0Smrg ;; 6899027f4a0Smrg hppaosf) 6909027f4a0Smrg basic_machine=hppa1.1-hp 6919027f4a0Smrg os=-osf 6929027f4a0Smrg ;; 6939027f4a0Smrg hppro) 6949027f4a0Smrg basic_machine=hppa1.1-hp 6959027f4a0Smrg os=-proelf 6969027f4a0Smrg ;; 6979027f4a0Smrg i370-ibm* | ibm*) 6989027f4a0Smrg basic_machine=i370-ibm 6999027f4a0Smrg ;; 7009027f4a0Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 7019027f4a0Smrg i*86v32) 7029027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7039027f4a0Smrg os=-sysv32 7049027f4a0Smrg ;; 7059027f4a0Smrg i*86v4*) 7069027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7079027f4a0Smrg os=-sysv4 7089027f4a0Smrg ;; 7099027f4a0Smrg i*86v) 7109027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7119027f4a0Smrg os=-sysv 7129027f4a0Smrg ;; 7139027f4a0Smrg i*86sol2) 7149027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7159027f4a0Smrg os=-solaris2 7169027f4a0Smrg ;; 7179027f4a0Smrg i386mach) 7189027f4a0Smrg basic_machine=i386-mach 7199027f4a0Smrg os=-mach 7209027f4a0Smrg ;; 7219027f4a0Smrg i386-vsta | vsta) 7229027f4a0Smrg basic_machine=i386-unknown 7239027f4a0Smrg os=-vsta 7249027f4a0Smrg ;; 7259027f4a0Smrg iris | iris4d) 7269027f4a0Smrg basic_machine=mips-sgi 7279027f4a0Smrg case $os in 7289027f4a0Smrg -irix*) 7299027f4a0Smrg ;; 7309027f4a0Smrg *) 7319027f4a0Smrg os=-irix4 7329027f4a0Smrg ;; 7339027f4a0Smrg esac 7349027f4a0Smrg ;; 7359027f4a0Smrg isi68 | isi) 7369027f4a0Smrg basic_machine=m68k-isi 7379027f4a0Smrg os=-sysv 7389027f4a0Smrg ;; 7393a72f200Smrg m68knommu) 7403a72f200Smrg basic_machine=m68k-unknown 7413a72f200Smrg os=-linux 7423a72f200Smrg ;; 7433a72f200Smrg m68knommu-*) 7443a72f200Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7453a72f200Smrg os=-linux 7463a72f200Smrg ;; 7479027f4a0Smrg m88k-omron*) 7489027f4a0Smrg basic_machine=m88k-omron 7499027f4a0Smrg ;; 7509027f4a0Smrg magnum | m3230) 7519027f4a0Smrg basic_machine=mips-mips 7529027f4a0Smrg os=-sysv 7539027f4a0Smrg ;; 7549027f4a0Smrg merlin) 7559027f4a0Smrg basic_machine=ns32k-utek 7569027f4a0Smrg os=-sysv 7579027f4a0Smrg ;; 7583a72f200Smrg microblaze) 7593a72f200Smrg basic_machine=microblaze-xilinx 7603a72f200Smrg ;; 7619027f4a0Smrg mingw32) 7629027f4a0Smrg basic_machine=i386-pc 7639027f4a0Smrg os=-mingw32 7649027f4a0Smrg ;; 7653a72f200Smrg mingw32ce) 7663a72f200Smrg basic_machine=arm-unknown 7673a72f200Smrg os=-mingw32ce 7683a72f200Smrg ;; 7699027f4a0Smrg miniframe) 7709027f4a0Smrg basic_machine=m68000-convergent 7719027f4a0Smrg ;; 7729027f4a0Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7739027f4a0Smrg basic_machine=m68k-atari 7749027f4a0Smrg os=-mint 7759027f4a0Smrg ;; 7769027f4a0Smrg mips3*-*) 7779027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7789027f4a0Smrg ;; 7799027f4a0Smrg mips3*) 7809027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7819027f4a0Smrg ;; 7829027f4a0Smrg monitor) 7839027f4a0Smrg basic_machine=m68k-rom68k 7849027f4a0Smrg os=-coff 7859027f4a0Smrg ;; 7869027f4a0Smrg morphos) 7879027f4a0Smrg basic_machine=powerpc-unknown 7889027f4a0Smrg os=-morphos 7899027f4a0Smrg ;; 7909027f4a0Smrg msdos) 7919027f4a0Smrg basic_machine=i386-pc 7929027f4a0Smrg os=-msdos 7939027f4a0Smrg ;; 7949027f4a0Smrg ms1-*) 7959027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7969027f4a0Smrg ;; 7979027f4a0Smrg mvs) 7989027f4a0Smrg basic_machine=i370-ibm 7999027f4a0Smrg os=-mvs 8009027f4a0Smrg ;; 8019027f4a0Smrg ncr3000) 8029027f4a0Smrg basic_machine=i486-ncr 8039027f4a0Smrg os=-sysv4 8049027f4a0Smrg ;; 8059027f4a0Smrg netbsd386) 8069027f4a0Smrg basic_machine=i386-unknown 8079027f4a0Smrg os=-netbsd 8089027f4a0Smrg ;; 8099027f4a0Smrg netwinder) 8109027f4a0Smrg basic_machine=armv4l-rebel 8119027f4a0Smrg os=-linux 8129027f4a0Smrg ;; 8139027f4a0Smrg news | news700 | news800 | news900) 8149027f4a0Smrg basic_machine=m68k-sony 8159027f4a0Smrg os=-newsos 8169027f4a0Smrg ;; 8179027f4a0Smrg news1000) 8189027f4a0Smrg basic_machine=m68030-sony 8199027f4a0Smrg os=-newsos 8209027f4a0Smrg ;; 8219027f4a0Smrg news-3600 | risc-news) 8229027f4a0Smrg basic_machine=mips-sony 8239027f4a0Smrg os=-newsos 8249027f4a0Smrg ;; 8259027f4a0Smrg necv70) 8269027f4a0Smrg basic_machine=v70-nec 8279027f4a0Smrg os=-sysv 8289027f4a0Smrg ;; 8299027f4a0Smrg next | m*-next ) 8309027f4a0Smrg basic_machine=m68k-next 8319027f4a0Smrg case $os in 8329027f4a0Smrg -nextstep* ) 8339027f4a0Smrg ;; 8349027f4a0Smrg -ns2*) 8359027f4a0Smrg os=-nextstep2 8369027f4a0Smrg ;; 8379027f4a0Smrg *) 8389027f4a0Smrg os=-nextstep3 8399027f4a0Smrg ;; 8409027f4a0Smrg esac 8419027f4a0Smrg ;; 8429027f4a0Smrg nh3000) 8439027f4a0Smrg basic_machine=m68k-harris 8449027f4a0Smrg os=-cxux 8459027f4a0Smrg ;; 8469027f4a0Smrg nh[45]000) 8479027f4a0Smrg basic_machine=m88k-harris 8489027f4a0Smrg os=-cxux 8499027f4a0Smrg ;; 8509027f4a0Smrg nindy960) 8519027f4a0Smrg basic_machine=i960-intel 8529027f4a0Smrg os=-nindy 8539027f4a0Smrg ;; 8549027f4a0Smrg mon960) 8559027f4a0Smrg basic_machine=i960-intel 8569027f4a0Smrg os=-mon960 8579027f4a0Smrg ;; 8589027f4a0Smrg nonstopux) 8599027f4a0Smrg basic_machine=mips-compaq 8609027f4a0Smrg os=-nonstopux 8619027f4a0Smrg ;; 8629027f4a0Smrg np1) 8639027f4a0Smrg basic_machine=np1-gould 8649027f4a0Smrg ;; 8653a72f200Smrg neo-tandem) 8663a72f200Smrg basic_machine=neo-tandem 8673a72f200Smrg ;; 8683a72f200Smrg nse-tandem) 8693a72f200Smrg basic_machine=nse-tandem 8703a72f200Smrg ;; 8719027f4a0Smrg nsr-tandem) 8729027f4a0Smrg basic_machine=nsr-tandem 8739027f4a0Smrg ;; 8749027f4a0Smrg op50n-* | op60c-*) 8759027f4a0Smrg basic_machine=hppa1.1-oki 8769027f4a0Smrg os=-proelf 8779027f4a0Smrg ;; 8789027f4a0Smrg openrisc | openrisc-*) 8799027f4a0Smrg basic_machine=or32-unknown 8809027f4a0Smrg ;; 8819027f4a0Smrg os400) 8829027f4a0Smrg basic_machine=powerpc-ibm 8839027f4a0Smrg os=-os400 8849027f4a0Smrg ;; 8859027f4a0Smrg OSE68000 | ose68000) 8869027f4a0Smrg basic_machine=m68000-ericsson 8879027f4a0Smrg os=-ose 8889027f4a0Smrg ;; 8899027f4a0Smrg os68k) 8909027f4a0Smrg basic_machine=m68k-none 8919027f4a0Smrg os=-os68k 8929027f4a0Smrg ;; 8939027f4a0Smrg pa-hitachi) 8949027f4a0Smrg basic_machine=hppa1.1-hitachi 8959027f4a0Smrg os=-hiuxwe2 8969027f4a0Smrg ;; 8979027f4a0Smrg paragon) 8989027f4a0Smrg basic_machine=i860-intel 8999027f4a0Smrg os=-osf 9009027f4a0Smrg ;; 9013a72f200Smrg parisc) 9023a72f200Smrg basic_machine=hppa-unknown 9033a72f200Smrg os=-linux 9043a72f200Smrg ;; 9053a72f200Smrg parisc-*) 9063a72f200Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9073a72f200Smrg os=-linux 9083a72f200Smrg ;; 9099027f4a0Smrg pbd) 9109027f4a0Smrg basic_machine=sparc-tti 9119027f4a0Smrg ;; 9129027f4a0Smrg pbb) 9139027f4a0Smrg basic_machine=m68k-tti 9149027f4a0Smrg ;; 9159027f4a0Smrg pc532 | pc532-*) 9169027f4a0Smrg basic_machine=ns32k-pc532 9179027f4a0Smrg ;; 9189027f4a0Smrg pc98) 9199027f4a0Smrg basic_machine=i386-pc 9209027f4a0Smrg ;; 9219027f4a0Smrg pc98-*) 9229027f4a0Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9239027f4a0Smrg ;; 9249027f4a0Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9259027f4a0Smrg basic_machine=i586-pc 9269027f4a0Smrg ;; 9279027f4a0Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9289027f4a0Smrg basic_machine=i686-pc 9299027f4a0Smrg ;; 9309027f4a0Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9319027f4a0Smrg basic_machine=i686-pc 9329027f4a0Smrg ;; 9339027f4a0Smrg pentium4) 9349027f4a0Smrg basic_machine=i786-pc 9359027f4a0Smrg ;; 9369027f4a0Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9379027f4a0Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9389027f4a0Smrg ;; 9399027f4a0Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9409027f4a0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9419027f4a0Smrg ;; 9429027f4a0Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9439027f4a0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9449027f4a0Smrg ;; 9459027f4a0Smrg pentium4-*) 9469027f4a0Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9479027f4a0Smrg ;; 9489027f4a0Smrg pn) 9499027f4a0Smrg basic_machine=pn-gould 9509027f4a0Smrg ;; 9519027f4a0Smrg power) basic_machine=power-ibm 9529027f4a0Smrg ;; 9539027f4a0Smrg ppc) basic_machine=powerpc-unknown 9549027f4a0Smrg ;; 9559027f4a0Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9569027f4a0Smrg ;; 9579027f4a0Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 9589027f4a0Smrg basic_machine=powerpcle-unknown 9599027f4a0Smrg ;; 9609027f4a0Smrg ppcle-* | powerpclittle-*) 9619027f4a0Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9629027f4a0Smrg ;; 9639027f4a0Smrg ppc64) basic_machine=powerpc64-unknown 9649027f4a0Smrg ;; 9659027f4a0Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9669027f4a0Smrg ;; 9679027f4a0Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9689027f4a0Smrg basic_machine=powerpc64le-unknown 9699027f4a0Smrg ;; 9709027f4a0Smrg ppc64le-* | powerpc64little-*) 9719027f4a0Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9729027f4a0Smrg ;; 9739027f4a0Smrg ps2) 9749027f4a0Smrg basic_machine=i386-ibm 9759027f4a0Smrg ;; 9769027f4a0Smrg pw32) 9779027f4a0Smrg basic_machine=i586-unknown 9789027f4a0Smrg os=-pw32 9799027f4a0Smrg ;; 9809027f4a0Smrg rdos) 9819027f4a0Smrg basic_machine=i386-pc 9829027f4a0Smrg os=-rdos 9839027f4a0Smrg ;; 9849027f4a0Smrg rom68k) 9859027f4a0Smrg basic_machine=m68k-rom68k 9869027f4a0Smrg os=-coff 9879027f4a0Smrg ;; 9889027f4a0Smrg rm[46]00) 9899027f4a0Smrg basic_machine=mips-siemens 9909027f4a0Smrg ;; 9919027f4a0Smrg rtpc | rtpc-*) 9929027f4a0Smrg basic_machine=romp-ibm 9939027f4a0Smrg ;; 9949027f4a0Smrg s390 | s390-*) 9959027f4a0Smrg basic_machine=s390-ibm 9969027f4a0Smrg ;; 9979027f4a0Smrg s390x | s390x-*) 9989027f4a0Smrg basic_machine=s390x-ibm 9999027f4a0Smrg ;; 10009027f4a0Smrg sa29200) 10019027f4a0Smrg basic_machine=a29k-amd 10029027f4a0Smrg os=-udi 10039027f4a0Smrg ;; 10049027f4a0Smrg sb1) 10059027f4a0Smrg basic_machine=mipsisa64sb1-unknown 10069027f4a0Smrg ;; 10079027f4a0Smrg sb1el) 10089027f4a0Smrg basic_machine=mipsisa64sb1el-unknown 10099027f4a0Smrg ;; 10109027f4a0Smrg sde) 10119027f4a0Smrg basic_machine=mipsisa32-sde 10129027f4a0Smrg os=-elf 10139027f4a0Smrg ;; 10149027f4a0Smrg sei) 10159027f4a0Smrg basic_machine=mips-sei 10169027f4a0Smrg os=-seiux 10179027f4a0Smrg ;; 10189027f4a0Smrg sequent) 10199027f4a0Smrg basic_machine=i386-sequent 10209027f4a0Smrg ;; 10219027f4a0Smrg sh) 10229027f4a0Smrg basic_machine=sh-hitachi 10239027f4a0Smrg os=-hms 10249027f4a0Smrg ;; 10259027f4a0Smrg sh5el) 10269027f4a0Smrg basic_machine=sh5le-unknown 10279027f4a0Smrg ;; 10289027f4a0Smrg sh64) 10299027f4a0Smrg basic_machine=sh64-unknown 10309027f4a0Smrg ;; 10319027f4a0Smrg sparclite-wrs | simso-wrs) 10329027f4a0Smrg basic_machine=sparclite-wrs 10339027f4a0Smrg os=-vxworks 10349027f4a0Smrg ;; 10359027f4a0Smrg sps7) 10369027f4a0Smrg basic_machine=m68k-bull 10379027f4a0Smrg os=-sysv2 10389027f4a0Smrg ;; 10399027f4a0Smrg spur) 10409027f4a0Smrg basic_machine=spur-unknown 10419027f4a0Smrg ;; 10429027f4a0Smrg st2000) 10439027f4a0Smrg basic_machine=m68k-tandem 10449027f4a0Smrg ;; 10459027f4a0Smrg stratus) 10469027f4a0Smrg basic_machine=i860-stratus 10479027f4a0Smrg os=-sysv4 10489027f4a0Smrg ;; 10499027f4a0Smrg sun2) 10509027f4a0Smrg basic_machine=m68000-sun 10519027f4a0Smrg ;; 10529027f4a0Smrg sun2os3) 10539027f4a0Smrg basic_machine=m68000-sun 10549027f4a0Smrg os=-sunos3 10559027f4a0Smrg ;; 10569027f4a0Smrg sun2os4) 10579027f4a0Smrg basic_machine=m68000-sun 10589027f4a0Smrg os=-sunos4 10599027f4a0Smrg ;; 10609027f4a0Smrg sun3os3) 10619027f4a0Smrg basic_machine=m68k-sun 10629027f4a0Smrg os=-sunos3 10639027f4a0Smrg ;; 10649027f4a0Smrg sun3os4) 10659027f4a0Smrg basic_machine=m68k-sun 10669027f4a0Smrg os=-sunos4 10679027f4a0Smrg ;; 10689027f4a0Smrg sun4os3) 10699027f4a0Smrg basic_machine=sparc-sun 10709027f4a0Smrg os=-sunos3 10719027f4a0Smrg ;; 10729027f4a0Smrg sun4os4) 10739027f4a0Smrg basic_machine=sparc-sun 10749027f4a0Smrg os=-sunos4 10759027f4a0Smrg ;; 10769027f4a0Smrg sun4sol2) 10779027f4a0Smrg basic_machine=sparc-sun 10789027f4a0Smrg os=-solaris2 10799027f4a0Smrg ;; 10809027f4a0Smrg sun3 | sun3-*) 10819027f4a0Smrg basic_machine=m68k-sun 10829027f4a0Smrg ;; 10839027f4a0Smrg sun4) 10849027f4a0Smrg basic_machine=sparc-sun 10859027f4a0Smrg ;; 10869027f4a0Smrg sun386 | sun386i | roadrunner) 10879027f4a0Smrg basic_machine=i386-sun 10889027f4a0Smrg ;; 10899027f4a0Smrg sv1) 10909027f4a0Smrg basic_machine=sv1-cray 10919027f4a0Smrg os=-unicos 10929027f4a0Smrg ;; 10939027f4a0Smrg symmetry) 10949027f4a0Smrg basic_machine=i386-sequent 10959027f4a0Smrg os=-dynix 10969027f4a0Smrg ;; 10979027f4a0Smrg t3e) 10989027f4a0Smrg basic_machine=alphaev5-cray 10999027f4a0Smrg os=-unicos 11009027f4a0Smrg ;; 11019027f4a0Smrg t90) 11029027f4a0Smrg basic_machine=t90-cray 11039027f4a0Smrg os=-unicos 11049027f4a0Smrg ;; 11053a72f200Smrg # This must be matched before tile*. 11063a72f200Smrg tilegx*) 11073a72f200Smrg basic_machine=tilegx-unknown 11083a72f200Smrg os=-linux-gnu 11099027f4a0Smrg ;; 11103a72f200Smrg tile*) 11113a72f200Smrg basic_machine=tile-unknown 11123a72f200Smrg os=-linux-gnu 11139027f4a0Smrg ;; 11149027f4a0Smrg tx39) 11159027f4a0Smrg basic_machine=mipstx39-unknown 11169027f4a0Smrg ;; 11179027f4a0Smrg tx39el) 11189027f4a0Smrg basic_machine=mipstx39el-unknown 11199027f4a0Smrg ;; 11209027f4a0Smrg toad1) 11219027f4a0Smrg basic_machine=pdp10-xkl 11229027f4a0Smrg os=-tops20 11239027f4a0Smrg ;; 11249027f4a0Smrg tower | tower-32) 11259027f4a0Smrg basic_machine=m68k-ncr 11269027f4a0Smrg ;; 11279027f4a0Smrg tpf) 11289027f4a0Smrg basic_machine=s390x-ibm 11299027f4a0Smrg os=-tpf 11309027f4a0Smrg ;; 11319027f4a0Smrg udi29k) 11329027f4a0Smrg basic_machine=a29k-amd 11339027f4a0Smrg os=-udi 11349027f4a0Smrg ;; 11359027f4a0Smrg ultra3) 11369027f4a0Smrg basic_machine=a29k-nyu 11379027f4a0Smrg os=-sym1 11389027f4a0Smrg ;; 11399027f4a0Smrg v810 | necv810) 11409027f4a0Smrg basic_machine=v810-nec 11419027f4a0Smrg os=-none 11429027f4a0Smrg ;; 11439027f4a0Smrg vaxv) 11449027f4a0Smrg basic_machine=vax-dec 11459027f4a0Smrg os=-sysv 11469027f4a0Smrg ;; 11479027f4a0Smrg vms) 11489027f4a0Smrg basic_machine=vax-dec 11499027f4a0Smrg os=-vms 11509027f4a0Smrg ;; 11519027f4a0Smrg vpp*|vx|vx-*) 11529027f4a0Smrg basic_machine=f301-fujitsu 11539027f4a0Smrg ;; 11549027f4a0Smrg vxworks960) 11559027f4a0Smrg basic_machine=i960-wrs 11569027f4a0Smrg os=-vxworks 11579027f4a0Smrg ;; 11589027f4a0Smrg vxworks68) 11599027f4a0Smrg basic_machine=m68k-wrs 11609027f4a0Smrg os=-vxworks 11619027f4a0Smrg ;; 11629027f4a0Smrg vxworks29k) 11639027f4a0Smrg basic_machine=a29k-wrs 11649027f4a0Smrg os=-vxworks 11659027f4a0Smrg ;; 11669027f4a0Smrg w65*) 11679027f4a0Smrg basic_machine=w65-wdc 11689027f4a0Smrg os=-none 11699027f4a0Smrg ;; 11709027f4a0Smrg w89k-*) 11719027f4a0Smrg basic_machine=hppa1.1-winbond 11729027f4a0Smrg os=-proelf 11739027f4a0Smrg ;; 11749027f4a0Smrg xbox) 11759027f4a0Smrg basic_machine=i686-pc 11769027f4a0Smrg os=-mingw32 11779027f4a0Smrg ;; 11789027f4a0Smrg xps | xps100) 11799027f4a0Smrg basic_machine=xps100-honeywell 11809027f4a0Smrg ;; 11819027f4a0Smrg ymp) 11829027f4a0Smrg basic_machine=ymp-cray 11839027f4a0Smrg os=-unicos 11849027f4a0Smrg ;; 11859027f4a0Smrg z8k-*-coff) 11869027f4a0Smrg basic_machine=z8k-unknown 11879027f4a0Smrg os=-sim 11889027f4a0Smrg ;; 11893a72f200Smrg z80-*-coff) 11903a72f200Smrg basic_machine=z80-unknown 11913a72f200Smrg os=-sim 11923a72f200Smrg ;; 11939027f4a0Smrg none) 11949027f4a0Smrg basic_machine=none-none 11959027f4a0Smrg os=-none 11969027f4a0Smrg ;; 11979027f4a0Smrg 11989027f4a0Smrg# Here we handle the default manufacturer of certain CPU types. It is in 11999027f4a0Smrg# some cases the only manufacturer, in others, it is the most popular. 12009027f4a0Smrg w89k) 12019027f4a0Smrg basic_machine=hppa1.1-winbond 12029027f4a0Smrg ;; 12039027f4a0Smrg op50n) 12049027f4a0Smrg basic_machine=hppa1.1-oki 12059027f4a0Smrg ;; 12069027f4a0Smrg op60c) 12079027f4a0Smrg basic_machine=hppa1.1-oki 12089027f4a0Smrg ;; 12099027f4a0Smrg romp) 12109027f4a0Smrg basic_machine=romp-ibm 12119027f4a0Smrg ;; 12129027f4a0Smrg mmix) 12139027f4a0Smrg basic_machine=mmix-knuth 12149027f4a0Smrg ;; 12159027f4a0Smrg rs6000) 12169027f4a0Smrg basic_machine=rs6000-ibm 12179027f4a0Smrg ;; 12189027f4a0Smrg vax) 12199027f4a0Smrg basic_machine=vax-dec 12209027f4a0Smrg ;; 12219027f4a0Smrg pdp10) 12229027f4a0Smrg # there are many clones, so DEC is not a safe bet 12239027f4a0Smrg basic_machine=pdp10-unknown 12249027f4a0Smrg ;; 12259027f4a0Smrg pdp11) 12269027f4a0Smrg basic_machine=pdp11-dec 12279027f4a0Smrg ;; 12289027f4a0Smrg we32k) 12299027f4a0Smrg basic_machine=we32k-att 12309027f4a0Smrg ;; 12313a72f200Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12329027f4a0Smrg basic_machine=sh-unknown 12339027f4a0Smrg ;; 12349027f4a0Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12359027f4a0Smrg basic_machine=sparc-sun 12369027f4a0Smrg ;; 12379027f4a0Smrg cydra) 12389027f4a0Smrg basic_machine=cydra-cydrome 12399027f4a0Smrg ;; 12409027f4a0Smrg orion) 12419027f4a0Smrg basic_machine=orion-highlevel 12429027f4a0Smrg ;; 12439027f4a0Smrg orion105) 12449027f4a0Smrg basic_machine=clipper-highlevel 12459027f4a0Smrg ;; 12469027f4a0Smrg mac | mpw | mac-mpw) 12479027f4a0Smrg basic_machine=m68k-apple 12489027f4a0Smrg ;; 12499027f4a0Smrg pmac | pmac-mpw) 12509027f4a0Smrg basic_machine=powerpc-apple 12519027f4a0Smrg ;; 12529027f4a0Smrg *-unknown) 12539027f4a0Smrg # Make sure to match an already-canonicalized machine name. 12549027f4a0Smrg ;; 12559027f4a0Smrg *) 12569027f4a0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12579027f4a0Smrg exit 1 12589027f4a0Smrg ;; 12599027f4a0Smrgesac 12609027f4a0Smrg 12619027f4a0Smrg# Here we canonicalize certain aliases for manufacturers. 12629027f4a0Smrgcase $basic_machine in 12639027f4a0Smrg *-digital*) 12649027f4a0Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12659027f4a0Smrg ;; 12669027f4a0Smrg *-commodore*) 12679027f4a0Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12689027f4a0Smrg ;; 12699027f4a0Smrg *) 12709027f4a0Smrg ;; 12719027f4a0Smrgesac 12729027f4a0Smrg 12739027f4a0Smrg# Decode manufacturer-specific aliases for certain operating systems. 12749027f4a0Smrg 12759027f4a0Smrgif [ x"$os" != x"" ] 12769027f4a0Smrgthen 12779027f4a0Smrgcase $os in 12789027f4a0Smrg # First match some system type aliases 12799027f4a0Smrg # that might get confused with valid system types. 12809027f4a0Smrg # -solaris* is a basic system type, with this one exception. 12813a72f200Smrg -auroraux) 12823a72f200Smrg os=-auroraux 12833a72f200Smrg ;; 12849027f4a0Smrg -solaris1 | -solaris1.*) 12859027f4a0Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 12869027f4a0Smrg ;; 12879027f4a0Smrg -solaris) 12889027f4a0Smrg os=-solaris2 12899027f4a0Smrg ;; 12909027f4a0Smrg -svr4*) 12919027f4a0Smrg os=-sysv4 12929027f4a0Smrg ;; 12939027f4a0Smrg -unixware*) 12949027f4a0Smrg os=-sysv4.2uw 12959027f4a0Smrg ;; 12969027f4a0Smrg -gnu/linux*) 12979027f4a0Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 12989027f4a0Smrg ;; 12999027f4a0Smrg # First accept the basic system types. 13009027f4a0Smrg # The portable systems comes first. 13019027f4a0Smrg # Each alternative MUST END IN A *, to match a version number. 13029027f4a0Smrg # -sysv* is not here because it comes later, after sysvr4. 13039027f4a0Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13043a72f200Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13053a72f200Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13063a72f200Smrg | -sym* | -kopensolaris* \ 13079027f4a0Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13083a72f200Smrg | -aos* | -aros* \ 13099027f4a0Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13109027f4a0Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13119027f4a0Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13129027f4a0Smrg | -openbsd* | -solidbsd* \ 13139027f4a0Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13149027f4a0Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13159027f4a0Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13169027f4a0Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13173a72f200Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 13189027f4a0Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13193a72f200Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 13203a72f200Smrg | -linux-newlib* | -linux-uclibc* \ 13219027f4a0Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13229027f4a0Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13239027f4a0Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13249027f4a0Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13259027f4a0Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13269027f4a0Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13279027f4a0Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13283a72f200Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13299027f4a0Smrg # Remember, each alternative MUST END IN *, to match a version number. 13309027f4a0Smrg ;; 13319027f4a0Smrg -qnx*) 13329027f4a0Smrg case $basic_machine in 13339027f4a0Smrg x86-* | i*86-*) 13349027f4a0Smrg ;; 13359027f4a0Smrg *) 13369027f4a0Smrg os=-nto$os 13379027f4a0Smrg ;; 13389027f4a0Smrg esac 13399027f4a0Smrg ;; 13409027f4a0Smrg -nto-qnx*) 13419027f4a0Smrg ;; 13429027f4a0Smrg -nto*) 13439027f4a0Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13449027f4a0Smrg ;; 13459027f4a0Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13469027f4a0Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13479027f4a0Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13489027f4a0Smrg ;; 13499027f4a0Smrg -mac*) 13509027f4a0Smrg os=`echo $os | sed -e 's|mac|macos|'` 13519027f4a0Smrg ;; 13529027f4a0Smrg -linux-dietlibc) 13539027f4a0Smrg os=-linux-dietlibc 13549027f4a0Smrg ;; 13559027f4a0Smrg -linux*) 13569027f4a0Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13579027f4a0Smrg ;; 13589027f4a0Smrg -sunos5*) 13599027f4a0Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13609027f4a0Smrg ;; 13619027f4a0Smrg -sunos6*) 13629027f4a0Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13639027f4a0Smrg ;; 13649027f4a0Smrg -opened*) 13659027f4a0Smrg os=-openedition 13669027f4a0Smrg ;; 13679027f4a0Smrg -os400*) 13689027f4a0Smrg os=-os400 13699027f4a0Smrg ;; 13709027f4a0Smrg -wince*) 13719027f4a0Smrg os=-wince 13729027f4a0Smrg ;; 13739027f4a0Smrg -osfrose*) 13749027f4a0Smrg os=-osfrose 13759027f4a0Smrg ;; 13769027f4a0Smrg -osf*) 13779027f4a0Smrg os=-osf 13789027f4a0Smrg ;; 13799027f4a0Smrg -utek*) 13809027f4a0Smrg os=-bsd 13819027f4a0Smrg ;; 13829027f4a0Smrg -dynix*) 13839027f4a0Smrg os=-bsd 13849027f4a0Smrg ;; 13859027f4a0Smrg -acis*) 13869027f4a0Smrg os=-aos 13879027f4a0Smrg ;; 13889027f4a0Smrg -atheos*) 13899027f4a0Smrg os=-atheos 13909027f4a0Smrg ;; 13919027f4a0Smrg -syllable*) 13929027f4a0Smrg os=-syllable 13939027f4a0Smrg ;; 13949027f4a0Smrg -386bsd) 13959027f4a0Smrg os=-bsd 13969027f4a0Smrg ;; 13979027f4a0Smrg -ctix* | -uts*) 13989027f4a0Smrg os=-sysv 13999027f4a0Smrg ;; 14009027f4a0Smrg -nova*) 14019027f4a0Smrg os=-rtmk-nova 14029027f4a0Smrg ;; 14039027f4a0Smrg -ns2 ) 14049027f4a0Smrg os=-nextstep2 14059027f4a0Smrg ;; 14069027f4a0Smrg -nsk*) 14079027f4a0Smrg os=-nsk 14089027f4a0Smrg ;; 14099027f4a0Smrg # Preserve the version number of sinix5. 14109027f4a0Smrg -sinix5.*) 14119027f4a0Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14129027f4a0Smrg ;; 14139027f4a0Smrg -sinix*) 14149027f4a0Smrg os=-sysv4 14159027f4a0Smrg ;; 14169027f4a0Smrg -tpf*) 14179027f4a0Smrg os=-tpf 14189027f4a0Smrg ;; 14199027f4a0Smrg -triton*) 14209027f4a0Smrg os=-sysv3 14219027f4a0Smrg ;; 14229027f4a0Smrg -oss*) 14239027f4a0Smrg os=-sysv3 14249027f4a0Smrg ;; 14259027f4a0Smrg -svr4) 14269027f4a0Smrg os=-sysv4 14279027f4a0Smrg ;; 14289027f4a0Smrg -svr3) 14299027f4a0Smrg os=-sysv3 14309027f4a0Smrg ;; 14319027f4a0Smrg -sysvr4) 14329027f4a0Smrg os=-sysv4 14339027f4a0Smrg ;; 14349027f4a0Smrg # This must come after -sysvr4. 14359027f4a0Smrg -sysv*) 14369027f4a0Smrg ;; 14379027f4a0Smrg -ose*) 14389027f4a0Smrg os=-ose 14399027f4a0Smrg ;; 14409027f4a0Smrg -es1800*) 14419027f4a0Smrg os=-ose 14429027f4a0Smrg ;; 14439027f4a0Smrg -xenix) 14449027f4a0Smrg os=-xenix 14459027f4a0Smrg ;; 14469027f4a0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14479027f4a0Smrg os=-mint 14489027f4a0Smrg ;; 14499027f4a0Smrg -aros*) 14509027f4a0Smrg os=-aros 14519027f4a0Smrg ;; 14529027f4a0Smrg -kaos*) 14539027f4a0Smrg os=-kaos 14549027f4a0Smrg ;; 14559027f4a0Smrg -zvmoe) 14569027f4a0Smrg os=-zvmoe 14579027f4a0Smrg ;; 14583a72f200Smrg -dicos*) 14593a72f200Smrg os=-dicos 14603a72f200Smrg ;; 14613a72f200Smrg -nacl*) 14623a72f200Smrg ;; 14639027f4a0Smrg -none) 14649027f4a0Smrg ;; 14659027f4a0Smrg *) 14669027f4a0Smrg # Get rid of the `-' at the beginning of $os. 14679027f4a0Smrg os=`echo $os | sed 's/[^-]*-//'` 14689027f4a0Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14699027f4a0Smrg exit 1 14709027f4a0Smrg ;; 14719027f4a0Smrgesac 14729027f4a0Smrgelse 14739027f4a0Smrg 14749027f4a0Smrg# Here we handle the default operating systems that come with various machines. 14759027f4a0Smrg# The value should be what the vendor currently ships out the door with their 14769027f4a0Smrg# machine or put another way, the most popular os provided with the machine. 14779027f4a0Smrg 14789027f4a0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14799027f4a0Smrg# "-sun"), then you have to tell the case statement up towards the top 14809027f4a0Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14819027f4a0Smrg# will signal an error saying that MANUFACTURER isn't an operating 14829027f4a0Smrg# system, and we'll never get to this point. 14839027f4a0Smrg 14849027f4a0Smrgcase $basic_machine in 14859027f4a0Smrg score-*) 14869027f4a0Smrg os=-elf 14879027f4a0Smrg ;; 14889027f4a0Smrg spu-*) 14899027f4a0Smrg os=-elf 14909027f4a0Smrg ;; 14919027f4a0Smrg *-acorn) 14929027f4a0Smrg os=-riscix1.2 14939027f4a0Smrg ;; 14949027f4a0Smrg arm*-rebel) 14959027f4a0Smrg os=-linux 14969027f4a0Smrg ;; 14979027f4a0Smrg arm*-semi) 14989027f4a0Smrg os=-aout 14999027f4a0Smrg ;; 15009027f4a0Smrg c4x-* | tic4x-*) 15019027f4a0Smrg os=-coff 15029027f4a0Smrg ;; 15033a72f200Smrg tic54x-*) 15043a72f200Smrg os=-coff 15053a72f200Smrg ;; 15063a72f200Smrg tic55x-*) 15073a72f200Smrg os=-coff 15083a72f200Smrg ;; 15093a72f200Smrg tic6x-*) 15103a72f200Smrg os=-coff 15113a72f200Smrg ;; 15129027f4a0Smrg # This must come before the *-dec entry. 15139027f4a0Smrg pdp10-*) 15149027f4a0Smrg os=-tops20 15159027f4a0Smrg ;; 15169027f4a0Smrg pdp11-*) 15179027f4a0Smrg os=-none 15189027f4a0Smrg ;; 15199027f4a0Smrg *-dec | vax-*) 15209027f4a0Smrg os=-ultrix4.2 15219027f4a0Smrg ;; 15229027f4a0Smrg m68*-apollo) 15239027f4a0Smrg os=-domain 15249027f4a0Smrg ;; 15259027f4a0Smrg i386-sun) 15269027f4a0Smrg os=-sunos4.0.2 15279027f4a0Smrg ;; 15289027f4a0Smrg m68000-sun) 15299027f4a0Smrg os=-sunos3 15309027f4a0Smrg # This also exists in the configure program, but was not the 15319027f4a0Smrg # default. 15329027f4a0Smrg # os=-sunos4 15339027f4a0Smrg ;; 15349027f4a0Smrg m68*-cisco) 15359027f4a0Smrg os=-aout 15369027f4a0Smrg ;; 15373a72f200Smrg mep-*) 15383a72f200Smrg os=-elf 15393a72f200Smrg ;; 15409027f4a0Smrg mips*-cisco) 15419027f4a0Smrg os=-elf 15429027f4a0Smrg ;; 15439027f4a0Smrg mips*-*) 15449027f4a0Smrg os=-elf 15459027f4a0Smrg ;; 15469027f4a0Smrg or32-*) 15479027f4a0Smrg os=-coff 15489027f4a0Smrg ;; 15499027f4a0Smrg *-tti) # must be before sparc entry or we get the wrong os. 15509027f4a0Smrg os=-sysv3 15519027f4a0Smrg ;; 15529027f4a0Smrg sparc-* | *-sun) 15539027f4a0Smrg os=-sunos4.1.1 15549027f4a0Smrg ;; 15559027f4a0Smrg *-be) 15569027f4a0Smrg os=-beos 15579027f4a0Smrg ;; 15589027f4a0Smrg *-haiku) 15599027f4a0Smrg os=-haiku 15609027f4a0Smrg ;; 15619027f4a0Smrg *-ibm) 15629027f4a0Smrg os=-aix 15639027f4a0Smrg ;; 15649027f4a0Smrg *-knuth) 15659027f4a0Smrg os=-mmixware 15669027f4a0Smrg ;; 15679027f4a0Smrg *-wec) 15689027f4a0Smrg os=-proelf 15699027f4a0Smrg ;; 15709027f4a0Smrg *-winbond) 15719027f4a0Smrg os=-proelf 15729027f4a0Smrg ;; 15739027f4a0Smrg *-oki) 15749027f4a0Smrg os=-proelf 15759027f4a0Smrg ;; 15769027f4a0Smrg *-hp) 15779027f4a0Smrg os=-hpux 15789027f4a0Smrg ;; 15799027f4a0Smrg *-hitachi) 15809027f4a0Smrg os=-hiux 15819027f4a0Smrg ;; 15829027f4a0Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 15839027f4a0Smrg os=-sysv 15849027f4a0Smrg ;; 15859027f4a0Smrg *-cbm) 15869027f4a0Smrg os=-amigaos 15879027f4a0Smrg ;; 15889027f4a0Smrg *-dg) 15899027f4a0Smrg os=-dgux 15909027f4a0Smrg ;; 15919027f4a0Smrg *-dolphin) 15929027f4a0Smrg os=-sysv3 15939027f4a0Smrg ;; 15949027f4a0Smrg m68k-ccur) 15959027f4a0Smrg os=-rtu 15969027f4a0Smrg ;; 15979027f4a0Smrg m88k-omron*) 15989027f4a0Smrg os=-luna 15999027f4a0Smrg ;; 16009027f4a0Smrg *-next ) 16019027f4a0Smrg os=-nextstep 16029027f4a0Smrg ;; 16039027f4a0Smrg *-sequent) 16049027f4a0Smrg os=-ptx 16059027f4a0Smrg ;; 16069027f4a0Smrg *-crds) 16079027f4a0Smrg os=-unos 16089027f4a0Smrg ;; 16099027f4a0Smrg *-ns) 16109027f4a0Smrg os=-genix 16119027f4a0Smrg ;; 16129027f4a0Smrg i370-*) 16139027f4a0Smrg os=-mvs 16149027f4a0Smrg ;; 16159027f4a0Smrg *-next) 16169027f4a0Smrg os=-nextstep3 16179027f4a0Smrg ;; 16189027f4a0Smrg *-gould) 16199027f4a0Smrg os=-sysv 16209027f4a0Smrg ;; 16219027f4a0Smrg *-highlevel) 16229027f4a0Smrg os=-bsd 16239027f4a0Smrg ;; 16249027f4a0Smrg *-encore) 16259027f4a0Smrg os=-bsd 16269027f4a0Smrg ;; 16279027f4a0Smrg *-sgi) 16289027f4a0Smrg os=-irix 16299027f4a0Smrg ;; 16309027f4a0Smrg *-siemens) 16319027f4a0Smrg os=-sysv4 16329027f4a0Smrg ;; 16339027f4a0Smrg *-masscomp) 16349027f4a0Smrg os=-rtu 16359027f4a0Smrg ;; 16369027f4a0Smrg f30[01]-fujitsu | f700-fujitsu) 16379027f4a0Smrg os=-uxpv 16389027f4a0Smrg ;; 16399027f4a0Smrg *-rom68k) 16409027f4a0Smrg os=-coff 16419027f4a0Smrg ;; 16429027f4a0Smrg *-*bug) 16439027f4a0Smrg os=-coff 16449027f4a0Smrg ;; 16459027f4a0Smrg *-apple) 16469027f4a0Smrg os=-macos 16479027f4a0Smrg ;; 16489027f4a0Smrg *-atari*) 16499027f4a0Smrg os=-mint 16509027f4a0Smrg ;; 16519027f4a0Smrg *) 16529027f4a0Smrg os=-none 16539027f4a0Smrg ;; 16549027f4a0Smrgesac 16559027f4a0Smrgfi 16569027f4a0Smrg 16579027f4a0Smrg# Here we handle the case where we know the os, and the CPU type, but not the 16589027f4a0Smrg# manufacturer. We pick the logical manufacturer. 16599027f4a0Smrgvendor=unknown 16609027f4a0Smrgcase $basic_machine in 16619027f4a0Smrg *-unknown) 16629027f4a0Smrg case $os in 16639027f4a0Smrg -riscix*) 16649027f4a0Smrg vendor=acorn 16659027f4a0Smrg ;; 16669027f4a0Smrg -sunos*) 16679027f4a0Smrg vendor=sun 16689027f4a0Smrg ;; 16693a72f200Smrg -cnk*|-aix*) 16709027f4a0Smrg vendor=ibm 16719027f4a0Smrg ;; 16729027f4a0Smrg -beos*) 16739027f4a0Smrg vendor=be 16749027f4a0Smrg ;; 16759027f4a0Smrg -hpux*) 16769027f4a0Smrg vendor=hp 16779027f4a0Smrg ;; 16789027f4a0Smrg -mpeix*) 16799027f4a0Smrg vendor=hp 16809027f4a0Smrg ;; 16819027f4a0Smrg -hiux*) 16829027f4a0Smrg vendor=hitachi 16839027f4a0Smrg ;; 16849027f4a0Smrg -unos*) 16859027f4a0Smrg vendor=crds 16869027f4a0Smrg ;; 16879027f4a0Smrg -dgux*) 16889027f4a0Smrg vendor=dg 16899027f4a0Smrg ;; 16909027f4a0Smrg -luna*) 16919027f4a0Smrg vendor=omron 16929027f4a0Smrg ;; 16939027f4a0Smrg -genix*) 16949027f4a0Smrg vendor=ns 16959027f4a0Smrg ;; 16969027f4a0Smrg -mvs* | -opened*) 16979027f4a0Smrg vendor=ibm 16989027f4a0Smrg ;; 16999027f4a0Smrg -os400*) 17009027f4a0Smrg vendor=ibm 17019027f4a0Smrg ;; 17029027f4a0Smrg -ptx*) 17039027f4a0Smrg vendor=sequent 17049027f4a0Smrg ;; 17059027f4a0Smrg -tpf*) 17069027f4a0Smrg vendor=ibm 17079027f4a0Smrg ;; 17089027f4a0Smrg -vxsim* | -vxworks* | -windiss*) 17099027f4a0Smrg vendor=wrs 17109027f4a0Smrg ;; 17119027f4a0Smrg -aux*) 17129027f4a0Smrg vendor=apple 17139027f4a0Smrg ;; 17149027f4a0Smrg -hms*) 17159027f4a0Smrg vendor=hitachi 17169027f4a0Smrg ;; 17179027f4a0Smrg -mpw* | -macos*) 17189027f4a0Smrg vendor=apple 17199027f4a0Smrg ;; 17209027f4a0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17219027f4a0Smrg vendor=atari 17229027f4a0Smrg ;; 17239027f4a0Smrg -vos*) 17249027f4a0Smrg vendor=stratus 17259027f4a0Smrg ;; 17269027f4a0Smrg esac 17279027f4a0Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17289027f4a0Smrg ;; 17299027f4a0Smrgesac 17309027f4a0Smrg 17319027f4a0Smrgecho $basic_machine$os 17329027f4a0Smrgexit 17339027f4a0Smrg 17349027f4a0Smrg# Local variables: 17359027f4a0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17369027f4a0Smrg# time-stamp-start: "timestamp='" 17379027f4a0Smrg# time-stamp-format: "%:y-%02m-%02d" 17389027f4a0Smrg# time-stamp-end: "'" 17399027f4a0Smrg# End: 1740