config.sub revision f1ee322d
1c43cc173Smrg#! /bin/sh 2c43cc173Smrg# Configuration validation subroutine script. 3c43cc173Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4f1ee322dSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5f1ee322dSmrg# 2011, 2012 Free Software Foundation, Inc. 6c43cc173Smrg 7f1ee322dSmrgtimestamp='2012-04-18' 8c43cc173Smrg 9c43cc173Smrg# This file is (in principle) common to ALL GNU software. 10c43cc173Smrg# The presence of a machine in this file suggests that SOME GNU software 11c43cc173Smrg# can handle that machine. It does not imply ALL GNU software can. 12c43cc173Smrg# 13c43cc173Smrg# This file is free software; you can redistribute it and/or modify 14c43cc173Smrg# it under the terms of the GNU General Public License as published by 15c43cc173Smrg# the Free Software Foundation; either version 2 of the License, or 16c43cc173Smrg# (at your option) any later version. 17c43cc173Smrg# 18c43cc173Smrg# This program is distributed in the hope that it will be useful, 19c43cc173Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20c43cc173Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21c43cc173Smrg# GNU General Public License for more details. 22c43cc173Smrg# 23c43cc173Smrg# You should have received a copy of the GNU General Public License 24f1ee322dSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 2521e67964Smrg# 26c43cc173Smrg# As a special exception to the GNU General Public License, if you 27c43cc173Smrg# distribute this file as part of a program that contains a 28c43cc173Smrg# configuration script generated by Autoconf, you may include it under 29c43cc173Smrg# the same distribution terms that you use for the rest of that program. 30c43cc173Smrg 3121e67964Smrg 32c43cc173Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 333e256790Smrg# diff and a properly formatted GNU ChangeLog entry. 34c43cc173Smrg# 35c43cc173Smrg# Configuration subroutine to validate and canonicalize a configuration type. 36c43cc173Smrg# Supply the specified configuration type as an argument. 37c43cc173Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 38c43cc173Smrg# Otherwise, we print the canonical config type on stdout and succeed. 39c43cc173Smrg 403e256790Smrg# You can get the latest version of this script from: 413e256790Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 423e256790Smrg 43c43cc173Smrg# This file is supposed to be the same for all GNU packages 44c43cc173Smrg# and recognize all the CPU types, system types and aliases 45c43cc173Smrg# that are meaningful with *any* GNU software. 46c43cc173Smrg# Each package is responsible for reporting which valid configurations 47c43cc173Smrg# it does not support. The user should be able to distinguish 48c43cc173Smrg# a failure to support a valid configuration from a meaningless 49c43cc173Smrg# configuration. 50c43cc173Smrg 51c43cc173Smrg# The goal of this file is to map all the various variations of a given 52c43cc173Smrg# machine specification into a single specification in the form: 53c43cc173Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 54c43cc173Smrg# or in some cases, the newer four-part form: 55c43cc173Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 56c43cc173Smrg# It is wrong to echo any other type of specification. 57c43cc173Smrg 58c43cc173Smrgme=`echo "$0" | sed -e 's,.*/,,'` 59c43cc173Smrg 60c43cc173Smrgusage="\ 61c43cc173SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 62c43cc173Smrg $0 [OPTION] ALIAS 63c43cc173Smrg 64c43cc173SmrgCanonicalize a configuration name. 65c43cc173Smrg 66c43cc173SmrgOperation modes: 67c43cc173Smrg -h, --help print this help, then exit 68c43cc173Smrg -t, --time-stamp print date of last modification, then exit 69c43cc173Smrg -v, --version print version number, then exit 70c43cc173Smrg 71c43cc173SmrgReport bugs and patches to <config-patches@gnu.org>." 72c43cc173Smrg 73c43cc173Smrgversion="\ 74c43cc173SmrgGNU config.sub ($timestamp) 75c43cc173Smrg 76f1ee322dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 77f1ee322dSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 78f1ee322dSmrgFree Software Foundation, Inc. 79c43cc173Smrg 80c43cc173SmrgThis is free software; see the source for copying conditions. There is NO 81c43cc173Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 82c43cc173Smrg 83c43cc173Smrghelp=" 84c43cc173SmrgTry \`$me --help' for more information." 85c43cc173Smrg 86c43cc173Smrg# Parse command line 87c43cc173Smrgwhile test $# -gt 0 ; do 88c43cc173Smrg case $1 in 89c43cc173Smrg --time-stamp | --time* | -t ) 9021e67964Smrg echo "$timestamp" ; exit ;; 91c43cc173Smrg --version | -v ) 9221e67964Smrg echo "$version" ; exit ;; 93c43cc173Smrg --help | --h* | -h ) 9421e67964Smrg echo "$usage"; exit ;; 95c43cc173Smrg -- ) # Stop option processing 96c43cc173Smrg shift; break ;; 97c43cc173Smrg - ) # Use stdin as input. 98c43cc173Smrg break ;; 99c43cc173Smrg -* ) 100c43cc173Smrg echo "$me: invalid option $1$help" 101c43cc173Smrg exit 1 ;; 102c43cc173Smrg 103c43cc173Smrg *local*) 104c43cc173Smrg # First pass through any local machine types. 105c43cc173Smrg echo $1 10621e67964Smrg exit ;; 107c43cc173Smrg 108c43cc173Smrg * ) 109c43cc173Smrg break ;; 110c43cc173Smrg esac 111c43cc173Smrgdone 112c43cc173Smrg 113c43cc173Smrgcase $# in 114c43cc173Smrg 0) echo "$me: missing argument$help" >&2 115c43cc173Smrg exit 1;; 116c43cc173Smrg 1) ;; 117c43cc173Smrg *) echo "$me: too many arguments$help" >&2 118c43cc173Smrg exit 1;; 119c43cc173Smrgesac 120c43cc173Smrg 121c43cc173Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 122c43cc173Smrg# Here we must recognize all the valid KERNEL-OS combinations. 123c43cc173Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 124c43cc173Smrgcase $maybe_os in 125f1ee322dSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 126f1ee322dSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 127f1ee322dSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 128c27c18e8Smrg kopensolaris*-gnu* | \ 12921e67964Smrg storm-chaos* | os2-emx* | rtmk-nova*) 130c43cc173Smrg os=-$maybe_os 131c43cc173Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 132c43cc173Smrg ;; 133f1ee322dSmrg android-linux) 134f1ee322dSmrg os=-linux-android 135f1ee322dSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 136f1ee322dSmrg ;; 137c43cc173Smrg *) 138c43cc173Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 139c43cc173Smrg if [ $basic_machine != $1 ] 140c43cc173Smrg then os=`echo $1 | sed 's/.*-/-/'` 141c43cc173Smrg else os=; fi 142c43cc173Smrg ;; 143c43cc173Smrgesac 144c43cc173Smrg 145c43cc173Smrg### Let's recognize common machines as not being operating systems so 146c43cc173Smrg### that things like config.sub decstation-3100 work. We also 147c43cc173Smrg### recognize some manufacturers as not being operating systems, so we 148c43cc173Smrg### can provide default operating systems below. 149c43cc173Smrgcase $os in 150c43cc173Smrg -sun*os*) 151c43cc173Smrg # Prevent following clause from handling this invalid input. 152c43cc173Smrg ;; 153c43cc173Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 154c43cc173Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 155c43cc173Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 156c43cc173Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 157c43cc173Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 158c43cc173Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1593e256790Smrg -apple | -axis | -knuth | -cray | -microblaze) 160c43cc173Smrg os= 161c43cc173Smrg basic_machine=$1 162c43cc173Smrg ;; 163f1ee322dSmrg -bluegene*) 164f1ee322dSmrg os=-cnk 1653e256790Smrg ;; 166c43cc173Smrg -sim | -cisco | -oki | -wec | -winbond) 167c43cc173Smrg os= 168c43cc173Smrg basic_machine=$1 169c43cc173Smrg ;; 170c43cc173Smrg -scout) 171c43cc173Smrg ;; 172c43cc173Smrg -wrs) 173c43cc173Smrg os=-vxworks 174c43cc173Smrg basic_machine=$1 175c43cc173Smrg ;; 176c43cc173Smrg -chorusos*) 177c43cc173Smrg os=-chorusos 178c43cc173Smrg basic_machine=$1 179c43cc173Smrg ;; 180f1ee322dSmrg -chorusrdb) 181f1ee322dSmrg os=-chorusrdb 182c43cc173Smrg basic_machine=$1 183f1ee322dSmrg ;; 184c43cc173Smrg -hiux*) 185c43cc173Smrg os=-hiuxwe2 186c43cc173Smrg ;; 18721e67964Smrg -sco6) 18821e67964Smrg os=-sco5v6 18921e67964Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19021e67964Smrg ;; 191c43cc173Smrg -sco5) 192c43cc173Smrg os=-sco3.2v5 193c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 194c43cc173Smrg ;; 195c43cc173Smrg -sco4) 196c43cc173Smrg os=-sco3.2v4 197c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 198c43cc173Smrg ;; 199c43cc173Smrg -sco3.2.[4-9]*) 200c43cc173Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 201c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 202c43cc173Smrg ;; 203c43cc173Smrg -sco3.2v[4-9]*) 204c43cc173Smrg # Don't forget version if it is 3.2v4 or newer. 205c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 206c43cc173Smrg ;; 20721e67964Smrg -sco5v6*) 20821e67964Smrg # Don't forget version if it is 3.2v4 or newer. 20921e67964Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21021e67964Smrg ;; 211c43cc173Smrg -sco*) 212c43cc173Smrg os=-sco3.2v2 213c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 214c43cc173Smrg ;; 215c43cc173Smrg -udk*) 216c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 217c43cc173Smrg ;; 218c43cc173Smrg -isc) 219c43cc173Smrg os=-isc2.2 220c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 221c43cc173Smrg ;; 222c43cc173Smrg -clix*) 223c43cc173Smrg basic_machine=clipper-intergraph 224c43cc173Smrg ;; 225c43cc173Smrg -isc*) 226c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 227c43cc173Smrg ;; 228f1ee322dSmrg -lynx*178) 229f1ee322dSmrg os=-lynxos178 230f1ee322dSmrg ;; 231f1ee322dSmrg -lynx*5) 232f1ee322dSmrg os=-lynxos5 233f1ee322dSmrg ;; 234c43cc173Smrg -lynx*) 235c43cc173Smrg os=-lynxos 236c43cc173Smrg ;; 237c43cc173Smrg -ptx*) 238c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 239c43cc173Smrg ;; 240c43cc173Smrg -windowsnt*) 241c43cc173Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 242c43cc173Smrg ;; 243c43cc173Smrg -psos*) 244c43cc173Smrg os=-psos 245c43cc173Smrg ;; 246c43cc173Smrg -mint | -mint[0-9]*) 247c43cc173Smrg basic_machine=m68k-atari 248c43cc173Smrg os=-mint 249c43cc173Smrg ;; 250c43cc173Smrgesac 251c43cc173Smrg 252c43cc173Smrg# Decode aliases for certain CPU-COMPANY combinations. 253c43cc173Smrgcase $basic_machine in 254c43cc173Smrg # Recognize the basic CPU types without company name. 255c43cc173Smrg # Some are omitted here because they have special meanings below. 256c43cc173Smrg 1750a | 580 \ 257c43cc173Smrg | a29k \ 258f1ee322dSmrg | aarch64 | aarch64_be \ 259c43cc173Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 260c43cc173Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 26121e67964Smrg | am33_2.0 \ 26221e67964Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 263f1ee322dSmrg | be32 | be64 \ 26421e67964Smrg | bfin \ 265c43cc173Smrg | c4x | clipper \ 266c43cc173Smrg | d10v | d30v | dlx | dsp16xx \ 267f1ee322dSmrg | epiphany \ 26821e67964Smrg | fido | fr30 | frv \ 269c43cc173Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 270f1ee322dSmrg | hexagon \ 271c43cc173Smrg | i370 | i860 | i960 | ia64 \ 27221e67964Smrg | ip2k | iq2000 \ 273f1ee322dSmrg | le32 | le64 \ 274c27c18e8Smrg | lm32 \ 27521e67964Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 276c27c18e8Smrg | maxq | mb | microblaze | mcore | mep | metag \ 277c43cc173Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 278c43cc173Smrg | mips16 \ 279c43cc173Smrg | mips64 | mips64el \ 280c27c18e8Smrg | mips64octeon | mips64octeonel \ 281c43cc173Smrg | mips64orion | mips64orionel \ 282c27c18e8Smrg | mips64r5900 | mips64r5900el \ 283c27c18e8Smrg | mips64vr | mips64vrel \ 284c43cc173Smrg | mips64vr4100 | mips64vr4100el \ 285c43cc173Smrg | mips64vr4300 | mips64vr4300el \ 286c43cc173Smrg | mips64vr5000 | mips64vr5000el \ 28721e67964Smrg | mips64vr5900 | mips64vr5900el \ 288c43cc173Smrg | mipsisa32 | mipsisa32el \ 289c43cc173Smrg | mipsisa32r2 | mipsisa32r2el \ 290c43cc173Smrg | mipsisa64 | mipsisa64el \ 29121e67964Smrg | mipsisa64r2 | mipsisa64r2el \ 292c43cc173Smrg | mipsisa64sb1 | mipsisa64sb1el \ 293c43cc173Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 294c43cc173Smrg | mipstx39 | mipstx39el \ 295c43cc173Smrg | mn10200 | mn10300 \ 296c27c18e8Smrg | moxie \ 29721e67964Smrg | mt \ 298c43cc173Smrg | msp430 \ 299f1ee322dSmrg | nds32 | nds32le | nds32be \ 30021e67964Smrg | nios | nios2 \ 301c43cc173Smrg | ns16k | ns32k \ 302f1ee322dSmrg | open8 \ 30321e67964Smrg | or32 \ 304c43cc173Smrg | pdp10 | pdp11 | pj | pjl \ 305f1ee322dSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 306c43cc173Smrg | pyramid \ 307f1ee322dSmrg | rl78 | rx \ 30821e67964Smrg | score \ 309c27c18e8Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 310c43cc173Smrg | sh64 | sh64le \ 31121e67964Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 31221e67964Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 313f1ee322dSmrg | spu \ 314f1ee322dSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3153e256790Smrg | ubicom32 \ 316f1ee322dSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 317c43cc173Smrg | we32k \ 318f1ee322dSmrg | x86 | xc16x | xstormy16 | xtensa \ 319c27c18e8Smrg | z8k | z80) 320c43cc173Smrg basic_machine=$basic_machine-unknown 321c43cc173Smrg ;; 322f1ee322dSmrg c54x) 323f1ee322dSmrg basic_machine=tic54x-unknown 324f1ee322dSmrg ;; 325f1ee322dSmrg c55x) 326f1ee322dSmrg basic_machine=tic55x-unknown 327f1ee322dSmrg ;; 328f1ee322dSmrg c6x) 329f1ee322dSmrg basic_machine=tic6x-unknown 330f1ee322dSmrg ;; 331f1ee322dSmrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 332c43cc173Smrg basic_machine=$basic_machine-unknown 333c43cc173Smrg os=-none 334c43cc173Smrg ;; 335c43cc173Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 336c43cc173Smrg ;; 33721e67964Smrg ms1) 33821e67964Smrg basic_machine=mt-unknown 33921e67964Smrg ;; 340c43cc173Smrg 341f1ee322dSmrg strongarm | thumb | xscale) 342f1ee322dSmrg basic_machine=arm-unknown 343f1ee322dSmrg ;; 344f1ee322dSmrg xgate) 345f1ee322dSmrg basic_machine=$basic_machine-unknown 346f1ee322dSmrg os=-none 347f1ee322dSmrg ;; 348f1ee322dSmrg xscaleeb) 349f1ee322dSmrg basic_machine=armeb-unknown 350f1ee322dSmrg ;; 351f1ee322dSmrg 352f1ee322dSmrg xscaleel) 353f1ee322dSmrg basic_machine=armel-unknown 354f1ee322dSmrg ;; 355f1ee322dSmrg 356c43cc173Smrg # We use `pc' rather than `unknown' 357c43cc173Smrg # because (1) that's what they normally are, and 358c43cc173Smrg # (2) the word "unknown" tends to confuse beginning users. 359c43cc173Smrg i*86 | x86_64) 360c43cc173Smrg basic_machine=$basic_machine-pc 361c43cc173Smrg ;; 362c43cc173Smrg # Object if more than one company name word. 363c43cc173Smrg *-*-*) 364c43cc173Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 365c43cc173Smrg exit 1 366c43cc173Smrg ;; 367c43cc173Smrg # Recognize the basic CPU types with company name. 368c43cc173Smrg 580-* \ 369c43cc173Smrg | a29k-* \ 370f1ee322dSmrg | aarch64-* | aarch64_be-* \ 371c43cc173Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 372c43cc173Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 37321e67964Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 374c43cc173Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 37521e67964Smrg | avr-* | avr32-* \ 376f1ee322dSmrg | be32-* | be64-* \ 37721e67964Smrg | bfin-* | bs2000-* \ 378f1ee322dSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 37921e67964Smrg | clipper-* | craynv-* | cydra-* \ 380c43cc173Smrg | d10v-* | d30v-* | dlx-* \ 381c43cc173Smrg | elxsi-* \ 38221e67964Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 383c43cc173Smrg | h8300-* | h8500-* \ 384c43cc173Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 385f1ee322dSmrg | hexagon-* \ 386c43cc173Smrg | i*86-* | i860-* | i960-* | ia64-* \ 38721e67964Smrg | ip2k-* | iq2000-* \ 388f1ee322dSmrg | le32-* | le64-* \ 389c27c18e8Smrg | lm32-* \ 39021e67964Smrg | m32c-* | m32r-* | m32rle-* \ 391c43cc173Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3923e256790Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 393c43cc173Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 394c43cc173Smrg | mips16-* \ 395c43cc173Smrg | mips64-* | mips64el-* \ 396c27c18e8Smrg | mips64octeon-* | mips64octeonel-* \ 397c43cc173Smrg | mips64orion-* | mips64orionel-* \ 398c27c18e8Smrg | mips64r5900-* | mips64r5900el-* \ 399c27c18e8Smrg | mips64vr-* | mips64vrel-* \ 400c43cc173Smrg | mips64vr4100-* | mips64vr4100el-* \ 401c43cc173Smrg | mips64vr4300-* | mips64vr4300el-* \ 402c43cc173Smrg | mips64vr5000-* | mips64vr5000el-* \ 40321e67964Smrg | mips64vr5900-* | mips64vr5900el-* \ 404c43cc173Smrg | mipsisa32-* | mipsisa32el-* \ 405c43cc173Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 406c43cc173Smrg | mipsisa64-* | mipsisa64el-* \ 40721e67964Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 408c43cc173Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 409c43cc173Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 410c43cc173Smrg | mipstx39-* | mipstx39el-* \ 41121e67964Smrg | mmix-* \ 41221e67964Smrg | mt-* \ 413c43cc173Smrg | msp430-* \ 414f1ee322dSmrg | nds32-* | nds32le-* | nds32be-* \ 41521e67964Smrg | nios-* | nios2-* \ 41621e67964Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 417f1ee322dSmrg | open8-* \ 418c43cc173Smrg | orion-* \ 419c43cc173Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 420f1ee322dSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 421c43cc173Smrg | pyramid-* \ 422f1ee322dSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 423c27c18e8Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 424c43cc173Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 42521e67964Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 42621e67964Smrg | sparclite-* \ 427f1ee322dSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 428f1ee322dSmrg | tahoe-* \ 429f1ee322dSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 430f1ee322dSmrg | tile*-* \ 431c43cc173Smrg | tron-* \ 4323e256790Smrg | ubicom32-* \ 433f1ee322dSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 434f1ee322dSmrg | vax-* \ 435c43cc173Smrg | we32k-* \ 436f1ee322dSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 437c27c18e8Smrg | xstormy16-* | xtensa*-* \ 438c43cc173Smrg | ymp-* \ 439c27c18e8Smrg | z8k-* | z80-*) 440c27c18e8Smrg ;; 441c27c18e8Smrg # Recognize the basic CPU types without company name, with glob match. 442c27c18e8Smrg xtensa*) 443c27c18e8Smrg basic_machine=$basic_machine-unknown 444c43cc173Smrg ;; 445c43cc173Smrg # Recognize the various machine names and aliases which stand 446c43cc173Smrg # for a CPU type and a company and sometimes even an OS. 447c43cc173Smrg 386bsd) 448c43cc173Smrg basic_machine=i386-unknown 449c43cc173Smrg os=-bsd 450c43cc173Smrg ;; 451c43cc173Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 452c43cc173Smrg basic_machine=m68000-att 453c43cc173Smrg ;; 454c43cc173Smrg 3b*) 455c43cc173Smrg basic_machine=we32k-att 456c43cc173Smrg ;; 457c43cc173Smrg a29khif) 458c43cc173Smrg basic_machine=a29k-amd 459c43cc173Smrg os=-udi 460c43cc173Smrg ;; 461f1ee322dSmrg abacus) 46221e67964Smrg basic_machine=abacus-unknown 46321e67964Smrg ;; 464c43cc173Smrg adobe68k) 465c43cc173Smrg basic_machine=m68010-adobe 466c43cc173Smrg os=-scout 467c43cc173Smrg ;; 468c43cc173Smrg alliant | fx80) 469c43cc173Smrg basic_machine=fx80-alliant 470c43cc173Smrg ;; 471c43cc173Smrg altos | altos3068) 472c43cc173Smrg basic_machine=m68k-altos 473c43cc173Smrg ;; 474c43cc173Smrg am29k) 475c43cc173Smrg basic_machine=a29k-none 476c43cc173Smrg os=-bsd 477c43cc173Smrg ;; 478c43cc173Smrg amd64) 479c43cc173Smrg basic_machine=x86_64-pc 480c43cc173Smrg ;; 48121e67964Smrg amd64-*) 48221e67964Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 48321e67964Smrg ;; 484c43cc173Smrg amdahl) 485c43cc173Smrg basic_machine=580-amdahl 486c43cc173Smrg os=-sysv 487c43cc173Smrg ;; 488c43cc173Smrg amiga | amiga-*) 489c43cc173Smrg basic_machine=m68k-unknown 490c43cc173Smrg ;; 491c43cc173Smrg amigaos | amigados) 492c43cc173Smrg basic_machine=m68k-unknown 493c43cc173Smrg os=-amigaos 494c43cc173Smrg ;; 495c43cc173Smrg amigaunix | amix) 496c43cc173Smrg basic_machine=m68k-unknown 497c43cc173Smrg os=-sysv4 498c43cc173Smrg ;; 499c43cc173Smrg apollo68) 500c43cc173Smrg basic_machine=m68k-apollo 501c43cc173Smrg os=-sysv 502c43cc173Smrg ;; 503c43cc173Smrg apollo68bsd) 504c43cc173Smrg basic_machine=m68k-apollo 505c43cc173Smrg os=-bsd 506c43cc173Smrg ;; 507c27c18e8Smrg aros) 508c27c18e8Smrg basic_machine=i386-pc 509c27c18e8Smrg os=-aros 510c27c18e8Smrg ;; 511c43cc173Smrg aux) 512c43cc173Smrg basic_machine=m68k-apple 513c43cc173Smrg os=-aux 514c43cc173Smrg ;; 515c43cc173Smrg balance) 516c43cc173Smrg basic_machine=ns32k-sequent 517c43cc173Smrg os=-dynix 518c43cc173Smrg ;; 519c27c18e8Smrg blackfin) 520c27c18e8Smrg basic_machine=bfin-unknown 521c27c18e8Smrg os=-linux 522c27c18e8Smrg ;; 523c27c18e8Smrg blackfin-*) 524c27c18e8Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 525c27c18e8Smrg os=-linux 526c27c18e8Smrg ;; 5273e256790Smrg bluegene*) 5283e256790Smrg basic_machine=powerpc-ibm 5293e256790Smrg os=-cnk 5303e256790Smrg ;; 531f1ee322dSmrg c54x-*) 532f1ee322dSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 533f1ee322dSmrg ;; 534f1ee322dSmrg c55x-*) 535f1ee322dSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 536f1ee322dSmrg ;; 537f1ee322dSmrg c6x-*) 538f1ee322dSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 539f1ee322dSmrg ;; 540c43cc173Smrg c90) 541c43cc173Smrg basic_machine=c90-cray 542c43cc173Smrg os=-unicos 543c43cc173Smrg ;; 544f1ee322dSmrg cegcc) 545c27c18e8Smrg basic_machine=arm-unknown 546c27c18e8Smrg os=-cegcc 547c27c18e8Smrg ;; 548c43cc173Smrg convex-c1) 549c43cc173Smrg basic_machine=c1-convex 550c43cc173Smrg os=-bsd 551c43cc173Smrg ;; 552c43cc173Smrg convex-c2) 553c43cc173Smrg basic_machine=c2-convex 554c43cc173Smrg os=-bsd 555c43cc173Smrg ;; 556c43cc173Smrg convex-c32) 557c43cc173Smrg basic_machine=c32-convex 558c43cc173Smrg os=-bsd 559c43cc173Smrg ;; 560c43cc173Smrg convex-c34) 561c43cc173Smrg basic_machine=c34-convex 562c43cc173Smrg os=-bsd 563c43cc173Smrg ;; 564c43cc173Smrg convex-c38) 565c43cc173Smrg basic_machine=c38-convex 566c43cc173Smrg os=-bsd 567c43cc173Smrg ;; 568c43cc173Smrg cray | j90) 569c43cc173Smrg basic_machine=j90-cray 570c43cc173Smrg os=-unicos 571c43cc173Smrg ;; 57221e67964Smrg craynv) 57321e67964Smrg basic_machine=craynv-cray 57421e67964Smrg os=-unicosmp 57521e67964Smrg ;; 576f1ee322dSmrg cr16 | cr16-*) 577c27c18e8Smrg basic_machine=cr16-unknown 57821e67964Smrg os=-elf 57921e67964Smrg ;; 580c43cc173Smrg crds | unos) 581c43cc173Smrg basic_machine=m68k-crds 582c43cc173Smrg ;; 58321e67964Smrg crisv32 | crisv32-* | etraxfs*) 58421e67964Smrg basic_machine=crisv32-axis 58521e67964Smrg ;; 586c43cc173Smrg cris | cris-* | etrax*) 587c43cc173Smrg basic_machine=cris-axis 588c43cc173Smrg ;; 58921e67964Smrg crx) 59021e67964Smrg basic_machine=crx-unknown 59121e67964Smrg os=-elf 59221e67964Smrg ;; 593c43cc173Smrg da30 | da30-*) 594c43cc173Smrg basic_machine=m68k-da30 595c43cc173Smrg ;; 596c43cc173Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 597c43cc173Smrg basic_machine=mips-dec 598c43cc173Smrg ;; 599c43cc173Smrg decsystem10* | dec10*) 600c43cc173Smrg basic_machine=pdp10-dec 601c43cc173Smrg os=-tops10 602c43cc173Smrg ;; 603c43cc173Smrg decsystem20* | dec20*) 604c43cc173Smrg basic_machine=pdp10-dec 605c43cc173Smrg os=-tops20 606c43cc173Smrg ;; 607c43cc173Smrg delta | 3300 | motorola-3300 | motorola-delta \ 608c43cc173Smrg | 3300-motorola | delta-motorola) 609c43cc173Smrg basic_machine=m68k-motorola 610c43cc173Smrg ;; 611c43cc173Smrg delta88) 612c43cc173Smrg basic_machine=m88k-motorola 613c43cc173Smrg os=-sysv3 614c43cc173Smrg ;; 615c27c18e8Smrg dicos) 616c27c18e8Smrg basic_machine=i686-pc 617c27c18e8Smrg os=-dicos 618c27c18e8Smrg ;; 61921e67964Smrg djgpp) 62021e67964Smrg basic_machine=i586-pc 62121e67964Smrg os=-msdosdjgpp 62221e67964Smrg ;; 623c43cc173Smrg dpx20 | dpx20-*) 624c43cc173Smrg basic_machine=rs6000-bull 625c43cc173Smrg os=-bosx 626c43cc173Smrg ;; 627c43cc173Smrg dpx2* | dpx2*-bull) 628c43cc173Smrg basic_machine=m68k-bull 629c43cc173Smrg os=-sysv3 630c43cc173Smrg ;; 631c43cc173Smrg ebmon29k) 632c43cc173Smrg basic_machine=a29k-amd 633c43cc173Smrg os=-ebmon 634c43cc173Smrg ;; 635c43cc173Smrg elxsi) 636c43cc173Smrg basic_machine=elxsi-elxsi 637c43cc173Smrg os=-bsd 638c43cc173Smrg ;; 639c43cc173Smrg encore | umax | mmax) 640c43cc173Smrg basic_machine=ns32k-encore 641c43cc173Smrg ;; 642c43cc173Smrg es1800 | OSE68k | ose68k | ose | OSE) 643c43cc173Smrg basic_machine=m68k-ericsson 644c43cc173Smrg os=-ose 645c43cc173Smrg ;; 646c43cc173Smrg fx2800) 647c43cc173Smrg basic_machine=i860-alliant 648c43cc173Smrg ;; 649c43cc173Smrg genix) 650c43cc173Smrg basic_machine=ns32k-ns 651c43cc173Smrg ;; 652c43cc173Smrg gmicro) 653c43cc173Smrg basic_machine=tron-gmicro 654c43cc173Smrg os=-sysv 655c43cc173Smrg ;; 656c43cc173Smrg go32) 657c43cc173Smrg basic_machine=i386-pc 658c43cc173Smrg os=-go32 659c43cc173Smrg ;; 660c43cc173Smrg h3050r* | hiux*) 661c43cc173Smrg basic_machine=hppa1.1-hitachi 662c43cc173Smrg os=-hiuxwe2 663c43cc173Smrg ;; 664c43cc173Smrg h8300hms) 665c43cc173Smrg basic_machine=h8300-hitachi 666c43cc173Smrg os=-hms 667c43cc173Smrg ;; 668c43cc173Smrg h8300xray) 669c43cc173Smrg basic_machine=h8300-hitachi 670c43cc173Smrg os=-xray 671c43cc173Smrg ;; 672c43cc173Smrg h8500hms) 673c43cc173Smrg basic_machine=h8500-hitachi 674c43cc173Smrg os=-hms 675c43cc173Smrg ;; 676c43cc173Smrg harris) 677c43cc173Smrg basic_machine=m88k-harris 678c43cc173Smrg os=-sysv3 679c43cc173Smrg ;; 680c43cc173Smrg hp300-*) 681c43cc173Smrg basic_machine=m68k-hp 682c43cc173Smrg ;; 683c43cc173Smrg hp300bsd) 684c43cc173Smrg basic_machine=m68k-hp 685c43cc173Smrg os=-bsd 686c43cc173Smrg ;; 687c43cc173Smrg hp300hpux) 688c43cc173Smrg basic_machine=m68k-hp 689c43cc173Smrg os=-hpux 690c43cc173Smrg ;; 691c43cc173Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 692c43cc173Smrg basic_machine=hppa1.0-hp 693c43cc173Smrg ;; 694c43cc173Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 695c43cc173Smrg basic_machine=m68000-hp 696c43cc173Smrg ;; 697c43cc173Smrg hp9k3[2-9][0-9]) 698c43cc173Smrg basic_machine=m68k-hp 699c43cc173Smrg ;; 700c43cc173Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 701c43cc173Smrg basic_machine=hppa1.0-hp 702c43cc173Smrg ;; 703c43cc173Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 704c43cc173Smrg basic_machine=hppa1.1-hp 705c43cc173Smrg ;; 706c43cc173Smrg hp9k78[0-9] | hp78[0-9]) 707c43cc173Smrg # FIXME: really hppa2.0-hp 708c43cc173Smrg basic_machine=hppa1.1-hp 709c43cc173Smrg ;; 710c43cc173Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 711c43cc173Smrg # FIXME: really hppa2.0-hp 712c43cc173Smrg basic_machine=hppa1.1-hp 713c43cc173Smrg ;; 714c43cc173Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 715c43cc173Smrg basic_machine=hppa1.1-hp 716c43cc173Smrg ;; 717c43cc173Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 718c43cc173Smrg basic_machine=hppa1.0-hp 719c43cc173Smrg ;; 720c43cc173Smrg hppa-next) 721c43cc173Smrg os=-nextstep3 722c43cc173Smrg ;; 723c43cc173Smrg hppaosf) 724c43cc173Smrg basic_machine=hppa1.1-hp 725c43cc173Smrg os=-osf 726c43cc173Smrg ;; 727c43cc173Smrg hppro) 728c43cc173Smrg basic_machine=hppa1.1-hp 729c43cc173Smrg os=-proelf 730c43cc173Smrg ;; 731c43cc173Smrg i370-ibm* | ibm*) 732c43cc173Smrg basic_machine=i370-ibm 733c43cc173Smrg ;; 734c43cc173Smrg i*86v32) 735c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 736c43cc173Smrg os=-sysv32 737c43cc173Smrg ;; 738c43cc173Smrg i*86v4*) 739c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 740c43cc173Smrg os=-sysv4 741c43cc173Smrg ;; 742c43cc173Smrg i*86v) 743c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 744c43cc173Smrg os=-sysv 745c43cc173Smrg ;; 746c43cc173Smrg i*86sol2) 747c43cc173Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 748c43cc173Smrg os=-solaris2 749c43cc173Smrg ;; 750c43cc173Smrg i386mach) 751c43cc173Smrg basic_machine=i386-mach 752c43cc173Smrg os=-mach 753c43cc173Smrg ;; 754c43cc173Smrg i386-vsta | vsta) 755c43cc173Smrg basic_machine=i386-unknown 756c43cc173Smrg os=-vsta 757c43cc173Smrg ;; 758c43cc173Smrg iris | iris4d) 759c43cc173Smrg basic_machine=mips-sgi 760c43cc173Smrg case $os in 761c43cc173Smrg -irix*) 762c43cc173Smrg ;; 763c43cc173Smrg *) 764c43cc173Smrg os=-irix4 765c43cc173Smrg ;; 766c43cc173Smrg esac 767c43cc173Smrg ;; 768c43cc173Smrg isi68 | isi) 769c43cc173Smrg basic_machine=m68k-isi 770c43cc173Smrg os=-sysv 771c43cc173Smrg ;; 772c27c18e8Smrg m68knommu) 773c27c18e8Smrg basic_machine=m68k-unknown 774c27c18e8Smrg os=-linux 775c27c18e8Smrg ;; 776c27c18e8Smrg m68knommu-*) 777c27c18e8Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 778c27c18e8Smrg os=-linux 779c27c18e8Smrg ;; 780c43cc173Smrg m88k-omron*) 781c43cc173Smrg basic_machine=m88k-omron 782c43cc173Smrg ;; 783c43cc173Smrg magnum | m3230) 784c43cc173Smrg basic_machine=mips-mips 785c43cc173Smrg os=-sysv 786c43cc173Smrg ;; 787c43cc173Smrg merlin) 788c43cc173Smrg basic_machine=ns32k-utek 789c43cc173Smrg os=-sysv 790c43cc173Smrg ;; 791f1ee322dSmrg microblaze) 7923e256790Smrg basic_machine=microblaze-xilinx 7933e256790Smrg ;; 794c43cc173Smrg mingw32) 795c43cc173Smrg basic_machine=i386-pc 796c43cc173Smrg os=-mingw32 797c43cc173Smrg ;; 79821e67964Smrg mingw32ce) 79921e67964Smrg basic_machine=arm-unknown 80021e67964Smrg os=-mingw32ce 80121e67964Smrg ;; 802c43cc173Smrg miniframe) 803c43cc173Smrg basic_machine=m68000-convergent 804c43cc173Smrg ;; 805c43cc173Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 806c43cc173Smrg basic_machine=m68k-atari 807c43cc173Smrg os=-mint 808c43cc173Smrg ;; 809c43cc173Smrg mips3*-*) 810c43cc173Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 811c43cc173Smrg ;; 812c43cc173Smrg mips3*) 813c43cc173Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 814c43cc173Smrg ;; 815c43cc173Smrg monitor) 816c43cc173Smrg basic_machine=m68k-rom68k 817c43cc173Smrg os=-coff 818c43cc173Smrg ;; 819c43cc173Smrg morphos) 820c43cc173Smrg basic_machine=powerpc-unknown 821c43cc173Smrg os=-morphos 822c43cc173Smrg ;; 823c43cc173Smrg msdos) 824c43cc173Smrg basic_machine=i386-pc 825c43cc173Smrg os=-msdos 826c43cc173Smrg ;; 82721e67964Smrg ms1-*) 82821e67964Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 82921e67964Smrg ;; 830f1ee322dSmrg msys) 831f1ee322dSmrg basic_machine=i386-pc 832f1ee322dSmrg os=-msys 833f1ee322dSmrg ;; 834c43cc173Smrg mvs) 835c43cc173Smrg basic_machine=i370-ibm 836c43cc173Smrg os=-mvs 837c43cc173Smrg ;; 838f1ee322dSmrg nacl) 839f1ee322dSmrg basic_machine=le32-unknown 840f1ee322dSmrg os=-nacl 841f1ee322dSmrg ;; 842c43cc173Smrg ncr3000) 843c43cc173Smrg basic_machine=i486-ncr 844c43cc173Smrg os=-sysv4 845c43cc173Smrg ;; 846c43cc173Smrg netbsd386) 847c43cc173Smrg basic_machine=i386-unknown 848c43cc173Smrg os=-netbsd 849c43cc173Smrg ;; 850c43cc173Smrg netwinder) 851c43cc173Smrg basic_machine=armv4l-rebel 852c43cc173Smrg os=-linux 853c43cc173Smrg ;; 854c43cc173Smrg news | news700 | news800 | news900) 855c43cc173Smrg basic_machine=m68k-sony 856c43cc173Smrg os=-newsos 857c43cc173Smrg ;; 858c43cc173Smrg news1000) 859c43cc173Smrg basic_machine=m68030-sony 860c43cc173Smrg os=-newsos 861c43cc173Smrg ;; 862c43cc173Smrg news-3600 | risc-news) 863c43cc173Smrg basic_machine=mips-sony 864c43cc173Smrg os=-newsos 865c43cc173Smrg ;; 866c43cc173Smrg necv70) 867c43cc173Smrg basic_machine=v70-nec 868c43cc173Smrg os=-sysv 869c43cc173Smrg ;; 870c43cc173Smrg next | m*-next ) 871c43cc173Smrg basic_machine=m68k-next 872c43cc173Smrg case $os in 873c43cc173Smrg -nextstep* ) 874c43cc173Smrg ;; 875c43cc173Smrg -ns2*) 876c43cc173Smrg os=-nextstep2 877c43cc173Smrg ;; 878c43cc173Smrg *) 879c43cc173Smrg os=-nextstep3 880c43cc173Smrg ;; 881c43cc173Smrg esac 882c43cc173Smrg ;; 883c43cc173Smrg nh3000) 884c43cc173Smrg basic_machine=m68k-harris 885c43cc173Smrg os=-cxux 886c43cc173Smrg ;; 887c43cc173Smrg nh[45]000) 888c43cc173Smrg basic_machine=m88k-harris 889c43cc173Smrg os=-cxux 890c43cc173Smrg ;; 891c43cc173Smrg nindy960) 892c43cc173Smrg basic_machine=i960-intel 893c43cc173Smrg os=-nindy 894c43cc173Smrg ;; 895c43cc173Smrg mon960) 896c43cc173Smrg basic_machine=i960-intel 897c43cc173Smrg os=-mon960 898c43cc173Smrg ;; 899c43cc173Smrg nonstopux) 900c43cc173Smrg basic_machine=mips-compaq 901c43cc173Smrg os=-nonstopux 902c43cc173Smrg ;; 903c43cc173Smrg np1) 904c43cc173Smrg basic_machine=np1-gould 905c43cc173Smrg ;; 906f1ee322dSmrg neo-tandem) 907f1ee322dSmrg basic_machine=neo-tandem 908f1ee322dSmrg ;; 909f1ee322dSmrg nse-tandem) 910f1ee322dSmrg basic_machine=nse-tandem 911f1ee322dSmrg ;; 912c43cc173Smrg nsr-tandem) 913c43cc173Smrg basic_machine=nsr-tandem 914c43cc173Smrg ;; 915c43cc173Smrg op50n-* | op60c-*) 916c43cc173Smrg basic_machine=hppa1.1-oki 917c43cc173Smrg os=-proelf 918c43cc173Smrg ;; 91921e67964Smrg openrisc | openrisc-*) 920c43cc173Smrg basic_machine=or32-unknown 92121e67964Smrg ;; 92221e67964Smrg os400) 92321e67964Smrg basic_machine=powerpc-ibm 92421e67964Smrg os=-os400 925c43cc173Smrg ;; 926c43cc173Smrg OSE68000 | ose68000) 927c43cc173Smrg basic_machine=m68000-ericsson 928c43cc173Smrg os=-ose 929c43cc173Smrg ;; 930c43cc173Smrg os68k) 931c43cc173Smrg basic_machine=m68k-none 932c43cc173Smrg os=-os68k 933c43cc173Smrg ;; 934c43cc173Smrg pa-hitachi) 935c43cc173Smrg basic_machine=hppa1.1-hitachi 936c43cc173Smrg os=-hiuxwe2 937c43cc173Smrg ;; 938c43cc173Smrg paragon) 939c43cc173Smrg basic_machine=i860-intel 940c43cc173Smrg os=-osf 941c43cc173Smrg ;; 942c27c18e8Smrg parisc) 943c27c18e8Smrg basic_machine=hppa-unknown 944c27c18e8Smrg os=-linux 945c27c18e8Smrg ;; 946c27c18e8Smrg parisc-*) 947c27c18e8Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 948c27c18e8Smrg os=-linux 949c27c18e8Smrg ;; 950c43cc173Smrg pbd) 951c43cc173Smrg basic_machine=sparc-tti 952c43cc173Smrg ;; 953c43cc173Smrg pbb) 954c43cc173Smrg basic_machine=m68k-tti 955c43cc173Smrg ;; 956c43cc173Smrg pc532 | pc532-*) 957c43cc173Smrg basic_machine=ns32k-pc532 958c43cc173Smrg ;; 95921e67964Smrg pc98) 96021e67964Smrg basic_machine=i386-pc 96121e67964Smrg ;; 96221e67964Smrg pc98-*) 96321e67964Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 96421e67964Smrg ;; 965c43cc173Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 966c43cc173Smrg basic_machine=i586-pc 967c43cc173Smrg ;; 968c43cc173Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 969c43cc173Smrg basic_machine=i686-pc 970c43cc173Smrg ;; 971c43cc173Smrg pentiumii | pentium2 | pentiumiii | pentium3) 972c43cc173Smrg basic_machine=i686-pc 973c43cc173Smrg ;; 974c43cc173Smrg pentium4) 975c43cc173Smrg basic_machine=i786-pc 976c43cc173Smrg ;; 977c43cc173Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 978c43cc173Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 979c43cc173Smrg ;; 980c43cc173Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 981c43cc173Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 982c43cc173Smrg ;; 983c43cc173Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 984c43cc173Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 985c43cc173Smrg ;; 986c43cc173Smrg pentium4-*) 987c43cc173Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 988c43cc173Smrg ;; 989c43cc173Smrg pn) 990c43cc173Smrg basic_machine=pn-gould 991c43cc173Smrg ;; 992c43cc173Smrg power) basic_machine=power-ibm 993c43cc173Smrg ;; 994f1ee322dSmrg ppc | ppcbe) basic_machine=powerpc-unknown 995c43cc173Smrg ;; 996f1ee322dSmrg ppc-* | ppcbe-*) 997f1ee322dSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 998c43cc173Smrg ;; 999c43cc173Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 1000c43cc173Smrg basic_machine=powerpcle-unknown 1001c43cc173Smrg ;; 1002c43cc173Smrg ppcle-* | powerpclittle-*) 1003c43cc173Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 1004c43cc173Smrg ;; 1005c43cc173Smrg ppc64) basic_machine=powerpc64-unknown 1006c43cc173Smrg ;; 1007c43cc173Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 1008c43cc173Smrg ;; 1009c43cc173Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 1010c43cc173Smrg basic_machine=powerpc64le-unknown 1011c43cc173Smrg ;; 1012c43cc173Smrg ppc64le-* | powerpc64little-*) 1013c43cc173Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1014c43cc173Smrg ;; 1015c43cc173Smrg ps2) 1016c43cc173Smrg basic_machine=i386-ibm 1017c43cc173Smrg ;; 1018c43cc173Smrg pw32) 1019c43cc173Smrg basic_machine=i586-unknown 1020c43cc173Smrg os=-pw32 1021c43cc173Smrg ;; 102221e67964Smrg rdos) 102321e67964Smrg basic_machine=i386-pc 102421e67964Smrg os=-rdos 102521e67964Smrg ;; 1026c43cc173Smrg rom68k) 1027c43cc173Smrg basic_machine=m68k-rom68k 1028c43cc173Smrg os=-coff 1029c43cc173Smrg ;; 1030c43cc173Smrg rm[46]00) 1031c43cc173Smrg basic_machine=mips-siemens 1032c43cc173Smrg ;; 1033c43cc173Smrg rtpc | rtpc-*) 1034c43cc173Smrg basic_machine=romp-ibm 1035c43cc173Smrg ;; 1036c43cc173Smrg s390 | s390-*) 1037c43cc173Smrg basic_machine=s390-ibm 1038c43cc173Smrg ;; 1039c43cc173Smrg s390x | s390x-*) 1040c43cc173Smrg basic_machine=s390x-ibm 1041c43cc173Smrg ;; 1042c43cc173Smrg sa29200) 1043c43cc173Smrg basic_machine=a29k-amd 1044c43cc173Smrg os=-udi 1045c43cc173Smrg ;; 1046c43cc173Smrg sb1) 1047c43cc173Smrg basic_machine=mipsisa64sb1-unknown 1048c43cc173Smrg ;; 1049c43cc173Smrg sb1el) 1050c43cc173Smrg basic_machine=mipsisa64sb1el-unknown 1051c43cc173Smrg ;; 105221e67964Smrg sde) 105321e67964Smrg basic_machine=mipsisa32-sde 105421e67964Smrg os=-elf 105521e67964Smrg ;; 1056c43cc173Smrg sei) 1057c43cc173Smrg basic_machine=mips-sei 1058c43cc173Smrg os=-seiux 1059c43cc173Smrg ;; 1060c43cc173Smrg sequent) 1061c43cc173Smrg basic_machine=i386-sequent 1062c43cc173Smrg ;; 1063c43cc173Smrg sh) 1064c43cc173Smrg basic_machine=sh-hitachi 1065c43cc173Smrg os=-hms 1066c43cc173Smrg ;; 106721e67964Smrg sh5el) 106821e67964Smrg basic_machine=sh5le-unknown 106921e67964Smrg ;; 1070c43cc173Smrg sh64) 1071c43cc173Smrg basic_machine=sh64-unknown 1072c43cc173Smrg ;; 1073c43cc173Smrg sparclite-wrs | simso-wrs) 1074c43cc173Smrg basic_machine=sparclite-wrs 1075c43cc173Smrg os=-vxworks 1076c43cc173Smrg ;; 1077c43cc173Smrg sps7) 1078c43cc173Smrg basic_machine=m68k-bull 1079c43cc173Smrg os=-sysv2 1080c43cc173Smrg ;; 1081c43cc173Smrg spur) 1082c43cc173Smrg basic_machine=spur-unknown 1083c43cc173Smrg ;; 1084c43cc173Smrg st2000) 1085c43cc173Smrg basic_machine=m68k-tandem 1086c43cc173Smrg ;; 1087c43cc173Smrg stratus) 1088c43cc173Smrg basic_machine=i860-stratus 1089c43cc173Smrg os=-sysv4 1090c43cc173Smrg ;; 1091f1ee322dSmrg strongarm-* | thumb-*) 1092f1ee322dSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1093f1ee322dSmrg ;; 1094c43cc173Smrg sun2) 1095c43cc173Smrg basic_machine=m68000-sun 1096c43cc173Smrg ;; 1097c43cc173Smrg sun2os3) 1098c43cc173Smrg basic_machine=m68000-sun 1099c43cc173Smrg os=-sunos3 1100c43cc173Smrg ;; 1101c43cc173Smrg sun2os4) 1102c43cc173Smrg basic_machine=m68000-sun 1103c43cc173Smrg os=-sunos4 1104c43cc173Smrg ;; 1105c43cc173Smrg sun3os3) 1106c43cc173Smrg basic_machine=m68k-sun 1107c43cc173Smrg os=-sunos3 1108c43cc173Smrg ;; 1109c43cc173Smrg sun3os4) 1110c43cc173Smrg basic_machine=m68k-sun 1111c43cc173Smrg os=-sunos4 1112c43cc173Smrg ;; 1113c43cc173Smrg sun4os3) 1114c43cc173Smrg basic_machine=sparc-sun 1115c43cc173Smrg os=-sunos3 1116c43cc173Smrg ;; 1117c43cc173Smrg sun4os4) 1118c43cc173Smrg basic_machine=sparc-sun 1119c43cc173Smrg os=-sunos4 1120c43cc173Smrg ;; 1121c43cc173Smrg sun4sol2) 1122c43cc173Smrg basic_machine=sparc-sun 1123c43cc173Smrg os=-solaris2 1124c43cc173Smrg ;; 1125c43cc173Smrg sun3 | sun3-*) 1126c43cc173Smrg basic_machine=m68k-sun 1127c43cc173Smrg ;; 1128c43cc173Smrg sun4) 1129c43cc173Smrg basic_machine=sparc-sun 1130c43cc173Smrg ;; 1131c43cc173Smrg sun386 | sun386i | roadrunner) 1132c43cc173Smrg basic_machine=i386-sun 1133c43cc173Smrg ;; 1134c43cc173Smrg sv1) 1135c43cc173Smrg basic_machine=sv1-cray 1136c43cc173Smrg os=-unicos 1137c43cc173Smrg ;; 1138c43cc173Smrg symmetry) 1139c43cc173Smrg basic_machine=i386-sequent 1140c43cc173Smrg os=-dynix 1141c43cc173Smrg ;; 1142c43cc173Smrg t3e) 1143c43cc173Smrg basic_machine=alphaev5-cray 1144c43cc173Smrg os=-unicos 1145c43cc173Smrg ;; 1146c43cc173Smrg t90) 1147c43cc173Smrg basic_machine=t90-cray 1148c43cc173Smrg os=-unicos 1149c43cc173Smrg ;; 1150c27c18e8Smrg tile*) 1151f1ee322dSmrg basic_machine=$basic_machine-unknown 1152c27c18e8Smrg os=-linux-gnu 1153c27c18e8Smrg ;; 1154c43cc173Smrg tx39) 1155c43cc173Smrg basic_machine=mipstx39-unknown 1156c43cc173Smrg ;; 1157c43cc173Smrg tx39el) 1158c43cc173Smrg basic_machine=mipstx39el-unknown 1159c43cc173Smrg ;; 1160c43cc173Smrg toad1) 1161c43cc173Smrg basic_machine=pdp10-xkl 1162c43cc173Smrg os=-tops20 1163c43cc173Smrg ;; 1164c43cc173Smrg tower | tower-32) 1165c43cc173Smrg basic_machine=m68k-ncr 1166c43cc173Smrg ;; 116721e67964Smrg tpf) 116821e67964Smrg basic_machine=s390x-ibm 116921e67964Smrg os=-tpf 117021e67964Smrg ;; 1171c43cc173Smrg udi29k) 1172c43cc173Smrg basic_machine=a29k-amd 1173c43cc173Smrg os=-udi 1174c43cc173Smrg ;; 1175c43cc173Smrg ultra3) 1176c43cc173Smrg basic_machine=a29k-nyu 1177c43cc173Smrg os=-sym1 1178c43cc173Smrg ;; 1179c43cc173Smrg v810 | necv810) 1180c43cc173Smrg basic_machine=v810-nec 1181c43cc173Smrg os=-none 1182c43cc173Smrg ;; 1183c43cc173Smrg vaxv) 1184c43cc173Smrg basic_machine=vax-dec 1185c43cc173Smrg os=-sysv 1186c43cc173Smrg ;; 1187c43cc173Smrg vms) 1188c43cc173Smrg basic_machine=vax-dec 1189c43cc173Smrg os=-vms 1190c43cc173Smrg ;; 1191c43cc173Smrg vpp*|vx|vx-*) 1192c43cc173Smrg basic_machine=f301-fujitsu 1193c43cc173Smrg ;; 1194c43cc173Smrg vxworks960) 1195c43cc173Smrg basic_machine=i960-wrs 1196c43cc173Smrg os=-vxworks 1197c43cc173Smrg ;; 1198c43cc173Smrg vxworks68) 1199c43cc173Smrg basic_machine=m68k-wrs 1200c43cc173Smrg os=-vxworks 1201c43cc173Smrg ;; 1202c43cc173Smrg vxworks29k) 1203c43cc173Smrg basic_machine=a29k-wrs 1204c43cc173Smrg os=-vxworks 1205c43cc173Smrg ;; 1206c43cc173Smrg w65*) 1207c43cc173Smrg basic_machine=w65-wdc 1208c43cc173Smrg os=-none 1209c43cc173Smrg ;; 1210c43cc173Smrg w89k-*) 1211c43cc173Smrg basic_machine=hppa1.1-winbond 1212c43cc173Smrg os=-proelf 1213c43cc173Smrg ;; 121421e67964Smrg xbox) 121521e67964Smrg basic_machine=i686-pc 121621e67964Smrg os=-mingw32 121721e67964Smrg ;; 1218c43cc173Smrg xps | xps100) 1219c43cc173Smrg basic_machine=xps100-honeywell 1220c43cc173Smrg ;; 1221f1ee322dSmrg xscale-* | xscalee[bl]-*) 1222f1ee322dSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1223f1ee322dSmrg ;; 1224c43cc173Smrg ymp) 1225c43cc173Smrg basic_machine=ymp-cray 1226c43cc173Smrg os=-unicos 1227c43cc173Smrg ;; 1228c43cc173Smrg z8k-*-coff) 1229c43cc173Smrg basic_machine=z8k-unknown 1230c43cc173Smrg os=-sim 1231c43cc173Smrg ;; 1232c27c18e8Smrg z80-*-coff) 1233c27c18e8Smrg basic_machine=z80-unknown 1234c27c18e8Smrg os=-sim 1235c27c18e8Smrg ;; 1236c43cc173Smrg none) 1237c43cc173Smrg basic_machine=none-none 1238c43cc173Smrg os=-none 1239c43cc173Smrg ;; 1240c43cc173Smrg 1241c43cc173Smrg# Here we handle the default manufacturer of certain CPU types. It is in 1242c43cc173Smrg# some cases the only manufacturer, in others, it is the most popular. 1243c43cc173Smrg w89k) 1244c43cc173Smrg basic_machine=hppa1.1-winbond 1245c43cc173Smrg ;; 1246c43cc173Smrg op50n) 1247c43cc173Smrg basic_machine=hppa1.1-oki 1248c43cc173Smrg ;; 1249c43cc173Smrg op60c) 1250c43cc173Smrg basic_machine=hppa1.1-oki 1251c43cc173Smrg ;; 1252c43cc173Smrg romp) 1253c43cc173Smrg basic_machine=romp-ibm 1254c43cc173Smrg ;; 125521e67964Smrg mmix) 125621e67964Smrg basic_machine=mmix-knuth 125721e67964Smrg ;; 1258c43cc173Smrg rs6000) 1259c43cc173Smrg basic_machine=rs6000-ibm 1260c43cc173Smrg ;; 1261c43cc173Smrg vax) 1262c43cc173Smrg basic_machine=vax-dec 1263c43cc173Smrg ;; 1264c43cc173Smrg pdp10) 1265c43cc173Smrg # there are many clones, so DEC is not a safe bet 1266c43cc173Smrg basic_machine=pdp10-unknown 1267c43cc173Smrg ;; 1268c43cc173Smrg pdp11) 1269c43cc173Smrg basic_machine=pdp11-dec 1270c43cc173Smrg ;; 1271c43cc173Smrg we32k) 1272c43cc173Smrg basic_machine=we32k-att 1273c43cc173Smrg ;; 1274c27c18e8Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1275c43cc173Smrg basic_machine=sh-unknown 1276c43cc173Smrg ;; 127721e67964Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1278c43cc173Smrg basic_machine=sparc-sun 1279c43cc173Smrg ;; 1280c43cc173Smrg cydra) 1281c43cc173Smrg basic_machine=cydra-cydrome 1282c43cc173Smrg ;; 1283c43cc173Smrg orion) 1284c43cc173Smrg basic_machine=orion-highlevel 1285c43cc173Smrg ;; 1286c43cc173Smrg orion105) 1287c43cc173Smrg basic_machine=clipper-highlevel 1288c43cc173Smrg ;; 1289c43cc173Smrg mac | mpw | mac-mpw) 1290c43cc173Smrg basic_machine=m68k-apple 1291c43cc173Smrg ;; 1292c43cc173Smrg pmac | pmac-mpw) 1293c43cc173Smrg basic_machine=powerpc-apple 1294c43cc173Smrg ;; 1295c43cc173Smrg *-unknown) 1296c43cc173Smrg # Make sure to match an already-canonicalized machine name. 1297c43cc173Smrg ;; 1298c43cc173Smrg *) 1299c43cc173Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1300c43cc173Smrg exit 1 1301c43cc173Smrg ;; 1302c43cc173Smrgesac 1303c43cc173Smrg 1304c43cc173Smrg# Here we canonicalize certain aliases for manufacturers. 1305c43cc173Smrgcase $basic_machine in 1306c43cc173Smrg *-digital*) 1307c43cc173Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1308c43cc173Smrg ;; 1309c43cc173Smrg *-commodore*) 1310c43cc173Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1311c43cc173Smrg ;; 1312c43cc173Smrg *) 1313c43cc173Smrg ;; 1314c43cc173Smrgesac 1315c43cc173Smrg 1316c43cc173Smrg# Decode manufacturer-specific aliases for certain operating systems. 1317c43cc173Smrg 1318c43cc173Smrgif [ x"$os" != x"" ] 1319c43cc173Smrgthen 1320c43cc173Smrgcase $os in 1321f1ee322dSmrg # First match some system type aliases 1322f1ee322dSmrg # that might get confused with valid system types. 1323c43cc173Smrg # -solaris* is a basic system type, with this one exception. 1324f1ee322dSmrg -auroraux) 1325f1ee322dSmrg os=-auroraux 13263e256790Smrg ;; 1327c43cc173Smrg -solaris1 | -solaris1.*) 1328c43cc173Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1329c43cc173Smrg ;; 1330c43cc173Smrg -solaris) 1331c43cc173Smrg os=-solaris2 1332c43cc173Smrg ;; 1333c43cc173Smrg -svr4*) 1334c43cc173Smrg os=-sysv4 1335c43cc173Smrg ;; 1336c43cc173Smrg -unixware*) 1337c43cc173Smrg os=-sysv4.2uw 1338c43cc173Smrg ;; 1339c43cc173Smrg -gnu/linux*) 1340c43cc173Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1341c43cc173Smrg ;; 1342c43cc173Smrg # First accept the basic system types. 1343c43cc173Smrg # The portable systems comes first. 1344c43cc173Smrg # Each alternative MUST END IN A *, to match a version number. 1345c43cc173Smrg # -sysv* is not here because it comes later, after sysvr4. 1346c43cc173Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13473e256790Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13483e256790Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13493e256790Smrg | -sym* | -kopensolaris* \ 1350c43cc173Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1351c27c18e8Smrg | -aos* | -aros* \ 1352c43cc173Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1353c43cc173Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 135421e67964Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 135521e67964Smrg | -openbsd* | -solidbsd* \ 135621e67964Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 135721e67964Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1358c43cc173Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1359c43cc173Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1360c27c18e8Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1361f1ee322dSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1362f1ee322dSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 1363f1ee322dSmrg | -linux-newlib* | -linux-uclibc* \ 136421e67964Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1365c43cc173Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1366c43cc173Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1367c43cc173Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1368c43cc173Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1369c43cc173Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 137021e67964Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13713e256790Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1372c43cc173Smrg # Remember, each alternative MUST END IN *, to match a version number. 1373c43cc173Smrg ;; 1374c43cc173Smrg -qnx*) 1375c43cc173Smrg case $basic_machine in 1376c43cc173Smrg x86-* | i*86-*) 1377c43cc173Smrg ;; 1378c43cc173Smrg *) 1379c43cc173Smrg os=-nto$os 1380c43cc173Smrg ;; 1381c43cc173Smrg esac 1382c43cc173Smrg ;; 1383c43cc173Smrg -nto-qnx*) 1384c43cc173Smrg ;; 1385c43cc173Smrg -nto*) 1386c43cc173Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1387c43cc173Smrg ;; 1388c43cc173Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 138921e67964Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1390c43cc173Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1391c43cc173Smrg ;; 1392c43cc173Smrg -mac*) 1393c43cc173Smrg os=`echo $os | sed -e 's|mac|macos|'` 1394c43cc173Smrg ;; 139521e67964Smrg -linux-dietlibc) 139621e67964Smrg os=-linux-dietlibc 139721e67964Smrg ;; 1398c43cc173Smrg -linux*) 1399c43cc173Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1400c43cc173Smrg ;; 1401c43cc173Smrg -sunos5*) 1402c43cc173Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1403c43cc173Smrg ;; 1404c43cc173Smrg -sunos6*) 1405c43cc173Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1406c43cc173Smrg ;; 1407c43cc173Smrg -opened*) 1408c43cc173Smrg os=-openedition 1409c43cc173Smrg ;; 1410f1ee322dSmrg -os400*) 141121e67964Smrg os=-os400 141221e67964Smrg ;; 1413c43cc173Smrg -wince*) 1414c43cc173Smrg os=-wince 1415c43cc173Smrg ;; 1416c43cc173Smrg -osfrose*) 1417c43cc173Smrg os=-osfrose 1418c43cc173Smrg ;; 1419c43cc173Smrg -osf*) 1420c43cc173Smrg os=-osf 1421c43cc173Smrg ;; 1422c43cc173Smrg -utek*) 1423c43cc173Smrg os=-bsd 1424c43cc173Smrg ;; 1425c43cc173Smrg -dynix*) 1426c43cc173Smrg os=-bsd 1427c43cc173Smrg ;; 1428c43cc173Smrg -acis*) 1429c43cc173Smrg os=-aos 1430c43cc173Smrg ;; 1431c43cc173Smrg -atheos*) 1432c43cc173Smrg os=-atheos 1433c43cc173Smrg ;; 143421e67964Smrg -syllable*) 143521e67964Smrg os=-syllable 143621e67964Smrg ;; 1437c43cc173Smrg -386bsd) 1438c43cc173Smrg os=-bsd 1439c43cc173Smrg ;; 1440c43cc173Smrg -ctix* | -uts*) 1441c43cc173Smrg os=-sysv 1442c43cc173Smrg ;; 1443c43cc173Smrg -nova*) 1444c43cc173Smrg os=-rtmk-nova 1445c43cc173Smrg ;; 1446c43cc173Smrg -ns2 ) 1447c43cc173Smrg os=-nextstep2 1448c43cc173Smrg ;; 1449c43cc173Smrg -nsk*) 1450c43cc173Smrg os=-nsk 1451c43cc173Smrg ;; 1452c43cc173Smrg # Preserve the version number of sinix5. 1453c43cc173Smrg -sinix5.*) 1454c43cc173Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 1455c43cc173Smrg ;; 1456c43cc173Smrg -sinix*) 1457c43cc173Smrg os=-sysv4 1458c43cc173Smrg ;; 1459f1ee322dSmrg -tpf*) 146021e67964Smrg os=-tpf 146121e67964Smrg ;; 1462c43cc173Smrg -triton*) 1463c43cc173Smrg os=-sysv3 1464c43cc173Smrg ;; 1465c43cc173Smrg -oss*) 1466c43cc173Smrg os=-sysv3 1467c43cc173Smrg ;; 1468c43cc173Smrg -svr4) 1469c43cc173Smrg os=-sysv4 1470c43cc173Smrg ;; 1471c43cc173Smrg -svr3) 1472c43cc173Smrg os=-sysv3 1473c43cc173Smrg ;; 1474c43cc173Smrg -sysvr4) 1475c43cc173Smrg os=-sysv4 1476c43cc173Smrg ;; 1477c43cc173Smrg # This must come after -sysvr4. 1478c43cc173Smrg -sysv*) 1479c43cc173Smrg ;; 1480c43cc173Smrg -ose*) 1481c43cc173Smrg os=-ose 1482c43cc173Smrg ;; 1483c43cc173Smrg -es1800*) 1484c43cc173Smrg os=-ose 1485c43cc173Smrg ;; 1486c43cc173Smrg -xenix) 1487c43cc173Smrg os=-xenix 1488c43cc173Smrg ;; 1489c43cc173Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1490c43cc173Smrg os=-mint 1491c43cc173Smrg ;; 1492c43cc173Smrg -aros*) 1493c43cc173Smrg os=-aros 1494c43cc173Smrg ;; 1495c43cc173Smrg -kaos*) 1496c43cc173Smrg os=-kaos 1497c43cc173Smrg ;; 149821e67964Smrg -zvmoe) 149921e67964Smrg os=-zvmoe 150021e67964Smrg ;; 1501c27c18e8Smrg -dicos*) 1502c27c18e8Smrg os=-dicos 1503c27c18e8Smrg ;; 1504f1ee322dSmrg -nacl*) 1505f1ee322dSmrg ;; 1506c43cc173Smrg -none) 1507c43cc173Smrg ;; 1508c43cc173Smrg *) 1509c43cc173Smrg # Get rid of the `-' at the beginning of $os. 1510c43cc173Smrg os=`echo $os | sed 's/[^-]*-//'` 1511c43cc173Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1512c43cc173Smrg exit 1 1513c43cc173Smrg ;; 1514c43cc173Smrgesac 1515c43cc173Smrgelse 1516c43cc173Smrg 1517c43cc173Smrg# Here we handle the default operating systems that come with various machines. 1518c43cc173Smrg# The value should be what the vendor currently ships out the door with their 1519c43cc173Smrg# machine or put another way, the most popular os provided with the machine. 1520c43cc173Smrg 1521c43cc173Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1522c43cc173Smrg# "-sun"), then you have to tell the case statement up towards the top 1523c43cc173Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1524c43cc173Smrg# will signal an error saying that MANUFACTURER isn't an operating 1525c43cc173Smrg# system, and we'll never get to this point. 1526c43cc173Smrg 1527c43cc173Smrgcase $basic_machine in 1528f1ee322dSmrg score-*) 152921e67964Smrg os=-elf 153021e67964Smrg ;; 1531f1ee322dSmrg spu-*) 153221e67964Smrg os=-elf 153321e67964Smrg ;; 1534c43cc173Smrg *-acorn) 1535c43cc173Smrg os=-riscix1.2 1536c43cc173Smrg ;; 1537c43cc173Smrg arm*-rebel) 1538c43cc173Smrg os=-linux 1539c43cc173Smrg ;; 1540c43cc173Smrg arm*-semi) 1541c43cc173Smrg os=-aout 1542c43cc173Smrg ;; 1543f1ee322dSmrg c4x-* | tic4x-*) 1544f1ee322dSmrg os=-coff 1545f1ee322dSmrg ;; 1546f1ee322dSmrg hexagon-*) 1547f1ee322dSmrg os=-elf 1548f1ee322dSmrg ;; 1549f1ee322dSmrg tic54x-*) 1550f1ee322dSmrg os=-coff 1551f1ee322dSmrg ;; 1552f1ee322dSmrg tic55x-*) 1553f1ee322dSmrg os=-coff 1554f1ee322dSmrg ;; 1555f1ee322dSmrg tic6x-*) 1556f1ee322dSmrg os=-coff 155721e67964Smrg ;; 1558c43cc173Smrg # This must come before the *-dec entry. 1559c43cc173Smrg pdp10-*) 1560c43cc173Smrg os=-tops20 1561c43cc173Smrg ;; 1562c43cc173Smrg pdp11-*) 1563c43cc173Smrg os=-none 1564c43cc173Smrg ;; 1565c43cc173Smrg *-dec | vax-*) 1566c43cc173Smrg os=-ultrix4.2 1567c43cc173Smrg ;; 1568c43cc173Smrg m68*-apollo) 1569c43cc173Smrg os=-domain 1570c43cc173Smrg ;; 1571c43cc173Smrg i386-sun) 1572c43cc173Smrg os=-sunos4.0.2 1573c43cc173Smrg ;; 1574c43cc173Smrg m68000-sun) 1575c43cc173Smrg os=-sunos3 1576c43cc173Smrg ;; 1577c43cc173Smrg m68*-cisco) 1578c43cc173Smrg os=-aout 1579c43cc173Smrg ;; 1580f1ee322dSmrg mep-*) 158121e67964Smrg os=-elf 158221e67964Smrg ;; 1583c43cc173Smrg mips*-cisco) 1584c43cc173Smrg os=-elf 1585c43cc173Smrg ;; 1586c43cc173Smrg mips*-*) 1587c43cc173Smrg os=-elf 1588c43cc173Smrg ;; 1589c43cc173Smrg or32-*) 1590c43cc173Smrg os=-coff 1591c43cc173Smrg ;; 1592c43cc173Smrg *-tti) # must be before sparc entry or we get the wrong os. 1593c43cc173Smrg os=-sysv3 1594c43cc173Smrg ;; 1595c43cc173Smrg sparc-* | *-sun) 1596c43cc173Smrg os=-sunos4.1.1 1597c43cc173Smrg ;; 1598c43cc173Smrg *-be) 1599c43cc173Smrg os=-beos 1600c43cc173Smrg ;; 160121e67964Smrg *-haiku) 160221e67964Smrg os=-haiku 160321e67964Smrg ;; 1604c43cc173Smrg *-ibm) 1605c43cc173Smrg os=-aix 1606c43cc173Smrg ;; 1607f1ee322dSmrg *-knuth) 160821e67964Smrg os=-mmixware 160921e67964Smrg ;; 1610c43cc173Smrg *-wec) 1611c43cc173Smrg os=-proelf 1612c43cc173Smrg ;; 1613c43cc173Smrg *-winbond) 1614c43cc173Smrg os=-proelf 1615c43cc173Smrg ;; 1616c43cc173Smrg *-oki) 1617c43cc173Smrg os=-proelf 1618c43cc173Smrg ;; 1619c43cc173Smrg *-hp) 1620c43cc173Smrg os=-hpux 1621c43cc173Smrg ;; 1622c43cc173Smrg *-hitachi) 1623c43cc173Smrg os=-hiux 1624c43cc173Smrg ;; 1625c43cc173Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1626c43cc173Smrg os=-sysv 1627c43cc173Smrg ;; 1628c43cc173Smrg *-cbm) 1629c43cc173Smrg os=-amigaos 1630c43cc173Smrg ;; 1631c43cc173Smrg *-dg) 1632c43cc173Smrg os=-dgux 1633c43cc173Smrg ;; 1634c43cc173Smrg *-dolphin) 1635c43cc173Smrg os=-sysv3 1636c43cc173Smrg ;; 1637c43cc173Smrg m68k-ccur) 1638c43cc173Smrg os=-rtu 1639c43cc173Smrg ;; 1640c43cc173Smrg m88k-omron*) 1641c43cc173Smrg os=-luna 1642c43cc173Smrg ;; 1643c43cc173Smrg *-next ) 1644c43cc173Smrg os=-nextstep 1645c43cc173Smrg ;; 1646c43cc173Smrg *-sequent) 1647c43cc173Smrg os=-ptx 1648c43cc173Smrg ;; 1649c43cc173Smrg *-crds) 1650c43cc173Smrg os=-unos 1651c43cc173Smrg ;; 1652c43cc173Smrg *-ns) 1653c43cc173Smrg os=-genix 1654c43cc173Smrg ;; 1655c43cc173Smrg i370-*) 1656c43cc173Smrg os=-mvs 1657c43cc173Smrg ;; 1658c43cc173Smrg *-next) 1659c43cc173Smrg os=-nextstep3 1660c43cc173Smrg ;; 1661c43cc173Smrg *-gould) 1662c43cc173Smrg os=-sysv 1663c43cc173Smrg ;; 1664c43cc173Smrg *-highlevel) 1665c43cc173Smrg os=-bsd 1666c43cc173Smrg ;; 1667c43cc173Smrg *-encore) 1668c43cc173Smrg os=-bsd 1669c43cc173Smrg ;; 1670c43cc173Smrg *-sgi) 1671c43cc173Smrg os=-irix 1672c43cc173Smrg ;; 1673c43cc173Smrg *-siemens) 1674c43cc173Smrg os=-sysv4 1675c43cc173Smrg ;; 1676c43cc173Smrg *-masscomp) 1677c43cc173Smrg os=-rtu 1678c43cc173Smrg ;; 1679c43cc173Smrg f30[01]-fujitsu | f700-fujitsu) 1680c43cc173Smrg os=-uxpv 1681c43cc173Smrg ;; 1682c43cc173Smrg *-rom68k) 1683c43cc173Smrg os=-coff 1684c43cc173Smrg ;; 1685c43cc173Smrg *-*bug) 1686c43cc173Smrg os=-coff 1687c43cc173Smrg ;; 1688c43cc173Smrg *-apple) 1689c43cc173Smrg os=-macos 1690c43cc173Smrg ;; 1691c43cc173Smrg *-atari*) 1692c43cc173Smrg os=-mint 1693c43cc173Smrg ;; 1694c43cc173Smrg *) 1695c43cc173Smrg os=-none 1696c43cc173Smrg ;; 1697c43cc173Smrgesac 1698c43cc173Smrgfi 1699c43cc173Smrg 1700c43cc173Smrg# Here we handle the case where we know the os, and the CPU type, but not the 1701c43cc173Smrg# manufacturer. We pick the logical manufacturer. 1702c43cc173Smrgvendor=unknown 1703c43cc173Smrgcase $basic_machine in 1704c43cc173Smrg *-unknown) 1705c43cc173Smrg case $os in 1706c43cc173Smrg -riscix*) 1707c43cc173Smrg vendor=acorn 1708c43cc173Smrg ;; 1709c43cc173Smrg -sunos*) 1710c43cc173Smrg vendor=sun 1711c43cc173Smrg ;; 17123e256790Smrg -cnk*|-aix*) 1713c43cc173Smrg vendor=ibm 1714c43cc173Smrg ;; 1715c43cc173Smrg -beos*) 1716c43cc173Smrg vendor=be 1717c43cc173Smrg ;; 1718c43cc173Smrg -hpux*) 1719c43cc173Smrg vendor=hp 1720c43cc173Smrg ;; 1721c43cc173Smrg -mpeix*) 1722c43cc173Smrg vendor=hp 1723c43cc173Smrg ;; 1724c43cc173Smrg -hiux*) 1725c43cc173Smrg vendor=hitachi 1726c43cc173Smrg ;; 1727c43cc173Smrg -unos*) 1728c43cc173Smrg vendor=crds 1729c43cc173Smrg ;; 1730c43cc173Smrg -dgux*) 1731c43cc173Smrg vendor=dg 1732c43cc173Smrg ;; 1733c43cc173Smrg -luna*) 1734c43cc173Smrg vendor=omron 1735c43cc173Smrg ;; 1736c43cc173Smrg -genix*) 1737c43cc173Smrg vendor=ns 1738c43cc173Smrg ;; 1739c43cc173Smrg -mvs* | -opened*) 1740c43cc173Smrg vendor=ibm 1741c43cc173Smrg ;; 174221e67964Smrg -os400*) 174321e67964Smrg vendor=ibm 174421e67964Smrg ;; 1745c43cc173Smrg -ptx*) 1746c43cc173Smrg vendor=sequent 1747c43cc173Smrg ;; 174821e67964Smrg -tpf*) 174921e67964Smrg vendor=ibm 175021e67964Smrg ;; 1751c43cc173Smrg -vxsim* | -vxworks* | -windiss*) 1752c43cc173Smrg vendor=wrs 1753c43cc173Smrg ;; 1754c43cc173Smrg -aux*) 1755c43cc173Smrg vendor=apple 1756c43cc173Smrg ;; 1757c43cc173Smrg -hms*) 1758c43cc173Smrg vendor=hitachi 1759c43cc173Smrg ;; 1760c43cc173Smrg -mpw* | -macos*) 1761c43cc173Smrg vendor=apple 1762c43cc173Smrg ;; 1763c43cc173Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1764c43cc173Smrg vendor=atari 1765c43cc173Smrg ;; 1766c43cc173Smrg -vos*) 1767c43cc173Smrg vendor=stratus 1768c43cc173Smrg ;; 1769c43cc173Smrg esac 1770c43cc173Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1771c43cc173Smrg ;; 1772c43cc173Smrgesac 1773c43cc173Smrg 1774c43cc173Smrgecho $basic_machine$os 177521e67964Smrgexit 1776c43cc173Smrg 1777c43cc173Smrg# Local variables: 1778c43cc173Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1779c43cc173Smrg# time-stamp-start: "timestamp='" 1780c43cc173Smrg# time-stamp-format: "%:y-%02m-%02d" 1781c43cc173Smrg# time-stamp-end: "'" 1782c43cc173Smrg# End: 1783