config.sub revision f1e20f77
15b28e182Smrg#! /bin/sh 25b28e182Smrg# Configuration validation subroutine script. 35b28e182Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4f1e20f77Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 55b28e182Smrg# Free Software Foundation, Inc. 65b28e182Smrg 7f1e20f77Smrgtimestamp='2010-09-11' 85b28e182Smrg 95b28e182Smrg# This file is (in principle) common to ALL GNU software. 105b28e182Smrg# The presence of a machine in this file suggests that SOME GNU software 115b28e182Smrg# can handle that machine. It does not imply ALL GNU software can. 125b28e182Smrg# 135b28e182Smrg# This file is free software; you can redistribute it and/or modify 145b28e182Smrg# it under the terms of the GNU General Public License as published by 155b28e182Smrg# the Free Software Foundation; either version 2 of the License, or 165b28e182Smrg# (at your option) any later version. 175b28e182Smrg# 185b28e182Smrg# This program is distributed in the hope that it will be useful, 195b28e182Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 205b28e182Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 215b28e182Smrg# GNU General Public License for more details. 225b28e182Smrg# 235b28e182Smrg# You should have received a copy of the GNU General Public License 245b28e182Smrg# along with this program; if not, write to the Free Software 255b28e182Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 265b28e182Smrg# 02110-1301, USA. 275b28e182Smrg# 285b28e182Smrg# As a special exception to the GNU General Public License, if you 295b28e182Smrg# distribute this file as part of a program that contains a 305b28e182Smrg# configuration script generated by Autoconf, you may include it under 315b28e182Smrg# the same distribution terms that you use for the rest of that program. 325b28e182Smrg 335b28e182Smrg 345b28e182Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 35f1e20f77Smrg# diff and a properly formatted GNU ChangeLog entry. 365b28e182Smrg# 375b28e182Smrg# Configuration subroutine to validate and canonicalize a configuration type. 385b28e182Smrg# Supply the specified configuration type as an argument. 395b28e182Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 405b28e182Smrg# Otherwise, we print the canonical config type on stdout and succeed. 415b28e182Smrg 42f1e20f77Smrg# You can get the latest version of this script from: 43f1e20f77Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44f1e20f77Smrg 455b28e182Smrg# This file is supposed to be the same for all GNU packages 465b28e182Smrg# and recognize all the CPU types, system types and aliases 475b28e182Smrg# that are meaningful with *any* GNU software. 485b28e182Smrg# Each package is responsible for reporting which valid configurations 495b28e182Smrg# it does not support. The user should be able to distinguish 505b28e182Smrg# a failure to support a valid configuration from a meaningless 515b28e182Smrg# configuration. 525b28e182Smrg 535b28e182Smrg# The goal of this file is to map all the various variations of a given 545b28e182Smrg# machine specification into a single specification in the form: 555b28e182Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 565b28e182Smrg# or in some cases, the newer four-part form: 575b28e182Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 585b28e182Smrg# It is wrong to echo any other type of specification. 595b28e182Smrg 605b28e182Smrgme=`echo "$0" | sed -e 's,.*/,,'` 615b28e182Smrg 625b28e182Smrgusage="\ 635b28e182SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 645b28e182Smrg $0 [OPTION] ALIAS 655b28e182Smrg 665b28e182SmrgCanonicalize a configuration name. 675b28e182Smrg 685b28e182SmrgOperation modes: 695b28e182Smrg -h, --help print this help, then exit 705b28e182Smrg -t, --time-stamp print date of last modification, then exit 715b28e182Smrg -v, --version print version number, then exit 725b28e182Smrg 735b28e182SmrgReport bugs and patches to <config-patches@gnu.org>." 745b28e182Smrg 755b28e182Smrgversion="\ 765b28e182SmrgGNU config.sub ($timestamp) 775b28e182Smrg 78f1e20f77SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 79f1e20f77Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 80f1e20f77SmrgSoftware Foundation, Inc. 815b28e182Smrg 825b28e182SmrgThis is free software; see the source for copying conditions. There is NO 835b28e182Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 845b28e182Smrg 855b28e182Smrghelp=" 865b28e182SmrgTry \`$me --help' for more information." 875b28e182Smrg 885b28e182Smrg# Parse command line 895b28e182Smrgwhile test $# -gt 0 ; do 905b28e182Smrg case $1 in 915b28e182Smrg --time-stamp | --time* | -t ) 925b28e182Smrg echo "$timestamp" ; exit ;; 935b28e182Smrg --version | -v ) 945b28e182Smrg echo "$version" ; exit ;; 955b28e182Smrg --help | --h* | -h ) 965b28e182Smrg echo "$usage"; exit ;; 975b28e182Smrg -- ) # Stop option processing 985b28e182Smrg shift; break ;; 995b28e182Smrg - ) # Use stdin as input. 1005b28e182Smrg break ;; 1015b28e182Smrg -* ) 1025b28e182Smrg echo "$me: invalid option $1$help" 1035b28e182Smrg exit 1 ;; 1045b28e182Smrg 1055b28e182Smrg *local*) 1065b28e182Smrg # First pass through any local machine types. 1075b28e182Smrg echo $1 1085b28e182Smrg exit ;; 1095b28e182Smrg 1105b28e182Smrg * ) 1115b28e182Smrg break ;; 1125b28e182Smrg esac 1135b28e182Smrgdone 1145b28e182Smrg 1155b28e182Smrgcase $# in 1165b28e182Smrg 0) echo "$me: missing argument$help" >&2 1175b28e182Smrg exit 1;; 1185b28e182Smrg 1) ;; 1195b28e182Smrg *) echo "$me: too many arguments$help" >&2 1205b28e182Smrg exit 1;; 1215b28e182Smrgesac 1225b28e182Smrg 1235b28e182Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1245b28e182Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1255b28e182Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1265b28e182Smrgcase $maybe_os in 127f1e20f77Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128f1e20f77Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129f1e20f77Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1305b28e182Smrg kopensolaris*-gnu* | \ 1315b28e182Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1325b28e182Smrg os=-$maybe_os 1335b28e182Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1345b28e182Smrg ;; 1355b28e182Smrg *) 1365b28e182Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1375b28e182Smrg if [ $basic_machine != $1 ] 1385b28e182Smrg then os=`echo $1 | sed 's/.*-/-/'` 1395b28e182Smrg else os=; fi 1405b28e182Smrg ;; 1415b28e182Smrgesac 1425b28e182Smrg 1435b28e182Smrg### Let's recognize common machines as not being operating systems so 1445b28e182Smrg### that things like config.sub decstation-3100 work. We also 1455b28e182Smrg### recognize some manufacturers as not being operating systems, so we 1465b28e182Smrg### can provide default operating systems below. 1475b28e182Smrgcase $os in 1485b28e182Smrg -sun*os*) 1495b28e182Smrg # Prevent following clause from handling this invalid input. 1505b28e182Smrg ;; 1515b28e182Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1525b28e182Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1535b28e182Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1545b28e182Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1555b28e182Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1565b28e182Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157f1e20f77Smrg -apple | -axis | -knuth | -cray | -microblaze) 1585b28e182Smrg os= 1595b28e182Smrg basic_machine=$1 1605b28e182Smrg ;; 161f1e20f77Smrg -bluegene*) 162f1e20f77Smrg os=-cnk 163f1e20f77Smrg ;; 1645b28e182Smrg -sim | -cisco | -oki | -wec | -winbond) 1655b28e182Smrg os= 1665b28e182Smrg basic_machine=$1 1675b28e182Smrg ;; 1685b28e182Smrg -scout) 1695b28e182Smrg ;; 1705b28e182Smrg -wrs) 1715b28e182Smrg os=-vxworks 1725b28e182Smrg basic_machine=$1 1735b28e182Smrg ;; 1745b28e182Smrg -chorusos*) 1755b28e182Smrg os=-chorusos 1765b28e182Smrg basic_machine=$1 1775b28e182Smrg ;; 1785b28e182Smrg -chorusrdb) 1795b28e182Smrg os=-chorusrdb 1805b28e182Smrg basic_machine=$1 1815b28e182Smrg ;; 1825b28e182Smrg -hiux*) 1835b28e182Smrg os=-hiuxwe2 1845b28e182Smrg ;; 1855b28e182Smrg -sco6) 1865b28e182Smrg os=-sco5v6 1875b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1885b28e182Smrg ;; 1895b28e182Smrg -sco5) 1905b28e182Smrg os=-sco3.2v5 1915b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1925b28e182Smrg ;; 1935b28e182Smrg -sco4) 1945b28e182Smrg os=-sco3.2v4 1955b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1965b28e182Smrg ;; 1975b28e182Smrg -sco3.2.[4-9]*) 1985b28e182Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1995b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2005b28e182Smrg ;; 2015b28e182Smrg -sco3.2v[4-9]*) 2025b28e182Smrg # Don't forget version if it is 3.2v4 or newer. 2035b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2045b28e182Smrg ;; 2055b28e182Smrg -sco5v6*) 2065b28e182Smrg # Don't forget version if it is 3.2v4 or newer. 2075b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2085b28e182Smrg ;; 2095b28e182Smrg -sco*) 2105b28e182Smrg os=-sco3.2v2 2115b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2125b28e182Smrg ;; 2135b28e182Smrg -udk*) 2145b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2155b28e182Smrg ;; 2165b28e182Smrg -isc) 2175b28e182Smrg os=-isc2.2 2185b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2195b28e182Smrg ;; 2205b28e182Smrg -clix*) 2215b28e182Smrg basic_machine=clipper-intergraph 2225b28e182Smrg ;; 2235b28e182Smrg -isc*) 2245b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2255b28e182Smrg ;; 2265b28e182Smrg -lynx*) 2275b28e182Smrg os=-lynxos 2285b28e182Smrg ;; 2295b28e182Smrg -ptx*) 2305b28e182Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2315b28e182Smrg ;; 2325b28e182Smrg -windowsnt*) 2335b28e182Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2345b28e182Smrg ;; 2355b28e182Smrg -psos*) 2365b28e182Smrg os=-psos 2375b28e182Smrg ;; 2385b28e182Smrg -mint | -mint[0-9]*) 2395b28e182Smrg basic_machine=m68k-atari 2405b28e182Smrg os=-mint 2415b28e182Smrg ;; 2425b28e182Smrgesac 2435b28e182Smrg 2445b28e182Smrg# Decode aliases for certain CPU-COMPANY combinations. 2455b28e182Smrgcase $basic_machine in 2465b28e182Smrg # Recognize the basic CPU types without company name. 2475b28e182Smrg # Some are omitted here because they have special meanings below. 2485b28e182Smrg 1750a | 580 \ 2495b28e182Smrg | a29k \ 2505b28e182Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2515b28e182Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2525b28e182Smrg | am33_2.0 \ 2535b28e182Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2545b28e182Smrg | bfin \ 2555b28e182Smrg | c4x | clipper \ 256f1e20f77Smrg | d10v | d30v | dlx | dsp16xx | dvp \ 2575b28e182Smrg | fido | fr30 | frv \ 2585b28e182Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2595b28e182Smrg | i370 | i860 | i960 | ia64 \ 2605b28e182Smrg | ip2k | iq2000 \ 2615b28e182Smrg | lm32 \ 2625b28e182Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2635b28e182Smrg | maxq | mb | microblaze | mcore | mep | metag \ 2645b28e182Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2655b28e182Smrg | mips16 \ 2665b28e182Smrg | mips64 | mips64el \ 2675b28e182Smrg | mips64octeon | mips64octeonel \ 2685b28e182Smrg | mips64orion | mips64orionel \ 2695b28e182Smrg | mips64r5900 | mips64r5900el \ 2705b28e182Smrg | mips64vr | mips64vrel \ 2715b28e182Smrg | mips64vr4100 | mips64vr4100el \ 2725b28e182Smrg | mips64vr4300 | mips64vr4300el \ 2735b28e182Smrg | mips64vr5000 | mips64vr5000el \ 2745b28e182Smrg | mips64vr5900 | mips64vr5900el \ 2755b28e182Smrg | mipsisa32 | mipsisa32el \ 2765b28e182Smrg | mipsisa32r2 | mipsisa32r2el \ 2775b28e182Smrg | mipsisa64 | mipsisa64el \ 2785b28e182Smrg | mipsisa64r2 | mipsisa64r2el \ 2795b28e182Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2805b28e182Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2815b28e182Smrg | mipstx39 | mipstx39el \ 2825b28e182Smrg | mn10200 | mn10300 \ 2835b28e182Smrg | moxie \ 2845b28e182Smrg | mt \ 2855b28e182Smrg | msp430 \ 286f1e20f77Smrg | nds32 | nds32le | nds32be \ 2875b28e182Smrg | nios | nios2 \ 2885b28e182Smrg | ns16k | ns32k \ 2895b28e182Smrg | or32 \ 2905b28e182Smrg | pdp10 | pdp11 | pj | pjl \ 2915b28e182Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2925b28e182Smrg | pyramid \ 293f1e20f77Smrg | rx \ 2945b28e182Smrg | score \ 2955b28e182Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2965b28e182Smrg | sh64 | sh64le \ 2975b28e182Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2985b28e182Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2995b28e182Smrg | spu | strongarm \ 300f1e20f77Smrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 301f1e20f77Smrg | ubicom32 \ 3025b28e182Smrg | v850 | v850e \ 3035b28e182Smrg | we32k \ 3045b28e182Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 3055b28e182Smrg | z8k | z80) 3065b28e182Smrg basic_machine=$basic_machine-unknown 3075b28e182Smrg ;; 308f1e20f77Smrg c54x) 309f1e20f77Smrg basic_machine=tic54x-unknown 310f1e20f77Smrg ;; 311f1e20f77Smrg c55x) 312f1e20f77Smrg basic_machine=tic55x-unknown 313f1e20f77Smrg ;; 314f1e20f77Smrg c6x) 315f1e20f77Smrg basic_machine=tic6x-unknown 316f1e20f77Smrg ;; 317f1e20f77Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 3185b28e182Smrg # Motorola 68HC11/12. 3195b28e182Smrg basic_machine=$basic_machine-unknown 3205b28e182Smrg os=-none 3215b28e182Smrg ;; 3225b28e182Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3235b28e182Smrg ;; 3245b28e182Smrg ms1) 3255b28e182Smrg basic_machine=mt-unknown 3265b28e182Smrg ;; 3275b28e182Smrg 3285b28e182Smrg # We use `pc' rather than `unknown' 3295b28e182Smrg # because (1) that's what they normally are, and 3305b28e182Smrg # (2) the word "unknown" tends to confuse beginning users. 3315b28e182Smrg i*86 | x86_64) 3325b28e182Smrg basic_machine=$basic_machine-pc 3335b28e182Smrg ;; 3345b28e182Smrg # Object if more than one company name word. 3355b28e182Smrg *-*-*) 3365b28e182Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3375b28e182Smrg exit 1 3385b28e182Smrg ;; 3395b28e182Smrg # Recognize the basic CPU types with company name. 3405b28e182Smrg 580-* \ 3415b28e182Smrg | a29k-* \ 3425b28e182Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3435b28e182Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3445b28e182Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3455b28e182Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3465b28e182Smrg | avr-* | avr32-* \ 3475b28e182Smrg | bfin-* | bs2000-* \ 348f1e20f77Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3495b28e182Smrg | clipper-* | craynv-* | cydra-* \ 3505b28e182Smrg | d10v-* | d30v-* | dlx-* \ 3515b28e182Smrg | elxsi-* \ 3525b28e182Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3535b28e182Smrg | h8300-* | h8500-* \ 3545b28e182Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3555b28e182Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3565b28e182Smrg | ip2k-* | iq2000-* \ 3575b28e182Smrg | lm32-* \ 3585b28e182Smrg | m32c-* | m32r-* | m32rle-* \ 3595b28e182Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 360f1e20f77Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3615b28e182Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3625b28e182Smrg | mips16-* \ 3635b28e182Smrg | mips64-* | mips64el-* \ 3645b28e182Smrg | mips64octeon-* | mips64octeonel-* \ 3655b28e182Smrg | mips64orion-* | mips64orionel-* \ 3665b28e182Smrg | mips64r5900-* | mips64r5900el-* \ 3675b28e182Smrg | mips64vr-* | mips64vrel-* \ 3685b28e182Smrg | mips64vr4100-* | mips64vr4100el-* \ 3695b28e182Smrg | mips64vr4300-* | mips64vr4300el-* \ 3705b28e182Smrg | mips64vr5000-* | mips64vr5000el-* \ 3715b28e182Smrg | mips64vr5900-* | mips64vr5900el-* \ 3725b28e182Smrg | mipsisa32-* | mipsisa32el-* \ 3735b28e182Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 3745b28e182Smrg | mipsisa64-* | mipsisa64el-* \ 3755b28e182Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3765b28e182Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3775b28e182Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3785b28e182Smrg | mipstx39-* | mipstx39el-* \ 3795b28e182Smrg | mmix-* \ 3805b28e182Smrg | mt-* \ 3815b28e182Smrg | msp430-* \ 382f1e20f77Smrg | nds32-* | nds32le-* | nds32be-* \ 3835b28e182Smrg | nios-* | nios2-* \ 3845b28e182Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 3855b28e182Smrg | orion-* \ 3865b28e182Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3875b28e182Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3885b28e182Smrg | pyramid-* \ 389f1e20f77Smrg | romp-* | rs6000-* | rx-* \ 3905b28e182Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3915b28e182Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3925b28e182Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3935b28e182Smrg | sparclite-* \ 3945b28e182Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3955b28e182Smrg | tahoe-* | thumb-* \ 396f1e20f77Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 397f1e20f77Smrg | tile-* | tilegx-* \ 3985b28e182Smrg | tron-* \ 399f1e20f77Smrg | ubicom32-* \ 4005b28e182Smrg | v850-* | v850e-* | vax-* \ 4015b28e182Smrg | we32k-* \ 4025b28e182Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 4035b28e182Smrg | xstormy16-* | xtensa*-* \ 4045b28e182Smrg | ymp-* \ 4055b28e182Smrg | z8k-* | z80-*) 4065b28e182Smrg ;; 4075b28e182Smrg # Recognize the basic CPU types without company name, with glob match. 4085b28e182Smrg xtensa*) 4095b28e182Smrg basic_machine=$basic_machine-unknown 4105b28e182Smrg ;; 4115b28e182Smrg # Recognize the various machine names and aliases which stand 4125b28e182Smrg # for a CPU type and a company and sometimes even an OS. 4135b28e182Smrg 386bsd) 4145b28e182Smrg basic_machine=i386-unknown 4155b28e182Smrg os=-bsd 4165b28e182Smrg ;; 4175b28e182Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4185b28e182Smrg basic_machine=m68000-att 4195b28e182Smrg ;; 4205b28e182Smrg 3b*) 4215b28e182Smrg basic_machine=we32k-att 4225b28e182Smrg ;; 4235b28e182Smrg a29khif) 4245b28e182Smrg basic_machine=a29k-amd 4255b28e182Smrg os=-udi 4265b28e182Smrg ;; 4275b28e182Smrg abacus) 4285b28e182Smrg basic_machine=abacus-unknown 4295b28e182Smrg ;; 4305b28e182Smrg adobe68k) 4315b28e182Smrg basic_machine=m68010-adobe 4325b28e182Smrg os=-scout 4335b28e182Smrg ;; 4345b28e182Smrg alliant | fx80) 4355b28e182Smrg basic_machine=fx80-alliant 4365b28e182Smrg ;; 4375b28e182Smrg altos | altos3068) 4385b28e182Smrg basic_machine=m68k-altos 4395b28e182Smrg ;; 4405b28e182Smrg am29k) 4415b28e182Smrg basic_machine=a29k-none 4425b28e182Smrg os=-bsd 4435b28e182Smrg ;; 4445b28e182Smrg amd64) 4455b28e182Smrg basic_machine=x86_64-pc 4465b28e182Smrg ;; 4475b28e182Smrg amd64-*) 4485b28e182Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4495b28e182Smrg ;; 4505b28e182Smrg amdahl) 4515b28e182Smrg basic_machine=580-amdahl 4525b28e182Smrg os=-sysv 4535b28e182Smrg ;; 4545b28e182Smrg amiga | amiga-*) 4555b28e182Smrg basic_machine=m68k-unknown 4565b28e182Smrg ;; 4575b28e182Smrg amigaos | amigados) 4585b28e182Smrg basic_machine=m68k-unknown 4595b28e182Smrg os=-amigaos 4605b28e182Smrg ;; 4615b28e182Smrg amigaunix | amix) 4625b28e182Smrg basic_machine=m68k-unknown 4635b28e182Smrg os=-sysv4 4645b28e182Smrg ;; 4655b28e182Smrg apollo68) 4665b28e182Smrg basic_machine=m68k-apollo 4675b28e182Smrg os=-sysv 4685b28e182Smrg ;; 4695b28e182Smrg apollo68bsd) 4705b28e182Smrg basic_machine=m68k-apollo 4715b28e182Smrg os=-bsd 4725b28e182Smrg ;; 4735b28e182Smrg aros) 4745b28e182Smrg basic_machine=i386-pc 4755b28e182Smrg os=-aros 4765b28e182Smrg ;; 4775b28e182Smrg aux) 4785b28e182Smrg basic_machine=m68k-apple 4795b28e182Smrg os=-aux 4805b28e182Smrg ;; 4815b28e182Smrg balance) 4825b28e182Smrg basic_machine=ns32k-sequent 4835b28e182Smrg os=-dynix 4845b28e182Smrg ;; 4855b28e182Smrg blackfin) 4865b28e182Smrg basic_machine=bfin-unknown 4875b28e182Smrg os=-linux 4885b28e182Smrg ;; 4895b28e182Smrg blackfin-*) 4905b28e182Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4915b28e182Smrg os=-linux 4925b28e182Smrg ;; 493f1e20f77Smrg bluegene*) 494f1e20f77Smrg basic_machine=powerpc-ibm 495f1e20f77Smrg os=-cnk 496f1e20f77Smrg ;; 497f1e20f77Smrg c54x-*) 498f1e20f77Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 499f1e20f77Smrg ;; 500f1e20f77Smrg c55x-*) 501f1e20f77Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 502f1e20f77Smrg ;; 503f1e20f77Smrg c6x-*) 504f1e20f77Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 505f1e20f77Smrg ;; 5065b28e182Smrg c90) 5075b28e182Smrg basic_machine=c90-cray 5085b28e182Smrg os=-unicos 5095b28e182Smrg ;; 5105b28e182Smrg cegcc) 5115b28e182Smrg basic_machine=arm-unknown 5125b28e182Smrg os=-cegcc 5135b28e182Smrg ;; 5145b28e182Smrg convex-c1) 5155b28e182Smrg basic_machine=c1-convex 5165b28e182Smrg os=-bsd 5175b28e182Smrg ;; 5185b28e182Smrg convex-c2) 5195b28e182Smrg basic_machine=c2-convex 5205b28e182Smrg os=-bsd 5215b28e182Smrg ;; 5225b28e182Smrg convex-c32) 5235b28e182Smrg basic_machine=c32-convex 5245b28e182Smrg os=-bsd 5255b28e182Smrg ;; 5265b28e182Smrg convex-c34) 5275b28e182Smrg basic_machine=c34-convex 5285b28e182Smrg os=-bsd 5295b28e182Smrg ;; 5305b28e182Smrg convex-c38) 5315b28e182Smrg basic_machine=c38-convex 5325b28e182Smrg os=-bsd 5335b28e182Smrg ;; 5345b28e182Smrg cray | j90) 5355b28e182Smrg basic_machine=j90-cray 5365b28e182Smrg os=-unicos 5375b28e182Smrg ;; 5385b28e182Smrg craynv) 5395b28e182Smrg basic_machine=craynv-cray 5405b28e182Smrg os=-unicosmp 5415b28e182Smrg ;; 5425b28e182Smrg cr16) 5435b28e182Smrg basic_machine=cr16-unknown 5445b28e182Smrg os=-elf 5455b28e182Smrg ;; 5465b28e182Smrg crds | unos) 5475b28e182Smrg basic_machine=m68k-crds 5485b28e182Smrg ;; 5495b28e182Smrg crisv32 | crisv32-* | etraxfs*) 5505b28e182Smrg basic_machine=crisv32-axis 5515b28e182Smrg ;; 5525b28e182Smrg cris | cris-* | etrax*) 5535b28e182Smrg basic_machine=cris-axis 5545b28e182Smrg ;; 5555b28e182Smrg crx) 5565b28e182Smrg basic_machine=crx-unknown 5575b28e182Smrg os=-elf 5585b28e182Smrg ;; 5595b28e182Smrg da30 | da30-*) 5605b28e182Smrg basic_machine=m68k-da30 5615b28e182Smrg ;; 5625b28e182Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5635b28e182Smrg basic_machine=mips-dec 5645b28e182Smrg ;; 5655b28e182Smrg decsystem10* | dec10*) 5665b28e182Smrg basic_machine=pdp10-dec 5675b28e182Smrg os=-tops10 5685b28e182Smrg ;; 5695b28e182Smrg decsystem20* | dec20*) 5705b28e182Smrg basic_machine=pdp10-dec 5715b28e182Smrg os=-tops20 5725b28e182Smrg ;; 5735b28e182Smrg delta | 3300 | motorola-3300 | motorola-delta \ 5745b28e182Smrg | 3300-motorola | delta-motorola) 5755b28e182Smrg basic_machine=m68k-motorola 5765b28e182Smrg ;; 5775b28e182Smrg delta88) 5785b28e182Smrg basic_machine=m88k-motorola 5795b28e182Smrg os=-sysv3 5805b28e182Smrg ;; 5815b28e182Smrg dicos) 5825b28e182Smrg basic_machine=i686-pc 5835b28e182Smrg os=-dicos 5845b28e182Smrg ;; 5855b28e182Smrg djgpp) 5865b28e182Smrg basic_machine=i586-pc 5875b28e182Smrg os=-msdosdjgpp 5885b28e182Smrg ;; 5895b28e182Smrg dpx20 | dpx20-*) 5905b28e182Smrg basic_machine=rs6000-bull 5915b28e182Smrg os=-bosx 5925b28e182Smrg ;; 5935b28e182Smrg dpx2* | dpx2*-bull) 5945b28e182Smrg basic_machine=m68k-bull 5955b28e182Smrg os=-sysv3 5965b28e182Smrg ;; 5975b28e182Smrg ebmon29k) 5985b28e182Smrg basic_machine=a29k-amd 5995b28e182Smrg os=-ebmon 6005b28e182Smrg ;; 6015b28e182Smrg elxsi) 6025b28e182Smrg basic_machine=elxsi-elxsi 6035b28e182Smrg os=-bsd 6045b28e182Smrg ;; 6055b28e182Smrg encore | umax | mmax) 6065b28e182Smrg basic_machine=ns32k-encore 6075b28e182Smrg ;; 6085b28e182Smrg es1800 | OSE68k | ose68k | ose | OSE) 6095b28e182Smrg basic_machine=m68k-ericsson 6105b28e182Smrg os=-ose 6115b28e182Smrg ;; 6125b28e182Smrg fx2800) 6135b28e182Smrg basic_machine=i860-alliant 6145b28e182Smrg ;; 6155b28e182Smrg genix) 6165b28e182Smrg basic_machine=ns32k-ns 6175b28e182Smrg ;; 6185b28e182Smrg gmicro) 6195b28e182Smrg basic_machine=tron-gmicro 6205b28e182Smrg os=-sysv 6215b28e182Smrg ;; 6225b28e182Smrg go32) 6235b28e182Smrg basic_machine=i386-pc 6245b28e182Smrg os=-go32 6255b28e182Smrg ;; 6265b28e182Smrg h3050r* | hiux*) 6275b28e182Smrg basic_machine=hppa1.1-hitachi 6285b28e182Smrg os=-hiuxwe2 6295b28e182Smrg ;; 6305b28e182Smrg h8300hms) 6315b28e182Smrg basic_machine=h8300-hitachi 6325b28e182Smrg os=-hms 6335b28e182Smrg ;; 6345b28e182Smrg h8300xray) 6355b28e182Smrg basic_machine=h8300-hitachi 6365b28e182Smrg os=-xray 6375b28e182Smrg ;; 6385b28e182Smrg h8500hms) 6395b28e182Smrg basic_machine=h8500-hitachi 6405b28e182Smrg os=-hms 6415b28e182Smrg ;; 6425b28e182Smrg harris) 6435b28e182Smrg basic_machine=m88k-harris 6445b28e182Smrg os=-sysv3 6455b28e182Smrg ;; 6465b28e182Smrg hp300-*) 6475b28e182Smrg basic_machine=m68k-hp 6485b28e182Smrg ;; 6495b28e182Smrg hp300bsd) 6505b28e182Smrg basic_machine=m68k-hp 6515b28e182Smrg os=-bsd 6525b28e182Smrg ;; 6535b28e182Smrg hp300hpux) 6545b28e182Smrg basic_machine=m68k-hp 6555b28e182Smrg os=-hpux 6565b28e182Smrg ;; 6575b28e182Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6585b28e182Smrg basic_machine=hppa1.0-hp 6595b28e182Smrg ;; 6605b28e182Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6615b28e182Smrg basic_machine=m68000-hp 6625b28e182Smrg ;; 6635b28e182Smrg hp9k3[2-9][0-9]) 6645b28e182Smrg basic_machine=m68k-hp 6655b28e182Smrg ;; 6665b28e182Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6675b28e182Smrg basic_machine=hppa1.0-hp 6685b28e182Smrg ;; 6695b28e182Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6705b28e182Smrg basic_machine=hppa1.1-hp 6715b28e182Smrg ;; 6725b28e182Smrg hp9k78[0-9] | hp78[0-9]) 6735b28e182Smrg # FIXME: really hppa2.0-hp 6745b28e182Smrg basic_machine=hppa1.1-hp 6755b28e182Smrg ;; 6765b28e182Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6775b28e182Smrg # FIXME: really hppa2.0-hp 6785b28e182Smrg basic_machine=hppa1.1-hp 6795b28e182Smrg ;; 6805b28e182Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6815b28e182Smrg basic_machine=hppa1.1-hp 6825b28e182Smrg ;; 6835b28e182Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6845b28e182Smrg basic_machine=hppa1.0-hp 6855b28e182Smrg ;; 6865b28e182Smrg hppa-next) 6875b28e182Smrg os=-nextstep3 6885b28e182Smrg ;; 6895b28e182Smrg hppaosf) 6905b28e182Smrg basic_machine=hppa1.1-hp 6915b28e182Smrg os=-osf 6925b28e182Smrg ;; 6935b28e182Smrg hppro) 6945b28e182Smrg basic_machine=hppa1.1-hp 6955b28e182Smrg os=-proelf 6965b28e182Smrg ;; 6975b28e182Smrg i370-ibm* | ibm*) 6985b28e182Smrg basic_machine=i370-ibm 6995b28e182Smrg ;; 7005b28e182Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 7015b28e182Smrg i*86v32) 7025b28e182Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7035b28e182Smrg os=-sysv32 7045b28e182Smrg ;; 7055b28e182Smrg i*86v4*) 7065b28e182Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7075b28e182Smrg os=-sysv4 7085b28e182Smrg ;; 7095b28e182Smrg i*86v) 7105b28e182Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7115b28e182Smrg os=-sysv 7125b28e182Smrg ;; 7135b28e182Smrg i*86sol2) 7145b28e182Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7155b28e182Smrg os=-solaris2 7165b28e182Smrg ;; 7175b28e182Smrg i386mach) 7185b28e182Smrg basic_machine=i386-mach 7195b28e182Smrg os=-mach 7205b28e182Smrg ;; 7215b28e182Smrg i386-vsta | vsta) 7225b28e182Smrg basic_machine=i386-unknown 7235b28e182Smrg os=-vsta 7245b28e182Smrg ;; 7255b28e182Smrg iris | iris4d) 7265b28e182Smrg basic_machine=mips-sgi 7275b28e182Smrg case $os in 7285b28e182Smrg -irix*) 7295b28e182Smrg ;; 7305b28e182Smrg *) 7315b28e182Smrg os=-irix4 7325b28e182Smrg ;; 7335b28e182Smrg esac 7345b28e182Smrg ;; 7355b28e182Smrg isi68 | isi) 7365b28e182Smrg basic_machine=m68k-isi 7375b28e182Smrg os=-sysv 7385b28e182Smrg ;; 7395b28e182Smrg m68knommu) 7405b28e182Smrg basic_machine=m68k-unknown 7415b28e182Smrg os=-linux 7425b28e182Smrg ;; 7435b28e182Smrg m68knommu-*) 7445b28e182Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7455b28e182Smrg os=-linux 7465b28e182Smrg ;; 7475b28e182Smrg m88k-omron*) 7485b28e182Smrg basic_machine=m88k-omron 7495b28e182Smrg ;; 7505b28e182Smrg magnum | m3230) 7515b28e182Smrg basic_machine=mips-mips 7525b28e182Smrg os=-sysv 7535b28e182Smrg ;; 7545b28e182Smrg merlin) 7555b28e182Smrg basic_machine=ns32k-utek 7565b28e182Smrg os=-sysv 7575b28e182Smrg ;; 758f1e20f77Smrg microblaze) 759f1e20f77Smrg basic_machine=microblaze-xilinx 760f1e20f77Smrg ;; 7615b28e182Smrg mingw32) 7625b28e182Smrg basic_machine=i386-pc 7635b28e182Smrg os=-mingw32 7645b28e182Smrg ;; 7655b28e182Smrg mingw32ce) 7665b28e182Smrg basic_machine=arm-unknown 7675b28e182Smrg os=-mingw32ce 7685b28e182Smrg ;; 7695b28e182Smrg miniframe) 7705b28e182Smrg basic_machine=m68000-convergent 7715b28e182Smrg ;; 7725b28e182Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7735b28e182Smrg basic_machine=m68k-atari 7745b28e182Smrg os=-mint 7755b28e182Smrg ;; 776f1e20f77Smrg mipsEE* | ee | ps2) 777f1e20f77Smrg basic_machine=mips64r5900el-scei 778f1e20f77Smrg case $os in 779f1e20f77Smrg -linux*) 780f1e20f77Smrg ;; 781f1e20f77Smrg *) 782f1e20f77Smrg os=-elf 783f1e20f77Smrg ;; 784f1e20f77Smrg esac 785f1e20f77Smrg ;; 786f1e20f77Smrg iop) 787f1e20f77Smrg basic_machine=mipsel-scei 788f1e20f77Smrg os=-irx 789f1e20f77Smrg ;; 790f1e20f77Smrg dvp) 791f1e20f77Smrg basic_machine=dvp-scei 792f1e20f77Smrg os=-elf 793f1e20f77Smrg ;; 7945b28e182Smrg mips3*-*) 7955b28e182Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7965b28e182Smrg ;; 7975b28e182Smrg mips3*) 7985b28e182Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7995b28e182Smrg ;; 8005b28e182Smrg monitor) 8015b28e182Smrg basic_machine=m68k-rom68k 8025b28e182Smrg os=-coff 8035b28e182Smrg ;; 8045b28e182Smrg morphos) 8055b28e182Smrg basic_machine=powerpc-unknown 8065b28e182Smrg os=-morphos 8075b28e182Smrg ;; 8085b28e182Smrg msdos) 8095b28e182Smrg basic_machine=i386-pc 8105b28e182Smrg os=-msdos 8115b28e182Smrg ;; 8125b28e182Smrg ms1-*) 8135b28e182Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8145b28e182Smrg ;; 8155b28e182Smrg mvs) 8165b28e182Smrg basic_machine=i370-ibm 8175b28e182Smrg os=-mvs 8185b28e182Smrg ;; 8195b28e182Smrg ncr3000) 8205b28e182Smrg basic_machine=i486-ncr 8215b28e182Smrg os=-sysv4 8225b28e182Smrg ;; 8235b28e182Smrg netbsd386) 8245b28e182Smrg basic_machine=i386-unknown 8255b28e182Smrg os=-netbsd 8265b28e182Smrg ;; 8275b28e182Smrg netwinder) 8285b28e182Smrg basic_machine=armv4l-rebel 8295b28e182Smrg os=-linux 8305b28e182Smrg ;; 8315b28e182Smrg news | news700 | news800 | news900) 8325b28e182Smrg basic_machine=m68k-sony 8335b28e182Smrg os=-newsos 8345b28e182Smrg ;; 8355b28e182Smrg news1000) 8365b28e182Smrg basic_machine=m68030-sony 8375b28e182Smrg os=-newsos 8385b28e182Smrg ;; 8395b28e182Smrg news-3600 | risc-news) 8405b28e182Smrg basic_machine=mips-sony 8415b28e182Smrg os=-newsos 8425b28e182Smrg ;; 8435b28e182Smrg necv70) 8445b28e182Smrg basic_machine=v70-nec 8455b28e182Smrg os=-sysv 8465b28e182Smrg ;; 8475b28e182Smrg next | m*-next ) 8485b28e182Smrg basic_machine=m68k-next 8495b28e182Smrg case $os in 8505b28e182Smrg -nextstep* ) 8515b28e182Smrg ;; 8525b28e182Smrg -ns2*) 8535b28e182Smrg os=-nextstep2 8545b28e182Smrg ;; 8555b28e182Smrg *) 8565b28e182Smrg os=-nextstep3 8575b28e182Smrg ;; 8585b28e182Smrg esac 8595b28e182Smrg ;; 8605b28e182Smrg nh3000) 8615b28e182Smrg basic_machine=m68k-harris 8625b28e182Smrg os=-cxux 8635b28e182Smrg ;; 8645b28e182Smrg nh[45]000) 8655b28e182Smrg basic_machine=m88k-harris 8665b28e182Smrg os=-cxux 8675b28e182Smrg ;; 8685b28e182Smrg nindy960) 8695b28e182Smrg basic_machine=i960-intel 8705b28e182Smrg os=-nindy 8715b28e182Smrg ;; 8725b28e182Smrg mon960) 8735b28e182Smrg basic_machine=i960-intel 8745b28e182Smrg os=-mon960 8755b28e182Smrg ;; 8765b28e182Smrg nonstopux) 8775b28e182Smrg basic_machine=mips-compaq 8785b28e182Smrg os=-nonstopux 8795b28e182Smrg ;; 8805b28e182Smrg np1) 8815b28e182Smrg basic_machine=np1-gould 8825b28e182Smrg ;; 883f1e20f77Smrg neo-tandem) 884f1e20f77Smrg basic_machine=neo-tandem 885f1e20f77Smrg ;; 886f1e20f77Smrg nse-tandem) 887f1e20f77Smrg basic_machine=nse-tandem 888f1e20f77Smrg ;; 8895b28e182Smrg nsr-tandem) 8905b28e182Smrg basic_machine=nsr-tandem 8915b28e182Smrg ;; 8925b28e182Smrg op50n-* | op60c-*) 8935b28e182Smrg basic_machine=hppa1.1-oki 8945b28e182Smrg os=-proelf 8955b28e182Smrg ;; 8965b28e182Smrg openrisc | openrisc-*) 8975b28e182Smrg basic_machine=or32-unknown 8985b28e182Smrg ;; 8995b28e182Smrg os400) 9005b28e182Smrg basic_machine=powerpc-ibm 9015b28e182Smrg os=-os400 9025b28e182Smrg ;; 9035b28e182Smrg OSE68000 | ose68000) 9045b28e182Smrg basic_machine=m68000-ericsson 9055b28e182Smrg os=-ose 9065b28e182Smrg ;; 9075b28e182Smrg os68k) 9085b28e182Smrg basic_machine=m68k-none 9095b28e182Smrg os=-os68k 9105b28e182Smrg ;; 9115b28e182Smrg pa-hitachi) 9125b28e182Smrg basic_machine=hppa1.1-hitachi 9135b28e182Smrg os=-hiuxwe2 9145b28e182Smrg ;; 9155b28e182Smrg paragon) 9165b28e182Smrg basic_machine=i860-intel 9175b28e182Smrg os=-osf 9185b28e182Smrg ;; 9195b28e182Smrg parisc) 9205b28e182Smrg basic_machine=hppa-unknown 9215b28e182Smrg os=-linux 9225b28e182Smrg ;; 9235b28e182Smrg parisc-*) 9245b28e182Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9255b28e182Smrg os=-linux 9265b28e182Smrg ;; 9275b28e182Smrg pbd) 9285b28e182Smrg basic_machine=sparc-tti 9295b28e182Smrg ;; 9305b28e182Smrg pbb) 9315b28e182Smrg basic_machine=m68k-tti 9325b28e182Smrg ;; 9335b28e182Smrg pc532 | pc532-*) 9345b28e182Smrg basic_machine=ns32k-pc532 9355b28e182Smrg ;; 9365b28e182Smrg pc98) 9375b28e182Smrg basic_machine=i386-pc 9385b28e182Smrg ;; 9395b28e182Smrg pc98-*) 9405b28e182Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9415b28e182Smrg ;; 9425b28e182Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9435b28e182Smrg basic_machine=i586-pc 9445b28e182Smrg ;; 9455b28e182Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9465b28e182Smrg basic_machine=i686-pc 9475b28e182Smrg ;; 9485b28e182Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9495b28e182Smrg basic_machine=i686-pc 9505b28e182Smrg ;; 9515b28e182Smrg pentium4) 9525b28e182Smrg basic_machine=i786-pc 9535b28e182Smrg ;; 9545b28e182Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9555b28e182Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9565b28e182Smrg ;; 9575b28e182Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9585b28e182Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9595b28e182Smrg ;; 9605b28e182Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9615b28e182Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9625b28e182Smrg ;; 9635b28e182Smrg pentium4-*) 9645b28e182Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9655b28e182Smrg ;; 9665b28e182Smrg pn) 9675b28e182Smrg basic_machine=pn-gould 9685b28e182Smrg ;; 9695b28e182Smrg power) basic_machine=power-ibm 9705b28e182Smrg ;; 9715b28e182Smrg ppc) basic_machine=powerpc-unknown 9725b28e182Smrg ;; 9735b28e182Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9745b28e182Smrg ;; 9755b28e182Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 9765b28e182Smrg basic_machine=powerpcle-unknown 9775b28e182Smrg ;; 9785b28e182Smrg ppcle-* | powerpclittle-*) 9795b28e182Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9805b28e182Smrg ;; 9815b28e182Smrg ppc64) basic_machine=powerpc64-unknown 9825b28e182Smrg ;; 9835b28e182Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9845b28e182Smrg ;; 9855b28e182Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9865b28e182Smrg basic_machine=powerpc64le-unknown 9875b28e182Smrg ;; 9885b28e182Smrg ppc64le-* | powerpc64little-*) 9895b28e182Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9905b28e182Smrg ;; 9915b28e182Smrg ps2) 9925b28e182Smrg basic_machine=i386-ibm 9935b28e182Smrg ;; 9945b28e182Smrg pw32) 9955b28e182Smrg basic_machine=i586-unknown 9965b28e182Smrg os=-pw32 9975b28e182Smrg ;; 9985b28e182Smrg rdos) 9995b28e182Smrg basic_machine=i386-pc 10005b28e182Smrg os=-rdos 10015b28e182Smrg ;; 10025b28e182Smrg rom68k) 10035b28e182Smrg basic_machine=m68k-rom68k 10045b28e182Smrg os=-coff 10055b28e182Smrg ;; 10065b28e182Smrg rm[46]00) 10075b28e182Smrg basic_machine=mips-siemens 10085b28e182Smrg ;; 10095b28e182Smrg rtpc | rtpc-*) 10105b28e182Smrg basic_machine=romp-ibm 10115b28e182Smrg ;; 10125b28e182Smrg s390 | s390-*) 10135b28e182Smrg basic_machine=s390-ibm 10145b28e182Smrg ;; 10155b28e182Smrg s390x | s390x-*) 10165b28e182Smrg basic_machine=s390x-ibm 10175b28e182Smrg ;; 10185b28e182Smrg sa29200) 10195b28e182Smrg basic_machine=a29k-amd 10205b28e182Smrg os=-udi 10215b28e182Smrg ;; 10225b28e182Smrg sb1) 10235b28e182Smrg basic_machine=mipsisa64sb1-unknown 10245b28e182Smrg ;; 10255b28e182Smrg sb1el) 10265b28e182Smrg basic_machine=mipsisa64sb1el-unknown 10275b28e182Smrg ;; 10285b28e182Smrg sde) 10295b28e182Smrg basic_machine=mipsisa32-sde 10305b28e182Smrg os=-elf 10315b28e182Smrg ;; 10325b28e182Smrg sei) 10335b28e182Smrg basic_machine=mips-sei 10345b28e182Smrg os=-seiux 10355b28e182Smrg ;; 10365b28e182Smrg sequent) 10375b28e182Smrg basic_machine=i386-sequent 10385b28e182Smrg ;; 10395b28e182Smrg sh) 10405b28e182Smrg basic_machine=sh-hitachi 10415b28e182Smrg os=-hms 10425b28e182Smrg ;; 10435b28e182Smrg sh5el) 10445b28e182Smrg basic_machine=sh5le-unknown 10455b28e182Smrg ;; 10465b28e182Smrg sh64) 10475b28e182Smrg basic_machine=sh64-unknown 10485b28e182Smrg ;; 10495b28e182Smrg sparclite-wrs | simso-wrs) 10505b28e182Smrg basic_machine=sparclite-wrs 10515b28e182Smrg os=-vxworks 10525b28e182Smrg ;; 10535b28e182Smrg sps7) 10545b28e182Smrg basic_machine=m68k-bull 10555b28e182Smrg os=-sysv2 10565b28e182Smrg ;; 10575b28e182Smrg spur) 10585b28e182Smrg basic_machine=spur-unknown 10595b28e182Smrg ;; 10605b28e182Smrg st2000) 10615b28e182Smrg basic_machine=m68k-tandem 10625b28e182Smrg ;; 10635b28e182Smrg stratus) 10645b28e182Smrg basic_machine=i860-stratus 10655b28e182Smrg os=-sysv4 10665b28e182Smrg ;; 10675b28e182Smrg sun2) 10685b28e182Smrg basic_machine=m68000-sun 10695b28e182Smrg ;; 10705b28e182Smrg sun2os3) 10715b28e182Smrg basic_machine=m68000-sun 10725b28e182Smrg os=-sunos3 10735b28e182Smrg ;; 10745b28e182Smrg sun2os4) 10755b28e182Smrg basic_machine=m68000-sun 10765b28e182Smrg os=-sunos4 10775b28e182Smrg ;; 10785b28e182Smrg sun3os3) 10795b28e182Smrg basic_machine=m68k-sun 10805b28e182Smrg os=-sunos3 10815b28e182Smrg ;; 10825b28e182Smrg sun3os4) 10835b28e182Smrg basic_machine=m68k-sun 10845b28e182Smrg os=-sunos4 10855b28e182Smrg ;; 10865b28e182Smrg sun4os3) 10875b28e182Smrg basic_machine=sparc-sun 10885b28e182Smrg os=-sunos3 10895b28e182Smrg ;; 10905b28e182Smrg sun4os4) 10915b28e182Smrg basic_machine=sparc-sun 10925b28e182Smrg os=-sunos4 10935b28e182Smrg ;; 10945b28e182Smrg sun4sol2) 10955b28e182Smrg basic_machine=sparc-sun 10965b28e182Smrg os=-solaris2 10975b28e182Smrg ;; 10985b28e182Smrg sun3 | sun3-*) 10995b28e182Smrg basic_machine=m68k-sun 11005b28e182Smrg ;; 11015b28e182Smrg sun4) 11025b28e182Smrg basic_machine=sparc-sun 11035b28e182Smrg ;; 11045b28e182Smrg sun386 | sun386i | roadrunner) 11055b28e182Smrg basic_machine=i386-sun 11065b28e182Smrg ;; 11075b28e182Smrg sv1) 11085b28e182Smrg basic_machine=sv1-cray 11095b28e182Smrg os=-unicos 11105b28e182Smrg ;; 11115b28e182Smrg symmetry) 11125b28e182Smrg basic_machine=i386-sequent 11135b28e182Smrg os=-dynix 11145b28e182Smrg ;; 11155b28e182Smrg t3e) 11165b28e182Smrg basic_machine=alphaev5-cray 11175b28e182Smrg os=-unicos 11185b28e182Smrg ;; 11195b28e182Smrg t90) 11205b28e182Smrg basic_machine=t90-cray 11215b28e182Smrg os=-unicos 11225b28e182Smrg ;; 1123f1e20f77Smrg # This must be matched before tile*. 1124f1e20f77Smrg tilegx*) 1125f1e20f77Smrg basic_machine=tilegx-unknown 1126f1e20f77Smrg os=-linux-gnu 11275b28e182Smrg ;; 11285b28e182Smrg tile*) 11295b28e182Smrg basic_machine=tile-unknown 11305b28e182Smrg os=-linux-gnu 11315b28e182Smrg ;; 11325b28e182Smrg tx39) 11335b28e182Smrg basic_machine=mipstx39-unknown 11345b28e182Smrg ;; 11355b28e182Smrg tx39el) 11365b28e182Smrg basic_machine=mipstx39el-unknown 11375b28e182Smrg ;; 11385b28e182Smrg toad1) 11395b28e182Smrg basic_machine=pdp10-xkl 11405b28e182Smrg os=-tops20 11415b28e182Smrg ;; 11425b28e182Smrg tower | tower-32) 11435b28e182Smrg basic_machine=m68k-ncr 11445b28e182Smrg ;; 11455b28e182Smrg tpf) 11465b28e182Smrg basic_machine=s390x-ibm 11475b28e182Smrg os=-tpf 11485b28e182Smrg ;; 11495b28e182Smrg udi29k) 11505b28e182Smrg basic_machine=a29k-amd 11515b28e182Smrg os=-udi 11525b28e182Smrg ;; 11535b28e182Smrg ultra3) 11545b28e182Smrg basic_machine=a29k-nyu 11555b28e182Smrg os=-sym1 11565b28e182Smrg ;; 11575b28e182Smrg v810 | necv810) 11585b28e182Smrg basic_machine=v810-nec 11595b28e182Smrg os=-none 11605b28e182Smrg ;; 11615b28e182Smrg vaxv) 11625b28e182Smrg basic_machine=vax-dec 11635b28e182Smrg os=-sysv 11645b28e182Smrg ;; 11655b28e182Smrg vms) 11665b28e182Smrg basic_machine=vax-dec 11675b28e182Smrg os=-vms 11685b28e182Smrg ;; 11695b28e182Smrg vpp*|vx|vx-*) 11705b28e182Smrg basic_machine=f301-fujitsu 11715b28e182Smrg ;; 11725b28e182Smrg vxworks960) 11735b28e182Smrg basic_machine=i960-wrs 11745b28e182Smrg os=-vxworks 11755b28e182Smrg ;; 11765b28e182Smrg vxworks68) 11775b28e182Smrg basic_machine=m68k-wrs 11785b28e182Smrg os=-vxworks 11795b28e182Smrg ;; 11805b28e182Smrg vxworks29k) 11815b28e182Smrg basic_machine=a29k-wrs 11825b28e182Smrg os=-vxworks 11835b28e182Smrg ;; 11845b28e182Smrg w65*) 11855b28e182Smrg basic_machine=w65-wdc 11865b28e182Smrg os=-none 11875b28e182Smrg ;; 11885b28e182Smrg w89k-*) 11895b28e182Smrg basic_machine=hppa1.1-winbond 11905b28e182Smrg os=-proelf 11915b28e182Smrg ;; 11925b28e182Smrg xbox) 11935b28e182Smrg basic_machine=i686-pc 11945b28e182Smrg os=-mingw32 11955b28e182Smrg ;; 11965b28e182Smrg xps | xps100) 11975b28e182Smrg basic_machine=xps100-honeywell 11985b28e182Smrg ;; 11995b28e182Smrg ymp) 12005b28e182Smrg basic_machine=ymp-cray 12015b28e182Smrg os=-unicos 12025b28e182Smrg ;; 12035b28e182Smrg z8k-*-coff) 12045b28e182Smrg basic_machine=z8k-unknown 12055b28e182Smrg os=-sim 12065b28e182Smrg ;; 12075b28e182Smrg z80-*-coff) 12085b28e182Smrg basic_machine=z80-unknown 12095b28e182Smrg os=-sim 12105b28e182Smrg ;; 12115b28e182Smrg none) 12125b28e182Smrg basic_machine=none-none 12135b28e182Smrg os=-none 12145b28e182Smrg ;; 12155b28e182Smrg 12165b28e182Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12175b28e182Smrg# some cases the only manufacturer, in others, it is the most popular. 12185b28e182Smrg w89k) 12195b28e182Smrg basic_machine=hppa1.1-winbond 12205b28e182Smrg ;; 12215b28e182Smrg op50n) 12225b28e182Smrg basic_machine=hppa1.1-oki 12235b28e182Smrg ;; 12245b28e182Smrg op60c) 12255b28e182Smrg basic_machine=hppa1.1-oki 12265b28e182Smrg ;; 12275b28e182Smrg romp) 12285b28e182Smrg basic_machine=romp-ibm 12295b28e182Smrg ;; 12305b28e182Smrg mmix) 12315b28e182Smrg basic_machine=mmix-knuth 12325b28e182Smrg ;; 12335b28e182Smrg rs6000) 12345b28e182Smrg basic_machine=rs6000-ibm 12355b28e182Smrg ;; 12365b28e182Smrg vax) 12375b28e182Smrg basic_machine=vax-dec 12385b28e182Smrg ;; 12395b28e182Smrg pdp10) 12405b28e182Smrg # there are many clones, so DEC is not a safe bet 12415b28e182Smrg basic_machine=pdp10-unknown 12425b28e182Smrg ;; 12435b28e182Smrg pdp11) 12445b28e182Smrg basic_machine=pdp11-dec 12455b28e182Smrg ;; 12465b28e182Smrg we32k) 12475b28e182Smrg basic_machine=we32k-att 12485b28e182Smrg ;; 12495b28e182Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12505b28e182Smrg basic_machine=sh-unknown 12515b28e182Smrg ;; 12525b28e182Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12535b28e182Smrg basic_machine=sparc-sun 12545b28e182Smrg ;; 12555b28e182Smrg cydra) 12565b28e182Smrg basic_machine=cydra-cydrome 12575b28e182Smrg ;; 12585b28e182Smrg orion) 12595b28e182Smrg basic_machine=orion-highlevel 12605b28e182Smrg ;; 12615b28e182Smrg orion105) 12625b28e182Smrg basic_machine=clipper-highlevel 12635b28e182Smrg ;; 12645b28e182Smrg mac | mpw | mac-mpw) 12655b28e182Smrg basic_machine=m68k-apple 12665b28e182Smrg ;; 12675b28e182Smrg pmac | pmac-mpw) 12685b28e182Smrg basic_machine=powerpc-apple 12695b28e182Smrg ;; 12705b28e182Smrg *-unknown) 12715b28e182Smrg # Make sure to match an already-canonicalized machine name. 12725b28e182Smrg ;; 12735b28e182Smrg *) 12745b28e182Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12755b28e182Smrg exit 1 12765b28e182Smrg ;; 12775b28e182Smrgesac 12785b28e182Smrg 12795b28e182Smrg# Here we canonicalize certain aliases for manufacturers. 12805b28e182Smrgcase $basic_machine in 12815b28e182Smrg *-digital*) 12825b28e182Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12835b28e182Smrg ;; 12845b28e182Smrg *-commodore*) 12855b28e182Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12865b28e182Smrg ;; 12875b28e182Smrg *) 12885b28e182Smrg ;; 12895b28e182Smrgesac 12905b28e182Smrg 12915b28e182Smrg# Decode manufacturer-specific aliases for certain operating systems. 12925b28e182Smrg 12935b28e182Smrgif [ x"$os" != x"" ] 12945b28e182Smrgthen 12955b28e182Smrgcase $os in 12965b28e182Smrg # First match some system type aliases 12975b28e182Smrg # that might get confused with valid system types. 12985b28e182Smrg # -solaris* is a basic system type, with this one exception. 1299f1e20f77Smrg -auroraux) 1300f1e20f77Smrg os=-auroraux 1301f1e20f77Smrg ;; 13025b28e182Smrg -solaris1 | -solaris1.*) 13035b28e182Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13045b28e182Smrg ;; 13055b28e182Smrg -solaris) 13065b28e182Smrg os=-solaris2 13075b28e182Smrg ;; 13085b28e182Smrg -svr4*) 13095b28e182Smrg os=-sysv4 13105b28e182Smrg ;; 13115b28e182Smrg -unixware*) 13125b28e182Smrg os=-sysv4.2uw 13135b28e182Smrg ;; 13145b28e182Smrg -gnu/linux*) 13155b28e182Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13165b28e182Smrg ;; 13175b28e182Smrg # First accept the basic system types. 13185b28e182Smrg # The portable systems comes first. 13195b28e182Smrg # Each alternative MUST END IN A *, to match a version number. 13205b28e182Smrg # -sysv* is not here because it comes later, after sysvr4. 13215b28e182Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1322f1e20f77Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1323f1e20f77Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1324f1e20f77Smrg | -sym* | -kopensolaris* \ 13255b28e182Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13265b28e182Smrg | -aos* | -aros* \ 13275b28e182Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13285b28e182Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13295b28e182Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13305b28e182Smrg | -openbsd* | -solidbsd* \ 13315b28e182Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13325b28e182Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13335b28e182Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13345b28e182Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13355b28e182Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 13365b28e182Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1337f1e20f77Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 1338f1e20f77Smrg | -linux-newlib* | -linux-uclibc* \ 13395b28e182Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13405b28e182Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13415b28e182Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1342f1e20f77Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \ 13435b28e182Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13445b28e182Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13455b28e182Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1346f1e20f77Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13475b28e182Smrg # Remember, each alternative MUST END IN *, to match a version number. 13485b28e182Smrg ;; 13495b28e182Smrg -qnx*) 13505b28e182Smrg case $basic_machine in 13515b28e182Smrg x86-* | i*86-*) 13525b28e182Smrg ;; 13535b28e182Smrg *) 13545b28e182Smrg os=-nto$os 13555b28e182Smrg ;; 13565b28e182Smrg esac 13575b28e182Smrg ;; 13585b28e182Smrg -nto-qnx*) 13595b28e182Smrg ;; 13605b28e182Smrg -nto*) 13615b28e182Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13625b28e182Smrg ;; 13635b28e182Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13645b28e182Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13655b28e182Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13665b28e182Smrg ;; 13675b28e182Smrg -mac*) 13685b28e182Smrg os=`echo $os | sed -e 's|mac|macos|'` 13695b28e182Smrg ;; 13705b28e182Smrg -linux-dietlibc) 13715b28e182Smrg os=-linux-dietlibc 13725b28e182Smrg ;; 13735b28e182Smrg -linux*) 13745b28e182Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13755b28e182Smrg ;; 13765b28e182Smrg -sunos5*) 13775b28e182Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13785b28e182Smrg ;; 13795b28e182Smrg -sunos6*) 13805b28e182Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13815b28e182Smrg ;; 13825b28e182Smrg -opened*) 13835b28e182Smrg os=-openedition 13845b28e182Smrg ;; 13855b28e182Smrg -os400*) 13865b28e182Smrg os=-os400 13875b28e182Smrg ;; 13885b28e182Smrg -wince*) 13895b28e182Smrg os=-wince 13905b28e182Smrg ;; 13915b28e182Smrg -osfrose*) 13925b28e182Smrg os=-osfrose 13935b28e182Smrg ;; 13945b28e182Smrg -osf*) 13955b28e182Smrg os=-osf 13965b28e182Smrg ;; 13975b28e182Smrg -utek*) 13985b28e182Smrg os=-bsd 13995b28e182Smrg ;; 14005b28e182Smrg -dynix*) 14015b28e182Smrg os=-bsd 14025b28e182Smrg ;; 14035b28e182Smrg -acis*) 14045b28e182Smrg os=-aos 14055b28e182Smrg ;; 14065b28e182Smrg -atheos*) 14075b28e182Smrg os=-atheos 14085b28e182Smrg ;; 14095b28e182Smrg -syllable*) 14105b28e182Smrg os=-syllable 14115b28e182Smrg ;; 14125b28e182Smrg -386bsd) 14135b28e182Smrg os=-bsd 14145b28e182Smrg ;; 14155b28e182Smrg -ctix* | -uts*) 14165b28e182Smrg os=-sysv 14175b28e182Smrg ;; 14185b28e182Smrg -nova*) 14195b28e182Smrg os=-rtmk-nova 14205b28e182Smrg ;; 14215b28e182Smrg -ns2 ) 14225b28e182Smrg os=-nextstep2 14235b28e182Smrg ;; 14245b28e182Smrg -nsk*) 14255b28e182Smrg os=-nsk 14265b28e182Smrg ;; 14275b28e182Smrg # Preserve the version number of sinix5. 14285b28e182Smrg -sinix5.*) 14295b28e182Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14305b28e182Smrg ;; 14315b28e182Smrg -sinix*) 14325b28e182Smrg os=-sysv4 14335b28e182Smrg ;; 14345b28e182Smrg -tpf*) 14355b28e182Smrg os=-tpf 14365b28e182Smrg ;; 14375b28e182Smrg -triton*) 14385b28e182Smrg os=-sysv3 14395b28e182Smrg ;; 14405b28e182Smrg -oss*) 14415b28e182Smrg os=-sysv3 14425b28e182Smrg ;; 14435b28e182Smrg -svr4) 14445b28e182Smrg os=-sysv4 14455b28e182Smrg ;; 14465b28e182Smrg -svr3) 14475b28e182Smrg os=-sysv3 14485b28e182Smrg ;; 14495b28e182Smrg -sysvr4) 14505b28e182Smrg os=-sysv4 14515b28e182Smrg ;; 14525b28e182Smrg # This must come after -sysvr4. 14535b28e182Smrg -sysv*) 14545b28e182Smrg ;; 14555b28e182Smrg -ose*) 14565b28e182Smrg os=-ose 14575b28e182Smrg ;; 14585b28e182Smrg -es1800*) 14595b28e182Smrg os=-ose 14605b28e182Smrg ;; 14615b28e182Smrg -xenix) 14625b28e182Smrg os=-xenix 14635b28e182Smrg ;; 14645b28e182Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14655b28e182Smrg os=-mint 14665b28e182Smrg ;; 14675b28e182Smrg -aros*) 14685b28e182Smrg os=-aros 14695b28e182Smrg ;; 14705b28e182Smrg -kaos*) 14715b28e182Smrg os=-kaos 14725b28e182Smrg ;; 14735b28e182Smrg -zvmoe) 14745b28e182Smrg os=-zvmoe 14755b28e182Smrg ;; 14765b28e182Smrg -dicos*) 14775b28e182Smrg os=-dicos 14785b28e182Smrg ;; 1479f1e20f77Smrg -nacl*) 1480f1e20f77Smrg ;; 14815b28e182Smrg -none) 14825b28e182Smrg ;; 14835b28e182Smrg *) 14845b28e182Smrg # Get rid of the `-' at the beginning of $os. 14855b28e182Smrg os=`echo $os | sed 's/[^-]*-//'` 14865b28e182Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14875b28e182Smrg exit 1 14885b28e182Smrg ;; 14895b28e182Smrgesac 14905b28e182Smrgelse 14915b28e182Smrg 14925b28e182Smrg# Here we handle the default operating systems that come with various machines. 14935b28e182Smrg# The value should be what the vendor currently ships out the door with their 14945b28e182Smrg# machine or put another way, the most popular os provided with the machine. 14955b28e182Smrg 14965b28e182Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14975b28e182Smrg# "-sun"), then you have to tell the case statement up towards the top 14985b28e182Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14995b28e182Smrg# will signal an error saying that MANUFACTURER isn't an operating 15005b28e182Smrg# system, and we'll never get to this point. 15015b28e182Smrg 15025b28e182Smrgcase $basic_machine in 15035b28e182Smrg score-*) 15045b28e182Smrg os=-elf 15055b28e182Smrg ;; 15065b28e182Smrg spu-*) 15075b28e182Smrg os=-elf 15085b28e182Smrg ;; 15095b28e182Smrg *-acorn) 15105b28e182Smrg os=-riscix1.2 15115b28e182Smrg ;; 15125b28e182Smrg arm*-rebel) 15135b28e182Smrg os=-linux 15145b28e182Smrg ;; 15155b28e182Smrg arm*-semi) 15165b28e182Smrg os=-aout 15175b28e182Smrg ;; 15185b28e182Smrg c4x-* | tic4x-*) 15195b28e182Smrg os=-coff 15205b28e182Smrg ;; 1521f1e20f77Smrg tic54x-*) 1522f1e20f77Smrg os=-coff 1523f1e20f77Smrg ;; 1524f1e20f77Smrg tic55x-*) 1525f1e20f77Smrg os=-coff 1526f1e20f77Smrg ;; 1527f1e20f77Smrg tic6x-*) 1528f1e20f77Smrg os=-coff 1529f1e20f77Smrg ;; 15305b28e182Smrg # This must come before the *-dec entry. 15315b28e182Smrg pdp10-*) 15325b28e182Smrg os=-tops20 15335b28e182Smrg ;; 15345b28e182Smrg pdp11-*) 15355b28e182Smrg os=-none 15365b28e182Smrg ;; 15375b28e182Smrg *-dec | vax-*) 15385b28e182Smrg os=-ultrix4.2 15395b28e182Smrg ;; 15405b28e182Smrg m68*-apollo) 15415b28e182Smrg os=-domain 15425b28e182Smrg ;; 15435b28e182Smrg i386-sun) 15445b28e182Smrg os=-sunos4.0.2 15455b28e182Smrg ;; 15465b28e182Smrg m68000-sun) 15475b28e182Smrg os=-sunos3 15485b28e182Smrg # This also exists in the configure program, but was not the 15495b28e182Smrg # default. 15505b28e182Smrg # os=-sunos4 15515b28e182Smrg ;; 15525b28e182Smrg m68*-cisco) 15535b28e182Smrg os=-aout 15545b28e182Smrg ;; 15555b28e182Smrg mep-*) 15565b28e182Smrg os=-elf 15575b28e182Smrg ;; 15585b28e182Smrg mips*-cisco) 15595b28e182Smrg os=-elf 15605b28e182Smrg ;; 15615b28e182Smrg mips*-*) 15625b28e182Smrg os=-elf 15635b28e182Smrg ;; 15645b28e182Smrg or32-*) 15655b28e182Smrg os=-coff 15665b28e182Smrg ;; 15675b28e182Smrg *-tti) # must be before sparc entry or we get the wrong os. 15685b28e182Smrg os=-sysv3 15695b28e182Smrg ;; 15705b28e182Smrg sparc-* | *-sun) 15715b28e182Smrg os=-sunos4.1.1 15725b28e182Smrg ;; 15735b28e182Smrg *-be) 15745b28e182Smrg os=-beos 15755b28e182Smrg ;; 15765b28e182Smrg *-haiku) 15775b28e182Smrg os=-haiku 15785b28e182Smrg ;; 15795b28e182Smrg *-ibm) 15805b28e182Smrg os=-aix 15815b28e182Smrg ;; 15825b28e182Smrg *-knuth) 15835b28e182Smrg os=-mmixware 15845b28e182Smrg ;; 15855b28e182Smrg *-wec) 15865b28e182Smrg os=-proelf 15875b28e182Smrg ;; 15885b28e182Smrg *-winbond) 15895b28e182Smrg os=-proelf 15905b28e182Smrg ;; 15915b28e182Smrg *-oki) 15925b28e182Smrg os=-proelf 15935b28e182Smrg ;; 15945b28e182Smrg *-hp) 15955b28e182Smrg os=-hpux 15965b28e182Smrg ;; 15975b28e182Smrg *-hitachi) 15985b28e182Smrg os=-hiux 15995b28e182Smrg ;; 16005b28e182Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16015b28e182Smrg os=-sysv 16025b28e182Smrg ;; 16035b28e182Smrg *-cbm) 16045b28e182Smrg os=-amigaos 16055b28e182Smrg ;; 16065b28e182Smrg *-dg) 16075b28e182Smrg os=-dgux 16085b28e182Smrg ;; 16095b28e182Smrg *-dolphin) 16105b28e182Smrg os=-sysv3 16115b28e182Smrg ;; 16125b28e182Smrg m68k-ccur) 16135b28e182Smrg os=-rtu 16145b28e182Smrg ;; 16155b28e182Smrg m88k-omron*) 16165b28e182Smrg os=-luna 16175b28e182Smrg ;; 16185b28e182Smrg *-next ) 16195b28e182Smrg os=-nextstep 16205b28e182Smrg ;; 16215b28e182Smrg *-sequent) 16225b28e182Smrg os=-ptx 16235b28e182Smrg ;; 16245b28e182Smrg *-crds) 16255b28e182Smrg os=-unos 16265b28e182Smrg ;; 16275b28e182Smrg *-ns) 16285b28e182Smrg os=-genix 16295b28e182Smrg ;; 16305b28e182Smrg i370-*) 16315b28e182Smrg os=-mvs 16325b28e182Smrg ;; 16335b28e182Smrg *-next) 16345b28e182Smrg os=-nextstep3 16355b28e182Smrg ;; 16365b28e182Smrg *-gould) 16375b28e182Smrg os=-sysv 16385b28e182Smrg ;; 16395b28e182Smrg *-highlevel) 16405b28e182Smrg os=-bsd 16415b28e182Smrg ;; 16425b28e182Smrg *-encore) 16435b28e182Smrg os=-bsd 16445b28e182Smrg ;; 16455b28e182Smrg *-sgi) 16465b28e182Smrg os=-irix 16475b28e182Smrg ;; 16485b28e182Smrg *-siemens) 16495b28e182Smrg os=-sysv4 16505b28e182Smrg ;; 16515b28e182Smrg *-masscomp) 16525b28e182Smrg os=-rtu 16535b28e182Smrg ;; 16545b28e182Smrg f30[01]-fujitsu | f700-fujitsu) 16555b28e182Smrg os=-uxpv 16565b28e182Smrg ;; 16575b28e182Smrg *-rom68k) 16585b28e182Smrg os=-coff 16595b28e182Smrg ;; 16605b28e182Smrg *-*bug) 16615b28e182Smrg os=-coff 16625b28e182Smrg ;; 16635b28e182Smrg *-apple) 16645b28e182Smrg os=-macos 16655b28e182Smrg ;; 16665b28e182Smrg *-atari*) 16675b28e182Smrg os=-mint 16685b28e182Smrg ;; 16695b28e182Smrg *) 16705b28e182Smrg os=-none 16715b28e182Smrg ;; 16725b28e182Smrgesac 16735b28e182Smrgfi 16745b28e182Smrg 16755b28e182Smrg# Here we handle the case where we know the os, and the CPU type, but not the 16765b28e182Smrg# manufacturer. We pick the logical manufacturer. 16775b28e182Smrgvendor=unknown 16785b28e182Smrgcase $basic_machine in 16795b28e182Smrg *-unknown) 16805b28e182Smrg case $os in 16815b28e182Smrg -riscix*) 16825b28e182Smrg vendor=acorn 16835b28e182Smrg ;; 16845b28e182Smrg -sunos*) 16855b28e182Smrg vendor=sun 16865b28e182Smrg ;; 1687f1e20f77Smrg -cnk*|-aix*) 16885b28e182Smrg vendor=ibm 16895b28e182Smrg ;; 16905b28e182Smrg -beos*) 16915b28e182Smrg vendor=be 16925b28e182Smrg ;; 16935b28e182Smrg -hpux*) 16945b28e182Smrg vendor=hp 16955b28e182Smrg ;; 16965b28e182Smrg -mpeix*) 16975b28e182Smrg vendor=hp 16985b28e182Smrg ;; 16995b28e182Smrg -hiux*) 17005b28e182Smrg vendor=hitachi 17015b28e182Smrg ;; 17025b28e182Smrg -unos*) 17035b28e182Smrg vendor=crds 17045b28e182Smrg ;; 17055b28e182Smrg -dgux*) 17065b28e182Smrg vendor=dg 17075b28e182Smrg ;; 17085b28e182Smrg -luna*) 17095b28e182Smrg vendor=omron 17105b28e182Smrg ;; 17115b28e182Smrg -genix*) 17125b28e182Smrg vendor=ns 17135b28e182Smrg ;; 17145b28e182Smrg -mvs* | -opened*) 17155b28e182Smrg vendor=ibm 17165b28e182Smrg ;; 17175b28e182Smrg -os400*) 17185b28e182Smrg vendor=ibm 17195b28e182Smrg ;; 17205b28e182Smrg -ptx*) 17215b28e182Smrg vendor=sequent 17225b28e182Smrg ;; 17235b28e182Smrg -tpf*) 17245b28e182Smrg vendor=ibm 17255b28e182Smrg ;; 17265b28e182Smrg -vxsim* | -vxworks* | -windiss*) 17275b28e182Smrg vendor=wrs 17285b28e182Smrg ;; 17295b28e182Smrg -aux*) 17305b28e182Smrg vendor=apple 17315b28e182Smrg ;; 17325b28e182Smrg -hms*) 17335b28e182Smrg vendor=hitachi 17345b28e182Smrg ;; 17355b28e182Smrg -mpw* | -macos*) 17365b28e182Smrg vendor=apple 17375b28e182Smrg ;; 17385b28e182Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17395b28e182Smrg vendor=atari 17405b28e182Smrg ;; 17415b28e182Smrg -vos*) 17425b28e182Smrg vendor=stratus 17435b28e182Smrg ;; 17445b28e182Smrg esac 17455b28e182Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17465b28e182Smrg ;; 17475b28e182Smrgesac 17485b28e182Smrg 17495b28e182Smrgecho $basic_machine$os 17505b28e182Smrgexit 17515b28e182Smrg 17525b28e182Smrg# Local variables: 17535b28e182Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17545b28e182Smrg# time-stamp-start: "timestamp='" 17555b28e182Smrg# time-stamp-format: "%:y-%02m-%02d" 17565b28e182Smrg# time-stamp-end: "'" 17575b28e182Smrg# End: 1758