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