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