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