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