config.sub revision 54b44505
14a041c5bSmacallan#! /bin/sh 24a041c5bSmacallan# Configuration validation subroutine script. 34a041c5bSmacallan# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 454b44505Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 554b44505Smrg# 2011, 2012 Free Software Foundation, Inc. 64a041c5bSmacallan 754b44505Smrgtimestamp='2012-08-18' 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 2454b44505Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 254a041c5bSmacallan# 264a041c5bSmacallan# As a special exception to the GNU General Public License, if you 274a041c5bSmacallan# distribute this file as part of a program that contains a 284a041c5bSmacallan# configuration script generated by Autoconf, you may include it under 294a041c5bSmacallan# the same distribution terms that you use for the rest of that program. 304a041c5bSmacallan 314a041c5bSmacallan 324a041c5bSmacallan# Please send patches to <config-patches@gnu.org>. Submit a context 3354b44505Smrg# diff and a properly formatted GNU ChangeLog entry. 344a041c5bSmacallan# 354a041c5bSmacallan# Configuration subroutine to validate and canonicalize a configuration type. 364a041c5bSmacallan# Supply the specified configuration type as an argument. 374a041c5bSmacallan# If it is invalid, we print an error message on stderr and exit with code 1. 384a041c5bSmacallan# Otherwise, we print the canonical config type on stdout and succeed. 394a041c5bSmacallan 4054b44505Smrg# You can get the latest version of this script from: 4154b44505Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4254b44505Smrg 434a041c5bSmacallan# This file is supposed to be the same for all GNU packages 444a041c5bSmacallan# and recognize all the CPU types, system types and aliases 454a041c5bSmacallan# that are meaningful with *any* GNU software. 464a041c5bSmacallan# Each package is responsible for reporting which valid configurations 474a041c5bSmacallan# it does not support. The user should be able to distinguish 484a041c5bSmacallan# a failure to support a valid configuration from a meaningless 494a041c5bSmacallan# configuration. 504a041c5bSmacallan 514a041c5bSmacallan# The goal of this file is to map all the various variations of a given 524a041c5bSmacallan# machine specification into a single specification in the form: 534a041c5bSmacallan# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 544a041c5bSmacallan# or in some cases, the newer four-part form: 554a041c5bSmacallan# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 564a041c5bSmacallan# It is wrong to echo any other type of specification. 574a041c5bSmacallan 584a041c5bSmacallanme=`echo "$0" | sed -e 's,.*/,,'` 594a041c5bSmacallan 604a041c5bSmacallanusage="\ 614a041c5bSmacallanUsage: $0 [OPTION] CPU-MFR-OPSYS 624a041c5bSmacallan $0 [OPTION] ALIAS 634a041c5bSmacallan 644a041c5bSmacallanCanonicalize a configuration name. 654a041c5bSmacallan 664a041c5bSmacallanOperation modes: 674a041c5bSmacallan -h, --help print this help, then exit 684a041c5bSmacallan -t, --time-stamp print date of last modification, then exit 694a041c5bSmacallan -v, --version print version number, then exit 704a041c5bSmacallan 714a041c5bSmacallanReport bugs and patches to <config-patches@gnu.org>." 724a041c5bSmacallan 734a041c5bSmacallanversion="\ 744a041c5bSmacallanGNU config.sub ($timestamp) 754a041c5bSmacallan 7654b44505SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 7754b44505Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 7854b44505SmrgFree Software Foundation, Inc. 794a041c5bSmacallan 804a041c5bSmacallanThis is free software; see the source for copying conditions. There is NO 814a041c5bSmacallanwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 824a041c5bSmacallan 834a041c5bSmacallanhelp=" 844a041c5bSmacallanTry \`$me --help' for more information." 854a041c5bSmacallan 864a041c5bSmacallan# Parse command line 874a041c5bSmacallanwhile test $# -gt 0 ; do 884a041c5bSmacallan case $1 in 894a041c5bSmacallan --time-stamp | --time* | -t ) 904a041c5bSmacallan echo "$timestamp" ; exit ;; 914a041c5bSmacallan --version | -v ) 924a041c5bSmacallan echo "$version" ; exit ;; 934a041c5bSmacallan --help | --h* | -h ) 944a041c5bSmacallan echo "$usage"; exit ;; 954a041c5bSmacallan -- ) # Stop option processing 964a041c5bSmacallan shift; break ;; 974a041c5bSmacallan - ) # Use stdin as input. 984a041c5bSmacallan break ;; 994a041c5bSmacallan -* ) 1004a041c5bSmacallan echo "$me: invalid option $1$help" 1014a041c5bSmacallan exit 1 ;; 1024a041c5bSmacallan 1034a041c5bSmacallan *local*) 1044a041c5bSmacallan # First pass through any local machine types. 1054a041c5bSmacallan echo $1 1064a041c5bSmacallan exit ;; 1074a041c5bSmacallan 1084a041c5bSmacallan * ) 1094a041c5bSmacallan break ;; 1104a041c5bSmacallan esac 1114a041c5bSmacallandone 1124a041c5bSmacallan 1134a041c5bSmacallancase $# in 1144a041c5bSmacallan 0) echo "$me: missing argument$help" >&2 1154a041c5bSmacallan exit 1;; 1164a041c5bSmacallan 1) ;; 1174a041c5bSmacallan *) echo "$me: too many arguments$help" >&2 1184a041c5bSmacallan exit 1;; 1194a041c5bSmacallanesac 1204a041c5bSmacallan 1214a041c5bSmacallan# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1224a041c5bSmacallan# Here we must recognize all the valid KERNEL-OS combinations. 1234a041c5bSmacallanmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1244a041c5bSmacallancase $maybe_os in 12554b44505Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 12654b44505Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12754b44505Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 12854b44505Smrg kopensolaris*-gnu* | \ 1294a041c5bSmacallan storm-chaos* | os2-emx* | rtmk-nova*) 1304a041c5bSmacallan os=-$maybe_os 1314a041c5bSmacallan basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1324a041c5bSmacallan ;; 13354b44505Smrg android-linux) 13454b44505Smrg os=-linux-android 13554b44505Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 13654b44505Smrg ;; 1374a041c5bSmacallan *) 1384a041c5bSmacallan basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1394a041c5bSmacallan if [ $basic_machine != $1 ] 1404a041c5bSmacallan then os=`echo $1 | sed 's/.*-/-/'` 1414a041c5bSmacallan else os=; fi 1424a041c5bSmacallan ;; 1434a041c5bSmacallanesac 1444a041c5bSmacallan 1454a041c5bSmacallan### Let's recognize common machines as not being operating systems so 1464a041c5bSmacallan### that things like config.sub decstation-3100 work. We also 1474a041c5bSmacallan### recognize some manufacturers as not being operating systems, so we 1484a041c5bSmacallan### can provide default operating systems below. 1494a041c5bSmacallancase $os in 1504a041c5bSmacallan -sun*os*) 1514a041c5bSmacallan # Prevent following clause from handling this invalid input. 1524a041c5bSmacallan ;; 1534a041c5bSmacallan -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1544a041c5bSmacallan -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1554a041c5bSmacallan -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1564a041c5bSmacallan -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1574a041c5bSmacallan -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1584a041c5bSmacallan -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15954b44505Smrg -apple | -axis | -knuth | -cray | -microblaze) 1604a041c5bSmacallan os= 1614a041c5bSmacallan basic_machine=$1 1624a041c5bSmacallan ;; 16354b44505Smrg -bluegene*) 16454b44505Smrg os=-cnk 16554b44505Smrg ;; 1664a041c5bSmacallan -sim | -cisco | -oki | -wec | -winbond) 1674a041c5bSmacallan os= 1684a041c5bSmacallan basic_machine=$1 1694a041c5bSmacallan ;; 1704a041c5bSmacallan -scout) 1714a041c5bSmacallan ;; 1724a041c5bSmacallan -wrs) 1734a041c5bSmacallan os=-vxworks 1744a041c5bSmacallan basic_machine=$1 1754a041c5bSmacallan ;; 1764a041c5bSmacallan -chorusos*) 1774a041c5bSmacallan os=-chorusos 1784a041c5bSmacallan basic_machine=$1 1794a041c5bSmacallan ;; 18054b44505Smrg -chorusrdb) 18154b44505Smrg os=-chorusrdb 1824a041c5bSmacallan basic_machine=$1 18354b44505Smrg ;; 1844a041c5bSmacallan -hiux*) 1854a041c5bSmacallan os=-hiuxwe2 1864a041c5bSmacallan ;; 1874a041c5bSmacallan -sco6) 1884a041c5bSmacallan os=-sco5v6 1894a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1904a041c5bSmacallan ;; 1914a041c5bSmacallan -sco5) 1924a041c5bSmacallan os=-sco3.2v5 1934a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1944a041c5bSmacallan ;; 1954a041c5bSmacallan -sco4) 1964a041c5bSmacallan os=-sco3.2v4 1974a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1984a041c5bSmacallan ;; 1994a041c5bSmacallan -sco3.2.[4-9]*) 2004a041c5bSmacallan os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 2014a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2024a041c5bSmacallan ;; 2034a041c5bSmacallan -sco3.2v[4-9]*) 2044a041c5bSmacallan # Don't forget version if it is 3.2v4 or newer. 2054a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2064a041c5bSmacallan ;; 2074a041c5bSmacallan -sco5v6*) 2084a041c5bSmacallan # Don't forget version if it is 3.2v4 or newer. 2094a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2104a041c5bSmacallan ;; 2114a041c5bSmacallan -sco*) 2124a041c5bSmacallan os=-sco3.2v2 2134a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2144a041c5bSmacallan ;; 2154a041c5bSmacallan -udk*) 2164a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2174a041c5bSmacallan ;; 2184a041c5bSmacallan -isc) 2194a041c5bSmacallan os=-isc2.2 2204a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2214a041c5bSmacallan ;; 2224a041c5bSmacallan -clix*) 2234a041c5bSmacallan basic_machine=clipper-intergraph 2244a041c5bSmacallan ;; 2254a041c5bSmacallan -isc*) 2264a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2274a041c5bSmacallan ;; 22854b44505Smrg -lynx*178) 22954b44505Smrg os=-lynxos178 23054b44505Smrg ;; 23154b44505Smrg -lynx*5) 23254b44505Smrg os=-lynxos5 23354b44505Smrg ;; 2344a041c5bSmacallan -lynx*) 2354a041c5bSmacallan os=-lynxos 2364a041c5bSmacallan ;; 2374a041c5bSmacallan -ptx*) 2384a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2394a041c5bSmacallan ;; 2404a041c5bSmacallan -windowsnt*) 2414a041c5bSmacallan os=`echo $os | sed -e 's/windowsnt/winnt/'` 2424a041c5bSmacallan ;; 2434a041c5bSmacallan -psos*) 2444a041c5bSmacallan os=-psos 2454a041c5bSmacallan ;; 2464a041c5bSmacallan -mint | -mint[0-9]*) 2474a041c5bSmacallan basic_machine=m68k-atari 2484a041c5bSmacallan os=-mint 2494a041c5bSmacallan ;; 2504a041c5bSmacallanesac 2514a041c5bSmacallan 2524a041c5bSmacallan# Decode aliases for certain CPU-COMPANY combinations. 2534a041c5bSmacallancase $basic_machine in 2544a041c5bSmacallan # Recognize the basic CPU types without company name. 2554a041c5bSmacallan # Some are omitted here because they have special meanings below. 2564a041c5bSmacallan 1750a | 580 \ 2574a041c5bSmacallan | a29k \ 25854b44505Smrg | aarch64 | aarch64_be \ 2594a041c5bSmacallan | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2604a041c5bSmacallan | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2614a041c5bSmacallan | am33_2.0 \ 2624a041c5bSmacallan | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 26354b44505Smrg | be32 | be64 \ 2644a041c5bSmacallan | bfin \ 2654a041c5bSmacallan | c4x | clipper \ 26654b44505Smrg | d10v | d30v | dlx | dsp16xx | dvp \ 26754b44505Smrg | epiphany \ 2684a041c5bSmacallan | fido | fr30 | frv \ 2694a041c5bSmacallan | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 27054b44505Smrg | hexagon \ 2714a041c5bSmacallan | i370 | i860 | i960 | ia64 \ 2724a041c5bSmacallan | ip2k | iq2000 \ 27354b44505Smrg | le32 | le64 \ 27454b44505Smrg | lm32 \ 2754a041c5bSmacallan | m32c | m32r | m32rle | m68000 | m68k | m88k \ 27654b44505Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2774a041c5bSmacallan | mips | mipsbe | mipseb | mipsel | mipsle \ 2784a041c5bSmacallan | mips16 \ 2794a041c5bSmacallan | mips64 | mips64el \ 28054b44505Smrg | mips64octeon | mips64octeonel \ 2814a041c5bSmacallan | mips64orion | mips64orionel \ 28254b44505Smrg | mips64r5900 | mips64r5900el \ 28354b44505Smrg | mips64vr | mips64vrel \ 2844a041c5bSmacallan | mips64vr4100 | mips64vr4100el \ 2854a041c5bSmacallan | mips64vr4300 | mips64vr4300el \ 2864a041c5bSmacallan | mips64vr5000 | mips64vr5000el \ 2874a041c5bSmacallan | mips64vr5900 | mips64vr5900el \ 2884a041c5bSmacallan | mipsisa32 | mipsisa32el \ 2894a041c5bSmacallan | mipsisa32r2 | mipsisa32r2el \ 2904a041c5bSmacallan | mipsisa64 | mipsisa64el \ 2914a041c5bSmacallan | mipsisa64r2 | mipsisa64r2el \ 2924a041c5bSmacallan | mipsisa64sb1 | mipsisa64sb1el \ 2934a041c5bSmacallan | mipsisa64sr71k | mipsisa64sr71kel \ 2944a041c5bSmacallan | mipstx39 | mipstx39el \ 2954a041c5bSmacallan | mn10200 | mn10300 \ 29654b44505Smrg | moxie \ 2974a041c5bSmacallan | mt \ 2984a041c5bSmacallan | msp430 \ 29954b44505Smrg | nds32 | nds32le | nds32be \ 3004a041c5bSmacallan | nios | nios2 \ 3014a041c5bSmacallan | ns16k | ns32k \ 30254b44505Smrg | open8 \ 3034a041c5bSmacallan | or32 \ 3044a041c5bSmacallan | pdp10 | pdp11 | pj | pjl \ 30554b44505Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3064a041c5bSmacallan | pyramid \ 30754b44505Smrg | rl78 | rx \ 3084a041c5bSmacallan | score \ 30954b44505Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3104a041c5bSmacallan | sh64 | sh64le \ 3114a041c5bSmacallan | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3124a041c5bSmacallan | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 31354b44505Smrg | spu \ 31454b44505Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31554b44505Smrg | ubicom32 \ 31654b44505Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3174a041c5bSmacallan | we32k \ 31854b44505Smrg | x86 | xc16x | xstormy16 | xtensa \ 31954b44505Smrg | z8k | z80) 3204a041c5bSmacallan basic_machine=$basic_machine-unknown 3214a041c5bSmacallan ;; 32254b44505Smrg c54x) 32354b44505Smrg basic_machine=tic54x-unknown 32454b44505Smrg ;; 32554b44505Smrg c55x) 32654b44505Smrg basic_machine=tic55x-unknown 32754b44505Smrg ;; 32854b44505Smrg c6x) 32954b44505Smrg basic_machine=tic6x-unknown 33054b44505Smrg ;; 33154b44505Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 3324a041c5bSmacallan basic_machine=$basic_machine-unknown 3334a041c5bSmacallan os=-none 3344a041c5bSmacallan ;; 3354a041c5bSmacallan m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3364a041c5bSmacallan ;; 3374a041c5bSmacallan ms1) 3384a041c5bSmacallan basic_machine=mt-unknown 3394a041c5bSmacallan ;; 3404a041c5bSmacallan 34154b44505Smrg strongarm | thumb | xscale) 34254b44505Smrg basic_machine=arm-unknown 34354b44505Smrg ;; 34454b44505Smrg xgate) 34554b44505Smrg basic_machine=$basic_machine-unknown 34654b44505Smrg os=-none 34754b44505Smrg ;; 34854b44505Smrg xscaleeb) 34954b44505Smrg basic_machine=armeb-unknown 35054b44505Smrg ;; 35154b44505Smrg 35254b44505Smrg xscaleel) 35354b44505Smrg basic_machine=armel-unknown 35454b44505Smrg ;; 35554b44505Smrg 3564a041c5bSmacallan # We use `pc' rather than `unknown' 3574a041c5bSmacallan # because (1) that's what they normally are, and 3584a041c5bSmacallan # (2) the word "unknown" tends to confuse beginning users. 3594a041c5bSmacallan i*86 | x86_64) 3604a041c5bSmacallan basic_machine=$basic_machine-pc 3614a041c5bSmacallan ;; 3624a041c5bSmacallan # Object if more than one company name word. 3634a041c5bSmacallan *-*-*) 3644a041c5bSmacallan echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3654a041c5bSmacallan exit 1 3664a041c5bSmacallan ;; 3674a041c5bSmacallan # Recognize the basic CPU types with company name. 3684a041c5bSmacallan 580-* \ 3694a041c5bSmacallan | a29k-* \ 37054b44505Smrg | aarch64-* | aarch64_be-* \ 3714a041c5bSmacallan | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3724a041c5bSmacallan | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3734a041c5bSmacallan | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3744a041c5bSmacallan | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3754a041c5bSmacallan | avr-* | avr32-* \ 37654b44505Smrg | be32-* | be64-* \ 3774a041c5bSmacallan | bfin-* | bs2000-* \ 37854b44505Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3794a041c5bSmacallan | clipper-* | craynv-* | cydra-* \ 3804a041c5bSmacallan | d10v-* | d30v-* | dlx-* \ 3814a041c5bSmacallan | elxsi-* \ 3824a041c5bSmacallan | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3834a041c5bSmacallan | h8300-* | h8500-* \ 3844a041c5bSmacallan | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 38554b44505Smrg | hexagon-* \ 3864a041c5bSmacallan | i*86-* | i860-* | i960-* | ia64-* \ 3874a041c5bSmacallan | ip2k-* | iq2000-* \ 38854b44505Smrg | le32-* | le64-* \ 38954b44505Smrg | lm32-* \ 3904a041c5bSmacallan | m32c-* | m32r-* | m32rle-* \ 3914a041c5bSmacallan | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 39254b44505Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3934a041c5bSmacallan | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3944a041c5bSmacallan | mips16-* \ 3954a041c5bSmacallan | mips64-* | mips64el-* \ 39654b44505Smrg | mips64octeon-* | mips64octeonel-* \ 3974a041c5bSmacallan | mips64orion-* | mips64orionel-* \ 39854b44505Smrg | mips64r5900-* | mips64r5900el-* \ 39954b44505Smrg | mips64vr-* | mips64vrel-* \ 4004a041c5bSmacallan | mips64vr4100-* | mips64vr4100el-* \ 4014a041c5bSmacallan | mips64vr4300-* | mips64vr4300el-* \ 4024a041c5bSmacallan | mips64vr5000-* | mips64vr5000el-* \ 4034a041c5bSmacallan | mips64vr5900-* | mips64vr5900el-* \ 4044a041c5bSmacallan | mipsisa32-* | mipsisa32el-* \ 4054a041c5bSmacallan | mipsisa32r2-* | mipsisa32r2el-* \ 4064a041c5bSmacallan | mipsisa64-* | mipsisa64el-* \ 4074a041c5bSmacallan | mipsisa64r2-* | mipsisa64r2el-* \ 4084a041c5bSmacallan | mipsisa64sb1-* | mipsisa64sb1el-* \ 4094a041c5bSmacallan | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 4104a041c5bSmacallan | mipstx39-* | mipstx39el-* \ 4114a041c5bSmacallan | mmix-* \ 4124a041c5bSmacallan | mt-* \ 4134a041c5bSmacallan | msp430-* \ 41454b44505Smrg | nds32-* | nds32le-* | nds32be-* \ 4154a041c5bSmacallan | nios-* | nios2-* \ 4164a041c5bSmacallan | none-* | np1-* | ns16k-* | ns32k-* \ 41754b44505Smrg | open8-* \ 4184a041c5bSmacallan | orion-* \ 4194a041c5bSmacallan | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 42054b44505Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4214a041c5bSmacallan | pyramid-* \ 42254b44505Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 42354b44505Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4244a041c5bSmacallan | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4254a041c5bSmacallan | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4264a041c5bSmacallan | sparclite-* \ 42754b44505Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 42854b44505Smrg | tahoe-* \ 4294a041c5bSmacallan | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 43054b44505Smrg | tile*-* \ 4314a041c5bSmacallan | tron-* \ 43254b44505Smrg | ubicom32-* \ 43354b44505Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 43454b44505Smrg | vax-* \ 4354a041c5bSmacallan | we32k-* \ 43654b44505Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4374a041c5bSmacallan | xstormy16-* | xtensa*-* \ 4384a041c5bSmacallan | ymp-* \ 43954b44505Smrg | z8k-* | z80-*) 4404a041c5bSmacallan ;; 4414a041c5bSmacallan # Recognize the basic CPU types without company name, with glob match. 4424a041c5bSmacallan xtensa*) 4434a041c5bSmacallan basic_machine=$basic_machine-unknown 4444a041c5bSmacallan ;; 4454a041c5bSmacallan # Recognize the various machine names and aliases which stand 4464a041c5bSmacallan # for a CPU type and a company and sometimes even an OS. 4474a041c5bSmacallan 386bsd) 4484a041c5bSmacallan basic_machine=i386-unknown 4494a041c5bSmacallan os=-bsd 4504a041c5bSmacallan ;; 4514a041c5bSmacallan 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4524a041c5bSmacallan basic_machine=m68000-att 4534a041c5bSmacallan ;; 4544a041c5bSmacallan 3b*) 4554a041c5bSmacallan basic_machine=we32k-att 4564a041c5bSmacallan ;; 4574a041c5bSmacallan a29khif) 4584a041c5bSmacallan basic_machine=a29k-amd 4594a041c5bSmacallan os=-udi 4604a041c5bSmacallan ;; 46154b44505Smrg abacus) 4624a041c5bSmacallan basic_machine=abacus-unknown 4634a041c5bSmacallan ;; 4644a041c5bSmacallan adobe68k) 4654a041c5bSmacallan basic_machine=m68010-adobe 4664a041c5bSmacallan os=-scout 4674a041c5bSmacallan ;; 4684a041c5bSmacallan alliant | fx80) 4694a041c5bSmacallan basic_machine=fx80-alliant 4704a041c5bSmacallan ;; 4714a041c5bSmacallan altos | altos3068) 4724a041c5bSmacallan basic_machine=m68k-altos 4734a041c5bSmacallan ;; 4744a041c5bSmacallan am29k) 4754a041c5bSmacallan basic_machine=a29k-none 4764a041c5bSmacallan os=-bsd 4774a041c5bSmacallan ;; 4784a041c5bSmacallan amd64) 4794a041c5bSmacallan basic_machine=x86_64-pc 4804a041c5bSmacallan ;; 4814a041c5bSmacallan amd64-*) 4824a041c5bSmacallan basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4834a041c5bSmacallan ;; 4844a041c5bSmacallan amdahl) 4854a041c5bSmacallan basic_machine=580-amdahl 4864a041c5bSmacallan os=-sysv 4874a041c5bSmacallan ;; 4884a041c5bSmacallan amiga | amiga-*) 4894a041c5bSmacallan basic_machine=m68k-unknown 4904a041c5bSmacallan ;; 4914a041c5bSmacallan amigaos | amigados) 4924a041c5bSmacallan basic_machine=m68k-unknown 4934a041c5bSmacallan os=-amigaos 4944a041c5bSmacallan ;; 4954a041c5bSmacallan amigaunix | amix) 4964a041c5bSmacallan basic_machine=m68k-unknown 4974a041c5bSmacallan os=-sysv4 4984a041c5bSmacallan ;; 4994a041c5bSmacallan apollo68) 5004a041c5bSmacallan basic_machine=m68k-apollo 5014a041c5bSmacallan os=-sysv 5024a041c5bSmacallan ;; 5034a041c5bSmacallan apollo68bsd) 5044a041c5bSmacallan basic_machine=m68k-apollo 5054a041c5bSmacallan os=-bsd 5064a041c5bSmacallan ;; 50754b44505Smrg aros) 50854b44505Smrg basic_machine=i386-pc 50954b44505Smrg os=-aros 51054b44505Smrg ;; 5114a041c5bSmacallan aux) 5124a041c5bSmacallan basic_machine=m68k-apple 5134a041c5bSmacallan os=-aux 5144a041c5bSmacallan ;; 5154a041c5bSmacallan balance) 5164a041c5bSmacallan basic_machine=ns32k-sequent 5174a041c5bSmacallan os=-dynix 5184a041c5bSmacallan ;; 5194a041c5bSmacallan blackfin) 5204a041c5bSmacallan basic_machine=bfin-unknown 5214a041c5bSmacallan os=-linux 5224a041c5bSmacallan ;; 5234a041c5bSmacallan blackfin-*) 5244a041c5bSmacallan basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5254a041c5bSmacallan os=-linux 5264a041c5bSmacallan ;; 52754b44505Smrg bluegene*) 52854b44505Smrg basic_machine=powerpc-ibm 52954b44505Smrg os=-cnk 53054b44505Smrg ;; 53154b44505Smrg c54x-*) 53254b44505Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 53354b44505Smrg ;; 53454b44505Smrg c55x-*) 53554b44505Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 53654b44505Smrg ;; 53754b44505Smrg c6x-*) 53854b44505Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 53954b44505Smrg ;; 5404a041c5bSmacallan c90) 5414a041c5bSmacallan basic_machine=c90-cray 5424a041c5bSmacallan os=-unicos 5434a041c5bSmacallan ;; 54454b44505Smrg cegcc) 54554b44505Smrg basic_machine=arm-unknown 54654b44505Smrg os=-cegcc 54754b44505Smrg ;; 5484a041c5bSmacallan convex-c1) 5494a041c5bSmacallan basic_machine=c1-convex 5504a041c5bSmacallan os=-bsd 5514a041c5bSmacallan ;; 5524a041c5bSmacallan convex-c2) 5534a041c5bSmacallan basic_machine=c2-convex 5544a041c5bSmacallan os=-bsd 5554a041c5bSmacallan ;; 5564a041c5bSmacallan convex-c32) 5574a041c5bSmacallan basic_machine=c32-convex 5584a041c5bSmacallan os=-bsd 5594a041c5bSmacallan ;; 5604a041c5bSmacallan convex-c34) 5614a041c5bSmacallan basic_machine=c34-convex 5624a041c5bSmacallan os=-bsd 5634a041c5bSmacallan ;; 5644a041c5bSmacallan convex-c38) 5654a041c5bSmacallan basic_machine=c38-convex 5664a041c5bSmacallan os=-bsd 5674a041c5bSmacallan ;; 5684a041c5bSmacallan cray | j90) 5694a041c5bSmacallan basic_machine=j90-cray 5704a041c5bSmacallan os=-unicos 5714a041c5bSmacallan ;; 5724a041c5bSmacallan craynv) 5734a041c5bSmacallan basic_machine=craynv-cray 5744a041c5bSmacallan os=-unicosmp 5754a041c5bSmacallan ;; 57654b44505Smrg cr16 | cr16-*) 5774a041c5bSmacallan basic_machine=cr16-unknown 5784a041c5bSmacallan os=-elf 5794a041c5bSmacallan ;; 5804a041c5bSmacallan crds | unos) 5814a041c5bSmacallan basic_machine=m68k-crds 5824a041c5bSmacallan ;; 5834a041c5bSmacallan crisv32 | crisv32-* | etraxfs*) 5844a041c5bSmacallan basic_machine=crisv32-axis 5854a041c5bSmacallan ;; 5864a041c5bSmacallan cris | cris-* | etrax*) 5874a041c5bSmacallan basic_machine=cris-axis 5884a041c5bSmacallan ;; 5894a041c5bSmacallan crx) 5904a041c5bSmacallan basic_machine=crx-unknown 5914a041c5bSmacallan os=-elf 5924a041c5bSmacallan ;; 5934a041c5bSmacallan da30 | da30-*) 5944a041c5bSmacallan basic_machine=m68k-da30 5954a041c5bSmacallan ;; 5964a041c5bSmacallan decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5974a041c5bSmacallan basic_machine=mips-dec 5984a041c5bSmacallan ;; 5994a041c5bSmacallan decsystem10* | dec10*) 6004a041c5bSmacallan basic_machine=pdp10-dec 6014a041c5bSmacallan os=-tops10 6024a041c5bSmacallan ;; 6034a041c5bSmacallan decsystem20* | dec20*) 6044a041c5bSmacallan basic_machine=pdp10-dec 6054a041c5bSmacallan os=-tops20 6064a041c5bSmacallan ;; 6074a041c5bSmacallan delta | 3300 | motorola-3300 | motorola-delta \ 6084a041c5bSmacallan | 3300-motorola | delta-motorola) 6094a041c5bSmacallan basic_machine=m68k-motorola 6104a041c5bSmacallan ;; 6114a041c5bSmacallan delta88) 6124a041c5bSmacallan basic_machine=m88k-motorola 6134a041c5bSmacallan os=-sysv3 6144a041c5bSmacallan ;; 61554b44505Smrg dicos) 61654b44505Smrg basic_machine=i686-pc 61754b44505Smrg os=-dicos 61854b44505Smrg ;; 6194a041c5bSmacallan djgpp) 6204a041c5bSmacallan basic_machine=i586-pc 6214a041c5bSmacallan os=-msdosdjgpp 6224a041c5bSmacallan ;; 6234a041c5bSmacallan dpx20 | dpx20-*) 6244a041c5bSmacallan basic_machine=rs6000-bull 6254a041c5bSmacallan os=-bosx 6264a041c5bSmacallan ;; 6274a041c5bSmacallan dpx2* | dpx2*-bull) 6284a041c5bSmacallan basic_machine=m68k-bull 6294a041c5bSmacallan os=-sysv3 6304a041c5bSmacallan ;; 6314a041c5bSmacallan ebmon29k) 6324a041c5bSmacallan basic_machine=a29k-amd 6334a041c5bSmacallan os=-ebmon 6344a041c5bSmacallan ;; 6354a041c5bSmacallan elxsi) 6364a041c5bSmacallan basic_machine=elxsi-elxsi 6374a041c5bSmacallan os=-bsd 6384a041c5bSmacallan ;; 6394a041c5bSmacallan encore | umax | mmax) 6404a041c5bSmacallan basic_machine=ns32k-encore 6414a041c5bSmacallan ;; 6424a041c5bSmacallan es1800 | OSE68k | ose68k | ose | OSE) 6434a041c5bSmacallan basic_machine=m68k-ericsson 6444a041c5bSmacallan os=-ose 6454a041c5bSmacallan ;; 6464a041c5bSmacallan fx2800) 6474a041c5bSmacallan basic_machine=i860-alliant 6484a041c5bSmacallan ;; 6494a041c5bSmacallan genix) 6504a041c5bSmacallan basic_machine=ns32k-ns 6514a041c5bSmacallan ;; 6524a041c5bSmacallan gmicro) 6534a041c5bSmacallan basic_machine=tron-gmicro 6544a041c5bSmacallan os=-sysv 6554a041c5bSmacallan ;; 6564a041c5bSmacallan go32) 6574a041c5bSmacallan basic_machine=i386-pc 6584a041c5bSmacallan os=-go32 6594a041c5bSmacallan ;; 6604a041c5bSmacallan h3050r* | hiux*) 6614a041c5bSmacallan basic_machine=hppa1.1-hitachi 6624a041c5bSmacallan os=-hiuxwe2 6634a041c5bSmacallan ;; 6644a041c5bSmacallan h8300hms) 6654a041c5bSmacallan basic_machine=h8300-hitachi 6664a041c5bSmacallan os=-hms 6674a041c5bSmacallan ;; 6684a041c5bSmacallan h8300xray) 6694a041c5bSmacallan basic_machine=h8300-hitachi 6704a041c5bSmacallan os=-xray 6714a041c5bSmacallan ;; 6724a041c5bSmacallan h8500hms) 6734a041c5bSmacallan basic_machine=h8500-hitachi 6744a041c5bSmacallan os=-hms 6754a041c5bSmacallan ;; 6764a041c5bSmacallan harris) 6774a041c5bSmacallan basic_machine=m88k-harris 6784a041c5bSmacallan os=-sysv3 6794a041c5bSmacallan ;; 6804a041c5bSmacallan hp300-*) 6814a041c5bSmacallan basic_machine=m68k-hp 6824a041c5bSmacallan ;; 6834a041c5bSmacallan hp300bsd) 6844a041c5bSmacallan basic_machine=m68k-hp 6854a041c5bSmacallan os=-bsd 6864a041c5bSmacallan ;; 6874a041c5bSmacallan hp300hpux) 6884a041c5bSmacallan basic_machine=m68k-hp 6894a041c5bSmacallan os=-hpux 6904a041c5bSmacallan ;; 6914a041c5bSmacallan hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6924a041c5bSmacallan basic_machine=hppa1.0-hp 6934a041c5bSmacallan ;; 6944a041c5bSmacallan hp9k2[0-9][0-9] | hp9k31[0-9]) 6954a041c5bSmacallan basic_machine=m68000-hp 6964a041c5bSmacallan ;; 6974a041c5bSmacallan hp9k3[2-9][0-9]) 6984a041c5bSmacallan basic_machine=m68k-hp 6994a041c5bSmacallan ;; 7004a041c5bSmacallan hp9k6[0-9][0-9] | hp6[0-9][0-9]) 7014a041c5bSmacallan basic_machine=hppa1.0-hp 7024a041c5bSmacallan ;; 7034a041c5bSmacallan hp9k7[0-79][0-9] | hp7[0-79][0-9]) 7044a041c5bSmacallan basic_machine=hppa1.1-hp 7054a041c5bSmacallan ;; 7064a041c5bSmacallan hp9k78[0-9] | hp78[0-9]) 7074a041c5bSmacallan # FIXME: really hppa2.0-hp 7084a041c5bSmacallan basic_machine=hppa1.1-hp 7094a041c5bSmacallan ;; 7104a041c5bSmacallan hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7114a041c5bSmacallan # FIXME: really hppa2.0-hp 7124a041c5bSmacallan basic_machine=hppa1.1-hp 7134a041c5bSmacallan ;; 7144a041c5bSmacallan hp9k8[0-9][13679] | hp8[0-9][13679]) 7154a041c5bSmacallan basic_machine=hppa1.1-hp 7164a041c5bSmacallan ;; 7174a041c5bSmacallan hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7184a041c5bSmacallan basic_machine=hppa1.0-hp 7194a041c5bSmacallan ;; 7204a041c5bSmacallan hppa-next) 7214a041c5bSmacallan os=-nextstep3 7224a041c5bSmacallan ;; 7234a041c5bSmacallan hppaosf) 7244a041c5bSmacallan basic_machine=hppa1.1-hp 7254a041c5bSmacallan os=-osf 7264a041c5bSmacallan ;; 7274a041c5bSmacallan hppro) 7284a041c5bSmacallan basic_machine=hppa1.1-hp 7294a041c5bSmacallan os=-proelf 7304a041c5bSmacallan ;; 7314a041c5bSmacallan i370-ibm* | ibm*) 7324a041c5bSmacallan basic_machine=i370-ibm 7334a041c5bSmacallan ;; 7344a041c5bSmacallan i*86v32) 7354a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7364a041c5bSmacallan os=-sysv32 7374a041c5bSmacallan ;; 7384a041c5bSmacallan i*86v4*) 7394a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7404a041c5bSmacallan os=-sysv4 7414a041c5bSmacallan ;; 7424a041c5bSmacallan i*86v) 7434a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7444a041c5bSmacallan os=-sysv 7454a041c5bSmacallan ;; 7464a041c5bSmacallan i*86sol2) 7474a041c5bSmacallan basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7484a041c5bSmacallan os=-solaris2 7494a041c5bSmacallan ;; 7504a041c5bSmacallan i386mach) 7514a041c5bSmacallan basic_machine=i386-mach 7524a041c5bSmacallan os=-mach 7534a041c5bSmacallan ;; 7544a041c5bSmacallan i386-vsta | vsta) 7554a041c5bSmacallan basic_machine=i386-unknown 7564a041c5bSmacallan os=-vsta 7574a041c5bSmacallan ;; 7584a041c5bSmacallan iris | iris4d) 7594a041c5bSmacallan basic_machine=mips-sgi 7604a041c5bSmacallan case $os in 7614a041c5bSmacallan -irix*) 7624a041c5bSmacallan ;; 7634a041c5bSmacallan *) 7644a041c5bSmacallan os=-irix4 7654a041c5bSmacallan ;; 7664a041c5bSmacallan esac 7674a041c5bSmacallan ;; 7684a041c5bSmacallan isi68 | isi) 7694a041c5bSmacallan basic_machine=m68k-isi 7704a041c5bSmacallan os=-sysv 7714a041c5bSmacallan ;; 7724a041c5bSmacallan m68knommu) 7734a041c5bSmacallan basic_machine=m68k-unknown 7744a041c5bSmacallan os=-linux 7754a041c5bSmacallan ;; 7764a041c5bSmacallan m68knommu-*) 7774a041c5bSmacallan basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7784a041c5bSmacallan os=-linux 7794a041c5bSmacallan ;; 7804a041c5bSmacallan m88k-omron*) 7814a041c5bSmacallan basic_machine=m88k-omron 7824a041c5bSmacallan ;; 7834a041c5bSmacallan magnum | m3230) 7844a041c5bSmacallan basic_machine=mips-mips 7854a041c5bSmacallan os=-sysv 7864a041c5bSmacallan ;; 7874a041c5bSmacallan merlin) 7884a041c5bSmacallan basic_machine=ns32k-utek 7894a041c5bSmacallan os=-sysv 7904a041c5bSmacallan ;; 79154b44505Smrg microblaze) 79254b44505Smrg basic_machine=microblaze-xilinx 79354b44505Smrg ;; 79454b44505Smrg mingw64) 79554b44505Smrg basic_machine=x86_64-pc 79654b44505Smrg os=-mingw64 79754b44505Smrg ;; 7984a041c5bSmacallan mingw32) 7994a041c5bSmacallan basic_machine=i386-pc 8004a041c5bSmacallan os=-mingw32 8014a041c5bSmacallan ;; 8024a041c5bSmacallan mingw32ce) 8034a041c5bSmacallan basic_machine=arm-unknown 8044a041c5bSmacallan os=-mingw32ce 8054a041c5bSmacallan ;; 8064a041c5bSmacallan miniframe) 8074a041c5bSmacallan basic_machine=m68000-convergent 8084a041c5bSmacallan ;; 8094a041c5bSmacallan *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8104a041c5bSmacallan basic_machine=m68k-atari 8114a041c5bSmacallan os=-mint 8124a041c5bSmacallan ;; 81354b44505Smrg mipsEE* | ee | ps2) 81454b44505Smrg basic_machine=mips64r5900el-scei 81554b44505Smrg case $os in 81654b44505Smrg -linux*) 81754b44505Smrg ;; 81854b44505Smrg *) 81954b44505Smrg os=-elf 82054b44505Smrg ;; 82154b44505Smrg esac 82254b44505Smrg ;; 82354b44505Smrg iop) 82454b44505Smrg basic_machine=mipsel-scei 82554b44505Smrg os=-irx 82654b44505Smrg ;; 82754b44505Smrg dvp) 82854b44505Smrg basic_machine=dvp-scei 82954b44505Smrg os=-elf 83054b44505Smrg ;; 8314a041c5bSmacallan mips3*-*) 8324a041c5bSmacallan basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8334a041c5bSmacallan ;; 8344a041c5bSmacallan mips3*) 8354a041c5bSmacallan basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8364a041c5bSmacallan ;; 8374a041c5bSmacallan monitor) 8384a041c5bSmacallan basic_machine=m68k-rom68k 8394a041c5bSmacallan os=-coff 8404a041c5bSmacallan ;; 8414a041c5bSmacallan morphos) 8424a041c5bSmacallan basic_machine=powerpc-unknown 8434a041c5bSmacallan os=-morphos 8444a041c5bSmacallan ;; 8454a041c5bSmacallan msdos) 8464a041c5bSmacallan basic_machine=i386-pc 8474a041c5bSmacallan os=-msdos 8484a041c5bSmacallan ;; 8494a041c5bSmacallan ms1-*) 8504a041c5bSmacallan basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8514a041c5bSmacallan ;; 85254b44505Smrg msys) 85354b44505Smrg basic_machine=i386-pc 85454b44505Smrg os=-msys 85554b44505Smrg ;; 8564a041c5bSmacallan mvs) 8574a041c5bSmacallan basic_machine=i370-ibm 8584a041c5bSmacallan os=-mvs 8594a041c5bSmacallan ;; 86054b44505Smrg nacl) 86154b44505Smrg basic_machine=le32-unknown 86254b44505Smrg os=-nacl 86354b44505Smrg ;; 8644a041c5bSmacallan ncr3000) 8654a041c5bSmacallan basic_machine=i486-ncr 8664a041c5bSmacallan os=-sysv4 8674a041c5bSmacallan ;; 8684a041c5bSmacallan netbsd386) 8694a041c5bSmacallan basic_machine=i386-unknown 8704a041c5bSmacallan os=-netbsd 8714a041c5bSmacallan ;; 8724a041c5bSmacallan netwinder) 8734a041c5bSmacallan basic_machine=armv4l-rebel 8744a041c5bSmacallan os=-linux 8754a041c5bSmacallan ;; 8764a041c5bSmacallan news | news700 | news800 | news900) 8774a041c5bSmacallan basic_machine=m68k-sony 8784a041c5bSmacallan os=-newsos 8794a041c5bSmacallan ;; 8804a041c5bSmacallan news1000) 8814a041c5bSmacallan basic_machine=m68030-sony 8824a041c5bSmacallan os=-newsos 8834a041c5bSmacallan ;; 8844a041c5bSmacallan news-3600 | risc-news) 8854a041c5bSmacallan basic_machine=mips-sony 8864a041c5bSmacallan os=-newsos 8874a041c5bSmacallan ;; 8884a041c5bSmacallan necv70) 8894a041c5bSmacallan basic_machine=v70-nec 8904a041c5bSmacallan os=-sysv 8914a041c5bSmacallan ;; 8924a041c5bSmacallan next | m*-next ) 8934a041c5bSmacallan basic_machine=m68k-next 8944a041c5bSmacallan case $os in 8954a041c5bSmacallan -nextstep* ) 8964a041c5bSmacallan ;; 8974a041c5bSmacallan -ns2*) 8984a041c5bSmacallan os=-nextstep2 8994a041c5bSmacallan ;; 9004a041c5bSmacallan *) 9014a041c5bSmacallan os=-nextstep3 9024a041c5bSmacallan ;; 9034a041c5bSmacallan esac 9044a041c5bSmacallan ;; 9054a041c5bSmacallan nh3000) 9064a041c5bSmacallan basic_machine=m68k-harris 9074a041c5bSmacallan os=-cxux 9084a041c5bSmacallan ;; 9094a041c5bSmacallan nh[45]000) 9104a041c5bSmacallan basic_machine=m88k-harris 9114a041c5bSmacallan os=-cxux 9124a041c5bSmacallan ;; 9134a041c5bSmacallan nindy960) 9144a041c5bSmacallan basic_machine=i960-intel 9154a041c5bSmacallan os=-nindy 9164a041c5bSmacallan ;; 9174a041c5bSmacallan mon960) 9184a041c5bSmacallan basic_machine=i960-intel 9194a041c5bSmacallan os=-mon960 9204a041c5bSmacallan ;; 9214a041c5bSmacallan nonstopux) 9224a041c5bSmacallan basic_machine=mips-compaq 9234a041c5bSmacallan os=-nonstopux 9244a041c5bSmacallan ;; 9254a041c5bSmacallan np1) 9264a041c5bSmacallan basic_machine=np1-gould 9274a041c5bSmacallan ;; 92854b44505Smrg neo-tandem) 92954b44505Smrg basic_machine=neo-tandem 93054b44505Smrg ;; 93154b44505Smrg nse-tandem) 93254b44505Smrg basic_machine=nse-tandem 93354b44505Smrg ;; 9344a041c5bSmacallan nsr-tandem) 9354a041c5bSmacallan basic_machine=nsr-tandem 9364a041c5bSmacallan ;; 9374a041c5bSmacallan op50n-* | op60c-*) 9384a041c5bSmacallan basic_machine=hppa1.1-oki 9394a041c5bSmacallan os=-proelf 9404a041c5bSmacallan ;; 9414a041c5bSmacallan openrisc | openrisc-*) 9424a041c5bSmacallan basic_machine=or32-unknown 9434a041c5bSmacallan ;; 9444a041c5bSmacallan os400) 9454a041c5bSmacallan basic_machine=powerpc-ibm 9464a041c5bSmacallan os=-os400 9474a041c5bSmacallan ;; 9484a041c5bSmacallan OSE68000 | ose68000) 9494a041c5bSmacallan basic_machine=m68000-ericsson 9504a041c5bSmacallan os=-ose 9514a041c5bSmacallan ;; 9524a041c5bSmacallan os68k) 9534a041c5bSmacallan basic_machine=m68k-none 9544a041c5bSmacallan os=-os68k 9554a041c5bSmacallan ;; 9564a041c5bSmacallan pa-hitachi) 9574a041c5bSmacallan basic_machine=hppa1.1-hitachi 9584a041c5bSmacallan os=-hiuxwe2 9594a041c5bSmacallan ;; 9604a041c5bSmacallan paragon) 9614a041c5bSmacallan basic_machine=i860-intel 9624a041c5bSmacallan os=-osf 9634a041c5bSmacallan ;; 9644a041c5bSmacallan parisc) 9654a041c5bSmacallan basic_machine=hppa-unknown 9664a041c5bSmacallan os=-linux 9674a041c5bSmacallan ;; 9684a041c5bSmacallan parisc-*) 9694a041c5bSmacallan basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9704a041c5bSmacallan os=-linux 9714a041c5bSmacallan ;; 9724a041c5bSmacallan pbd) 9734a041c5bSmacallan basic_machine=sparc-tti 9744a041c5bSmacallan ;; 9754a041c5bSmacallan pbb) 9764a041c5bSmacallan basic_machine=m68k-tti 9774a041c5bSmacallan ;; 9784a041c5bSmacallan pc532 | pc532-*) 9794a041c5bSmacallan basic_machine=ns32k-pc532 9804a041c5bSmacallan ;; 9814a041c5bSmacallan pc98) 9824a041c5bSmacallan basic_machine=i386-pc 9834a041c5bSmacallan ;; 9844a041c5bSmacallan pc98-*) 9854a041c5bSmacallan basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9864a041c5bSmacallan ;; 9874a041c5bSmacallan pentium | p5 | k5 | k6 | nexgen | viac3) 9884a041c5bSmacallan basic_machine=i586-pc 9894a041c5bSmacallan ;; 9904a041c5bSmacallan pentiumpro | p6 | 6x86 | athlon | athlon_*) 9914a041c5bSmacallan basic_machine=i686-pc 9924a041c5bSmacallan ;; 9934a041c5bSmacallan pentiumii | pentium2 | pentiumiii | pentium3) 9944a041c5bSmacallan basic_machine=i686-pc 9954a041c5bSmacallan ;; 9964a041c5bSmacallan pentium4) 9974a041c5bSmacallan basic_machine=i786-pc 9984a041c5bSmacallan ;; 9994a041c5bSmacallan pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 10004a041c5bSmacallan basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 10014a041c5bSmacallan ;; 10024a041c5bSmacallan pentiumpro-* | p6-* | 6x86-* | athlon-*) 10034a041c5bSmacallan basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10044a041c5bSmacallan ;; 10054a041c5bSmacallan pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 10064a041c5bSmacallan basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10074a041c5bSmacallan ;; 10084a041c5bSmacallan pentium4-*) 10094a041c5bSmacallan basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 10104a041c5bSmacallan ;; 10114a041c5bSmacallan pn) 10124a041c5bSmacallan basic_machine=pn-gould 10134a041c5bSmacallan ;; 10144a041c5bSmacallan power) basic_machine=power-ibm 10154a041c5bSmacallan ;; 101654b44505Smrg ppc | ppcbe) basic_machine=powerpc-unknown 10174a041c5bSmacallan ;; 101854b44505Smrg ppc-* | ppcbe-*) 101954b44505Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 10204a041c5bSmacallan ;; 10214a041c5bSmacallan ppcle | powerpclittle | ppc-le | powerpc-little) 10224a041c5bSmacallan basic_machine=powerpcle-unknown 10234a041c5bSmacallan ;; 10244a041c5bSmacallan ppcle-* | powerpclittle-*) 10254a041c5bSmacallan basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 10264a041c5bSmacallan ;; 10274a041c5bSmacallan ppc64) basic_machine=powerpc64-unknown 10284a041c5bSmacallan ;; 10294a041c5bSmacallan ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10304a041c5bSmacallan ;; 10314a041c5bSmacallan ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10324a041c5bSmacallan basic_machine=powerpc64le-unknown 10334a041c5bSmacallan ;; 10344a041c5bSmacallan ppc64le-* | powerpc64little-*) 10354a041c5bSmacallan basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10364a041c5bSmacallan ;; 10374a041c5bSmacallan ps2) 10384a041c5bSmacallan basic_machine=i386-ibm 10394a041c5bSmacallan ;; 10404a041c5bSmacallan pw32) 10414a041c5bSmacallan basic_machine=i586-unknown 10424a041c5bSmacallan os=-pw32 10434a041c5bSmacallan ;; 10444a041c5bSmacallan rdos) 10454a041c5bSmacallan basic_machine=i386-pc 10464a041c5bSmacallan os=-rdos 10474a041c5bSmacallan ;; 10484a041c5bSmacallan rom68k) 10494a041c5bSmacallan basic_machine=m68k-rom68k 10504a041c5bSmacallan os=-coff 10514a041c5bSmacallan ;; 10524a041c5bSmacallan rm[46]00) 10534a041c5bSmacallan basic_machine=mips-siemens 10544a041c5bSmacallan ;; 10554a041c5bSmacallan rtpc | rtpc-*) 10564a041c5bSmacallan basic_machine=romp-ibm 10574a041c5bSmacallan ;; 10584a041c5bSmacallan s390 | s390-*) 10594a041c5bSmacallan basic_machine=s390-ibm 10604a041c5bSmacallan ;; 10614a041c5bSmacallan s390x | s390x-*) 10624a041c5bSmacallan basic_machine=s390x-ibm 10634a041c5bSmacallan ;; 10644a041c5bSmacallan sa29200) 10654a041c5bSmacallan basic_machine=a29k-amd 10664a041c5bSmacallan os=-udi 10674a041c5bSmacallan ;; 10684a041c5bSmacallan sb1) 10694a041c5bSmacallan basic_machine=mipsisa64sb1-unknown 10704a041c5bSmacallan ;; 10714a041c5bSmacallan sb1el) 10724a041c5bSmacallan basic_machine=mipsisa64sb1el-unknown 10734a041c5bSmacallan ;; 10744a041c5bSmacallan sde) 10754a041c5bSmacallan basic_machine=mipsisa32-sde 10764a041c5bSmacallan os=-elf 10774a041c5bSmacallan ;; 10784a041c5bSmacallan sei) 10794a041c5bSmacallan basic_machine=mips-sei 10804a041c5bSmacallan os=-seiux 10814a041c5bSmacallan ;; 10824a041c5bSmacallan sequent) 10834a041c5bSmacallan basic_machine=i386-sequent 10844a041c5bSmacallan ;; 10854a041c5bSmacallan sh) 10864a041c5bSmacallan basic_machine=sh-hitachi 10874a041c5bSmacallan os=-hms 10884a041c5bSmacallan ;; 10894a041c5bSmacallan sh5el) 10904a041c5bSmacallan basic_machine=sh5le-unknown 10914a041c5bSmacallan ;; 10924a041c5bSmacallan sh64) 10934a041c5bSmacallan basic_machine=sh64-unknown 10944a041c5bSmacallan ;; 10954a041c5bSmacallan sparclite-wrs | simso-wrs) 10964a041c5bSmacallan basic_machine=sparclite-wrs 10974a041c5bSmacallan os=-vxworks 10984a041c5bSmacallan ;; 10994a041c5bSmacallan sps7) 11004a041c5bSmacallan basic_machine=m68k-bull 11014a041c5bSmacallan os=-sysv2 11024a041c5bSmacallan ;; 11034a041c5bSmacallan spur) 11044a041c5bSmacallan basic_machine=spur-unknown 11054a041c5bSmacallan ;; 11064a041c5bSmacallan st2000) 11074a041c5bSmacallan basic_machine=m68k-tandem 11084a041c5bSmacallan ;; 11094a041c5bSmacallan stratus) 11104a041c5bSmacallan basic_machine=i860-stratus 11114a041c5bSmacallan os=-sysv4 11124a041c5bSmacallan ;; 111354b44505Smrg strongarm-* | thumb-*) 111454b44505Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 111554b44505Smrg ;; 11164a041c5bSmacallan sun2) 11174a041c5bSmacallan basic_machine=m68000-sun 11184a041c5bSmacallan ;; 11194a041c5bSmacallan sun2os3) 11204a041c5bSmacallan basic_machine=m68000-sun 11214a041c5bSmacallan os=-sunos3 11224a041c5bSmacallan ;; 11234a041c5bSmacallan sun2os4) 11244a041c5bSmacallan basic_machine=m68000-sun 11254a041c5bSmacallan os=-sunos4 11264a041c5bSmacallan ;; 11274a041c5bSmacallan sun3os3) 11284a041c5bSmacallan basic_machine=m68k-sun 11294a041c5bSmacallan os=-sunos3 11304a041c5bSmacallan ;; 11314a041c5bSmacallan sun3os4) 11324a041c5bSmacallan basic_machine=m68k-sun 11334a041c5bSmacallan os=-sunos4 11344a041c5bSmacallan ;; 11354a041c5bSmacallan sun4os3) 11364a041c5bSmacallan basic_machine=sparc-sun 11374a041c5bSmacallan os=-sunos3 11384a041c5bSmacallan ;; 11394a041c5bSmacallan sun4os4) 11404a041c5bSmacallan basic_machine=sparc-sun 11414a041c5bSmacallan os=-sunos4 11424a041c5bSmacallan ;; 11434a041c5bSmacallan sun4sol2) 11444a041c5bSmacallan basic_machine=sparc-sun 11454a041c5bSmacallan os=-solaris2 11464a041c5bSmacallan ;; 11474a041c5bSmacallan sun3 | sun3-*) 11484a041c5bSmacallan basic_machine=m68k-sun 11494a041c5bSmacallan ;; 11504a041c5bSmacallan sun4) 11514a041c5bSmacallan basic_machine=sparc-sun 11524a041c5bSmacallan ;; 11534a041c5bSmacallan sun386 | sun386i | roadrunner) 11544a041c5bSmacallan basic_machine=i386-sun 11554a041c5bSmacallan ;; 11564a041c5bSmacallan sv1) 11574a041c5bSmacallan basic_machine=sv1-cray 11584a041c5bSmacallan os=-unicos 11594a041c5bSmacallan ;; 11604a041c5bSmacallan symmetry) 11614a041c5bSmacallan basic_machine=i386-sequent 11624a041c5bSmacallan os=-dynix 11634a041c5bSmacallan ;; 11644a041c5bSmacallan t3e) 11654a041c5bSmacallan basic_machine=alphaev5-cray 11664a041c5bSmacallan os=-unicos 11674a041c5bSmacallan ;; 11684a041c5bSmacallan t90) 11694a041c5bSmacallan basic_machine=t90-cray 11704a041c5bSmacallan os=-unicos 11714a041c5bSmacallan ;; 11724a041c5bSmacallan tile*) 117354b44505Smrg basic_machine=$basic_machine-unknown 11744a041c5bSmacallan os=-linux-gnu 11754a041c5bSmacallan ;; 11764a041c5bSmacallan tx39) 11774a041c5bSmacallan basic_machine=mipstx39-unknown 11784a041c5bSmacallan ;; 11794a041c5bSmacallan tx39el) 11804a041c5bSmacallan basic_machine=mipstx39el-unknown 11814a041c5bSmacallan ;; 11824a041c5bSmacallan toad1) 11834a041c5bSmacallan basic_machine=pdp10-xkl 11844a041c5bSmacallan os=-tops20 11854a041c5bSmacallan ;; 11864a041c5bSmacallan tower | tower-32) 11874a041c5bSmacallan basic_machine=m68k-ncr 11884a041c5bSmacallan ;; 11894a041c5bSmacallan tpf) 11904a041c5bSmacallan basic_machine=s390x-ibm 11914a041c5bSmacallan os=-tpf 11924a041c5bSmacallan ;; 11934a041c5bSmacallan udi29k) 11944a041c5bSmacallan basic_machine=a29k-amd 11954a041c5bSmacallan os=-udi 11964a041c5bSmacallan ;; 11974a041c5bSmacallan ultra3) 11984a041c5bSmacallan basic_machine=a29k-nyu 11994a041c5bSmacallan os=-sym1 12004a041c5bSmacallan ;; 12014a041c5bSmacallan v810 | necv810) 12024a041c5bSmacallan basic_machine=v810-nec 12034a041c5bSmacallan os=-none 12044a041c5bSmacallan ;; 12054a041c5bSmacallan vaxv) 12064a041c5bSmacallan basic_machine=vax-dec 12074a041c5bSmacallan os=-sysv 12084a041c5bSmacallan ;; 12094a041c5bSmacallan vms) 12104a041c5bSmacallan basic_machine=vax-dec 12114a041c5bSmacallan os=-vms 12124a041c5bSmacallan ;; 12134a041c5bSmacallan vpp*|vx|vx-*) 12144a041c5bSmacallan basic_machine=f301-fujitsu 12154a041c5bSmacallan ;; 12164a041c5bSmacallan vxworks960) 12174a041c5bSmacallan basic_machine=i960-wrs 12184a041c5bSmacallan os=-vxworks 12194a041c5bSmacallan ;; 12204a041c5bSmacallan vxworks68) 12214a041c5bSmacallan basic_machine=m68k-wrs 12224a041c5bSmacallan os=-vxworks 12234a041c5bSmacallan ;; 12244a041c5bSmacallan vxworks29k) 12254a041c5bSmacallan basic_machine=a29k-wrs 12264a041c5bSmacallan os=-vxworks 12274a041c5bSmacallan ;; 12284a041c5bSmacallan w65*) 12294a041c5bSmacallan basic_machine=w65-wdc 12304a041c5bSmacallan os=-none 12314a041c5bSmacallan ;; 12324a041c5bSmacallan w89k-*) 12334a041c5bSmacallan basic_machine=hppa1.1-winbond 12344a041c5bSmacallan os=-proelf 12354a041c5bSmacallan ;; 12364a041c5bSmacallan xbox) 12374a041c5bSmacallan basic_machine=i686-pc 12384a041c5bSmacallan os=-mingw32 12394a041c5bSmacallan ;; 12404a041c5bSmacallan xps | xps100) 12414a041c5bSmacallan basic_machine=xps100-honeywell 12424a041c5bSmacallan ;; 124354b44505Smrg xscale-* | xscalee[bl]-*) 124454b44505Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 124554b44505Smrg ;; 12464a041c5bSmacallan ymp) 12474a041c5bSmacallan basic_machine=ymp-cray 12484a041c5bSmacallan os=-unicos 12494a041c5bSmacallan ;; 12504a041c5bSmacallan z8k-*-coff) 12514a041c5bSmacallan basic_machine=z8k-unknown 12524a041c5bSmacallan os=-sim 12534a041c5bSmacallan ;; 125454b44505Smrg z80-*-coff) 125554b44505Smrg basic_machine=z80-unknown 125654b44505Smrg os=-sim 125754b44505Smrg ;; 12584a041c5bSmacallan none) 12594a041c5bSmacallan basic_machine=none-none 12604a041c5bSmacallan os=-none 12614a041c5bSmacallan ;; 12624a041c5bSmacallan 12634a041c5bSmacallan# Here we handle the default manufacturer of certain CPU types. It is in 12644a041c5bSmacallan# some cases the only manufacturer, in others, it is the most popular. 12654a041c5bSmacallan w89k) 12664a041c5bSmacallan basic_machine=hppa1.1-winbond 12674a041c5bSmacallan ;; 12684a041c5bSmacallan op50n) 12694a041c5bSmacallan basic_machine=hppa1.1-oki 12704a041c5bSmacallan ;; 12714a041c5bSmacallan op60c) 12724a041c5bSmacallan basic_machine=hppa1.1-oki 12734a041c5bSmacallan ;; 12744a041c5bSmacallan romp) 12754a041c5bSmacallan basic_machine=romp-ibm 12764a041c5bSmacallan ;; 12774a041c5bSmacallan mmix) 12784a041c5bSmacallan basic_machine=mmix-knuth 12794a041c5bSmacallan ;; 12804a041c5bSmacallan rs6000) 12814a041c5bSmacallan basic_machine=rs6000-ibm 12824a041c5bSmacallan ;; 12834a041c5bSmacallan vax) 12844a041c5bSmacallan basic_machine=vax-dec 12854a041c5bSmacallan ;; 12864a041c5bSmacallan pdp10) 12874a041c5bSmacallan # there are many clones, so DEC is not a safe bet 12884a041c5bSmacallan basic_machine=pdp10-unknown 12894a041c5bSmacallan ;; 12904a041c5bSmacallan pdp11) 12914a041c5bSmacallan basic_machine=pdp11-dec 12924a041c5bSmacallan ;; 12934a041c5bSmacallan we32k) 12944a041c5bSmacallan basic_machine=we32k-att 12954a041c5bSmacallan ;; 129654b44505Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12974a041c5bSmacallan basic_machine=sh-unknown 12984a041c5bSmacallan ;; 12994a041c5bSmacallan sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 13004a041c5bSmacallan basic_machine=sparc-sun 13014a041c5bSmacallan ;; 13024a041c5bSmacallan cydra) 13034a041c5bSmacallan basic_machine=cydra-cydrome 13044a041c5bSmacallan ;; 13054a041c5bSmacallan orion) 13064a041c5bSmacallan basic_machine=orion-highlevel 13074a041c5bSmacallan ;; 13084a041c5bSmacallan orion105) 13094a041c5bSmacallan basic_machine=clipper-highlevel 13104a041c5bSmacallan ;; 13114a041c5bSmacallan mac | mpw | mac-mpw) 13124a041c5bSmacallan basic_machine=m68k-apple 13134a041c5bSmacallan ;; 13144a041c5bSmacallan pmac | pmac-mpw) 13154a041c5bSmacallan basic_machine=powerpc-apple 13164a041c5bSmacallan ;; 13174a041c5bSmacallan *-unknown) 13184a041c5bSmacallan # Make sure to match an already-canonicalized machine name. 13194a041c5bSmacallan ;; 13204a041c5bSmacallan *) 13214a041c5bSmacallan echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 13224a041c5bSmacallan exit 1 13234a041c5bSmacallan ;; 13244a041c5bSmacallanesac 13254a041c5bSmacallan 13264a041c5bSmacallan# Here we canonicalize certain aliases for manufacturers. 13274a041c5bSmacallancase $basic_machine in 13284a041c5bSmacallan *-digital*) 13294a041c5bSmacallan basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13304a041c5bSmacallan ;; 13314a041c5bSmacallan *-commodore*) 13324a041c5bSmacallan basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13334a041c5bSmacallan ;; 13344a041c5bSmacallan *) 13354a041c5bSmacallan ;; 13364a041c5bSmacallanesac 13374a041c5bSmacallan 13384a041c5bSmacallan# Decode manufacturer-specific aliases for certain operating systems. 13394a041c5bSmacallan 13404a041c5bSmacallanif [ x"$os" != x"" ] 13414a041c5bSmacallanthen 13424a041c5bSmacallancase $os in 134354b44505Smrg # First match some system type aliases 134454b44505Smrg # that might get confused with valid system types. 13454a041c5bSmacallan # -solaris* is a basic system type, with this one exception. 134654b44505Smrg -auroraux) 134754b44505Smrg os=-auroraux 134854b44505Smrg ;; 13494a041c5bSmacallan -solaris1 | -solaris1.*) 13504a041c5bSmacallan os=`echo $os | sed -e 's|solaris1|sunos4|'` 13514a041c5bSmacallan ;; 13524a041c5bSmacallan -solaris) 13534a041c5bSmacallan os=-solaris2 13544a041c5bSmacallan ;; 13554a041c5bSmacallan -svr4*) 13564a041c5bSmacallan os=-sysv4 13574a041c5bSmacallan ;; 13584a041c5bSmacallan -unixware*) 13594a041c5bSmacallan os=-sysv4.2uw 13604a041c5bSmacallan ;; 13614a041c5bSmacallan -gnu/linux*) 13624a041c5bSmacallan os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13634a041c5bSmacallan ;; 13644a041c5bSmacallan # First accept the basic system types. 13654a041c5bSmacallan # The portable systems comes first. 13664a041c5bSmacallan # Each alternative MUST END IN A *, to match a version number. 13674a041c5bSmacallan # -sysv* is not here because it comes later, after sysvr4. 13684a041c5bSmacallan -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 136954b44505Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 137054b44505Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 137154b44505Smrg | -sym* | -kopensolaris* \ 13724a041c5bSmacallan | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 137354b44505Smrg | -aos* | -aros* \ 13744a041c5bSmacallan | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13754a041c5bSmacallan | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13764a041c5bSmacallan | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 137754b44505Smrg | -bitrig* | -openbsd* | -solidbsd* \ 13784a041c5bSmacallan | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13794a041c5bSmacallan | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13804a041c5bSmacallan | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13814a041c5bSmacallan | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 138254b44505Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 138354b44505Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 138454b44505Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 138554b44505Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 13864a041c5bSmacallan | -uxpv* | -beos* | -mpeix* | -udk* \ 13874a041c5bSmacallan | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13884a041c5bSmacallan | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 138954b44505Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \ 13904a041c5bSmacallan | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13914a041c5bSmacallan | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13924a041c5bSmacallan | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 139354b44505Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13944a041c5bSmacallan # Remember, each alternative MUST END IN *, to match a version number. 13954a041c5bSmacallan ;; 13964a041c5bSmacallan -qnx*) 13974a041c5bSmacallan case $basic_machine in 13984a041c5bSmacallan x86-* | i*86-*) 13994a041c5bSmacallan ;; 14004a041c5bSmacallan *) 14014a041c5bSmacallan os=-nto$os 14024a041c5bSmacallan ;; 14034a041c5bSmacallan esac 14044a041c5bSmacallan ;; 14054a041c5bSmacallan -nto-qnx*) 14064a041c5bSmacallan ;; 14074a041c5bSmacallan -nto*) 14084a041c5bSmacallan os=`echo $os | sed -e 's|nto|nto-qnx|'` 14094a041c5bSmacallan ;; 14104a041c5bSmacallan -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 14114a041c5bSmacallan | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 14124a041c5bSmacallan | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 14134a041c5bSmacallan ;; 14144a041c5bSmacallan -mac*) 14154a041c5bSmacallan os=`echo $os | sed -e 's|mac|macos|'` 14164a041c5bSmacallan ;; 14174a041c5bSmacallan -linux-dietlibc) 14184a041c5bSmacallan os=-linux-dietlibc 14194a041c5bSmacallan ;; 14204a041c5bSmacallan -linux*) 14214a041c5bSmacallan os=`echo $os | sed -e 's|linux|linux-gnu|'` 14224a041c5bSmacallan ;; 14234a041c5bSmacallan -sunos5*) 14244a041c5bSmacallan os=`echo $os | sed -e 's|sunos5|solaris2|'` 14254a041c5bSmacallan ;; 14264a041c5bSmacallan -sunos6*) 14274a041c5bSmacallan os=`echo $os | sed -e 's|sunos6|solaris3|'` 14284a041c5bSmacallan ;; 14294a041c5bSmacallan -opened*) 14304a041c5bSmacallan os=-openedition 14314a041c5bSmacallan ;; 143254b44505Smrg -os400*) 14334a041c5bSmacallan os=-os400 14344a041c5bSmacallan ;; 14354a041c5bSmacallan -wince*) 14364a041c5bSmacallan os=-wince 14374a041c5bSmacallan ;; 14384a041c5bSmacallan -osfrose*) 14394a041c5bSmacallan os=-osfrose 14404a041c5bSmacallan ;; 14414a041c5bSmacallan -osf*) 14424a041c5bSmacallan os=-osf 14434a041c5bSmacallan ;; 14444a041c5bSmacallan -utek*) 14454a041c5bSmacallan os=-bsd 14464a041c5bSmacallan ;; 14474a041c5bSmacallan -dynix*) 14484a041c5bSmacallan os=-bsd 14494a041c5bSmacallan ;; 14504a041c5bSmacallan -acis*) 14514a041c5bSmacallan os=-aos 14524a041c5bSmacallan ;; 14534a041c5bSmacallan -atheos*) 14544a041c5bSmacallan os=-atheos 14554a041c5bSmacallan ;; 14564a041c5bSmacallan -syllable*) 14574a041c5bSmacallan os=-syllable 14584a041c5bSmacallan ;; 14594a041c5bSmacallan -386bsd) 14604a041c5bSmacallan os=-bsd 14614a041c5bSmacallan ;; 14624a041c5bSmacallan -ctix* | -uts*) 14634a041c5bSmacallan os=-sysv 14644a041c5bSmacallan ;; 14654a041c5bSmacallan -nova*) 14664a041c5bSmacallan os=-rtmk-nova 14674a041c5bSmacallan ;; 14684a041c5bSmacallan -ns2 ) 14694a041c5bSmacallan os=-nextstep2 14704a041c5bSmacallan ;; 14714a041c5bSmacallan -nsk*) 14724a041c5bSmacallan os=-nsk 14734a041c5bSmacallan ;; 14744a041c5bSmacallan # Preserve the version number of sinix5. 14754a041c5bSmacallan -sinix5.*) 14764a041c5bSmacallan os=`echo $os | sed -e 's|sinix|sysv|'` 14774a041c5bSmacallan ;; 14784a041c5bSmacallan -sinix*) 14794a041c5bSmacallan os=-sysv4 14804a041c5bSmacallan ;; 148154b44505Smrg -tpf*) 14824a041c5bSmacallan os=-tpf 14834a041c5bSmacallan ;; 14844a041c5bSmacallan -triton*) 14854a041c5bSmacallan os=-sysv3 14864a041c5bSmacallan ;; 14874a041c5bSmacallan -oss*) 14884a041c5bSmacallan os=-sysv3 14894a041c5bSmacallan ;; 14904a041c5bSmacallan -svr4) 14914a041c5bSmacallan os=-sysv4 14924a041c5bSmacallan ;; 14934a041c5bSmacallan -svr3) 14944a041c5bSmacallan os=-sysv3 14954a041c5bSmacallan ;; 14964a041c5bSmacallan -sysvr4) 14974a041c5bSmacallan os=-sysv4 14984a041c5bSmacallan ;; 14994a041c5bSmacallan # This must come after -sysvr4. 15004a041c5bSmacallan -sysv*) 15014a041c5bSmacallan ;; 15024a041c5bSmacallan -ose*) 15034a041c5bSmacallan os=-ose 15044a041c5bSmacallan ;; 15054a041c5bSmacallan -es1800*) 15064a041c5bSmacallan os=-ose 15074a041c5bSmacallan ;; 15084a041c5bSmacallan -xenix) 15094a041c5bSmacallan os=-xenix 15104a041c5bSmacallan ;; 15114a041c5bSmacallan -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 15124a041c5bSmacallan os=-mint 15134a041c5bSmacallan ;; 15144a041c5bSmacallan -aros*) 15154a041c5bSmacallan os=-aros 15164a041c5bSmacallan ;; 15174a041c5bSmacallan -kaos*) 15184a041c5bSmacallan os=-kaos 15194a041c5bSmacallan ;; 15204a041c5bSmacallan -zvmoe) 15214a041c5bSmacallan os=-zvmoe 15224a041c5bSmacallan ;; 152354b44505Smrg -dicos*) 152454b44505Smrg os=-dicos 152554b44505Smrg ;; 152654b44505Smrg -nacl*) 152754b44505Smrg ;; 15284a041c5bSmacallan -none) 15294a041c5bSmacallan ;; 15304a041c5bSmacallan *) 15314a041c5bSmacallan # Get rid of the `-' at the beginning of $os. 15324a041c5bSmacallan os=`echo $os | sed 's/[^-]*-//'` 15334a041c5bSmacallan echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15344a041c5bSmacallan exit 1 15354a041c5bSmacallan ;; 15364a041c5bSmacallanesac 15374a041c5bSmacallanelse 15384a041c5bSmacallan 15394a041c5bSmacallan# Here we handle the default operating systems that come with various machines. 15404a041c5bSmacallan# The value should be what the vendor currently ships out the door with their 15414a041c5bSmacallan# machine or put another way, the most popular os provided with the machine. 15424a041c5bSmacallan 15434a041c5bSmacallan# Note that if you're going to try to match "-MANUFACTURER" here (say, 15444a041c5bSmacallan# "-sun"), then you have to tell the case statement up towards the top 15454a041c5bSmacallan# that MANUFACTURER isn't an operating system. Otherwise, code above 15464a041c5bSmacallan# will signal an error saying that MANUFACTURER isn't an operating 15474a041c5bSmacallan# system, and we'll never get to this point. 15484a041c5bSmacallan 15494a041c5bSmacallancase $basic_machine in 155054b44505Smrg score-*) 15514a041c5bSmacallan os=-elf 15524a041c5bSmacallan ;; 155354b44505Smrg spu-*) 15544a041c5bSmacallan os=-elf 15554a041c5bSmacallan ;; 15564a041c5bSmacallan *-acorn) 15574a041c5bSmacallan os=-riscix1.2 15584a041c5bSmacallan ;; 15594a041c5bSmacallan arm*-rebel) 15604a041c5bSmacallan os=-linux 15614a041c5bSmacallan ;; 15624a041c5bSmacallan arm*-semi) 15634a041c5bSmacallan os=-aout 15644a041c5bSmacallan ;; 156554b44505Smrg c4x-* | tic4x-*) 156654b44505Smrg os=-coff 156754b44505Smrg ;; 156854b44505Smrg hexagon-*) 156954b44505Smrg os=-elf 157054b44505Smrg ;; 157154b44505Smrg tic54x-*) 157254b44505Smrg os=-coff 157354b44505Smrg ;; 157454b44505Smrg tic55x-*) 157554b44505Smrg os=-coff 157654b44505Smrg ;; 157754b44505Smrg tic6x-*) 157854b44505Smrg os=-coff 15794a041c5bSmacallan ;; 15804a041c5bSmacallan # This must come before the *-dec entry. 15814a041c5bSmacallan pdp10-*) 15824a041c5bSmacallan os=-tops20 15834a041c5bSmacallan ;; 15844a041c5bSmacallan pdp11-*) 15854a041c5bSmacallan os=-none 15864a041c5bSmacallan ;; 15874a041c5bSmacallan *-dec | vax-*) 15884a041c5bSmacallan os=-ultrix4.2 15894a041c5bSmacallan ;; 15904a041c5bSmacallan m68*-apollo) 15914a041c5bSmacallan os=-domain 15924a041c5bSmacallan ;; 15934a041c5bSmacallan i386-sun) 15944a041c5bSmacallan os=-sunos4.0.2 15954a041c5bSmacallan ;; 15964a041c5bSmacallan m68000-sun) 15974a041c5bSmacallan os=-sunos3 15984a041c5bSmacallan ;; 15994a041c5bSmacallan m68*-cisco) 16004a041c5bSmacallan os=-aout 16014a041c5bSmacallan ;; 160254b44505Smrg mep-*) 16034a041c5bSmacallan os=-elf 16044a041c5bSmacallan ;; 16054a041c5bSmacallan mips*-cisco) 16064a041c5bSmacallan os=-elf 16074a041c5bSmacallan ;; 16084a041c5bSmacallan mips*-*) 16094a041c5bSmacallan os=-elf 16104a041c5bSmacallan ;; 16114a041c5bSmacallan or32-*) 16124a041c5bSmacallan os=-coff 16134a041c5bSmacallan ;; 16144a041c5bSmacallan *-tti) # must be before sparc entry or we get the wrong os. 16154a041c5bSmacallan os=-sysv3 16164a041c5bSmacallan ;; 16174a041c5bSmacallan sparc-* | *-sun) 16184a041c5bSmacallan os=-sunos4.1.1 16194a041c5bSmacallan ;; 16204a041c5bSmacallan *-be) 16214a041c5bSmacallan os=-beos 16224a041c5bSmacallan ;; 16234a041c5bSmacallan *-haiku) 16244a041c5bSmacallan os=-haiku 16254a041c5bSmacallan ;; 16264a041c5bSmacallan *-ibm) 16274a041c5bSmacallan os=-aix 16284a041c5bSmacallan ;; 162954b44505Smrg *-knuth) 16304a041c5bSmacallan os=-mmixware 16314a041c5bSmacallan ;; 16324a041c5bSmacallan *-wec) 16334a041c5bSmacallan os=-proelf 16344a041c5bSmacallan ;; 16354a041c5bSmacallan *-winbond) 16364a041c5bSmacallan os=-proelf 16374a041c5bSmacallan ;; 16384a041c5bSmacallan *-oki) 16394a041c5bSmacallan os=-proelf 16404a041c5bSmacallan ;; 16414a041c5bSmacallan *-hp) 16424a041c5bSmacallan os=-hpux 16434a041c5bSmacallan ;; 16444a041c5bSmacallan *-hitachi) 16454a041c5bSmacallan os=-hiux 16464a041c5bSmacallan ;; 16474a041c5bSmacallan i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16484a041c5bSmacallan os=-sysv 16494a041c5bSmacallan ;; 16504a041c5bSmacallan *-cbm) 16514a041c5bSmacallan os=-amigaos 16524a041c5bSmacallan ;; 16534a041c5bSmacallan *-dg) 16544a041c5bSmacallan os=-dgux 16554a041c5bSmacallan ;; 16564a041c5bSmacallan *-dolphin) 16574a041c5bSmacallan os=-sysv3 16584a041c5bSmacallan ;; 16594a041c5bSmacallan m68k-ccur) 16604a041c5bSmacallan os=-rtu 16614a041c5bSmacallan ;; 16624a041c5bSmacallan m88k-omron*) 16634a041c5bSmacallan os=-luna 16644a041c5bSmacallan ;; 16654a041c5bSmacallan *-next ) 16664a041c5bSmacallan os=-nextstep 16674a041c5bSmacallan ;; 16684a041c5bSmacallan *-sequent) 16694a041c5bSmacallan os=-ptx 16704a041c5bSmacallan ;; 16714a041c5bSmacallan *-crds) 16724a041c5bSmacallan os=-unos 16734a041c5bSmacallan ;; 16744a041c5bSmacallan *-ns) 16754a041c5bSmacallan os=-genix 16764a041c5bSmacallan ;; 16774a041c5bSmacallan i370-*) 16784a041c5bSmacallan os=-mvs 16794a041c5bSmacallan ;; 16804a041c5bSmacallan *-next) 16814a041c5bSmacallan os=-nextstep3 16824a041c5bSmacallan ;; 16834a041c5bSmacallan *-gould) 16844a041c5bSmacallan os=-sysv 16854a041c5bSmacallan ;; 16864a041c5bSmacallan *-highlevel) 16874a041c5bSmacallan os=-bsd 16884a041c5bSmacallan ;; 16894a041c5bSmacallan *-encore) 16904a041c5bSmacallan os=-bsd 16914a041c5bSmacallan ;; 16924a041c5bSmacallan *-sgi) 16934a041c5bSmacallan os=-irix 16944a041c5bSmacallan ;; 16954a041c5bSmacallan *-siemens) 16964a041c5bSmacallan os=-sysv4 16974a041c5bSmacallan ;; 16984a041c5bSmacallan *-masscomp) 16994a041c5bSmacallan os=-rtu 17004a041c5bSmacallan ;; 17014a041c5bSmacallan f30[01]-fujitsu | f700-fujitsu) 17024a041c5bSmacallan os=-uxpv 17034a041c5bSmacallan ;; 17044a041c5bSmacallan *-rom68k) 17054a041c5bSmacallan os=-coff 17064a041c5bSmacallan ;; 17074a041c5bSmacallan *-*bug) 17084a041c5bSmacallan os=-coff 17094a041c5bSmacallan ;; 17104a041c5bSmacallan *-apple) 17114a041c5bSmacallan os=-macos 17124a041c5bSmacallan ;; 17134a041c5bSmacallan *-atari*) 17144a041c5bSmacallan os=-mint 17154a041c5bSmacallan ;; 17164a041c5bSmacallan *) 17174a041c5bSmacallan os=-none 17184a041c5bSmacallan ;; 17194a041c5bSmacallanesac 17204a041c5bSmacallanfi 17214a041c5bSmacallan 17224a041c5bSmacallan# Here we handle the case where we know the os, and the CPU type, but not the 17234a041c5bSmacallan# manufacturer. We pick the logical manufacturer. 17244a041c5bSmacallanvendor=unknown 17254a041c5bSmacallancase $basic_machine in 17264a041c5bSmacallan *-unknown) 17274a041c5bSmacallan case $os in 17284a041c5bSmacallan -riscix*) 17294a041c5bSmacallan vendor=acorn 17304a041c5bSmacallan ;; 17314a041c5bSmacallan -sunos*) 17324a041c5bSmacallan vendor=sun 17334a041c5bSmacallan ;; 173454b44505Smrg -cnk*|-aix*) 17354a041c5bSmacallan vendor=ibm 17364a041c5bSmacallan ;; 17374a041c5bSmacallan -beos*) 17384a041c5bSmacallan vendor=be 17394a041c5bSmacallan ;; 17404a041c5bSmacallan -hpux*) 17414a041c5bSmacallan vendor=hp 17424a041c5bSmacallan ;; 17434a041c5bSmacallan -mpeix*) 17444a041c5bSmacallan vendor=hp 17454a041c5bSmacallan ;; 17464a041c5bSmacallan -hiux*) 17474a041c5bSmacallan vendor=hitachi 17484a041c5bSmacallan ;; 17494a041c5bSmacallan -unos*) 17504a041c5bSmacallan vendor=crds 17514a041c5bSmacallan ;; 17524a041c5bSmacallan -dgux*) 17534a041c5bSmacallan vendor=dg 17544a041c5bSmacallan ;; 17554a041c5bSmacallan -luna*) 17564a041c5bSmacallan vendor=omron 17574a041c5bSmacallan ;; 17584a041c5bSmacallan -genix*) 17594a041c5bSmacallan vendor=ns 17604a041c5bSmacallan ;; 17614a041c5bSmacallan -mvs* | -opened*) 17624a041c5bSmacallan vendor=ibm 17634a041c5bSmacallan ;; 17644a041c5bSmacallan -os400*) 17654a041c5bSmacallan vendor=ibm 17664a041c5bSmacallan ;; 17674a041c5bSmacallan -ptx*) 17684a041c5bSmacallan vendor=sequent 17694a041c5bSmacallan ;; 17704a041c5bSmacallan -tpf*) 17714a041c5bSmacallan vendor=ibm 17724a041c5bSmacallan ;; 17734a041c5bSmacallan -vxsim* | -vxworks* | -windiss*) 17744a041c5bSmacallan vendor=wrs 17754a041c5bSmacallan ;; 17764a041c5bSmacallan -aux*) 17774a041c5bSmacallan vendor=apple 17784a041c5bSmacallan ;; 17794a041c5bSmacallan -hms*) 17804a041c5bSmacallan vendor=hitachi 17814a041c5bSmacallan ;; 17824a041c5bSmacallan -mpw* | -macos*) 17834a041c5bSmacallan vendor=apple 17844a041c5bSmacallan ;; 17854a041c5bSmacallan -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17864a041c5bSmacallan vendor=atari 17874a041c5bSmacallan ;; 17884a041c5bSmacallan -vos*) 17894a041c5bSmacallan vendor=stratus 17904a041c5bSmacallan ;; 17914a041c5bSmacallan esac 17924a041c5bSmacallan basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17934a041c5bSmacallan ;; 17944a041c5bSmacallanesac 17954a041c5bSmacallan 17964a041c5bSmacallanecho $basic_machine$os 17974a041c5bSmacallanexit 17984a041c5bSmacallan 17994a041c5bSmacallan# Local variables: 18004a041c5bSmacallan# eval: (add-hook 'write-file-hooks 'time-stamp) 18014a041c5bSmacallan# time-stamp-start: "timestamp='" 18024a041c5bSmacallan# time-stamp-format: "%:y-%02m-%02d" 18034a041c5bSmacallan# time-stamp-end: "'" 18044a041c5bSmacallan# End: 1805