17e6fb56fSmrg#! /bin/sh 27e6fb56fSmrg# Configuration validation subroutine script. 3983b4bf2Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4983b4bf2Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5983b4bf2Smrg# 2011, 2012 Free Software Foundation, Inc. 67e6fb56fSmrg 7983b4bf2Smrgtimestamp='2012-02-10' 87e6fb56fSmrg 9983b4bf2Smrg# This file is (in principle) common to ALL GNU software. 10983b4bf2Smrg# The presence of a machine in this file suggests that SOME GNU software 11983b4bf2Smrg# can handle that machine. It does not imply ALL GNU software can. 12983b4bf2Smrg# 13983b4bf2Smrg# This file is free software; you can redistribute it and/or modify 14983b4bf2Smrg# it under the terms of the GNU General Public License as published by 15983b4bf2Smrg# the Free Software Foundation; either version 2 of the License, or 167e6fb56fSmrg# (at your option) any later version. 177e6fb56fSmrg# 18983b4bf2Smrg# This program is distributed in the hope that it will be useful, 19983b4bf2Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20983b4bf2Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21983b4bf2Smrg# GNU General Public License for more details. 227e6fb56fSmrg# 237e6fb56fSmrg# You should have received a copy of the GNU General Public License 2490b17f1bSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 257e6fb56fSmrg# 267e6fb56fSmrg# As a special exception to the GNU General Public License, if you 277e6fb56fSmrg# distribute this file as part of a program that contains a 287e6fb56fSmrg# configuration script generated by Autoconf, you may include it under 29983b4bf2Smrg# the same distribution terms that you use for the rest of that program. 307e6fb56fSmrg 317e6fb56fSmrg 32983b4bf2Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 33983b4bf2Smrg# diff and a properly formatted GNU ChangeLog entry. 347e6fb56fSmrg# 357e6fb56fSmrg# Configuration subroutine to validate and canonicalize a configuration type. 367e6fb56fSmrg# Supply the specified configuration type as an argument. 377e6fb56fSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 387e6fb56fSmrg# Otherwise, we print the canonical config type on stdout and succeed. 397e6fb56fSmrg 4090b17f1bSmrg# You can get the latest version of this script from: 4190b17f1bSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4290b17f1bSmrg 437e6fb56fSmrg# This file is supposed to be the same for all GNU packages 447e6fb56fSmrg# and recognize all the CPU types, system types and aliases 457e6fb56fSmrg# that are meaningful with *any* GNU software. 467e6fb56fSmrg# Each package is responsible for reporting which valid configurations 477e6fb56fSmrg# it does not support. The user should be able to distinguish 487e6fb56fSmrg# a failure to support a valid configuration from a meaningless 497e6fb56fSmrg# configuration. 507e6fb56fSmrg 517e6fb56fSmrg# The goal of this file is to map all the various variations of a given 527e6fb56fSmrg# machine specification into a single specification in the form: 537e6fb56fSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 547e6fb56fSmrg# or in some cases, the newer four-part form: 557e6fb56fSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 567e6fb56fSmrg# It is wrong to echo any other type of specification. 577e6fb56fSmrg 587e6fb56fSmrgme=`echo "$0" | sed -e 's,.*/,,'` 597e6fb56fSmrg 607e6fb56fSmrgusage="\ 617e6fb56fSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 627e6fb56fSmrg $0 [OPTION] ALIAS 637e6fb56fSmrg 647e6fb56fSmrgCanonicalize a configuration name. 657e6fb56fSmrg 667e6fb56fSmrgOperation modes: 677e6fb56fSmrg -h, --help print this help, then exit 687e6fb56fSmrg -t, --time-stamp print date of last modification, then exit 697e6fb56fSmrg -v, --version print version number, then exit 707e6fb56fSmrg 717e6fb56fSmrgReport bugs and patches to <config-patches@gnu.org>." 727e6fb56fSmrg 737e6fb56fSmrgversion="\ 747e6fb56fSmrgGNU config.sub ($timestamp) 757e6fb56fSmrg 76983b4bf2SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 77983b4bf2Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 78983b4bf2SmrgFree Software Foundation, Inc. 797e6fb56fSmrg 807e6fb56fSmrgThis is free software; see the source for copying conditions. There is NO 817e6fb56fSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 827e6fb56fSmrg 837e6fb56fSmrghelp=" 847e6fb56fSmrgTry \`$me --help' for more information." 857e6fb56fSmrg 867e6fb56fSmrg# Parse command line 877e6fb56fSmrgwhile test $# -gt 0 ; do 887e6fb56fSmrg case $1 in 897e6fb56fSmrg --time-stamp | --time* | -t ) 907e6fb56fSmrg echo "$timestamp" ; exit ;; 917e6fb56fSmrg --version | -v ) 927e6fb56fSmrg echo "$version" ; exit ;; 937e6fb56fSmrg --help | --h* | -h ) 947e6fb56fSmrg echo "$usage"; exit ;; 957e6fb56fSmrg -- ) # Stop option processing 967e6fb56fSmrg shift; break ;; 977e6fb56fSmrg - ) # Use stdin as input. 987e6fb56fSmrg break ;; 997e6fb56fSmrg -* ) 1007e6fb56fSmrg echo "$me: invalid option $1$help" 1017e6fb56fSmrg exit 1 ;; 1027e6fb56fSmrg 1037e6fb56fSmrg *local*) 1047e6fb56fSmrg # First pass through any local machine types. 1057e6fb56fSmrg echo $1 1067e6fb56fSmrg exit ;; 1077e6fb56fSmrg 1087e6fb56fSmrg * ) 1097e6fb56fSmrg break ;; 1107e6fb56fSmrg esac 1117e6fb56fSmrgdone 1127e6fb56fSmrg 1137e6fb56fSmrgcase $# in 1147e6fb56fSmrg 0) echo "$me: missing argument$help" >&2 1157e6fb56fSmrg exit 1;; 1167e6fb56fSmrg 1) ;; 1177e6fb56fSmrg *) echo "$me: too many arguments$help" >&2 1187e6fb56fSmrg exit 1;; 1197e6fb56fSmrgesac 1207e6fb56fSmrg 1217e6fb56fSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1227e6fb56fSmrg# Here we must recognize all the valid KERNEL-OS combinations. 1237e6fb56fSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1247e6fb56fSmrgcase $maybe_os in 12590b17f1bSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 126983b4bf2Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12790b17f1bSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 12890b17f1bSmrg kopensolaris*-gnu* | \ 1297e6fb56fSmrg storm-chaos* | os2-emx* | rtmk-nova*) 1307e6fb56fSmrg os=-$maybe_os 1317e6fb56fSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1327e6fb56fSmrg ;; 13390b17f1bSmrg android-linux) 13490b17f1bSmrg os=-linux-android 13590b17f1bSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 13690b17f1bSmrg ;; 1377e6fb56fSmrg *) 1387e6fb56fSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1397e6fb56fSmrg if [ $basic_machine != $1 ] 1407e6fb56fSmrg then os=`echo $1 | sed 's/.*-/-/'` 1417e6fb56fSmrg else os=; fi 1427e6fb56fSmrg ;; 1437e6fb56fSmrgesac 1447e6fb56fSmrg 1457e6fb56fSmrg### Let's recognize common machines as not being operating systems so 1467e6fb56fSmrg### that things like config.sub decstation-3100 work. We also 1477e6fb56fSmrg### recognize some manufacturers as not being operating systems, so we 1487e6fb56fSmrg### can provide default operating systems below. 1497e6fb56fSmrgcase $os in 1507e6fb56fSmrg -sun*os*) 1517e6fb56fSmrg # Prevent following clause from handling this invalid input. 1527e6fb56fSmrg ;; 1537e6fb56fSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1547e6fb56fSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1557e6fb56fSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1567e6fb56fSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1577e6fb56fSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1587e6fb56fSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 159983b4bf2Smrg -apple | -axis | -knuth | -cray | -microblaze) 1607e6fb56fSmrg os= 1617e6fb56fSmrg basic_machine=$1 1627e6fb56fSmrg ;; 16390b17f1bSmrg -bluegene*) 16490b17f1bSmrg os=-cnk 16590b17f1bSmrg ;; 1667e6fb56fSmrg -sim | -cisco | -oki | -wec | -winbond) 1677e6fb56fSmrg os= 1687e6fb56fSmrg basic_machine=$1 1697e6fb56fSmrg ;; 1707e6fb56fSmrg -scout) 1717e6fb56fSmrg ;; 1727e6fb56fSmrg -wrs) 1737e6fb56fSmrg os=-vxworks 1747e6fb56fSmrg basic_machine=$1 1757e6fb56fSmrg ;; 1767e6fb56fSmrg -chorusos*) 1777e6fb56fSmrg os=-chorusos 1787e6fb56fSmrg basic_machine=$1 1797e6fb56fSmrg ;; 18090b17f1bSmrg -chorusrdb) 18190b17f1bSmrg os=-chorusrdb 1827e6fb56fSmrg basic_machine=$1 18390b17f1bSmrg ;; 1847e6fb56fSmrg -hiux*) 1857e6fb56fSmrg os=-hiuxwe2 1867e6fb56fSmrg ;; 1877e6fb56fSmrg -sco6) 1887e6fb56fSmrg os=-sco5v6 1897e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1907e6fb56fSmrg ;; 1917e6fb56fSmrg -sco5) 1927e6fb56fSmrg os=-sco3.2v5 1937e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1947e6fb56fSmrg ;; 1957e6fb56fSmrg -sco4) 1967e6fb56fSmrg os=-sco3.2v4 1977e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1987e6fb56fSmrg ;; 1997e6fb56fSmrg -sco3.2.[4-9]*) 2007e6fb56fSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 2017e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2027e6fb56fSmrg ;; 2037e6fb56fSmrg -sco3.2v[4-9]*) 2047e6fb56fSmrg # Don't forget version if it is 3.2v4 or newer. 2057e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2067e6fb56fSmrg ;; 2077e6fb56fSmrg -sco5v6*) 2087e6fb56fSmrg # Don't forget version if it is 3.2v4 or newer. 2097e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2107e6fb56fSmrg ;; 2117e6fb56fSmrg -sco*) 2127e6fb56fSmrg os=-sco3.2v2 2137e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2147e6fb56fSmrg ;; 2157e6fb56fSmrg -udk*) 2167e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2177e6fb56fSmrg ;; 2187e6fb56fSmrg -isc) 2197e6fb56fSmrg os=-isc2.2 2207e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2217e6fb56fSmrg ;; 2227e6fb56fSmrg -clix*) 2237e6fb56fSmrg basic_machine=clipper-intergraph 2247e6fb56fSmrg ;; 2257e6fb56fSmrg -isc*) 2267e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2277e6fb56fSmrg ;; 2287e6fb56fSmrg -lynx*) 2297e6fb56fSmrg os=-lynxos 2307e6fb56fSmrg ;; 2317e6fb56fSmrg -ptx*) 2327e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2337e6fb56fSmrg ;; 2347e6fb56fSmrg -windowsnt*) 2357e6fb56fSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2367e6fb56fSmrg ;; 2377e6fb56fSmrg -psos*) 2387e6fb56fSmrg os=-psos 2397e6fb56fSmrg ;; 2407e6fb56fSmrg -mint | -mint[0-9]*) 2417e6fb56fSmrg basic_machine=m68k-atari 2427e6fb56fSmrg os=-mint 2437e6fb56fSmrg ;; 2447e6fb56fSmrgesac 2457e6fb56fSmrg 2467e6fb56fSmrg# Decode aliases for certain CPU-COMPANY combinations. 2477e6fb56fSmrgcase $basic_machine in 2487e6fb56fSmrg # Recognize the basic CPU types without company name. 2497e6fb56fSmrg # Some are omitted here because they have special meanings below. 2507e6fb56fSmrg 1750a | 580 \ 2517e6fb56fSmrg | a29k \ 25290b17f1bSmrg | aarch64 | aarch64_be \ 2537e6fb56fSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2547e6fb56fSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2557e6fb56fSmrg | am33_2.0 \ 256983b4bf2Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 257983b4bf2Smrg | be32 | be64 \ 2587e6fb56fSmrg | bfin \ 259983b4bf2Smrg | c4x | clipper \ 2607e6fb56fSmrg | d10v | d30v | dlx | dsp16xx \ 26190b17f1bSmrg | epiphany \ 262983b4bf2Smrg | fido | fr30 | frv \ 2637e6fb56fSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 26490b17f1bSmrg | hexagon \ 2657e6fb56fSmrg | i370 | i860 | i960 | ia64 \ 2667e6fb56fSmrg | ip2k | iq2000 \ 26790b17f1bSmrg | le32 | le64 \ 26890b17f1bSmrg | lm32 \ 2697e6fb56fSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 270983b4bf2Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2717e6fb56fSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2727e6fb56fSmrg | mips16 \ 2737e6fb56fSmrg | mips64 | mips64el \ 27490b17f1bSmrg | mips64octeon | mips64octeonel \ 2757e6fb56fSmrg | mips64orion | mips64orionel \ 27690b17f1bSmrg | mips64r5900 | mips64r5900el \ 27790b17f1bSmrg | mips64vr | mips64vrel \ 2787e6fb56fSmrg | mips64vr4100 | mips64vr4100el \ 2797e6fb56fSmrg | mips64vr4300 | mips64vr4300el \ 2807e6fb56fSmrg | mips64vr5000 | mips64vr5000el \ 2817e6fb56fSmrg | mips64vr5900 | mips64vr5900el \ 2827e6fb56fSmrg | mipsisa32 | mipsisa32el \ 2837e6fb56fSmrg | mipsisa32r2 | mipsisa32r2el \ 2847e6fb56fSmrg | mipsisa64 | mipsisa64el \ 2857e6fb56fSmrg | mipsisa64r2 | mipsisa64r2el \ 2867e6fb56fSmrg | mipsisa64sb1 | mipsisa64sb1el \ 2877e6fb56fSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 2887e6fb56fSmrg | mipstx39 | mipstx39el \ 2897e6fb56fSmrg | mn10200 | mn10300 \ 29090b17f1bSmrg | moxie \ 2917e6fb56fSmrg | mt \ 2927e6fb56fSmrg | msp430 \ 29390b17f1bSmrg | nds32 | nds32le | nds32be \ 294983b4bf2Smrg | nios | nios2 \ 2957e6fb56fSmrg | ns16k | ns32k \ 296983b4bf2Smrg | open8 \ 297983b4bf2Smrg | or32 \ 2987e6fb56fSmrg | pdp10 | pdp11 | pj | pjl \ 29990b17f1bSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3007e6fb56fSmrg | pyramid \ 30190b17f1bSmrg | rl78 | rx \ 3027e6fb56fSmrg | score \ 30390b17f1bSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3047e6fb56fSmrg | sh64 | sh64le \ 3057e6fb56fSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3067e6fb56fSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 30790b17f1bSmrg | spu \ 30890b17f1bSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 30990b17f1bSmrg | ubicom32 \ 31090b17f1bSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3117e6fb56fSmrg | we32k \ 31290b17f1bSmrg | x86 | xc16x | xstormy16 | xtensa \ 31390b17f1bSmrg | z8k | z80) 3147e6fb56fSmrg basic_machine=$basic_machine-unknown 3157e6fb56fSmrg ;; 31690b17f1bSmrg c54x) 31790b17f1bSmrg basic_machine=tic54x-unknown 31890b17f1bSmrg ;; 31990b17f1bSmrg c55x) 32090b17f1bSmrg basic_machine=tic55x-unknown 32190b17f1bSmrg ;; 32290b17f1bSmrg c6x) 32390b17f1bSmrg basic_machine=tic6x-unknown 32490b17f1bSmrg ;; 325983b4bf2Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 3267e6fb56fSmrg basic_machine=$basic_machine-unknown 3277e6fb56fSmrg os=-none 3287e6fb56fSmrg ;; 3297e6fb56fSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3307e6fb56fSmrg ;; 3317e6fb56fSmrg ms1) 3327e6fb56fSmrg basic_machine=mt-unknown 3337e6fb56fSmrg ;; 3347e6fb56fSmrg 33590b17f1bSmrg strongarm | thumb | xscale) 33690b17f1bSmrg basic_machine=arm-unknown 33790b17f1bSmrg ;; 33890b17f1bSmrg xgate) 33990b17f1bSmrg basic_machine=$basic_machine-unknown 34090b17f1bSmrg os=-none 34190b17f1bSmrg ;; 34290b17f1bSmrg xscaleeb) 34390b17f1bSmrg basic_machine=armeb-unknown 34490b17f1bSmrg ;; 34590b17f1bSmrg 34690b17f1bSmrg xscaleel) 34790b17f1bSmrg basic_machine=armel-unknown 34890b17f1bSmrg ;; 34990b17f1bSmrg 3507e6fb56fSmrg # We use `pc' rather than `unknown' 3517e6fb56fSmrg # because (1) that's what they normally are, and 3527e6fb56fSmrg # (2) the word "unknown" tends to confuse beginning users. 3537e6fb56fSmrg i*86 | x86_64) 3547e6fb56fSmrg basic_machine=$basic_machine-pc 3557e6fb56fSmrg ;; 3567e6fb56fSmrg # Object if more than one company name word. 3577e6fb56fSmrg *-*-*) 3587e6fb56fSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3597e6fb56fSmrg exit 1 3607e6fb56fSmrg ;; 3617e6fb56fSmrg # Recognize the basic CPU types with company name. 3627e6fb56fSmrg 580-* \ 3637e6fb56fSmrg | a29k-* \ 36490b17f1bSmrg | aarch64-* | aarch64_be-* \ 3657e6fb56fSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3667e6fb56fSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 367983b4bf2Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3687e6fb56fSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3697e6fb56fSmrg | avr-* | avr32-* \ 37090b17f1bSmrg | be32-* | be64-* \ 3717e6fb56fSmrg | bfin-* | bs2000-* \ 37290b17f1bSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 373983b4bf2Smrg | clipper-* | craynv-* | cydra-* \ 3747e6fb56fSmrg | d10v-* | d30v-* | dlx-* \ 3757e6fb56fSmrg | elxsi-* \ 3767e6fb56fSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3777e6fb56fSmrg | h8300-* | h8500-* \ 3787e6fb56fSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 37990b17f1bSmrg | hexagon-* \ 3807e6fb56fSmrg | i*86-* | i860-* | i960-* | ia64-* \ 3817e6fb56fSmrg | ip2k-* | iq2000-* \ 38290b17f1bSmrg | le32-* | le64-* \ 38390b17f1bSmrg | lm32-* \ 3847e6fb56fSmrg | m32c-* | m32r-* | m32rle-* \ 3857e6fb56fSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 386983b4bf2Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3877e6fb56fSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3887e6fb56fSmrg | mips16-* \ 3897e6fb56fSmrg | mips64-* | mips64el-* \ 39090b17f1bSmrg | mips64octeon-* | mips64octeonel-* \ 3917e6fb56fSmrg | mips64orion-* | mips64orionel-* \ 39290b17f1bSmrg | mips64r5900-* | mips64r5900el-* \ 39390b17f1bSmrg | mips64vr-* | mips64vrel-* \ 3947e6fb56fSmrg | mips64vr4100-* | mips64vr4100el-* \ 3957e6fb56fSmrg | mips64vr4300-* | mips64vr4300el-* \ 3967e6fb56fSmrg | mips64vr5000-* | mips64vr5000el-* \ 3977e6fb56fSmrg | mips64vr5900-* | mips64vr5900el-* \ 3987e6fb56fSmrg | mipsisa32-* | mipsisa32el-* \ 3997e6fb56fSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 4007e6fb56fSmrg | mipsisa64-* | mipsisa64el-* \ 4017e6fb56fSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 4027e6fb56fSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 4037e6fb56fSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 4047e6fb56fSmrg | mipstx39-* | mipstx39el-* \ 4057e6fb56fSmrg | mmix-* \ 4067e6fb56fSmrg | mt-* \ 4077e6fb56fSmrg | msp430-* \ 40890b17f1bSmrg | nds32-* | nds32le-* | nds32be-* \ 409983b4bf2Smrg | nios-* | nios2-* \ 4107e6fb56fSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 41190b17f1bSmrg | open8-* \ 4127e6fb56fSmrg | orion-* \ 4137e6fb56fSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 41490b17f1bSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4157e6fb56fSmrg | pyramid-* \ 41690b17f1bSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 41790b17f1bSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4187e6fb56fSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4197e6fb56fSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4207e6fb56fSmrg | sparclite-* \ 42190b17f1bSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 42290b17f1bSmrg | tahoe-* \ 4237e6fb56fSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 42490b17f1bSmrg | tile*-* \ 4257e6fb56fSmrg | tron-* \ 42690b17f1bSmrg | ubicom32-* \ 42790b17f1bSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 42890b17f1bSmrg | vax-* \ 4297e6fb56fSmrg | we32k-* \ 43090b17f1bSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4317e6fb56fSmrg | xstormy16-* | xtensa*-* \ 4327e6fb56fSmrg | ymp-* \ 43390b17f1bSmrg | z8k-* | z80-*) 4347e6fb56fSmrg ;; 4357e6fb56fSmrg # Recognize the basic CPU types without company name, with glob match. 4367e6fb56fSmrg xtensa*) 4377e6fb56fSmrg basic_machine=$basic_machine-unknown 4387e6fb56fSmrg ;; 4397e6fb56fSmrg # Recognize the various machine names and aliases which stand 4407e6fb56fSmrg # for a CPU type and a company and sometimes even an OS. 4417e6fb56fSmrg 386bsd) 4427e6fb56fSmrg basic_machine=i386-unknown 4437e6fb56fSmrg os=-bsd 4447e6fb56fSmrg ;; 4457e6fb56fSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4467e6fb56fSmrg basic_machine=m68000-att 4477e6fb56fSmrg ;; 4487e6fb56fSmrg 3b*) 4497e6fb56fSmrg basic_machine=we32k-att 4507e6fb56fSmrg ;; 4517e6fb56fSmrg a29khif) 4527e6fb56fSmrg basic_machine=a29k-amd 4537e6fb56fSmrg os=-udi 4547e6fb56fSmrg ;; 45590b17f1bSmrg abacus) 4567e6fb56fSmrg basic_machine=abacus-unknown 4577e6fb56fSmrg ;; 4587e6fb56fSmrg adobe68k) 4597e6fb56fSmrg basic_machine=m68010-adobe 4607e6fb56fSmrg os=-scout 4617e6fb56fSmrg ;; 4627e6fb56fSmrg alliant | fx80) 4637e6fb56fSmrg basic_machine=fx80-alliant 4647e6fb56fSmrg ;; 4657e6fb56fSmrg altos | altos3068) 4667e6fb56fSmrg basic_machine=m68k-altos 4677e6fb56fSmrg ;; 4687e6fb56fSmrg am29k) 4697e6fb56fSmrg basic_machine=a29k-none 4707e6fb56fSmrg os=-bsd 4717e6fb56fSmrg ;; 4727e6fb56fSmrg amd64) 4737e6fb56fSmrg basic_machine=x86_64-pc 4747e6fb56fSmrg ;; 4757e6fb56fSmrg amd64-*) 4767e6fb56fSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4777e6fb56fSmrg ;; 4787e6fb56fSmrg amdahl) 4797e6fb56fSmrg basic_machine=580-amdahl 4807e6fb56fSmrg os=-sysv 4817e6fb56fSmrg ;; 4827e6fb56fSmrg amiga | amiga-*) 4837e6fb56fSmrg basic_machine=m68k-unknown 4847e6fb56fSmrg ;; 4857e6fb56fSmrg amigaos | amigados) 4867e6fb56fSmrg basic_machine=m68k-unknown 4877e6fb56fSmrg os=-amigaos 4887e6fb56fSmrg ;; 4897e6fb56fSmrg amigaunix | amix) 4907e6fb56fSmrg basic_machine=m68k-unknown 4917e6fb56fSmrg os=-sysv4 4927e6fb56fSmrg ;; 4937e6fb56fSmrg apollo68) 4947e6fb56fSmrg basic_machine=m68k-apollo 4957e6fb56fSmrg os=-sysv 4967e6fb56fSmrg ;; 4977e6fb56fSmrg apollo68bsd) 4987e6fb56fSmrg basic_machine=m68k-apollo 4997e6fb56fSmrg os=-bsd 5007e6fb56fSmrg ;; 50190b17f1bSmrg aros) 50290b17f1bSmrg basic_machine=i386-pc 50390b17f1bSmrg os=-aros 50490b17f1bSmrg ;; 5057e6fb56fSmrg aux) 5067e6fb56fSmrg basic_machine=m68k-apple 5077e6fb56fSmrg os=-aux 5087e6fb56fSmrg ;; 5097e6fb56fSmrg balance) 5107e6fb56fSmrg basic_machine=ns32k-sequent 5117e6fb56fSmrg os=-dynix 5127e6fb56fSmrg ;; 5137e6fb56fSmrg blackfin) 5147e6fb56fSmrg basic_machine=bfin-unknown 5157e6fb56fSmrg os=-linux 5167e6fb56fSmrg ;; 5177e6fb56fSmrg blackfin-*) 5187e6fb56fSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5197e6fb56fSmrg os=-linux 5207e6fb56fSmrg ;; 52190b17f1bSmrg bluegene*) 52290b17f1bSmrg basic_machine=powerpc-ibm 52390b17f1bSmrg os=-cnk 52490b17f1bSmrg ;; 52590b17f1bSmrg c54x-*) 52690b17f1bSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 52790b17f1bSmrg ;; 52890b17f1bSmrg c55x-*) 52990b17f1bSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 53090b17f1bSmrg ;; 53190b17f1bSmrg c6x-*) 53290b17f1bSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 53390b17f1bSmrg ;; 5347e6fb56fSmrg c90) 5357e6fb56fSmrg basic_machine=c90-cray 5367e6fb56fSmrg os=-unicos 5377e6fb56fSmrg ;; 53890b17f1bSmrg cegcc) 53990b17f1bSmrg basic_machine=arm-unknown 54090b17f1bSmrg os=-cegcc 54190b17f1bSmrg ;; 5427e6fb56fSmrg convex-c1) 5437e6fb56fSmrg basic_machine=c1-convex 5447e6fb56fSmrg os=-bsd 5457e6fb56fSmrg ;; 5467e6fb56fSmrg convex-c2) 5477e6fb56fSmrg basic_machine=c2-convex 5487e6fb56fSmrg os=-bsd 5497e6fb56fSmrg ;; 5507e6fb56fSmrg convex-c32) 5517e6fb56fSmrg basic_machine=c32-convex 5527e6fb56fSmrg os=-bsd 5537e6fb56fSmrg ;; 5547e6fb56fSmrg convex-c34) 5557e6fb56fSmrg basic_machine=c34-convex 5567e6fb56fSmrg os=-bsd 5577e6fb56fSmrg ;; 5587e6fb56fSmrg convex-c38) 5597e6fb56fSmrg basic_machine=c38-convex 5607e6fb56fSmrg os=-bsd 5617e6fb56fSmrg ;; 5627e6fb56fSmrg cray | j90) 5637e6fb56fSmrg basic_machine=j90-cray 5647e6fb56fSmrg os=-unicos 5657e6fb56fSmrg ;; 5667e6fb56fSmrg craynv) 5677e6fb56fSmrg basic_machine=craynv-cray 5687e6fb56fSmrg os=-unicosmp 5697e6fb56fSmrg ;; 57090b17f1bSmrg cr16 | cr16-*) 5717e6fb56fSmrg basic_machine=cr16-unknown 5727e6fb56fSmrg os=-elf 5737e6fb56fSmrg ;; 5747e6fb56fSmrg crds | unos) 5757e6fb56fSmrg basic_machine=m68k-crds 5767e6fb56fSmrg ;; 5777e6fb56fSmrg crisv32 | crisv32-* | etraxfs*) 5787e6fb56fSmrg basic_machine=crisv32-axis 5797e6fb56fSmrg ;; 5807e6fb56fSmrg cris | cris-* | etrax*) 5817e6fb56fSmrg basic_machine=cris-axis 5827e6fb56fSmrg ;; 5837e6fb56fSmrg crx) 5847e6fb56fSmrg basic_machine=crx-unknown 5857e6fb56fSmrg os=-elf 5867e6fb56fSmrg ;; 5877e6fb56fSmrg da30 | da30-*) 5887e6fb56fSmrg basic_machine=m68k-da30 5897e6fb56fSmrg ;; 5907e6fb56fSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5917e6fb56fSmrg basic_machine=mips-dec 5927e6fb56fSmrg ;; 5937e6fb56fSmrg decsystem10* | dec10*) 5947e6fb56fSmrg basic_machine=pdp10-dec 5957e6fb56fSmrg os=-tops10 5967e6fb56fSmrg ;; 5977e6fb56fSmrg decsystem20* | dec20*) 5987e6fb56fSmrg basic_machine=pdp10-dec 5997e6fb56fSmrg os=-tops20 6007e6fb56fSmrg ;; 6017e6fb56fSmrg delta | 3300 | motorola-3300 | motorola-delta \ 6027e6fb56fSmrg | 3300-motorola | delta-motorola) 6037e6fb56fSmrg basic_machine=m68k-motorola 6047e6fb56fSmrg ;; 6057e6fb56fSmrg delta88) 6067e6fb56fSmrg basic_machine=m88k-motorola 6077e6fb56fSmrg os=-sysv3 6087e6fb56fSmrg ;; 60990b17f1bSmrg dicos) 61090b17f1bSmrg basic_machine=i686-pc 61190b17f1bSmrg os=-dicos 61290b17f1bSmrg ;; 6137e6fb56fSmrg djgpp) 6147e6fb56fSmrg basic_machine=i586-pc 6157e6fb56fSmrg os=-msdosdjgpp 6167e6fb56fSmrg ;; 6177e6fb56fSmrg dpx20 | dpx20-*) 6187e6fb56fSmrg basic_machine=rs6000-bull 6197e6fb56fSmrg os=-bosx 6207e6fb56fSmrg ;; 6217e6fb56fSmrg dpx2* | dpx2*-bull) 6227e6fb56fSmrg basic_machine=m68k-bull 6237e6fb56fSmrg os=-sysv3 6247e6fb56fSmrg ;; 6257e6fb56fSmrg ebmon29k) 6267e6fb56fSmrg basic_machine=a29k-amd 6277e6fb56fSmrg os=-ebmon 6287e6fb56fSmrg ;; 6297e6fb56fSmrg elxsi) 6307e6fb56fSmrg basic_machine=elxsi-elxsi 6317e6fb56fSmrg os=-bsd 6327e6fb56fSmrg ;; 6337e6fb56fSmrg encore | umax | mmax) 6347e6fb56fSmrg basic_machine=ns32k-encore 6357e6fb56fSmrg ;; 6367e6fb56fSmrg es1800 | OSE68k | ose68k | ose | OSE) 6377e6fb56fSmrg basic_machine=m68k-ericsson 6387e6fb56fSmrg os=-ose 6397e6fb56fSmrg ;; 6407e6fb56fSmrg fx2800) 6417e6fb56fSmrg basic_machine=i860-alliant 6427e6fb56fSmrg ;; 6437e6fb56fSmrg genix) 6447e6fb56fSmrg basic_machine=ns32k-ns 6457e6fb56fSmrg ;; 6467e6fb56fSmrg gmicro) 6477e6fb56fSmrg basic_machine=tron-gmicro 6487e6fb56fSmrg os=-sysv 6497e6fb56fSmrg ;; 6507e6fb56fSmrg go32) 6517e6fb56fSmrg basic_machine=i386-pc 6527e6fb56fSmrg os=-go32 6537e6fb56fSmrg ;; 6547e6fb56fSmrg h3050r* | hiux*) 6557e6fb56fSmrg basic_machine=hppa1.1-hitachi 6567e6fb56fSmrg os=-hiuxwe2 6577e6fb56fSmrg ;; 6587e6fb56fSmrg h8300hms) 6597e6fb56fSmrg basic_machine=h8300-hitachi 6607e6fb56fSmrg os=-hms 6617e6fb56fSmrg ;; 6627e6fb56fSmrg h8300xray) 6637e6fb56fSmrg basic_machine=h8300-hitachi 6647e6fb56fSmrg os=-xray 6657e6fb56fSmrg ;; 6667e6fb56fSmrg h8500hms) 6677e6fb56fSmrg basic_machine=h8500-hitachi 6687e6fb56fSmrg os=-hms 6697e6fb56fSmrg ;; 6707e6fb56fSmrg harris) 6717e6fb56fSmrg basic_machine=m88k-harris 6727e6fb56fSmrg os=-sysv3 6737e6fb56fSmrg ;; 6747e6fb56fSmrg hp300-*) 6757e6fb56fSmrg basic_machine=m68k-hp 6767e6fb56fSmrg ;; 6777e6fb56fSmrg hp300bsd) 6787e6fb56fSmrg basic_machine=m68k-hp 6797e6fb56fSmrg os=-bsd 6807e6fb56fSmrg ;; 6817e6fb56fSmrg hp300hpux) 6827e6fb56fSmrg basic_machine=m68k-hp 6837e6fb56fSmrg os=-hpux 6847e6fb56fSmrg ;; 6857e6fb56fSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6867e6fb56fSmrg basic_machine=hppa1.0-hp 6877e6fb56fSmrg ;; 6887e6fb56fSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6897e6fb56fSmrg basic_machine=m68000-hp 6907e6fb56fSmrg ;; 6917e6fb56fSmrg hp9k3[2-9][0-9]) 6927e6fb56fSmrg basic_machine=m68k-hp 6937e6fb56fSmrg ;; 6947e6fb56fSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6957e6fb56fSmrg basic_machine=hppa1.0-hp 6967e6fb56fSmrg ;; 6977e6fb56fSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6987e6fb56fSmrg basic_machine=hppa1.1-hp 6997e6fb56fSmrg ;; 7007e6fb56fSmrg hp9k78[0-9] | hp78[0-9]) 7017e6fb56fSmrg # FIXME: really hppa2.0-hp 7027e6fb56fSmrg basic_machine=hppa1.1-hp 7037e6fb56fSmrg ;; 7047e6fb56fSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7057e6fb56fSmrg # FIXME: really hppa2.0-hp 7067e6fb56fSmrg basic_machine=hppa1.1-hp 7077e6fb56fSmrg ;; 7087e6fb56fSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7097e6fb56fSmrg basic_machine=hppa1.1-hp 7107e6fb56fSmrg ;; 7117e6fb56fSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7127e6fb56fSmrg basic_machine=hppa1.0-hp 7137e6fb56fSmrg ;; 7147e6fb56fSmrg hppa-next) 7157e6fb56fSmrg os=-nextstep3 7167e6fb56fSmrg ;; 7177e6fb56fSmrg hppaosf) 7187e6fb56fSmrg basic_machine=hppa1.1-hp 7197e6fb56fSmrg os=-osf 7207e6fb56fSmrg ;; 7217e6fb56fSmrg hppro) 7227e6fb56fSmrg basic_machine=hppa1.1-hp 7237e6fb56fSmrg os=-proelf 7247e6fb56fSmrg ;; 7257e6fb56fSmrg i370-ibm* | ibm*) 7267e6fb56fSmrg basic_machine=i370-ibm 7277e6fb56fSmrg ;; 7287e6fb56fSmrg i*86v32) 7297e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7307e6fb56fSmrg os=-sysv32 7317e6fb56fSmrg ;; 7327e6fb56fSmrg i*86v4*) 7337e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7347e6fb56fSmrg os=-sysv4 7357e6fb56fSmrg ;; 7367e6fb56fSmrg i*86v) 7377e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7387e6fb56fSmrg os=-sysv 7397e6fb56fSmrg ;; 7407e6fb56fSmrg i*86sol2) 7417e6fb56fSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7427e6fb56fSmrg os=-solaris2 7437e6fb56fSmrg ;; 7447e6fb56fSmrg i386mach) 7457e6fb56fSmrg basic_machine=i386-mach 7467e6fb56fSmrg os=-mach 7477e6fb56fSmrg ;; 7487e6fb56fSmrg i386-vsta | vsta) 7497e6fb56fSmrg basic_machine=i386-unknown 7507e6fb56fSmrg os=-vsta 7517e6fb56fSmrg ;; 7527e6fb56fSmrg iris | iris4d) 7537e6fb56fSmrg basic_machine=mips-sgi 7547e6fb56fSmrg case $os in 7557e6fb56fSmrg -irix*) 7567e6fb56fSmrg ;; 7577e6fb56fSmrg *) 7587e6fb56fSmrg os=-irix4 7597e6fb56fSmrg ;; 7607e6fb56fSmrg esac 7617e6fb56fSmrg ;; 7627e6fb56fSmrg isi68 | isi) 7637e6fb56fSmrg basic_machine=m68k-isi 7647e6fb56fSmrg os=-sysv 7657e6fb56fSmrg ;; 7667e6fb56fSmrg m68knommu) 7677e6fb56fSmrg basic_machine=m68k-unknown 7687e6fb56fSmrg os=-linux 7697e6fb56fSmrg ;; 7707e6fb56fSmrg m68knommu-*) 7717e6fb56fSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7727e6fb56fSmrg os=-linux 7737e6fb56fSmrg ;; 7747e6fb56fSmrg m88k-omron*) 7757e6fb56fSmrg basic_machine=m88k-omron 7767e6fb56fSmrg ;; 7777e6fb56fSmrg magnum | m3230) 7787e6fb56fSmrg basic_machine=mips-mips 7797e6fb56fSmrg os=-sysv 7807e6fb56fSmrg ;; 7817e6fb56fSmrg merlin) 7827e6fb56fSmrg basic_machine=ns32k-utek 7837e6fb56fSmrg os=-sysv 7847e6fb56fSmrg ;; 785983b4bf2Smrg microblaze) 78690b17f1bSmrg basic_machine=microblaze-xilinx 78790b17f1bSmrg ;; 7887e6fb56fSmrg mingw32) 789983b4bf2Smrg basic_machine=i386-pc 7907e6fb56fSmrg os=-mingw32 7917e6fb56fSmrg ;; 7927e6fb56fSmrg mingw32ce) 7937e6fb56fSmrg basic_machine=arm-unknown 7947e6fb56fSmrg os=-mingw32ce 7957e6fb56fSmrg ;; 7967e6fb56fSmrg miniframe) 7977e6fb56fSmrg basic_machine=m68000-convergent 7987e6fb56fSmrg ;; 7997e6fb56fSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8007e6fb56fSmrg basic_machine=m68k-atari 8017e6fb56fSmrg os=-mint 8027e6fb56fSmrg ;; 8037e6fb56fSmrg mips3*-*) 8047e6fb56fSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8057e6fb56fSmrg ;; 8067e6fb56fSmrg mips3*) 8077e6fb56fSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8087e6fb56fSmrg ;; 8097e6fb56fSmrg monitor) 8107e6fb56fSmrg basic_machine=m68k-rom68k 8117e6fb56fSmrg os=-coff 8127e6fb56fSmrg ;; 8137e6fb56fSmrg morphos) 8147e6fb56fSmrg basic_machine=powerpc-unknown 8157e6fb56fSmrg os=-morphos 8167e6fb56fSmrg ;; 8177e6fb56fSmrg msdos) 8187e6fb56fSmrg basic_machine=i386-pc 8197e6fb56fSmrg os=-msdos 8207e6fb56fSmrg ;; 8217e6fb56fSmrg ms1-*) 8227e6fb56fSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8237e6fb56fSmrg ;; 82490b17f1bSmrg msys) 825983b4bf2Smrg basic_machine=i386-pc 82690b17f1bSmrg os=-msys 82790b17f1bSmrg ;; 8287e6fb56fSmrg mvs) 8297e6fb56fSmrg basic_machine=i370-ibm 8307e6fb56fSmrg os=-mvs 8317e6fb56fSmrg ;; 83290b17f1bSmrg nacl) 83390b17f1bSmrg basic_machine=le32-unknown 83490b17f1bSmrg os=-nacl 83590b17f1bSmrg ;; 8367e6fb56fSmrg ncr3000) 8377e6fb56fSmrg basic_machine=i486-ncr 8387e6fb56fSmrg os=-sysv4 8397e6fb56fSmrg ;; 8407e6fb56fSmrg netbsd386) 8417e6fb56fSmrg basic_machine=i386-unknown 8427e6fb56fSmrg os=-netbsd 8437e6fb56fSmrg ;; 8447e6fb56fSmrg netwinder) 8457e6fb56fSmrg basic_machine=armv4l-rebel 8467e6fb56fSmrg os=-linux 8477e6fb56fSmrg ;; 8487e6fb56fSmrg news | news700 | news800 | news900) 8497e6fb56fSmrg basic_machine=m68k-sony 8507e6fb56fSmrg os=-newsos 8517e6fb56fSmrg ;; 8527e6fb56fSmrg news1000) 8537e6fb56fSmrg basic_machine=m68030-sony 8547e6fb56fSmrg os=-newsos 8557e6fb56fSmrg ;; 8567e6fb56fSmrg news-3600 | risc-news) 8577e6fb56fSmrg basic_machine=mips-sony 8587e6fb56fSmrg os=-newsos 8597e6fb56fSmrg ;; 8607e6fb56fSmrg necv70) 8617e6fb56fSmrg basic_machine=v70-nec 8627e6fb56fSmrg os=-sysv 8637e6fb56fSmrg ;; 8647e6fb56fSmrg next | m*-next ) 8657e6fb56fSmrg basic_machine=m68k-next 8667e6fb56fSmrg case $os in 8677e6fb56fSmrg -nextstep* ) 8687e6fb56fSmrg ;; 8697e6fb56fSmrg -ns2*) 8707e6fb56fSmrg os=-nextstep2 8717e6fb56fSmrg ;; 8727e6fb56fSmrg *) 8737e6fb56fSmrg os=-nextstep3 8747e6fb56fSmrg ;; 8757e6fb56fSmrg esac 8767e6fb56fSmrg ;; 8777e6fb56fSmrg nh3000) 8787e6fb56fSmrg basic_machine=m68k-harris 8797e6fb56fSmrg os=-cxux 8807e6fb56fSmrg ;; 8817e6fb56fSmrg nh[45]000) 8827e6fb56fSmrg basic_machine=m88k-harris 8837e6fb56fSmrg os=-cxux 8847e6fb56fSmrg ;; 8857e6fb56fSmrg nindy960) 8867e6fb56fSmrg basic_machine=i960-intel 8877e6fb56fSmrg os=-nindy 8887e6fb56fSmrg ;; 8897e6fb56fSmrg mon960) 8907e6fb56fSmrg basic_machine=i960-intel 8917e6fb56fSmrg os=-mon960 8927e6fb56fSmrg ;; 8937e6fb56fSmrg nonstopux) 8947e6fb56fSmrg basic_machine=mips-compaq 8957e6fb56fSmrg os=-nonstopux 8967e6fb56fSmrg ;; 8977e6fb56fSmrg np1) 8987e6fb56fSmrg basic_machine=np1-gould 8997e6fb56fSmrg ;; 90090b17f1bSmrg neo-tandem) 90190b17f1bSmrg basic_machine=neo-tandem 90290b17f1bSmrg ;; 90390b17f1bSmrg nse-tandem) 90490b17f1bSmrg basic_machine=nse-tandem 90590b17f1bSmrg ;; 9067e6fb56fSmrg nsr-tandem) 9077e6fb56fSmrg basic_machine=nsr-tandem 9087e6fb56fSmrg ;; 9097e6fb56fSmrg op50n-* | op60c-*) 9107e6fb56fSmrg basic_machine=hppa1.1-oki 9117e6fb56fSmrg os=-proelf 9127e6fb56fSmrg ;; 9137e6fb56fSmrg openrisc | openrisc-*) 9147e6fb56fSmrg basic_machine=or32-unknown 9157e6fb56fSmrg ;; 9167e6fb56fSmrg os400) 9177e6fb56fSmrg basic_machine=powerpc-ibm 9187e6fb56fSmrg os=-os400 9197e6fb56fSmrg ;; 9207e6fb56fSmrg OSE68000 | ose68000) 9217e6fb56fSmrg basic_machine=m68000-ericsson 9227e6fb56fSmrg os=-ose 9237e6fb56fSmrg ;; 9247e6fb56fSmrg os68k) 9257e6fb56fSmrg basic_machine=m68k-none 9267e6fb56fSmrg os=-os68k 9277e6fb56fSmrg ;; 9287e6fb56fSmrg pa-hitachi) 9297e6fb56fSmrg basic_machine=hppa1.1-hitachi 9307e6fb56fSmrg os=-hiuxwe2 9317e6fb56fSmrg ;; 9327e6fb56fSmrg paragon) 9337e6fb56fSmrg basic_machine=i860-intel 9347e6fb56fSmrg os=-osf 9357e6fb56fSmrg ;; 9367e6fb56fSmrg parisc) 9377e6fb56fSmrg basic_machine=hppa-unknown 9387e6fb56fSmrg os=-linux 9397e6fb56fSmrg ;; 9407e6fb56fSmrg parisc-*) 9417e6fb56fSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9427e6fb56fSmrg os=-linux 9437e6fb56fSmrg ;; 9447e6fb56fSmrg pbd) 9457e6fb56fSmrg basic_machine=sparc-tti 9467e6fb56fSmrg ;; 9477e6fb56fSmrg pbb) 9487e6fb56fSmrg basic_machine=m68k-tti 9497e6fb56fSmrg ;; 9507e6fb56fSmrg pc532 | pc532-*) 9517e6fb56fSmrg basic_machine=ns32k-pc532 9527e6fb56fSmrg ;; 9537e6fb56fSmrg pc98) 9547e6fb56fSmrg basic_machine=i386-pc 9557e6fb56fSmrg ;; 9567e6fb56fSmrg pc98-*) 9577e6fb56fSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9587e6fb56fSmrg ;; 9597e6fb56fSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 9607e6fb56fSmrg basic_machine=i586-pc 9617e6fb56fSmrg ;; 9627e6fb56fSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9637e6fb56fSmrg basic_machine=i686-pc 9647e6fb56fSmrg ;; 9657e6fb56fSmrg pentiumii | pentium2 | pentiumiii | pentium3) 9667e6fb56fSmrg basic_machine=i686-pc 9677e6fb56fSmrg ;; 9687e6fb56fSmrg pentium4) 9697e6fb56fSmrg basic_machine=i786-pc 9707e6fb56fSmrg ;; 9717e6fb56fSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9727e6fb56fSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9737e6fb56fSmrg ;; 9747e6fb56fSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9757e6fb56fSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9767e6fb56fSmrg ;; 9777e6fb56fSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9787e6fb56fSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9797e6fb56fSmrg ;; 9807e6fb56fSmrg pentium4-*) 9817e6fb56fSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9827e6fb56fSmrg ;; 9837e6fb56fSmrg pn) 9847e6fb56fSmrg basic_machine=pn-gould 9857e6fb56fSmrg ;; 9867e6fb56fSmrg power) basic_machine=power-ibm 9877e6fb56fSmrg ;; 98890b17f1bSmrg ppc | ppcbe) basic_machine=powerpc-unknown 9897e6fb56fSmrg ;; 99090b17f1bSmrg ppc-* | ppcbe-*) 99190b17f1bSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9927e6fb56fSmrg ;; 9937e6fb56fSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 9947e6fb56fSmrg basic_machine=powerpcle-unknown 9957e6fb56fSmrg ;; 9967e6fb56fSmrg ppcle-* | powerpclittle-*) 9977e6fb56fSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9987e6fb56fSmrg ;; 9997e6fb56fSmrg ppc64) basic_machine=powerpc64-unknown 10007e6fb56fSmrg ;; 1001983b4bf2Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10027e6fb56fSmrg ;; 10037e6fb56fSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10047e6fb56fSmrg basic_machine=powerpc64le-unknown 10057e6fb56fSmrg ;; 10067e6fb56fSmrg ppc64le-* | powerpc64little-*) 10077e6fb56fSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10087e6fb56fSmrg ;; 10097e6fb56fSmrg ps2) 10107e6fb56fSmrg basic_machine=i386-ibm 10117e6fb56fSmrg ;; 10127e6fb56fSmrg pw32) 10137e6fb56fSmrg basic_machine=i586-unknown 10147e6fb56fSmrg os=-pw32 10157e6fb56fSmrg ;; 1016983b4bf2Smrg rdos) 10177e6fb56fSmrg basic_machine=i386-pc 10187e6fb56fSmrg os=-rdos 10197e6fb56fSmrg ;; 10207e6fb56fSmrg rom68k) 10217e6fb56fSmrg basic_machine=m68k-rom68k 10227e6fb56fSmrg os=-coff 10237e6fb56fSmrg ;; 10247e6fb56fSmrg rm[46]00) 10257e6fb56fSmrg basic_machine=mips-siemens 10267e6fb56fSmrg ;; 10277e6fb56fSmrg rtpc | rtpc-*) 10287e6fb56fSmrg basic_machine=romp-ibm 10297e6fb56fSmrg ;; 10307e6fb56fSmrg s390 | s390-*) 10317e6fb56fSmrg basic_machine=s390-ibm 10327e6fb56fSmrg ;; 10337e6fb56fSmrg s390x | s390x-*) 10347e6fb56fSmrg basic_machine=s390x-ibm 10357e6fb56fSmrg ;; 10367e6fb56fSmrg sa29200) 10377e6fb56fSmrg basic_machine=a29k-amd 10387e6fb56fSmrg os=-udi 10397e6fb56fSmrg ;; 10407e6fb56fSmrg sb1) 10417e6fb56fSmrg basic_machine=mipsisa64sb1-unknown 10427e6fb56fSmrg ;; 10437e6fb56fSmrg sb1el) 10447e6fb56fSmrg basic_machine=mipsisa64sb1el-unknown 10457e6fb56fSmrg ;; 10467e6fb56fSmrg sde) 10477e6fb56fSmrg basic_machine=mipsisa32-sde 10487e6fb56fSmrg os=-elf 10497e6fb56fSmrg ;; 10507e6fb56fSmrg sei) 10517e6fb56fSmrg basic_machine=mips-sei 10527e6fb56fSmrg os=-seiux 10537e6fb56fSmrg ;; 10547e6fb56fSmrg sequent) 10557e6fb56fSmrg basic_machine=i386-sequent 10567e6fb56fSmrg ;; 10577e6fb56fSmrg sh) 10587e6fb56fSmrg basic_machine=sh-hitachi 10597e6fb56fSmrg os=-hms 10607e6fb56fSmrg ;; 10617e6fb56fSmrg sh5el) 10627e6fb56fSmrg basic_machine=sh5le-unknown 10637e6fb56fSmrg ;; 10647e6fb56fSmrg sh64) 10657e6fb56fSmrg basic_machine=sh64-unknown 10667e6fb56fSmrg ;; 10677e6fb56fSmrg sparclite-wrs | simso-wrs) 10687e6fb56fSmrg basic_machine=sparclite-wrs 10697e6fb56fSmrg os=-vxworks 10707e6fb56fSmrg ;; 10717e6fb56fSmrg sps7) 10727e6fb56fSmrg basic_machine=m68k-bull 10737e6fb56fSmrg os=-sysv2 10747e6fb56fSmrg ;; 10757e6fb56fSmrg spur) 10767e6fb56fSmrg basic_machine=spur-unknown 10777e6fb56fSmrg ;; 10787e6fb56fSmrg st2000) 10797e6fb56fSmrg basic_machine=m68k-tandem 10807e6fb56fSmrg ;; 10817e6fb56fSmrg stratus) 10827e6fb56fSmrg basic_machine=i860-stratus 10837e6fb56fSmrg os=-sysv4 10847e6fb56fSmrg ;; 108590b17f1bSmrg strongarm-* | thumb-*) 108690b17f1bSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 108790b17f1bSmrg ;; 10887e6fb56fSmrg sun2) 10897e6fb56fSmrg basic_machine=m68000-sun 10907e6fb56fSmrg ;; 10917e6fb56fSmrg sun2os3) 10927e6fb56fSmrg basic_machine=m68000-sun 10937e6fb56fSmrg os=-sunos3 10947e6fb56fSmrg ;; 10957e6fb56fSmrg sun2os4) 10967e6fb56fSmrg basic_machine=m68000-sun 10977e6fb56fSmrg os=-sunos4 10987e6fb56fSmrg ;; 10997e6fb56fSmrg sun3os3) 11007e6fb56fSmrg basic_machine=m68k-sun 11017e6fb56fSmrg os=-sunos3 11027e6fb56fSmrg ;; 11037e6fb56fSmrg sun3os4) 11047e6fb56fSmrg basic_machine=m68k-sun 11057e6fb56fSmrg os=-sunos4 11067e6fb56fSmrg ;; 11077e6fb56fSmrg sun4os3) 11087e6fb56fSmrg basic_machine=sparc-sun 11097e6fb56fSmrg os=-sunos3 11107e6fb56fSmrg ;; 11117e6fb56fSmrg sun4os4) 11127e6fb56fSmrg basic_machine=sparc-sun 11137e6fb56fSmrg os=-sunos4 11147e6fb56fSmrg ;; 11157e6fb56fSmrg sun4sol2) 11167e6fb56fSmrg basic_machine=sparc-sun 11177e6fb56fSmrg os=-solaris2 11187e6fb56fSmrg ;; 11197e6fb56fSmrg sun3 | sun3-*) 11207e6fb56fSmrg basic_machine=m68k-sun 11217e6fb56fSmrg ;; 11227e6fb56fSmrg sun4) 11237e6fb56fSmrg basic_machine=sparc-sun 11247e6fb56fSmrg ;; 11257e6fb56fSmrg sun386 | sun386i | roadrunner) 11267e6fb56fSmrg basic_machine=i386-sun 11277e6fb56fSmrg ;; 11287e6fb56fSmrg sv1) 11297e6fb56fSmrg basic_machine=sv1-cray 11307e6fb56fSmrg os=-unicos 11317e6fb56fSmrg ;; 11327e6fb56fSmrg symmetry) 11337e6fb56fSmrg basic_machine=i386-sequent 11347e6fb56fSmrg os=-dynix 11357e6fb56fSmrg ;; 11367e6fb56fSmrg t3e) 11377e6fb56fSmrg basic_machine=alphaev5-cray 11387e6fb56fSmrg os=-unicos 11397e6fb56fSmrg ;; 11407e6fb56fSmrg t90) 11417e6fb56fSmrg basic_machine=t90-cray 11427e6fb56fSmrg os=-unicos 11437e6fb56fSmrg ;; 11447e6fb56fSmrg tile*) 114590b17f1bSmrg basic_machine=$basic_machine-unknown 11467e6fb56fSmrg os=-linux-gnu 11477e6fb56fSmrg ;; 11487e6fb56fSmrg tx39) 11497e6fb56fSmrg basic_machine=mipstx39-unknown 11507e6fb56fSmrg ;; 11517e6fb56fSmrg tx39el) 11527e6fb56fSmrg basic_machine=mipstx39el-unknown 11537e6fb56fSmrg ;; 11547e6fb56fSmrg toad1) 11557e6fb56fSmrg basic_machine=pdp10-xkl 11567e6fb56fSmrg os=-tops20 11577e6fb56fSmrg ;; 11587e6fb56fSmrg tower | tower-32) 11597e6fb56fSmrg basic_machine=m68k-ncr 11607e6fb56fSmrg ;; 11617e6fb56fSmrg tpf) 11627e6fb56fSmrg basic_machine=s390x-ibm 11637e6fb56fSmrg os=-tpf 11647e6fb56fSmrg ;; 11657e6fb56fSmrg udi29k) 11667e6fb56fSmrg basic_machine=a29k-amd 11677e6fb56fSmrg os=-udi 11687e6fb56fSmrg ;; 11697e6fb56fSmrg ultra3) 11707e6fb56fSmrg basic_machine=a29k-nyu 11717e6fb56fSmrg os=-sym1 11727e6fb56fSmrg ;; 11737e6fb56fSmrg v810 | necv810) 11747e6fb56fSmrg basic_machine=v810-nec 11757e6fb56fSmrg os=-none 11767e6fb56fSmrg ;; 11777e6fb56fSmrg vaxv) 11787e6fb56fSmrg basic_machine=vax-dec 11797e6fb56fSmrg os=-sysv 11807e6fb56fSmrg ;; 11817e6fb56fSmrg vms) 11827e6fb56fSmrg basic_machine=vax-dec 11837e6fb56fSmrg os=-vms 11847e6fb56fSmrg ;; 11857e6fb56fSmrg vpp*|vx|vx-*) 11867e6fb56fSmrg basic_machine=f301-fujitsu 11877e6fb56fSmrg ;; 11887e6fb56fSmrg vxworks960) 11897e6fb56fSmrg basic_machine=i960-wrs 11907e6fb56fSmrg os=-vxworks 11917e6fb56fSmrg ;; 11927e6fb56fSmrg vxworks68) 11937e6fb56fSmrg basic_machine=m68k-wrs 11947e6fb56fSmrg os=-vxworks 11957e6fb56fSmrg ;; 11967e6fb56fSmrg vxworks29k) 11977e6fb56fSmrg basic_machine=a29k-wrs 11987e6fb56fSmrg os=-vxworks 11997e6fb56fSmrg ;; 12007e6fb56fSmrg w65*) 12017e6fb56fSmrg basic_machine=w65-wdc 12027e6fb56fSmrg os=-none 12037e6fb56fSmrg ;; 12047e6fb56fSmrg w89k-*) 12057e6fb56fSmrg basic_machine=hppa1.1-winbond 12067e6fb56fSmrg os=-proelf 12077e6fb56fSmrg ;; 12087e6fb56fSmrg xbox) 12097e6fb56fSmrg basic_machine=i686-pc 12107e6fb56fSmrg os=-mingw32 12117e6fb56fSmrg ;; 12127e6fb56fSmrg xps | xps100) 12137e6fb56fSmrg basic_machine=xps100-honeywell 12147e6fb56fSmrg ;; 121590b17f1bSmrg xscale-* | xscalee[bl]-*) 121690b17f1bSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 121790b17f1bSmrg ;; 12187e6fb56fSmrg ymp) 12197e6fb56fSmrg basic_machine=ymp-cray 12207e6fb56fSmrg os=-unicos 12217e6fb56fSmrg ;; 12227e6fb56fSmrg z8k-*-coff) 12237e6fb56fSmrg basic_machine=z8k-unknown 12247e6fb56fSmrg os=-sim 12257e6fb56fSmrg ;; 122690b17f1bSmrg z80-*-coff) 122790b17f1bSmrg basic_machine=z80-unknown 122890b17f1bSmrg os=-sim 122990b17f1bSmrg ;; 12307e6fb56fSmrg none) 12317e6fb56fSmrg basic_machine=none-none 12327e6fb56fSmrg os=-none 12337e6fb56fSmrg ;; 12347e6fb56fSmrg 12357e6fb56fSmrg# Here we handle the default manufacturer of certain CPU types. It is in 12367e6fb56fSmrg# some cases the only manufacturer, in others, it is the most popular. 12377e6fb56fSmrg w89k) 12387e6fb56fSmrg basic_machine=hppa1.1-winbond 12397e6fb56fSmrg ;; 12407e6fb56fSmrg op50n) 12417e6fb56fSmrg basic_machine=hppa1.1-oki 12427e6fb56fSmrg ;; 12437e6fb56fSmrg op60c) 12447e6fb56fSmrg basic_machine=hppa1.1-oki 12457e6fb56fSmrg ;; 12467e6fb56fSmrg romp) 12477e6fb56fSmrg basic_machine=romp-ibm 12487e6fb56fSmrg ;; 12497e6fb56fSmrg mmix) 12507e6fb56fSmrg basic_machine=mmix-knuth 12517e6fb56fSmrg ;; 12527e6fb56fSmrg rs6000) 12537e6fb56fSmrg basic_machine=rs6000-ibm 12547e6fb56fSmrg ;; 12557e6fb56fSmrg vax) 12567e6fb56fSmrg basic_machine=vax-dec 12577e6fb56fSmrg ;; 12587e6fb56fSmrg pdp10) 12597e6fb56fSmrg # there are many clones, so DEC is not a safe bet 12607e6fb56fSmrg basic_machine=pdp10-unknown 12617e6fb56fSmrg ;; 12627e6fb56fSmrg pdp11) 12637e6fb56fSmrg basic_machine=pdp11-dec 12647e6fb56fSmrg ;; 12657e6fb56fSmrg we32k) 12667e6fb56fSmrg basic_machine=we32k-att 12677e6fb56fSmrg ;; 126890b17f1bSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12697e6fb56fSmrg basic_machine=sh-unknown 12707e6fb56fSmrg ;; 12717e6fb56fSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12727e6fb56fSmrg basic_machine=sparc-sun 12737e6fb56fSmrg ;; 12747e6fb56fSmrg cydra) 12757e6fb56fSmrg basic_machine=cydra-cydrome 12767e6fb56fSmrg ;; 12777e6fb56fSmrg orion) 12787e6fb56fSmrg basic_machine=orion-highlevel 12797e6fb56fSmrg ;; 12807e6fb56fSmrg orion105) 12817e6fb56fSmrg basic_machine=clipper-highlevel 12827e6fb56fSmrg ;; 12837e6fb56fSmrg mac | mpw | mac-mpw) 12847e6fb56fSmrg basic_machine=m68k-apple 12857e6fb56fSmrg ;; 12867e6fb56fSmrg pmac | pmac-mpw) 12877e6fb56fSmrg basic_machine=powerpc-apple 12887e6fb56fSmrg ;; 12897e6fb56fSmrg *-unknown) 12907e6fb56fSmrg # Make sure to match an already-canonicalized machine name. 12917e6fb56fSmrg ;; 12927e6fb56fSmrg *) 12937e6fb56fSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12947e6fb56fSmrg exit 1 12957e6fb56fSmrg ;; 12967e6fb56fSmrgesac 12977e6fb56fSmrg 12987e6fb56fSmrg# Here we canonicalize certain aliases for manufacturers. 12997e6fb56fSmrgcase $basic_machine in 13007e6fb56fSmrg *-digital*) 13017e6fb56fSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13027e6fb56fSmrg ;; 13037e6fb56fSmrg *-commodore*) 13047e6fb56fSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13057e6fb56fSmrg ;; 13067e6fb56fSmrg *) 13077e6fb56fSmrg ;; 13087e6fb56fSmrgesac 13097e6fb56fSmrg 13107e6fb56fSmrg# Decode manufacturer-specific aliases for certain operating systems. 13117e6fb56fSmrg 13127e6fb56fSmrgif [ x"$os" != x"" ] 13137e6fb56fSmrgthen 13147e6fb56fSmrgcase $os in 131590b17f1bSmrg # First match some system type aliases 131690b17f1bSmrg # that might get confused with valid system types. 13177e6fb56fSmrg # -solaris* is a basic system type, with this one exception. 131890b17f1bSmrg -auroraux) 131990b17f1bSmrg os=-auroraux 132090b17f1bSmrg ;; 13217e6fb56fSmrg -solaris1 | -solaris1.*) 13227e6fb56fSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13237e6fb56fSmrg ;; 13247e6fb56fSmrg -solaris) 13257e6fb56fSmrg os=-solaris2 13267e6fb56fSmrg ;; 13277e6fb56fSmrg -svr4*) 13287e6fb56fSmrg os=-sysv4 13297e6fb56fSmrg ;; 13307e6fb56fSmrg -unixware*) 13317e6fb56fSmrg os=-sysv4.2uw 13327e6fb56fSmrg ;; 13337e6fb56fSmrg -gnu/linux*) 13347e6fb56fSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13357e6fb56fSmrg ;; 13367e6fb56fSmrg # First accept the basic system types. 13377e6fb56fSmrg # The portable systems comes first. 13387e6fb56fSmrg # Each alternative MUST END IN A *, to match a version number. 13397e6fb56fSmrg # -sysv* is not here because it comes later, after sysvr4. 13407e6fb56fSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 134190b17f1bSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 134290b17f1bSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1343983b4bf2Smrg | -sym* | -kopensolaris* \ 13447e6fb56fSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 134590b17f1bSmrg | -aos* | -aros* \ 13467e6fb56fSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13477e6fb56fSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13487e6fb56fSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1349983b4bf2Smrg | -openbsd* | -solidbsd* \ 13507e6fb56fSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13517e6fb56fSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13527e6fb56fSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13537e6fb56fSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 135490b17f1bSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 135590b17f1bSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1356983b4bf2Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1357983b4bf2Smrg | -linux-newlib* | -linux-uclibc* \ 1358983b4bf2Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13597e6fb56fSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13607e6fb56fSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13617e6fb56fSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13627e6fb56fSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13637e6fb56fSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13647e6fb56fSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1365983b4bf2Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13667e6fb56fSmrg # Remember, each alternative MUST END IN *, to match a version number. 13677e6fb56fSmrg ;; 13687e6fb56fSmrg -qnx*) 13697e6fb56fSmrg case $basic_machine in 13707e6fb56fSmrg x86-* | i*86-*) 13717e6fb56fSmrg ;; 13727e6fb56fSmrg *) 13737e6fb56fSmrg os=-nto$os 13747e6fb56fSmrg ;; 13757e6fb56fSmrg esac 13767e6fb56fSmrg ;; 13777e6fb56fSmrg -nto-qnx*) 13787e6fb56fSmrg ;; 13797e6fb56fSmrg -nto*) 13807e6fb56fSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13817e6fb56fSmrg ;; 13827e6fb56fSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13837e6fb56fSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13847e6fb56fSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13857e6fb56fSmrg ;; 13867e6fb56fSmrg -mac*) 13877e6fb56fSmrg os=`echo $os | sed -e 's|mac|macos|'` 13887e6fb56fSmrg ;; 13897e6fb56fSmrg -linux-dietlibc) 13907e6fb56fSmrg os=-linux-dietlibc 13917e6fb56fSmrg ;; 13927e6fb56fSmrg -linux*) 13937e6fb56fSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13947e6fb56fSmrg ;; 13957e6fb56fSmrg -sunos5*) 13967e6fb56fSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13977e6fb56fSmrg ;; 13987e6fb56fSmrg -sunos6*) 13997e6fb56fSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 14007e6fb56fSmrg ;; 14017e6fb56fSmrg -opened*) 14027e6fb56fSmrg os=-openedition 14037e6fb56fSmrg ;; 140490b17f1bSmrg -os400*) 14057e6fb56fSmrg os=-os400 14067e6fb56fSmrg ;; 14077e6fb56fSmrg -wince*) 14087e6fb56fSmrg os=-wince 14097e6fb56fSmrg ;; 14107e6fb56fSmrg -osfrose*) 14117e6fb56fSmrg os=-osfrose 14127e6fb56fSmrg ;; 14137e6fb56fSmrg -osf*) 14147e6fb56fSmrg os=-osf 14157e6fb56fSmrg ;; 14167e6fb56fSmrg -utek*) 14177e6fb56fSmrg os=-bsd 14187e6fb56fSmrg ;; 14197e6fb56fSmrg -dynix*) 14207e6fb56fSmrg os=-bsd 14217e6fb56fSmrg ;; 14227e6fb56fSmrg -acis*) 14237e6fb56fSmrg os=-aos 14247e6fb56fSmrg ;; 14257e6fb56fSmrg -atheos*) 14267e6fb56fSmrg os=-atheos 14277e6fb56fSmrg ;; 14287e6fb56fSmrg -syllable*) 14297e6fb56fSmrg os=-syllable 14307e6fb56fSmrg ;; 14317e6fb56fSmrg -386bsd) 14327e6fb56fSmrg os=-bsd 14337e6fb56fSmrg ;; 14347e6fb56fSmrg -ctix* | -uts*) 14357e6fb56fSmrg os=-sysv 14367e6fb56fSmrg ;; 14377e6fb56fSmrg -nova*) 14387e6fb56fSmrg os=-rtmk-nova 14397e6fb56fSmrg ;; 14407e6fb56fSmrg -ns2 ) 14417e6fb56fSmrg os=-nextstep2 14427e6fb56fSmrg ;; 14437e6fb56fSmrg -nsk*) 14447e6fb56fSmrg os=-nsk 14457e6fb56fSmrg ;; 14467e6fb56fSmrg # Preserve the version number of sinix5. 14477e6fb56fSmrg -sinix5.*) 14487e6fb56fSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 14497e6fb56fSmrg ;; 14507e6fb56fSmrg -sinix*) 14517e6fb56fSmrg os=-sysv4 14527e6fb56fSmrg ;; 145390b17f1bSmrg -tpf*) 14547e6fb56fSmrg os=-tpf 14557e6fb56fSmrg ;; 14567e6fb56fSmrg -triton*) 14577e6fb56fSmrg os=-sysv3 14587e6fb56fSmrg ;; 14597e6fb56fSmrg -oss*) 14607e6fb56fSmrg os=-sysv3 14617e6fb56fSmrg ;; 14627e6fb56fSmrg -svr4) 14637e6fb56fSmrg os=-sysv4 14647e6fb56fSmrg ;; 14657e6fb56fSmrg -svr3) 14667e6fb56fSmrg os=-sysv3 14677e6fb56fSmrg ;; 14687e6fb56fSmrg -sysvr4) 14697e6fb56fSmrg os=-sysv4 14707e6fb56fSmrg ;; 14717e6fb56fSmrg # This must come after -sysvr4. 14727e6fb56fSmrg -sysv*) 14737e6fb56fSmrg ;; 14747e6fb56fSmrg -ose*) 14757e6fb56fSmrg os=-ose 14767e6fb56fSmrg ;; 14777e6fb56fSmrg -es1800*) 14787e6fb56fSmrg os=-ose 14797e6fb56fSmrg ;; 14807e6fb56fSmrg -xenix) 14817e6fb56fSmrg os=-xenix 14827e6fb56fSmrg ;; 14837e6fb56fSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14847e6fb56fSmrg os=-mint 14857e6fb56fSmrg ;; 14867e6fb56fSmrg -aros*) 14877e6fb56fSmrg os=-aros 14887e6fb56fSmrg ;; 1489983b4bf2Smrg -kaos*) 1490983b4bf2Smrg os=-kaos 1491983b4bf2Smrg ;; 14927e6fb56fSmrg -zvmoe) 14937e6fb56fSmrg os=-zvmoe 14947e6fb56fSmrg ;; 149590b17f1bSmrg -dicos*) 149690b17f1bSmrg os=-dicos 149790b17f1bSmrg ;; 149890b17f1bSmrg -nacl*) 149990b17f1bSmrg ;; 15007e6fb56fSmrg -none) 15017e6fb56fSmrg ;; 15027e6fb56fSmrg *) 15037e6fb56fSmrg # Get rid of the `-' at the beginning of $os. 15047e6fb56fSmrg os=`echo $os | sed 's/[^-]*-//'` 15057e6fb56fSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15067e6fb56fSmrg exit 1 15077e6fb56fSmrg ;; 15087e6fb56fSmrgesac 15097e6fb56fSmrgelse 15107e6fb56fSmrg 15117e6fb56fSmrg# Here we handle the default operating systems that come with various machines. 15127e6fb56fSmrg# The value should be what the vendor currently ships out the door with their 15137e6fb56fSmrg# machine or put another way, the most popular os provided with the machine. 15147e6fb56fSmrg 15157e6fb56fSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15167e6fb56fSmrg# "-sun"), then you have to tell the case statement up towards the top 15177e6fb56fSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15187e6fb56fSmrg# will signal an error saying that MANUFACTURER isn't an operating 15197e6fb56fSmrg# system, and we'll never get to this point. 15207e6fb56fSmrg 15217e6fb56fSmrgcase $basic_machine in 152290b17f1bSmrg score-*) 15237e6fb56fSmrg os=-elf 15247e6fb56fSmrg ;; 152590b17f1bSmrg spu-*) 15267e6fb56fSmrg os=-elf 15277e6fb56fSmrg ;; 15287e6fb56fSmrg *-acorn) 15297e6fb56fSmrg os=-riscix1.2 15307e6fb56fSmrg ;; 15317e6fb56fSmrg arm*-rebel) 15327e6fb56fSmrg os=-linux 15337e6fb56fSmrg ;; 15347e6fb56fSmrg arm*-semi) 15357e6fb56fSmrg os=-aout 15367e6fb56fSmrg ;; 153790b17f1bSmrg c4x-* | tic4x-*) 153890b17f1bSmrg os=-coff 153990b17f1bSmrg ;; 154090b17f1bSmrg tic54x-*) 154190b17f1bSmrg os=-coff 154290b17f1bSmrg ;; 154390b17f1bSmrg tic55x-*) 154490b17f1bSmrg os=-coff 154590b17f1bSmrg ;; 154690b17f1bSmrg tic6x-*) 154790b17f1bSmrg os=-coff 15487e6fb56fSmrg ;; 15497e6fb56fSmrg # This must come before the *-dec entry. 15507e6fb56fSmrg pdp10-*) 15517e6fb56fSmrg os=-tops20 15527e6fb56fSmrg ;; 15537e6fb56fSmrg pdp11-*) 15547e6fb56fSmrg os=-none 15557e6fb56fSmrg ;; 15567e6fb56fSmrg *-dec | vax-*) 15577e6fb56fSmrg os=-ultrix4.2 15587e6fb56fSmrg ;; 15597e6fb56fSmrg m68*-apollo) 15607e6fb56fSmrg os=-domain 15617e6fb56fSmrg ;; 15627e6fb56fSmrg i386-sun) 15637e6fb56fSmrg os=-sunos4.0.2 15647e6fb56fSmrg ;; 15657e6fb56fSmrg m68000-sun) 15667e6fb56fSmrg os=-sunos3 15677e6fb56fSmrg ;; 15687e6fb56fSmrg m68*-cisco) 15697e6fb56fSmrg os=-aout 15707e6fb56fSmrg ;; 157190b17f1bSmrg mep-*) 15727e6fb56fSmrg os=-elf 15737e6fb56fSmrg ;; 15747e6fb56fSmrg mips*-cisco) 15757e6fb56fSmrg os=-elf 15767e6fb56fSmrg ;; 15777e6fb56fSmrg mips*-*) 15787e6fb56fSmrg os=-elf 15797e6fb56fSmrg ;; 15807e6fb56fSmrg or32-*) 15817e6fb56fSmrg os=-coff 15827e6fb56fSmrg ;; 15837e6fb56fSmrg *-tti) # must be before sparc entry or we get the wrong os. 15847e6fb56fSmrg os=-sysv3 15857e6fb56fSmrg ;; 15867e6fb56fSmrg sparc-* | *-sun) 15877e6fb56fSmrg os=-sunos4.1.1 15887e6fb56fSmrg ;; 15897e6fb56fSmrg *-be) 15907e6fb56fSmrg os=-beos 15917e6fb56fSmrg ;; 15927e6fb56fSmrg *-haiku) 15937e6fb56fSmrg os=-haiku 15947e6fb56fSmrg ;; 15957e6fb56fSmrg *-ibm) 15967e6fb56fSmrg os=-aix 15977e6fb56fSmrg ;; 159890b17f1bSmrg *-knuth) 15997e6fb56fSmrg os=-mmixware 16007e6fb56fSmrg ;; 16017e6fb56fSmrg *-wec) 16027e6fb56fSmrg os=-proelf 16037e6fb56fSmrg ;; 16047e6fb56fSmrg *-winbond) 16057e6fb56fSmrg os=-proelf 16067e6fb56fSmrg ;; 16077e6fb56fSmrg *-oki) 16087e6fb56fSmrg os=-proelf 16097e6fb56fSmrg ;; 16107e6fb56fSmrg *-hp) 16117e6fb56fSmrg os=-hpux 16127e6fb56fSmrg ;; 16137e6fb56fSmrg *-hitachi) 16147e6fb56fSmrg os=-hiux 16157e6fb56fSmrg ;; 16167e6fb56fSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16177e6fb56fSmrg os=-sysv 16187e6fb56fSmrg ;; 16197e6fb56fSmrg *-cbm) 16207e6fb56fSmrg os=-amigaos 16217e6fb56fSmrg ;; 16227e6fb56fSmrg *-dg) 16237e6fb56fSmrg os=-dgux 16247e6fb56fSmrg ;; 16257e6fb56fSmrg *-dolphin) 16267e6fb56fSmrg os=-sysv3 16277e6fb56fSmrg ;; 16287e6fb56fSmrg m68k-ccur) 16297e6fb56fSmrg os=-rtu 16307e6fb56fSmrg ;; 16317e6fb56fSmrg m88k-omron*) 16327e6fb56fSmrg os=-luna 16337e6fb56fSmrg ;; 16347e6fb56fSmrg *-next ) 16357e6fb56fSmrg os=-nextstep 16367e6fb56fSmrg ;; 16377e6fb56fSmrg *-sequent) 16387e6fb56fSmrg os=-ptx 16397e6fb56fSmrg ;; 16407e6fb56fSmrg *-crds) 16417e6fb56fSmrg os=-unos 16427e6fb56fSmrg ;; 16437e6fb56fSmrg *-ns) 16447e6fb56fSmrg os=-genix 16457e6fb56fSmrg ;; 16467e6fb56fSmrg i370-*) 16477e6fb56fSmrg os=-mvs 16487e6fb56fSmrg ;; 16497e6fb56fSmrg *-next) 16507e6fb56fSmrg os=-nextstep3 16517e6fb56fSmrg ;; 16527e6fb56fSmrg *-gould) 16537e6fb56fSmrg os=-sysv 16547e6fb56fSmrg ;; 16557e6fb56fSmrg *-highlevel) 16567e6fb56fSmrg os=-bsd 16577e6fb56fSmrg ;; 16587e6fb56fSmrg *-encore) 16597e6fb56fSmrg os=-bsd 16607e6fb56fSmrg ;; 16617e6fb56fSmrg *-sgi) 16627e6fb56fSmrg os=-irix 16637e6fb56fSmrg ;; 16647e6fb56fSmrg *-siemens) 16657e6fb56fSmrg os=-sysv4 16667e6fb56fSmrg ;; 16677e6fb56fSmrg *-masscomp) 16687e6fb56fSmrg os=-rtu 16697e6fb56fSmrg ;; 16707e6fb56fSmrg f30[01]-fujitsu | f700-fujitsu) 16717e6fb56fSmrg os=-uxpv 16727e6fb56fSmrg ;; 16737e6fb56fSmrg *-rom68k) 16747e6fb56fSmrg os=-coff 16757e6fb56fSmrg ;; 16767e6fb56fSmrg *-*bug) 16777e6fb56fSmrg os=-coff 16787e6fb56fSmrg ;; 16797e6fb56fSmrg *-apple) 16807e6fb56fSmrg os=-macos 16817e6fb56fSmrg ;; 16827e6fb56fSmrg *-atari*) 16837e6fb56fSmrg os=-mint 16847e6fb56fSmrg ;; 16857e6fb56fSmrg *) 16867e6fb56fSmrg os=-none 16877e6fb56fSmrg ;; 16887e6fb56fSmrgesac 16897e6fb56fSmrgfi 16907e6fb56fSmrg 16917e6fb56fSmrg# Here we handle the case where we know the os, and the CPU type, but not the 16927e6fb56fSmrg# manufacturer. We pick the logical manufacturer. 16937e6fb56fSmrgvendor=unknown 16947e6fb56fSmrgcase $basic_machine in 16957e6fb56fSmrg *-unknown) 16967e6fb56fSmrg case $os in 16977e6fb56fSmrg -riscix*) 16987e6fb56fSmrg vendor=acorn 16997e6fb56fSmrg ;; 17007e6fb56fSmrg -sunos*) 17017e6fb56fSmrg vendor=sun 17027e6fb56fSmrg ;; 170390b17f1bSmrg -cnk*|-aix*) 17047e6fb56fSmrg vendor=ibm 17057e6fb56fSmrg ;; 17067e6fb56fSmrg -beos*) 17077e6fb56fSmrg vendor=be 17087e6fb56fSmrg ;; 17097e6fb56fSmrg -hpux*) 17107e6fb56fSmrg vendor=hp 17117e6fb56fSmrg ;; 17127e6fb56fSmrg -mpeix*) 17137e6fb56fSmrg vendor=hp 17147e6fb56fSmrg ;; 17157e6fb56fSmrg -hiux*) 17167e6fb56fSmrg vendor=hitachi 17177e6fb56fSmrg ;; 17187e6fb56fSmrg -unos*) 17197e6fb56fSmrg vendor=crds 17207e6fb56fSmrg ;; 17217e6fb56fSmrg -dgux*) 17227e6fb56fSmrg vendor=dg 17237e6fb56fSmrg ;; 17247e6fb56fSmrg -luna*) 17257e6fb56fSmrg vendor=omron 17267e6fb56fSmrg ;; 17277e6fb56fSmrg -genix*) 17287e6fb56fSmrg vendor=ns 17297e6fb56fSmrg ;; 17307e6fb56fSmrg -mvs* | -opened*) 17317e6fb56fSmrg vendor=ibm 17327e6fb56fSmrg ;; 17337e6fb56fSmrg -os400*) 17347e6fb56fSmrg vendor=ibm 17357e6fb56fSmrg ;; 17367e6fb56fSmrg -ptx*) 17377e6fb56fSmrg vendor=sequent 17387e6fb56fSmrg ;; 17397e6fb56fSmrg -tpf*) 17407e6fb56fSmrg vendor=ibm 17417e6fb56fSmrg ;; 17427e6fb56fSmrg -vxsim* | -vxworks* | -windiss*) 17437e6fb56fSmrg vendor=wrs 17447e6fb56fSmrg ;; 17457e6fb56fSmrg -aux*) 17467e6fb56fSmrg vendor=apple 17477e6fb56fSmrg ;; 17487e6fb56fSmrg -hms*) 17497e6fb56fSmrg vendor=hitachi 17507e6fb56fSmrg ;; 17517e6fb56fSmrg -mpw* | -macos*) 17527e6fb56fSmrg vendor=apple 17537e6fb56fSmrg ;; 17547e6fb56fSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17557e6fb56fSmrg vendor=atari 17567e6fb56fSmrg ;; 17577e6fb56fSmrg -vos*) 17587e6fb56fSmrg vendor=stratus 17597e6fb56fSmrg ;; 17607e6fb56fSmrg esac 17617e6fb56fSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17627e6fb56fSmrg ;; 17637e6fb56fSmrgesac 17647e6fb56fSmrg 17657e6fb56fSmrgecho $basic_machine$os 17667e6fb56fSmrgexit 17677e6fb56fSmrg 17687e6fb56fSmrg# Local variables: 17697e6fb56fSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17707e6fb56fSmrg# time-stamp-start: "timestamp='" 17717e6fb56fSmrg# time-stamp-format: "%:y-%02m-%02d" 17727e6fb56fSmrg# time-stamp-end: "'" 17737e6fb56fSmrg# End: 1774