config.sub revision 8650bb69
12c7c4e3dSmrg#! /bin/sh 22c7c4e3dSmrg# Configuration validation subroutine script. 32c7c4e3dSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 48650bb69Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 58650bb69Smrg# Free Software Foundation, Inc. 62c7c4e3dSmrg 78650bb69Smrgtimestamp='2009-04-17' 82c7c4e3dSmrg 92c7c4e3dSmrg# This file is (in principle) common to ALL GNU software. 102c7c4e3dSmrg# The presence of a machine in this file suggests that SOME GNU software 112c7c4e3dSmrg# can handle that machine. It does not imply ALL GNU software can. 122c7c4e3dSmrg# 132c7c4e3dSmrg# This file is free software; you can redistribute it and/or modify 142c7c4e3dSmrg# it under the terms of the GNU General Public License as published by 152c7c4e3dSmrg# the Free Software Foundation; either version 2 of the License, or 162c7c4e3dSmrg# (at your option) any later version. 172c7c4e3dSmrg# 182c7c4e3dSmrg# This program is distributed in the hope that it will be useful, 192c7c4e3dSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 202c7c4e3dSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 212c7c4e3dSmrg# GNU General Public License for more details. 222c7c4e3dSmrg# 232c7c4e3dSmrg# You should have received a copy of the GNU General Public License 242c7c4e3dSmrg# along with this program; if not, write to the Free Software 258650bb69Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 268650bb69Smrg# 02110-1301, USA. 278650bb69Smrg# 282c7c4e3dSmrg# As a special exception to the GNU General Public License, if you 292c7c4e3dSmrg# distribute this file as part of a program that contains a 302c7c4e3dSmrg# configuration script generated by Autoconf, you may include it under 312c7c4e3dSmrg# the same distribution terms that you use for the rest of that program. 322c7c4e3dSmrg 338650bb69Smrg 342c7c4e3dSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 352c7c4e3dSmrg# diff and a properly formatted ChangeLog entry. 362c7c4e3dSmrg# 372c7c4e3dSmrg# Configuration subroutine to validate and canonicalize a configuration type. 382c7c4e3dSmrg# Supply the specified configuration type as an argument. 392c7c4e3dSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 402c7c4e3dSmrg# Otherwise, we print the canonical config type on stdout and succeed. 412c7c4e3dSmrg 422c7c4e3dSmrg# This file is supposed to be the same for all GNU packages 432c7c4e3dSmrg# and recognize all the CPU types, system types and aliases 442c7c4e3dSmrg# that are meaningful with *any* GNU software. 452c7c4e3dSmrg# Each package is responsible for reporting which valid configurations 462c7c4e3dSmrg# it does not support. The user should be able to distinguish 472c7c4e3dSmrg# a failure to support a valid configuration from a meaningless 482c7c4e3dSmrg# configuration. 492c7c4e3dSmrg 502c7c4e3dSmrg# The goal of this file is to map all the various variations of a given 512c7c4e3dSmrg# machine specification into a single specification in the form: 522c7c4e3dSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 532c7c4e3dSmrg# or in some cases, the newer four-part form: 542c7c4e3dSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 552c7c4e3dSmrg# It is wrong to echo any other type of specification. 562c7c4e3dSmrg 572c7c4e3dSmrgme=`echo "$0" | sed -e 's,.*/,,'` 582c7c4e3dSmrg 592c7c4e3dSmrgusage="\ 602c7c4e3dSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 612c7c4e3dSmrg $0 [OPTION] ALIAS 622c7c4e3dSmrg 632c7c4e3dSmrgCanonicalize a configuration name. 642c7c4e3dSmrg 652c7c4e3dSmrgOperation modes: 662c7c4e3dSmrg -h, --help print this help, then exit 672c7c4e3dSmrg -t, --time-stamp print date of last modification, then exit 682c7c4e3dSmrg -v, --version print version number, then exit 692c7c4e3dSmrg 702c7c4e3dSmrgReport bugs and patches to <config-patches@gnu.org>." 712c7c4e3dSmrg 722c7c4e3dSmrgversion="\ 732c7c4e3dSmrgGNU config.sub ($timestamp) 742c7c4e3dSmrg 758650bb69SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 768650bb69Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 772c7c4e3dSmrg 782c7c4e3dSmrgThis is free software; see the source for copying conditions. There is NO 792c7c4e3dSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 802c7c4e3dSmrg 812c7c4e3dSmrghelp=" 822c7c4e3dSmrgTry \`$me --help' for more information." 832c7c4e3dSmrg 842c7c4e3dSmrg# Parse command line 852c7c4e3dSmrgwhile test $# -gt 0 ; do 862c7c4e3dSmrg case $1 in 872c7c4e3dSmrg --time-stamp | --time* | -t ) 888650bb69Smrg echo "$timestamp" ; exit ;; 892c7c4e3dSmrg --version | -v ) 908650bb69Smrg echo "$version" ; exit ;; 912c7c4e3dSmrg --help | --h* | -h ) 928650bb69Smrg echo "$usage"; exit ;; 932c7c4e3dSmrg -- ) # Stop option processing 942c7c4e3dSmrg shift; break ;; 952c7c4e3dSmrg - ) # Use stdin as input. 962c7c4e3dSmrg break ;; 972c7c4e3dSmrg -* ) 982c7c4e3dSmrg echo "$me: invalid option $1$help" 992c7c4e3dSmrg exit 1 ;; 1002c7c4e3dSmrg 1012c7c4e3dSmrg *local*) 1022c7c4e3dSmrg # First pass through any local machine types. 1032c7c4e3dSmrg echo $1 1048650bb69Smrg exit ;; 1052c7c4e3dSmrg 1062c7c4e3dSmrg * ) 1072c7c4e3dSmrg break ;; 1082c7c4e3dSmrg esac 1092c7c4e3dSmrgdone 1102c7c4e3dSmrg 1112c7c4e3dSmrgcase $# in 1122c7c4e3dSmrg 0) echo "$me: missing argument$help" >&2 1132c7c4e3dSmrg exit 1;; 1142c7c4e3dSmrg 1) ;; 1152c7c4e3dSmrg *) echo "$me: too many arguments$help" >&2 1162c7c4e3dSmrg exit 1;; 1172c7c4e3dSmrgesac 1182c7c4e3dSmrg 1192c7c4e3dSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1202c7c4e3dSmrg# Here we must recognize all the valid KERNEL-OS combinations. 1212c7c4e3dSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1222c7c4e3dSmrgcase $maybe_os in 1238650bb69Smrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 1248650bb69Smrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 1258650bb69Smrg kopensolaris*-gnu* | \ 1268650bb69Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1272c7c4e3dSmrg os=-$maybe_os 1282c7c4e3dSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1292c7c4e3dSmrg ;; 1302c7c4e3dSmrg *) 1312c7c4e3dSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1322c7c4e3dSmrg if [ $basic_machine != $1 ] 1332c7c4e3dSmrg then os=`echo $1 | sed 's/.*-/-/'` 1342c7c4e3dSmrg else os=; fi 1352c7c4e3dSmrg ;; 1362c7c4e3dSmrgesac 1372c7c4e3dSmrg 1382c7c4e3dSmrg### Let's recognize common machines as not being operating systems so 1392c7c4e3dSmrg### that things like config.sub decstation-3100 work. We also 1402c7c4e3dSmrg### recognize some manufacturers as not being operating systems, so we 1412c7c4e3dSmrg### can provide default operating systems below. 1422c7c4e3dSmrgcase $os in 1432c7c4e3dSmrg -sun*os*) 1442c7c4e3dSmrg # Prevent following clause from handling this invalid input. 1452c7c4e3dSmrg ;; 1462c7c4e3dSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1472c7c4e3dSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1482c7c4e3dSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1492c7c4e3dSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1502c7c4e3dSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1512c7c4e3dSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1528650bb69Smrg -apple | -axis | -knuth | -cray) 1532c7c4e3dSmrg os= 1542c7c4e3dSmrg basic_machine=$1 1552c7c4e3dSmrg ;; 1562c7c4e3dSmrg -sim | -cisco | -oki | -wec | -winbond) 1572c7c4e3dSmrg os= 1582c7c4e3dSmrg basic_machine=$1 1592c7c4e3dSmrg ;; 1602c7c4e3dSmrg -scout) 1612c7c4e3dSmrg ;; 1622c7c4e3dSmrg -wrs) 1632c7c4e3dSmrg os=-vxworks 1642c7c4e3dSmrg basic_machine=$1 1652c7c4e3dSmrg ;; 1662c7c4e3dSmrg -chorusos*) 1672c7c4e3dSmrg os=-chorusos 1682c7c4e3dSmrg basic_machine=$1 1692c7c4e3dSmrg ;; 1702c7c4e3dSmrg -chorusrdb) 1712c7c4e3dSmrg os=-chorusrdb 1722c7c4e3dSmrg basic_machine=$1 1732c7c4e3dSmrg ;; 1742c7c4e3dSmrg -hiux*) 1752c7c4e3dSmrg os=-hiuxwe2 1762c7c4e3dSmrg ;; 1778650bb69Smrg -sco6) 1788650bb69Smrg os=-sco5v6 1798650bb69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1808650bb69Smrg ;; 1812c7c4e3dSmrg -sco5) 1822c7c4e3dSmrg os=-sco3.2v5 1832c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1842c7c4e3dSmrg ;; 1852c7c4e3dSmrg -sco4) 1862c7c4e3dSmrg os=-sco3.2v4 1872c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1882c7c4e3dSmrg ;; 1892c7c4e3dSmrg -sco3.2.[4-9]*) 1902c7c4e3dSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1912c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1922c7c4e3dSmrg ;; 1932c7c4e3dSmrg -sco3.2v[4-9]*) 1942c7c4e3dSmrg # Don't forget version if it is 3.2v4 or newer. 1952c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1962c7c4e3dSmrg ;; 1978650bb69Smrg -sco5v6*) 1988650bb69Smrg # Don't forget version if it is 3.2v4 or newer. 1998650bb69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2008650bb69Smrg ;; 2012c7c4e3dSmrg -sco*) 2022c7c4e3dSmrg os=-sco3.2v2 2032c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2042c7c4e3dSmrg ;; 2052c7c4e3dSmrg -udk*) 2062c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2072c7c4e3dSmrg ;; 2082c7c4e3dSmrg -isc) 2092c7c4e3dSmrg os=-isc2.2 2102c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2112c7c4e3dSmrg ;; 2122c7c4e3dSmrg -clix*) 2132c7c4e3dSmrg basic_machine=clipper-intergraph 2142c7c4e3dSmrg ;; 2152c7c4e3dSmrg -isc*) 2162c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2172c7c4e3dSmrg ;; 2182c7c4e3dSmrg -lynx*) 2192c7c4e3dSmrg os=-lynxos 2202c7c4e3dSmrg ;; 2212c7c4e3dSmrg -ptx*) 2222c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2232c7c4e3dSmrg ;; 2242c7c4e3dSmrg -windowsnt*) 2252c7c4e3dSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2262c7c4e3dSmrg ;; 2272c7c4e3dSmrg -psos*) 2282c7c4e3dSmrg os=-psos 2292c7c4e3dSmrg ;; 2302c7c4e3dSmrg -mint | -mint[0-9]*) 2312c7c4e3dSmrg basic_machine=m68k-atari 2322c7c4e3dSmrg os=-mint 2332c7c4e3dSmrg ;; 2342c7c4e3dSmrgesac 2352c7c4e3dSmrg 2362c7c4e3dSmrg# Decode aliases for certain CPU-COMPANY combinations. 2372c7c4e3dSmrgcase $basic_machine in 2382c7c4e3dSmrg # Recognize the basic CPU types without company name. 2392c7c4e3dSmrg # Some are omitted here because they have special meanings below. 2402c7c4e3dSmrg 1750a | 580 \ 2412c7c4e3dSmrg | a29k \ 2422c7c4e3dSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2432c7c4e3dSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2448650bb69Smrg | am33_2.0 \ 2458650bb69Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2468650bb69Smrg | bfin \ 2472c7c4e3dSmrg | c4x | clipper \ 2482c7c4e3dSmrg | d10v | d30v | dlx | dsp16xx \ 2498650bb69Smrg | fido | fr30 | frv \ 2502c7c4e3dSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2512c7c4e3dSmrg | i370 | i860 | i960 | ia64 \ 2528650bb69Smrg | ip2k | iq2000 \ 2538650bb69Smrg | lm32 \ 2548650bb69Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2558650bb69Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2562c7c4e3dSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2572c7c4e3dSmrg | mips16 \ 2582c7c4e3dSmrg | mips64 | mips64el \ 2598650bb69Smrg | mips64octeon | mips64octeonel \ 2602c7c4e3dSmrg | mips64orion | mips64orionel \ 2618650bb69Smrg | mips64r5900 | mips64r5900el \ 2628650bb69Smrg | mips64vr | mips64vrel \ 2632c7c4e3dSmrg | mips64vr4100 | mips64vr4100el \ 2642c7c4e3dSmrg | mips64vr4300 | mips64vr4300el \ 2652c7c4e3dSmrg | mips64vr5000 | mips64vr5000el \ 2668650bb69Smrg | mips64vr5900 | mips64vr5900el \ 2672c7c4e3dSmrg | mipsisa32 | mipsisa32el \ 2682c7c4e3dSmrg | mipsisa32r2 | mipsisa32r2el \ 2692c7c4e3dSmrg | mipsisa64 | mipsisa64el \ 2708650bb69Smrg | mipsisa64r2 | mipsisa64r2el \ 2712c7c4e3dSmrg | mipsisa64sb1 | mipsisa64sb1el \ 2722c7c4e3dSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 2732c7c4e3dSmrg | mipstx39 | mipstx39el \ 2742c7c4e3dSmrg | mn10200 | mn10300 \ 2758650bb69Smrg | moxie \ 2768650bb69Smrg | mt \ 2772c7c4e3dSmrg | msp430 \ 2788650bb69Smrg | nios | nios2 \ 2792c7c4e3dSmrg | ns16k | ns32k \ 2808650bb69Smrg | or32 \ 2812c7c4e3dSmrg | pdp10 | pdp11 | pj | pjl \ 2822c7c4e3dSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2832c7c4e3dSmrg | pyramid \ 2848650bb69Smrg | score \ 2858650bb69Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2862c7c4e3dSmrg | sh64 | sh64le \ 2878650bb69Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2888650bb69Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2898650bb69Smrg | spu | strongarm \ 2902c7c4e3dSmrg | tahoe | thumb | tic4x | tic80 | tron \ 2912c7c4e3dSmrg | v850 | v850e \ 2922c7c4e3dSmrg | we32k \ 2938650bb69Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 2948650bb69Smrg | z8k | z80) 2952c7c4e3dSmrg basic_machine=$basic_machine-unknown 2962c7c4e3dSmrg ;; 2972c7c4e3dSmrg m6811 | m68hc11 | m6812 | m68hc12) 2982c7c4e3dSmrg # Motorola 68HC11/12. 2992c7c4e3dSmrg basic_machine=$basic_machine-unknown 3002c7c4e3dSmrg os=-none 3012c7c4e3dSmrg ;; 3022c7c4e3dSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3032c7c4e3dSmrg ;; 3048650bb69Smrg ms1) 3058650bb69Smrg basic_machine=mt-unknown 3068650bb69Smrg ;; 3072c7c4e3dSmrg 3082c7c4e3dSmrg # We use `pc' rather than `unknown' 3092c7c4e3dSmrg # because (1) that's what they normally are, and 3102c7c4e3dSmrg # (2) the word "unknown" tends to confuse beginning users. 3112c7c4e3dSmrg i*86 | x86_64) 3122c7c4e3dSmrg basic_machine=$basic_machine-pc 3132c7c4e3dSmrg ;; 3142c7c4e3dSmrg # Object if more than one company name word. 3152c7c4e3dSmrg *-*-*) 3162c7c4e3dSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3172c7c4e3dSmrg exit 1 3182c7c4e3dSmrg ;; 3192c7c4e3dSmrg # Recognize the basic CPU types with company name. 3202c7c4e3dSmrg 580-* \ 3212c7c4e3dSmrg | a29k-* \ 3222c7c4e3dSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3232c7c4e3dSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3242c7c4e3dSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3252c7c4e3dSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3268650bb69Smrg | avr-* | avr32-* \ 3278650bb69Smrg | bfin-* | bs2000-* \ 3282c7c4e3dSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 3298650bb69Smrg | clipper-* | craynv-* | cydra-* \ 3302c7c4e3dSmrg | d10v-* | d30v-* | dlx-* \ 3312c7c4e3dSmrg | elxsi-* \ 3328650bb69Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3332c7c4e3dSmrg | h8300-* | h8500-* \ 3342c7c4e3dSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3352c7c4e3dSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3368650bb69Smrg | ip2k-* | iq2000-* \ 3378650bb69Smrg | lm32-* \ 3388650bb69Smrg | m32c-* | m32r-* | m32rle-* \ 3392c7c4e3dSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3408650bb69Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 3412c7c4e3dSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3422c7c4e3dSmrg | mips16-* \ 3432c7c4e3dSmrg | mips64-* | mips64el-* \ 3448650bb69Smrg | mips64octeon-* | mips64octeonel-* \ 3452c7c4e3dSmrg | mips64orion-* | mips64orionel-* \ 3468650bb69Smrg | mips64r5900-* | mips64r5900el-* \ 3478650bb69Smrg | mips64vr-* | mips64vrel-* \ 3482c7c4e3dSmrg | mips64vr4100-* | mips64vr4100el-* \ 3492c7c4e3dSmrg | mips64vr4300-* | mips64vr4300el-* \ 3502c7c4e3dSmrg | mips64vr5000-* | mips64vr5000el-* \ 3518650bb69Smrg | mips64vr5900-* | mips64vr5900el-* \ 3522c7c4e3dSmrg | mipsisa32-* | mipsisa32el-* \ 3532c7c4e3dSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 3542c7c4e3dSmrg | mipsisa64-* | mipsisa64el-* \ 3558650bb69Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3562c7c4e3dSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3572c7c4e3dSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3582c7c4e3dSmrg | mipstx39-* | mipstx39el-* \ 3598650bb69Smrg | mmix-* \ 3608650bb69Smrg | mt-* \ 3612c7c4e3dSmrg | msp430-* \ 3628650bb69Smrg | nios-* | nios2-* \ 3638650bb69Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 3642c7c4e3dSmrg | orion-* \ 3652c7c4e3dSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3662c7c4e3dSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3672c7c4e3dSmrg | pyramid-* \ 3682c7c4e3dSmrg | romp-* | rs6000-* \ 3698650bb69Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3702c7c4e3dSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3718650bb69Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3728650bb69Smrg | sparclite-* \ 3738650bb69Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3742c7c4e3dSmrg | tahoe-* | thumb-* \ 3758650bb69Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ 3762c7c4e3dSmrg | tron-* \ 3772c7c4e3dSmrg | v850-* | v850e-* | vax-* \ 3782c7c4e3dSmrg | we32k-* \ 3798650bb69Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 3808650bb69Smrg | xstormy16-* | xtensa*-* \ 3812c7c4e3dSmrg | ymp-* \ 3828650bb69Smrg | z8k-* | z80-*) 3838650bb69Smrg ;; 3848650bb69Smrg # Recognize the basic CPU types without company name, with glob match. 3858650bb69Smrg xtensa*) 3868650bb69Smrg basic_machine=$basic_machine-unknown 3872c7c4e3dSmrg ;; 3882c7c4e3dSmrg # Recognize the various machine names and aliases which stand 3892c7c4e3dSmrg # for a CPU type and a company and sometimes even an OS. 3902c7c4e3dSmrg 386bsd) 3912c7c4e3dSmrg basic_machine=i386-unknown 3922c7c4e3dSmrg os=-bsd 3932c7c4e3dSmrg ;; 3942c7c4e3dSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 3952c7c4e3dSmrg basic_machine=m68000-att 3962c7c4e3dSmrg ;; 3972c7c4e3dSmrg 3b*) 3982c7c4e3dSmrg basic_machine=we32k-att 3992c7c4e3dSmrg ;; 4002c7c4e3dSmrg a29khif) 4012c7c4e3dSmrg basic_machine=a29k-amd 4022c7c4e3dSmrg os=-udi 4032c7c4e3dSmrg ;; 4048650bb69Smrg abacus) 4058650bb69Smrg basic_machine=abacus-unknown 4068650bb69Smrg ;; 4072c7c4e3dSmrg adobe68k) 4082c7c4e3dSmrg basic_machine=m68010-adobe 4092c7c4e3dSmrg os=-scout 4102c7c4e3dSmrg ;; 4112c7c4e3dSmrg alliant | fx80) 4122c7c4e3dSmrg basic_machine=fx80-alliant 4132c7c4e3dSmrg ;; 4142c7c4e3dSmrg altos | altos3068) 4152c7c4e3dSmrg basic_machine=m68k-altos 4162c7c4e3dSmrg ;; 4172c7c4e3dSmrg am29k) 4182c7c4e3dSmrg basic_machine=a29k-none 4192c7c4e3dSmrg os=-bsd 4202c7c4e3dSmrg ;; 4212c7c4e3dSmrg amd64) 4222c7c4e3dSmrg basic_machine=x86_64-pc 4232c7c4e3dSmrg ;; 4248650bb69Smrg amd64-*) 4258650bb69Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4268650bb69Smrg ;; 4272c7c4e3dSmrg amdahl) 4282c7c4e3dSmrg basic_machine=580-amdahl 4292c7c4e3dSmrg os=-sysv 4302c7c4e3dSmrg ;; 4312c7c4e3dSmrg amiga | amiga-*) 4322c7c4e3dSmrg basic_machine=m68k-unknown 4332c7c4e3dSmrg ;; 4342c7c4e3dSmrg amigaos | amigados) 4352c7c4e3dSmrg basic_machine=m68k-unknown 4362c7c4e3dSmrg os=-amigaos 4372c7c4e3dSmrg ;; 4382c7c4e3dSmrg amigaunix | amix) 4392c7c4e3dSmrg basic_machine=m68k-unknown 4402c7c4e3dSmrg os=-sysv4 4412c7c4e3dSmrg ;; 4422c7c4e3dSmrg apollo68) 4432c7c4e3dSmrg basic_machine=m68k-apollo 4442c7c4e3dSmrg os=-sysv 4452c7c4e3dSmrg ;; 4462c7c4e3dSmrg apollo68bsd) 4472c7c4e3dSmrg basic_machine=m68k-apollo 4482c7c4e3dSmrg os=-bsd 4492c7c4e3dSmrg ;; 4508650bb69Smrg aros) 4518650bb69Smrg basic_machine=i386-pc 4528650bb69Smrg os=-aros 4538650bb69Smrg ;; 4542c7c4e3dSmrg aux) 4552c7c4e3dSmrg basic_machine=m68k-apple 4562c7c4e3dSmrg os=-aux 4572c7c4e3dSmrg ;; 4582c7c4e3dSmrg balance) 4592c7c4e3dSmrg basic_machine=ns32k-sequent 4602c7c4e3dSmrg os=-dynix 4612c7c4e3dSmrg ;; 4628650bb69Smrg blackfin) 4638650bb69Smrg basic_machine=bfin-unknown 4648650bb69Smrg os=-linux 4658650bb69Smrg ;; 4668650bb69Smrg blackfin-*) 4678650bb69Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4688650bb69Smrg os=-linux 4698650bb69Smrg ;; 4702c7c4e3dSmrg c90) 4712c7c4e3dSmrg basic_machine=c90-cray 4722c7c4e3dSmrg os=-unicos 4732c7c4e3dSmrg ;; 4748650bb69Smrg cegcc) 4758650bb69Smrg basic_machine=arm-unknown 4768650bb69Smrg os=-cegcc 4778650bb69Smrg ;; 4782c7c4e3dSmrg convex-c1) 4792c7c4e3dSmrg basic_machine=c1-convex 4802c7c4e3dSmrg os=-bsd 4812c7c4e3dSmrg ;; 4822c7c4e3dSmrg convex-c2) 4832c7c4e3dSmrg basic_machine=c2-convex 4842c7c4e3dSmrg os=-bsd 4852c7c4e3dSmrg ;; 4862c7c4e3dSmrg convex-c32) 4872c7c4e3dSmrg basic_machine=c32-convex 4882c7c4e3dSmrg os=-bsd 4892c7c4e3dSmrg ;; 4902c7c4e3dSmrg convex-c34) 4912c7c4e3dSmrg basic_machine=c34-convex 4922c7c4e3dSmrg os=-bsd 4932c7c4e3dSmrg ;; 4942c7c4e3dSmrg convex-c38) 4952c7c4e3dSmrg basic_machine=c38-convex 4962c7c4e3dSmrg os=-bsd 4972c7c4e3dSmrg ;; 4982c7c4e3dSmrg cray | j90) 4992c7c4e3dSmrg basic_machine=j90-cray 5002c7c4e3dSmrg os=-unicos 5012c7c4e3dSmrg ;; 5028650bb69Smrg craynv) 5038650bb69Smrg basic_machine=craynv-cray 5048650bb69Smrg os=-unicosmp 5058650bb69Smrg ;; 5068650bb69Smrg cr16) 5078650bb69Smrg basic_machine=cr16-unknown 5088650bb69Smrg os=-elf 5098650bb69Smrg ;; 5102c7c4e3dSmrg crds | unos) 5112c7c4e3dSmrg basic_machine=m68k-crds 5122c7c4e3dSmrg ;; 5138650bb69Smrg crisv32 | crisv32-* | etraxfs*) 5148650bb69Smrg basic_machine=crisv32-axis 5158650bb69Smrg ;; 5162c7c4e3dSmrg cris | cris-* | etrax*) 5172c7c4e3dSmrg basic_machine=cris-axis 5182c7c4e3dSmrg ;; 5198650bb69Smrg crx) 5208650bb69Smrg basic_machine=crx-unknown 5218650bb69Smrg os=-elf 5228650bb69Smrg ;; 5232c7c4e3dSmrg da30 | da30-*) 5242c7c4e3dSmrg basic_machine=m68k-da30 5252c7c4e3dSmrg ;; 5262c7c4e3dSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5272c7c4e3dSmrg basic_machine=mips-dec 5282c7c4e3dSmrg ;; 5292c7c4e3dSmrg decsystem10* | dec10*) 5302c7c4e3dSmrg basic_machine=pdp10-dec 5312c7c4e3dSmrg os=-tops10 5322c7c4e3dSmrg ;; 5332c7c4e3dSmrg decsystem20* | dec20*) 5342c7c4e3dSmrg basic_machine=pdp10-dec 5352c7c4e3dSmrg os=-tops20 5362c7c4e3dSmrg ;; 5372c7c4e3dSmrg delta | 3300 | motorola-3300 | motorola-delta \ 5382c7c4e3dSmrg | 3300-motorola | delta-motorola) 5392c7c4e3dSmrg basic_machine=m68k-motorola 5402c7c4e3dSmrg ;; 5412c7c4e3dSmrg delta88) 5422c7c4e3dSmrg basic_machine=m88k-motorola 5432c7c4e3dSmrg os=-sysv3 5442c7c4e3dSmrg ;; 5458650bb69Smrg dicos) 5468650bb69Smrg basic_machine=i686-pc 5478650bb69Smrg os=-dicos 5488650bb69Smrg ;; 5498650bb69Smrg djgpp) 5508650bb69Smrg basic_machine=i586-pc 5518650bb69Smrg os=-msdosdjgpp 5528650bb69Smrg ;; 5532c7c4e3dSmrg dpx20 | dpx20-*) 5542c7c4e3dSmrg basic_machine=rs6000-bull 5552c7c4e3dSmrg os=-bosx 5562c7c4e3dSmrg ;; 5572c7c4e3dSmrg dpx2* | dpx2*-bull) 5582c7c4e3dSmrg basic_machine=m68k-bull 5592c7c4e3dSmrg os=-sysv3 5602c7c4e3dSmrg ;; 5612c7c4e3dSmrg ebmon29k) 5622c7c4e3dSmrg basic_machine=a29k-amd 5632c7c4e3dSmrg os=-ebmon 5642c7c4e3dSmrg ;; 5652c7c4e3dSmrg elxsi) 5662c7c4e3dSmrg basic_machine=elxsi-elxsi 5672c7c4e3dSmrg os=-bsd 5682c7c4e3dSmrg ;; 5692c7c4e3dSmrg encore | umax | mmax) 5702c7c4e3dSmrg basic_machine=ns32k-encore 5712c7c4e3dSmrg ;; 5722c7c4e3dSmrg es1800 | OSE68k | ose68k | ose | OSE) 5732c7c4e3dSmrg basic_machine=m68k-ericsson 5742c7c4e3dSmrg os=-ose 5752c7c4e3dSmrg ;; 5762c7c4e3dSmrg fx2800) 5772c7c4e3dSmrg basic_machine=i860-alliant 5782c7c4e3dSmrg ;; 5792c7c4e3dSmrg genix) 5802c7c4e3dSmrg basic_machine=ns32k-ns 5812c7c4e3dSmrg ;; 5822c7c4e3dSmrg gmicro) 5832c7c4e3dSmrg basic_machine=tron-gmicro 5842c7c4e3dSmrg os=-sysv 5852c7c4e3dSmrg ;; 5862c7c4e3dSmrg go32) 5872c7c4e3dSmrg basic_machine=i386-pc 5882c7c4e3dSmrg os=-go32 5892c7c4e3dSmrg ;; 5902c7c4e3dSmrg h3050r* | hiux*) 5912c7c4e3dSmrg basic_machine=hppa1.1-hitachi 5922c7c4e3dSmrg os=-hiuxwe2 5932c7c4e3dSmrg ;; 5942c7c4e3dSmrg h8300hms) 5952c7c4e3dSmrg basic_machine=h8300-hitachi 5962c7c4e3dSmrg os=-hms 5972c7c4e3dSmrg ;; 5982c7c4e3dSmrg h8300xray) 5992c7c4e3dSmrg basic_machine=h8300-hitachi 6002c7c4e3dSmrg os=-xray 6012c7c4e3dSmrg ;; 6022c7c4e3dSmrg h8500hms) 6032c7c4e3dSmrg basic_machine=h8500-hitachi 6042c7c4e3dSmrg os=-hms 6052c7c4e3dSmrg ;; 6062c7c4e3dSmrg harris) 6072c7c4e3dSmrg basic_machine=m88k-harris 6082c7c4e3dSmrg os=-sysv3 6092c7c4e3dSmrg ;; 6102c7c4e3dSmrg hp300-*) 6112c7c4e3dSmrg basic_machine=m68k-hp 6122c7c4e3dSmrg ;; 6132c7c4e3dSmrg hp300bsd) 6142c7c4e3dSmrg basic_machine=m68k-hp 6152c7c4e3dSmrg os=-bsd 6162c7c4e3dSmrg ;; 6172c7c4e3dSmrg hp300hpux) 6182c7c4e3dSmrg basic_machine=m68k-hp 6192c7c4e3dSmrg os=-hpux 6202c7c4e3dSmrg ;; 6212c7c4e3dSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6222c7c4e3dSmrg basic_machine=hppa1.0-hp 6232c7c4e3dSmrg ;; 6242c7c4e3dSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6252c7c4e3dSmrg basic_machine=m68000-hp 6262c7c4e3dSmrg ;; 6272c7c4e3dSmrg hp9k3[2-9][0-9]) 6282c7c4e3dSmrg basic_machine=m68k-hp 6292c7c4e3dSmrg ;; 6302c7c4e3dSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6312c7c4e3dSmrg basic_machine=hppa1.0-hp 6322c7c4e3dSmrg ;; 6332c7c4e3dSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6342c7c4e3dSmrg basic_machine=hppa1.1-hp 6352c7c4e3dSmrg ;; 6362c7c4e3dSmrg hp9k78[0-9] | hp78[0-9]) 6372c7c4e3dSmrg # FIXME: really hppa2.0-hp 6382c7c4e3dSmrg basic_machine=hppa1.1-hp 6392c7c4e3dSmrg ;; 6402c7c4e3dSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6412c7c4e3dSmrg # FIXME: really hppa2.0-hp 6422c7c4e3dSmrg basic_machine=hppa1.1-hp 6432c7c4e3dSmrg ;; 6442c7c4e3dSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6452c7c4e3dSmrg basic_machine=hppa1.1-hp 6462c7c4e3dSmrg ;; 6472c7c4e3dSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6482c7c4e3dSmrg basic_machine=hppa1.0-hp 6492c7c4e3dSmrg ;; 6502c7c4e3dSmrg hppa-next) 6512c7c4e3dSmrg os=-nextstep3 6522c7c4e3dSmrg ;; 6532c7c4e3dSmrg hppaosf) 6542c7c4e3dSmrg basic_machine=hppa1.1-hp 6552c7c4e3dSmrg os=-osf 6562c7c4e3dSmrg ;; 6572c7c4e3dSmrg hppro) 6582c7c4e3dSmrg basic_machine=hppa1.1-hp 6592c7c4e3dSmrg os=-proelf 6602c7c4e3dSmrg ;; 6612c7c4e3dSmrg i370-ibm* | ibm*) 6622c7c4e3dSmrg basic_machine=i370-ibm 6632c7c4e3dSmrg ;; 6642c7c4e3dSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 6652c7c4e3dSmrg i*86v32) 6662c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6672c7c4e3dSmrg os=-sysv32 6682c7c4e3dSmrg ;; 6692c7c4e3dSmrg i*86v4*) 6702c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6712c7c4e3dSmrg os=-sysv4 6722c7c4e3dSmrg ;; 6732c7c4e3dSmrg i*86v) 6742c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6752c7c4e3dSmrg os=-sysv 6762c7c4e3dSmrg ;; 6772c7c4e3dSmrg i*86sol2) 6782c7c4e3dSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6792c7c4e3dSmrg os=-solaris2 6802c7c4e3dSmrg ;; 6812c7c4e3dSmrg i386mach) 6822c7c4e3dSmrg basic_machine=i386-mach 6832c7c4e3dSmrg os=-mach 6842c7c4e3dSmrg ;; 6852c7c4e3dSmrg i386-vsta | vsta) 6862c7c4e3dSmrg basic_machine=i386-unknown 6872c7c4e3dSmrg os=-vsta 6882c7c4e3dSmrg ;; 6892c7c4e3dSmrg iris | iris4d) 6902c7c4e3dSmrg basic_machine=mips-sgi 6912c7c4e3dSmrg case $os in 6922c7c4e3dSmrg -irix*) 6932c7c4e3dSmrg ;; 6942c7c4e3dSmrg *) 6952c7c4e3dSmrg os=-irix4 6962c7c4e3dSmrg ;; 6972c7c4e3dSmrg esac 6982c7c4e3dSmrg ;; 6992c7c4e3dSmrg isi68 | isi) 7002c7c4e3dSmrg basic_machine=m68k-isi 7012c7c4e3dSmrg os=-sysv 7022c7c4e3dSmrg ;; 7038650bb69Smrg m68knommu) 7048650bb69Smrg basic_machine=m68k-unknown 7058650bb69Smrg os=-linux 7068650bb69Smrg ;; 7078650bb69Smrg m68knommu-*) 7088650bb69Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7098650bb69Smrg os=-linux 7108650bb69Smrg ;; 7112c7c4e3dSmrg m88k-omron*) 7122c7c4e3dSmrg basic_machine=m88k-omron 7132c7c4e3dSmrg ;; 7142c7c4e3dSmrg magnum | m3230) 7152c7c4e3dSmrg basic_machine=mips-mips 7162c7c4e3dSmrg os=-sysv 7172c7c4e3dSmrg ;; 7182c7c4e3dSmrg merlin) 7192c7c4e3dSmrg basic_machine=ns32k-utek 7202c7c4e3dSmrg os=-sysv 7212c7c4e3dSmrg ;; 7222c7c4e3dSmrg mingw32) 7232c7c4e3dSmrg basic_machine=i386-pc 7242c7c4e3dSmrg os=-mingw32 7252c7c4e3dSmrg ;; 7268650bb69Smrg mingw32ce) 7278650bb69Smrg basic_machine=arm-unknown 7288650bb69Smrg os=-mingw32ce 7298650bb69Smrg ;; 7302c7c4e3dSmrg miniframe) 7312c7c4e3dSmrg basic_machine=m68000-convergent 7322c7c4e3dSmrg ;; 7332c7c4e3dSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7342c7c4e3dSmrg basic_machine=m68k-atari 7352c7c4e3dSmrg os=-mint 7362c7c4e3dSmrg ;; 7372c7c4e3dSmrg mips3*-*) 7382c7c4e3dSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7392c7c4e3dSmrg ;; 7402c7c4e3dSmrg mips3*) 7412c7c4e3dSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7422c7c4e3dSmrg ;; 7432c7c4e3dSmrg monitor) 7442c7c4e3dSmrg basic_machine=m68k-rom68k 7452c7c4e3dSmrg os=-coff 7462c7c4e3dSmrg ;; 7472c7c4e3dSmrg morphos) 7482c7c4e3dSmrg basic_machine=powerpc-unknown 7492c7c4e3dSmrg os=-morphos 7502c7c4e3dSmrg ;; 7512c7c4e3dSmrg msdos) 7522c7c4e3dSmrg basic_machine=i386-pc 7532c7c4e3dSmrg os=-msdos 7542c7c4e3dSmrg ;; 7558650bb69Smrg ms1-*) 7568650bb69Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7578650bb69Smrg ;; 7582c7c4e3dSmrg mvs) 7592c7c4e3dSmrg basic_machine=i370-ibm 7602c7c4e3dSmrg os=-mvs 7612c7c4e3dSmrg ;; 7622c7c4e3dSmrg ncr3000) 7632c7c4e3dSmrg basic_machine=i486-ncr 7642c7c4e3dSmrg os=-sysv4 7652c7c4e3dSmrg ;; 7662c7c4e3dSmrg netbsd386) 7672c7c4e3dSmrg basic_machine=i386-unknown 7682c7c4e3dSmrg os=-netbsd 7692c7c4e3dSmrg ;; 7702c7c4e3dSmrg netwinder) 7712c7c4e3dSmrg basic_machine=armv4l-rebel 7722c7c4e3dSmrg os=-linux 7732c7c4e3dSmrg ;; 7742c7c4e3dSmrg news | news700 | news800 | news900) 7752c7c4e3dSmrg basic_machine=m68k-sony 7762c7c4e3dSmrg os=-newsos 7772c7c4e3dSmrg ;; 7782c7c4e3dSmrg news1000) 7792c7c4e3dSmrg basic_machine=m68030-sony 7802c7c4e3dSmrg os=-newsos 7812c7c4e3dSmrg ;; 7822c7c4e3dSmrg news-3600 | risc-news) 7832c7c4e3dSmrg basic_machine=mips-sony 7842c7c4e3dSmrg os=-newsos 7852c7c4e3dSmrg ;; 7862c7c4e3dSmrg necv70) 7872c7c4e3dSmrg basic_machine=v70-nec 7882c7c4e3dSmrg os=-sysv 7892c7c4e3dSmrg ;; 7902c7c4e3dSmrg next | m*-next ) 7912c7c4e3dSmrg basic_machine=m68k-next 7922c7c4e3dSmrg case $os in 7932c7c4e3dSmrg -nextstep* ) 7942c7c4e3dSmrg ;; 7952c7c4e3dSmrg -ns2*) 7962c7c4e3dSmrg os=-nextstep2 7972c7c4e3dSmrg ;; 7982c7c4e3dSmrg *) 7992c7c4e3dSmrg os=-nextstep3 8002c7c4e3dSmrg ;; 8012c7c4e3dSmrg esac 8022c7c4e3dSmrg ;; 8032c7c4e3dSmrg nh3000) 8042c7c4e3dSmrg basic_machine=m68k-harris 8052c7c4e3dSmrg os=-cxux 8062c7c4e3dSmrg ;; 8072c7c4e3dSmrg nh[45]000) 8082c7c4e3dSmrg basic_machine=m88k-harris 8092c7c4e3dSmrg os=-cxux 8102c7c4e3dSmrg ;; 8112c7c4e3dSmrg nindy960) 8122c7c4e3dSmrg basic_machine=i960-intel 8132c7c4e3dSmrg os=-nindy 8142c7c4e3dSmrg ;; 8152c7c4e3dSmrg mon960) 8162c7c4e3dSmrg basic_machine=i960-intel 8172c7c4e3dSmrg os=-mon960 8182c7c4e3dSmrg ;; 8192c7c4e3dSmrg nonstopux) 8202c7c4e3dSmrg basic_machine=mips-compaq 8212c7c4e3dSmrg os=-nonstopux 8222c7c4e3dSmrg ;; 8232c7c4e3dSmrg np1) 8242c7c4e3dSmrg basic_machine=np1-gould 8252c7c4e3dSmrg ;; 8262c7c4e3dSmrg nsr-tandem) 8272c7c4e3dSmrg basic_machine=nsr-tandem 8282c7c4e3dSmrg ;; 8292c7c4e3dSmrg op50n-* | op60c-*) 8302c7c4e3dSmrg basic_machine=hppa1.1-oki 8312c7c4e3dSmrg os=-proelf 8322c7c4e3dSmrg ;; 8338650bb69Smrg openrisc | openrisc-*) 8342c7c4e3dSmrg basic_machine=or32-unknown 8358650bb69Smrg ;; 8368650bb69Smrg os400) 8378650bb69Smrg basic_machine=powerpc-ibm 8388650bb69Smrg os=-os400 8392c7c4e3dSmrg ;; 8402c7c4e3dSmrg OSE68000 | ose68000) 8412c7c4e3dSmrg basic_machine=m68000-ericsson 8422c7c4e3dSmrg os=-ose 8432c7c4e3dSmrg ;; 8442c7c4e3dSmrg os68k) 8452c7c4e3dSmrg basic_machine=m68k-none 8462c7c4e3dSmrg os=-os68k 8472c7c4e3dSmrg ;; 8482c7c4e3dSmrg pa-hitachi) 8492c7c4e3dSmrg basic_machine=hppa1.1-hitachi 8502c7c4e3dSmrg os=-hiuxwe2 8512c7c4e3dSmrg ;; 8522c7c4e3dSmrg paragon) 8532c7c4e3dSmrg basic_machine=i860-intel 8542c7c4e3dSmrg os=-osf 8552c7c4e3dSmrg ;; 8568650bb69Smrg parisc) 8578650bb69Smrg basic_machine=hppa-unknown 8588650bb69Smrg os=-linux 8598650bb69Smrg ;; 8608650bb69Smrg parisc-*) 8618650bb69Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 8628650bb69Smrg os=-linux 8638650bb69Smrg ;; 8642c7c4e3dSmrg pbd) 8652c7c4e3dSmrg basic_machine=sparc-tti 8662c7c4e3dSmrg ;; 8672c7c4e3dSmrg pbb) 8682c7c4e3dSmrg basic_machine=m68k-tti 8692c7c4e3dSmrg ;; 8702c7c4e3dSmrg pc532 | pc532-*) 8712c7c4e3dSmrg basic_machine=ns32k-pc532 8722c7c4e3dSmrg ;; 8738650bb69Smrg pc98) 8748650bb69Smrg basic_machine=i386-pc 8758650bb69Smrg ;; 8768650bb69Smrg pc98-*) 8778650bb69Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 8788650bb69Smrg ;; 8792c7c4e3dSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 8802c7c4e3dSmrg basic_machine=i586-pc 8812c7c4e3dSmrg ;; 8822c7c4e3dSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 8832c7c4e3dSmrg basic_machine=i686-pc 8842c7c4e3dSmrg ;; 8852c7c4e3dSmrg pentiumii | pentium2 | pentiumiii | pentium3) 8862c7c4e3dSmrg basic_machine=i686-pc 8872c7c4e3dSmrg ;; 8882c7c4e3dSmrg pentium4) 8892c7c4e3dSmrg basic_machine=i786-pc 8902c7c4e3dSmrg ;; 8912c7c4e3dSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 8922c7c4e3dSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 8932c7c4e3dSmrg ;; 8942c7c4e3dSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 8952c7c4e3dSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 8962c7c4e3dSmrg ;; 8972c7c4e3dSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 8982c7c4e3dSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 8992c7c4e3dSmrg ;; 9002c7c4e3dSmrg pentium4-*) 9012c7c4e3dSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9022c7c4e3dSmrg ;; 9032c7c4e3dSmrg pn) 9042c7c4e3dSmrg basic_machine=pn-gould 9052c7c4e3dSmrg ;; 9062c7c4e3dSmrg power) basic_machine=power-ibm 9072c7c4e3dSmrg ;; 9082c7c4e3dSmrg ppc) basic_machine=powerpc-unknown 9092c7c4e3dSmrg ;; 9102c7c4e3dSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9112c7c4e3dSmrg ;; 9122c7c4e3dSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 9132c7c4e3dSmrg basic_machine=powerpcle-unknown 9142c7c4e3dSmrg ;; 9152c7c4e3dSmrg ppcle-* | powerpclittle-*) 9162c7c4e3dSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9172c7c4e3dSmrg ;; 9182c7c4e3dSmrg ppc64) basic_machine=powerpc64-unknown 9192c7c4e3dSmrg ;; 9202c7c4e3dSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9212c7c4e3dSmrg ;; 9222c7c4e3dSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9232c7c4e3dSmrg basic_machine=powerpc64le-unknown 9242c7c4e3dSmrg ;; 9252c7c4e3dSmrg ppc64le-* | powerpc64little-*) 9262c7c4e3dSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9272c7c4e3dSmrg ;; 9282c7c4e3dSmrg ps2) 9292c7c4e3dSmrg basic_machine=i386-ibm 9302c7c4e3dSmrg ;; 9312c7c4e3dSmrg pw32) 9322c7c4e3dSmrg basic_machine=i586-unknown 9332c7c4e3dSmrg os=-pw32 9342c7c4e3dSmrg ;; 9358650bb69Smrg rdos) 9368650bb69Smrg basic_machine=i386-pc 9378650bb69Smrg os=-rdos 9388650bb69Smrg ;; 9392c7c4e3dSmrg rom68k) 9402c7c4e3dSmrg basic_machine=m68k-rom68k 9412c7c4e3dSmrg os=-coff 9422c7c4e3dSmrg ;; 9432c7c4e3dSmrg rm[46]00) 9442c7c4e3dSmrg basic_machine=mips-siemens 9452c7c4e3dSmrg ;; 9462c7c4e3dSmrg rtpc | rtpc-*) 9472c7c4e3dSmrg basic_machine=romp-ibm 9482c7c4e3dSmrg ;; 9498650bb69Smrg s390 | s390-*) 9508650bb69Smrg basic_machine=s390-ibm 9518650bb69Smrg ;; 9528650bb69Smrg s390x | s390x-*) 9538650bb69Smrg basic_machine=s390x-ibm 9548650bb69Smrg ;; 9552c7c4e3dSmrg sa29200) 9562c7c4e3dSmrg basic_machine=a29k-amd 9572c7c4e3dSmrg os=-udi 9582c7c4e3dSmrg ;; 9592c7c4e3dSmrg sb1) 9602c7c4e3dSmrg basic_machine=mipsisa64sb1-unknown 9612c7c4e3dSmrg ;; 9622c7c4e3dSmrg sb1el) 9632c7c4e3dSmrg basic_machine=mipsisa64sb1el-unknown 9642c7c4e3dSmrg ;; 9658650bb69Smrg sde) 9668650bb69Smrg basic_machine=mipsisa32-sde 9678650bb69Smrg os=-elf 9688650bb69Smrg ;; 9692c7c4e3dSmrg sei) 9702c7c4e3dSmrg basic_machine=mips-sei 9712c7c4e3dSmrg os=-seiux 9722c7c4e3dSmrg ;; 9732c7c4e3dSmrg sequent) 9742c7c4e3dSmrg basic_machine=i386-sequent 9752c7c4e3dSmrg ;; 9762c7c4e3dSmrg sh) 9772c7c4e3dSmrg basic_machine=sh-hitachi 9782c7c4e3dSmrg os=-hms 9792c7c4e3dSmrg ;; 9808650bb69Smrg sh5el) 9818650bb69Smrg basic_machine=sh5le-unknown 9828650bb69Smrg ;; 9832c7c4e3dSmrg sh64) 9842c7c4e3dSmrg basic_machine=sh64-unknown 9852c7c4e3dSmrg ;; 9862c7c4e3dSmrg sparclite-wrs | simso-wrs) 9872c7c4e3dSmrg basic_machine=sparclite-wrs 9882c7c4e3dSmrg os=-vxworks 9892c7c4e3dSmrg ;; 9902c7c4e3dSmrg sps7) 9912c7c4e3dSmrg basic_machine=m68k-bull 9922c7c4e3dSmrg os=-sysv2 9932c7c4e3dSmrg ;; 9942c7c4e3dSmrg spur) 9952c7c4e3dSmrg basic_machine=spur-unknown 9962c7c4e3dSmrg ;; 9972c7c4e3dSmrg st2000) 9982c7c4e3dSmrg basic_machine=m68k-tandem 9992c7c4e3dSmrg ;; 10002c7c4e3dSmrg stratus) 10012c7c4e3dSmrg basic_machine=i860-stratus 10022c7c4e3dSmrg os=-sysv4 10032c7c4e3dSmrg ;; 10042c7c4e3dSmrg sun2) 10052c7c4e3dSmrg basic_machine=m68000-sun 10062c7c4e3dSmrg ;; 10072c7c4e3dSmrg sun2os3) 10082c7c4e3dSmrg basic_machine=m68000-sun 10092c7c4e3dSmrg os=-sunos3 10102c7c4e3dSmrg ;; 10112c7c4e3dSmrg sun2os4) 10122c7c4e3dSmrg basic_machine=m68000-sun 10132c7c4e3dSmrg os=-sunos4 10142c7c4e3dSmrg ;; 10152c7c4e3dSmrg sun3os3) 10162c7c4e3dSmrg basic_machine=m68k-sun 10172c7c4e3dSmrg os=-sunos3 10182c7c4e3dSmrg ;; 10192c7c4e3dSmrg sun3os4) 10202c7c4e3dSmrg basic_machine=m68k-sun 10212c7c4e3dSmrg os=-sunos4 10222c7c4e3dSmrg ;; 10232c7c4e3dSmrg sun4os3) 10242c7c4e3dSmrg basic_machine=sparc-sun 10252c7c4e3dSmrg os=-sunos3 10262c7c4e3dSmrg ;; 10272c7c4e3dSmrg sun4os4) 10282c7c4e3dSmrg basic_machine=sparc-sun 10292c7c4e3dSmrg os=-sunos4 10302c7c4e3dSmrg ;; 10312c7c4e3dSmrg sun4sol2) 10322c7c4e3dSmrg basic_machine=sparc-sun 10332c7c4e3dSmrg os=-solaris2 10342c7c4e3dSmrg ;; 10352c7c4e3dSmrg sun3 | sun3-*) 10362c7c4e3dSmrg basic_machine=m68k-sun 10372c7c4e3dSmrg ;; 10382c7c4e3dSmrg sun4) 10392c7c4e3dSmrg basic_machine=sparc-sun 10402c7c4e3dSmrg ;; 10412c7c4e3dSmrg sun386 | sun386i | roadrunner) 10422c7c4e3dSmrg basic_machine=i386-sun 10432c7c4e3dSmrg ;; 10442c7c4e3dSmrg sv1) 10452c7c4e3dSmrg basic_machine=sv1-cray 10462c7c4e3dSmrg os=-unicos 10472c7c4e3dSmrg ;; 10482c7c4e3dSmrg symmetry) 10492c7c4e3dSmrg basic_machine=i386-sequent 10502c7c4e3dSmrg os=-dynix 10512c7c4e3dSmrg ;; 10522c7c4e3dSmrg t3e) 10532c7c4e3dSmrg basic_machine=alphaev5-cray 10542c7c4e3dSmrg os=-unicos 10552c7c4e3dSmrg ;; 10562c7c4e3dSmrg t90) 10572c7c4e3dSmrg basic_machine=t90-cray 10582c7c4e3dSmrg os=-unicos 10592c7c4e3dSmrg ;; 10602c7c4e3dSmrg tic54x | c54x*) 10612c7c4e3dSmrg basic_machine=tic54x-unknown 10622c7c4e3dSmrg os=-coff 10632c7c4e3dSmrg ;; 10642c7c4e3dSmrg tic55x | c55x*) 10652c7c4e3dSmrg basic_machine=tic55x-unknown 10662c7c4e3dSmrg os=-coff 10672c7c4e3dSmrg ;; 10682c7c4e3dSmrg tic6x | c6x*) 10692c7c4e3dSmrg basic_machine=tic6x-unknown 10702c7c4e3dSmrg os=-coff 10712c7c4e3dSmrg ;; 10728650bb69Smrg tile*) 10738650bb69Smrg basic_machine=tile-unknown 10748650bb69Smrg os=-linux-gnu 10758650bb69Smrg ;; 10762c7c4e3dSmrg tx39) 10772c7c4e3dSmrg basic_machine=mipstx39-unknown 10782c7c4e3dSmrg ;; 10792c7c4e3dSmrg tx39el) 10802c7c4e3dSmrg basic_machine=mipstx39el-unknown 10812c7c4e3dSmrg ;; 10822c7c4e3dSmrg toad1) 10832c7c4e3dSmrg basic_machine=pdp10-xkl 10842c7c4e3dSmrg os=-tops20 10852c7c4e3dSmrg ;; 10862c7c4e3dSmrg tower | tower-32) 10872c7c4e3dSmrg basic_machine=m68k-ncr 10882c7c4e3dSmrg ;; 10898650bb69Smrg tpf) 10908650bb69Smrg basic_machine=s390x-ibm 10918650bb69Smrg os=-tpf 10928650bb69Smrg ;; 10932c7c4e3dSmrg udi29k) 10942c7c4e3dSmrg basic_machine=a29k-amd 10952c7c4e3dSmrg os=-udi 10962c7c4e3dSmrg ;; 10972c7c4e3dSmrg ultra3) 10982c7c4e3dSmrg basic_machine=a29k-nyu 10992c7c4e3dSmrg os=-sym1 11002c7c4e3dSmrg ;; 11012c7c4e3dSmrg v810 | necv810) 11022c7c4e3dSmrg basic_machine=v810-nec 11032c7c4e3dSmrg os=-none 11042c7c4e3dSmrg ;; 11052c7c4e3dSmrg vaxv) 11062c7c4e3dSmrg basic_machine=vax-dec 11072c7c4e3dSmrg os=-sysv 11082c7c4e3dSmrg ;; 11092c7c4e3dSmrg vms) 11102c7c4e3dSmrg basic_machine=vax-dec 11112c7c4e3dSmrg os=-vms 11122c7c4e3dSmrg ;; 11132c7c4e3dSmrg vpp*|vx|vx-*) 11142c7c4e3dSmrg basic_machine=f301-fujitsu 11152c7c4e3dSmrg ;; 11162c7c4e3dSmrg vxworks960) 11172c7c4e3dSmrg basic_machine=i960-wrs 11182c7c4e3dSmrg os=-vxworks 11192c7c4e3dSmrg ;; 11202c7c4e3dSmrg vxworks68) 11212c7c4e3dSmrg basic_machine=m68k-wrs 11222c7c4e3dSmrg os=-vxworks 11232c7c4e3dSmrg ;; 11242c7c4e3dSmrg vxworks29k) 11252c7c4e3dSmrg basic_machine=a29k-wrs 11262c7c4e3dSmrg os=-vxworks 11272c7c4e3dSmrg ;; 11282c7c4e3dSmrg w65*) 11292c7c4e3dSmrg basic_machine=w65-wdc 11302c7c4e3dSmrg os=-none 11312c7c4e3dSmrg ;; 11322c7c4e3dSmrg w89k-*) 11332c7c4e3dSmrg basic_machine=hppa1.1-winbond 11342c7c4e3dSmrg os=-proelf 11352c7c4e3dSmrg ;; 11368650bb69Smrg xbox) 11378650bb69Smrg basic_machine=i686-pc 11388650bb69Smrg os=-mingw32 11398650bb69Smrg ;; 11402c7c4e3dSmrg xps | xps100) 11412c7c4e3dSmrg basic_machine=xps100-honeywell 11422c7c4e3dSmrg ;; 11432c7c4e3dSmrg ymp) 11442c7c4e3dSmrg basic_machine=ymp-cray 11452c7c4e3dSmrg os=-unicos 11462c7c4e3dSmrg ;; 11472c7c4e3dSmrg z8k-*-coff) 11482c7c4e3dSmrg basic_machine=z8k-unknown 11492c7c4e3dSmrg os=-sim 11502c7c4e3dSmrg ;; 11518650bb69Smrg z80-*-coff) 11528650bb69Smrg basic_machine=z80-unknown 11538650bb69Smrg os=-sim 11548650bb69Smrg ;; 11552c7c4e3dSmrg none) 11562c7c4e3dSmrg basic_machine=none-none 11572c7c4e3dSmrg os=-none 11582c7c4e3dSmrg ;; 11592c7c4e3dSmrg 11602c7c4e3dSmrg# Here we handle the default manufacturer of certain CPU types. It is in 11612c7c4e3dSmrg# some cases the only manufacturer, in others, it is the most popular. 11622c7c4e3dSmrg w89k) 11632c7c4e3dSmrg basic_machine=hppa1.1-winbond 11642c7c4e3dSmrg ;; 11652c7c4e3dSmrg op50n) 11662c7c4e3dSmrg basic_machine=hppa1.1-oki 11672c7c4e3dSmrg ;; 11682c7c4e3dSmrg op60c) 11692c7c4e3dSmrg basic_machine=hppa1.1-oki 11702c7c4e3dSmrg ;; 11712c7c4e3dSmrg romp) 11722c7c4e3dSmrg basic_machine=romp-ibm 11732c7c4e3dSmrg ;; 11748650bb69Smrg mmix) 11758650bb69Smrg basic_machine=mmix-knuth 11768650bb69Smrg ;; 11772c7c4e3dSmrg rs6000) 11782c7c4e3dSmrg basic_machine=rs6000-ibm 11792c7c4e3dSmrg ;; 11802c7c4e3dSmrg vax) 11812c7c4e3dSmrg basic_machine=vax-dec 11822c7c4e3dSmrg ;; 11832c7c4e3dSmrg pdp10) 11842c7c4e3dSmrg # there are many clones, so DEC is not a safe bet 11852c7c4e3dSmrg basic_machine=pdp10-unknown 11862c7c4e3dSmrg ;; 11872c7c4e3dSmrg pdp11) 11882c7c4e3dSmrg basic_machine=pdp11-dec 11892c7c4e3dSmrg ;; 11902c7c4e3dSmrg we32k) 11912c7c4e3dSmrg basic_machine=we32k-att 11922c7c4e3dSmrg ;; 11938650bb69Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 11942c7c4e3dSmrg basic_machine=sh-unknown 11952c7c4e3dSmrg ;; 11968650bb69Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 11972c7c4e3dSmrg basic_machine=sparc-sun 11982c7c4e3dSmrg ;; 11992c7c4e3dSmrg cydra) 12002c7c4e3dSmrg basic_machine=cydra-cydrome 12012c7c4e3dSmrg ;; 12022c7c4e3dSmrg orion) 12032c7c4e3dSmrg basic_machine=orion-highlevel 12042c7c4e3dSmrg ;; 12052c7c4e3dSmrg orion105) 12062c7c4e3dSmrg basic_machine=clipper-highlevel 12072c7c4e3dSmrg ;; 12082c7c4e3dSmrg mac | mpw | mac-mpw) 12092c7c4e3dSmrg basic_machine=m68k-apple 12102c7c4e3dSmrg ;; 12112c7c4e3dSmrg pmac | pmac-mpw) 12122c7c4e3dSmrg basic_machine=powerpc-apple 12132c7c4e3dSmrg ;; 12142c7c4e3dSmrg *-unknown) 12152c7c4e3dSmrg # Make sure to match an already-canonicalized machine name. 12162c7c4e3dSmrg ;; 12172c7c4e3dSmrg *) 12182c7c4e3dSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12192c7c4e3dSmrg exit 1 12202c7c4e3dSmrg ;; 12212c7c4e3dSmrgesac 12222c7c4e3dSmrg 12232c7c4e3dSmrg# Here we canonicalize certain aliases for manufacturers. 12242c7c4e3dSmrgcase $basic_machine in 12252c7c4e3dSmrg *-digital*) 12262c7c4e3dSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12272c7c4e3dSmrg ;; 12282c7c4e3dSmrg *-commodore*) 12292c7c4e3dSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12302c7c4e3dSmrg ;; 12312c7c4e3dSmrg *) 12322c7c4e3dSmrg ;; 12332c7c4e3dSmrgesac 12342c7c4e3dSmrg 12352c7c4e3dSmrg# Decode manufacturer-specific aliases for certain operating systems. 12362c7c4e3dSmrg 12372c7c4e3dSmrgif [ x"$os" != x"" ] 12382c7c4e3dSmrgthen 12392c7c4e3dSmrgcase $os in 12402c7c4e3dSmrg # First match some system type aliases 12412c7c4e3dSmrg # that might get confused with valid system types. 12422c7c4e3dSmrg # -solaris* is a basic system type, with this one exception. 12432c7c4e3dSmrg -solaris1 | -solaris1.*) 12442c7c4e3dSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 12452c7c4e3dSmrg ;; 12462c7c4e3dSmrg -solaris) 12472c7c4e3dSmrg os=-solaris2 12482c7c4e3dSmrg ;; 12492c7c4e3dSmrg -svr4*) 12502c7c4e3dSmrg os=-sysv4 12512c7c4e3dSmrg ;; 12522c7c4e3dSmrg -unixware*) 12532c7c4e3dSmrg os=-sysv4.2uw 12542c7c4e3dSmrg ;; 12552c7c4e3dSmrg -gnu/linux*) 12562c7c4e3dSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 12572c7c4e3dSmrg ;; 12582c7c4e3dSmrg # First accept the basic system types. 12592c7c4e3dSmrg # The portable systems comes first. 12602c7c4e3dSmrg # Each alternative MUST END IN A *, to match a version number. 12612c7c4e3dSmrg # -sysv* is not here because it comes later, after sysvr4. 12622c7c4e3dSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 12632c7c4e3dSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 12642c7c4e3dSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 12658650bb69Smrg | -kopensolaris* \ 12662c7c4e3dSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 12678650bb69Smrg | -aos* | -aros* \ 12682c7c4e3dSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 12692c7c4e3dSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 12708650bb69Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 12718650bb69Smrg | -openbsd* | -solidbsd* \ 12728650bb69Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 12738650bb69Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 12742c7c4e3dSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 12752c7c4e3dSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 12768650bb69Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 12772c7c4e3dSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 12788650bb69Smrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 12798650bb69Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 12802c7c4e3dSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 12812c7c4e3dSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 12822c7c4e3dSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 12832c7c4e3dSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 12842c7c4e3dSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 12858650bb69Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 12868650bb69Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) 12872c7c4e3dSmrg # Remember, each alternative MUST END IN *, to match a version number. 12882c7c4e3dSmrg ;; 12892c7c4e3dSmrg -qnx*) 12902c7c4e3dSmrg case $basic_machine in 12912c7c4e3dSmrg x86-* | i*86-*) 12922c7c4e3dSmrg ;; 12932c7c4e3dSmrg *) 12942c7c4e3dSmrg os=-nto$os 12952c7c4e3dSmrg ;; 12962c7c4e3dSmrg esac 12972c7c4e3dSmrg ;; 12982c7c4e3dSmrg -nto-qnx*) 12992c7c4e3dSmrg ;; 13002c7c4e3dSmrg -nto*) 13012c7c4e3dSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13022c7c4e3dSmrg ;; 13032c7c4e3dSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13048650bb69Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13052c7c4e3dSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13062c7c4e3dSmrg ;; 13072c7c4e3dSmrg -mac*) 13082c7c4e3dSmrg os=`echo $os | sed -e 's|mac|macos|'` 13092c7c4e3dSmrg ;; 13108650bb69Smrg -linux-dietlibc) 13118650bb69Smrg os=-linux-dietlibc 13128650bb69Smrg ;; 13132c7c4e3dSmrg -linux*) 13142c7c4e3dSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13152c7c4e3dSmrg ;; 13162c7c4e3dSmrg -sunos5*) 13172c7c4e3dSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13182c7c4e3dSmrg ;; 13192c7c4e3dSmrg -sunos6*) 13202c7c4e3dSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13212c7c4e3dSmrg ;; 13222c7c4e3dSmrg -opened*) 13232c7c4e3dSmrg os=-openedition 13242c7c4e3dSmrg ;; 13258650bb69Smrg -os400*) 13268650bb69Smrg os=-os400 13278650bb69Smrg ;; 13282c7c4e3dSmrg -wince*) 13292c7c4e3dSmrg os=-wince 13302c7c4e3dSmrg ;; 13312c7c4e3dSmrg -osfrose*) 13322c7c4e3dSmrg os=-osfrose 13332c7c4e3dSmrg ;; 13342c7c4e3dSmrg -osf*) 13352c7c4e3dSmrg os=-osf 13362c7c4e3dSmrg ;; 13372c7c4e3dSmrg -utek*) 13382c7c4e3dSmrg os=-bsd 13392c7c4e3dSmrg ;; 13402c7c4e3dSmrg -dynix*) 13412c7c4e3dSmrg os=-bsd 13422c7c4e3dSmrg ;; 13432c7c4e3dSmrg -acis*) 13442c7c4e3dSmrg os=-aos 13452c7c4e3dSmrg ;; 13462c7c4e3dSmrg -atheos*) 13472c7c4e3dSmrg os=-atheos 13482c7c4e3dSmrg ;; 13498650bb69Smrg -syllable*) 13508650bb69Smrg os=-syllable 13518650bb69Smrg ;; 13522c7c4e3dSmrg -386bsd) 13532c7c4e3dSmrg os=-bsd 13542c7c4e3dSmrg ;; 13552c7c4e3dSmrg -ctix* | -uts*) 13562c7c4e3dSmrg os=-sysv 13572c7c4e3dSmrg ;; 13582c7c4e3dSmrg -nova*) 13592c7c4e3dSmrg os=-rtmk-nova 13602c7c4e3dSmrg ;; 13612c7c4e3dSmrg -ns2 ) 13622c7c4e3dSmrg os=-nextstep2 13632c7c4e3dSmrg ;; 13642c7c4e3dSmrg -nsk*) 13652c7c4e3dSmrg os=-nsk 13662c7c4e3dSmrg ;; 13672c7c4e3dSmrg # Preserve the version number of sinix5. 13682c7c4e3dSmrg -sinix5.*) 13692c7c4e3dSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 13702c7c4e3dSmrg ;; 13712c7c4e3dSmrg -sinix*) 13722c7c4e3dSmrg os=-sysv4 13732c7c4e3dSmrg ;; 13748650bb69Smrg -tpf*) 13758650bb69Smrg os=-tpf 13768650bb69Smrg ;; 13772c7c4e3dSmrg -triton*) 13782c7c4e3dSmrg os=-sysv3 13792c7c4e3dSmrg ;; 13802c7c4e3dSmrg -oss*) 13812c7c4e3dSmrg os=-sysv3 13822c7c4e3dSmrg ;; 13832c7c4e3dSmrg -svr4) 13842c7c4e3dSmrg os=-sysv4 13852c7c4e3dSmrg ;; 13862c7c4e3dSmrg -svr3) 13872c7c4e3dSmrg os=-sysv3 13882c7c4e3dSmrg ;; 13892c7c4e3dSmrg -sysvr4) 13902c7c4e3dSmrg os=-sysv4 13912c7c4e3dSmrg ;; 13922c7c4e3dSmrg # This must come after -sysvr4. 13932c7c4e3dSmrg -sysv*) 13942c7c4e3dSmrg ;; 13952c7c4e3dSmrg -ose*) 13962c7c4e3dSmrg os=-ose 13972c7c4e3dSmrg ;; 13982c7c4e3dSmrg -es1800*) 13992c7c4e3dSmrg os=-ose 14002c7c4e3dSmrg ;; 14012c7c4e3dSmrg -xenix) 14022c7c4e3dSmrg os=-xenix 14032c7c4e3dSmrg ;; 14042c7c4e3dSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14052c7c4e3dSmrg os=-mint 14062c7c4e3dSmrg ;; 14072c7c4e3dSmrg -aros*) 14082c7c4e3dSmrg os=-aros 14092c7c4e3dSmrg ;; 14102c7c4e3dSmrg -kaos*) 14112c7c4e3dSmrg os=-kaos 14122c7c4e3dSmrg ;; 14138650bb69Smrg -zvmoe) 14148650bb69Smrg os=-zvmoe 14158650bb69Smrg ;; 14168650bb69Smrg -dicos*) 14178650bb69Smrg os=-dicos 14188650bb69Smrg ;; 14192c7c4e3dSmrg -none) 14202c7c4e3dSmrg ;; 14212c7c4e3dSmrg *) 14222c7c4e3dSmrg # Get rid of the `-' at the beginning of $os. 14232c7c4e3dSmrg os=`echo $os | sed 's/[^-]*-//'` 14242c7c4e3dSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14252c7c4e3dSmrg exit 1 14262c7c4e3dSmrg ;; 14272c7c4e3dSmrgesac 14282c7c4e3dSmrgelse 14292c7c4e3dSmrg 14302c7c4e3dSmrg# Here we handle the default operating systems that come with various machines. 14312c7c4e3dSmrg# The value should be what the vendor currently ships out the door with their 14322c7c4e3dSmrg# machine or put another way, the most popular os provided with the machine. 14332c7c4e3dSmrg 14342c7c4e3dSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14352c7c4e3dSmrg# "-sun"), then you have to tell the case statement up towards the top 14362c7c4e3dSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14372c7c4e3dSmrg# will signal an error saying that MANUFACTURER isn't an operating 14382c7c4e3dSmrg# system, and we'll never get to this point. 14392c7c4e3dSmrg 14402c7c4e3dSmrgcase $basic_machine in 14418650bb69Smrg score-*) 14428650bb69Smrg os=-elf 14438650bb69Smrg ;; 14448650bb69Smrg spu-*) 14458650bb69Smrg os=-elf 14468650bb69Smrg ;; 14472c7c4e3dSmrg *-acorn) 14482c7c4e3dSmrg os=-riscix1.2 14492c7c4e3dSmrg ;; 14502c7c4e3dSmrg arm*-rebel) 14512c7c4e3dSmrg os=-linux 14522c7c4e3dSmrg ;; 14532c7c4e3dSmrg arm*-semi) 14542c7c4e3dSmrg os=-aout 14552c7c4e3dSmrg ;; 14568650bb69Smrg c4x-* | tic4x-*) 14578650bb69Smrg os=-coff 14582c7c4e3dSmrg ;; 14592c7c4e3dSmrg # This must come before the *-dec entry. 14602c7c4e3dSmrg pdp10-*) 14612c7c4e3dSmrg os=-tops20 14622c7c4e3dSmrg ;; 14632c7c4e3dSmrg pdp11-*) 14642c7c4e3dSmrg os=-none 14652c7c4e3dSmrg ;; 14662c7c4e3dSmrg *-dec | vax-*) 14672c7c4e3dSmrg os=-ultrix4.2 14682c7c4e3dSmrg ;; 14692c7c4e3dSmrg m68*-apollo) 14702c7c4e3dSmrg os=-domain 14712c7c4e3dSmrg ;; 14722c7c4e3dSmrg i386-sun) 14732c7c4e3dSmrg os=-sunos4.0.2 14742c7c4e3dSmrg ;; 14752c7c4e3dSmrg m68000-sun) 14762c7c4e3dSmrg os=-sunos3 14772c7c4e3dSmrg # This also exists in the configure program, but was not the 14782c7c4e3dSmrg # default. 14792c7c4e3dSmrg # os=-sunos4 14802c7c4e3dSmrg ;; 14812c7c4e3dSmrg m68*-cisco) 14822c7c4e3dSmrg os=-aout 14832c7c4e3dSmrg ;; 14848650bb69Smrg mep-*) 14858650bb69Smrg os=-elf 14868650bb69Smrg ;; 14872c7c4e3dSmrg mips*-cisco) 14882c7c4e3dSmrg os=-elf 14892c7c4e3dSmrg ;; 14902c7c4e3dSmrg mips*-*) 14912c7c4e3dSmrg os=-elf 14922c7c4e3dSmrg ;; 14932c7c4e3dSmrg or32-*) 14942c7c4e3dSmrg os=-coff 14952c7c4e3dSmrg ;; 14962c7c4e3dSmrg *-tti) # must be before sparc entry or we get the wrong os. 14972c7c4e3dSmrg os=-sysv3 14982c7c4e3dSmrg ;; 14992c7c4e3dSmrg sparc-* | *-sun) 15002c7c4e3dSmrg os=-sunos4.1.1 15012c7c4e3dSmrg ;; 15022c7c4e3dSmrg *-be) 15032c7c4e3dSmrg os=-beos 15042c7c4e3dSmrg ;; 15058650bb69Smrg *-haiku) 15068650bb69Smrg os=-haiku 15078650bb69Smrg ;; 15082c7c4e3dSmrg *-ibm) 15092c7c4e3dSmrg os=-aix 15102c7c4e3dSmrg ;; 15118650bb69Smrg *-knuth) 15128650bb69Smrg os=-mmixware 15138650bb69Smrg ;; 15142c7c4e3dSmrg *-wec) 15152c7c4e3dSmrg os=-proelf 15162c7c4e3dSmrg ;; 15172c7c4e3dSmrg *-winbond) 15182c7c4e3dSmrg os=-proelf 15192c7c4e3dSmrg ;; 15202c7c4e3dSmrg *-oki) 15212c7c4e3dSmrg os=-proelf 15222c7c4e3dSmrg ;; 15232c7c4e3dSmrg *-hp) 15242c7c4e3dSmrg os=-hpux 15252c7c4e3dSmrg ;; 15262c7c4e3dSmrg *-hitachi) 15272c7c4e3dSmrg os=-hiux 15282c7c4e3dSmrg ;; 15292c7c4e3dSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 15302c7c4e3dSmrg os=-sysv 15312c7c4e3dSmrg ;; 15322c7c4e3dSmrg *-cbm) 15332c7c4e3dSmrg os=-amigaos 15342c7c4e3dSmrg ;; 15352c7c4e3dSmrg *-dg) 15362c7c4e3dSmrg os=-dgux 15372c7c4e3dSmrg ;; 15382c7c4e3dSmrg *-dolphin) 15392c7c4e3dSmrg os=-sysv3 15402c7c4e3dSmrg ;; 15412c7c4e3dSmrg m68k-ccur) 15422c7c4e3dSmrg os=-rtu 15432c7c4e3dSmrg ;; 15442c7c4e3dSmrg m88k-omron*) 15452c7c4e3dSmrg os=-luna 15462c7c4e3dSmrg ;; 15472c7c4e3dSmrg *-next ) 15482c7c4e3dSmrg os=-nextstep 15492c7c4e3dSmrg ;; 15502c7c4e3dSmrg *-sequent) 15512c7c4e3dSmrg os=-ptx 15522c7c4e3dSmrg ;; 15532c7c4e3dSmrg *-crds) 15542c7c4e3dSmrg os=-unos 15552c7c4e3dSmrg ;; 15562c7c4e3dSmrg *-ns) 15572c7c4e3dSmrg os=-genix 15582c7c4e3dSmrg ;; 15592c7c4e3dSmrg i370-*) 15602c7c4e3dSmrg os=-mvs 15612c7c4e3dSmrg ;; 15622c7c4e3dSmrg *-next) 15632c7c4e3dSmrg os=-nextstep3 15642c7c4e3dSmrg ;; 15652c7c4e3dSmrg *-gould) 15662c7c4e3dSmrg os=-sysv 15672c7c4e3dSmrg ;; 15682c7c4e3dSmrg *-highlevel) 15692c7c4e3dSmrg os=-bsd 15702c7c4e3dSmrg ;; 15712c7c4e3dSmrg *-encore) 15722c7c4e3dSmrg os=-bsd 15732c7c4e3dSmrg ;; 15742c7c4e3dSmrg *-sgi) 15752c7c4e3dSmrg os=-irix 15762c7c4e3dSmrg ;; 15772c7c4e3dSmrg *-siemens) 15782c7c4e3dSmrg os=-sysv4 15792c7c4e3dSmrg ;; 15802c7c4e3dSmrg *-masscomp) 15812c7c4e3dSmrg os=-rtu 15822c7c4e3dSmrg ;; 15832c7c4e3dSmrg f30[01]-fujitsu | f700-fujitsu) 15842c7c4e3dSmrg os=-uxpv 15852c7c4e3dSmrg ;; 15862c7c4e3dSmrg *-rom68k) 15872c7c4e3dSmrg os=-coff 15882c7c4e3dSmrg ;; 15892c7c4e3dSmrg *-*bug) 15902c7c4e3dSmrg os=-coff 15912c7c4e3dSmrg ;; 15922c7c4e3dSmrg *-apple) 15932c7c4e3dSmrg os=-macos 15942c7c4e3dSmrg ;; 15952c7c4e3dSmrg *-atari*) 15962c7c4e3dSmrg os=-mint 15972c7c4e3dSmrg ;; 15982c7c4e3dSmrg *) 15992c7c4e3dSmrg os=-none 16002c7c4e3dSmrg ;; 16012c7c4e3dSmrgesac 16022c7c4e3dSmrgfi 16032c7c4e3dSmrg 16042c7c4e3dSmrg# Here we handle the case where we know the os, and the CPU type, but not the 16052c7c4e3dSmrg# manufacturer. We pick the logical manufacturer. 16062c7c4e3dSmrgvendor=unknown 16072c7c4e3dSmrgcase $basic_machine in 16082c7c4e3dSmrg *-unknown) 16092c7c4e3dSmrg case $os in 16102c7c4e3dSmrg -riscix*) 16112c7c4e3dSmrg vendor=acorn 16122c7c4e3dSmrg ;; 16132c7c4e3dSmrg -sunos*) 16142c7c4e3dSmrg vendor=sun 16152c7c4e3dSmrg ;; 16162c7c4e3dSmrg -aix*) 16172c7c4e3dSmrg vendor=ibm 16182c7c4e3dSmrg ;; 16192c7c4e3dSmrg -beos*) 16202c7c4e3dSmrg vendor=be 16212c7c4e3dSmrg ;; 16222c7c4e3dSmrg -hpux*) 16232c7c4e3dSmrg vendor=hp 16242c7c4e3dSmrg ;; 16252c7c4e3dSmrg -mpeix*) 16262c7c4e3dSmrg vendor=hp 16272c7c4e3dSmrg ;; 16282c7c4e3dSmrg -hiux*) 16292c7c4e3dSmrg vendor=hitachi 16302c7c4e3dSmrg ;; 16312c7c4e3dSmrg -unos*) 16322c7c4e3dSmrg vendor=crds 16332c7c4e3dSmrg ;; 16342c7c4e3dSmrg -dgux*) 16352c7c4e3dSmrg vendor=dg 16362c7c4e3dSmrg ;; 16372c7c4e3dSmrg -luna*) 16382c7c4e3dSmrg vendor=omron 16392c7c4e3dSmrg ;; 16402c7c4e3dSmrg -genix*) 16412c7c4e3dSmrg vendor=ns 16422c7c4e3dSmrg ;; 16432c7c4e3dSmrg -mvs* | -opened*) 16442c7c4e3dSmrg vendor=ibm 16452c7c4e3dSmrg ;; 16468650bb69Smrg -os400*) 16478650bb69Smrg vendor=ibm 16488650bb69Smrg ;; 16492c7c4e3dSmrg -ptx*) 16502c7c4e3dSmrg vendor=sequent 16512c7c4e3dSmrg ;; 16528650bb69Smrg -tpf*) 16538650bb69Smrg vendor=ibm 16548650bb69Smrg ;; 16552c7c4e3dSmrg -vxsim* | -vxworks* | -windiss*) 16562c7c4e3dSmrg vendor=wrs 16572c7c4e3dSmrg ;; 16582c7c4e3dSmrg -aux*) 16592c7c4e3dSmrg vendor=apple 16602c7c4e3dSmrg ;; 16612c7c4e3dSmrg -hms*) 16622c7c4e3dSmrg vendor=hitachi 16632c7c4e3dSmrg ;; 16642c7c4e3dSmrg -mpw* | -macos*) 16652c7c4e3dSmrg vendor=apple 16662c7c4e3dSmrg ;; 16672c7c4e3dSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 16682c7c4e3dSmrg vendor=atari 16692c7c4e3dSmrg ;; 16702c7c4e3dSmrg -vos*) 16712c7c4e3dSmrg vendor=stratus 16722c7c4e3dSmrg ;; 16732c7c4e3dSmrg esac 16742c7c4e3dSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 16752c7c4e3dSmrg ;; 16762c7c4e3dSmrgesac 16772c7c4e3dSmrg 16782c7c4e3dSmrgecho $basic_machine$os 16798650bb69Smrgexit 16802c7c4e3dSmrg 16812c7c4e3dSmrg# Local variables: 16822c7c4e3dSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 16832c7c4e3dSmrg# time-stamp-start: "timestamp='" 16842c7c4e3dSmrg# time-stamp-format: "%:y-%02m-%02d" 16852c7c4e3dSmrg# time-stamp-end: "'" 16862c7c4e3dSmrg# End: 1687