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