config.sub revision e5410a46
11f0ac6a5Smrg#! /bin/sh 21f0ac6a5Smrg# Configuration validation subroutine script. 31f0ac6a5Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4e5410a46Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5e5410a46Smrg# Free Software Foundation, Inc. 61f0ac6a5Smrg 7e5410a46Smrgtimestamp='2008-01-16' 81f0ac6a5Smrg 91f0ac6a5Smrg# This file is (in principle) common to ALL GNU software. 101f0ac6a5Smrg# The presence of a machine in this file suggests that SOME GNU software 111f0ac6a5Smrg# can handle that machine. It does not imply ALL GNU software can. 121f0ac6a5Smrg# 131f0ac6a5Smrg# This file is free software; you can redistribute it and/or modify 141f0ac6a5Smrg# it under the terms of the GNU General Public License as published by 151f0ac6a5Smrg# the Free Software Foundation; either version 2 of the License, or 161f0ac6a5Smrg# (at your option) any later version. 171f0ac6a5Smrg# 181f0ac6a5Smrg# This program is distributed in the hope that it will be useful, 191f0ac6a5Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 201f0ac6a5Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 211f0ac6a5Smrg# GNU General Public License for more details. 221f0ac6a5Smrg# 231f0ac6a5Smrg# You should have received a copy of the GNU General Public License 241f0ac6a5Smrg# along with this program; if not, write to the Free Software 25e5410a46Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26e5410a46Smrg# 02110-1301, USA. 27e5410a46Smrg# 281f0ac6a5Smrg# As a special exception to the GNU General Public License, if you 291f0ac6a5Smrg# distribute this file as part of a program that contains a 301f0ac6a5Smrg# configuration script generated by Autoconf, you may include it under 311f0ac6a5Smrg# the same distribution terms that you use for the rest of that program. 321f0ac6a5Smrg 33e5410a46Smrg 341f0ac6a5Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 351f0ac6a5Smrg# diff and a properly formatted ChangeLog entry. 361f0ac6a5Smrg# 371f0ac6a5Smrg# Configuration subroutine to validate and canonicalize a configuration type. 381f0ac6a5Smrg# Supply the specified configuration type as an argument. 391f0ac6a5Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 401f0ac6a5Smrg# Otherwise, we print the canonical config type on stdout and succeed. 411f0ac6a5Smrg 421f0ac6a5Smrg# This file is supposed to be the same for all GNU packages 431f0ac6a5Smrg# and recognize all the CPU types, system types and aliases 441f0ac6a5Smrg# that are meaningful with *any* GNU software. 451f0ac6a5Smrg# Each package is responsible for reporting which valid configurations 461f0ac6a5Smrg# it does not support. The user should be able to distinguish 471f0ac6a5Smrg# a failure to support a valid configuration from a meaningless 481f0ac6a5Smrg# configuration. 491f0ac6a5Smrg 501f0ac6a5Smrg# The goal of this file is to map all the various variations of a given 511f0ac6a5Smrg# machine specification into a single specification in the form: 521f0ac6a5Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 531f0ac6a5Smrg# or in some cases, the newer four-part form: 541f0ac6a5Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 551f0ac6a5Smrg# It is wrong to echo any other type of specification. 561f0ac6a5Smrg 571f0ac6a5Smrgme=`echo "$0" | sed -e 's,.*/,,'` 581f0ac6a5Smrg 591f0ac6a5Smrgusage="\ 601f0ac6a5SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 611f0ac6a5Smrg $0 [OPTION] ALIAS 621f0ac6a5Smrg 631f0ac6a5SmrgCanonicalize a configuration name. 641f0ac6a5Smrg 651f0ac6a5SmrgOperation modes: 661f0ac6a5Smrg -h, --help print this help, then exit 671f0ac6a5Smrg -t, --time-stamp print date of last modification, then exit 681f0ac6a5Smrg -v, --version print version number, then exit 691f0ac6a5Smrg 701f0ac6a5SmrgReport bugs and patches to <config-patches@gnu.org>." 711f0ac6a5Smrg 721f0ac6a5Smrgversion="\ 731f0ac6a5SmrgGNU config.sub ($timestamp) 741f0ac6a5Smrg 75e5410a46SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 76e5410a46Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 771f0ac6a5Smrg 781f0ac6a5SmrgThis is free software; see the source for copying conditions. There is NO 791f0ac6a5Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 801f0ac6a5Smrg 811f0ac6a5Smrghelp=" 821f0ac6a5SmrgTry \`$me --help' for more information." 831f0ac6a5Smrg 841f0ac6a5Smrg# Parse command line 851f0ac6a5Smrgwhile test $# -gt 0 ; do 861f0ac6a5Smrg case $1 in 871f0ac6a5Smrg --time-stamp | --time* | -t ) 88e5410a46Smrg echo "$timestamp" ; exit ;; 891f0ac6a5Smrg --version | -v ) 90e5410a46Smrg echo "$version" ; exit ;; 911f0ac6a5Smrg --help | --h* | -h ) 92e5410a46Smrg echo "$usage"; exit ;; 931f0ac6a5Smrg -- ) # Stop option processing 941f0ac6a5Smrg shift; break ;; 951f0ac6a5Smrg - ) # Use stdin as input. 961f0ac6a5Smrg break ;; 971f0ac6a5Smrg -* ) 981f0ac6a5Smrg echo "$me: invalid option $1$help" 991f0ac6a5Smrg exit 1 ;; 1001f0ac6a5Smrg 1011f0ac6a5Smrg *local*) 1021f0ac6a5Smrg # First pass through any local machine types. 1031f0ac6a5Smrg echo $1 104e5410a46Smrg exit ;; 1051f0ac6a5Smrg 1061f0ac6a5Smrg * ) 1071f0ac6a5Smrg break ;; 1081f0ac6a5Smrg esac 1091f0ac6a5Smrgdone 1101f0ac6a5Smrg 1111f0ac6a5Smrgcase $# in 1121f0ac6a5Smrg 0) echo "$me: missing argument$help" >&2 1131f0ac6a5Smrg exit 1;; 1141f0ac6a5Smrg 1) ;; 1151f0ac6a5Smrg *) echo "$me: too many arguments$help" >&2 1161f0ac6a5Smrg exit 1;; 1171f0ac6a5Smrgesac 1181f0ac6a5Smrg 1191f0ac6a5Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1201f0ac6a5Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1211f0ac6a5Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1221f0ac6a5Smrgcase $maybe_os in 123e5410a46Smrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 124e5410a46Smrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 125e5410a46Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1261f0ac6a5Smrg os=-$maybe_os 1271f0ac6a5Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1281f0ac6a5Smrg ;; 1291f0ac6a5Smrg *) 1301f0ac6a5Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1311f0ac6a5Smrg if [ $basic_machine != $1 ] 1321f0ac6a5Smrg then os=`echo $1 | sed 's/.*-/-/'` 1331f0ac6a5Smrg else os=; fi 1341f0ac6a5Smrg ;; 1351f0ac6a5Smrgesac 1361f0ac6a5Smrg 1371f0ac6a5Smrg### Let's recognize common machines as not being operating systems so 1381f0ac6a5Smrg### that things like config.sub decstation-3100 work. We also 1391f0ac6a5Smrg### recognize some manufacturers as not being operating systems, so we 1401f0ac6a5Smrg### can provide default operating systems below. 1411f0ac6a5Smrgcase $os in 1421f0ac6a5Smrg -sun*os*) 1431f0ac6a5Smrg # Prevent following clause from handling this invalid input. 1441f0ac6a5Smrg ;; 1451f0ac6a5Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1461f0ac6a5Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1471f0ac6a5Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1481f0ac6a5Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1491f0ac6a5Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1501f0ac6a5Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 151e5410a46Smrg -apple | -axis | -knuth | -cray) 1521f0ac6a5Smrg os= 1531f0ac6a5Smrg basic_machine=$1 1541f0ac6a5Smrg ;; 1551f0ac6a5Smrg -sim | -cisco | -oki | -wec | -winbond) 1561f0ac6a5Smrg os= 1571f0ac6a5Smrg basic_machine=$1 1581f0ac6a5Smrg ;; 1591f0ac6a5Smrg -scout) 1601f0ac6a5Smrg ;; 1611f0ac6a5Smrg -wrs) 1621f0ac6a5Smrg os=-vxworks 1631f0ac6a5Smrg basic_machine=$1 1641f0ac6a5Smrg ;; 1651f0ac6a5Smrg -chorusos*) 1661f0ac6a5Smrg os=-chorusos 1671f0ac6a5Smrg basic_machine=$1 1681f0ac6a5Smrg ;; 1691f0ac6a5Smrg -chorusrdb) 1701f0ac6a5Smrg os=-chorusrdb 1711f0ac6a5Smrg basic_machine=$1 1721f0ac6a5Smrg ;; 1731f0ac6a5Smrg -hiux*) 1741f0ac6a5Smrg os=-hiuxwe2 1751f0ac6a5Smrg ;; 176e5410a46Smrg -sco6) 177e5410a46Smrg os=-sco5v6 178e5410a46Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 179e5410a46Smrg ;; 1801f0ac6a5Smrg -sco5) 1811f0ac6a5Smrg os=-sco3.2v5 1821f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1831f0ac6a5Smrg ;; 1841f0ac6a5Smrg -sco4) 1851f0ac6a5Smrg os=-sco3.2v4 1861f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1871f0ac6a5Smrg ;; 1881f0ac6a5Smrg -sco3.2.[4-9]*) 1891f0ac6a5Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1901f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1911f0ac6a5Smrg ;; 1921f0ac6a5Smrg -sco3.2v[4-9]*) 1931f0ac6a5Smrg # Don't forget version if it is 3.2v4 or newer. 1941f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1951f0ac6a5Smrg ;; 196e5410a46Smrg -sco5v6*) 197e5410a46Smrg # Don't forget version if it is 3.2v4 or newer. 198e5410a46Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 199e5410a46Smrg ;; 2001f0ac6a5Smrg -sco*) 2011f0ac6a5Smrg os=-sco3.2v2 2021f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2031f0ac6a5Smrg ;; 2041f0ac6a5Smrg -udk*) 2051f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2061f0ac6a5Smrg ;; 2071f0ac6a5Smrg -isc) 2081f0ac6a5Smrg os=-isc2.2 2091f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2101f0ac6a5Smrg ;; 2111f0ac6a5Smrg -clix*) 2121f0ac6a5Smrg basic_machine=clipper-intergraph 2131f0ac6a5Smrg ;; 2141f0ac6a5Smrg -isc*) 2151f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2161f0ac6a5Smrg ;; 2171f0ac6a5Smrg -lynx*) 2181f0ac6a5Smrg os=-lynxos 2191f0ac6a5Smrg ;; 2201f0ac6a5Smrg -ptx*) 2211f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2221f0ac6a5Smrg ;; 2231f0ac6a5Smrg -windowsnt*) 2241f0ac6a5Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2251f0ac6a5Smrg ;; 2261f0ac6a5Smrg -psos*) 2271f0ac6a5Smrg os=-psos 2281f0ac6a5Smrg ;; 2291f0ac6a5Smrg -mint | -mint[0-9]*) 2301f0ac6a5Smrg basic_machine=m68k-atari 2311f0ac6a5Smrg os=-mint 2321f0ac6a5Smrg ;; 2331f0ac6a5Smrgesac 2341f0ac6a5Smrg 2351f0ac6a5Smrg# Decode aliases for certain CPU-COMPANY combinations. 2361f0ac6a5Smrgcase $basic_machine in 2371f0ac6a5Smrg # Recognize the basic CPU types without company name. 2381f0ac6a5Smrg # Some are omitted here because they have special meanings below. 2391f0ac6a5Smrg 1750a | 580 \ 2401f0ac6a5Smrg | a29k \ 2411f0ac6a5Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2421f0ac6a5Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 243e5410a46Smrg | am33_2.0 \ 244e5410a46Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 245e5410a46Smrg | bfin \ 2461f0ac6a5Smrg | c4x | clipper \ 2471f0ac6a5Smrg | d10v | d30v | dlx | dsp16xx \ 248e5410a46Smrg | fido | fr30 | frv \ 2491f0ac6a5Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2501f0ac6a5Smrg | i370 | i860 | i960 | ia64 \ 251e5410a46Smrg | ip2k | iq2000 \ 252e5410a46Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 253e5410a46Smrg | maxq | mb | microblaze | mcore | mep \ 2541f0ac6a5Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2551f0ac6a5Smrg | mips16 \ 2561f0ac6a5Smrg | mips64 | mips64el \ 2571f0ac6a5Smrg | mips64vr | mips64vrel \ 2581f0ac6a5Smrg | mips64orion | mips64orionel \ 2591f0ac6a5Smrg | mips64vr4100 | mips64vr4100el \ 2601f0ac6a5Smrg | mips64vr4300 | mips64vr4300el \ 2611f0ac6a5Smrg | mips64vr5000 | mips64vr5000el \ 262e5410a46Smrg | mips64vr5900 | mips64vr5900el \ 2631f0ac6a5Smrg | mipsisa32 | mipsisa32el \ 2641f0ac6a5Smrg | mipsisa32r2 | mipsisa32r2el \ 2651f0ac6a5Smrg | mipsisa64 | mipsisa64el \ 266e5410a46Smrg | mipsisa64r2 | mipsisa64r2el \ 2671f0ac6a5Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2681f0ac6a5Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2691f0ac6a5Smrg | mipstx39 | mipstx39el \ 2701f0ac6a5Smrg | mn10200 | mn10300 \ 271e5410a46Smrg | mt \ 2721f0ac6a5Smrg | msp430 \ 273e5410a46Smrg | nios | nios2 \ 2741f0ac6a5Smrg | ns16k | ns32k \ 275e5410a46Smrg | or32 \ 2761f0ac6a5Smrg | pdp10 | pdp11 | pj | pjl \ 2771f0ac6a5Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 2781f0ac6a5Smrg | pyramid \ 279e5410a46Smrg | score \ 280e5410a46Smrg | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 2811f0ac6a5Smrg | sh64 | sh64le \ 282e5410a46Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 283e5410a46Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 284e5410a46Smrg | spu | strongarm \ 2851f0ac6a5Smrg | tahoe | thumb | tic4x | tic80 | tron \ 2861f0ac6a5Smrg | v850 | v850e \ 2871f0ac6a5Smrg | we32k \ 288e5410a46Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 2891f0ac6a5Smrg | z8k) 2901f0ac6a5Smrg basic_machine=$basic_machine-unknown 2911f0ac6a5Smrg ;; 2921f0ac6a5Smrg m6811 | m68hc11 | m6812 | m68hc12) 2931f0ac6a5Smrg # Motorola 68HC11/12. 2941f0ac6a5Smrg basic_machine=$basic_machine-unknown 2951f0ac6a5Smrg os=-none 2961f0ac6a5Smrg ;; 2971f0ac6a5Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 2981f0ac6a5Smrg ;; 299e5410a46Smrg ms1) 300e5410a46Smrg basic_machine=mt-unknown 301e5410a46Smrg ;; 3021f0ac6a5Smrg 3031f0ac6a5Smrg # We use `pc' rather than `unknown' 3041f0ac6a5Smrg # because (1) that's what they normally are, and 3051f0ac6a5Smrg # (2) the word "unknown" tends to confuse beginning users. 3061f0ac6a5Smrg i*86 | x86_64) 3071f0ac6a5Smrg basic_machine=$basic_machine-pc 3081f0ac6a5Smrg ;; 3091f0ac6a5Smrg # Object if more than one company name word. 3101f0ac6a5Smrg *-*-*) 3111f0ac6a5Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3121f0ac6a5Smrg exit 1 3131f0ac6a5Smrg ;; 3141f0ac6a5Smrg # Recognize the basic CPU types with company name. 3151f0ac6a5Smrg 580-* \ 3161f0ac6a5Smrg | a29k-* \ 3171f0ac6a5Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3181f0ac6a5Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 319e5410a46Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3201f0ac6a5Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 321e5410a46Smrg | avr-* | avr32-* \ 322e5410a46Smrg | bfin-* | bs2000-* \ 3231f0ac6a5Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 324e5410a46Smrg | clipper-* | craynv-* | cydra-* \ 3251f0ac6a5Smrg | d10v-* | d30v-* | dlx-* \ 3261f0ac6a5Smrg | elxsi-* \ 327e5410a46Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3281f0ac6a5Smrg | h8300-* | h8500-* \ 3291f0ac6a5Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3301f0ac6a5Smrg | i*86-* | i860-* | i960-* | ia64-* \ 331e5410a46Smrg | ip2k-* | iq2000-* \ 332e5410a46Smrg | m32c-* | m32r-* | m32rle-* \ 3331f0ac6a5Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 334e5410a46Smrg | m88110-* | m88k-* | maxq-* | mcore-* \ 3351f0ac6a5Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3361f0ac6a5Smrg | mips16-* \ 3371f0ac6a5Smrg | mips64-* | mips64el-* \ 3381f0ac6a5Smrg | mips64vr-* | mips64vrel-* \ 3391f0ac6a5Smrg | mips64orion-* | mips64orionel-* \ 3401f0ac6a5Smrg | mips64vr4100-* | mips64vr4100el-* \ 3411f0ac6a5Smrg | mips64vr4300-* | mips64vr4300el-* \ 3421f0ac6a5Smrg | mips64vr5000-* | mips64vr5000el-* \ 343e5410a46Smrg | mips64vr5900-* | mips64vr5900el-* \ 3441f0ac6a5Smrg | mipsisa32-* | mipsisa32el-* \ 3451f0ac6a5Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 3461f0ac6a5Smrg | mipsisa64-* | mipsisa64el-* \ 347e5410a46Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3481f0ac6a5Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3491f0ac6a5Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3501f0ac6a5Smrg | mipstx39-* | mipstx39el-* \ 351e5410a46Smrg | mmix-* \ 352e5410a46Smrg | mt-* \ 3531f0ac6a5Smrg | msp430-* \ 354e5410a46Smrg | nios-* | nios2-* \ 355e5410a46Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 3561f0ac6a5Smrg | orion-* \ 3571f0ac6a5Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 3581f0ac6a5Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 3591f0ac6a5Smrg | pyramid-* \ 3601f0ac6a5Smrg | romp-* | rs6000-* \ 361e5410a46Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 3621f0ac6a5Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 363e5410a46Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 364e5410a46Smrg | sparclite-* \ 365e5410a46Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 3661f0ac6a5Smrg | tahoe-* | thumb-* \ 3671f0ac6a5Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 3681f0ac6a5Smrg | tron-* \ 3691f0ac6a5Smrg | v850-* | v850e-* | vax-* \ 3701f0ac6a5Smrg | we32k-* \ 371e5410a46Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 372e5410a46Smrg | xstormy16-* | xtensa*-* \ 3731f0ac6a5Smrg | ymp-* \ 3741f0ac6a5Smrg | z8k-*) 3751f0ac6a5Smrg ;; 376e5410a46Smrg # Recognize the basic CPU types without company name, with glob match. 377e5410a46Smrg xtensa*) 378e5410a46Smrg basic_machine=$basic_machine-unknown 379e5410a46Smrg ;; 3801f0ac6a5Smrg # Recognize the various machine names and aliases which stand 3811f0ac6a5Smrg # for a CPU type and a company and sometimes even an OS. 3821f0ac6a5Smrg 386bsd) 3831f0ac6a5Smrg basic_machine=i386-unknown 3841f0ac6a5Smrg os=-bsd 3851f0ac6a5Smrg ;; 3861f0ac6a5Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 3871f0ac6a5Smrg basic_machine=m68000-att 3881f0ac6a5Smrg ;; 3891f0ac6a5Smrg 3b*) 3901f0ac6a5Smrg basic_machine=we32k-att 3911f0ac6a5Smrg ;; 3921f0ac6a5Smrg a29khif) 3931f0ac6a5Smrg basic_machine=a29k-amd 3941f0ac6a5Smrg os=-udi 3951f0ac6a5Smrg ;; 396e5410a46Smrg abacus) 397e5410a46Smrg basic_machine=abacus-unknown 398e5410a46Smrg ;; 3991f0ac6a5Smrg adobe68k) 4001f0ac6a5Smrg basic_machine=m68010-adobe 4011f0ac6a5Smrg os=-scout 4021f0ac6a5Smrg ;; 4031f0ac6a5Smrg alliant | fx80) 4041f0ac6a5Smrg basic_machine=fx80-alliant 4051f0ac6a5Smrg ;; 4061f0ac6a5Smrg altos | altos3068) 4071f0ac6a5Smrg basic_machine=m68k-altos 4081f0ac6a5Smrg ;; 4091f0ac6a5Smrg am29k) 4101f0ac6a5Smrg basic_machine=a29k-none 4111f0ac6a5Smrg os=-bsd 4121f0ac6a5Smrg ;; 4131f0ac6a5Smrg amd64) 4141f0ac6a5Smrg basic_machine=x86_64-pc 4151f0ac6a5Smrg ;; 416e5410a46Smrg amd64-*) 417e5410a46Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 418e5410a46Smrg ;; 4191f0ac6a5Smrg amdahl) 4201f0ac6a5Smrg basic_machine=580-amdahl 4211f0ac6a5Smrg os=-sysv 4221f0ac6a5Smrg ;; 4231f0ac6a5Smrg amiga | amiga-*) 4241f0ac6a5Smrg basic_machine=m68k-unknown 4251f0ac6a5Smrg ;; 4261f0ac6a5Smrg amigaos | amigados) 4271f0ac6a5Smrg basic_machine=m68k-unknown 4281f0ac6a5Smrg os=-amigaos 4291f0ac6a5Smrg ;; 4301f0ac6a5Smrg amigaunix | amix) 4311f0ac6a5Smrg basic_machine=m68k-unknown 4321f0ac6a5Smrg os=-sysv4 4331f0ac6a5Smrg ;; 4341f0ac6a5Smrg apollo68) 4351f0ac6a5Smrg basic_machine=m68k-apollo 4361f0ac6a5Smrg os=-sysv 4371f0ac6a5Smrg ;; 4381f0ac6a5Smrg apollo68bsd) 4391f0ac6a5Smrg basic_machine=m68k-apollo 4401f0ac6a5Smrg os=-bsd 4411f0ac6a5Smrg ;; 4421f0ac6a5Smrg aux) 4431f0ac6a5Smrg basic_machine=m68k-apple 4441f0ac6a5Smrg os=-aux 4451f0ac6a5Smrg ;; 4461f0ac6a5Smrg balance) 4471f0ac6a5Smrg basic_machine=ns32k-sequent 4481f0ac6a5Smrg os=-dynix 4491f0ac6a5Smrg ;; 450e5410a46Smrg blackfin) 451e5410a46Smrg basic_machine=bfin-unknown 452e5410a46Smrg os=-linux 453e5410a46Smrg ;; 454e5410a46Smrg blackfin-*) 455e5410a46Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 456e5410a46Smrg os=-linux 457e5410a46Smrg ;; 4581f0ac6a5Smrg c90) 4591f0ac6a5Smrg basic_machine=c90-cray 4601f0ac6a5Smrg os=-unicos 4611f0ac6a5Smrg ;; 4621f0ac6a5Smrg convex-c1) 4631f0ac6a5Smrg basic_machine=c1-convex 4641f0ac6a5Smrg os=-bsd 4651f0ac6a5Smrg ;; 4661f0ac6a5Smrg convex-c2) 4671f0ac6a5Smrg basic_machine=c2-convex 4681f0ac6a5Smrg os=-bsd 4691f0ac6a5Smrg ;; 4701f0ac6a5Smrg convex-c32) 4711f0ac6a5Smrg basic_machine=c32-convex 4721f0ac6a5Smrg os=-bsd 4731f0ac6a5Smrg ;; 4741f0ac6a5Smrg convex-c34) 4751f0ac6a5Smrg basic_machine=c34-convex 4761f0ac6a5Smrg os=-bsd 4771f0ac6a5Smrg ;; 4781f0ac6a5Smrg convex-c38) 4791f0ac6a5Smrg basic_machine=c38-convex 4801f0ac6a5Smrg os=-bsd 4811f0ac6a5Smrg ;; 4821f0ac6a5Smrg cray | j90) 4831f0ac6a5Smrg basic_machine=j90-cray 4841f0ac6a5Smrg os=-unicos 4851f0ac6a5Smrg ;; 486e5410a46Smrg craynv) 487e5410a46Smrg basic_machine=craynv-cray 488e5410a46Smrg os=-unicosmp 489e5410a46Smrg ;; 490e5410a46Smrg cr16) 491e5410a46Smrg basic_machine=cr16-unknown 492e5410a46Smrg os=-elf 493e5410a46Smrg ;; 4941f0ac6a5Smrg crds | unos) 4951f0ac6a5Smrg basic_machine=m68k-crds 4961f0ac6a5Smrg ;; 497e5410a46Smrg crisv32 | crisv32-* | etraxfs*) 498e5410a46Smrg basic_machine=crisv32-axis 499e5410a46Smrg ;; 5001f0ac6a5Smrg cris | cris-* | etrax*) 5011f0ac6a5Smrg basic_machine=cris-axis 5021f0ac6a5Smrg ;; 503e5410a46Smrg crx) 504e5410a46Smrg basic_machine=crx-unknown 505e5410a46Smrg os=-elf 506e5410a46Smrg ;; 5071f0ac6a5Smrg da30 | da30-*) 5081f0ac6a5Smrg basic_machine=m68k-da30 5091f0ac6a5Smrg ;; 5101f0ac6a5Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5111f0ac6a5Smrg basic_machine=mips-dec 5121f0ac6a5Smrg ;; 5131f0ac6a5Smrg decsystem10* | dec10*) 5141f0ac6a5Smrg basic_machine=pdp10-dec 5151f0ac6a5Smrg os=-tops10 5161f0ac6a5Smrg ;; 5171f0ac6a5Smrg decsystem20* | dec20*) 5181f0ac6a5Smrg basic_machine=pdp10-dec 5191f0ac6a5Smrg os=-tops20 5201f0ac6a5Smrg ;; 5211f0ac6a5Smrg delta | 3300 | motorola-3300 | motorola-delta \ 5221f0ac6a5Smrg | 3300-motorola | delta-motorola) 5231f0ac6a5Smrg basic_machine=m68k-motorola 5241f0ac6a5Smrg ;; 5251f0ac6a5Smrg delta88) 5261f0ac6a5Smrg basic_machine=m88k-motorola 5271f0ac6a5Smrg os=-sysv3 5281f0ac6a5Smrg ;; 529e5410a46Smrg djgpp) 530e5410a46Smrg basic_machine=i586-pc 531e5410a46Smrg os=-msdosdjgpp 532e5410a46Smrg ;; 5331f0ac6a5Smrg dpx20 | dpx20-*) 5341f0ac6a5Smrg basic_machine=rs6000-bull 5351f0ac6a5Smrg os=-bosx 5361f0ac6a5Smrg ;; 5371f0ac6a5Smrg dpx2* | dpx2*-bull) 5381f0ac6a5Smrg basic_machine=m68k-bull 5391f0ac6a5Smrg os=-sysv3 5401f0ac6a5Smrg ;; 5411f0ac6a5Smrg ebmon29k) 5421f0ac6a5Smrg basic_machine=a29k-amd 5431f0ac6a5Smrg os=-ebmon 5441f0ac6a5Smrg ;; 5451f0ac6a5Smrg elxsi) 5461f0ac6a5Smrg basic_machine=elxsi-elxsi 5471f0ac6a5Smrg os=-bsd 5481f0ac6a5Smrg ;; 5491f0ac6a5Smrg encore | umax | mmax) 5501f0ac6a5Smrg basic_machine=ns32k-encore 5511f0ac6a5Smrg ;; 5521f0ac6a5Smrg es1800 | OSE68k | ose68k | ose | OSE) 5531f0ac6a5Smrg basic_machine=m68k-ericsson 5541f0ac6a5Smrg os=-ose 5551f0ac6a5Smrg ;; 5561f0ac6a5Smrg fx2800) 5571f0ac6a5Smrg basic_machine=i860-alliant 5581f0ac6a5Smrg ;; 5591f0ac6a5Smrg genix) 5601f0ac6a5Smrg basic_machine=ns32k-ns 5611f0ac6a5Smrg ;; 5621f0ac6a5Smrg gmicro) 5631f0ac6a5Smrg basic_machine=tron-gmicro 5641f0ac6a5Smrg os=-sysv 5651f0ac6a5Smrg ;; 5661f0ac6a5Smrg go32) 5671f0ac6a5Smrg basic_machine=i386-pc 5681f0ac6a5Smrg os=-go32 5691f0ac6a5Smrg ;; 5701f0ac6a5Smrg h3050r* | hiux*) 5711f0ac6a5Smrg basic_machine=hppa1.1-hitachi 5721f0ac6a5Smrg os=-hiuxwe2 5731f0ac6a5Smrg ;; 5741f0ac6a5Smrg h8300hms) 5751f0ac6a5Smrg basic_machine=h8300-hitachi 5761f0ac6a5Smrg os=-hms 5771f0ac6a5Smrg ;; 5781f0ac6a5Smrg h8300xray) 5791f0ac6a5Smrg basic_machine=h8300-hitachi 5801f0ac6a5Smrg os=-xray 5811f0ac6a5Smrg ;; 5821f0ac6a5Smrg h8500hms) 5831f0ac6a5Smrg basic_machine=h8500-hitachi 5841f0ac6a5Smrg os=-hms 5851f0ac6a5Smrg ;; 5861f0ac6a5Smrg harris) 5871f0ac6a5Smrg basic_machine=m88k-harris 5881f0ac6a5Smrg os=-sysv3 5891f0ac6a5Smrg ;; 5901f0ac6a5Smrg hp300-*) 5911f0ac6a5Smrg basic_machine=m68k-hp 5921f0ac6a5Smrg ;; 5931f0ac6a5Smrg hp300bsd) 5941f0ac6a5Smrg basic_machine=m68k-hp 5951f0ac6a5Smrg os=-bsd 5961f0ac6a5Smrg ;; 5971f0ac6a5Smrg hp300hpux) 5981f0ac6a5Smrg basic_machine=m68k-hp 5991f0ac6a5Smrg os=-hpux 6001f0ac6a5Smrg ;; 6011f0ac6a5Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6021f0ac6a5Smrg basic_machine=hppa1.0-hp 6031f0ac6a5Smrg ;; 6041f0ac6a5Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6051f0ac6a5Smrg basic_machine=m68000-hp 6061f0ac6a5Smrg ;; 6071f0ac6a5Smrg hp9k3[2-9][0-9]) 6081f0ac6a5Smrg basic_machine=m68k-hp 6091f0ac6a5Smrg ;; 6101f0ac6a5Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6111f0ac6a5Smrg basic_machine=hppa1.0-hp 6121f0ac6a5Smrg ;; 6131f0ac6a5Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6141f0ac6a5Smrg basic_machine=hppa1.1-hp 6151f0ac6a5Smrg ;; 6161f0ac6a5Smrg hp9k78[0-9] | hp78[0-9]) 6171f0ac6a5Smrg # FIXME: really hppa2.0-hp 6181f0ac6a5Smrg basic_machine=hppa1.1-hp 6191f0ac6a5Smrg ;; 6201f0ac6a5Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6211f0ac6a5Smrg # FIXME: really hppa2.0-hp 6221f0ac6a5Smrg basic_machine=hppa1.1-hp 6231f0ac6a5Smrg ;; 6241f0ac6a5Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 6251f0ac6a5Smrg basic_machine=hppa1.1-hp 6261f0ac6a5Smrg ;; 6271f0ac6a5Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 6281f0ac6a5Smrg basic_machine=hppa1.0-hp 6291f0ac6a5Smrg ;; 6301f0ac6a5Smrg hppa-next) 6311f0ac6a5Smrg os=-nextstep3 6321f0ac6a5Smrg ;; 6331f0ac6a5Smrg hppaosf) 6341f0ac6a5Smrg basic_machine=hppa1.1-hp 6351f0ac6a5Smrg os=-osf 6361f0ac6a5Smrg ;; 6371f0ac6a5Smrg hppro) 6381f0ac6a5Smrg basic_machine=hppa1.1-hp 6391f0ac6a5Smrg os=-proelf 6401f0ac6a5Smrg ;; 6411f0ac6a5Smrg i370-ibm* | ibm*) 6421f0ac6a5Smrg basic_machine=i370-ibm 6431f0ac6a5Smrg ;; 6441f0ac6a5Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 6451f0ac6a5Smrg i*86v32) 6461f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6471f0ac6a5Smrg os=-sysv32 6481f0ac6a5Smrg ;; 6491f0ac6a5Smrg i*86v4*) 6501f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6511f0ac6a5Smrg os=-sysv4 6521f0ac6a5Smrg ;; 6531f0ac6a5Smrg i*86v) 6541f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6551f0ac6a5Smrg os=-sysv 6561f0ac6a5Smrg ;; 6571f0ac6a5Smrg i*86sol2) 6581f0ac6a5Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 6591f0ac6a5Smrg os=-solaris2 6601f0ac6a5Smrg ;; 6611f0ac6a5Smrg i386mach) 6621f0ac6a5Smrg basic_machine=i386-mach 6631f0ac6a5Smrg os=-mach 6641f0ac6a5Smrg ;; 6651f0ac6a5Smrg i386-vsta | vsta) 6661f0ac6a5Smrg basic_machine=i386-unknown 6671f0ac6a5Smrg os=-vsta 6681f0ac6a5Smrg ;; 6691f0ac6a5Smrg iris | iris4d) 6701f0ac6a5Smrg basic_machine=mips-sgi 6711f0ac6a5Smrg case $os in 6721f0ac6a5Smrg -irix*) 6731f0ac6a5Smrg ;; 6741f0ac6a5Smrg *) 6751f0ac6a5Smrg os=-irix4 6761f0ac6a5Smrg ;; 6771f0ac6a5Smrg esac 6781f0ac6a5Smrg ;; 6791f0ac6a5Smrg isi68 | isi) 6801f0ac6a5Smrg basic_machine=m68k-isi 6811f0ac6a5Smrg os=-sysv 6821f0ac6a5Smrg ;; 683e5410a46Smrg m68knommu) 684e5410a46Smrg basic_machine=m68k-unknown 685e5410a46Smrg os=-linux 686e5410a46Smrg ;; 687e5410a46Smrg m68knommu-*) 688e5410a46Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 689e5410a46Smrg os=-linux 690e5410a46Smrg ;; 6911f0ac6a5Smrg m88k-omron*) 6921f0ac6a5Smrg basic_machine=m88k-omron 6931f0ac6a5Smrg ;; 6941f0ac6a5Smrg magnum | m3230) 6951f0ac6a5Smrg basic_machine=mips-mips 6961f0ac6a5Smrg os=-sysv 6971f0ac6a5Smrg ;; 6981f0ac6a5Smrg merlin) 6991f0ac6a5Smrg basic_machine=ns32k-utek 7001f0ac6a5Smrg os=-sysv 7011f0ac6a5Smrg ;; 7021f0ac6a5Smrg mingw32) 7031f0ac6a5Smrg basic_machine=i386-pc 7041f0ac6a5Smrg os=-mingw32 7051f0ac6a5Smrg ;; 706e5410a46Smrg mingw32ce) 707e5410a46Smrg basic_machine=arm-unknown 708e5410a46Smrg os=-mingw32ce 709e5410a46Smrg ;; 7101f0ac6a5Smrg miniframe) 7111f0ac6a5Smrg basic_machine=m68000-convergent 7121f0ac6a5Smrg ;; 7131f0ac6a5Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7141f0ac6a5Smrg basic_machine=m68k-atari 7151f0ac6a5Smrg os=-mint 7161f0ac6a5Smrg ;; 7171f0ac6a5Smrg mips3*-*) 7181f0ac6a5Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7191f0ac6a5Smrg ;; 7201f0ac6a5Smrg mips3*) 7211f0ac6a5Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 7221f0ac6a5Smrg ;; 7231f0ac6a5Smrg monitor) 7241f0ac6a5Smrg basic_machine=m68k-rom68k 7251f0ac6a5Smrg os=-coff 7261f0ac6a5Smrg ;; 7271f0ac6a5Smrg morphos) 7281f0ac6a5Smrg basic_machine=powerpc-unknown 7291f0ac6a5Smrg os=-morphos 7301f0ac6a5Smrg ;; 7311f0ac6a5Smrg msdos) 7321f0ac6a5Smrg basic_machine=i386-pc 7331f0ac6a5Smrg os=-msdos 7341f0ac6a5Smrg ;; 735e5410a46Smrg ms1-*) 736e5410a46Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 737e5410a46Smrg ;; 7381f0ac6a5Smrg mvs) 7391f0ac6a5Smrg basic_machine=i370-ibm 7401f0ac6a5Smrg os=-mvs 7411f0ac6a5Smrg ;; 7421f0ac6a5Smrg ncr3000) 7431f0ac6a5Smrg basic_machine=i486-ncr 7441f0ac6a5Smrg os=-sysv4 7451f0ac6a5Smrg ;; 7461f0ac6a5Smrg netbsd386) 7471f0ac6a5Smrg basic_machine=i386-unknown 7481f0ac6a5Smrg os=-netbsd 7491f0ac6a5Smrg ;; 7501f0ac6a5Smrg netwinder) 7511f0ac6a5Smrg basic_machine=armv4l-rebel 7521f0ac6a5Smrg os=-linux 7531f0ac6a5Smrg ;; 7541f0ac6a5Smrg news | news700 | news800 | news900) 7551f0ac6a5Smrg basic_machine=m68k-sony 7561f0ac6a5Smrg os=-newsos 7571f0ac6a5Smrg ;; 7581f0ac6a5Smrg news1000) 7591f0ac6a5Smrg basic_machine=m68030-sony 7601f0ac6a5Smrg os=-newsos 7611f0ac6a5Smrg ;; 7621f0ac6a5Smrg news-3600 | risc-news) 7631f0ac6a5Smrg basic_machine=mips-sony 7641f0ac6a5Smrg os=-newsos 7651f0ac6a5Smrg ;; 7661f0ac6a5Smrg necv70) 7671f0ac6a5Smrg basic_machine=v70-nec 7681f0ac6a5Smrg os=-sysv 7691f0ac6a5Smrg ;; 7701f0ac6a5Smrg next | m*-next ) 7711f0ac6a5Smrg basic_machine=m68k-next 7721f0ac6a5Smrg case $os in 7731f0ac6a5Smrg -nextstep* ) 7741f0ac6a5Smrg ;; 7751f0ac6a5Smrg -ns2*) 7761f0ac6a5Smrg os=-nextstep2 7771f0ac6a5Smrg ;; 7781f0ac6a5Smrg *) 7791f0ac6a5Smrg os=-nextstep3 7801f0ac6a5Smrg ;; 7811f0ac6a5Smrg esac 7821f0ac6a5Smrg ;; 7831f0ac6a5Smrg nh3000) 7841f0ac6a5Smrg basic_machine=m68k-harris 7851f0ac6a5Smrg os=-cxux 7861f0ac6a5Smrg ;; 7871f0ac6a5Smrg nh[45]000) 7881f0ac6a5Smrg basic_machine=m88k-harris 7891f0ac6a5Smrg os=-cxux 7901f0ac6a5Smrg ;; 7911f0ac6a5Smrg nindy960) 7921f0ac6a5Smrg basic_machine=i960-intel 7931f0ac6a5Smrg os=-nindy 7941f0ac6a5Smrg ;; 7951f0ac6a5Smrg mon960) 7961f0ac6a5Smrg basic_machine=i960-intel 7971f0ac6a5Smrg os=-mon960 7981f0ac6a5Smrg ;; 7991f0ac6a5Smrg nonstopux) 8001f0ac6a5Smrg basic_machine=mips-compaq 8011f0ac6a5Smrg os=-nonstopux 8021f0ac6a5Smrg ;; 8031f0ac6a5Smrg np1) 8041f0ac6a5Smrg basic_machine=np1-gould 8051f0ac6a5Smrg ;; 8061f0ac6a5Smrg nsr-tandem) 8071f0ac6a5Smrg basic_machine=nsr-tandem 8081f0ac6a5Smrg ;; 8091f0ac6a5Smrg op50n-* | op60c-*) 8101f0ac6a5Smrg basic_machine=hppa1.1-oki 8111f0ac6a5Smrg os=-proelf 8121f0ac6a5Smrg ;; 813e5410a46Smrg openrisc | openrisc-*) 8141f0ac6a5Smrg basic_machine=or32-unknown 815e5410a46Smrg ;; 816e5410a46Smrg os400) 817e5410a46Smrg basic_machine=powerpc-ibm 818e5410a46Smrg os=-os400 8191f0ac6a5Smrg ;; 8201f0ac6a5Smrg OSE68000 | ose68000) 8211f0ac6a5Smrg basic_machine=m68000-ericsson 8221f0ac6a5Smrg os=-ose 8231f0ac6a5Smrg ;; 8241f0ac6a5Smrg os68k) 8251f0ac6a5Smrg basic_machine=m68k-none 8261f0ac6a5Smrg os=-os68k 8271f0ac6a5Smrg ;; 8281f0ac6a5Smrg pa-hitachi) 8291f0ac6a5Smrg basic_machine=hppa1.1-hitachi 8301f0ac6a5Smrg os=-hiuxwe2 8311f0ac6a5Smrg ;; 8321f0ac6a5Smrg paragon) 8331f0ac6a5Smrg basic_machine=i860-intel 8341f0ac6a5Smrg os=-osf 8351f0ac6a5Smrg ;; 836e5410a46Smrg parisc) 837e5410a46Smrg basic_machine=hppa-unknown 838e5410a46Smrg os=-linux 839e5410a46Smrg ;; 840e5410a46Smrg parisc-*) 841e5410a46Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 842e5410a46Smrg os=-linux 843e5410a46Smrg ;; 8441f0ac6a5Smrg pbd) 8451f0ac6a5Smrg basic_machine=sparc-tti 8461f0ac6a5Smrg ;; 8471f0ac6a5Smrg pbb) 8481f0ac6a5Smrg basic_machine=m68k-tti 8491f0ac6a5Smrg ;; 8501f0ac6a5Smrg pc532 | pc532-*) 8511f0ac6a5Smrg basic_machine=ns32k-pc532 8521f0ac6a5Smrg ;; 853e5410a46Smrg pc98) 854e5410a46Smrg basic_machine=i386-pc 855e5410a46Smrg ;; 856e5410a46Smrg pc98-*) 857e5410a46Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 858e5410a46Smrg ;; 8591f0ac6a5Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 8601f0ac6a5Smrg basic_machine=i586-pc 8611f0ac6a5Smrg ;; 8621f0ac6a5Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 8631f0ac6a5Smrg basic_machine=i686-pc 8641f0ac6a5Smrg ;; 8651f0ac6a5Smrg pentiumii | pentium2 | pentiumiii | pentium3) 8661f0ac6a5Smrg basic_machine=i686-pc 8671f0ac6a5Smrg ;; 8681f0ac6a5Smrg pentium4) 8691f0ac6a5Smrg basic_machine=i786-pc 8701f0ac6a5Smrg ;; 8711f0ac6a5Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 8721f0ac6a5Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 8731f0ac6a5Smrg ;; 8741f0ac6a5Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 8751f0ac6a5Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 8761f0ac6a5Smrg ;; 8771f0ac6a5Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 8781f0ac6a5Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 8791f0ac6a5Smrg ;; 8801f0ac6a5Smrg pentium4-*) 8811f0ac6a5Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 8821f0ac6a5Smrg ;; 8831f0ac6a5Smrg pn) 8841f0ac6a5Smrg basic_machine=pn-gould 8851f0ac6a5Smrg ;; 8861f0ac6a5Smrg power) basic_machine=power-ibm 8871f0ac6a5Smrg ;; 8881f0ac6a5Smrg ppc) basic_machine=powerpc-unknown 8891f0ac6a5Smrg ;; 8901f0ac6a5Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 8911f0ac6a5Smrg ;; 8921f0ac6a5Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 8931f0ac6a5Smrg basic_machine=powerpcle-unknown 8941f0ac6a5Smrg ;; 8951f0ac6a5Smrg ppcle-* | powerpclittle-*) 8961f0ac6a5Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 8971f0ac6a5Smrg ;; 8981f0ac6a5Smrg ppc64) basic_machine=powerpc64-unknown 8991f0ac6a5Smrg ;; 9001f0ac6a5Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9011f0ac6a5Smrg ;; 9021f0ac6a5Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9031f0ac6a5Smrg basic_machine=powerpc64le-unknown 9041f0ac6a5Smrg ;; 9051f0ac6a5Smrg ppc64le-* | powerpc64little-*) 9061f0ac6a5Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 9071f0ac6a5Smrg ;; 9081f0ac6a5Smrg ps2) 9091f0ac6a5Smrg basic_machine=i386-ibm 9101f0ac6a5Smrg ;; 9111f0ac6a5Smrg pw32) 9121f0ac6a5Smrg basic_machine=i586-unknown 9131f0ac6a5Smrg os=-pw32 9141f0ac6a5Smrg ;; 915e5410a46Smrg rdos) 916e5410a46Smrg basic_machine=i386-pc 917e5410a46Smrg os=-rdos 918e5410a46Smrg ;; 9191f0ac6a5Smrg rom68k) 9201f0ac6a5Smrg basic_machine=m68k-rom68k 9211f0ac6a5Smrg os=-coff 9221f0ac6a5Smrg ;; 9231f0ac6a5Smrg rm[46]00) 9241f0ac6a5Smrg basic_machine=mips-siemens 9251f0ac6a5Smrg ;; 9261f0ac6a5Smrg rtpc | rtpc-*) 9271f0ac6a5Smrg basic_machine=romp-ibm 9281f0ac6a5Smrg ;; 9291f0ac6a5Smrg s390 | s390-*) 9301f0ac6a5Smrg basic_machine=s390-ibm 9311f0ac6a5Smrg ;; 9321f0ac6a5Smrg s390x | s390x-*) 9331f0ac6a5Smrg basic_machine=s390x-ibm 9341f0ac6a5Smrg ;; 9351f0ac6a5Smrg sa29200) 9361f0ac6a5Smrg basic_machine=a29k-amd 9371f0ac6a5Smrg os=-udi 9381f0ac6a5Smrg ;; 9391f0ac6a5Smrg sb1) 9401f0ac6a5Smrg basic_machine=mipsisa64sb1-unknown 9411f0ac6a5Smrg ;; 9421f0ac6a5Smrg sb1el) 9431f0ac6a5Smrg basic_machine=mipsisa64sb1el-unknown 9441f0ac6a5Smrg ;; 945e5410a46Smrg sde) 946e5410a46Smrg basic_machine=mipsisa32-sde 947e5410a46Smrg os=-elf 948e5410a46Smrg ;; 9491f0ac6a5Smrg sei) 9501f0ac6a5Smrg basic_machine=mips-sei 9511f0ac6a5Smrg os=-seiux 9521f0ac6a5Smrg ;; 9531f0ac6a5Smrg sequent) 9541f0ac6a5Smrg basic_machine=i386-sequent 9551f0ac6a5Smrg ;; 9561f0ac6a5Smrg sh) 9571f0ac6a5Smrg basic_machine=sh-hitachi 9581f0ac6a5Smrg os=-hms 9591f0ac6a5Smrg ;; 960e5410a46Smrg sh5el) 961e5410a46Smrg basic_machine=sh5le-unknown 962e5410a46Smrg ;; 9631f0ac6a5Smrg sh64) 9641f0ac6a5Smrg basic_machine=sh64-unknown 9651f0ac6a5Smrg ;; 9661f0ac6a5Smrg sparclite-wrs | simso-wrs) 9671f0ac6a5Smrg basic_machine=sparclite-wrs 9681f0ac6a5Smrg os=-vxworks 9691f0ac6a5Smrg ;; 9701f0ac6a5Smrg sps7) 9711f0ac6a5Smrg basic_machine=m68k-bull 9721f0ac6a5Smrg os=-sysv2 9731f0ac6a5Smrg ;; 9741f0ac6a5Smrg spur) 9751f0ac6a5Smrg basic_machine=spur-unknown 9761f0ac6a5Smrg ;; 9771f0ac6a5Smrg st2000) 9781f0ac6a5Smrg basic_machine=m68k-tandem 9791f0ac6a5Smrg ;; 9801f0ac6a5Smrg stratus) 9811f0ac6a5Smrg basic_machine=i860-stratus 9821f0ac6a5Smrg os=-sysv4 9831f0ac6a5Smrg ;; 9841f0ac6a5Smrg sun2) 9851f0ac6a5Smrg basic_machine=m68000-sun 9861f0ac6a5Smrg ;; 9871f0ac6a5Smrg sun2os3) 9881f0ac6a5Smrg basic_machine=m68000-sun 9891f0ac6a5Smrg os=-sunos3 9901f0ac6a5Smrg ;; 9911f0ac6a5Smrg sun2os4) 9921f0ac6a5Smrg basic_machine=m68000-sun 9931f0ac6a5Smrg os=-sunos4 9941f0ac6a5Smrg ;; 9951f0ac6a5Smrg sun3os3) 9961f0ac6a5Smrg basic_machine=m68k-sun 9971f0ac6a5Smrg os=-sunos3 9981f0ac6a5Smrg ;; 9991f0ac6a5Smrg sun3os4) 10001f0ac6a5Smrg basic_machine=m68k-sun 10011f0ac6a5Smrg os=-sunos4 10021f0ac6a5Smrg ;; 10031f0ac6a5Smrg sun4os3) 10041f0ac6a5Smrg basic_machine=sparc-sun 10051f0ac6a5Smrg os=-sunos3 10061f0ac6a5Smrg ;; 10071f0ac6a5Smrg sun4os4) 10081f0ac6a5Smrg basic_machine=sparc-sun 10091f0ac6a5Smrg os=-sunos4 10101f0ac6a5Smrg ;; 10111f0ac6a5Smrg sun4sol2) 10121f0ac6a5Smrg basic_machine=sparc-sun 10131f0ac6a5Smrg os=-solaris2 10141f0ac6a5Smrg ;; 10151f0ac6a5Smrg sun3 | sun3-*) 10161f0ac6a5Smrg basic_machine=m68k-sun 10171f0ac6a5Smrg ;; 10181f0ac6a5Smrg sun4) 10191f0ac6a5Smrg basic_machine=sparc-sun 10201f0ac6a5Smrg ;; 10211f0ac6a5Smrg sun386 | sun386i | roadrunner) 10221f0ac6a5Smrg basic_machine=i386-sun 10231f0ac6a5Smrg ;; 10241f0ac6a5Smrg sv1) 10251f0ac6a5Smrg basic_machine=sv1-cray 10261f0ac6a5Smrg os=-unicos 10271f0ac6a5Smrg ;; 10281f0ac6a5Smrg symmetry) 10291f0ac6a5Smrg basic_machine=i386-sequent 10301f0ac6a5Smrg os=-dynix 10311f0ac6a5Smrg ;; 10321f0ac6a5Smrg t3e) 10331f0ac6a5Smrg basic_machine=alphaev5-cray 10341f0ac6a5Smrg os=-unicos 10351f0ac6a5Smrg ;; 10361f0ac6a5Smrg t90) 10371f0ac6a5Smrg basic_machine=t90-cray 10381f0ac6a5Smrg os=-unicos 10391f0ac6a5Smrg ;; 10401f0ac6a5Smrg tic54x | c54x*) 10411f0ac6a5Smrg basic_machine=tic54x-unknown 10421f0ac6a5Smrg os=-coff 10431f0ac6a5Smrg ;; 10441f0ac6a5Smrg tic55x | c55x*) 10451f0ac6a5Smrg basic_machine=tic55x-unknown 10461f0ac6a5Smrg os=-coff 10471f0ac6a5Smrg ;; 10481f0ac6a5Smrg tic6x | c6x*) 10491f0ac6a5Smrg basic_machine=tic6x-unknown 10501f0ac6a5Smrg os=-coff 10511f0ac6a5Smrg ;; 1052e5410a46Smrg tile*) 1053e5410a46Smrg basic_machine=tile-unknown 1054e5410a46Smrg os=-linux-gnu 1055e5410a46Smrg ;; 10561f0ac6a5Smrg tx39) 10571f0ac6a5Smrg basic_machine=mipstx39-unknown 10581f0ac6a5Smrg ;; 10591f0ac6a5Smrg tx39el) 10601f0ac6a5Smrg basic_machine=mipstx39el-unknown 10611f0ac6a5Smrg ;; 10621f0ac6a5Smrg toad1) 10631f0ac6a5Smrg basic_machine=pdp10-xkl 10641f0ac6a5Smrg os=-tops20 10651f0ac6a5Smrg ;; 10661f0ac6a5Smrg tower | tower-32) 10671f0ac6a5Smrg basic_machine=m68k-ncr 10681f0ac6a5Smrg ;; 1069e5410a46Smrg tpf) 1070e5410a46Smrg basic_machine=s390x-ibm 1071e5410a46Smrg os=-tpf 1072e5410a46Smrg ;; 10731f0ac6a5Smrg udi29k) 10741f0ac6a5Smrg basic_machine=a29k-amd 10751f0ac6a5Smrg os=-udi 10761f0ac6a5Smrg ;; 10771f0ac6a5Smrg ultra3) 10781f0ac6a5Smrg basic_machine=a29k-nyu 10791f0ac6a5Smrg os=-sym1 10801f0ac6a5Smrg ;; 10811f0ac6a5Smrg v810 | necv810) 10821f0ac6a5Smrg basic_machine=v810-nec 10831f0ac6a5Smrg os=-none 10841f0ac6a5Smrg ;; 10851f0ac6a5Smrg vaxv) 10861f0ac6a5Smrg basic_machine=vax-dec 10871f0ac6a5Smrg os=-sysv 10881f0ac6a5Smrg ;; 10891f0ac6a5Smrg vms) 10901f0ac6a5Smrg basic_machine=vax-dec 10911f0ac6a5Smrg os=-vms 10921f0ac6a5Smrg ;; 10931f0ac6a5Smrg vpp*|vx|vx-*) 10941f0ac6a5Smrg basic_machine=f301-fujitsu 10951f0ac6a5Smrg ;; 10961f0ac6a5Smrg vxworks960) 10971f0ac6a5Smrg basic_machine=i960-wrs 10981f0ac6a5Smrg os=-vxworks 10991f0ac6a5Smrg ;; 11001f0ac6a5Smrg vxworks68) 11011f0ac6a5Smrg basic_machine=m68k-wrs 11021f0ac6a5Smrg os=-vxworks 11031f0ac6a5Smrg ;; 11041f0ac6a5Smrg vxworks29k) 11051f0ac6a5Smrg basic_machine=a29k-wrs 11061f0ac6a5Smrg os=-vxworks 11071f0ac6a5Smrg ;; 11081f0ac6a5Smrg w65*) 11091f0ac6a5Smrg basic_machine=w65-wdc 11101f0ac6a5Smrg os=-none 11111f0ac6a5Smrg ;; 11121f0ac6a5Smrg w89k-*) 11131f0ac6a5Smrg basic_machine=hppa1.1-winbond 11141f0ac6a5Smrg os=-proelf 11151f0ac6a5Smrg ;; 1116e5410a46Smrg xbox) 1117e5410a46Smrg basic_machine=i686-pc 1118e5410a46Smrg os=-mingw32 1119e5410a46Smrg ;; 11201f0ac6a5Smrg xps | xps100) 11211f0ac6a5Smrg basic_machine=xps100-honeywell 11221f0ac6a5Smrg ;; 11231f0ac6a5Smrg ymp) 11241f0ac6a5Smrg basic_machine=ymp-cray 11251f0ac6a5Smrg os=-unicos 11261f0ac6a5Smrg ;; 11271f0ac6a5Smrg z8k-*-coff) 11281f0ac6a5Smrg basic_machine=z8k-unknown 11291f0ac6a5Smrg os=-sim 11301f0ac6a5Smrg ;; 11311f0ac6a5Smrg none) 11321f0ac6a5Smrg basic_machine=none-none 11331f0ac6a5Smrg os=-none 11341f0ac6a5Smrg ;; 11351f0ac6a5Smrg 11361f0ac6a5Smrg# Here we handle the default manufacturer of certain CPU types. It is in 11371f0ac6a5Smrg# some cases the only manufacturer, in others, it is the most popular. 11381f0ac6a5Smrg w89k) 11391f0ac6a5Smrg basic_machine=hppa1.1-winbond 11401f0ac6a5Smrg ;; 11411f0ac6a5Smrg op50n) 11421f0ac6a5Smrg basic_machine=hppa1.1-oki 11431f0ac6a5Smrg ;; 11441f0ac6a5Smrg op60c) 11451f0ac6a5Smrg basic_machine=hppa1.1-oki 11461f0ac6a5Smrg ;; 11471f0ac6a5Smrg romp) 11481f0ac6a5Smrg basic_machine=romp-ibm 11491f0ac6a5Smrg ;; 1150e5410a46Smrg mmix) 1151e5410a46Smrg basic_machine=mmix-knuth 1152e5410a46Smrg ;; 11531f0ac6a5Smrg rs6000) 11541f0ac6a5Smrg basic_machine=rs6000-ibm 11551f0ac6a5Smrg ;; 11561f0ac6a5Smrg vax) 11571f0ac6a5Smrg basic_machine=vax-dec 11581f0ac6a5Smrg ;; 11591f0ac6a5Smrg pdp10) 11601f0ac6a5Smrg # there are many clones, so DEC is not a safe bet 11611f0ac6a5Smrg basic_machine=pdp10-unknown 11621f0ac6a5Smrg ;; 11631f0ac6a5Smrg pdp11) 11641f0ac6a5Smrg basic_machine=pdp11-dec 11651f0ac6a5Smrg ;; 11661f0ac6a5Smrg we32k) 11671f0ac6a5Smrg basic_machine=we32k-att 11681f0ac6a5Smrg ;; 1169e5410a46Smrg sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) 11701f0ac6a5Smrg basic_machine=sh-unknown 11711f0ac6a5Smrg ;; 1172e5410a46Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 11731f0ac6a5Smrg basic_machine=sparc-sun 11741f0ac6a5Smrg ;; 11751f0ac6a5Smrg cydra) 11761f0ac6a5Smrg basic_machine=cydra-cydrome 11771f0ac6a5Smrg ;; 11781f0ac6a5Smrg orion) 11791f0ac6a5Smrg basic_machine=orion-highlevel 11801f0ac6a5Smrg ;; 11811f0ac6a5Smrg orion105) 11821f0ac6a5Smrg basic_machine=clipper-highlevel 11831f0ac6a5Smrg ;; 11841f0ac6a5Smrg mac | mpw | mac-mpw) 11851f0ac6a5Smrg basic_machine=m68k-apple 11861f0ac6a5Smrg ;; 11871f0ac6a5Smrg pmac | pmac-mpw) 11881f0ac6a5Smrg basic_machine=powerpc-apple 11891f0ac6a5Smrg ;; 11901f0ac6a5Smrg *-unknown) 11911f0ac6a5Smrg # Make sure to match an already-canonicalized machine name. 11921f0ac6a5Smrg ;; 11931f0ac6a5Smrg *) 11941f0ac6a5Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 11951f0ac6a5Smrg exit 1 11961f0ac6a5Smrg ;; 11971f0ac6a5Smrgesac 11981f0ac6a5Smrg 11991f0ac6a5Smrg# Here we canonicalize certain aliases for manufacturers. 12001f0ac6a5Smrgcase $basic_machine in 12011f0ac6a5Smrg *-digital*) 12021f0ac6a5Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12031f0ac6a5Smrg ;; 12041f0ac6a5Smrg *-commodore*) 12051f0ac6a5Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12061f0ac6a5Smrg ;; 12071f0ac6a5Smrg *) 12081f0ac6a5Smrg ;; 12091f0ac6a5Smrgesac 12101f0ac6a5Smrg 12111f0ac6a5Smrg# Decode manufacturer-specific aliases for certain operating systems. 12121f0ac6a5Smrg 12131f0ac6a5Smrgif [ x"$os" != x"" ] 12141f0ac6a5Smrgthen 12151f0ac6a5Smrgcase $os in 12161f0ac6a5Smrg # First match some system type aliases 12171f0ac6a5Smrg # that might get confused with valid system types. 12181f0ac6a5Smrg # -solaris* is a basic system type, with this one exception. 12191f0ac6a5Smrg -solaris1 | -solaris1.*) 12201f0ac6a5Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 12211f0ac6a5Smrg ;; 12221f0ac6a5Smrg -solaris) 12231f0ac6a5Smrg os=-solaris2 12241f0ac6a5Smrg ;; 12251f0ac6a5Smrg -svr4*) 12261f0ac6a5Smrg os=-sysv4 12271f0ac6a5Smrg ;; 12281f0ac6a5Smrg -unixware*) 12291f0ac6a5Smrg os=-sysv4.2uw 12301f0ac6a5Smrg ;; 12311f0ac6a5Smrg -gnu/linux*) 12321f0ac6a5Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 12331f0ac6a5Smrg ;; 12341f0ac6a5Smrg # First accept the basic system types. 12351f0ac6a5Smrg # The portable systems comes first. 12361f0ac6a5Smrg # Each alternative MUST END IN A *, to match a version number. 12371f0ac6a5Smrg # -sysv* is not here because it comes later, after sysvr4. 12381f0ac6a5Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 12391f0ac6a5Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 12401f0ac6a5Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 12411f0ac6a5Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 12421f0ac6a5Smrg | -aos* \ 12431f0ac6a5Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 12441f0ac6a5Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1245e5410a46Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1246e5410a46Smrg | -openbsd* | -solidbsd* \ 1247e5410a46Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1248e5410a46Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 12491f0ac6a5Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 12501f0ac6a5Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 12511f0ac6a5Smrg | -chorusos* | -chorusrdb* \ 12521f0ac6a5Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1253e5410a46Smrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 1254e5410a46Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 12551f0ac6a5Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 12561f0ac6a5Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 12571f0ac6a5Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 12581f0ac6a5Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 12591f0ac6a5Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1260e5410a46Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1261e5410a46Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) 12621f0ac6a5Smrg # Remember, each alternative MUST END IN *, to match a version number. 12631f0ac6a5Smrg ;; 12641f0ac6a5Smrg -qnx*) 12651f0ac6a5Smrg case $basic_machine in 12661f0ac6a5Smrg x86-* | i*86-*) 12671f0ac6a5Smrg ;; 12681f0ac6a5Smrg *) 12691f0ac6a5Smrg os=-nto$os 12701f0ac6a5Smrg ;; 12711f0ac6a5Smrg esac 12721f0ac6a5Smrg ;; 12731f0ac6a5Smrg -nto-qnx*) 12741f0ac6a5Smrg ;; 12751f0ac6a5Smrg -nto*) 12761f0ac6a5Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 12771f0ac6a5Smrg ;; 12781f0ac6a5Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1279e5410a46Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 12801f0ac6a5Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 12811f0ac6a5Smrg ;; 12821f0ac6a5Smrg -mac*) 12831f0ac6a5Smrg os=`echo $os | sed -e 's|mac|macos|'` 12841f0ac6a5Smrg ;; 1285e5410a46Smrg -linux-dietlibc) 1286e5410a46Smrg os=-linux-dietlibc 1287e5410a46Smrg ;; 12881f0ac6a5Smrg -linux*) 12891f0ac6a5Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 12901f0ac6a5Smrg ;; 12911f0ac6a5Smrg -sunos5*) 12921f0ac6a5Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 12931f0ac6a5Smrg ;; 12941f0ac6a5Smrg -sunos6*) 12951f0ac6a5Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 12961f0ac6a5Smrg ;; 12971f0ac6a5Smrg -opened*) 12981f0ac6a5Smrg os=-openedition 12991f0ac6a5Smrg ;; 1300e5410a46Smrg -os400*) 1301e5410a46Smrg os=-os400 1302e5410a46Smrg ;; 13031f0ac6a5Smrg -wince*) 13041f0ac6a5Smrg os=-wince 13051f0ac6a5Smrg ;; 13061f0ac6a5Smrg -osfrose*) 13071f0ac6a5Smrg os=-osfrose 13081f0ac6a5Smrg ;; 13091f0ac6a5Smrg -osf*) 13101f0ac6a5Smrg os=-osf 13111f0ac6a5Smrg ;; 13121f0ac6a5Smrg -utek*) 13131f0ac6a5Smrg os=-bsd 13141f0ac6a5Smrg ;; 13151f0ac6a5Smrg -dynix*) 13161f0ac6a5Smrg os=-bsd 13171f0ac6a5Smrg ;; 13181f0ac6a5Smrg -acis*) 13191f0ac6a5Smrg os=-aos 13201f0ac6a5Smrg ;; 13211f0ac6a5Smrg -atheos*) 13221f0ac6a5Smrg os=-atheos 13231f0ac6a5Smrg ;; 1324e5410a46Smrg -syllable*) 1325e5410a46Smrg os=-syllable 1326e5410a46Smrg ;; 13271f0ac6a5Smrg -386bsd) 13281f0ac6a5Smrg os=-bsd 13291f0ac6a5Smrg ;; 13301f0ac6a5Smrg -ctix* | -uts*) 13311f0ac6a5Smrg os=-sysv 13321f0ac6a5Smrg ;; 13331f0ac6a5Smrg -nova*) 13341f0ac6a5Smrg os=-rtmk-nova 13351f0ac6a5Smrg ;; 13361f0ac6a5Smrg -ns2 ) 13371f0ac6a5Smrg os=-nextstep2 13381f0ac6a5Smrg ;; 13391f0ac6a5Smrg -nsk*) 13401f0ac6a5Smrg os=-nsk 13411f0ac6a5Smrg ;; 13421f0ac6a5Smrg # Preserve the version number of sinix5. 13431f0ac6a5Smrg -sinix5.*) 13441f0ac6a5Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 13451f0ac6a5Smrg ;; 13461f0ac6a5Smrg -sinix*) 13471f0ac6a5Smrg os=-sysv4 13481f0ac6a5Smrg ;; 1349e5410a46Smrg -tpf*) 1350e5410a46Smrg os=-tpf 1351e5410a46Smrg ;; 13521f0ac6a5Smrg -triton*) 13531f0ac6a5Smrg os=-sysv3 13541f0ac6a5Smrg ;; 13551f0ac6a5Smrg -oss*) 13561f0ac6a5Smrg os=-sysv3 13571f0ac6a5Smrg ;; 13581f0ac6a5Smrg -svr4) 13591f0ac6a5Smrg os=-sysv4 13601f0ac6a5Smrg ;; 13611f0ac6a5Smrg -svr3) 13621f0ac6a5Smrg os=-sysv3 13631f0ac6a5Smrg ;; 13641f0ac6a5Smrg -sysvr4) 13651f0ac6a5Smrg os=-sysv4 13661f0ac6a5Smrg ;; 13671f0ac6a5Smrg # This must come after -sysvr4. 13681f0ac6a5Smrg -sysv*) 13691f0ac6a5Smrg ;; 13701f0ac6a5Smrg -ose*) 13711f0ac6a5Smrg os=-ose 13721f0ac6a5Smrg ;; 13731f0ac6a5Smrg -es1800*) 13741f0ac6a5Smrg os=-ose 13751f0ac6a5Smrg ;; 13761f0ac6a5Smrg -xenix) 13771f0ac6a5Smrg os=-xenix 13781f0ac6a5Smrg ;; 13791f0ac6a5Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 13801f0ac6a5Smrg os=-mint 13811f0ac6a5Smrg ;; 13821f0ac6a5Smrg -aros*) 13831f0ac6a5Smrg os=-aros 13841f0ac6a5Smrg ;; 13851f0ac6a5Smrg -kaos*) 13861f0ac6a5Smrg os=-kaos 13871f0ac6a5Smrg ;; 1388e5410a46Smrg -zvmoe) 1389e5410a46Smrg os=-zvmoe 1390e5410a46Smrg ;; 13911f0ac6a5Smrg -none) 13921f0ac6a5Smrg ;; 13931f0ac6a5Smrg *) 13941f0ac6a5Smrg # Get rid of the `-' at the beginning of $os. 13951f0ac6a5Smrg os=`echo $os | sed 's/[^-]*-//'` 13961f0ac6a5Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 13971f0ac6a5Smrg exit 1 13981f0ac6a5Smrg ;; 13991f0ac6a5Smrgesac 14001f0ac6a5Smrgelse 14011f0ac6a5Smrg 14021f0ac6a5Smrg# Here we handle the default operating systems that come with various machines. 14031f0ac6a5Smrg# The value should be what the vendor currently ships out the door with their 14041f0ac6a5Smrg# machine or put another way, the most popular os provided with the machine. 14051f0ac6a5Smrg 14061f0ac6a5Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 14071f0ac6a5Smrg# "-sun"), then you have to tell the case statement up towards the top 14081f0ac6a5Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 14091f0ac6a5Smrg# will signal an error saying that MANUFACTURER isn't an operating 14101f0ac6a5Smrg# system, and we'll never get to this point. 14111f0ac6a5Smrg 14121f0ac6a5Smrgcase $basic_machine in 1413e5410a46Smrg score-*) 1414e5410a46Smrg os=-elf 1415e5410a46Smrg ;; 1416e5410a46Smrg spu-*) 1417e5410a46Smrg os=-elf 1418e5410a46Smrg ;; 14191f0ac6a5Smrg *-acorn) 14201f0ac6a5Smrg os=-riscix1.2 14211f0ac6a5Smrg ;; 14221f0ac6a5Smrg arm*-rebel) 14231f0ac6a5Smrg os=-linux 14241f0ac6a5Smrg ;; 14251f0ac6a5Smrg arm*-semi) 14261f0ac6a5Smrg os=-aout 14271f0ac6a5Smrg ;; 1428e5410a46Smrg c4x-* | tic4x-*) 1429e5410a46Smrg os=-coff 1430e5410a46Smrg ;; 14311f0ac6a5Smrg # This must come before the *-dec entry. 14321f0ac6a5Smrg pdp10-*) 14331f0ac6a5Smrg os=-tops20 14341f0ac6a5Smrg ;; 14351f0ac6a5Smrg pdp11-*) 14361f0ac6a5Smrg os=-none 14371f0ac6a5Smrg ;; 14381f0ac6a5Smrg *-dec | vax-*) 14391f0ac6a5Smrg os=-ultrix4.2 14401f0ac6a5Smrg ;; 14411f0ac6a5Smrg m68*-apollo) 14421f0ac6a5Smrg os=-domain 14431f0ac6a5Smrg ;; 14441f0ac6a5Smrg i386-sun) 14451f0ac6a5Smrg os=-sunos4.0.2 14461f0ac6a5Smrg ;; 14471f0ac6a5Smrg m68000-sun) 14481f0ac6a5Smrg os=-sunos3 14491f0ac6a5Smrg # This also exists in the configure program, but was not the 14501f0ac6a5Smrg # default. 14511f0ac6a5Smrg # os=-sunos4 14521f0ac6a5Smrg ;; 14531f0ac6a5Smrg m68*-cisco) 14541f0ac6a5Smrg os=-aout 14551f0ac6a5Smrg ;; 1456e5410a46Smrg mep-*) 1457e5410a46Smrg os=-elf 1458e5410a46Smrg ;; 14591f0ac6a5Smrg mips*-cisco) 14601f0ac6a5Smrg os=-elf 14611f0ac6a5Smrg ;; 14621f0ac6a5Smrg mips*-*) 14631f0ac6a5Smrg os=-elf 14641f0ac6a5Smrg ;; 14651f0ac6a5Smrg or32-*) 14661f0ac6a5Smrg os=-coff 14671f0ac6a5Smrg ;; 14681f0ac6a5Smrg *-tti) # must be before sparc entry or we get the wrong os. 14691f0ac6a5Smrg os=-sysv3 14701f0ac6a5Smrg ;; 14711f0ac6a5Smrg sparc-* | *-sun) 14721f0ac6a5Smrg os=-sunos4.1.1 14731f0ac6a5Smrg ;; 14741f0ac6a5Smrg *-be) 14751f0ac6a5Smrg os=-beos 14761f0ac6a5Smrg ;; 1477e5410a46Smrg *-haiku) 1478e5410a46Smrg os=-haiku 1479e5410a46Smrg ;; 14801f0ac6a5Smrg *-ibm) 14811f0ac6a5Smrg os=-aix 14821f0ac6a5Smrg ;; 1483e5410a46Smrg *-knuth) 1484e5410a46Smrg os=-mmixware 1485e5410a46Smrg ;; 14861f0ac6a5Smrg *-wec) 14871f0ac6a5Smrg os=-proelf 14881f0ac6a5Smrg ;; 14891f0ac6a5Smrg *-winbond) 14901f0ac6a5Smrg os=-proelf 14911f0ac6a5Smrg ;; 14921f0ac6a5Smrg *-oki) 14931f0ac6a5Smrg os=-proelf 14941f0ac6a5Smrg ;; 14951f0ac6a5Smrg *-hp) 14961f0ac6a5Smrg os=-hpux 14971f0ac6a5Smrg ;; 14981f0ac6a5Smrg *-hitachi) 14991f0ac6a5Smrg os=-hiux 15001f0ac6a5Smrg ;; 15011f0ac6a5Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 15021f0ac6a5Smrg os=-sysv 15031f0ac6a5Smrg ;; 15041f0ac6a5Smrg *-cbm) 15051f0ac6a5Smrg os=-amigaos 15061f0ac6a5Smrg ;; 15071f0ac6a5Smrg *-dg) 15081f0ac6a5Smrg os=-dgux 15091f0ac6a5Smrg ;; 15101f0ac6a5Smrg *-dolphin) 15111f0ac6a5Smrg os=-sysv3 15121f0ac6a5Smrg ;; 15131f0ac6a5Smrg m68k-ccur) 15141f0ac6a5Smrg os=-rtu 15151f0ac6a5Smrg ;; 15161f0ac6a5Smrg m88k-omron*) 15171f0ac6a5Smrg os=-luna 15181f0ac6a5Smrg ;; 15191f0ac6a5Smrg *-next ) 15201f0ac6a5Smrg os=-nextstep 15211f0ac6a5Smrg ;; 15221f0ac6a5Smrg *-sequent) 15231f0ac6a5Smrg os=-ptx 15241f0ac6a5Smrg ;; 15251f0ac6a5Smrg *-crds) 15261f0ac6a5Smrg os=-unos 15271f0ac6a5Smrg ;; 15281f0ac6a5Smrg *-ns) 15291f0ac6a5Smrg os=-genix 15301f0ac6a5Smrg ;; 15311f0ac6a5Smrg i370-*) 15321f0ac6a5Smrg os=-mvs 15331f0ac6a5Smrg ;; 15341f0ac6a5Smrg *-next) 15351f0ac6a5Smrg os=-nextstep3 15361f0ac6a5Smrg ;; 15371f0ac6a5Smrg *-gould) 15381f0ac6a5Smrg os=-sysv 15391f0ac6a5Smrg ;; 15401f0ac6a5Smrg *-highlevel) 15411f0ac6a5Smrg os=-bsd 15421f0ac6a5Smrg ;; 15431f0ac6a5Smrg *-encore) 15441f0ac6a5Smrg os=-bsd 15451f0ac6a5Smrg ;; 15461f0ac6a5Smrg *-sgi) 15471f0ac6a5Smrg os=-irix 15481f0ac6a5Smrg ;; 15491f0ac6a5Smrg *-siemens) 15501f0ac6a5Smrg os=-sysv4 15511f0ac6a5Smrg ;; 15521f0ac6a5Smrg *-masscomp) 15531f0ac6a5Smrg os=-rtu 15541f0ac6a5Smrg ;; 15551f0ac6a5Smrg f30[01]-fujitsu | f700-fujitsu) 15561f0ac6a5Smrg os=-uxpv 15571f0ac6a5Smrg ;; 15581f0ac6a5Smrg *-rom68k) 15591f0ac6a5Smrg os=-coff 15601f0ac6a5Smrg ;; 15611f0ac6a5Smrg *-*bug) 15621f0ac6a5Smrg os=-coff 15631f0ac6a5Smrg ;; 15641f0ac6a5Smrg *-apple) 15651f0ac6a5Smrg os=-macos 15661f0ac6a5Smrg ;; 15671f0ac6a5Smrg *-atari*) 15681f0ac6a5Smrg os=-mint 15691f0ac6a5Smrg ;; 15701f0ac6a5Smrg *) 15711f0ac6a5Smrg os=-none 15721f0ac6a5Smrg ;; 15731f0ac6a5Smrgesac 15741f0ac6a5Smrgfi 15751f0ac6a5Smrg 15761f0ac6a5Smrg# Here we handle the case where we know the os, and the CPU type, but not the 15771f0ac6a5Smrg# manufacturer. We pick the logical manufacturer. 15781f0ac6a5Smrgvendor=unknown 15791f0ac6a5Smrgcase $basic_machine in 15801f0ac6a5Smrg *-unknown) 15811f0ac6a5Smrg case $os in 15821f0ac6a5Smrg -riscix*) 15831f0ac6a5Smrg vendor=acorn 15841f0ac6a5Smrg ;; 15851f0ac6a5Smrg -sunos*) 15861f0ac6a5Smrg vendor=sun 15871f0ac6a5Smrg ;; 15881f0ac6a5Smrg -aix*) 15891f0ac6a5Smrg vendor=ibm 15901f0ac6a5Smrg ;; 15911f0ac6a5Smrg -beos*) 15921f0ac6a5Smrg vendor=be 15931f0ac6a5Smrg ;; 15941f0ac6a5Smrg -hpux*) 15951f0ac6a5Smrg vendor=hp 15961f0ac6a5Smrg ;; 15971f0ac6a5Smrg -mpeix*) 15981f0ac6a5Smrg vendor=hp 15991f0ac6a5Smrg ;; 16001f0ac6a5Smrg -hiux*) 16011f0ac6a5Smrg vendor=hitachi 16021f0ac6a5Smrg ;; 16031f0ac6a5Smrg -unos*) 16041f0ac6a5Smrg vendor=crds 16051f0ac6a5Smrg ;; 16061f0ac6a5Smrg -dgux*) 16071f0ac6a5Smrg vendor=dg 16081f0ac6a5Smrg ;; 16091f0ac6a5Smrg -luna*) 16101f0ac6a5Smrg vendor=omron 16111f0ac6a5Smrg ;; 16121f0ac6a5Smrg -genix*) 16131f0ac6a5Smrg vendor=ns 16141f0ac6a5Smrg ;; 16151f0ac6a5Smrg -mvs* | -opened*) 16161f0ac6a5Smrg vendor=ibm 16171f0ac6a5Smrg ;; 1618e5410a46Smrg -os400*) 1619e5410a46Smrg vendor=ibm 1620e5410a46Smrg ;; 16211f0ac6a5Smrg -ptx*) 16221f0ac6a5Smrg vendor=sequent 16231f0ac6a5Smrg ;; 1624e5410a46Smrg -tpf*) 1625e5410a46Smrg vendor=ibm 1626e5410a46Smrg ;; 16271f0ac6a5Smrg -vxsim* | -vxworks* | -windiss*) 16281f0ac6a5Smrg vendor=wrs 16291f0ac6a5Smrg ;; 16301f0ac6a5Smrg -aux*) 16311f0ac6a5Smrg vendor=apple 16321f0ac6a5Smrg ;; 16331f0ac6a5Smrg -hms*) 16341f0ac6a5Smrg vendor=hitachi 16351f0ac6a5Smrg ;; 16361f0ac6a5Smrg -mpw* | -macos*) 16371f0ac6a5Smrg vendor=apple 16381f0ac6a5Smrg ;; 16391f0ac6a5Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 16401f0ac6a5Smrg vendor=atari 16411f0ac6a5Smrg ;; 16421f0ac6a5Smrg -vos*) 16431f0ac6a5Smrg vendor=stratus 16441f0ac6a5Smrg ;; 16451f0ac6a5Smrg esac 16461f0ac6a5Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 16471f0ac6a5Smrg ;; 16481f0ac6a5Smrgesac 16491f0ac6a5Smrg 16501f0ac6a5Smrgecho $basic_machine$os 1651e5410a46Smrgexit 16521f0ac6a5Smrg 16531f0ac6a5Smrg# Local variables: 16541f0ac6a5Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 16551f0ac6a5Smrg# time-stamp-start: "timestamp='" 16561f0ac6a5Smrg# time-stamp-format: "%:y-%02m-%02d" 16571f0ac6a5Smrg# time-stamp-end: "'" 16581f0ac6a5Smrg# End: 1659