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