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