config.sub revision d7ffce2a
14c61c93dSmrg#! /bin/sh 24c61c93dSmrg# Configuration validation subroutine script. 34c61c93dSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4d7ffce2aSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 54c61c93dSmrg# Free Software Foundation, Inc. 64c61c93dSmrg 7d7ffce2aSmrgtimestamp='2010-09-11' 84c61c93dSmrg 94c61c93dSmrg# This file is (in principle) common to ALL GNU software. 104c61c93dSmrg# The presence of a machine in this file suggests that SOME GNU software 114c61c93dSmrg# can handle that machine. It does not imply ALL GNU software can. 124c61c93dSmrg# 134c61c93dSmrg# This file is free software; you can redistribute it and/or modify 144c61c93dSmrg# it under the terms of the GNU General Public License as published by 154c61c93dSmrg# the Free Software Foundation; either version 2 of the License, or 164c61c93dSmrg# (at your option) any later version. 174c61c93dSmrg# 184c61c93dSmrg# This program is distributed in the hope that it will be useful, 194c61c93dSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 204c61c93dSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 214c61c93dSmrg# GNU General Public License for more details. 224c61c93dSmrg# 234c61c93dSmrg# You should have received a copy of the GNU General Public License 244c61c93dSmrg# along with this program; if not, write to the Free Software 254c61c93dSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 264c61c93dSmrg# 02110-1301, USA. 274c61c93dSmrg# 284c61c93dSmrg# As a special exception to the GNU General Public License, if you 294c61c93dSmrg# distribute this file as part of a program that contains a 304c61c93dSmrg# configuration script generated by Autoconf, you may include it under 314c61c93dSmrg# the same distribution terms that you use for the rest of that program. 324c61c93dSmrg 334c61c93dSmrg 344c61c93dSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 35d7ffce2aSmrg# diff and a properly formatted GNU ChangeLog entry. 364c61c93dSmrg# 374c61c93dSmrg# Configuration subroutine to validate and canonicalize a configuration type. 384c61c93dSmrg# Supply the specified configuration type as an argument. 394c61c93dSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 404c61c93dSmrg# Otherwise, we print the canonical config type on stdout and succeed. 414c61c93dSmrg 42d7ffce2aSmrg# You can get the latest version of this script from: 43d7ffce2aSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44d7ffce2aSmrg 454c61c93dSmrg# This file is supposed to be the same for all GNU packages 464c61c93dSmrg# and recognize all the CPU types, system types and aliases 474c61c93dSmrg# that are meaningful with *any* GNU software. 484c61c93dSmrg# Each package is responsible for reporting which valid configurations 494c61c93dSmrg# it does not support. The user should be able to distinguish 504c61c93dSmrg# a failure to support a valid configuration from a meaningless 514c61c93dSmrg# configuration. 524c61c93dSmrg 534c61c93dSmrg# The goal of this file is to map all the various variations of a given 544c61c93dSmrg# machine specification into a single specification in the form: 554c61c93dSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 564c61c93dSmrg# or in some cases, the newer four-part form: 574c61c93dSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 584c61c93dSmrg# It is wrong to echo any other type of specification. 594c61c93dSmrg 604c61c93dSmrgme=`echo "$0" | sed -e 's,.*/,,'` 614c61c93dSmrg 624c61c93dSmrgusage="\ 634c61c93dSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 644c61c93dSmrg $0 [OPTION] ALIAS 654c61c93dSmrg 664c61c93dSmrgCanonicalize a configuration name. 674c61c93dSmrg 684c61c93dSmrgOperation modes: 694c61c93dSmrg -h, --help print this help, then exit 704c61c93dSmrg -t, --time-stamp print date of last modification, then exit 714c61c93dSmrg -v, --version print version number, then exit 724c61c93dSmrg 734c61c93dSmrgReport bugs and patches to <config-patches@gnu.org>." 744c61c93dSmrg 754c61c93dSmrgversion="\ 764c61c93dSmrgGNU config.sub ($timestamp) 774c61c93dSmrg 78d7ffce2aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 79d7ffce2aSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 80d7ffce2aSmrgSoftware Foundation, Inc. 814c61c93dSmrg 824c61c93dSmrgThis is free software; see the source for copying conditions. There is NO 834c61c93dSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 844c61c93dSmrg 854c61c93dSmrghelp=" 864c61c93dSmrgTry \`$me --help' for more information." 874c61c93dSmrg 884c61c93dSmrg# Parse command line 894c61c93dSmrgwhile test $# -gt 0 ; do 904c61c93dSmrg case $1 in 914c61c93dSmrg --time-stamp | --time* | -t ) 924c61c93dSmrg echo "$timestamp" ; exit ;; 934c61c93dSmrg --version | -v ) 944c61c93dSmrg echo "$version" ; exit ;; 954c61c93dSmrg --help | --h* | -h ) 964c61c93dSmrg echo "$usage"; exit ;; 974c61c93dSmrg -- ) # Stop option processing 984c61c93dSmrg shift; break ;; 994c61c93dSmrg - ) # Use stdin as input. 1004c61c93dSmrg break ;; 1014c61c93dSmrg -* ) 1024c61c93dSmrg echo "$me: invalid option $1$help" 1034c61c93dSmrg exit 1 ;; 1044c61c93dSmrg 1054c61c93dSmrg *local*) 1064c61c93dSmrg # First pass through any local machine types. 1074c61c93dSmrg echo $1 1084c61c93dSmrg exit ;; 1094c61c93dSmrg 1104c61c93dSmrg * ) 1114c61c93dSmrg break ;; 1124c61c93dSmrg esac 1134c61c93dSmrgdone 1144c61c93dSmrg 1154c61c93dSmrgcase $# in 1164c61c93dSmrg 0) echo "$me: missing argument$help" >&2 1174c61c93dSmrg exit 1;; 1184c61c93dSmrg 1) ;; 1194c61c93dSmrg *) echo "$me: too many arguments$help" >&2 1204c61c93dSmrg exit 1;; 1214c61c93dSmrgesac 1224c61c93dSmrg 1234c61c93dSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1244c61c93dSmrg# Here we must recognize all the valid KERNEL-OS combinations. 1254c61c93dSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1264c61c93dSmrgcase $maybe_os in 127d7ffce2aSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128d7ffce2aSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129d7ffce2aSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 1304c61c93dSmrg kopensolaris*-gnu* | \ 1314c61c93dSmrg storm-chaos* | os2-emx* | rtmk-nova*) 1324c61c93dSmrg os=-$maybe_os 1334c61c93dSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1344c61c93dSmrg ;; 1354c61c93dSmrg *) 1364c61c93dSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1374c61c93dSmrg if [ $basic_machine != $1 ] 1384c61c93dSmrg then os=`echo $1 | sed 's/.*-/-/'` 1394c61c93dSmrg else os=; fi 1404c61c93dSmrg ;; 1414c61c93dSmrgesac 1424c61c93dSmrg 1434c61c93dSmrg### Let's recognize common machines as not being operating systems so 1444c61c93dSmrg### that things like config.sub decstation-3100 work. We also 1454c61c93dSmrg### recognize some manufacturers as not being operating systems, so we 1464c61c93dSmrg### can provide default operating systems below. 1474c61c93dSmrgcase $os in 1484c61c93dSmrg -sun*os*) 1494c61c93dSmrg # Prevent following clause from handling this invalid input. 1504c61c93dSmrg ;; 1514c61c93dSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1524c61c93dSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1534c61c93dSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1544c61c93dSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1554c61c93dSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1564c61c93dSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157d7ffce2aSmrg -apple | -axis | -knuth | -cray | -microblaze) 1584c61c93dSmrg os= 1594c61c93dSmrg basic_machine=$1 1604c61c93dSmrg ;; 161d7ffce2aSmrg -bluegene*) 162d7ffce2aSmrg os=-cnk 163d7ffce2aSmrg ;; 1644c61c93dSmrg -sim | -cisco | -oki | -wec | -winbond) 1654c61c93dSmrg os= 1664c61c93dSmrg basic_machine=$1 1674c61c93dSmrg ;; 1684c61c93dSmrg -scout) 1694c61c93dSmrg ;; 1704c61c93dSmrg -wrs) 1714c61c93dSmrg os=-vxworks 1724c61c93dSmrg basic_machine=$1 1734c61c93dSmrg ;; 1744c61c93dSmrg -chorusos*) 1754c61c93dSmrg os=-chorusos 1764c61c93dSmrg basic_machine=$1 1774c61c93dSmrg ;; 1784c61c93dSmrg -chorusrdb) 1794c61c93dSmrg os=-chorusrdb 1804c61c93dSmrg basic_machine=$1 1814c61c93dSmrg ;; 1824c61c93dSmrg -hiux*) 1834c61c93dSmrg os=-hiuxwe2 1844c61c93dSmrg ;; 1854c61c93dSmrg -sco6) 1864c61c93dSmrg os=-sco5v6 1874c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1884c61c93dSmrg ;; 1894c61c93dSmrg -sco5) 1904c61c93dSmrg os=-sco3.2v5 1914c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1924c61c93dSmrg ;; 1934c61c93dSmrg -sco4) 1944c61c93dSmrg os=-sco3.2v4 1954c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1964c61c93dSmrg ;; 1974c61c93dSmrg -sco3.2.[4-9]*) 1984c61c93dSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1994c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2004c61c93dSmrg ;; 2014c61c93dSmrg -sco3.2v[4-9]*) 2024c61c93dSmrg # Don't forget version if it is 3.2v4 or newer. 2034c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2044c61c93dSmrg ;; 2054c61c93dSmrg -sco5v6*) 2064c61c93dSmrg # Don't forget version if it is 3.2v4 or newer. 2074c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2084c61c93dSmrg ;; 2094c61c93dSmrg -sco*) 2104c61c93dSmrg os=-sco3.2v2 2114c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2124c61c93dSmrg ;; 2134c61c93dSmrg -udk*) 2144c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2154c61c93dSmrg ;; 2164c61c93dSmrg -isc) 2174c61c93dSmrg os=-isc2.2 2184c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2194c61c93dSmrg ;; 2204c61c93dSmrg -clix*) 2214c61c93dSmrg basic_machine=clipper-intergraph 2224c61c93dSmrg ;; 2234c61c93dSmrg -isc*) 2244c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2254c61c93dSmrg ;; 2264c61c93dSmrg -lynx*) 2274c61c93dSmrg os=-lynxos 2284c61c93dSmrg ;; 2294c61c93dSmrg -ptx*) 2304c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2314c61c93dSmrg ;; 2324c61c93dSmrg -windowsnt*) 2334c61c93dSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2344c61c93dSmrg ;; 2354c61c93dSmrg -psos*) 2364c61c93dSmrg os=-psos 2374c61c93dSmrg ;; 2384c61c93dSmrg -mint | -mint[0-9]*) 2394c61c93dSmrg basic_machine=m68k-atari 2404c61c93dSmrg os=-mint 2414c61c93dSmrg ;; 2424c61c93dSmrgesac 2434c61c93dSmrg 2444c61c93dSmrg# Decode aliases for certain CPU-COMPANY combinations. 2454c61c93dSmrgcase $basic_machine in 2464c61c93dSmrg # Recognize the basic CPU types without company name. 2474c61c93dSmrg # Some are omitted here because they have special meanings below. 2484c61c93dSmrg 1750a | 580 \ 2494c61c93dSmrg | a29k \ 2504c61c93dSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2514c61c93dSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2524c61c93dSmrg | am33_2.0 \ 2534c61c93dSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2544c61c93dSmrg | bfin \ 2554c61c93dSmrg | c4x | clipper \ 2564c61c93dSmrg | d10v | d30v | dlx | dsp16xx \ 2574c61c93dSmrg | fido | fr30 | frv \ 2584c61c93dSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2594c61c93dSmrg | i370 | i860 | i960 | ia64 \ 2604c61c93dSmrg | ip2k | iq2000 \ 2614c61c93dSmrg | lm32 \ 2624c61c93dSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2634c61c93dSmrg | maxq | mb | microblaze | mcore | mep | metag \ 2644c61c93dSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2654c61c93dSmrg | mips16 \ 2664c61c93dSmrg | mips64 | mips64el \ 2674c61c93dSmrg | mips64octeon | mips64octeonel \ 2684c61c93dSmrg | mips64orion | mips64orionel \ 2694c61c93dSmrg | mips64r5900 | mips64r5900el \ 2704c61c93dSmrg | mips64vr | mips64vrel \ 2714c61c93dSmrg | mips64vr4100 | mips64vr4100el \ 2724c61c93dSmrg | mips64vr4300 | mips64vr4300el \ 2734c61c93dSmrg | mips64vr5000 | mips64vr5000el \ 2744c61c93dSmrg | mips64vr5900 | mips64vr5900el \ 2754c61c93dSmrg | mipsisa32 | mipsisa32el \ 2764c61c93dSmrg | mipsisa32r2 | mipsisa32r2el \ 2774c61c93dSmrg | mipsisa64 | mipsisa64el \ 2784c61c93dSmrg | mipsisa64r2 | mipsisa64r2el \ 2794c61c93dSmrg | mipsisa64sb1 | mipsisa64sb1el \ 2804c61c93dSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 2814c61c93dSmrg | mipstx39 | mipstx39el \ 2824c61c93dSmrg | mn10200 | mn10300 \ 2834c61c93dSmrg | moxie \ 2844c61c93dSmrg | mt \ 2854c61c93dSmrg | msp430 \ 286d7ffce2aSmrg | nds32 | nds32le | nds32be \ 2874c61c93dSmrg | nios | nios2 \ 2884c61c93dSmrg | ns16k | ns32k \ 2894c61c93dSmrg | or32 \ 2904c61c93dSmrg | pdp10 | pdp11 | pj | pjl \ 2914c61c93dSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2924c61c93dSmrg | pyramid \ 293d7ffce2aSmrg | rx \ 2944c61c93dSmrg | score \ 2954c61c93dSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2964c61c93dSmrg | sh64 | sh64le \ 2974c61c93dSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2984c61c93dSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2994c61c93dSmrg | spu | strongarm \ 300d7ffce2aSmrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 301d7ffce2aSmrg | ubicom32 \ 3024c61c93dSmrg | v850 | v850e \ 3034c61c93dSmrg | we32k \ 3044c61c93dSmrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 3054c61c93dSmrg | z8k | z80) 3064c61c93dSmrg basic_machine=$basic_machine-unknown 3074c61c93dSmrg ;; 308d7ffce2aSmrg c54x) 309d7ffce2aSmrg basic_machine=tic54x-unknown 310d7ffce2aSmrg ;; 311d7ffce2aSmrg c55x) 312d7ffce2aSmrg basic_machine=tic55x-unknown 313d7ffce2aSmrg ;; 314d7ffce2aSmrg c6x) 315d7ffce2aSmrg basic_machine=tic6x-unknown 316d7ffce2aSmrg ;; 317d7ffce2aSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 3184c61c93dSmrg # Motorola 68HC11/12. 3194c61c93dSmrg basic_machine=$basic_machine-unknown 3204c61c93dSmrg os=-none 3214c61c93dSmrg ;; 3224c61c93dSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3234c61c93dSmrg ;; 3244c61c93dSmrg ms1) 3254c61c93dSmrg basic_machine=mt-unknown 3264c61c93dSmrg ;; 3274c61c93dSmrg 3284c61c93dSmrg # We use `pc' rather than `unknown' 3294c61c93dSmrg # because (1) that's what they normally are, and 3304c61c93dSmrg # (2) the word "unknown" tends to confuse beginning users. 3314c61c93dSmrg i*86 | x86_64) 3324c61c93dSmrg basic_machine=$basic_machine-pc 3334c61c93dSmrg ;; 3344c61c93dSmrg # Object if more than one company name word. 3354c61c93dSmrg *-*-*) 3364c61c93dSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3374c61c93dSmrg exit 1 3384c61c93dSmrg ;; 3394c61c93dSmrg # Recognize the basic CPU types with company name. 3404c61c93dSmrg 580-* \ 3414c61c93dSmrg | a29k-* \ 3424c61c93dSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3434c61c93dSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3444c61c93dSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3454c61c93dSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3464c61c93dSmrg | avr-* | avr32-* \ 3474c61c93dSmrg | bfin-* | bs2000-* \ 348d7ffce2aSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3494c61c93dSmrg | clipper-* | craynv-* | cydra-* \ 3504c61c93dSmrg | d10v-* | d30v-* | dlx-* \ 3514c61c93dSmrg | elxsi-* \ 3524c61c93dSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3534c61c93dSmrg | h8300-* | h8500-* \ 3544c61c93dSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3554c61c93dSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3564c61c93dSmrg | ip2k-* | iq2000-* \ 3574c61c93dSmrg | lm32-* \ 3584c61c93dSmrg | m32c-* | m32r-* | m32rle-* \ 3594c61c93dSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 360d7ffce2aSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3614c61c93dSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3624c61c93dSmrg | mips16-* \ 3634c61c93dSmrg | mips64-* | mips64el-* \ 3644c61c93dSmrg | mips64octeon-* | mips64octeonel-* \ 3654c61c93dSmrg | mips64orion-* | mips64orionel-* \ 3664c61c93dSmrg | mips64r5900-* | mips64r5900el-* \ 3674c61c93dSmrg | mips64vr-* | mips64vrel-* \ 3684c61c93dSmrg | mips64vr4100-* | mips64vr4100el-* \ 3694c61c93dSmrg | mips64vr4300-* | mips64vr4300el-* \ 3704c61c93dSmrg | mips64vr5000-* | mips64vr5000el-* \ 3714c61c93dSmrg | mips64vr5900-* | mips64vr5900el-* \ 3724c61c93dSmrg | mipsisa32-* | mipsisa32el-* \ 3734c61c93dSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 3744c61c93dSmrg | mipsisa64-* | mipsisa64el-* \ 3754c61c93dSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 3764c61c93dSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3774c61c93dSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3784c61c93dSmrg | mipstx39-* | mipstx39el-* \ 3794c61c93dSmrg | mmix-* \ 3804c61c93dSmrg | mt-* \ 3814c61c93dSmrg | msp430-* \ 382d7ffce2aSmrg | nds32-* | nds32le-* | nds32be-* \ 3834c61c93dSmrg | nios-* | nios2-* \ 3844c61c93dSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 3854c61c93dSmrg | orion-* \ 3864c61c93dSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3874c61c93dSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3884c61c93dSmrg | pyramid-* \ 389d7ffce2aSmrg | romp-* | rs6000-* | rx-* \ 3904c61c93dSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3914c61c93dSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3924c61c93dSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3934c61c93dSmrg | sparclite-* \ 3944c61c93dSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3954c61c93dSmrg | tahoe-* | thumb-* \ 396d7ffce2aSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 397d7ffce2aSmrg | tile-* | tilegx-* \ 3984c61c93dSmrg | tron-* \ 399d7ffce2aSmrg | ubicom32-* \ 4004c61c93dSmrg | v850-* | v850e-* | vax-* \ 4014c61c93dSmrg | we32k-* \ 4024c61c93dSmrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 4034c61c93dSmrg | xstormy16-* | xtensa*-* \ 4044c61c93dSmrg | ymp-* \ 4054c61c93dSmrg | z8k-* | z80-*) 4064c61c93dSmrg ;; 4074c61c93dSmrg # Recognize the basic CPU types without company name, with glob match. 4084c61c93dSmrg xtensa*) 4094c61c93dSmrg basic_machine=$basic_machine-unknown 4104c61c93dSmrg ;; 4114c61c93dSmrg # Recognize the various machine names and aliases which stand 4124c61c93dSmrg # for a CPU type and a company and sometimes even an OS. 4134c61c93dSmrg 386bsd) 4144c61c93dSmrg basic_machine=i386-unknown 4154c61c93dSmrg os=-bsd 4164c61c93dSmrg ;; 4174c61c93dSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4184c61c93dSmrg basic_machine=m68000-att 4194c61c93dSmrg ;; 4204c61c93dSmrg 3b*) 4214c61c93dSmrg basic_machine=we32k-att 4224c61c93dSmrg ;; 4234c61c93dSmrg a29khif) 4244c61c93dSmrg basic_machine=a29k-amd 4254c61c93dSmrg os=-udi 4264c61c93dSmrg ;; 4274c61c93dSmrg abacus) 4284c61c93dSmrg basic_machine=abacus-unknown 4294c61c93dSmrg ;; 4304c61c93dSmrg adobe68k) 4314c61c93dSmrg basic_machine=m68010-adobe 4324c61c93dSmrg os=-scout 4334c61c93dSmrg ;; 4344c61c93dSmrg alliant | fx80) 4354c61c93dSmrg basic_machine=fx80-alliant 4364c61c93dSmrg ;; 4374c61c93dSmrg altos | altos3068) 4384c61c93dSmrg basic_machine=m68k-altos 4394c61c93dSmrg ;; 4404c61c93dSmrg am29k) 4414c61c93dSmrg basic_machine=a29k-none 4424c61c93dSmrg os=-bsd 4434c61c93dSmrg ;; 4444c61c93dSmrg amd64) 4454c61c93dSmrg basic_machine=x86_64-pc 4464c61c93dSmrg ;; 4474c61c93dSmrg amd64-*) 4484c61c93dSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4494c61c93dSmrg ;; 4504c61c93dSmrg amdahl) 4514c61c93dSmrg basic_machine=580-amdahl 4524c61c93dSmrg os=-sysv 4534c61c93dSmrg ;; 4544c61c93dSmrg amiga | amiga-*) 4554c61c93dSmrg basic_machine=m68k-unknown 4564c61c93dSmrg ;; 4574c61c93dSmrg amigaos | amigados) 4584c61c93dSmrg basic_machine=m68k-unknown 4594c61c93dSmrg os=-amigaos 4604c61c93dSmrg ;; 4614c61c93dSmrg amigaunix | amix) 4624c61c93dSmrg basic_machine=m68k-unknown 4634c61c93dSmrg os=-sysv4 4644c61c93dSmrg ;; 4654c61c93dSmrg apollo68) 4664c61c93dSmrg basic_machine=m68k-apollo 4674c61c93dSmrg os=-sysv 4684c61c93dSmrg ;; 4694c61c93dSmrg apollo68bsd) 4704c61c93dSmrg basic_machine=m68k-apollo 4714c61c93dSmrg os=-bsd 4724c61c93dSmrg ;; 4734c61c93dSmrg aros) 4744c61c93dSmrg basic_machine=i386-pc 4754c61c93dSmrg os=-aros 4764c61c93dSmrg ;; 4774c61c93dSmrg aux) 4784c61c93dSmrg basic_machine=m68k-apple 4794c61c93dSmrg os=-aux 4804c61c93dSmrg ;; 4814c61c93dSmrg balance) 4824c61c93dSmrg basic_machine=ns32k-sequent 4834c61c93dSmrg os=-dynix 4844c61c93dSmrg ;; 4854c61c93dSmrg blackfin) 4864c61c93dSmrg basic_machine=bfin-unknown 4874c61c93dSmrg os=-linux 4884c61c93dSmrg ;; 4894c61c93dSmrg blackfin-*) 4904c61c93dSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4914c61c93dSmrg os=-linux 4924c61c93dSmrg ;; 493d7ffce2aSmrg bluegene*) 494d7ffce2aSmrg basic_machine=powerpc-ibm 495d7ffce2aSmrg os=-cnk 496d7ffce2aSmrg ;; 497d7ffce2aSmrg c54x-*) 498d7ffce2aSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 499d7ffce2aSmrg ;; 500d7ffce2aSmrg c55x-*) 501d7ffce2aSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 502d7ffce2aSmrg ;; 503d7ffce2aSmrg c6x-*) 504d7ffce2aSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 505d7ffce2aSmrg ;; 5064c61c93dSmrg c90) 5074c61c93dSmrg basic_machine=c90-cray 5084c61c93dSmrg os=-unicos 5094c61c93dSmrg ;; 5104c61c93dSmrg cegcc) 5114c61c93dSmrg basic_machine=arm-unknown 5124c61c93dSmrg os=-cegcc 5134c61c93dSmrg ;; 5144c61c93dSmrg convex-c1) 5154c61c93dSmrg basic_machine=c1-convex 5164c61c93dSmrg os=-bsd 5174c61c93dSmrg ;; 5184c61c93dSmrg convex-c2) 5194c61c93dSmrg basic_machine=c2-convex 5204c61c93dSmrg os=-bsd 5214c61c93dSmrg ;; 5224c61c93dSmrg convex-c32) 5234c61c93dSmrg basic_machine=c32-convex 5244c61c93dSmrg os=-bsd 5254c61c93dSmrg ;; 5264c61c93dSmrg convex-c34) 5274c61c93dSmrg basic_machine=c34-convex 5284c61c93dSmrg os=-bsd 5294c61c93dSmrg ;; 5304c61c93dSmrg convex-c38) 5314c61c93dSmrg basic_machine=c38-convex 5324c61c93dSmrg os=-bsd 5334c61c93dSmrg ;; 5344c61c93dSmrg cray | j90) 5354c61c93dSmrg basic_machine=j90-cray 5364c61c93dSmrg os=-unicos 5374c61c93dSmrg ;; 5384c61c93dSmrg craynv) 5394c61c93dSmrg basic_machine=craynv-cray 5404c61c93dSmrg os=-unicosmp 5414c61c93dSmrg ;; 5424c61c93dSmrg cr16) 5434c61c93dSmrg basic_machine=cr16-unknown 5444c61c93dSmrg os=-elf 5454c61c93dSmrg ;; 5464c61c93dSmrg crds | unos) 5474c61c93dSmrg basic_machine=m68k-crds 5484c61c93dSmrg ;; 5494c61c93dSmrg crisv32 | crisv32-* | etraxfs*) 5504c61c93dSmrg basic_machine=crisv32-axis 5514c61c93dSmrg ;; 5524c61c93dSmrg cris | cris-* | etrax*) 5534c61c93dSmrg basic_machine=cris-axis 5544c61c93dSmrg ;; 5554c61c93dSmrg crx) 5564c61c93dSmrg basic_machine=crx-unknown 5574c61c93dSmrg os=-elf 5584c61c93dSmrg ;; 5594c61c93dSmrg da30 | da30-*) 5604c61c93dSmrg basic_machine=m68k-da30 5614c61c93dSmrg ;; 5624c61c93dSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5634c61c93dSmrg basic_machine=mips-dec 5644c61c93dSmrg ;; 5654c61c93dSmrg decsystem10* | dec10*) 5664c61c93dSmrg basic_machine=pdp10-dec 5674c61c93dSmrg os=-tops10 5684c61c93dSmrg ;; 5694c61c93dSmrg decsystem20* | dec20*) 5704c61c93dSmrg basic_machine=pdp10-dec 5714c61c93dSmrg os=-tops20 5724c61c93dSmrg ;; 5734c61c93dSmrg delta | 3300 | motorola-3300 | motorola-delta \ 5744c61c93dSmrg | 3300-motorola | delta-motorola) 5754c61c93dSmrg basic_machine=m68k-motorola 5764c61c93dSmrg ;; 5774c61c93dSmrg delta88) 5784c61c93dSmrg basic_machine=m88k-motorola 5794c61c93dSmrg os=-sysv3 5804c61c93dSmrg ;; 5814c61c93dSmrg dicos) 5824c61c93dSmrg basic_machine=i686-pc 5834c61c93dSmrg os=-dicos 5844c61c93dSmrg ;; 5854c61c93dSmrg djgpp) 5864c61c93dSmrg basic_machine=i586-pc 5874c61c93dSmrg os=-msdosdjgpp 5884c61c93dSmrg ;; 5894c61c93dSmrg dpx20 | dpx20-*) 5904c61c93dSmrg basic_machine=rs6000-bull 5914c61c93dSmrg os=-bosx 5924c61c93dSmrg ;; 5934c61c93dSmrg dpx2* | dpx2*-bull) 5944c61c93dSmrg basic_machine=m68k-bull 5954c61c93dSmrg os=-sysv3 5964c61c93dSmrg ;; 5974c61c93dSmrg ebmon29k) 5984c61c93dSmrg basic_machine=a29k-amd 5994c61c93dSmrg os=-ebmon 6004c61c93dSmrg ;; 6014c61c93dSmrg elxsi) 6024c61c93dSmrg basic_machine=elxsi-elxsi 6034c61c93dSmrg os=-bsd 6044c61c93dSmrg ;; 6054c61c93dSmrg encore | umax | mmax) 6064c61c93dSmrg basic_machine=ns32k-encore 6074c61c93dSmrg ;; 6084c61c93dSmrg es1800 | OSE68k | ose68k | ose | OSE) 6094c61c93dSmrg basic_machine=m68k-ericsson 6104c61c93dSmrg os=-ose 6114c61c93dSmrg ;; 6124c61c93dSmrg fx2800) 6134c61c93dSmrg basic_machine=i860-alliant 6144c61c93dSmrg ;; 6154c61c93dSmrg genix) 6164c61c93dSmrg basic_machine=ns32k-ns 6174c61c93dSmrg ;; 6184c61c93dSmrg gmicro) 6194c61c93dSmrg basic_machine=tron-gmicro 6204c61c93dSmrg os=-sysv 6214c61c93dSmrg ;; 6224c61c93dSmrg go32) 6234c61c93dSmrg basic_machine=i386-pc 6244c61c93dSmrg os=-go32 6254c61c93dSmrg ;; 6264c61c93dSmrg h3050r* | hiux*) 6274c61c93dSmrg basic_machine=hppa1.1-hitachi 6284c61c93dSmrg os=-hiuxwe2 6294c61c93dSmrg ;; 6304c61c93dSmrg h8300hms) 6314c61c93dSmrg basic_machine=h8300-hitachi 6324c61c93dSmrg os=-hms 6334c61c93dSmrg ;; 6344c61c93dSmrg h8300xray) 6354c61c93dSmrg basic_machine=h8300-hitachi 6364c61c93dSmrg os=-xray 6374c61c93dSmrg ;; 6384c61c93dSmrg h8500hms) 6394c61c93dSmrg basic_machine=h8500-hitachi 6404c61c93dSmrg os=-hms 6414c61c93dSmrg ;; 6424c61c93dSmrg harris) 6434c61c93dSmrg basic_machine=m88k-harris 6444c61c93dSmrg os=-sysv3 6454c61c93dSmrg ;; 6464c61c93dSmrg hp300-*) 6474c61c93dSmrg basic_machine=m68k-hp 6484c61c93dSmrg ;; 6494c61c93dSmrg hp300bsd) 6504c61c93dSmrg basic_machine=m68k-hp 6514c61c93dSmrg os=-bsd 6524c61c93dSmrg ;; 6534c61c93dSmrg hp300hpux) 6544c61c93dSmrg basic_machine=m68k-hp 6554c61c93dSmrg os=-hpux 6564c61c93dSmrg ;; 6574c61c93dSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6584c61c93dSmrg basic_machine=hppa1.0-hp 6594c61c93dSmrg ;; 6604c61c93dSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6614c61c93dSmrg basic_machine=m68000-hp 6624c61c93dSmrg ;; 6634c61c93dSmrg hp9k3[2-9][0-9]) 6644c61c93dSmrg basic_machine=m68k-hp 6654c61c93dSmrg ;; 6664c61c93dSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6674c61c93dSmrg basic_machine=hppa1.0-hp 6684c61c93dSmrg ;; 6694c61c93dSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6704c61c93dSmrg basic_machine=hppa1.1-hp 6714c61c93dSmrg ;; 6724c61c93dSmrg hp9k78[0-9] | hp78[0-9]) 6734c61c93dSmrg # FIXME: really hppa2.0-hp 6744c61c93dSmrg basic_machine=hppa1.1-hp 6754c61c93dSmrg ;; 6764c61c93dSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6774c61c93dSmrg # FIXME: really hppa2.0-hp 6784c61c93dSmrg basic_machine=hppa1.1-hp 6794c61c93dSmrg ;; 6804c61c93dSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6814c61c93dSmrg basic_machine=hppa1.1-hp 6824c61c93dSmrg ;; 6834c61c93dSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6844c61c93dSmrg basic_machine=hppa1.0-hp 6854c61c93dSmrg ;; 6864c61c93dSmrg hppa-next) 6874c61c93dSmrg os=-nextstep3 6884c61c93dSmrg ;; 6894c61c93dSmrg hppaosf) 6904c61c93dSmrg basic_machine=hppa1.1-hp 6914c61c93dSmrg os=-osf 6924c61c93dSmrg ;; 6934c61c93dSmrg hppro) 6944c61c93dSmrg basic_machine=hppa1.1-hp 6954c61c93dSmrg os=-proelf 6964c61c93dSmrg ;; 6974c61c93dSmrg i370-ibm* | ibm*) 6984c61c93dSmrg basic_machine=i370-ibm 6994c61c93dSmrg ;; 7004c61c93dSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 7014c61c93dSmrg i*86v32) 7024c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7034c61c93dSmrg os=-sysv32 7044c61c93dSmrg ;; 7054c61c93dSmrg i*86v4*) 7064c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7074c61c93dSmrg os=-sysv4 7084c61c93dSmrg ;; 7094c61c93dSmrg i*86v) 7104c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7114c61c93dSmrg os=-sysv 7124c61c93dSmrg ;; 7134c61c93dSmrg i*86sol2) 7144c61c93dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7154c61c93dSmrg os=-solaris2 7164c61c93dSmrg ;; 7174c61c93dSmrg i386mach) 7184c61c93dSmrg basic_machine=i386-mach 7194c61c93dSmrg os=-mach 7204c61c93dSmrg ;; 7214c61c93dSmrg i386-vsta | vsta) 7224c61c93dSmrg basic_machine=i386-unknown 7234c61c93dSmrg os=-vsta 7244c61c93dSmrg ;; 7254c61c93dSmrg iris | iris4d) 7264c61c93dSmrg basic_machine=mips-sgi 7274c61c93dSmrg case $os in 7284c61c93dSmrg -irix*) 7294c61c93dSmrg ;; 7304c61c93dSmrg *) 7314c61c93dSmrg os=-irix4 7324c61c93dSmrg ;; 7334c61c93dSmrg esac 7344c61c93dSmrg ;; 7354c61c93dSmrg isi68 | isi) 7364c61c93dSmrg basic_machine=m68k-isi 7374c61c93dSmrg os=-sysv 7384c61c93dSmrg ;; 7394c61c93dSmrg m68knommu) 7404c61c93dSmrg basic_machine=m68k-unknown 7414c61c93dSmrg os=-linux 7424c61c93dSmrg ;; 7434c61c93dSmrg m68knommu-*) 7444c61c93dSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7454c61c93dSmrg os=-linux 7464c61c93dSmrg ;; 7474c61c93dSmrg m88k-omron*) 7484c61c93dSmrg basic_machine=m88k-omron 7494c61c93dSmrg ;; 7504c61c93dSmrg magnum | m3230) 7514c61c93dSmrg basic_machine=mips-mips 7524c61c93dSmrg os=-sysv 7534c61c93dSmrg ;; 7544c61c93dSmrg merlin) 7554c61c93dSmrg basic_machine=ns32k-utek 7564c61c93dSmrg os=-sysv 7574c61c93dSmrg ;; 758d7ffce2aSmrg microblaze) 759d7ffce2aSmrg basic_machine=microblaze-xilinx 760d7ffce2aSmrg ;; 7614c61c93dSmrg mingw32) 7624c61c93dSmrg basic_machine=i386-pc 7634c61c93dSmrg os=-mingw32 7644c61c93dSmrg ;; 7654c61c93dSmrg mingw32ce) 7664c61c93dSmrg basic_machine=arm-unknown 7674c61c93dSmrg os=-mingw32ce 7684c61c93dSmrg ;; 7694c61c93dSmrg miniframe) 7704c61c93dSmrg basic_machine=m68000-convergent 7714c61c93dSmrg ;; 7724c61c93dSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7734c61c93dSmrg basic_machine=m68k-atari 7744c61c93dSmrg os=-mint 7754c61c93dSmrg ;; 7764c61c93dSmrg mips3*-*) 7774c61c93dSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7784c61c93dSmrg ;; 7794c61c93dSmrg mips3*) 7804c61c93dSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7814c61c93dSmrg ;; 7824c61c93dSmrg monitor) 7834c61c93dSmrg basic_machine=m68k-rom68k 7844c61c93dSmrg os=-coff 7854c61c93dSmrg ;; 7864c61c93dSmrg morphos) 7874c61c93dSmrg basic_machine=powerpc-unknown 7884c61c93dSmrg os=-morphos 7894c61c93dSmrg ;; 7904c61c93dSmrg msdos) 7914c61c93dSmrg basic_machine=i386-pc 7924c61c93dSmrg os=-msdos 7934c61c93dSmrg ;; 7944c61c93dSmrg ms1-*) 7954c61c93dSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7964c61c93dSmrg ;; 7974c61c93dSmrg mvs) 7984c61c93dSmrg basic_machine=i370-ibm 7994c61c93dSmrg os=-mvs 8004c61c93dSmrg ;; 8014c61c93dSmrg ncr3000) 8024c61c93dSmrg basic_machine=i486-ncr 8034c61c93dSmrg os=-sysv4 8044c61c93dSmrg ;; 8054c61c93dSmrg netbsd386) 8064c61c93dSmrg basic_machine=i386-unknown 8074c61c93dSmrg os=-netbsd 8084c61c93dSmrg ;; 8094c61c93dSmrg netwinder) 8104c61c93dSmrg basic_machine=armv4l-rebel 8114c61c93dSmrg os=-linux 8124c61c93dSmrg ;; 8134c61c93dSmrg news | news700 | news800 | news900) 8144c61c93dSmrg basic_machine=m68k-sony 8154c61c93dSmrg os=-newsos 8164c61c93dSmrg ;; 8174c61c93dSmrg news1000) 8184c61c93dSmrg basic_machine=m68030-sony 8194c61c93dSmrg os=-newsos 8204c61c93dSmrg ;; 8214c61c93dSmrg news-3600 | risc-news) 8224c61c93dSmrg basic_machine=mips-sony 8234c61c93dSmrg os=-newsos 8244c61c93dSmrg ;; 8254c61c93dSmrg necv70) 8264c61c93dSmrg basic_machine=v70-nec 8274c61c93dSmrg os=-sysv 8284c61c93dSmrg ;; 8294c61c93dSmrg next | m*-next ) 8304c61c93dSmrg basic_machine=m68k-next 8314c61c93dSmrg case $os in 8324c61c93dSmrg -nextstep* ) 8334c61c93dSmrg ;; 8344c61c93dSmrg -ns2*) 8354c61c93dSmrg os=-nextstep2 8364c61c93dSmrg ;; 8374c61c93dSmrg *) 8384c61c93dSmrg os=-nextstep3 8394c61c93dSmrg ;; 8404c61c93dSmrg esac 8414c61c93dSmrg ;; 8424c61c93dSmrg nh3000) 8434c61c93dSmrg basic_machine=m68k-harris 8444c61c93dSmrg os=-cxux 8454c61c93dSmrg ;; 8464c61c93dSmrg nh[45]000) 8474c61c93dSmrg basic_machine=m88k-harris 8484c61c93dSmrg os=-cxux 8494c61c93dSmrg ;; 8504c61c93dSmrg nindy960) 8514c61c93dSmrg basic_machine=i960-intel 8524c61c93dSmrg os=-nindy 8534c61c93dSmrg ;; 8544c61c93dSmrg mon960) 8554c61c93dSmrg basic_machine=i960-intel 8564c61c93dSmrg os=-mon960 8574c61c93dSmrg ;; 8584c61c93dSmrg nonstopux) 8594c61c93dSmrg basic_machine=mips-compaq 8604c61c93dSmrg os=-nonstopux 8614c61c93dSmrg ;; 8624c61c93dSmrg np1) 8634c61c93dSmrg basic_machine=np1-gould 8644c61c93dSmrg ;; 865d7ffce2aSmrg neo-tandem) 866d7ffce2aSmrg basic_machine=neo-tandem 867d7ffce2aSmrg ;; 868d7ffce2aSmrg nse-tandem) 869d7ffce2aSmrg basic_machine=nse-tandem 870d7ffce2aSmrg ;; 8714c61c93dSmrg nsr-tandem) 8724c61c93dSmrg basic_machine=nsr-tandem 8734c61c93dSmrg ;; 8744c61c93dSmrg op50n-* | op60c-*) 8754c61c93dSmrg basic_machine=hppa1.1-oki 8764c61c93dSmrg os=-proelf 8774c61c93dSmrg ;; 8784c61c93dSmrg openrisc | openrisc-*) 8794c61c93dSmrg basic_machine=or32-unknown 8804c61c93dSmrg ;; 8814c61c93dSmrg os400) 8824c61c93dSmrg basic_machine=powerpc-ibm 8834c61c93dSmrg os=-os400 8844c61c93dSmrg ;; 8854c61c93dSmrg OSE68000 | ose68000) 8864c61c93dSmrg basic_machine=m68000-ericsson 8874c61c93dSmrg os=-ose 8884c61c93dSmrg ;; 8894c61c93dSmrg os68k) 8904c61c93dSmrg basic_machine=m68k-none 8914c61c93dSmrg os=-os68k 8924c61c93dSmrg ;; 8934c61c93dSmrg pa-hitachi) 8944c61c93dSmrg basic_machine=hppa1.1-hitachi 8954c61c93dSmrg os=-hiuxwe2 8964c61c93dSmrg ;; 8974c61c93dSmrg paragon) 8984c61c93dSmrg basic_machine=i860-intel 8994c61c93dSmrg os=-osf 9004c61c93dSmrg ;; 9014c61c93dSmrg parisc) 9024c61c93dSmrg basic_machine=hppa-unknown 9034c61c93dSmrg os=-linux 9044c61c93dSmrg ;; 9054c61c93dSmrg parisc-*) 9064c61c93dSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9074c61c93dSmrg os=-linux 9084c61c93dSmrg ;; 9094c61c93dSmrg pbd) 9104c61c93dSmrg basic_machine=sparc-tti 9114c61c93dSmrg ;; 9124c61c93dSmrg pbb) 9134c61c93dSmrg basic_machine=m68k-tti 9144c61c93dSmrg ;; 9154c61c93dSmrg pc532 | pc532-*) 9164c61c93dSmrg basic_machine=ns32k-pc532 9174c61c93dSmrg ;; 9184c61c93dSmrg pc98) 9194c61c93dSmrg basic_machine=i386-pc 9204c61c93dSmrg ;; 9214c61c93dSmrg pc98-*) 9224c61c93dSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9234c61c93dSmrg ;; 9244c61c93dSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 9254c61c93dSmrg basic_machine=i586-pc 9264c61c93dSmrg ;; 9274c61c93dSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9284c61c93dSmrg basic_machine=i686-pc 9294c61c93dSmrg ;; 9304c61c93dSmrg pentiumii | pentium2 | pentiumiii | pentium3) 9314c61c93dSmrg basic_machine=i686-pc 9324c61c93dSmrg ;; 9334c61c93dSmrg pentium4) 9344c61c93dSmrg basic_machine=i786-pc 9354c61c93dSmrg ;; 9364c61c93dSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9374c61c93dSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9384c61c93dSmrg ;; 9394c61c93dSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9404c61c93dSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9414c61c93dSmrg ;; 9424c61c93dSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9434c61c93dSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9444c61c93dSmrg ;; 9454c61c93dSmrg pentium4-*) 9464c61c93dSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9474c61c93dSmrg ;; 9484c61c93dSmrg pn) 9494c61c93dSmrg basic_machine=pn-gould 9504c61c93dSmrg ;; 9514c61c93dSmrg power) basic_machine=power-ibm 9524c61c93dSmrg ;; 9534c61c93dSmrg ppc) basic_machine=powerpc-unknown 9544c61c93dSmrg ;; 9554c61c93dSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9564c61c93dSmrg ;; 9574c61c93dSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 9584c61c93dSmrg basic_machine=powerpcle-unknown 9594c61c93dSmrg ;; 9604c61c93dSmrg ppcle-* | powerpclittle-*) 9614c61c93dSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9624c61c93dSmrg ;; 9634c61c93dSmrg ppc64) basic_machine=powerpc64-unknown 9644c61c93dSmrg ;; 9654c61c93dSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9664c61c93dSmrg ;; 9674c61c93dSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9684c61c93dSmrg basic_machine=powerpc64le-unknown 9694c61c93dSmrg ;; 9704c61c93dSmrg ppc64le-* | powerpc64little-*) 9714c61c93dSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9724c61c93dSmrg ;; 9734c61c93dSmrg ps2) 9744c61c93dSmrg basic_machine=i386-ibm 9754c61c93dSmrg ;; 9764c61c93dSmrg pw32) 9774c61c93dSmrg basic_machine=i586-unknown 9784c61c93dSmrg os=-pw32 9794c61c93dSmrg ;; 9804c61c93dSmrg rdos) 9814c61c93dSmrg basic_machine=i386-pc 9824c61c93dSmrg os=-rdos 9834c61c93dSmrg ;; 9844c61c93dSmrg rom68k) 9854c61c93dSmrg basic_machine=m68k-rom68k 9864c61c93dSmrg os=-coff 9874c61c93dSmrg ;; 9884c61c93dSmrg rm[46]00) 9894c61c93dSmrg basic_machine=mips-siemens 9904c61c93dSmrg ;; 9914c61c93dSmrg rtpc | rtpc-*) 9924c61c93dSmrg basic_machine=romp-ibm 9934c61c93dSmrg ;; 9944c61c93dSmrg s390 | s390-*) 9954c61c93dSmrg basic_machine=s390-ibm 9964c61c93dSmrg ;; 9974c61c93dSmrg s390x | s390x-*) 9984c61c93dSmrg basic_machine=s390x-ibm 9994c61c93dSmrg ;; 10004c61c93dSmrg sa29200) 10014c61c93dSmrg basic_machine=a29k-amd 10024c61c93dSmrg os=-udi 10034c61c93dSmrg ;; 10044c61c93dSmrg sb1) 10054c61c93dSmrg basic_machine=mipsisa64sb1-unknown 10064c61c93dSmrg ;; 10074c61c93dSmrg sb1el) 10084c61c93dSmrg basic_machine=mipsisa64sb1el-unknown 10094c61c93dSmrg ;; 10104c61c93dSmrg sde) 10114c61c93dSmrg basic_machine=mipsisa32-sde 10124c61c93dSmrg os=-elf 10134c61c93dSmrg ;; 10144c61c93dSmrg sei) 10154c61c93dSmrg basic_machine=mips-sei 10164c61c93dSmrg os=-seiux 10174c61c93dSmrg ;; 10184c61c93dSmrg sequent) 10194c61c93dSmrg basic_machine=i386-sequent 10204c61c93dSmrg ;; 10214c61c93dSmrg sh) 10224c61c93dSmrg basic_machine=sh-hitachi 10234c61c93dSmrg os=-hms 10244c61c93dSmrg ;; 10254c61c93dSmrg sh5el) 10264c61c93dSmrg basic_machine=sh5le-unknown 10274c61c93dSmrg ;; 10284c61c93dSmrg sh64) 10294c61c93dSmrg basic_machine=sh64-unknown 10304c61c93dSmrg ;; 10314c61c93dSmrg sparclite-wrs | simso-wrs) 10324c61c93dSmrg basic_machine=sparclite-wrs 10334c61c93dSmrg os=-vxworks 10344c61c93dSmrg ;; 10354c61c93dSmrg sps7) 10364c61c93dSmrg basic_machine=m68k-bull 10374c61c93dSmrg os=-sysv2 10384c61c93dSmrg ;; 10394c61c93dSmrg spur) 10404c61c93dSmrg basic_machine=spur-unknown 10414c61c93dSmrg ;; 10424c61c93dSmrg st2000) 10434c61c93dSmrg basic_machine=m68k-tandem 10444c61c93dSmrg ;; 10454c61c93dSmrg stratus) 10464c61c93dSmrg basic_machine=i860-stratus 10474c61c93dSmrg os=-sysv4 10484c61c93dSmrg ;; 10494c61c93dSmrg sun2) 10504c61c93dSmrg basic_machine=m68000-sun 10514c61c93dSmrg ;; 10524c61c93dSmrg sun2os3) 10534c61c93dSmrg basic_machine=m68000-sun 10544c61c93dSmrg os=-sunos3 10554c61c93dSmrg ;; 10564c61c93dSmrg sun2os4) 10574c61c93dSmrg basic_machine=m68000-sun 10584c61c93dSmrg os=-sunos4 10594c61c93dSmrg ;; 10604c61c93dSmrg sun3os3) 10614c61c93dSmrg basic_machine=m68k-sun 10624c61c93dSmrg os=-sunos3 10634c61c93dSmrg ;; 10644c61c93dSmrg sun3os4) 10654c61c93dSmrg basic_machine=m68k-sun 10664c61c93dSmrg os=-sunos4 10674c61c93dSmrg ;; 10684c61c93dSmrg sun4os3) 10694c61c93dSmrg basic_machine=sparc-sun 10704c61c93dSmrg os=-sunos3 10714c61c93dSmrg ;; 10724c61c93dSmrg sun4os4) 10734c61c93dSmrg basic_machine=sparc-sun 10744c61c93dSmrg os=-sunos4 10754c61c93dSmrg ;; 10764c61c93dSmrg sun4sol2) 10774c61c93dSmrg basic_machine=sparc-sun 10784c61c93dSmrg os=-solaris2 10794c61c93dSmrg ;; 10804c61c93dSmrg sun3 | sun3-*) 10814c61c93dSmrg basic_machine=m68k-sun 10824c61c93dSmrg ;; 10834c61c93dSmrg sun4) 10844c61c93dSmrg basic_machine=sparc-sun 10854c61c93dSmrg ;; 10864c61c93dSmrg sun386 | sun386i | roadrunner) 10874c61c93dSmrg basic_machine=i386-sun 10884c61c93dSmrg ;; 10894c61c93dSmrg sv1) 10904c61c93dSmrg basic_machine=sv1-cray 10914c61c93dSmrg os=-unicos 10924c61c93dSmrg ;; 10934c61c93dSmrg symmetry) 10944c61c93dSmrg basic_machine=i386-sequent 10954c61c93dSmrg os=-dynix 10964c61c93dSmrg ;; 10974c61c93dSmrg t3e) 10984c61c93dSmrg basic_machine=alphaev5-cray 10994c61c93dSmrg os=-unicos 11004c61c93dSmrg ;; 11014c61c93dSmrg t90) 11024c61c93dSmrg basic_machine=t90-cray 11034c61c93dSmrg os=-unicos 11044c61c93dSmrg ;; 1105d7ffce2aSmrg # This must be matched before tile*. 1106d7ffce2aSmrg tilegx*) 1107d7ffce2aSmrg basic_machine=tilegx-unknown 1108d7ffce2aSmrg os=-linux-gnu 11094c61c93dSmrg ;; 11104c61c93dSmrg tile*) 11114c61c93dSmrg basic_machine=tile-unknown 11124c61c93dSmrg os=-linux-gnu 11134c61c93dSmrg ;; 11144c61c93dSmrg tx39) 11154c61c93dSmrg basic_machine=mipstx39-unknown 11164c61c93dSmrg ;; 11174c61c93dSmrg tx39el) 11184c61c93dSmrg basic_machine=mipstx39el-unknown 11194c61c93dSmrg ;; 11204c61c93dSmrg toad1) 11214c61c93dSmrg basic_machine=pdp10-xkl 11224c61c93dSmrg os=-tops20 11234c61c93dSmrg ;; 11244c61c93dSmrg tower | tower-32) 11254c61c93dSmrg basic_machine=m68k-ncr 11264c61c93dSmrg ;; 11274c61c93dSmrg tpf) 11284c61c93dSmrg basic_machine=s390x-ibm 11294c61c93dSmrg os=-tpf 11304c61c93dSmrg ;; 11314c61c93dSmrg udi29k) 11324c61c93dSmrg basic_machine=a29k-amd 11334c61c93dSmrg os=-udi 11344c61c93dSmrg ;; 11354c61c93dSmrg ultra3) 11364c61c93dSmrg basic_machine=a29k-nyu 11374c61c93dSmrg os=-sym1 11384c61c93dSmrg ;; 11394c61c93dSmrg v810 | necv810) 11404c61c93dSmrg basic_machine=v810-nec 11414c61c93dSmrg os=-none 11424c61c93dSmrg ;; 11434c61c93dSmrg vaxv) 11444c61c93dSmrg basic_machine=vax-dec 11454c61c93dSmrg os=-sysv 11464c61c93dSmrg ;; 11474c61c93dSmrg vms) 11484c61c93dSmrg basic_machine=vax-dec 11494c61c93dSmrg os=-vms 11504c61c93dSmrg ;; 11514c61c93dSmrg vpp*|vx|vx-*) 11524c61c93dSmrg basic_machine=f301-fujitsu 11534c61c93dSmrg ;; 11544c61c93dSmrg vxworks960) 11554c61c93dSmrg basic_machine=i960-wrs 11564c61c93dSmrg os=-vxworks 11574c61c93dSmrg ;; 11584c61c93dSmrg vxworks68) 11594c61c93dSmrg basic_machine=m68k-wrs 11604c61c93dSmrg os=-vxworks 11614c61c93dSmrg ;; 11624c61c93dSmrg vxworks29k) 11634c61c93dSmrg basic_machine=a29k-wrs 11644c61c93dSmrg os=-vxworks 11654c61c93dSmrg ;; 11664c61c93dSmrg w65*) 11674c61c93dSmrg basic_machine=w65-wdc 11684c61c93dSmrg os=-none 11694c61c93dSmrg ;; 11704c61c93dSmrg w89k-*) 11714c61c93dSmrg basic_machine=hppa1.1-winbond 11724c61c93dSmrg os=-proelf 11734c61c93dSmrg ;; 11744c61c93dSmrg xbox) 11754c61c93dSmrg basic_machine=i686-pc 11764c61c93dSmrg os=-mingw32 11774c61c93dSmrg ;; 11784c61c93dSmrg xps | xps100) 11794c61c93dSmrg basic_machine=xps100-honeywell 11804c61c93dSmrg ;; 11814c61c93dSmrg ymp) 11824c61c93dSmrg basic_machine=ymp-cray 11834c61c93dSmrg os=-unicos 11844c61c93dSmrg ;; 11854c61c93dSmrg z8k-*-coff) 11864c61c93dSmrg basic_machine=z8k-unknown 11874c61c93dSmrg os=-sim 11884c61c93dSmrg ;; 11894c61c93dSmrg z80-*-coff) 11904c61c93dSmrg basic_machine=z80-unknown 11914c61c93dSmrg os=-sim 11924c61c93dSmrg ;; 11934c61c93dSmrg none) 11944c61c93dSmrg basic_machine=none-none 11954c61c93dSmrg os=-none 11964c61c93dSmrg ;; 11974c61c93dSmrg 11984c61c93dSmrg# Here we handle the default manufacturer of certain CPU types. It is in 11994c61c93dSmrg# some cases the only manufacturer, in others, it is the most popular. 12004c61c93dSmrg w89k) 12014c61c93dSmrg basic_machine=hppa1.1-winbond 12024c61c93dSmrg ;; 12034c61c93dSmrg op50n) 12044c61c93dSmrg basic_machine=hppa1.1-oki 12054c61c93dSmrg ;; 12064c61c93dSmrg op60c) 12074c61c93dSmrg basic_machine=hppa1.1-oki 12084c61c93dSmrg ;; 12094c61c93dSmrg romp) 12104c61c93dSmrg basic_machine=romp-ibm 12114c61c93dSmrg ;; 12124c61c93dSmrg mmix) 12134c61c93dSmrg basic_machine=mmix-knuth 12144c61c93dSmrg ;; 12154c61c93dSmrg rs6000) 12164c61c93dSmrg basic_machine=rs6000-ibm 12174c61c93dSmrg ;; 12184c61c93dSmrg vax) 12194c61c93dSmrg basic_machine=vax-dec 12204c61c93dSmrg ;; 12214c61c93dSmrg pdp10) 12224c61c93dSmrg # there are many clones, so DEC is not a safe bet 12234c61c93dSmrg basic_machine=pdp10-unknown 12244c61c93dSmrg ;; 12254c61c93dSmrg pdp11) 12264c61c93dSmrg basic_machine=pdp11-dec 12274c61c93dSmrg ;; 12284c61c93dSmrg we32k) 12294c61c93dSmrg basic_machine=we32k-att 12304c61c93dSmrg ;; 12314c61c93dSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12324c61c93dSmrg basic_machine=sh-unknown 12334c61c93dSmrg ;; 12344c61c93dSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12354c61c93dSmrg basic_machine=sparc-sun 12364c61c93dSmrg ;; 12374c61c93dSmrg cydra) 12384c61c93dSmrg basic_machine=cydra-cydrome 12394c61c93dSmrg ;; 12404c61c93dSmrg orion) 12414c61c93dSmrg basic_machine=orion-highlevel 12424c61c93dSmrg ;; 12434c61c93dSmrg orion105) 12444c61c93dSmrg basic_machine=clipper-highlevel 12454c61c93dSmrg ;; 12464c61c93dSmrg mac | mpw | mac-mpw) 12474c61c93dSmrg basic_machine=m68k-apple 12484c61c93dSmrg ;; 12494c61c93dSmrg pmac | pmac-mpw) 12504c61c93dSmrg basic_machine=powerpc-apple 12514c61c93dSmrg ;; 12524c61c93dSmrg *-unknown) 12534c61c93dSmrg # Make sure to match an already-canonicalized machine name. 12544c61c93dSmrg ;; 12554c61c93dSmrg *) 12564c61c93dSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12574c61c93dSmrg exit 1 12584c61c93dSmrg ;; 12594c61c93dSmrgesac 12604c61c93dSmrg 12614c61c93dSmrg# Here we canonicalize certain aliases for manufacturers. 12624c61c93dSmrgcase $basic_machine in 12634c61c93dSmrg *-digital*) 12644c61c93dSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12654c61c93dSmrg ;; 12664c61c93dSmrg *-commodore*) 12674c61c93dSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12684c61c93dSmrg ;; 12694c61c93dSmrg *) 12704c61c93dSmrg ;; 12714c61c93dSmrgesac 12724c61c93dSmrg 12734c61c93dSmrg# Decode manufacturer-specific aliases for certain operating systems. 12744c61c93dSmrg 12754c61c93dSmrgif [ x"$os" != x"" ] 12764c61c93dSmrgthen 12774c61c93dSmrgcase $os in 12784c61c93dSmrg # First match some system type aliases 12794c61c93dSmrg # that might get confused with valid system types. 12804c61c93dSmrg # -solaris* is a basic system type, with this one exception. 1281d7ffce2aSmrg -auroraux) 1282d7ffce2aSmrg os=-auroraux 1283d7ffce2aSmrg ;; 12844c61c93dSmrg -solaris1 | -solaris1.*) 12854c61c93dSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 12864c61c93dSmrg ;; 12874c61c93dSmrg -solaris) 12884c61c93dSmrg os=-solaris2 12894c61c93dSmrg ;; 12904c61c93dSmrg -svr4*) 12914c61c93dSmrg os=-sysv4 12924c61c93dSmrg ;; 12934c61c93dSmrg -unixware*) 12944c61c93dSmrg os=-sysv4.2uw 12954c61c93dSmrg ;; 12964c61c93dSmrg -gnu/linux*) 12974c61c93dSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 12984c61c93dSmrg ;; 12994c61c93dSmrg # First accept the basic system types. 13004c61c93dSmrg # The portable systems comes first. 13014c61c93dSmrg # Each alternative MUST END IN A *, to match a version number. 13024c61c93dSmrg # -sysv* is not here because it comes later, after sysvr4. 13034c61c93dSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1304d7ffce2aSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1305d7ffce2aSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1306d7ffce2aSmrg | -sym* | -kopensolaris* \ 13074c61c93dSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13084c61c93dSmrg | -aos* | -aros* \ 13094c61c93dSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13104c61c93dSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13114c61c93dSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13124c61c93dSmrg | -openbsd* | -solidbsd* \ 13134c61c93dSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13144c61c93dSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13154c61c93dSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13164c61c93dSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13174c61c93dSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 13184c61c93dSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1319d7ffce2aSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 1320d7ffce2aSmrg | -linux-newlib* | -linux-uclibc* \ 13214c61c93dSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13224c61c93dSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13234c61c93dSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13244c61c93dSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13254c61c93dSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13264c61c93dSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13274c61c93dSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1328d7ffce2aSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13294c61c93dSmrg # Remember, each alternative MUST END IN *, to match a version number. 13304c61c93dSmrg ;; 13314c61c93dSmrg -qnx*) 13324c61c93dSmrg case $basic_machine in 13334c61c93dSmrg x86-* | i*86-*) 13344c61c93dSmrg ;; 13354c61c93dSmrg *) 13364c61c93dSmrg os=-nto$os 13374c61c93dSmrg ;; 13384c61c93dSmrg esac 13394c61c93dSmrg ;; 13404c61c93dSmrg -nto-qnx*) 13414c61c93dSmrg ;; 13424c61c93dSmrg -nto*) 13434c61c93dSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13444c61c93dSmrg ;; 13454c61c93dSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13464c61c93dSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13474c61c93dSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13484c61c93dSmrg ;; 13494c61c93dSmrg -mac*) 13504c61c93dSmrg os=`echo $os | sed -e 's|mac|macos|'` 13514c61c93dSmrg ;; 13524c61c93dSmrg -linux-dietlibc) 13534c61c93dSmrg os=-linux-dietlibc 13544c61c93dSmrg ;; 13554c61c93dSmrg -linux*) 13564c61c93dSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13574c61c93dSmrg ;; 13584c61c93dSmrg -sunos5*) 13594c61c93dSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13604c61c93dSmrg ;; 13614c61c93dSmrg -sunos6*) 13624c61c93dSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13634c61c93dSmrg ;; 13644c61c93dSmrg -opened*) 13654c61c93dSmrg os=-openedition 13664c61c93dSmrg ;; 13674c61c93dSmrg -os400*) 13684c61c93dSmrg os=-os400 13694c61c93dSmrg ;; 13704c61c93dSmrg -wince*) 13714c61c93dSmrg os=-wince 13724c61c93dSmrg ;; 13734c61c93dSmrg -osfrose*) 13744c61c93dSmrg os=-osfrose 13754c61c93dSmrg ;; 13764c61c93dSmrg -osf*) 13774c61c93dSmrg os=-osf 13784c61c93dSmrg ;; 13794c61c93dSmrg -utek*) 13804c61c93dSmrg os=-bsd 13814c61c93dSmrg ;; 13824c61c93dSmrg -dynix*) 13834c61c93dSmrg os=-bsd 13844c61c93dSmrg ;; 13854c61c93dSmrg -acis*) 13864c61c93dSmrg os=-aos 13874c61c93dSmrg ;; 13884c61c93dSmrg -atheos*) 13894c61c93dSmrg os=-atheos 13904c61c93dSmrg ;; 13914c61c93dSmrg -syllable*) 13924c61c93dSmrg os=-syllable 13934c61c93dSmrg ;; 13944c61c93dSmrg -386bsd) 13954c61c93dSmrg os=-bsd 13964c61c93dSmrg ;; 13974c61c93dSmrg -ctix* | -uts*) 13984c61c93dSmrg os=-sysv 13994c61c93dSmrg ;; 14004c61c93dSmrg -nova*) 14014c61c93dSmrg os=-rtmk-nova 14024c61c93dSmrg ;; 14034c61c93dSmrg -ns2 ) 14044c61c93dSmrg os=-nextstep2 14054c61c93dSmrg ;; 14064c61c93dSmrg -nsk*) 14074c61c93dSmrg os=-nsk 14084c61c93dSmrg ;; 14094c61c93dSmrg # Preserve the version number of sinix5. 14104c61c93dSmrg -sinix5.*) 14114c61c93dSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 14124c61c93dSmrg ;; 14134c61c93dSmrg -sinix*) 14144c61c93dSmrg os=-sysv4 14154c61c93dSmrg ;; 14164c61c93dSmrg -tpf*) 14174c61c93dSmrg os=-tpf 14184c61c93dSmrg ;; 14194c61c93dSmrg -triton*) 14204c61c93dSmrg os=-sysv3 14214c61c93dSmrg ;; 14224c61c93dSmrg -oss*) 14234c61c93dSmrg os=-sysv3 14244c61c93dSmrg ;; 14254c61c93dSmrg -svr4) 14264c61c93dSmrg os=-sysv4 14274c61c93dSmrg ;; 14284c61c93dSmrg -svr3) 14294c61c93dSmrg os=-sysv3 14304c61c93dSmrg ;; 14314c61c93dSmrg -sysvr4) 14324c61c93dSmrg os=-sysv4 14334c61c93dSmrg ;; 14344c61c93dSmrg # This must come after -sysvr4. 14354c61c93dSmrg -sysv*) 14364c61c93dSmrg ;; 14374c61c93dSmrg -ose*) 14384c61c93dSmrg os=-ose 14394c61c93dSmrg ;; 14404c61c93dSmrg -es1800*) 14414c61c93dSmrg os=-ose 14424c61c93dSmrg ;; 14434c61c93dSmrg -xenix) 14444c61c93dSmrg os=-xenix 14454c61c93dSmrg ;; 14464c61c93dSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14474c61c93dSmrg os=-mint 14484c61c93dSmrg ;; 14494c61c93dSmrg -aros*) 14504c61c93dSmrg os=-aros 14514c61c93dSmrg ;; 14524c61c93dSmrg -kaos*) 14534c61c93dSmrg os=-kaos 14544c61c93dSmrg ;; 14554c61c93dSmrg -zvmoe) 14564c61c93dSmrg os=-zvmoe 14574c61c93dSmrg ;; 14584c61c93dSmrg -dicos*) 14594c61c93dSmrg os=-dicos 14604c61c93dSmrg ;; 1461d7ffce2aSmrg -nacl*) 1462d7ffce2aSmrg ;; 14634c61c93dSmrg -none) 14644c61c93dSmrg ;; 14654c61c93dSmrg *) 14664c61c93dSmrg # Get rid of the `-' at the beginning of $os. 14674c61c93dSmrg os=`echo $os | sed 's/[^-]*-//'` 14684c61c93dSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14694c61c93dSmrg exit 1 14704c61c93dSmrg ;; 14714c61c93dSmrgesac 14724c61c93dSmrgelse 14734c61c93dSmrg 14744c61c93dSmrg# Here we handle the default operating systems that come with various machines. 14754c61c93dSmrg# The value should be what the vendor currently ships out the door with their 14764c61c93dSmrg# machine or put another way, the most popular os provided with the machine. 14774c61c93dSmrg 14784c61c93dSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14794c61c93dSmrg# "-sun"), then you have to tell the case statement up towards the top 14804c61c93dSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14814c61c93dSmrg# will signal an error saying that MANUFACTURER isn't an operating 14824c61c93dSmrg# system, and we'll never get to this point. 14834c61c93dSmrg 14844c61c93dSmrgcase $basic_machine in 14854c61c93dSmrg score-*) 14864c61c93dSmrg os=-elf 14874c61c93dSmrg ;; 14884c61c93dSmrg spu-*) 14894c61c93dSmrg os=-elf 14904c61c93dSmrg ;; 14914c61c93dSmrg *-acorn) 14924c61c93dSmrg os=-riscix1.2 14934c61c93dSmrg ;; 14944c61c93dSmrg arm*-rebel) 14954c61c93dSmrg os=-linux 14964c61c93dSmrg ;; 14974c61c93dSmrg arm*-semi) 14984c61c93dSmrg os=-aout 14994c61c93dSmrg ;; 15004c61c93dSmrg c4x-* | tic4x-*) 15014c61c93dSmrg os=-coff 15024c61c93dSmrg ;; 1503d7ffce2aSmrg tic54x-*) 1504d7ffce2aSmrg os=-coff 1505d7ffce2aSmrg ;; 1506d7ffce2aSmrg tic55x-*) 1507d7ffce2aSmrg os=-coff 1508d7ffce2aSmrg ;; 1509d7ffce2aSmrg tic6x-*) 1510d7ffce2aSmrg os=-coff 1511d7ffce2aSmrg ;; 15124c61c93dSmrg # This must come before the *-dec entry. 15134c61c93dSmrg pdp10-*) 15144c61c93dSmrg os=-tops20 15154c61c93dSmrg ;; 15164c61c93dSmrg pdp11-*) 15174c61c93dSmrg os=-none 15184c61c93dSmrg ;; 15194c61c93dSmrg *-dec | vax-*) 15204c61c93dSmrg os=-ultrix4.2 15214c61c93dSmrg ;; 15224c61c93dSmrg m68*-apollo) 15234c61c93dSmrg os=-domain 15244c61c93dSmrg ;; 15254c61c93dSmrg i386-sun) 15264c61c93dSmrg os=-sunos4.0.2 15274c61c93dSmrg ;; 15284c61c93dSmrg m68000-sun) 15294c61c93dSmrg os=-sunos3 15304c61c93dSmrg # This also exists in the configure program, but was not the 15314c61c93dSmrg # default. 15324c61c93dSmrg # os=-sunos4 15334c61c93dSmrg ;; 15344c61c93dSmrg m68*-cisco) 15354c61c93dSmrg os=-aout 15364c61c93dSmrg ;; 15374c61c93dSmrg mep-*) 15384c61c93dSmrg os=-elf 15394c61c93dSmrg ;; 15404c61c93dSmrg mips*-cisco) 15414c61c93dSmrg os=-elf 15424c61c93dSmrg ;; 15434c61c93dSmrg mips*-*) 15444c61c93dSmrg os=-elf 15454c61c93dSmrg ;; 15464c61c93dSmrg or32-*) 15474c61c93dSmrg os=-coff 15484c61c93dSmrg ;; 15494c61c93dSmrg *-tti) # must be before sparc entry or we get the wrong os. 15504c61c93dSmrg os=-sysv3 15514c61c93dSmrg ;; 15524c61c93dSmrg sparc-* | *-sun) 15534c61c93dSmrg os=-sunos4.1.1 15544c61c93dSmrg ;; 15554c61c93dSmrg *-be) 15564c61c93dSmrg os=-beos 15574c61c93dSmrg ;; 15584c61c93dSmrg *-haiku) 15594c61c93dSmrg os=-haiku 15604c61c93dSmrg ;; 15614c61c93dSmrg *-ibm) 15624c61c93dSmrg os=-aix 15634c61c93dSmrg ;; 15644c61c93dSmrg *-knuth) 15654c61c93dSmrg os=-mmixware 15664c61c93dSmrg ;; 15674c61c93dSmrg *-wec) 15684c61c93dSmrg os=-proelf 15694c61c93dSmrg ;; 15704c61c93dSmrg *-winbond) 15714c61c93dSmrg os=-proelf 15724c61c93dSmrg ;; 15734c61c93dSmrg *-oki) 15744c61c93dSmrg os=-proelf 15754c61c93dSmrg ;; 15764c61c93dSmrg *-hp) 15774c61c93dSmrg os=-hpux 15784c61c93dSmrg ;; 15794c61c93dSmrg *-hitachi) 15804c61c93dSmrg os=-hiux 15814c61c93dSmrg ;; 15824c61c93dSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 15834c61c93dSmrg os=-sysv 15844c61c93dSmrg ;; 15854c61c93dSmrg *-cbm) 15864c61c93dSmrg os=-amigaos 15874c61c93dSmrg ;; 15884c61c93dSmrg *-dg) 15894c61c93dSmrg os=-dgux 15904c61c93dSmrg ;; 15914c61c93dSmrg *-dolphin) 15924c61c93dSmrg os=-sysv3 15934c61c93dSmrg ;; 15944c61c93dSmrg m68k-ccur) 15954c61c93dSmrg os=-rtu 15964c61c93dSmrg ;; 15974c61c93dSmrg m88k-omron*) 15984c61c93dSmrg os=-luna 15994c61c93dSmrg ;; 16004c61c93dSmrg *-next ) 16014c61c93dSmrg os=-nextstep 16024c61c93dSmrg ;; 16034c61c93dSmrg *-sequent) 16044c61c93dSmrg os=-ptx 16054c61c93dSmrg ;; 16064c61c93dSmrg *-crds) 16074c61c93dSmrg os=-unos 16084c61c93dSmrg ;; 16094c61c93dSmrg *-ns) 16104c61c93dSmrg os=-genix 16114c61c93dSmrg ;; 16124c61c93dSmrg i370-*) 16134c61c93dSmrg os=-mvs 16144c61c93dSmrg ;; 16154c61c93dSmrg *-next) 16164c61c93dSmrg os=-nextstep3 16174c61c93dSmrg ;; 16184c61c93dSmrg *-gould) 16194c61c93dSmrg os=-sysv 16204c61c93dSmrg ;; 16214c61c93dSmrg *-highlevel) 16224c61c93dSmrg os=-bsd 16234c61c93dSmrg ;; 16244c61c93dSmrg *-encore) 16254c61c93dSmrg os=-bsd 16264c61c93dSmrg ;; 16274c61c93dSmrg *-sgi) 16284c61c93dSmrg os=-irix 16294c61c93dSmrg ;; 16304c61c93dSmrg *-siemens) 16314c61c93dSmrg os=-sysv4 16324c61c93dSmrg ;; 16334c61c93dSmrg *-masscomp) 16344c61c93dSmrg os=-rtu 16354c61c93dSmrg ;; 16364c61c93dSmrg f30[01]-fujitsu | f700-fujitsu) 16374c61c93dSmrg os=-uxpv 16384c61c93dSmrg ;; 16394c61c93dSmrg *-rom68k) 16404c61c93dSmrg os=-coff 16414c61c93dSmrg ;; 16424c61c93dSmrg *-*bug) 16434c61c93dSmrg os=-coff 16444c61c93dSmrg ;; 16454c61c93dSmrg *-apple) 16464c61c93dSmrg os=-macos 16474c61c93dSmrg ;; 16484c61c93dSmrg *-atari*) 16494c61c93dSmrg os=-mint 16504c61c93dSmrg ;; 16514c61c93dSmrg *) 16524c61c93dSmrg os=-none 16534c61c93dSmrg ;; 16544c61c93dSmrgesac 16554c61c93dSmrgfi 16564c61c93dSmrg 16574c61c93dSmrg# Here we handle the case where we know the os, and the CPU type, but not the 16584c61c93dSmrg# manufacturer. We pick the logical manufacturer. 16594c61c93dSmrgvendor=unknown 16604c61c93dSmrgcase $basic_machine in 16614c61c93dSmrg *-unknown) 16624c61c93dSmrg case $os in 16634c61c93dSmrg -riscix*) 16644c61c93dSmrg vendor=acorn 16654c61c93dSmrg ;; 16664c61c93dSmrg -sunos*) 16674c61c93dSmrg vendor=sun 16684c61c93dSmrg ;; 1669d7ffce2aSmrg -cnk*|-aix*) 16704c61c93dSmrg vendor=ibm 16714c61c93dSmrg ;; 16724c61c93dSmrg -beos*) 16734c61c93dSmrg vendor=be 16744c61c93dSmrg ;; 16754c61c93dSmrg -hpux*) 16764c61c93dSmrg vendor=hp 16774c61c93dSmrg ;; 16784c61c93dSmrg -mpeix*) 16794c61c93dSmrg vendor=hp 16804c61c93dSmrg ;; 16814c61c93dSmrg -hiux*) 16824c61c93dSmrg vendor=hitachi 16834c61c93dSmrg ;; 16844c61c93dSmrg -unos*) 16854c61c93dSmrg vendor=crds 16864c61c93dSmrg ;; 16874c61c93dSmrg -dgux*) 16884c61c93dSmrg vendor=dg 16894c61c93dSmrg ;; 16904c61c93dSmrg -luna*) 16914c61c93dSmrg vendor=omron 16924c61c93dSmrg ;; 16934c61c93dSmrg -genix*) 16944c61c93dSmrg vendor=ns 16954c61c93dSmrg ;; 16964c61c93dSmrg -mvs* | -opened*) 16974c61c93dSmrg vendor=ibm 16984c61c93dSmrg ;; 16994c61c93dSmrg -os400*) 17004c61c93dSmrg vendor=ibm 17014c61c93dSmrg ;; 17024c61c93dSmrg -ptx*) 17034c61c93dSmrg vendor=sequent 17044c61c93dSmrg ;; 17054c61c93dSmrg -tpf*) 17064c61c93dSmrg vendor=ibm 17074c61c93dSmrg ;; 17084c61c93dSmrg -vxsim* | -vxworks* | -windiss*) 17094c61c93dSmrg vendor=wrs 17104c61c93dSmrg ;; 17114c61c93dSmrg -aux*) 17124c61c93dSmrg vendor=apple 17134c61c93dSmrg ;; 17144c61c93dSmrg -hms*) 17154c61c93dSmrg vendor=hitachi 17164c61c93dSmrg ;; 17174c61c93dSmrg -mpw* | -macos*) 17184c61c93dSmrg vendor=apple 17194c61c93dSmrg ;; 17204c61c93dSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17214c61c93dSmrg vendor=atari 17224c61c93dSmrg ;; 17234c61c93dSmrg -vos*) 17244c61c93dSmrg vendor=stratus 17254c61c93dSmrg ;; 17264c61c93dSmrg esac 17274c61c93dSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17284c61c93dSmrg ;; 17294c61c93dSmrgesac 17304c61c93dSmrg 17314c61c93dSmrgecho $basic_machine$os 17324c61c93dSmrgexit 17334c61c93dSmrg 17344c61c93dSmrg# Local variables: 17354c61c93dSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17364c61c93dSmrg# time-stamp-start: "timestamp='" 17374c61c93dSmrg# time-stamp-format: "%:y-%02m-%02d" 17384c61c93dSmrg# time-stamp-end: "'" 17394c61c93dSmrg# End: 1740