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