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