config.sub revision 25b89263
1a253d6aeSmrg#! /bin/sh 2a253d6aeSmrg# Configuration validation subroutine script. 3a253d6aeSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 425b89263Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 5ea133fd7Smrg# Free Software Foundation, Inc. 6a253d6aeSmrg 725b89263Smrgtimestamp='2010-09-11' 8a253d6aeSmrg 9a253d6aeSmrg# This file is (in principle) common to ALL GNU software. 10a253d6aeSmrg# The presence of a machine in this file suggests that SOME GNU software 11a253d6aeSmrg# can handle that machine. It does not imply ALL GNU software can. 12a253d6aeSmrg# 13a253d6aeSmrg# This file is free software; you can redistribute it and/or modify 14a253d6aeSmrg# it under the terms of the GNU General Public License as published by 15a253d6aeSmrg# the Free Software Foundation; either version 2 of the License, or 16a253d6aeSmrg# (at your option) any later version. 17a253d6aeSmrg# 18a253d6aeSmrg# This program is distributed in the hope that it will be useful, 19a253d6aeSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20a253d6aeSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21a253d6aeSmrg# GNU General Public License for more details. 22a253d6aeSmrg# 23a253d6aeSmrg# You should have received a copy of the GNU General Public License 24a253d6aeSmrg# along with this program; if not, write to the Free Software 25a253d6aeSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26a253d6aeSmrg# 02110-1301, USA. 27a253d6aeSmrg# 28a253d6aeSmrg# As a special exception to the GNU General Public License, if you 29a253d6aeSmrg# distribute this file as part of a program that contains a 30a253d6aeSmrg# configuration script generated by Autoconf, you may include it under 31a253d6aeSmrg# the same distribution terms that you use for the rest of that program. 32a253d6aeSmrg 33a253d6aeSmrg 34a253d6aeSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 3525b89263Smrg# diff and a properly formatted GNU ChangeLog entry. 36a253d6aeSmrg# 37a253d6aeSmrg# Configuration subroutine to validate and canonicalize a configuration type. 38a253d6aeSmrg# Supply the specified configuration type as an argument. 39a253d6aeSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 40a253d6aeSmrg# Otherwise, we print the canonical config type on stdout and succeed. 41a253d6aeSmrg 4225b89263Smrg# You can get the latest version of this script from: 4325b89263Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 4425b89263Smrg 45a253d6aeSmrg# This file is supposed to be the same for all GNU packages 46a253d6aeSmrg# and recognize all the CPU types, system types and aliases 47a253d6aeSmrg# that are meaningful with *any* GNU software. 48a253d6aeSmrg# Each package is responsible for reporting which valid configurations 49a253d6aeSmrg# it does not support. The user should be able to distinguish 50a253d6aeSmrg# a failure to support a valid configuration from a meaningless 51a253d6aeSmrg# configuration. 52a253d6aeSmrg 53a253d6aeSmrg# The goal of this file is to map all the various variations of a given 54a253d6aeSmrg# machine specification into a single specification in the form: 55a253d6aeSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 56a253d6aeSmrg# or in some cases, the newer four-part form: 57a253d6aeSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 58a253d6aeSmrg# It is wrong to echo any other type of specification. 59a253d6aeSmrg 60a253d6aeSmrgme=`echo "$0" | sed -e 's,.*/,,'` 61a253d6aeSmrg 62a253d6aeSmrgusage="\ 63a253d6aeSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 64a253d6aeSmrg $0 [OPTION] ALIAS 65a253d6aeSmrg 66a253d6aeSmrgCanonicalize a configuration name. 67a253d6aeSmrg 68a253d6aeSmrgOperation modes: 69a253d6aeSmrg -h, --help print this help, then exit 70a253d6aeSmrg -t, --time-stamp print date of last modification, then exit 71a253d6aeSmrg -v, --version print version number, then exit 72a253d6aeSmrg 73a253d6aeSmrgReport bugs and patches to <config-patches@gnu.org>." 74a253d6aeSmrg 75a253d6aeSmrgversion="\ 76a253d6aeSmrgGNU config.sub ($timestamp) 77a253d6aeSmrg 7825b89263SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 7925b89263Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 8025b89263SmrgSoftware Foundation, Inc. 81a253d6aeSmrg 82a253d6aeSmrgThis is free software; see the source for copying conditions. There is NO 83a253d6aeSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 84a253d6aeSmrg 85a253d6aeSmrghelp=" 86a253d6aeSmrgTry \`$me --help' for more information." 87a253d6aeSmrg 88a253d6aeSmrg# Parse command line 89a253d6aeSmrgwhile test $# -gt 0 ; do 90a253d6aeSmrg case $1 in 91a253d6aeSmrg --time-stamp | --time* | -t ) 92a253d6aeSmrg echo "$timestamp" ; exit ;; 93a253d6aeSmrg --version | -v ) 94a253d6aeSmrg echo "$version" ; exit ;; 95a253d6aeSmrg --help | --h* | -h ) 96a253d6aeSmrg echo "$usage"; exit ;; 97a253d6aeSmrg -- ) # Stop option processing 98a253d6aeSmrg shift; break ;; 99a253d6aeSmrg - ) # Use stdin as input. 100a253d6aeSmrg break ;; 101a253d6aeSmrg -* ) 102a253d6aeSmrg echo "$me: invalid option $1$help" 103a253d6aeSmrg exit 1 ;; 104a253d6aeSmrg 105a253d6aeSmrg *local*) 106a253d6aeSmrg # First pass through any local machine types. 107a253d6aeSmrg echo $1 108a253d6aeSmrg exit ;; 109a253d6aeSmrg 110a253d6aeSmrg * ) 111a253d6aeSmrg break ;; 112a253d6aeSmrg esac 113a253d6aeSmrgdone 114a253d6aeSmrg 115a253d6aeSmrgcase $# in 116a253d6aeSmrg 0) echo "$me: missing argument$help" >&2 117a253d6aeSmrg exit 1;; 118a253d6aeSmrg 1) ;; 119a253d6aeSmrg *) echo "$me: too many arguments$help" >&2 120a253d6aeSmrg exit 1;; 121a253d6aeSmrgesac 122a253d6aeSmrg 123a253d6aeSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 124a253d6aeSmrg# Here we must recognize all the valid KERNEL-OS combinations. 125a253d6aeSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 126a253d6aeSmrgcase $maybe_os in 12725b89263Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 12825b89263Smrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12925b89263Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 13025b89263Smrg kopensolaris*-gnu* | \ 131a253d6aeSmrg storm-chaos* | os2-emx* | rtmk-nova*) 132a253d6aeSmrg os=-$maybe_os 133a253d6aeSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 134a253d6aeSmrg ;; 135a253d6aeSmrg *) 136a253d6aeSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 137a253d6aeSmrg if [ $basic_machine != $1 ] 138a253d6aeSmrg then os=`echo $1 | sed 's/.*-/-/'` 139a253d6aeSmrg else os=; fi 140a253d6aeSmrg ;; 141a253d6aeSmrgesac 142a253d6aeSmrg 143a253d6aeSmrg### Let's recognize common machines as not being operating systems so 144a253d6aeSmrg### that things like config.sub decstation-3100 work. We also 145a253d6aeSmrg### recognize some manufacturers as not being operating systems, so we 146a253d6aeSmrg### can provide default operating systems below. 147a253d6aeSmrgcase $os in 148a253d6aeSmrg -sun*os*) 149a253d6aeSmrg # Prevent following clause from handling this invalid input. 150a253d6aeSmrg ;; 151a253d6aeSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 152a253d6aeSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 153a253d6aeSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 154a253d6aeSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 155a253d6aeSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 156a253d6aeSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15725b89263Smrg -apple | -axis | -knuth | -cray | -microblaze) 158a253d6aeSmrg os= 159a253d6aeSmrg basic_machine=$1 160a253d6aeSmrg ;; 16125b89263Smrg -bluegene*) 16225b89263Smrg os=-cnk 16325b89263Smrg ;; 164a253d6aeSmrg -sim | -cisco | -oki | -wec | -winbond) 165a253d6aeSmrg os= 166a253d6aeSmrg basic_machine=$1 167a253d6aeSmrg ;; 168a253d6aeSmrg -scout) 169a253d6aeSmrg ;; 170a253d6aeSmrg -wrs) 171a253d6aeSmrg os=-vxworks 172a253d6aeSmrg basic_machine=$1 173a253d6aeSmrg ;; 174a253d6aeSmrg -chorusos*) 175a253d6aeSmrg os=-chorusos 176a253d6aeSmrg basic_machine=$1 177a253d6aeSmrg ;; 178a253d6aeSmrg -chorusrdb) 179a253d6aeSmrg os=-chorusrdb 180a253d6aeSmrg basic_machine=$1 181a253d6aeSmrg ;; 182a253d6aeSmrg -hiux*) 183a253d6aeSmrg os=-hiuxwe2 184a253d6aeSmrg ;; 185a253d6aeSmrg -sco6) 186a253d6aeSmrg os=-sco5v6 187a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 188a253d6aeSmrg ;; 189a253d6aeSmrg -sco5) 190a253d6aeSmrg os=-sco3.2v5 191a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 192a253d6aeSmrg ;; 193a253d6aeSmrg -sco4) 194a253d6aeSmrg os=-sco3.2v4 195a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 196a253d6aeSmrg ;; 197a253d6aeSmrg -sco3.2.[4-9]*) 198a253d6aeSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 199a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 200a253d6aeSmrg ;; 201a253d6aeSmrg -sco3.2v[4-9]*) 202a253d6aeSmrg # Don't forget version if it is 3.2v4 or newer. 203a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 204a253d6aeSmrg ;; 205a253d6aeSmrg -sco5v6*) 206a253d6aeSmrg # Don't forget version if it is 3.2v4 or newer. 207a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 208a253d6aeSmrg ;; 209a253d6aeSmrg -sco*) 210a253d6aeSmrg os=-sco3.2v2 211a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 212a253d6aeSmrg ;; 213a253d6aeSmrg -udk*) 214a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 215a253d6aeSmrg ;; 216a253d6aeSmrg -isc) 217a253d6aeSmrg os=-isc2.2 218a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 219a253d6aeSmrg ;; 220a253d6aeSmrg -clix*) 221a253d6aeSmrg basic_machine=clipper-intergraph 222a253d6aeSmrg ;; 223a253d6aeSmrg -isc*) 224a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 225a253d6aeSmrg ;; 226a253d6aeSmrg -lynx*) 227a253d6aeSmrg os=-lynxos 228a253d6aeSmrg ;; 229a253d6aeSmrg -ptx*) 230a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 231a253d6aeSmrg ;; 232a253d6aeSmrg -windowsnt*) 233a253d6aeSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 234a253d6aeSmrg ;; 235a253d6aeSmrg -psos*) 236a253d6aeSmrg os=-psos 237a253d6aeSmrg ;; 238a253d6aeSmrg -mint | -mint[0-9]*) 239a253d6aeSmrg basic_machine=m68k-atari 240a253d6aeSmrg os=-mint 241a253d6aeSmrg ;; 242a253d6aeSmrgesac 243a253d6aeSmrg 244a253d6aeSmrg# Decode aliases for certain CPU-COMPANY combinations. 245a253d6aeSmrgcase $basic_machine in 246a253d6aeSmrg # Recognize the basic CPU types without company name. 247a253d6aeSmrg # Some are omitted here because they have special meanings below. 248a253d6aeSmrg 1750a | 580 \ 249a253d6aeSmrg | a29k \ 250a253d6aeSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 251a253d6aeSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 252a253d6aeSmrg | am33_2.0 \ 253ea133fd7Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 254a253d6aeSmrg | bfin \ 255a253d6aeSmrg | c4x | clipper \ 256a253d6aeSmrg | d10v | d30v | dlx | dsp16xx \ 257ea133fd7Smrg | fido | fr30 | frv \ 258a253d6aeSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 259a253d6aeSmrg | i370 | i860 | i960 | ia64 \ 260a253d6aeSmrg | ip2k | iq2000 \ 26125b89263Smrg | lm32 \ 262ea133fd7Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 26325b89263Smrg | maxq | mb | microblaze | mcore | mep | metag \ 264a253d6aeSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 265a253d6aeSmrg | mips16 \ 266a253d6aeSmrg | mips64 | mips64el \ 26725b89263Smrg | mips64octeon | mips64octeonel \ 268a253d6aeSmrg | mips64orion | mips64orionel \ 26925b89263Smrg | mips64r5900 | mips64r5900el \ 27025b89263Smrg | mips64vr | mips64vrel \ 271a253d6aeSmrg | mips64vr4100 | mips64vr4100el \ 272a253d6aeSmrg | mips64vr4300 | mips64vr4300el \ 273a253d6aeSmrg | mips64vr5000 | mips64vr5000el \ 274a253d6aeSmrg | mips64vr5900 | mips64vr5900el \ 275a253d6aeSmrg | mipsisa32 | mipsisa32el \ 276a253d6aeSmrg | mipsisa32r2 | mipsisa32r2el \ 277a253d6aeSmrg | mipsisa64 | mipsisa64el \ 278a253d6aeSmrg | mipsisa64r2 | mipsisa64r2el \ 279a253d6aeSmrg | mipsisa64sb1 | mipsisa64sb1el \ 280a253d6aeSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 281a253d6aeSmrg | mipstx39 | mipstx39el \ 282a253d6aeSmrg | mn10200 | mn10300 \ 28325b89263Smrg | moxie \ 284a253d6aeSmrg | mt \ 285a253d6aeSmrg | msp430 \ 28625b89263Smrg | nds32 | nds32le | nds32be \ 287ea133fd7Smrg | nios | nios2 \ 288a253d6aeSmrg | ns16k | ns32k \ 289a253d6aeSmrg | or32 \ 290a253d6aeSmrg | pdp10 | pdp11 | pj | pjl \ 291a253d6aeSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 292a253d6aeSmrg | pyramid \ 29325b89263Smrg | rx \ 294ea133fd7Smrg | score \ 29525b89263Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 296a253d6aeSmrg | sh64 | sh64le \ 297ea133fd7Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 298ea133fd7Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 299ea133fd7Smrg | spu | strongarm \ 30025b89263Smrg | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 30125b89263Smrg | ubicom32 \ 302a253d6aeSmrg | v850 | v850e \ 303a253d6aeSmrg | we32k \ 304ea133fd7Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 30525b89263Smrg | z8k | z80) 306a253d6aeSmrg basic_machine=$basic_machine-unknown 307a253d6aeSmrg ;; 30825b89263Smrg c54x) 30925b89263Smrg basic_machine=tic54x-unknown 31025b89263Smrg ;; 31125b89263Smrg c55x) 31225b89263Smrg basic_machine=tic55x-unknown 31325b89263Smrg ;; 31425b89263Smrg c6x) 31525b89263Smrg basic_machine=tic6x-unknown 31625b89263Smrg ;; 31725b89263Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 318a253d6aeSmrg # Motorola 68HC11/12. 319a253d6aeSmrg basic_machine=$basic_machine-unknown 320a253d6aeSmrg os=-none 321a253d6aeSmrg ;; 322a253d6aeSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 323a253d6aeSmrg ;; 324a253d6aeSmrg ms1) 325a253d6aeSmrg basic_machine=mt-unknown 326a253d6aeSmrg ;; 327a253d6aeSmrg 328a253d6aeSmrg # We use `pc' rather than `unknown' 329a253d6aeSmrg # because (1) that's what they normally are, and 330a253d6aeSmrg # (2) the word "unknown" tends to confuse beginning users. 331a253d6aeSmrg i*86 | x86_64) 332a253d6aeSmrg basic_machine=$basic_machine-pc 333a253d6aeSmrg ;; 334a253d6aeSmrg # Object if more than one company name word. 335a253d6aeSmrg *-*-*) 336a253d6aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 337a253d6aeSmrg exit 1 338a253d6aeSmrg ;; 339a253d6aeSmrg # Recognize the basic CPU types with company name. 340a253d6aeSmrg 580-* \ 341a253d6aeSmrg | a29k-* \ 342a253d6aeSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 343a253d6aeSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 344a253d6aeSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 345a253d6aeSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 346ea133fd7Smrg | avr-* | avr32-* \ 347a253d6aeSmrg | bfin-* | bs2000-* \ 34825b89263Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 349a253d6aeSmrg | clipper-* | craynv-* | cydra-* \ 350a253d6aeSmrg | d10v-* | d30v-* | dlx-* \ 351a253d6aeSmrg | elxsi-* \ 352ea133fd7Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 353a253d6aeSmrg | h8300-* | h8500-* \ 354a253d6aeSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 355a253d6aeSmrg | i*86-* | i860-* | i960-* | ia64-* \ 356a253d6aeSmrg | ip2k-* | iq2000-* \ 35725b89263Smrg | lm32-* \ 358ea133fd7Smrg | m32c-* | m32r-* | m32rle-* \ 359a253d6aeSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 36025b89263Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 361a253d6aeSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 362a253d6aeSmrg | mips16-* \ 363a253d6aeSmrg | mips64-* | mips64el-* \ 36425b89263Smrg | mips64octeon-* | mips64octeonel-* \ 365a253d6aeSmrg | mips64orion-* | mips64orionel-* \ 36625b89263Smrg | mips64r5900-* | mips64r5900el-* \ 36725b89263Smrg | mips64vr-* | mips64vrel-* \ 368a253d6aeSmrg | mips64vr4100-* | mips64vr4100el-* \ 369a253d6aeSmrg | mips64vr4300-* | mips64vr4300el-* \ 370a253d6aeSmrg | mips64vr5000-* | mips64vr5000el-* \ 371a253d6aeSmrg | mips64vr5900-* | mips64vr5900el-* \ 372a253d6aeSmrg | mipsisa32-* | mipsisa32el-* \ 373a253d6aeSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 374a253d6aeSmrg | mipsisa64-* | mipsisa64el-* \ 375a253d6aeSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 376a253d6aeSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 377a253d6aeSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 378a253d6aeSmrg | mipstx39-* | mipstx39el-* \ 379a253d6aeSmrg | mmix-* \ 380a253d6aeSmrg | mt-* \ 381a253d6aeSmrg | msp430-* \ 38225b89263Smrg | nds32-* | nds32le-* | nds32be-* \ 383ea133fd7Smrg | nios-* | nios2-* \ 384a253d6aeSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 385a253d6aeSmrg | orion-* \ 386a253d6aeSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 387a253d6aeSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 388a253d6aeSmrg | pyramid-* \ 38925b89263Smrg | romp-* | rs6000-* | rx-* \ 39025b89263Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 391a253d6aeSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 392ea133fd7Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 393a253d6aeSmrg | sparclite-* \ 394ea133fd7Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 395a253d6aeSmrg | tahoe-* | thumb-* \ 396a253d6aeSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 39725b89263Smrg | tile-* | tilegx-* \ 398a253d6aeSmrg | tron-* \ 39925b89263Smrg | ubicom32-* \ 400a253d6aeSmrg | v850-* | v850e-* | vax-* \ 401a253d6aeSmrg | we32k-* \ 402ea133fd7Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 403ea133fd7Smrg | xstormy16-* | xtensa*-* \ 404a253d6aeSmrg | ymp-* \ 40525b89263Smrg | z8k-* | z80-*) 406a253d6aeSmrg ;; 407ea133fd7Smrg # Recognize the basic CPU types without company name, with glob match. 408ea133fd7Smrg xtensa*) 409ea133fd7Smrg basic_machine=$basic_machine-unknown 410a253d6aeSmrg ;; 411a253d6aeSmrg # Recognize the various machine names and aliases which stand 412a253d6aeSmrg # for a CPU type and a company and sometimes even an OS. 413a253d6aeSmrg 386bsd) 414a253d6aeSmrg basic_machine=i386-unknown 415a253d6aeSmrg os=-bsd 416a253d6aeSmrg ;; 417a253d6aeSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 418a253d6aeSmrg basic_machine=m68000-att 419a253d6aeSmrg ;; 420a253d6aeSmrg 3b*) 421a253d6aeSmrg basic_machine=we32k-att 422a253d6aeSmrg ;; 423a253d6aeSmrg a29khif) 424a253d6aeSmrg basic_machine=a29k-amd 425a253d6aeSmrg os=-udi 426a253d6aeSmrg ;; 427a253d6aeSmrg abacus) 428a253d6aeSmrg basic_machine=abacus-unknown 429a253d6aeSmrg ;; 430a253d6aeSmrg adobe68k) 431a253d6aeSmrg basic_machine=m68010-adobe 432a253d6aeSmrg os=-scout 433a253d6aeSmrg ;; 434a253d6aeSmrg alliant | fx80) 435a253d6aeSmrg basic_machine=fx80-alliant 436a253d6aeSmrg ;; 437a253d6aeSmrg altos | altos3068) 438a253d6aeSmrg basic_machine=m68k-altos 439a253d6aeSmrg ;; 440a253d6aeSmrg am29k) 441a253d6aeSmrg basic_machine=a29k-none 442a253d6aeSmrg os=-bsd 443a253d6aeSmrg ;; 444a253d6aeSmrg amd64) 445a253d6aeSmrg basic_machine=x86_64-pc 446a253d6aeSmrg ;; 447a253d6aeSmrg amd64-*) 448a253d6aeSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 449a253d6aeSmrg ;; 450a253d6aeSmrg amdahl) 451a253d6aeSmrg basic_machine=580-amdahl 452a253d6aeSmrg os=-sysv 453a253d6aeSmrg ;; 454a253d6aeSmrg amiga | amiga-*) 455a253d6aeSmrg basic_machine=m68k-unknown 456a253d6aeSmrg ;; 457a253d6aeSmrg amigaos | amigados) 458a253d6aeSmrg basic_machine=m68k-unknown 459a253d6aeSmrg os=-amigaos 460a253d6aeSmrg ;; 461a253d6aeSmrg amigaunix | amix) 462a253d6aeSmrg basic_machine=m68k-unknown 463a253d6aeSmrg os=-sysv4 464a253d6aeSmrg ;; 465a253d6aeSmrg apollo68) 466a253d6aeSmrg basic_machine=m68k-apollo 467a253d6aeSmrg os=-sysv 468a253d6aeSmrg ;; 469a253d6aeSmrg apollo68bsd) 470a253d6aeSmrg basic_machine=m68k-apollo 471a253d6aeSmrg os=-bsd 472a253d6aeSmrg ;; 47325b89263Smrg aros) 47425b89263Smrg basic_machine=i386-pc 47525b89263Smrg os=-aros 47625b89263Smrg ;; 477a253d6aeSmrg aux) 478a253d6aeSmrg basic_machine=m68k-apple 479a253d6aeSmrg os=-aux 480a253d6aeSmrg ;; 481a253d6aeSmrg balance) 482a253d6aeSmrg basic_machine=ns32k-sequent 483a253d6aeSmrg os=-dynix 484a253d6aeSmrg ;; 485ea133fd7Smrg blackfin) 486ea133fd7Smrg basic_machine=bfin-unknown 487ea133fd7Smrg os=-linux 488ea133fd7Smrg ;; 489ea133fd7Smrg blackfin-*) 490ea133fd7Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 491ea133fd7Smrg os=-linux 492ea133fd7Smrg ;; 49325b89263Smrg bluegene*) 49425b89263Smrg basic_machine=powerpc-ibm 49525b89263Smrg os=-cnk 49625b89263Smrg ;; 49725b89263Smrg c54x-*) 49825b89263Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 49925b89263Smrg ;; 50025b89263Smrg c55x-*) 50125b89263Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 50225b89263Smrg ;; 50325b89263Smrg c6x-*) 50425b89263Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 50525b89263Smrg ;; 506a253d6aeSmrg c90) 507a253d6aeSmrg basic_machine=c90-cray 508a253d6aeSmrg os=-unicos 509a253d6aeSmrg ;; 51025b89263Smrg cegcc) 51125b89263Smrg basic_machine=arm-unknown 51225b89263Smrg os=-cegcc 51325b89263Smrg ;; 514a253d6aeSmrg convex-c1) 515a253d6aeSmrg basic_machine=c1-convex 516a253d6aeSmrg os=-bsd 517a253d6aeSmrg ;; 518a253d6aeSmrg convex-c2) 519a253d6aeSmrg basic_machine=c2-convex 520a253d6aeSmrg os=-bsd 521a253d6aeSmrg ;; 522a253d6aeSmrg convex-c32) 523a253d6aeSmrg basic_machine=c32-convex 524a253d6aeSmrg os=-bsd 525a253d6aeSmrg ;; 526a253d6aeSmrg convex-c34) 527a253d6aeSmrg basic_machine=c34-convex 528a253d6aeSmrg os=-bsd 529a253d6aeSmrg ;; 530a253d6aeSmrg convex-c38) 531a253d6aeSmrg basic_machine=c38-convex 532a253d6aeSmrg os=-bsd 533a253d6aeSmrg ;; 534a253d6aeSmrg cray | j90) 535a253d6aeSmrg basic_machine=j90-cray 536a253d6aeSmrg os=-unicos 537a253d6aeSmrg ;; 538a253d6aeSmrg craynv) 539a253d6aeSmrg basic_machine=craynv-cray 540a253d6aeSmrg os=-unicosmp 541a253d6aeSmrg ;; 542ea133fd7Smrg cr16) 543ea133fd7Smrg basic_machine=cr16-unknown 544a253d6aeSmrg os=-elf 545a253d6aeSmrg ;; 546a253d6aeSmrg crds | unos) 547a253d6aeSmrg basic_machine=m68k-crds 548a253d6aeSmrg ;; 549a253d6aeSmrg crisv32 | crisv32-* | etraxfs*) 550a253d6aeSmrg basic_machine=crisv32-axis 551a253d6aeSmrg ;; 552a253d6aeSmrg cris | cris-* | etrax*) 553a253d6aeSmrg basic_machine=cris-axis 554a253d6aeSmrg ;; 555a253d6aeSmrg crx) 556a253d6aeSmrg basic_machine=crx-unknown 557a253d6aeSmrg os=-elf 558a253d6aeSmrg ;; 559a253d6aeSmrg da30 | da30-*) 560a253d6aeSmrg basic_machine=m68k-da30 561a253d6aeSmrg ;; 562a253d6aeSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 563a253d6aeSmrg basic_machine=mips-dec 564a253d6aeSmrg ;; 565a253d6aeSmrg decsystem10* | dec10*) 566a253d6aeSmrg basic_machine=pdp10-dec 567a253d6aeSmrg os=-tops10 568a253d6aeSmrg ;; 569a253d6aeSmrg decsystem20* | dec20*) 570a253d6aeSmrg basic_machine=pdp10-dec 571a253d6aeSmrg os=-tops20 572a253d6aeSmrg ;; 573a253d6aeSmrg delta | 3300 | motorola-3300 | motorola-delta \ 574a253d6aeSmrg | 3300-motorola | delta-motorola) 575a253d6aeSmrg basic_machine=m68k-motorola 576a253d6aeSmrg ;; 577a253d6aeSmrg delta88) 578a253d6aeSmrg basic_machine=m88k-motorola 579a253d6aeSmrg os=-sysv3 580a253d6aeSmrg ;; 58125b89263Smrg dicos) 58225b89263Smrg basic_machine=i686-pc 58325b89263Smrg os=-dicos 58425b89263Smrg ;; 585a253d6aeSmrg djgpp) 586a253d6aeSmrg basic_machine=i586-pc 587a253d6aeSmrg os=-msdosdjgpp 588a253d6aeSmrg ;; 589a253d6aeSmrg dpx20 | dpx20-*) 590a253d6aeSmrg basic_machine=rs6000-bull 591a253d6aeSmrg os=-bosx 592a253d6aeSmrg ;; 593a253d6aeSmrg dpx2* | dpx2*-bull) 594a253d6aeSmrg basic_machine=m68k-bull 595a253d6aeSmrg os=-sysv3 596a253d6aeSmrg ;; 597a253d6aeSmrg ebmon29k) 598a253d6aeSmrg basic_machine=a29k-amd 599a253d6aeSmrg os=-ebmon 600a253d6aeSmrg ;; 601a253d6aeSmrg elxsi) 602a253d6aeSmrg basic_machine=elxsi-elxsi 603a253d6aeSmrg os=-bsd 604a253d6aeSmrg ;; 605a253d6aeSmrg encore | umax | mmax) 606a253d6aeSmrg basic_machine=ns32k-encore 607a253d6aeSmrg ;; 608a253d6aeSmrg es1800 | OSE68k | ose68k | ose | OSE) 609a253d6aeSmrg basic_machine=m68k-ericsson 610a253d6aeSmrg os=-ose 611a253d6aeSmrg ;; 612a253d6aeSmrg fx2800) 613a253d6aeSmrg basic_machine=i860-alliant 614a253d6aeSmrg ;; 615a253d6aeSmrg genix) 616a253d6aeSmrg basic_machine=ns32k-ns 617a253d6aeSmrg ;; 618a253d6aeSmrg gmicro) 619a253d6aeSmrg basic_machine=tron-gmicro 620a253d6aeSmrg os=-sysv 621a253d6aeSmrg ;; 622a253d6aeSmrg go32) 623a253d6aeSmrg basic_machine=i386-pc 624a253d6aeSmrg os=-go32 625a253d6aeSmrg ;; 626a253d6aeSmrg h3050r* | hiux*) 627a253d6aeSmrg basic_machine=hppa1.1-hitachi 628a253d6aeSmrg os=-hiuxwe2 629a253d6aeSmrg ;; 630a253d6aeSmrg h8300hms) 631a253d6aeSmrg basic_machine=h8300-hitachi 632a253d6aeSmrg os=-hms 633a253d6aeSmrg ;; 634a253d6aeSmrg h8300xray) 635a253d6aeSmrg basic_machine=h8300-hitachi 636a253d6aeSmrg os=-xray 637a253d6aeSmrg ;; 638a253d6aeSmrg h8500hms) 639a253d6aeSmrg basic_machine=h8500-hitachi 640a253d6aeSmrg os=-hms 641a253d6aeSmrg ;; 642a253d6aeSmrg harris) 643a253d6aeSmrg basic_machine=m88k-harris 644a253d6aeSmrg os=-sysv3 645a253d6aeSmrg ;; 646a253d6aeSmrg hp300-*) 647a253d6aeSmrg basic_machine=m68k-hp 648a253d6aeSmrg ;; 649a253d6aeSmrg hp300bsd) 650a253d6aeSmrg basic_machine=m68k-hp 651a253d6aeSmrg os=-bsd 652a253d6aeSmrg ;; 653a253d6aeSmrg hp300hpux) 654a253d6aeSmrg basic_machine=m68k-hp 655a253d6aeSmrg os=-hpux 656a253d6aeSmrg ;; 657a253d6aeSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 658a253d6aeSmrg basic_machine=hppa1.0-hp 659a253d6aeSmrg ;; 660a253d6aeSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 661a253d6aeSmrg basic_machine=m68000-hp 662a253d6aeSmrg ;; 663a253d6aeSmrg hp9k3[2-9][0-9]) 664a253d6aeSmrg basic_machine=m68k-hp 665a253d6aeSmrg ;; 666a253d6aeSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 667a253d6aeSmrg basic_machine=hppa1.0-hp 668a253d6aeSmrg ;; 669a253d6aeSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 670a253d6aeSmrg basic_machine=hppa1.1-hp 671a253d6aeSmrg ;; 672a253d6aeSmrg hp9k78[0-9] | hp78[0-9]) 673a253d6aeSmrg # FIXME: really hppa2.0-hp 674a253d6aeSmrg basic_machine=hppa1.1-hp 675a253d6aeSmrg ;; 676a253d6aeSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 677a253d6aeSmrg # FIXME: really hppa2.0-hp 678a253d6aeSmrg basic_machine=hppa1.1-hp 679a253d6aeSmrg ;; 680a253d6aeSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 681a253d6aeSmrg basic_machine=hppa1.1-hp 682a253d6aeSmrg ;; 683a253d6aeSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 684a253d6aeSmrg basic_machine=hppa1.0-hp 685a253d6aeSmrg ;; 686a253d6aeSmrg hppa-next) 687a253d6aeSmrg os=-nextstep3 688a253d6aeSmrg ;; 689a253d6aeSmrg hppaosf) 690a253d6aeSmrg basic_machine=hppa1.1-hp 691a253d6aeSmrg os=-osf 692a253d6aeSmrg ;; 693a253d6aeSmrg hppro) 694a253d6aeSmrg basic_machine=hppa1.1-hp 695a253d6aeSmrg os=-proelf 696a253d6aeSmrg ;; 697a253d6aeSmrg i370-ibm* | ibm*) 698a253d6aeSmrg basic_machine=i370-ibm 699a253d6aeSmrg ;; 700a253d6aeSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 701a253d6aeSmrg i*86v32) 702a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 703a253d6aeSmrg os=-sysv32 704a253d6aeSmrg ;; 705a253d6aeSmrg i*86v4*) 706a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 707a253d6aeSmrg os=-sysv4 708a253d6aeSmrg ;; 709a253d6aeSmrg i*86v) 710a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 711a253d6aeSmrg os=-sysv 712a253d6aeSmrg ;; 713a253d6aeSmrg i*86sol2) 714a253d6aeSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 715a253d6aeSmrg os=-solaris2 716a253d6aeSmrg ;; 717a253d6aeSmrg i386mach) 718a253d6aeSmrg basic_machine=i386-mach 719a253d6aeSmrg os=-mach 720a253d6aeSmrg ;; 721a253d6aeSmrg i386-vsta | vsta) 722a253d6aeSmrg basic_machine=i386-unknown 723a253d6aeSmrg os=-vsta 724a253d6aeSmrg ;; 725a253d6aeSmrg iris | iris4d) 726a253d6aeSmrg basic_machine=mips-sgi 727a253d6aeSmrg case $os in 728a253d6aeSmrg -irix*) 729a253d6aeSmrg ;; 730a253d6aeSmrg *) 731a253d6aeSmrg os=-irix4 732a253d6aeSmrg ;; 733a253d6aeSmrg esac 734a253d6aeSmrg ;; 735a253d6aeSmrg isi68 | isi) 736a253d6aeSmrg basic_machine=m68k-isi 737a253d6aeSmrg os=-sysv 738a253d6aeSmrg ;; 739ea133fd7Smrg m68knommu) 740ea133fd7Smrg basic_machine=m68k-unknown 741ea133fd7Smrg os=-linux 742ea133fd7Smrg ;; 743ea133fd7Smrg m68knommu-*) 744ea133fd7Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 745ea133fd7Smrg os=-linux 746ea133fd7Smrg ;; 747a253d6aeSmrg m88k-omron*) 748a253d6aeSmrg basic_machine=m88k-omron 749a253d6aeSmrg ;; 750a253d6aeSmrg magnum | m3230) 751a253d6aeSmrg basic_machine=mips-mips 752a253d6aeSmrg os=-sysv 753a253d6aeSmrg ;; 754a253d6aeSmrg merlin) 755a253d6aeSmrg basic_machine=ns32k-utek 756a253d6aeSmrg os=-sysv 757a253d6aeSmrg ;; 75825b89263Smrg microblaze) 75925b89263Smrg basic_machine=microblaze-xilinx 76025b89263Smrg ;; 761a253d6aeSmrg mingw32) 762a253d6aeSmrg basic_machine=i386-pc 763a253d6aeSmrg os=-mingw32 764a253d6aeSmrg ;; 765ea133fd7Smrg mingw32ce) 766ea133fd7Smrg basic_machine=arm-unknown 767ea133fd7Smrg os=-mingw32ce 768ea133fd7Smrg ;; 769a253d6aeSmrg miniframe) 770a253d6aeSmrg basic_machine=m68000-convergent 771a253d6aeSmrg ;; 772a253d6aeSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 773a253d6aeSmrg basic_machine=m68k-atari 774a253d6aeSmrg os=-mint 775a253d6aeSmrg ;; 776a253d6aeSmrg mips3*-*) 777a253d6aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 778a253d6aeSmrg ;; 779a253d6aeSmrg mips3*) 780a253d6aeSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 781a253d6aeSmrg ;; 782a253d6aeSmrg monitor) 783a253d6aeSmrg basic_machine=m68k-rom68k 784a253d6aeSmrg os=-coff 785a253d6aeSmrg ;; 786a253d6aeSmrg morphos) 787a253d6aeSmrg basic_machine=powerpc-unknown 788a253d6aeSmrg os=-morphos 789a253d6aeSmrg ;; 790a253d6aeSmrg msdos) 791a253d6aeSmrg basic_machine=i386-pc 792a253d6aeSmrg os=-msdos 793a253d6aeSmrg ;; 794a253d6aeSmrg ms1-*) 795a253d6aeSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 796a253d6aeSmrg ;; 797a253d6aeSmrg mvs) 798a253d6aeSmrg basic_machine=i370-ibm 799a253d6aeSmrg os=-mvs 800a253d6aeSmrg ;; 801a253d6aeSmrg ncr3000) 802a253d6aeSmrg basic_machine=i486-ncr 803a253d6aeSmrg os=-sysv4 804a253d6aeSmrg ;; 805a253d6aeSmrg netbsd386) 806a253d6aeSmrg basic_machine=i386-unknown 807a253d6aeSmrg os=-netbsd 808a253d6aeSmrg ;; 809a253d6aeSmrg netwinder) 810a253d6aeSmrg basic_machine=armv4l-rebel 811a253d6aeSmrg os=-linux 812a253d6aeSmrg ;; 813a253d6aeSmrg news | news700 | news800 | news900) 814a253d6aeSmrg basic_machine=m68k-sony 815a253d6aeSmrg os=-newsos 816a253d6aeSmrg ;; 817a253d6aeSmrg news1000) 818a253d6aeSmrg basic_machine=m68030-sony 819a253d6aeSmrg os=-newsos 820a253d6aeSmrg ;; 821a253d6aeSmrg news-3600 | risc-news) 822a253d6aeSmrg basic_machine=mips-sony 823a253d6aeSmrg os=-newsos 824a253d6aeSmrg ;; 825a253d6aeSmrg necv70) 826a253d6aeSmrg basic_machine=v70-nec 827a253d6aeSmrg os=-sysv 828a253d6aeSmrg ;; 829a253d6aeSmrg next | m*-next ) 830a253d6aeSmrg basic_machine=m68k-next 831a253d6aeSmrg case $os in 832a253d6aeSmrg -nextstep* ) 833a253d6aeSmrg ;; 834a253d6aeSmrg -ns2*) 835a253d6aeSmrg os=-nextstep2 836a253d6aeSmrg ;; 837a253d6aeSmrg *) 838a253d6aeSmrg os=-nextstep3 839a253d6aeSmrg ;; 840a253d6aeSmrg esac 841a253d6aeSmrg ;; 842a253d6aeSmrg nh3000) 843a253d6aeSmrg basic_machine=m68k-harris 844a253d6aeSmrg os=-cxux 845a253d6aeSmrg ;; 846a253d6aeSmrg nh[45]000) 847a253d6aeSmrg basic_machine=m88k-harris 848a253d6aeSmrg os=-cxux 849a253d6aeSmrg ;; 850a253d6aeSmrg nindy960) 851a253d6aeSmrg basic_machine=i960-intel 852a253d6aeSmrg os=-nindy 853a253d6aeSmrg ;; 854a253d6aeSmrg mon960) 855a253d6aeSmrg basic_machine=i960-intel 856a253d6aeSmrg os=-mon960 857a253d6aeSmrg ;; 858a253d6aeSmrg nonstopux) 859a253d6aeSmrg basic_machine=mips-compaq 860a253d6aeSmrg os=-nonstopux 861a253d6aeSmrg ;; 862a253d6aeSmrg np1) 863a253d6aeSmrg basic_machine=np1-gould 864a253d6aeSmrg ;; 86525b89263Smrg neo-tandem) 86625b89263Smrg basic_machine=neo-tandem 86725b89263Smrg ;; 86825b89263Smrg nse-tandem) 86925b89263Smrg basic_machine=nse-tandem 87025b89263Smrg ;; 871a253d6aeSmrg nsr-tandem) 872a253d6aeSmrg basic_machine=nsr-tandem 873a253d6aeSmrg ;; 874a253d6aeSmrg op50n-* | op60c-*) 875a253d6aeSmrg basic_machine=hppa1.1-oki 876a253d6aeSmrg os=-proelf 877a253d6aeSmrg ;; 878a253d6aeSmrg openrisc | openrisc-*) 879a253d6aeSmrg basic_machine=or32-unknown 880a253d6aeSmrg ;; 881a253d6aeSmrg os400) 882a253d6aeSmrg basic_machine=powerpc-ibm 883a253d6aeSmrg os=-os400 884a253d6aeSmrg ;; 885a253d6aeSmrg OSE68000 | ose68000) 886a253d6aeSmrg basic_machine=m68000-ericsson 887a253d6aeSmrg os=-ose 888a253d6aeSmrg ;; 889a253d6aeSmrg os68k) 890a253d6aeSmrg basic_machine=m68k-none 891a253d6aeSmrg os=-os68k 892a253d6aeSmrg ;; 893a253d6aeSmrg pa-hitachi) 894a253d6aeSmrg basic_machine=hppa1.1-hitachi 895a253d6aeSmrg os=-hiuxwe2 896a253d6aeSmrg ;; 897a253d6aeSmrg paragon) 898a253d6aeSmrg basic_machine=i860-intel 899a253d6aeSmrg os=-osf 900a253d6aeSmrg ;; 901ea133fd7Smrg parisc) 902ea133fd7Smrg basic_machine=hppa-unknown 903ea133fd7Smrg os=-linux 904ea133fd7Smrg ;; 905ea133fd7Smrg parisc-*) 906ea133fd7Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 907ea133fd7Smrg os=-linux 908ea133fd7Smrg ;; 909a253d6aeSmrg pbd) 910a253d6aeSmrg basic_machine=sparc-tti 911a253d6aeSmrg ;; 912a253d6aeSmrg pbb) 913a253d6aeSmrg basic_machine=m68k-tti 914a253d6aeSmrg ;; 915a253d6aeSmrg pc532 | pc532-*) 916a253d6aeSmrg basic_machine=ns32k-pc532 917a253d6aeSmrg ;; 918ea133fd7Smrg pc98) 919ea133fd7Smrg basic_machine=i386-pc 920ea133fd7Smrg ;; 921ea133fd7Smrg pc98-*) 922ea133fd7Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 923ea133fd7Smrg ;; 924a253d6aeSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 925a253d6aeSmrg basic_machine=i586-pc 926a253d6aeSmrg ;; 927a253d6aeSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 928a253d6aeSmrg basic_machine=i686-pc 929a253d6aeSmrg ;; 930a253d6aeSmrg pentiumii | pentium2 | pentiumiii | pentium3) 931a253d6aeSmrg basic_machine=i686-pc 932a253d6aeSmrg ;; 933a253d6aeSmrg pentium4) 934a253d6aeSmrg basic_machine=i786-pc 935a253d6aeSmrg ;; 936a253d6aeSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 937a253d6aeSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 938a253d6aeSmrg ;; 939a253d6aeSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 940a253d6aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 941a253d6aeSmrg ;; 942a253d6aeSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 943a253d6aeSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 944a253d6aeSmrg ;; 945a253d6aeSmrg pentium4-*) 946a253d6aeSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 947a253d6aeSmrg ;; 948a253d6aeSmrg pn) 949a253d6aeSmrg basic_machine=pn-gould 950a253d6aeSmrg ;; 951a253d6aeSmrg power) basic_machine=power-ibm 952a253d6aeSmrg ;; 953a253d6aeSmrg ppc) basic_machine=powerpc-unknown 954a253d6aeSmrg ;; 955a253d6aeSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 956a253d6aeSmrg ;; 957a253d6aeSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 958a253d6aeSmrg basic_machine=powerpcle-unknown 959a253d6aeSmrg ;; 960a253d6aeSmrg ppcle-* | powerpclittle-*) 961a253d6aeSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 962a253d6aeSmrg ;; 963a253d6aeSmrg ppc64) basic_machine=powerpc64-unknown 964a253d6aeSmrg ;; 965a253d6aeSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 966a253d6aeSmrg ;; 967a253d6aeSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 968a253d6aeSmrg basic_machine=powerpc64le-unknown 969a253d6aeSmrg ;; 970a253d6aeSmrg ppc64le-* | powerpc64little-*) 971a253d6aeSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 972a253d6aeSmrg ;; 973a253d6aeSmrg ps2) 974a253d6aeSmrg basic_machine=i386-ibm 975a253d6aeSmrg ;; 976a253d6aeSmrg pw32) 977a253d6aeSmrg basic_machine=i586-unknown 978a253d6aeSmrg os=-pw32 979a253d6aeSmrg ;; 980a253d6aeSmrg rdos) 981a253d6aeSmrg basic_machine=i386-pc 982a253d6aeSmrg os=-rdos 983a253d6aeSmrg ;; 984a253d6aeSmrg rom68k) 985a253d6aeSmrg basic_machine=m68k-rom68k 986a253d6aeSmrg os=-coff 987a253d6aeSmrg ;; 988a253d6aeSmrg rm[46]00) 989a253d6aeSmrg basic_machine=mips-siemens 990a253d6aeSmrg ;; 991a253d6aeSmrg rtpc | rtpc-*) 992a253d6aeSmrg basic_machine=romp-ibm 993a253d6aeSmrg ;; 994a253d6aeSmrg s390 | s390-*) 995a253d6aeSmrg basic_machine=s390-ibm 996a253d6aeSmrg ;; 997a253d6aeSmrg s390x | s390x-*) 998a253d6aeSmrg basic_machine=s390x-ibm 999a253d6aeSmrg ;; 1000a253d6aeSmrg sa29200) 1001a253d6aeSmrg basic_machine=a29k-amd 1002a253d6aeSmrg os=-udi 1003a253d6aeSmrg ;; 1004a253d6aeSmrg sb1) 1005a253d6aeSmrg basic_machine=mipsisa64sb1-unknown 1006a253d6aeSmrg ;; 1007a253d6aeSmrg sb1el) 1008a253d6aeSmrg basic_machine=mipsisa64sb1el-unknown 1009a253d6aeSmrg ;; 1010ea133fd7Smrg sde) 1011ea133fd7Smrg basic_machine=mipsisa32-sde 1012ea133fd7Smrg os=-elf 1013ea133fd7Smrg ;; 1014a253d6aeSmrg sei) 1015a253d6aeSmrg basic_machine=mips-sei 1016a253d6aeSmrg os=-seiux 1017a253d6aeSmrg ;; 1018a253d6aeSmrg sequent) 1019a253d6aeSmrg basic_machine=i386-sequent 1020a253d6aeSmrg ;; 1021a253d6aeSmrg sh) 1022a253d6aeSmrg basic_machine=sh-hitachi 1023a253d6aeSmrg os=-hms 1024a253d6aeSmrg ;; 1025ea133fd7Smrg sh5el) 1026ea133fd7Smrg basic_machine=sh5le-unknown 1027ea133fd7Smrg ;; 1028a253d6aeSmrg sh64) 1029a253d6aeSmrg basic_machine=sh64-unknown 1030a253d6aeSmrg ;; 1031a253d6aeSmrg sparclite-wrs | simso-wrs) 1032a253d6aeSmrg basic_machine=sparclite-wrs 1033a253d6aeSmrg os=-vxworks 1034a253d6aeSmrg ;; 1035a253d6aeSmrg sps7) 1036a253d6aeSmrg basic_machine=m68k-bull 1037a253d6aeSmrg os=-sysv2 1038a253d6aeSmrg ;; 1039a253d6aeSmrg spur) 1040a253d6aeSmrg basic_machine=spur-unknown 1041a253d6aeSmrg ;; 1042a253d6aeSmrg st2000) 1043a253d6aeSmrg basic_machine=m68k-tandem 1044a253d6aeSmrg ;; 1045a253d6aeSmrg stratus) 1046a253d6aeSmrg basic_machine=i860-stratus 1047a253d6aeSmrg os=-sysv4 1048a253d6aeSmrg ;; 1049a253d6aeSmrg sun2) 1050a253d6aeSmrg basic_machine=m68000-sun 1051a253d6aeSmrg ;; 1052a253d6aeSmrg sun2os3) 1053a253d6aeSmrg basic_machine=m68000-sun 1054a253d6aeSmrg os=-sunos3 1055a253d6aeSmrg ;; 1056a253d6aeSmrg sun2os4) 1057a253d6aeSmrg basic_machine=m68000-sun 1058a253d6aeSmrg os=-sunos4 1059a253d6aeSmrg ;; 1060a253d6aeSmrg sun3os3) 1061a253d6aeSmrg basic_machine=m68k-sun 1062a253d6aeSmrg os=-sunos3 1063a253d6aeSmrg ;; 1064a253d6aeSmrg sun3os4) 1065a253d6aeSmrg basic_machine=m68k-sun 1066a253d6aeSmrg os=-sunos4 1067a253d6aeSmrg ;; 1068a253d6aeSmrg sun4os3) 1069a253d6aeSmrg basic_machine=sparc-sun 1070a253d6aeSmrg os=-sunos3 1071a253d6aeSmrg ;; 1072a253d6aeSmrg sun4os4) 1073a253d6aeSmrg basic_machine=sparc-sun 1074a253d6aeSmrg os=-sunos4 1075a253d6aeSmrg ;; 1076a253d6aeSmrg sun4sol2) 1077a253d6aeSmrg basic_machine=sparc-sun 1078a253d6aeSmrg os=-solaris2 1079a253d6aeSmrg ;; 1080a253d6aeSmrg sun3 | sun3-*) 1081a253d6aeSmrg basic_machine=m68k-sun 1082a253d6aeSmrg ;; 1083a253d6aeSmrg sun4) 1084a253d6aeSmrg basic_machine=sparc-sun 1085a253d6aeSmrg ;; 1086a253d6aeSmrg sun386 | sun386i | roadrunner) 1087a253d6aeSmrg basic_machine=i386-sun 1088a253d6aeSmrg ;; 1089a253d6aeSmrg sv1) 1090a253d6aeSmrg basic_machine=sv1-cray 1091a253d6aeSmrg os=-unicos 1092a253d6aeSmrg ;; 1093a253d6aeSmrg symmetry) 1094a253d6aeSmrg basic_machine=i386-sequent 1095a253d6aeSmrg os=-dynix 1096a253d6aeSmrg ;; 1097a253d6aeSmrg t3e) 1098a253d6aeSmrg basic_machine=alphaev5-cray 1099a253d6aeSmrg os=-unicos 1100a253d6aeSmrg ;; 1101a253d6aeSmrg t90) 1102a253d6aeSmrg basic_machine=t90-cray 1103a253d6aeSmrg os=-unicos 1104a253d6aeSmrg ;; 110525b89263Smrg # This must be matched before tile*. 110625b89263Smrg tilegx*) 110725b89263Smrg basic_machine=tilegx-unknown 110825b89263Smrg os=-linux-gnu 1109a253d6aeSmrg ;; 1110ea133fd7Smrg tile*) 1111ea133fd7Smrg basic_machine=tile-unknown 1112ea133fd7Smrg os=-linux-gnu 1113ea133fd7Smrg ;; 1114a253d6aeSmrg tx39) 1115a253d6aeSmrg basic_machine=mipstx39-unknown 1116a253d6aeSmrg ;; 1117a253d6aeSmrg tx39el) 1118a253d6aeSmrg basic_machine=mipstx39el-unknown 1119a253d6aeSmrg ;; 1120a253d6aeSmrg toad1) 1121a253d6aeSmrg basic_machine=pdp10-xkl 1122a253d6aeSmrg os=-tops20 1123a253d6aeSmrg ;; 1124a253d6aeSmrg tower | tower-32) 1125a253d6aeSmrg basic_machine=m68k-ncr 1126a253d6aeSmrg ;; 1127a253d6aeSmrg tpf) 1128a253d6aeSmrg basic_machine=s390x-ibm 1129a253d6aeSmrg os=-tpf 1130a253d6aeSmrg ;; 1131a253d6aeSmrg udi29k) 1132a253d6aeSmrg basic_machine=a29k-amd 1133a253d6aeSmrg os=-udi 1134a253d6aeSmrg ;; 1135a253d6aeSmrg ultra3) 1136a253d6aeSmrg basic_machine=a29k-nyu 1137a253d6aeSmrg os=-sym1 1138a253d6aeSmrg ;; 1139a253d6aeSmrg v810 | necv810) 1140a253d6aeSmrg basic_machine=v810-nec 1141a253d6aeSmrg os=-none 1142a253d6aeSmrg ;; 1143a253d6aeSmrg vaxv) 1144a253d6aeSmrg basic_machine=vax-dec 1145a253d6aeSmrg os=-sysv 1146a253d6aeSmrg ;; 1147a253d6aeSmrg vms) 1148a253d6aeSmrg basic_machine=vax-dec 1149a253d6aeSmrg os=-vms 1150a253d6aeSmrg ;; 1151a253d6aeSmrg vpp*|vx|vx-*) 1152a253d6aeSmrg basic_machine=f301-fujitsu 1153a253d6aeSmrg ;; 1154a253d6aeSmrg vxworks960) 1155a253d6aeSmrg basic_machine=i960-wrs 1156a253d6aeSmrg os=-vxworks 1157a253d6aeSmrg ;; 1158a253d6aeSmrg vxworks68) 1159a253d6aeSmrg basic_machine=m68k-wrs 1160a253d6aeSmrg os=-vxworks 1161a253d6aeSmrg ;; 1162a253d6aeSmrg vxworks29k) 1163a253d6aeSmrg basic_machine=a29k-wrs 1164a253d6aeSmrg os=-vxworks 1165a253d6aeSmrg ;; 1166a253d6aeSmrg w65*) 1167a253d6aeSmrg basic_machine=w65-wdc 1168a253d6aeSmrg os=-none 1169a253d6aeSmrg ;; 1170a253d6aeSmrg w89k-*) 1171a253d6aeSmrg basic_machine=hppa1.1-winbond 1172a253d6aeSmrg os=-proelf 1173a253d6aeSmrg ;; 1174a253d6aeSmrg xbox) 1175a253d6aeSmrg basic_machine=i686-pc 1176a253d6aeSmrg os=-mingw32 1177a253d6aeSmrg ;; 1178a253d6aeSmrg xps | xps100) 1179a253d6aeSmrg basic_machine=xps100-honeywell 1180a253d6aeSmrg ;; 1181a253d6aeSmrg ymp) 1182a253d6aeSmrg basic_machine=ymp-cray 1183a253d6aeSmrg os=-unicos 1184a253d6aeSmrg ;; 1185a253d6aeSmrg z8k-*-coff) 1186a253d6aeSmrg basic_machine=z8k-unknown 1187a253d6aeSmrg os=-sim 1188a253d6aeSmrg ;; 118925b89263Smrg z80-*-coff) 119025b89263Smrg basic_machine=z80-unknown 119125b89263Smrg os=-sim 119225b89263Smrg ;; 1193a253d6aeSmrg none) 1194a253d6aeSmrg basic_machine=none-none 1195a253d6aeSmrg os=-none 1196a253d6aeSmrg ;; 1197a253d6aeSmrg 1198a253d6aeSmrg# Here we handle the default manufacturer of certain CPU types. It is in 1199a253d6aeSmrg# some cases the only manufacturer, in others, it is the most popular. 1200a253d6aeSmrg w89k) 1201a253d6aeSmrg basic_machine=hppa1.1-winbond 1202a253d6aeSmrg ;; 1203a253d6aeSmrg op50n) 1204a253d6aeSmrg basic_machine=hppa1.1-oki 1205a253d6aeSmrg ;; 1206a253d6aeSmrg op60c) 1207a253d6aeSmrg basic_machine=hppa1.1-oki 1208a253d6aeSmrg ;; 1209a253d6aeSmrg romp) 1210a253d6aeSmrg basic_machine=romp-ibm 1211a253d6aeSmrg ;; 1212a253d6aeSmrg mmix) 1213a253d6aeSmrg basic_machine=mmix-knuth 1214a253d6aeSmrg ;; 1215a253d6aeSmrg rs6000) 1216a253d6aeSmrg basic_machine=rs6000-ibm 1217a253d6aeSmrg ;; 1218a253d6aeSmrg vax) 1219a253d6aeSmrg basic_machine=vax-dec 1220a253d6aeSmrg ;; 1221a253d6aeSmrg pdp10) 1222a253d6aeSmrg # there are many clones, so DEC is not a safe bet 1223a253d6aeSmrg basic_machine=pdp10-unknown 1224a253d6aeSmrg ;; 1225a253d6aeSmrg pdp11) 1226a253d6aeSmrg basic_machine=pdp11-dec 1227a253d6aeSmrg ;; 1228a253d6aeSmrg we32k) 1229a253d6aeSmrg basic_machine=we32k-att 1230a253d6aeSmrg ;; 123125b89263Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1232a253d6aeSmrg basic_machine=sh-unknown 1233a253d6aeSmrg ;; 1234ea133fd7Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1235a253d6aeSmrg basic_machine=sparc-sun 1236a253d6aeSmrg ;; 1237a253d6aeSmrg cydra) 1238a253d6aeSmrg basic_machine=cydra-cydrome 1239a253d6aeSmrg ;; 1240a253d6aeSmrg orion) 1241a253d6aeSmrg basic_machine=orion-highlevel 1242a253d6aeSmrg ;; 1243a253d6aeSmrg orion105) 1244a253d6aeSmrg basic_machine=clipper-highlevel 1245a253d6aeSmrg ;; 1246a253d6aeSmrg mac | mpw | mac-mpw) 1247a253d6aeSmrg basic_machine=m68k-apple 1248a253d6aeSmrg ;; 1249a253d6aeSmrg pmac | pmac-mpw) 1250a253d6aeSmrg basic_machine=powerpc-apple 1251a253d6aeSmrg ;; 1252a253d6aeSmrg *-unknown) 1253a253d6aeSmrg # Make sure to match an already-canonicalized machine name. 1254a253d6aeSmrg ;; 1255a253d6aeSmrg *) 1256a253d6aeSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1257a253d6aeSmrg exit 1 1258a253d6aeSmrg ;; 1259a253d6aeSmrgesac 1260a253d6aeSmrg 1261a253d6aeSmrg# Here we canonicalize certain aliases for manufacturers. 1262a253d6aeSmrgcase $basic_machine in 1263a253d6aeSmrg *-digital*) 1264a253d6aeSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1265a253d6aeSmrg ;; 1266a253d6aeSmrg *-commodore*) 1267a253d6aeSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1268a253d6aeSmrg ;; 1269a253d6aeSmrg *) 1270a253d6aeSmrg ;; 1271a253d6aeSmrgesac 1272a253d6aeSmrg 1273a253d6aeSmrg# Decode manufacturer-specific aliases for certain operating systems. 1274a253d6aeSmrg 1275a253d6aeSmrgif [ x"$os" != x"" ] 1276a253d6aeSmrgthen 1277a253d6aeSmrgcase $os in 1278a253d6aeSmrg # First match some system type aliases 1279a253d6aeSmrg # that might get confused with valid system types. 1280a253d6aeSmrg # -solaris* is a basic system type, with this one exception. 128125b89263Smrg -auroraux) 128225b89263Smrg os=-auroraux 128325b89263Smrg ;; 1284a253d6aeSmrg -solaris1 | -solaris1.*) 1285a253d6aeSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1286a253d6aeSmrg ;; 1287a253d6aeSmrg -solaris) 1288a253d6aeSmrg os=-solaris2 1289a253d6aeSmrg ;; 1290a253d6aeSmrg -svr4*) 1291a253d6aeSmrg os=-sysv4 1292a253d6aeSmrg ;; 1293a253d6aeSmrg -unixware*) 1294a253d6aeSmrg os=-sysv4.2uw 1295a253d6aeSmrg ;; 1296a253d6aeSmrg -gnu/linux*) 1297a253d6aeSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1298a253d6aeSmrg ;; 1299a253d6aeSmrg # First accept the basic system types. 1300a253d6aeSmrg # The portable systems comes first. 1301a253d6aeSmrg # Each alternative MUST END IN A *, to match a version number. 1302a253d6aeSmrg # -sysv* is not here because it comes later, after sysvr4. 1303a253d6aeSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 130425b89263Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 130525b89263Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 130625b89263Smrg | -sym* | -kopensolaris* \ 1307a253d6aeSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 130825b89263Smrg | -aos* | -aros* \ 1309a253d6aeSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1310a253d6aeSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1311ea133fd7Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1312ea133fd7Smrg | -openbsd* | -solidbsd* \ 1313a253d6aeSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1314a253d6aeSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1315a253d6aeSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1316a253d6aeSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 131725b89263Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1318a253d6aeSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 131925b89263Smrg | -mingw32* | -linux-gnu* | -linux-android* \ 132025b89263Smrg | -linux-newlib* | -linux-uclibc* \ 1321a253d6aeSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1322a253d6aeSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1323a253d6aeSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1324a253d6aeSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1325a253d6aeSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1326a253d6aeSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1327a253d6aeSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 132825b89263Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1329a253d6aeSmrg # Remember, each alternative MUST END IN *, to match a version number. 1330a253d6aeSmrg ;; 1331a253d6aeSmrg -qnx*) 1332a253d6aeSmrg case $basic_machine in 1333a253d6aeSmrg x86-* | i*86-*) 1334a253d6aeSmrg ;; 1335a253d6aeSmrg *) 1336a253d6aeSmrg os=-nto$os 1337a253d6aeSmrg ;; 1338a253d6aeSmrg esac 1339a253d6aeSmrg ;; 1340a253d6aeSmrg -nto-qnx*) 1341a253d6aeSmrg ;; 1342a253d6aeSmrg -nto*) 1343a253d6aeSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1344a253d6aeSmrg ;; 1345a253d6aeSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1346a253d6aeSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1347a253d6aeSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1348a253d6aeSmrg ;; 1349a253d6aeSmrg -mac*) 1350a253d6aeSmrg os=`echo $os | sed -e 's|mac|macos|'` 1351a253d6aeSmrg ;; 1352a253d6aeSmrg -linux-dietlibc) 1353a253d6aeSmrg os=-linux-dietlibc 1354a253d6aeSmrg ;; 1355a253d6aeSmrg -linux*) 1356a253d6aeSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1357a253d6aeSmrg ;; 1358a253d6aeSmrg -sunos5*) 1359a253d6aeSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1360a253d6aeSmrg ;; 1361a253d6aeSmrg -sunos6*) 1362a253d6aeSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1363a253d6aeSmrg ;; 1364a253d6aeSmrg -opened*) 1365a253d6aeSmrg os=-openedition 1366a253d6aeSmrg ;; 1367a253d6aeSmrg -os400*) 1368a253d6aeSmrg os=-os400 1369a253d6aeSmrg ;; 1370a253d6aeSmrg -wince*) 1371a253d6aeSmrg os=-wince 1372a253d6aeSmrg ;; 1373a253d6aeSmrg -osfrose*) 1374a253d6aeSmrg os=-osfrose 1375a253d6aeSmrg ;; 1376a253d6aeSmrg -osf*) 1377a253d6aeSmrg os=-osf 1378a253d6aeSmrg ;; 1379a253d6aeSmrg -utek*) 1380a253d6aeSmrg os=-bsd 1381a253d6aeSmrg ;; 1382a253d6aeSmrg -dynix*) 1383a253d6aeSmrg os=-bsd 1384a253d6aeSmrg ;; 1385a253d6aeSmrg -acis*) 1386a253d6aeSmrg os=-aos 1387a253d6aeSmrg ;; 1388a253d6aeSmrg -atheos*) 1389a253d6aeSmrg os=-atheos 1390a253d6aeSmrg ;; 1391a253d6aeSmrg -syllable*) 1392a253d6aeSmrg os=-syllable 1393a253d6aeSmrg ;; 1394a253d6aeSmrg -386bsd) 1395a253d6aeSmrg os=-bsd 1396a253d6aeSmrg ;; 1397a253d6aeSmrg -ctix* | -uts*) 1398a253d6aeSmrg os=-sysv 1399a253d6aeSmrg ;; 1400a253d6aeSmrg -nova*) 1401a253d6aeSmrg os=-rtmk-nova 1402a253d6aeSmrg ;; 1403a253d6aeSmrg -ns2 ) 1404a253d6aeSmrg os=-nextstep2 1405a253d6aeSmrg ;; 1406a253d6aeSmrg -nsk*) 1407a253d6aeSmrg os=-nsk 1408a253d6aeSmrg ;; 1409a253d6aeSmrg # Preserve the version number of sinix5. 1410a253d6aeSmrg -sinix5.*) 1411a253d6aeSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 1412a253d6aeSmrg ;; 1413a253d6aeSmrg -sinix*) 1414a253d6aeSmrg os=-sysv4 1415a253d6aeSmrg ;; 1416a253d6aeSmrg -tpf*) 1417a253d6aeSmrg os=-tpf 1418a253d6aeSmrg ;; 1419a253d6aeSmrg -triton*) 1420a253d6aeSmrg os=-sysv3 1421a253d6aeSmrg ;; 1422a253d6aeSmrg -oss*) 1423a253d6aeSmrg os=-sysv3 1424a253d6aeSmrg ;; 1425a253d6aeSmrg -svr4) 1426a253d6aeSmrg os=-sysv4 1427a253d6aeSmrg ;; 1428a253d6aeSmrg -svr3) 1429a253d6aeSmrg os=-sysv3 1430a253d6aeSmrg ;; 1431a253d6aeSmrg -sysvr4) 1432a253d6aeSmrg os=-sysv4 1433a253d6aeSmrg ;; 1434a253d6aeSmrg # This must come after -sysvr4. 1435a253d6aeSmrg -sysv*) 1436a253d6aeSmrg ;; 1437a253d6aeSmrg -ose*) 1438a253d6aeSmrg os=-ose 1439a253d6aeSmrg ;; 1440a253d6aeSmrg -es1800*) 1441a253d6aeSmrg os=-ose 1442a253d6aeSmrg ;; 1443a253d6aeSmrg -xenix) 1444a253d6aeSmrg os=-xenix 1445a253d6aeSmrg ;; 1446a253d6aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1447a253d6aeSmrg os=-mint 1448a253d6aeSmrg ;; 1449a253d6aeSmrg -aros*) 1450a253d6aeSmrg os=-aros 1451a253d6aeSmrg ;; 1452a253d6aeSmrg -kaos*) 1453a253d6aeSmrg os=-kaos 1454a253d6aeSmrg ;; 1455a253d6aeSmrg -zvmoe) 1456a253d6aeSmrg os=-zvmoe 1457a253d6aeSmrg ;; 145825b89263Smrg -dicos*) 145925b89263Smrg os=-dicos 146025b89263Smrg ;; 146125b89263Smrg -nacl*) 146225b89263Smrg ;; 1463a253d6aeSmrg -none) 1464a253d6aeSmrg ;; 1465a253d6aeSmrg *) 1466a253d6aeSmrg # Get rid of the `-' at the beginning of $os. 1467a253d6aeSmrg os=`echo $os | sed 's/[^-]*-//'` 1468a253d6aeSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1469a253d6aeSmrg exit 1 1470a253d6aeSmrg ;; 1471a253d6aeSmrgesac 1472a253d6aeSmrgelse 1473a253d6aeSmrg 1474a253d6aeSmrg# Here we handle the default operating systems that come with various machines. 1475a253d6aeSmrg# The value should be what the vendor currently ships out the door with their 1476a253d6aeSmrg# machine or put another way, the most popular os provided with the machine. 1477a253d6aeSmrg 1478a253d6aeSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1479a253d6aeSmrg# "-sun"), then you have to tell the case statement up towards the top 1480a253d6aeSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1481a253d6aeSmrg# will signal an error saying that MANUFACTURER isn't an operating 1482a253d6aeSmrg# system, and we'll never get to this point. 1483a253d6aeSmrg 1484a253d6aeSmrgcase $basic_machine in 1485ea133fd7Smrg score-*) 1486ea133fd7Smrg os=-elf 1487ea133fd7Smrg ;; 1488ea133fd7Smrg spu-*) 1489ea133fd7Smrg os=-elf 1490ea133fd7Smrg ;; 1491a253d6aeSmrg *-acorn) 1492a253d6aeSmrg os=-riscix1.2 1493a253d6aeSmrg ;; 1494a253d6aeSmrg arm*-rebel) 1495a253d6aeSmrg os=-linux 1496a253d6aeSmrg ;; 1497a253d6aeSmrg arm*-semi) 1498a253d6aeSmrg os=-aout 1499a253d6aeSmrg ;; 1500ea133fd7Smrg c4x-* | tic4x-*) 1501ea133fd7Smrg os=-coff 1502ea133fd7Smrg ;; 150325b89263Smrg tic54x-*) 150425b89263Smrg os=-coff 150525b89263Smrg ;; 150625b89263Smrg tic55x-*) 150725b89263Smrg os=-coff 150825b89263Smrg ;; 150925b89263Smrg tic6x-*) 151025b89263Smrg os=-coff 151125b89263Smrg ;; 1512a253d6aeSmrg # This must come before the *-dec entry. 1513a253d6aeSmrg pdp10-*) 1514a253d6aeSmrg os=-tops20 1515a253d6aeSmrg ;; 1516a253d6aeSmrg pdp11-*) 1517a253d6aeSmrg os=-none 1518a253d6aeSmrg ;; 1519a253d6aeSmrg *-dec | vax-*) 1520a253d6aeSmrg os=-ultrix4.2 1521a253d6aeSmrg ;; 1522a253d6aeSmrg m68*-apollo) 1523a253d6aeSmrg os=-domain 1524a253d6aeSmrg ;; 1525a253d6aeSmrg i386-sun) 1526a253d6aeSmrg os=-sunos4.0.2 1527a253d6aeSmrg ;; 1528a253d6aeSmrg m68000-sun) 1529a253d6aeSmrg os=-sunos3 1530a253d6aeSmrg # This also exists in the configure program, but was not the 1531a253d6aeSmrg # default. 1532a253d6aeSmrg # os=-sunos4 1533a253d6aeSmrg ;; 1534a253d6aeSmrg m68*-cisco) 1535a253d6aeSmrg os=-aout 1536a253d6aeSmrg ;; 1537ea133fd7Smrg mep-*) 1538ea133fd7Smrg os=-elf 1539ea133fd7Smrg ;; 1540a253d6aeSmrg mips*-cisco) 1541a253d6aeSmrg os=-elf 1542a253d6aeSmrg ;; 1543a253d6aeSmrg mips*-*) 1544a253d6aeSmrg os=-elf 1545a253d6aeSmrg ;; 1546a253d6aeSmrg or32-*) 1547a253d6aeSmrg os=-coff 1548a253d6aeSmrg ;; 1549a253d6aeSmrg *-tti) # must be before sparc entry or we get the wrong os. 1550a253d6aeSmrg os=-sysv3 1551a253d6aeSmrg ;; 1552a253d6aeSmrg sparc-* | *-sun) 1553a253d6aeSmrg os=-sunos4.1.1 1554a253d6aeSmrg ;; 1555a253d6aeSmrg *-be) 1556a253d6aeSmrg os=-beos 1557a253d6aeSmrg ;; 1558a253d6aeSmrg *-haiku) 1559a253d6aeSmrg os=-haiku 1560a253d6aeSmrg ;; 1561a253d6aeSmrg *-ibm) 1562a253d6aeSmrg os=-aix 1563a253d6aeSmrg ;; 1564a253d6aeSmrg *-knuth) 1565a253d6aeSmrg os=-mmixware 1566a253d6aeSmrg ;; 1567a253d6aeSmrg *-wec) 1568a253d6aeSmrg os=-proelf 1569a253d6aeSmrg ;; 1570a253d6aeSmrg *-winbond) 1571a253d6aeSmrg os=-proelf 1572a253d6aeSmrg ;; 1573a253d6aeSmrg *-oki) 1574a253d6aeSmrg os=-proelf 1575a253d6aeSmrg ;; 1576a253d6aeSmrg *-hp) 1577a253d6aeSmrg os=-hpux 1578a253d6aeSmrg ;; 1579a253d6aeSmrg *-hitachi) 1580a253d6aeSmrg os=-hiux 1581a253d6aeSmrg ;; 1582a253d6aeSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1583a253d6aeSmrg os=-sysv 1584a253d6aeSmrg ;; 1585a253d6aeSmrg *-cbm) 1586a253d6aeSmrg os=-amigaos 1587a253d6aeSmrg ;; 1588a253d6aeSmrg *-dg) 1589a253d6aeSmrg os=-dgux 1590a253d6aeSmrg ;; 1591a253d6aeSmrg *-dolphin) 1592a253d6aeSmrg os=-sysv3 1593a253d6aeSmrg ;; 1594a253d6aeSmrg m68k-ccur) 1595a253d6aeSmrg os=-rtu 1596a253d6aeSmrg ;; 1597a253d6aeSmrg m88k-omron*) 1598a253d6aeSmrg os=-luna 1599a253d6aeSmrg ;; 1600a253d6aeSmrg *-next ) 1601a253d6aeSmrg os=-nextstep 1602a253d6aeSmrg ;; 1603a253d6aeSmrg *-sequent) 1604a253d6aeSmrg os=-ptx 1605a253d6aeSmrg ;; 1606a253d6aeSmrg *-crds) 1607a253d6aeSmrg os=-unos 1608a253d6aeSmrg ;; 1609a253d6aeSmrg *-ns) 1610a253d6aeSmrg os=-genix 1611a253d6aeSmrg ;; 1612a253d6aeSmrg i370-*) 1613a253d6aeSmrg os=-mvs 1614a253d6aeSmrg ;; 1615a253d6aeSmrg *-next) 1616a253d6aeSmrg os=-nextstep3 1617a253d6aeSmrg ;; 1618a253d6aeSmrg *-gould) 1619a253d6aeSmrg os=-sysv 1620a253d6aeSmrg ;; 1621a253d6aeSmrg *-highlevel) 1622a253d6aeSmrg os=-bsd 1623a253d6aeSmrg ;; 1624a253d6aeSmrg *-encore) 1625a253d6aeSmrg os=-bsd 1626a253d6aeSmrg ;; 1627a253d6aeSmrg *-sgi) 1628a253d6aeSmrg os=-irix 1629a253d6aeSmrg ;; 1630a253d6aeSmrg *-siemens) 1631a253d6aeSmrg os=-sysv4 1632a253d6aeSmrg ;; 1633a253d6aeSmrg *-masscomp) 1634a253d6aeSmrg os=-rtu 1635a253d6aeSmrg ;; 1636a253d6aeSmrg f30[01]-fujitsu | f700-fujitsu) 1637a253d6aeSmrg os=-uxpv 1638a253d6aeSmrg ;; 1639a253d6aeSmrg *-rom68k) 1640a253d6aeSmrg os=-coff 1641a253d6aeSmrg ;; 1642a253d6aeSmrg *-*bug) 1643a253d6aeSmrg os=-coff 1644a253d6aeSmrg ;; 1645a253d6aeSmrg *-apple) 1646a253d6aeSmrg os=-macos 1647a253d6aeSmrg ;; 1648a253d6aeSmrg *-atari*) 1649a253d6aeSmrg os=-mint 1650a253d6aeSmrg ;; 1651a253d6aeSmrg *) 1652a253d6aeSmrg os=-none 1653a253d6aeSmrg ;; 1654a253d6aeSmrgesac 1655a253d6aeSmrgfi 1656a253d6aeSmrg 1657a253d6aeSmrg# Here we handle the case where we know the os, and the CPU type, but not the 1658a253d6aeSmrg# manufacturer. We pick the logical manufacturer. 1659a253d6aeSmrgvendor=unknown 1660a253d6aeSmrgcase $basic_machine in 1661a253d6aeSmrg *-unknown) 1662a253d6aeSmrg case $os in 1663a253d6aeSmrg -riscix*) 1664a253d6aeSmrg vendor=acorn 1665a253d6aeSmrg ;; 1666a253d6aeSmrg -sunos*) 1667a253d6aeSmrg vendor=sun 1668a253d6aeSmrg ;; 166925b89263Smrg -cnk*|-aix*) 1670a253d6aeSmrg vendor=ibm 1671a253d6aeSmrg ;; 1672a253d6aeSmrg -beos*) 1673a253d6aeSmrg vendor=be 1674a253d6aeSmrg ;; 1675a253d6aeSmrg -hpux*) 1676a253d6aeSmrg vendor=hp 1677a253d6aeSmrg ;; 1678a253d6aeSmrg -mpeix*) 1679a253d6aeSmrg vendor=hp 1680a253d6aeSmrg ;; 1681a253d6aeSmrg -hiux*) 1682a253d6aeSmrg vendor=hitachi 1683a253d6aeSmrg ;; 1684a253d6aeSmrg -unos*) 1685a253d6aeSmrg vendor=crds 1686a253d6aeSmrg ;; 1687a253d6aeSmrg -dgux*) 1688a253d6aeSmrg vendor=dg 1689a253d6aeSmrg ;; 1690a253d6aeSmrg -luna*) 1691a253d6aeSmrg vendor=omron 1692a253d6aeSmrg ;; 1693a253d6aeSmrg -genix*) 1694a253d6aeSmrg vendor=ns 1695a253d6aeSmrg ;; 1696a253d6aeSmrg -mvs* | -opened*) 1697a253d6aeSmrg vendor=ibm 1698a253d6aeSmrg ;; 1699a253d6aeSmrg -os400*) 1700a253d6aeSmrg vendor=ibm 1701a253d6aeSmrg ;; 1702a253d6aeSmrg -ptx*) 1703a253d6aeSmrg vendor=sequent 1704a253d6aeSmrg ;; 1705a253d6aeSmrg -tpf*) 1706a253d6aeSmrg vendor=ibm 1707a253d6aeSmrg ;; 1708a253d6aeSmrg -vxsim* | -vxworks* | -windiss*) 1709a253d6aeSmrg vendor=wrs 1710a253d6aeSmrg ;; 1711a253d6aeSmrg -aux*) 1712a253d6aeSmrg vendor=apple 1713a253d6aeSmrg ;; 1714a253d6aeSmrg -hms*) 1715a253d6aeSmrg vendor=hitachi 1716a253d6aeSmrg ;; 1717a253d6aeSmrg -mpw* | -macos*) 1718a253d6aeSmrg vendor=apple 1719a253d6aeSmrg ;; 1720a253d6aeSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1721a253d6aeSmrg vendor=atari 1722a253d6aeSmrg ;; 1723a253d6aeSmrg -vos*) 1724a253d6aeSmrg vendor=stratus 1725a253d6aeSmrg ;; 1726a253d6aeSmrg esac 1727a253d6aeSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1728a253d6aeSmrg ;; 1729a253d6aeSmrgesac 1730a253d6aeSmrg 1731a253d6aeSmrgecho $basic_machine$os 1732a253d6aeSmrgexit 1733a253d6aeSmrg 1734a253d6aeSmrg# Local variables: 1735a253d6aeSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1736a253d6aeSmrg# time-stamp-start: "timestamp='" 1737a253d6aeSmrg# time-stamp-format: "%:y-%02m-%02d" 1738a253d6aeSmrg# time-stamp-end: "'" 1739a253d6aeSmrg# End: 1740