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