17706df26Smrg#! /bin/sh 27706df26Smrg# Configuration validation subroutine script. 37706df26Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4b92e825aSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5b92e825aSmrg# 2011, 2012 Free Software Foundation, Inc. 67706df26Smrg 7b92e825aSmrgtimestamp='2012-01-01' 87706df26Smrg 97706df26Smrg# This file is (in principle) common to ALL GNU software. 107706df26Smrg# The presence of a machine in this file suggests that SOME GNU software 117706df26Smrg# can handle that machine. It does not imply ALL GNU software can. 127706df26Smrg# 137706df26Smrg# This file is free software; you can redistribute it and/or modify 147706df26Smrg# it under the terms of the GNU General Public License as published by 157706df26Smrg# the Free Software Foundation; either version 2 of the License, or 167706df26Smrg# (at your option) any later version. 177706df26Smrg# 187706df26Smrg# This program is distributed in the hope that it will be useful, 197706df26Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 207706df26Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 217706df26Smrg# GNU General Public License for more details. 227706df26Smrg# 237706df26Smrg# You should have received a copy of the GNU General Public License 247706df26Smrg# along with this program; if not, write to the Free Software 25047944f3Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26047944f3Smrg# 02110-1301, USA. 27047944f3Smrg# 287706df26Smrg# As a special exception to the GNU General Public License, if you 297706df26Smrg# distribute this file as part of a program that contains a 307706df26Smrg# configuration script generated by Autoconf, you may include it under 317706df26Smrg# the same distribution terms that you use for the rest of that program. 327706df26Smrg 33047944f3Smrg 347706df26Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 35b92e825aSmrg# diff and a properly formatted GNU ChangeLog entry. 367706df26Smrg# 377706df26Smrg# Configuration subroutine to validate and canonicalize a configuration type. 387706df26Smrg# Supply the specified configuration type as an argument. 397706df26Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 407706df26Smrg# Otherwise, we print the canonical config type on stdout and succeed. 417706df26Smrg 42b92e825aSmrg# You can get the latest version of this script from: 43b92e825aSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 44b92e825aSmrg 457706df26Smrg# This file is supposed to be the same for all GNU packages 467706df26Smrg# and recognize all the CPU types, system types and aliases 477706df26Smrg# that are meaningful with *any* GNU software. 487706df26Smrg# Each package is responsible for reporting which valid configurations 497706df26Smrg# it does not support. The user should be able to distinguish 507706df26Smrg# a failure to support a valid configuration from a meaningless 517706df26Smrg# configuration. 527706df26Smrg 537706df26Smrg# The goal of this file is to map all the various variations of a given 547706df26Smrg# machine specification into a single specification in the form: 557706df26Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 567706df26Smrg# or in some cases, the newer four-part form: 577706df26Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 587706df26Smrg# It is wrong to echo any other type of specification. 597706df26Smrg 607706df26Smrgme=`echo "$0" | sed -e 's,.*/,,'` 617706df26Smrg 627706df26Smrgusage="\ 637706df26SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 647706df26Smrg $0 [OPTION] ALIAS 657706df26Smrg 667706df26SmrgCanonicalize a configuration name. 677706df26Smrg 687706df26SmrgOperation modes: 697706df26Smrg -h, --help print this help, then exit 707706df26Smrg -t, --time-stamp print date of last modification, then exit 717706df26Smrg -v, --version print version number, then exit 727706df26Smrg 737706df26SmrgReport bugs and patches to <config-patches@gnu.org>." 747706df26Smrg 757706df26Smrgversion="\ 767706df26SmrgGNU config.sub ($timestamp) 777706df26Smrg 78b92e825aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 79b92e825aSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 80b92e825aSmrgFree Software Foundation, Inc. 817706df26Smrg 827706df26SmrgThis is free software; see the source for copying conditions. There is NO 837706df26Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 847706df26Smrg 857706df26Smrghelp=" 867706df26SmrgTry \`$me --help' for more information." 877706df26Smrg 887706df26Smrg# Parse command line 897706df26Smrgwhile test $# -gt 0 ; do 907706df26Smrg case $1 in 917706df26Smrg --time-stamp | --time* | -t ) 92047944f3Smrg echo "$timestamp" ; exit ;; 937706df26Smrg --version | -v ) 94047944f3Smrg echo "$version" ; exit ;; 957706df26Smrg --help | --h* | -h ) 96047944f3Smrg echo "$usage"; exit ;; 977706df26Smrg -- ) # Stop option processing 987706df26Smrg shift; break ;; 997706df26Smrg - ) # Use stdin as input. 1007706df26Smrg break ;; 1017706df26Smrg -* ) 1027706df26Smrg echo "$me: invalid option $1$help" 1037706df26Smrg exit 1 ;; 1047706df26Smrg 1057706df26Smrg *local*) 1067706df26Smrg # First pass through any local machine types. 1077706df26Smrg echo $1 108047944f3Smrg exit ;; 1097706df26Smrg 1107706df26Smrg * ) 1117706df26Smrg break ;; 1127706df26Smrg esac 1137706df26Smrgdone 1147706df26Smrg 1157706df26Smrgcase $# in 1167706df26Smrg 0) echo "$me: missing argument$help" >&2 1177706df26Smrg exit 1;; 1187706df26Smrg 1) ;; 1197706df26Smrg *) echo "$me: too many arguments$help" >&2 1207706df26Smrg exit 1;; 1217706df26Smrgesac 1227706df26Smrg 1237706df26Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1247706df26Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1257706df26Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1267706df26Smrgcase $maybe_os in 127b92e825aSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 128b92e825aSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 129b92e825aSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 130b92e825aSmrg kopensolaris*-gnu* | \ 131047944f3Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1327706df26Smrg os=-$maybe_os 1337706df26Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1347706df26Smrg ;; 1357706df26Smrg *) 1367706df26Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1377706df26Smrg if [ $basic_machine != $1 ] 1387706df26Smrg then os=`echo $1 | sed 's/.*-/-/'` 1397706df26Smrg else os=; fi 1407706df26Smrg ;; 1417706df26Smrgesac 1427706df26Smrg 1437706df26Smrg### Let's recognize common machines as not being operating systems so 1447706df26Smrg### that things like config.sub decstation-3100 work. We also 1457706df26Smrg### recognize some manufacturers as not being operating systems, so we 1467706df26Smrg### can provide default operating systems below. 1477706df26Smrgcase $os in 1487706df26Smrg -sun*os*) 1497706df26Smrg # Prevent following clause from handling this invalid input. 1507706df26Smrg ;; 1517706df26Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1527706df26Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1537706df26Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1547706df26Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1557706df26Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1567706df26Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 157b92e825aSmrg -apple | -axis | -knuth | -cray | -microblaze) 1587706df26Smrg os= 1597706df26Smrg basic_machine=$1 1607706df26Smrg ;; 161b92e825aSmrg -bluegene*) 162b92e825aSmrg os=-cnk 163b92e825aSmrg ;; 1647706df26Smrg -sim | -cisco | -oki | -wec | -winbond) 1657706df26Smrg os= 1667706df26Smrg basic_machine=$1 1677706df26Smrg ;; 1687706df26Smrg -scout) 1697706df26Smrg ;; 1707706df26Smrg -wrs) 1717706df26Smrg os=-vxworks 1727706df26Smrg basic_machine=$1 1737706df26Smrg ;; 1747706df26Smrg -chorusos*) 1757706df26Smrg os=-chorusos 1767706df26Smrg basic_machine=$1 1777706df26Smrg ;; 178b92e825aSmrg -chorusrdb) 179b92e825aSmrg os=-chorusrdb 1807706df26Smrg basic_machine=$1 181b92e825aSmrg ;; 1827706df26Smrg -hiux*) 1837706df26Smrg os=-hiuxwe2 1847706df26Smrg ;; 185047944f3Smrg -sco6) 186047944f3Smrg os=-sco5v6 187047944f3Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 188047944f3Smrg ;; 1897706df26Smrg -sco5) 1907706df26Smrg os=-sco3.2v5 1917706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1927706df26Smrg ;; 1937706df26Smrg -sco4) 1947706df26Smrg os=-sco3.2v4 1957706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1967706df26Smrg ;; 1977706df26Smrg -sco3.2.[4-9]*) 1987706df26Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1997706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2007706df26Smrg ;; 2017706df26Smrg -sco3.2v[4-9]*) 2027706df26Smrg # Don't forget version if it is 3.2v4 or newer. 2037706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2047706df26Smrg ;; 205047944f3Smrg -sco5v6*) 206047944f3Smrg # Don't forget version if it is 3.2v4 or newer. 207047944f3Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 208047944f3Smrg ;; 2097706df26Smrg -sco*) 2107706df26Smrg os=-sco3.2v2 2117706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2127706df26Smrg ;; 2137706df26Smrg -udk*) 2147706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2157706df26Smrg ;; 2167706df26Smrg -isc) 2177706df26Smrg os=-isc2.2 2187706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2197706df26Smrg ;; 2207706df26Smrg -clix*) 2217706df26Smrg basic_machine=clipper-intergraph 2227706df26Smrg ;; 2237706df26Smrg -isc*) 2247706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2257706df26Smrg ;; 2267706df26Smrg -lynx*) 2277706df26Smrg os=-lynxos 2287706df26Smrg ;; 2297706df26Smrg -ptx*) 2307706df26Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2317706df26Smrg ;; 2327706df26Smrg -windowsnt*) 2337706df26Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2347706df26Smrg ;; 2357706df26Smrg -psos*) 2367706df26Smrg os=-psos 2377706df26Smrg ;; 2387706df26Smrg -mint | -mint[0-9]*) 2397706df26Smrg basic_machine=m68k-atari 2407706df26Smrg os=-mint 2417706df26Smrg ;; 2427706df26Smrgesac 2437706df26Smrg 2447706df26Smrg# Decode aliases for certain CPU-COMPANY combinations. 2457706df26Smrgcase $basic_machine in 2467706df26Smrg # Recognize the basic CPU types without company name. 2477706df26Smrg # Some are omitted here because they have special meanings below. 2487706df26Smrg 1750a | 580 \ 2497706df26Smrg | a29k \ 2507706df26Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2517706df26Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 252047944f3Smrg | am33_2.0 \ 253047944f3Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 254b92e825aSmrg | be32 | be64 \ 255047944f3Smrg | bfin \ 2567706df26Smrg | c4x | clipper \ 2577706df26Smrg | d10v | d30v | dlx | dsp16xx \ 258b92e825aSmrg | epiphany \ 259047944f3Smrg | fido | fr30 | frv \ 2607706df26Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 261b92e825aSmrg | hexagon \ 2627706df26Smrg | i370 | i860 | i960 | ia64 \ 263047944f3Smrg | ip2k | iq2000 \ 264b92e825aSmrg | le32 | le64 \ 265b92e825aSmrg | lm32 \ 266047944f3Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 267b92e825aSmrg | maxq | mb | microblaze | mcore | mep | metag \ 2687706df26Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2697706df26Smrg | mips16 \ 2707706df26Smrg | mips64 | mips64el \ 271b92e825aSmrg | mips64octeon | mips64octeonel \ 2727706df26Smrg | mips64orion | mips64orionel \ 273b92e825aSmrg | mips64r5900 | mips64r5900el \ 274b92e825aSmrg | mips64vr | mips64vrel \ 2757706df26Smrg | mips64vr4100 | mips64vr4100el \ 2767706df26Smrg | mips64vr4300 | mips64vr4300el \ 2777706df26Smrg | mips64vr5000 | mips64vr5000el \ 278047944f3Smrg | mips64vr5900 | mips64vr5900el \ 2797706df26Smrg | mipsisa32 | mipsisa32el \ 2807706df26Smrg | mipsisa32r2 | mipsisa32r2el \ 2817706df26Smrg | mipsisa64 | mipsisa64el \ 282047944f3Smrg | mipsisa64r2 | mipsisa64r2el \ 2837706df26Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2847706df26Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 2857706df26Smrg | mipstx39 | mipstx39el \ 2867706df26Smrg | mn10200 | mn10300 \ 287b92e825aSmrg | moxie \ 288047944f3Smrg | mt \ 2897706df26Smrg | msp430 \ 290b92e825aSmrg | nds32 | nds32le | nds32be \ 291047944f3Smrg | nios | nios2 \ 2927706df26Smrg | ns16k | ns32k \ 293b92e825aSmrg | open8 \ 294047944f3Smrg | or32 \ 2957706df26Smrg | pdp10 | pdp11 | pj | pjl \ 296b92e825aSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 2977706df26Smrg | pyramid \ 298b92e825aSmrg | rl78 | rx \ 299047944f3Smrg | score \ 300b92e825aSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3017706df26Smrg | sh64 | sh64le \ 302047944f3Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 303047944f3Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 304b92e825aSmrg | spu \ 305b92e825aSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 306b92e825aSmrg | ubicom32 \ 307b92e825aSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3087706df26Smrg | we32k \ 309b92e825aSmrg | x86 | xc16x | xstormy16 | xtensa \ 310b92e825aSmrg | z8k | z80) 3117706df26Smrg basic_machine=$basic_machine-unknown 3127706df26Smrg ;; 313b92e825aSmrg c54x) 314b92e825aSmrg basic_machine=tic54x-unknown 315b92e825aSmrg ;; 316b92e825aSmrg c55x) 317b92e825aSmrg basic_machine=tic55x-unknown 318b92e825aSmrg ;; 319b92e825aSmrg c6x) 320b92e825aSmrg basic_machine=tic6x-unknown 321b92e825aSmrg ;; 322b92e825aSmrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 3237706df26Smrg basic_machine=$basic_machine-unknown 3247706df26Smrg os=-none 3257706df26Smrg ;; 3267706df26Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3277706df26Smrg ;; 328047944f3Smrg ms1) 329047944f3Smrg basic_machine=mt-unknown 330047944f3Smrg ;; 3317706df26Smrg 332b92e825aSmrg strongarm | thumb | xscale) 333b92e825aSmrg basic_machine=arm-unknown 334b92e825aSmrg ;; 335b92e825aSmrg 336b92e825aSmrg xscaleeb) 337b92e825aSmrg basic_machine=armeb-unknown 338b92e825aSmrg ;; 339b92e825aSmrg 340b92e825aSmrg xscaleel) 341b92e825aSmrg basic_machine=armel-unknown 342b92e825aSmrg ;; 343b92e825aSmrg 3447706df26Smrg # We use `pc' rather than `unknown' 3457706df26Smrg # because (1) that's what they normally are, and 3467706df26Smrg # (2) the word "unknown" tends to confuse beginning users. 3477706df26Smrg i*86 | x86_64) 3487706df26Smrg basic_machine=$basic_machine-pc 3497706df26Smrg ;; 3507706df26Smrg # Object if more than one company name word. 3517706df26Smrg *-*-*) 3527706df26Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3537706df26Smrg exit 1 3547706df26Smrg ;; 3557706df26Smrg # Recognize the basic CPU types with company name. 3567706df26Smrg 580-* \ 3577706df26Smrg | a29k-* \ 3587706df26Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3597706df26Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 3607706df26Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 3617706df26Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 362047944f3Smrg | avr-* | avr32-* \ 363b92e825aSmrg | be32-* | be64-* \ 364047944f3Smrg | bfin-* | bs2000-* \ 365b92e825aSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 366047944f3Smrg | clipper-* | craynv-* | cydra-* \ 3677706df26Smrg | d10v-* | d30v-* | dlx-* \ 3687706df26Smrg | elxsi-* \ 369047944f3Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3707706df26Smrg | h8300-* | h8500-* \ 3717706df26Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 372b92e825aSmrg | hexagon-* \ 3737706df26Smrg | i*86-* | i860-* | i960-* | ia64-* \ 374047944f3Smrg | ip2k-* | iq2000-* \ 375b92e825aSmrg | le32-* | le64-* \ 376b92e825aSmrg | lm32-* \ 377047944f3Smrg | m32c-* | m32r-* | m32rle-* \ 3787706df26Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 379b92e825aSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 3807706df26Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3817706df26Smrg | mips16-* \ 3827706df26Smrg | mips64-* | mips64el-* \ 383b92e825aSmrg | mips64octeon-* | mips64octeonel-* \ 3847706df26Smrg | mips64orion-* | mips64orionel-* \ 385b92e825aSmrg | mips64r5900-* | mips64r5900el-* \ 386b92e825aSmrg | mips64vr-* | mips64vrel-* \ 3877706df26Smrg | mips64vr4100-* | mips64vr4100el-* \ 3887706df26Smrg | mips64vr4300-* | mips64vr4300el-* \ 3897706df26Smrg | mips64vr5000-* | mips64vr5000el-* \ 390047944f3Smrg | mips64vr5900-* | mips64vr5900el-* \ 3917706df26Smrg | mipsisa32-* | mipsisa32el-* \ 3927706df26Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 3937706df26Smrg | mipsisa64-* | mipsisa64el-* \ 394047944f3Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 3957706df26Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 3967706df26Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 3977706df26Smrg | mipstx39-* | mipstx39el-* \ 398047944f3Smrg | mmix-* \ 399047944f3Smrg | mt-* \ 4007706df26Smrg | msp430-* \ 401b92e825aSmrg | nds32-* | nds32le-* | nds32be-* \ 402047944f3Smrg | nios-* | nios2-* \ 403047944f3Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 404b92e825aSmrg | open8-* \ 4057706df26Smrg | orion-* \ 4067706df26Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 407b92e825aSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4087706df26Smrg | pyramid-* \ 409b92e825aSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 410b92e825aSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4117706df26Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 412047944f3Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 413047944f3Smrg | sparclite-* \ 414b92e825aSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 415b92e825aSmrg | tahoe-* \ 4167706df26Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 417b92e825aSmrg | tile*-* \ 4187706df26Smrg | tron-* \ 419b92e825aSmrg | ubicom32-* \ 420b92e825aSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 421b92e825aSmrg | vax-* \ 4227706df26Smrg | we32k-* \ 423b92e825aSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 424047944f3Smrg | xstormy16-* | xtensa*-* \ 4257706df26Smrg | ymp-* \ 426b92e825aSmrg | z8k-* | z80-*) 4277706df26Smrg ;; 428047944f3Smrg # Recognize the basic CPU types without company name, with glob match. 429047944f3Smrg xtensa*) 430047944f3Smrg basic_machine=$basic_machine-unknown 431047944f3Smrg ;; 4327706df26Smrg # Recognize the various machine names and aliases which stand 4337706df26Smrg # for a CPU type and a company and sometimes even an OS. 4347706df26Smrg 386bsd) 4357706df26Smrg basic_machine=i386-unknown 4367706df26Smrg os=-bsd 4377706df26Smrg ;; 4387706df26Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4397706df26Smrg basic_machine=m68000-att 4407706df26Smrg ;; 4417706df26Smrg 3b*) 4427706df26Smrg basic_machine=we32k-att 4437706df26Smrg ;; 4447706df26Smrg a29khif) 4457706df26Smrg basic_machine=a29k-amd 4467706df26Smrg os=-udi 4477706df26Smrg ;; 448b92e825aSmrg abacus) 449047944f3Smrg basic_machine=abacus-unknown 450047944f3Smrg ;; 4517706df26Smrg adobe68k) 4527706df26Smrg basic_machine=m68010-adobe 4537706df26Smrg os=-scout 4547706df26Smrg ;; 4557706df26Smrg alliant | fx80) 4567706df26Smrg basic_machine=fx80-alliant 4577706df26Smrg ;; 4587706df26Smrg altos | altos3068) 4597706df26Smrg basic_machine=m68k-altos 4607706df26Smrg ;; 4617706df26Smrg am29k) 4627706df26Smrg basic_machine=a29k-none 4637706df26Smrg os=-bsd 4647706df26Smrg ;; 4657706df26Smrg amd64) 4667706df26Smrg basic_machine=x86_64-pc 4677706df26Smrg ;; 468047944f3Smrg amd64-*) 469047944f3Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 470047944f3Smrg ;; 4717706df26Smrg amdahl) 4727706df26Smrg basic_machine=580-amdahl 4737706df26Smrg os=-sysv 4747706df26Smrg ;; 4757706df26Smrg amiga | amiga-*) 4767706df26Smrg basic_machine=m68k-unknown 4777706df26Smrg ;; 4787706df26Smrg amigaos | amigados) 4797706df26Smrg basic_machine=m68k-unknown 4807706df26Smrg os=-amigaos 4817706df26Smrg ;; 4827706df26Smrg amigaunix | amix) 4837706df26Smrg basic_machine=m68k-unknown 4847706df26Smrg os=-sysv4 4857706df26Smrg ;; 4867706df26Smrg apollo68) 4877706df26Smrg basic_machine=m68k-apollo 4887706df26Smrg os=-sysv 4897706df26Smrg ;; 4907706df26Smrg apollo68bsd) 4917706df26Smrg basic_machine=m68k-apollo 4927706df26Smrg os=-bsd 4937706df26Smrg ;; 494b92e825aSmrg aros) 495b92e825aSmrg basic_machine=i386-pc 496b92e825aSmrg os=-aros 497b92e825aSmrg ;; 4987706df26Smrg aux) 4997706df26Smrg basic_machine=m68k-apple 5007706df26Smrg os=-aux 5017706df26Smrg ;; 5027706df26Smrg balance) 5037706df26Smrg basic_machine=ns32k-sequent 5047706df26Smrg os=-dynix 5057706df26Smrg ;; 506047944f3Smrg blackfin) 507047944f3Smrg basic_machine=bfin-unknown 508047944f3Smrg os=-linux 509047944f3Smrg ;; 510047944f3Smrg blackfin-*) 511047944f3Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 512047944f3Smrg os=-linux 513047944f3Smrg ;; 514b92e825aSmrg bluegene*) 515b92e825aSmrg basic_machine=powerpc-ibm 516b92e825aSmrg os=-cnk 517b92e825aSmrg ;; 518b92e825aSmrg c54x-*) 519b92e825aSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 520b92e825aSmrg ;; 521b92e825aSmrg c55x-*) 522b92e825aSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 523b92e825aSmrg ;; 524b92e825aSmrg c6x-*) 525b92e825aSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 526b92e825aSmrg ;; 5277706df26Smrg c90) 5287706df26Smrg basic_machine=c90-cray 5297706df26Smrg os=-unicos 5307706df26Smrg ;; 531b92e825aSmrg cegcc) 532b92e825aSmrg basic_machine=arm-unknown 533b92e825aSmrg os=-cegcc 534b92e825aSmrg ;; 5357706df26Smrg convex-c1) 5367706df26Smrg basic_machine=c1-convex 5377706df26Smrg os=-bsd 5387706df26Smrg ;; 5397706df26Smrg convex-c2) 5407706df26Smrg basic_machine=c2-convex 5417706df26Smrg os=-bsd 5427706df26Smrg ;; 5437706df26Smrg convex-c32) 5447706df26Smrg basic_machine=c32-convex 5457706df26Smrg os=-bsd 5467706df26Smrg ;; 5477706df26Smrg convex-c34) 5487706df26Smrg basic_machine=c34-convex 5497706df26Smrg os=-bsd 5507706df26Smrg ;; 5517706df26Smrg convex-c38) 5527706df26Smrg basic_machine=c38-convex 5537706df26Smrg os=-bsd 5547706df26Smrg ;; 5557706df26Smrg cray | j90) 5567706df26Smrg basic_machine=j90-cray 5577706df26Smrg os=-unicos 5587706df26Smrg ;; 559047944f3Smrg craynv) 560047944f3Smrg basic_machine=craynv-cray 561047944f3Smrg os=-unicosmp 562047944f3Smrg ;; 563b92e825aSmrg cr16 | cr16-*) 564047944f3Smrg basic_machine=cr16-unknown 565047944f3Smrg os=-elf 566047944f3Smrg ;; 5677706df26Smrg crds | unos) 5687706df26Smrg basic_machine=m68k-crds 5697706df26Smrg ;; 570047944f3Smrg crisv32 | crisv32-* | etraxfs*) 571047944f3Smrg basic_machine=crisv32-axis 572047944f3Smrg ;; 5737706df26Smrg cris | cris-* | etrax*) 5747706df26Smrg basic_machine=cris-axis 5757706df26Smrg ;; 576047944f3Smrg crx) 577047944f3Smrg basic_machine=crx-unknown 578047944f3Smrg os=-elf 579047944f3Smrg ;; 5807706df26Smrg da30 | da30-*) 5817706df26Smrg basic_machine=m68k-da30 5827706df26Smrg ;; 5837706df26Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5847706df26Smrg basic_machine=mips-dec 5857706df26Smrg ;; 5867706df26Smrg decsystem10* | dec10*) 5877706df26Smrg basic_machine=pdp10-dec 5887706df26Smrg os=-tops10 5897706df26Smrg ;; 5907706df26Smrg decsystem20* | dec20*) 5917706df26Smrg basic_machine=pdp10-dec 5927706df26Smrg os=-tops20 5937706df26Smrg ;; 5947706df26Smrg delta | 3300 | motorola-3300 | motorola-delta \ 5957706df26Smrg | 3300-motorola | delta-motorola) 5967706df26Smrg basic_machine=m68k-motorola 5977706df26Smrg ;; 5987706df26Smrg delta88) 5997706df26Smrg basic_machine=m88k-motorola 6007706df26Smrg os=-sysv3 6017706df26Smrg ;; 602b92e825aSmrg dicos) 603b92e825aSmrg basic_machine=i686-pc 604b92e825aSmrg os=-dicos 605b92e825aSmrg ;; 606047944f3Smrg djgpp) 607047944f3Smrg basic_machine=i586-pc 608047944f3Smrg os=-msdosdjgpp 609047944f3Smrg ;; 6107706df26Smrg dpx20 | dpx20-*) 6117706df26Smrg basic_machine=rs6000-bull 6127706df26Smrg os=-bosx 6137706df26Smrg ;; 6147706df26Smrg dpx2* | dpx2*-bull) 6157706df26Smrg basic_machine=m68k-bull 6167706df26Smrg os=-sysv3 6177706df26Smrg ;; 6187706df26Smrg ebmon29k) 6197706df26Smrg basic_machine=a29k-amd 6207706df26Smrg os=-ebmon 6217706df26Smrg ;; 6227706df26Smrg elxsi) 6237706df26Smrg basic_machine=elxsi-elxsi 6247706df26Smrg os=-bsd 6257706df26Smrg ;; 6267706df26Smrg encore | umax | mmax) 6277706df26Smrg basic_machine=ns32k-encore 6287706df26Smrg ;; 6297706df26Smrg es1800 | OSE68k | ose68k | ose | OSE) 6307706df26Smrg basic_machine=m68k-ericsson 6317706df26Smrg os=-ose 6327706df26Smrg ;; 6337706df26Smrg fx2800) 6347706df26Smrg basic_machine=i860-alliant 6357706df26Smrg ;; 6367706df26Smrg genix) 6377706df26Smrg basic_machine=ns32k-ns 6387706df26Smrg ;; 6397706df26Smrg gmicro) 6407706df26Smrg basic_machine=tron-gmicro 6417706df26Smrg os=-sysv 6427706df26Smrg ;; 6437706df26Smrg go32) 6447706df26Smrg basic_machine=i386-pc 6457706df26Smrg os=-go32 6467706df26Smrg ;; 6477706df26Smrg h3050r* | hiux*) 6487706df26Smrg basic_machine=hppa1.1-hitachi 6497706df26Smrg os=-hiuxwe2 6507706df26Smrg ;; 6517706df26Smrg h8300hms) 6527706df26Smrg basic_machine=h8300-hitachi 6537706df26Smrg os=-hms 6547706df26Smrg ;; 6557706df26Smrg h8300xray) 6567706df26Smrg basic_machine=h8300-hitachi 6577706df26Smrg os=-xray 6587706df26Smrg ;; 6597706df26Smrg h8500hms) 6607706df26Smrg basic_machine=h8500-hitachi 6617706df26Smrg os=-hms 6627706df26Smrg ;; 6637706df26Smrg harris) 6647706df26Smrg basic_machine=m88k-harris 6657706df26Smrg os=-sysv3 6667706df26Smrg ;; 6677706df26Smrg hp300-*) 6687706df26Smrg basic_machine=m68k-hp 6697706df26Smrg ;; 6707706df26Smrg hp300bsd) 6717706df26Smrg basic_machine=m68k-hp 6727706df26Smrg os=-bsd 6737706df26Smrg ;; 6747706df26Smrg hp300hpux) 6757706df26Smrg basic_machine=m68k-hp 6767706df26Smrg os=-hpux 6777706df26Smrg ;; 6787706df26Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6797706df26Smrg basic_machine=hppa1.0-hp 6807706df26Smrg ;; 6817706df26Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6827706df26Smrg basic_machine=m68000-hp 6837706df26Smrg ;; 6847706df26Smrg hp9k3[2-9][0-9]) 6857706df26Smrg basic_machine=m68k-hp 6867706df26Smrg ;; 6877706df26Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6887706df26Smrg basic_machine=hppa1.0-hp 6897706df26Smrg ;; 6907706df26Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 6917706df26Smrg basic_machine=hppa1.1-hp 6927706df26Smrg ;; 6937706df26Smrg hp9k78[0-9] | hp78[0-9]) 6947706df26Smrg # FIXME: really hppa2.0-hp 6957706df26Smrg basic_machine=hppa1.1-hp 6967706df26Smrg ;; 6977706df26Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 6987706df26Smrg # FIXME: really hppa2.0-hp 6997706df26Smrg basic_machine=hppa1.1-hp 7007706df26Smrg ;; 7017706df26Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7027706df26Smrg basic_machine=hppa1.1-hp 7037706df26Smrg ;; 7047706df26Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7057706df26Smrg basic_machine=hppa1.0-hp 7067706df26Smrg ;; 7077706df26Smrg hppa-next) 7087706df26Smrg os=-nextstep3 7097706df26Smrg ;; 7107706df26Smrg hppaosf) 7117706df26Smrg basic_machine=hppa1.1-hp 7127706df26Smrg os=-osf 7137706df26Smrg ;; 7147706df26Smrg hppro) 7157706df26Smrg basic_machine=hppa1.1-hp 7167706df26Smrg os=-proelf 7177706df26Smrg ;; 7187706df26Smrg i370-ibm* | ibm*) 7197706df26Smrg basic_machine=i370-ibm 7207706df26Smrg ;; 7217706df26Smrg i*86v32) 7227706df26Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7237706df26Smrg os=-sysv32 7247706df26Smrg ;; 7257706df26Smrg i*86v4*) 7267706df26Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7277706df26Smrg os=-sysv4 7287706df26Smrg ;; 7297706df26Smrg i*86v) 7307706df26Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7317706df26Smrg os=-sysv 7327706df26Smrg ;; 7337706df26Smrg i*86sol2) 7347706df26Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7357706df26Smrg os=-solaris2 7367706df26Smrg ;; 7377706df26Smrg i386mach) 7387706df26Smrg basic_machine=i386-mach 7397706df26Smrg os=-mach 7407706df26Smrg ;; 7417706df26Smrg i386-vsta | vsta) 7427706df26Smrg basic_machine=i386-unknown 7437706df26Smrg os=-vsta 7447706df26Smrg ;; 7457706df26Smrg iris | iris4d) 7467706df26Smrg basic_machine=mips-sgi 7477706df26Smrg case $os in 7487706df26Smrg -irix*) 7497706df26Smrg ;; 7507706df26Smrg *) 7517706df26Smrg os=-irix4 7527706df26Smrg ;; 7537706df26Smrg esac 7547706df26Smrg ;; 7557706df26Smrg isi68 | isi) 7567706df26Smrg basic_machine=m68k-isi 7577706df26Smrg os=-sysv 7587706df26Smrg ;; 759047944f3Smrg m68knommu) 760047944f3Smrg basic_machine=m68k-unknown 761047944f3Smrg os=-linux 762047944f3Smrg ;; 763047944f3Smrg m68knommu-*) 764047944f3Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 765047944f3Smrg os=-linux 766047944f3Smrg ;; 7677706df26Smrg m88k-omron*) 7687706df26Smrg basic_machine=m88k-omron 7697706df26Smrg ;; 7707706df26Smrg magnum | m3230) 7717706df26Smrg basic_machine=mips-mips 7727706df26Smrg os=-sysv 7737706df26Smrg ;; 7747706df26Smrg merlin) 7757706df26Smrg basic_machine=ns32k-utek 7767706df26Smrg os=-sysv 7777706df26Smrg ;; 778b92e825aSmrg microblaze) 779b92e825aSmrg basic_machine=microblaze-xilinx 780b92e825aSmrg ;; 7817706df26Smrg mingw32) 7827706df26Smrg basic_machine=i386-pc 7837706df26Smrg os=-mingw32 7847706df26Smrg ;; 785047944f3Smrg mingw32ce) 786047944f3Smrg basic_machine=arm-unknown 787047944f3Smrg os=-mingw32ce 788047944f3Smrg ;; 7897706df26Smrg miniframe) 7907706df26Smrg basic_machine=m68000-convergent 7917706df26Smrg ;; 7927706df26Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 7937706df26Smrg basic_machine=m68k-atari 7947706df26Smrg os=-mint 7957706df26Smrg ;; 7967706df26Smrg mips3*-*) 7977706df26Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 7987706df26Smrg ;; 7997706df26Smrg mips3*) 8007706df26Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8017706df26Smrg ;; 8027706df26Smrg monitor) 8037706df26Smrg basic_machine=m68k-rom68k 8047706df26Smrg os=-coff 8057706df26Smrg ;; 8067706df26Smrg morphos) 8077706df26Smrg basic_machine=powerpc-unknown 8087706df26Smrg os=-morphos 8097706df26Smrg ;; 8107706df26Smrg msdos) 8117706df26Smrg basic_machine=i386-pc 8127706df26Smrg os=-msdos 8137706df26Smrg ;; 814047944f3Smrg ms1-*) 815047944f3Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 816047944f3Smrg ;; 817b92e825aSmrg msys) 818b92e825aSmrg basic_machine=i386-pc 819b92e825aSmrg os=-msys 820b92e825aSmrg ;; 8217706df26Smrg mvs) 8227706df26Smrg basic_machine=i370-ibm 8237706df26Smrg os=-mvs 8247706df26Smrg ;; 825b92e825aSmrg nacl) 826b92e825aSmrg basic_machine=le32-unknown 827b92e825aSmrg os=-nacl 828b92e825aSmrg ;; 8297706df26Smrg ncr3000) 8307706df26Smrg basic_machine=i486-ncr 8317706df26Smrg os=-sysv4 8327706df26Smrg ;; 8337706df26Smrg netbsd386) 8347706df26Smrg basic_machine=i386-unknown 8357706df26Smrg os=-netbsd 8367706df26Smrg ;; 8377706df26Smrg netwinder) 8387706df26Smrg basic_machine=armv4l-rebel 8397706df26Smrg os=-linux 8407706df26Smrg ;; 8417706df26Smrg news | news700 | news800 | news900) 8427706df26Smrg basic_machine=m68k-sony 8437706df26Smrg os=-newsos 8447706df26Smrg ;; 8457706df26Smrg news1000) 8467706df26Smrg basic_machine=m68030-sony 8477706df26Smrg os=-newsos 8487706df26Smrg ;; 8497706df26Smrg news-3600 | risc-news) 8507706df26Smrg basic_machine=mips-sony 8517706df26Smrg os=-newsos 8527706df26Smrg ;; 8537706df26Smrg necv70) 8547706df26Smrg basic_machine=v70-nec 8557706df26Smrg os=-sysv 8567706df26Smrg ;; 8577706df26Smrg next | m*-next ) 8587706df26Smrg basic_machine=m68k-next 8597706df26Smrg case $os in 8607706df26Smrg -nextstep* ) 8617706df26Smrg ;; 8627706df26Smrg -ns2*) 8637706df26Smrg os=-nextstep2 8647706df26Smrg ;; 8657706df26Smrg *) 8667706df26Smrg os=-nextstep3 8677706df26Smrg ;; 8687706df26Smrg esac 8697706df26Smrg ;; 8707706df26Smrg nh3000) 8717706df26Smrg basic_machine=m68k-harris 8727706df26Smrg os=-cxux 8737706df26Smrg ;; 8747706df26Smrg nh[45]000) 8757706df26Smrg basic_machine=m88k-harris 8767706df26Smrg os=-cxux 8777706df26Smrg ;; 8787706df26Smrg nindy960) 8797706df26Smrg basic_machine=i960-intel 8807706df26Smrg os=-nindy 8817706df26Smrg ;; 8827706df26Smrg mon960) 8837706df26Smrg basic_machine=i960-intel 8847706df26Smrg os=-mon960 8857706df26Smrg ;; 8867706df26Smrg nonstopux) 8877706df26Smrg basic_machine=mips-compaq 8887706df26Smrg os=-nonstopux 8897706df26Smrg ;; 8907706df26Smrg np1) 8917706df26Smrg basic_machine=np1-gould 8927706df26Smrg ;; 893b92e825aSmrg neo-tandem) 894b92e825aSmrg basic_machine=neo-tandem 895b92e825aSmrg ;; 896b92e825aSmrg nse-tandem) 897b92e825aSmrg basic_machine=nse-tandem 898b92e825aSmrg ;; 8997706df26Smrg nsr-tandem) 9007706df26Smrg basic_machine=nsr-tandem 9017706df26Smrg ;; 9027706df26Smrg op50n-* | op60c-*) 9037706df26Smrg basic_machine=hppa1.1-oki 9047706df26Smrg os=-proelf 9057706df26Smrg ;; 906047944f3Smrg openrisc | openrisc-*) 9077706df26Smrg basic_machine=or32-unknown 908047944f3Smrg ;; 909047944f3Smrg os400) 910047944f3Smrg basic_machine=powerpc-ibm 911047944f3Smrg os=-os400 9127706df26Smrg ;; 9137706df26Smrg OSE68000 | ose68000) 9147706df26Smrg basic_machine=m68000-ericsson 9157706df26Smrg os=-ose 9167706df26Smrg ;; 9177706df26Smrg os68k) 9187706df26Smrg basic_machine=m68k-none 9197706df26Smrg os=-os68k 9207706df26Smrg ;; 9217706df26Smrg pa-hitachi) 9227706df26Smrg basic_machine=hppa1.1-hitachi 9237706df26Smrg os=-hiuxwe2 9247706df26Smrg ;; 9257706df26Smrg paragon) 9267706df26Smrg basic_machine=i860-intel 9277706df26Smrg os=-osf 9287706df26Smrg ;; 929047944f3Smrg parisc) 930047944f3Smrg basic_machine=hppa-unknown 931047944f3Smrg os=-linux 932047944f3Smrg ;; 933047944f3Smrg parisc-*) 934047944f3Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 935047944f3Smrg os=-linux 936047944f3Smrg ;; 9377706df26Smrg pbd) 9387706df26Smrg basic_machine=sparc-tti 9397706df26Smrg ;; 9407706df26Smrg pbb) 9417706df26Smrg basic_machine=m68k-tti 9427706df26Smrg ;; 9437706df26Smrg pc532 | pc532-*) 9447706df26Smrg basic_machine=ns32k-pc532 9457706df26Smrg ;; 946047944f3Smrg pc98) 947047944f3Smrg basic_machine=i386-pc 948047944f3Smrg ;; 949047944f3Smrg pc98-*) 950047944f3Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 951047944f3Smrg ;; 9527706df26Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9537706df26Smrg basic_machine=i586-pc 9547706df26Smrg ;; 9557706df26Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9567706df26Smrg basic_machine=i686-pc 9577706df26Smrg ;; 9587706df26Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9597706df26Smrg basic_machine=i686-pc 9607706df26Smrg ;; 9617706df26Smrg pentium4) 9627706df26Smrg basic_machine=i786-pc 9637706df26Smrg ;; 9647706df26Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9657706df26Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9667706df26Smrg ;; 9677706df26Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9687706df26Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9697706df26Smrg ;; 9707706df26Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9717706df26Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9727706df26Smrg ;; 9737706df26Smrg pentium4-*) 9747706df26Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9757706df26Smrg ;; 9767706df26Smrg pn) 9777706df26Smrg basic_machine=pn-gould 9787706df26Smrg ;; 9797706df26Smrg power) basic_machine=power-ibm 9807706df26Smrg ;; 981b92e825aSmrg ppc | ppcbe) basic_machine=powerpc-unknown 9827706df26Smrg ;; 983b92e825aSmrg ppc-* | ppcbe-*) 984b92e825aSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 9857706df26Smrg ;; 9867706df26Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 9877706df26Smrg basic_machine=powerpcle-unknown 9887706df26Smrg ;; 9897706df26Smrg ppcle-* | powerpclittle-*) 9907706df26Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 9917706df26Smrg ;; 9927706df26Smrg ppc64) basic_machine=powerpc64-unknown 9937706df26Smrg ;; 9947706df26Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 9957706df26Smrg ;; 9967706df26Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 9977706df26Smrg basic_machine=powerpc64le-unknown 9987706df26Smrg ;; 9997706df26Smrg ppc64le-* | powerpc64little-*) 10007706df26Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10017706df26Smrg ;; 10027706df26Smrg ps2) 10037706df26Smrg basic_machine=i386-ibm 10047706df26Smrg ;; 10057706df26Smrg pw32) 10067706df26Smrg basic_machine=i586-unknown 10077706df26Smrg os=-pw32 10087706df26Smrg ;; 1009047944f3Smrg rdos) 1010047944f3Smrg basic_machine=i386-pc 1011047944f3Smrg os=-rdos 1012047944f3Smrg ;; 10137706df26Smrg rom68k) 10147706df26Smrg basic_machine=m68k-rom68k 10157706df26Smrg os=-coff 10167706df26Smrg ;; 10177706df26Smrg rm[46]00) 10187706df26Smrg basic_machine=mips-siemens 10197706df26Smrg ;; 10207706df26Smrg rtpc | rtpc-*) 10217706df26Smrg basic_machine=romp-ibm 10227706df26Smrg ;; 1023047944f3Smrg s390 | s390-*) 1024047944f3Smrg basic_machine=s390-ibm 1025047944f3Smrg ;; 1026047944f3Smrg s390x | s390x-*) 1027047944f3Smrg basic_machine=s390x-ibm 1028047944f3Smrg ;; 10297706df26Smrg sa29200) 10307706df26Smrg basic_machine=a29k-amd 10317706df26Smrg os=-udi 10327706df26Smrg ;; 10337706df26Smrg sb1) 10347706df26Smrg basic_machine=mipsisa64sb1-unknown 10357706df26Smrg ;; 10367706df26Smrg sb1el) 10377706df26Smrg basic_machine=mipsisa64sb1el-unknown 10387706df26Smrg ;; 1039047944f3Smrg sde) 1040047944f3Smrg basic_machine=mipsisa32-sde 1041047944f3Smrg os=-elf 1042047944f3Smrg ;; 10437706df26Smrg sei) 10447706df26Smrg basic_machine=mips-sei 10457706df26Smrg os=-seiux 10467706df26Smrg ;; 10477706df26Smrg sequent) 10487706df26Smrg basic_machine=i386-sequent 10497706df26Smrg ;; 10507706df26Smrg sh) 10517706df26Smrg basic_machine=sh-hitachi 10527706df26Smrg os=-hms 10537706df26Smrg ;; 1054047944f3Smrg sh5el) 1055047944f3Smrg basic_machine=sh5le-unknown 1056047944f3Smrg ;; 10577706df26Smrg sh64) 10587706df26Smrg basic_machine=sh64-unknown 10597706df26Smrg ;; 10607706df26Smrg sparclite-wrs | simso-wrs) 10617706df26Smrg basic_machine=sparclite-wrs 10627706df26Smrg os=-vxworks 10637706df26Smrg ;; 10647706df26Smrg sps7) 10657706df26Smrg basic_machine=m68k-bull 10667706df26Smrg os=-sysv2 10677706df26Smrg ;; 10687706df26Smrg spur) 10697706df26Smrg basic_machine=spur-unknown 10707706df26Smrg ;; 10717706df26Smrg st2000) 10727706df26Smrg basic_machine=m68k-tandem 10737706df26Smrg ;; 10747706df26Smrg stratus) 10757706df26Smrg basic_machine=i860-stratus 10767706df26Smrg os=-sysv4 10777706df26Smrg ;; 1078b92e825aSmrg strongarm-* | thumb-*) 1079b92e825aSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1080b92e825aSmrg ;; 10817706df26Smrg sun2) 10827706df26Smrg basic_machine=m68000-sun 10837706df26Smrg ;; 10847706df26Smrg sun2os3) 10857706df26Smrg basic_machine=m68000-sun 10867706df26Smrg os=-sunos3 10877706df26Smrg ;; 10887706df26Smrg sun2os4) 10897706df26Smrg basic_machine=m68000-sun 10907706df26Smrg os=-sunos4 10917706df26Smrg ;; 10927706df26Smrg sun3os3) 10937706df26Smrg basic_machine=m68k-sun 10947706df26Smrg os=-sunos3 10957706df26Smrg ;; 10967706df26Smrg sun3os4) 10977706df26Smrg basic_machine=m68k-sun 10987706df26Smrg os=-sunos4 10997706df26Smrg ;; 11007706df26Smrg sun4os3) 11017706df26Smrg basic_machine=sparc-sun 11027706df26Smrg os=-sunos3 11037706df26Smrg ;; 11047706df26Smrg sun4os4) 11057706df26Smrg basic_machine=sparc-sun 11067706df26Smrg os=-sunos4 11077706df26Smrg ;; 11087706df26Smrg sun4sol2) 11097706df26Smrg basic_machine=sparc-sun 11107706df26Smrg os=-solaris2 11117706df26Smrg ;; 11127706df26Smrg sun3 | sun3-*) 11137706df26Smrg basic_machine=m68k-sun 11147706df26Smrg ;; 11157706df26Smrg sun4) 11167706df26Smrg basic_machine=sparc-sun 11177706df26Smrg ;; 11187706df26Smrg sun386 | sun386i | roadrunner) 11197706df26Smrg basic_machine=i386-sun 11207706df26Smrg ;; 11217706df26Smrg sv1) 11227706df26Smrg basic_machine=sv1-cray 11237706df26Smrg os=-unicos 11247706df26Smrg ;; 11257706df26Smrg symmetry) 11267706df26Smrg basic_machine=i386-sequent 11277706df26Smrg os=-dynix 11287706df26Smrg ;; 11297706df26Smrg t3e) 11307706df26Smrg basic_machine=alphaev5-cray 11317706df26Smrg os=-unicos 11327706df26Smrg ;; 11337706df26Smrg t90) 11347706df26Smrg basic_machine=t90-cray 11357706df26Smrg os=-unicos 11367706df26Smrg ;; 1137047944f3Smrg tile*) 1138b92e825aSmrg basic_machine=$basic_machine-unknown 1139047944f3Smrg os=-linux-gnu 1140047944f3Smrg ;; 11417706df26Smrg tx39) 11427706df26Smrg basic_machine=mipstx39-unknown 11437706df26Smrg ;; 11447706df26Smrg tx39el) 11457706df26Smrg basic_machine=mipstx39el-unknown 11467706df26Smrg ;; 11477706df26Smrg toad1) 11487706df26Smrg basic_machine=pdp10-xkl 11497706df26Smrg os=-tops20 11507706df26Smrg ;; 11517706df26Smrg tower | tower-32) 11527706df26Smrg basic_machine=m68k-ncr 11537706df26Smrg ;; 1154047944f3Smrg tpf) 1155047944f3Smrg basic_machine=s390x-ibm 1156047944f3Smrg os=-tpf 1157047944f3Smrg ;; 11587706df26Smrg udi29k) 11597706df26Smrg basic_machine=a29k-amd 11607706df26Smrg os=-udi 11617706df26Smrg ;; 11627706df26Smrg ultra3) 11637706df26Smrg basic_machine=a29k-nyu 11647706df26Smrg os=-sym1 11657706df26Smrg ;; 11667706df26Smrg v810 | necv810) 11677706df26Smrg basic_machine=v810-nec 11687706df26Smrg os=-none 11697706df26Smrg ;; 11707706df26Smrg vaxv) 11717706df26Smrg basic_machine=vax-dec 11727706df26Smrg os=-sysv 11737706df26Smrg ;; 11747706df26Smrg vms) 11757706df26Smrg basic_machine=vax-dec 11767706df26Smrg os=-vms 11777706df26Smrg ;; 11787706df26Smrg vpp*|vx|vx-*) 11797706df26Smrg basic_machine=f301-fujitsu 11807706df26Smrg ;; 11817706df26Smrg vxworks960) 11827706df26Smrg basic_machine=i960-wrs 11837706df26Smrg os=-vxworks 11847706df26Smrg ;; 11857706df26Smrg vxworks68) 11867706df26Smrg basic_machine=m68k-wrs 11877706df26Smrg os=-vxworks 11887706df26Smrg ;; 11897706df26Smrg vxworks29k) 11907706df26Smrg basic_machine=a29k-wrs 11917706df26Smrg os=-vxworks 11927706df26Smrg ;; 11937706df26Smrg w65*) 11947706df26Smrg basic_machine=w65-wdc 11957706df26Smrg os=-none 11967706df26Smrg ;; 11977706df26Smrg w89k-*) 11987706df26Smrg basic_machine=hppa1.1-winbond 11997706df26Smrg os=-proelf 12007706df26Smrg ;; 1201047944f3Smrg xbox) 1202047944f3Smrg basic_machine=i686-pc 1203047944f3Smrg os=-mingw32 1204047944f3Smrg ;; 12057706df26Smrg xps | xps100) 12067706df26Smrg basic_machine=xps100-honeywell 12077706df26Smrg ;; 1208b92e825aSmrg xscale-* | xscalee[bl]-*) 1209b92e825aSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1210b92e825aSmrg ;; 12117706df26Smrg ymp) 12127706df26Smrg basic_machine=ymp-cray 12137706df26Smrg os=-unicos 12147706df26Smrg ;; 12157706df26Smrg z8k-*-coff) 12167706df26Smrg basic_machine=z8k-unknown 12177706df26Smrg os=-sim 12187706df26Smrg ;; 1219b92e825aSmrg z80-*-coff) 1220b92e825aSmrg basic_machine=z80-unknown 1221b92e825aSmrg os=-sim 1222b92e825aSmrg ;; 12237706df26Smrg none) 12247706df26Smrg basic_machine=none-none 12257706df26Smrg os=-none 12267706df26Smrg ;; 12277706df26Smrg 12287706df26Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12297706df26Smrg# some cases the only manufacturer, in others, it is the most popular. 12307706df26Smrg w89k) 12317706df26Smrg basic_machine=hppa1.1-winbond 12327706df26Smrg ;; 12337706df26Smrg op50n) 12347706df26Smrg basic_machine=hppa1.1-oki 12357706df26Smrg ;; 12367706df26Smrg op60c) 12377706df26Smrg basic_machine=hppa1.1-oki 12387706df26Smrg ;; 12397706df26Smrg romp) 12407706df26Smrg basic_machine=romp-ibm 12417706df26Smrg ;; 1242047944f3Smrg mmix) 1243047944f3Smrg basic_machine=mmix-knuth 1244047944f3Smrg ;; 12457706df26Smrg rs6000) 12467706df26Smrg basic_machine=rs6000-ibm 12477706df26Smrg ;; 12487706df26Smrg vax) 12497706df26Smrg basic_machine=vax-dec 12507706df26Smrg ;; 12517706df26Smrg pdp10) 12527706df26Smrg # there are many clones, so DEC is not a safe bet 12537706df26Smrg basic_machine=pdp10-unknown 12547706df26Smrg ;; 12557706df26Smrg pdp11) 12567706df26Smrg basic_machine=pdp11-dec 12577706df26Smrg ;; 12587706df26Smrg we32k) 12597706df26Smrg basic_machine=we32k-att 12607706df26Smrg ;; 1261b92e825aSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12627706df26Smrg basic_machine=sh-unknown 12637706df26Smrg ;; 1264047944f3Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12657706df26Smrg basic_machine=sparc-sun 12667706df26Smrg ;; 12677706df26Smrg cydra) 12687706df26Smrg basic_machine=cydra-cydrome 12697706df26Smrg ;; 12707706df26Smrg orion) 12717706df26Smrg basic_machine=orion-highlevel 12727706df26Smrg ;; 12737706df26Smrg orion105) 12747706df26Smrg basic_machine=clipper-highlevel 12757706df26Smrg ;; 12767706df26Smrg mac | mpw | mac-mpw) 12777706df26Smrg basic_machine=m68k-apple 12787706df26Smrg ;; 12797706df26Smrg pmac | pmac-mpw) 12807706df26Smrg basic_machine=powerpc-apple 12817706df26Smrg ;; 12827706df26Smrg *-unknown) 12837706df26Smrg # Make sure to match an already-canonicalized machine name. 12847706df26Smrg ;; 12857706df26Smrg *) 12867706df26Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 12877706df26Smrg exit 1 12887706df26Smrg ;; 12897706df26Smrgesac 12907706df26Smrg 12917706df26Smrg# Here we canonicalize certain aliases for manufacturers. 12927706df26Smrgcase $basic_machine in 12937706df26Smrg *-digital*) 12947706df26Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 12957706df26Smrg ;; 12967706df26Smrg *-commodore*) 12977706df26Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 12987706df26Smrg ;; 12997706df26Smrg *) 13007706df26Smrg ;; 13017706df26Smrgesac 13027706df26Smrg 13037706df26Smrg# Decode manufacturer-specific aliases for certain operating systems. 13047706df26Smrg 13057706df26Smrgif [ x"$os" != x"" ] 13067706df26Smrgthen 13077706df26Smrgcase $os in 1308b92e825aSmrg # First match some system type aliases 1309b92e825aSmrg # that might get confused with valid system types. 13107706df26Smrg # -solaris* is a basic system type, with this one exception. 1311b92e825aSmrg -auroraux) 1312b92e825aSmrg os=-auroraux 1313b92e825aSmrg ;; 13147706df26Smrg -solaris1 | -solaris1.*) 13157706df26Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13167706df26Smrg ;; 13177706df26Smrg -solaris) 13187706df26Smrg os=-solaris2 13197706df26Smrg ;; 13207706df26Smrg -svr4*) 13217706df26Smrg os=-sysv4 13227706df26Smrg ;; 13237706df26Smrg -unixware*) 13247706df26Smrg os=-sysv4.2uw 13257706df26Smrg ;; 13267706df26Smrg -gnu/linux*) 13277706df26Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13287706df26Smrg ;; 13297706df26Smrg # First accept the basic system types. 13307706df26Smrg # The portable systems comes first. 13317706df26Smrg # Each alternative MUST END IN A *, to match a version number. 13327706df26Smrg # -sysv* is not here because it comes later, after sysvr4. 13337706df26Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1334b92e825aSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1335b92e825aSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1336b92e825aSmrg | -sym* | -kopensolaris* \ 13377706df26Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1338b92e825aSmrg | -aos* | -aros* \ 13397706df26Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13407706df26Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1341047944f3Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1342047944f3Smrg | -openbsd* | -solidbsd* \ 1343047944f3Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1344047944f3Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13457706df26Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13467706df26Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1347b92e825aSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 1348b92e825aSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1349b92e825aSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 1350b92e825aSmrg | -linux-newlib* | -linux-uclibc* \ 1351047944f3Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13527706df26Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13537706df26Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13547706df26Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13557706df26Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13567706df26Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1357047944f3Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1358b92e825aSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13597706df26Smrg # Remember, each alternative MUST END IN *, to match a version number. 13607706df26Smrg ;; 13617706df26Smrg -qnx*) 13627706df26Smrg case $basic_machine in 13637706df26Smrg x86-* | i*86-*) 13647706df26Smrg ;; 13657706df26Smrg *) 13667706df26Smrg os=-nto$os 13677706df26Smrg ;; 13687706df26Smrg esac 13697706df26Smrg ;; 13707706df26Smrg -nto-qnx*) 13717706df26Smrg ;; 13727706df26Smrg -nto*) 13737706df26Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13747706df26Smrg ;; 13757706df26Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1376047944f3Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13777706df26Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13787706df26Smrg ;; 13797706df26Smrg -mac*) 13807706df26Smrg os=`echo $os | sed -e 's|mac|macos|'` 13817706df26Smrg ;; 1382047944f3Smrg -linux-dietlibc) 1383047944f3Smrg os=-linux-dietlibc 1384047944f3Smrg ;; 13857706df26Smrg -linux*) 13867706df26Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 13877706df26Smrg ;; 13887706df26Smrg -sunos5*) 13897706df26Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 13907706df26Smrg ;; 13917706df26Smrg -sunos6*) 13927706df26Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 13937706df26Smrg ;; 13947706df26Smrg -opened*) 13957706df26Smrg os=-openedition 13967706df26Smrg ;; 1397b92e825aSmrg -os400*) 1398047944f3Smrg os=-os400 1399047944f3Smrg ;; 14007706df26Smrg -wince*) 14017706df26Smrg os=-wince 14027706df26Smrg ;; 14037706df26Smrg -osfrose*) 14047706df26Smrg os=-osfrose 14057706df26Smrg ;; 14067706df26Smrg -osf*) 14077706df26Smrg os=-osf 14087706df26Smrg ;; 14097706df26Smrg -utek*) 14107706df26Smrg os=-bsd 14117706df26Smrg ;; 14127706df26Smrg -dynix*) 14137706df26Smrg os=-bsd 14147706df26Smrg ;; 14157706df26Smrg -acis*) 14167706df26Smrg os=-aos 14177706df26Smrg ;; 14187706df26Smrg -atheos*) 14197706df26Smrg os=-atheos 14207706df26Smrg ;; 1421047944f3Smrg -syllable*) 1422047944f3Smrg os=-syllable 1423047944f3Smrg ;; 14247706df26Smrg -386bsd) 14257706df26Smrg os=-bsd 14267706df26Smrg ;; 14277706df26Smrg -ctix* | -uts*) 14287706df26Smrg os=-sysv 14297706df26Smrg ;; 14307706df26Smrg -nova*) 14317706df26Smrg os=-rtmk-nova 14327706df26Smrg ;; 14337706df26Smrg -ns2 ) 14347706df26Smrg os=-nextstep2 14357706df26Smrg ;; 14367706df26Smrg -nsk*) 14377706df26Smrg os=-nsk 14387706df26Smrg ;; 14397706df26Smrg # Preserve the version number of sinix5. 14407706df26Smrg -sinix5.*) 14417706df26Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14427706df26Smrg ;; 14437706df26Smrg -sinix*) 14447706df26Smrg os=-sysv4 14457706df26Smrg ;; 1446b92e825aSmrg -tpf*) 1447047944f3Smrg os=-tpf 1448047944f3Smrg ;; 14497706df26Smrg -triton*) 14507706df26Smrg os=-sysv3 14517706df26Smrg ;; 14527706df26Smrg -oss*) 14537706df26Smrg os=-sysv3 14547706df26Smrg ;; 14557706df26Smrg -svr4) 14567706df26Smrg os=-sysv4 14577706df26Smrg ;; 14587706df26Smrg -svr3) 14597706df26Smrg os=-sysv3 14607706df26Smrg ;; 14617706df26Smrg -sysvr4) 14627706df26Smrg os=-sysv4 14637706df26Smrg ;; 14647706df26Smrg # This must come after -sysvr4. 14657706df26Smrg -sysv*) 14667706df26Smrg ;; 14677706df26Smrg -ose*) 14687706df26Smrg os=-ose 14697706df26Smrg ;; 14707706df26Smrg -es1800*) 14717706df26Smrg os=-ose 14727706df26Smrg ;; 14737706df26Smrg -xenix) 14747706df26Smrg os=-xenix 14757706df26Smrg ;; 14767706df26Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14777706df26Smrg os=-mint 14787706df26Smrg ;; 14797706df26Smrg -aros*) 14807706df26Smrg os=-aros 14817706df26Smrg ;; 14827706df26Smrg -kaos*) 14837706df26Smrg os=-kaos 14847706df26Smrg ;; 1485047944f3Smrg -zvmoe) 1486047944f3Smrg os=-zvmoe 1487047944f3Smrg ;; 1488b92e825aSmrg -dicos*) 1489b92e825aSmrg os=-dicos 1490b92e825aSmrg ;; 1491b92e825aSmrg -nacl*) 1492b92e825aSmrg ;; 14937706df26Smrg -none) 14947706df26Smrg ;; 14957706df26Smrg *) 14967706df26Smrg # Get rid of the `-' at the beginning of $os. 14977706df26Smrg os=`echo $os | sed 's/[^-]*-//'` 14987706df26Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 14997706df26Smrg exit 1 15007706df26Smrg ;; 15017706df26Smrgesac 15027706df26Smrgelse 15037706df26Smrg 15047706df26Smrg# Here we handle the default operating systems that come with various machines. 15057706df26Smrg# The value should be what the vendor currently ships out the door with their 15067706df26Smrg# machine or put another way, the most popular os provided with the machine. 15077706df26Smrg 15087706df26Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15097706df26Smrg# "-sun"), then you have to tell the case statement up towards the top 15107706df26Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15117706df26Smrg# will signal an error saying that MANUFACTURER isn't an operating 15127706df26Smrg# system, and we'll never get to this point. 15137706df26Smrg 15147706df26Smrgcase $basic_machine in 1515b92e825aSmrg score-*) 1516047944f3Smrg os=-elf 1517047944f3Smrg ;; 1518b92e825aSmrg spu-*) 1519047944f3Smrg os=-elf 1520047944f3Smrg ;; 15217706df26Smrg *-acorn) 15227706df26Smrg os=-riscix1.2 15237706df26Smrg ;; 15247706df26Smrg arm*-rebel) 15257706df26Smrg os=-linux 15267706df26Smrg ;; 15277706df26Smrg arm*-semi) 15287706df26Smrg os=-aout 15297706df26Smrg ;; 1530b92e825aSmrg c4x-* | tic4x-*) 1531b92e825aSmrg os=-coff 1532b92e825aSmrg ;; 1533b92e825aSmrg tic54x-*) 1534b92e825aSmrg os=-coff 1535b92e825aSmrg ;; 1536b92e825aSmrg tic55x-*) 1537b92e825aSmrg os=-coff 1538b92e825aSmrg ;; 1539b92e825aSmrg tic6x-*) 1540b92e825aSmrg os=-coff 15417706df26Smrg ;; 15427706df26Smrg # This must come before the *-dec entry. 15437706df26Smrg pdp10-*) 15447706df26Smrg os=-tops20 15457706df26Smrg ;; 15467706df26Smrg pdp11-*) 15477706df26Smrg os=-none 15487706df26Smrg ;; 15497706df26Smrg *-dec | vax-*) 15507706df26Smrg os=-ultrix4.2 15517706df26Smrg ;; 15527706df26Smrg m68*-apollo) 15537706df26Smrg os=-domain 15547706df26Smrg ;; 15557706df26Smrg i386-sun) 15567706df26Smrg os=-sunos4.0.2 15577706df26Smrg ;; 15587706df26Smrg m68000-sun) 15597706df26Smrg os=-sunos3 15607706df26Smrg ;; 15617706df26Smrg m68*-cisco) 15627706df26Smrg os=-aout 15637706df26Smrg ;; 1564b92e825aSmrg mep-*) 1565047944f3Smrg os=-elf 1566047944f3Smrg ;; 15677706df26Smrg mips*-cisco) 15687706df26Smrg os=-elf 15697706df26Smrg ;; 15707706df26Smrg mips*-*) 15717706df26Smrg os=-elf 15727706df26Smrg ;; 15737706df26Smrg or32-*) 15747706df26Smrg os=-coff 15757706df26Smrg ;; 15767706df26Smrg *-tti) # must be before sparc entry or we get the wrong os. 15777706df26Smrg os=-sysv3 15787706df26Smrg ;; 15797706df26Smrg sparc-* | *-sun) 15807706df26Smrg os=-sunos4.1.1 15817706df26Smrg ;; 15827706df26Smrg *-be) 15837706df26Smrg os=-beos 15847706df26Smrg ;; 1585047944f3Smrg *-haiku) 1586047944f3Smrg os=-haiku 1587047944f3Smrg ;; 15887706df26Smrg *-ibm) 15897706df26Smrg os=-aix 15907706df26Smrg ;; 1591b92e825aSmrg *-knuth) 1592047944f3Smrg os=-mmixware 1593047944f3Smrg ;; 15947706df26Smrg *-wec) 15957706df26Smrg os=-proelf 15967706df26Smrg ;; 15977706df26Smrg *-winbond) 15987706df26Smrg os=-proelf 15997706df26Smrg ;; 16007706df26Smrg *-oki) 16017706df26Smrg os=-proelf 16027706df26Smrg ;; 16037706df26Smrg *-hp) 16047706df26Smrg os=-hpux 16057706df26Smrg ;; 16067706df26Smrg *-hitachi) 16077706df26Smrg os=-hiux 16087706df26Smrg ;; 16097706df26Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16107706df26Smrg os=-sysv 16117706df26Smrg ;; 16127706df26Smrg *-cbm) 16137706df26Smrg os=-amigaos 16147706df26Smrg ;; 16157706df26Smrg *-dg) 16167706df26Smrg os=-dgux 16177706df26Smrg ;; 16187706df26Smrg *-dolphin) 16197706df26Smrg os=-sysv3 16207706df26Smrg ;; 16217706df26Smrg m68k-ccur) 16227706df26Smrg os=-rtu 16237706df26Smrg ;; 16247706df26Smrg m88k-omron*) 16257706df26Smrg os=-luna 16267706df26Smrg ;; 16277706df26Smrg *-next ) 16287706df26Smrg os=-nextstep 16297706df26Smrg ;; 16307706df26Smrg *-sequent) 16317706df26Smrg os=-ptx 16327706df26Smrg ;; 16337706df26Smrg *-crds) 16347706df26Smrg os=-unos 16357706df26Smrg ;; 16367706df26Smrg *-ns) 16377706df26Smrg os=-genix 16387706df26Smrg ;; 16397706df26Smrg i370-*) 16407706df26Smrg os=-mvs 16417706df26Smrg ;; 16427706df26Smrg *-next) 16437706df26Smrg os=-nextstep3 16447706df26Smrg ;; 16457706df26Smrg *-gould) 16467706df26Smrg os=-sysv 16477706df26Smrg ;; 16487706df26Smrg *-highlevel) 16497706df26Smrg os=-bsd 16507706df26Smrg ;; 16517706df26Smrg *-encore) 16527706df26Smrg os=-bsd 16537706df26Smrg ;; 16547706df26Smrg *-sgi) 16557706df26Smrg os=-irix 16567706df26Smrg ;; 16577706df26Smrg *-siemens) 16587706df26Smrg os=-sysv4 16597706df26Smrg ;; 16607706df26Smrg *-masscomp) 16617706df26Smrg os=-rtu 16627706df26Smrg ;; 16637706df26Smrg f30[01]-fujitsu | f700-fujitsu) 16647706df26Smrg os=-uxpv 16657706df26Smrg ;; 16667706df26Smrg *-rom68k) 16677706df26Smrg os=-coff 16687706df26Smrg ;; 16697706df26Smrg *-*bug) 16707706df26Smrg os=-coff 16717706df26Smrg ;; 16727706df26Smrg *-apple) 16737706df26Smrg os=-macos 16747706df26Smrg ;; 16757706df26Smrg *-atari*) 16767706df26Smrg os=-mint 16777706df26Smrg ;; 16787706df26Smrg *) 16797706df26Smrg os=-none 16807706df26Smrg ;; 16817706df26Smrgesac 16827706df26Smrgfi 16837706df26Smrg 16847706df26Smrg# Here we handle the case where we know the os, and the CPU type, but not the 16857706df26Smrg# manufacturer. We pick the logical manufacturer. 16867706df26Smrgvendor=unknown 16877706df26Smrgcase $basic_machine in 16887706df26Smrg *-unknown) 16897706df26Smrg case $os in 16907706df26Smrg -riscix*) 16917706df26Smrg vendor=acorn 16927706df26Smrg ;; 16937706df26Smrg -sunos*) 16947706df26Smrg vendor=sun 16957706df26Smrg ;; 1696b92e825aSmrg -cnk*|-aix*) 16977706df26Smrg vendor=ibm 16987706df26Smrg ;; 16997706df26Smrg -beos*) 17007706df26Smrg vendor=be 17017706df26Smrg ;; 17027706df26Smrg -hpux*) 17037706df26Smrg vendor=hp 17047706df26Smrg ;; 17057706df26Smrg -mpeix*) 17067706df26Smrg vendor=hp 17077706df26Smrg ;; 17087706df26Smrg -hiux*) 17097706df26Smrg vendor=hitachi 17107706df26Smrg ;; 17117706df26Smrg -unos*) 17127706df26Smrg vendor=crds 17137706df26Smrg ;; 17147706df26Smrg -dgux*) 17157706df26Smrg vendor=dg 17167706df26Smrg ;; 17177706df26Smrg -luna*) 17187706df26Smrg vendor=omron 17197706df26Smrg ;; 17207706df26Smrg -genix*) 17217706df26Smrg vendor=ns 17227706df26Smrg ;; 17237706df26Smrg -mvs* | -opened*) 17247706df26Smrg vendor=ibm 17257706df26Smrg ;; 1726047944f3Smrg -os400*) 1727047944f3Smrg vendor=ibm 1728047944f3Smrg ;; 17297706df26Smrg -ptx*) 17307706df26Smrg vendor=sequent 17317706df26Smrg ;; 1732047944f3Smrg -tpf*) 1733047944f3Smrg vendor=ibm 1734047944f3Smrg ;; 17357706df26Smrg -vxsim* | -vxworks* | -windiss*) 17367706df26Smrg vendor=wrs 17377706df26Smrg ;; 17387706df26Smrg -aux*) 17397706df26Smrg vendor=apple 17407706df26Smrg ;; 17417706df26Smrg -hms*) 17427706df26Smrg vendor=hitachi 17437706df26Smrg ;; 17447706df26Smrg -mpw* | -macos*) 17457706df26Smrg vendor=apple 17467706df26Smrg ;; 17477706df26Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17487706df26Smrg vendor=atari 17497706df26Smrg ;; 17507706df26Smrg -vos*) 17517706df26Smrg vendor=stratus 17527706df26Smrg ;; 17537706df26Smrg esac 17547706df26Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17557706df26Smrg ;; 17567706df26Smrgesac 17577706df26Smrg 17587706df26Smrgecho $basic_machine$os 1759047944f3Smrgexit 17607706df26Smrg 17617706df26Smrg# Local variables: 17627706df26Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17637706df26Smrg# time-stamp-start: "timestamp='" 17647706df26Smrg# time-stamp-format: "%:y-%02m-%02d" 17657706df26Smrg# time-stamp-end: "'" 17667706df26Smrg# End: 1767