config.sub revision e4da38af
1659607e0Smrg#! /bin/sh 2659607e0Smrg# Configuration validation subroutine script. 3e4da38afSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4e4da38afSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5e4da38afSmrg# 2011, 2012 Free Software Foundation, Inc. 6659607e0Smrg 7e4da38afSmrgtimestamp='2012-04-18' 8659607e0Smrg 9e4da38afSmrg# This file is (in principle) common to ALL GNU software. 10e4da38afSmrg# The presence of a machine in this file suggests that SOME GNU software 11e4da38afSmrg# can handle that machine. It does not imply ALL GNU software can. 12e4da38afSmrg# 13e4da38afSmrg# This file is free software; you can redistribute it and/or modify 14e4da38afSmrg# it under the terms of the GNU General Public License as published by 15e4da38afSmrg# the Free Software Foundation; either version 2 of the License, or 16659607e0Smrg# (at your option) any later version. 17659607e0Smrg# 18e4da38afSmrg# This program is distributed in the hope that it will be useful, 19e4da38afSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20e4da38afSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21e4da38afSmrg# GNU General Public License for more details. 22659607e0Smrg# 23659607e0Smrg# You should have received a copy of the GNU General Public License 24a73597f9Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 25659607e0Smrg# 26659607e0Smrg# As a special exception to the GNU General Public License, if you 27659607e0Smrg# distribute this file as part of a program that contains a 28659607e0Smrg# configuration script generated by Autoconf, you may include it under 29e4da38afSmrg# the same distribution terms that you use for the rest of that program. 30659607e0Smrg 31659607e0Smrg 32e4da38afSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 33e4da38afSmrg# diff and a properly formatted GNU ChangeLog entry. 34659607e0Smrg# 35659607e0Smrg# Configuration subroutine to validate and canonicalize a configuration type. 36659607e0Smrg# Supply the specified configuration type as an argument. 37659607e0Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 38659607e0Smrg# Otherwise, we print the canonical config type on stdout and succeed. 39659607e0Smrg 40b73be646Smrg# You can get the latest version of this script from: 41b73be646Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 42b73be646Smrg 43659607e0Smrg# This file is supposed to be the same for all GNU packages 44659607e0Smrg# and recognize all the CPU types, system types and aliases 45659607e0Smrg# that are meaningful with *any* GNU software. 46659607e0Smrg# Each package is responsible for reporting which valid configurations 47659607e0Smrg# it does not support. The user should be able to distinguish 48659607e0Smrg# a failure to support a valid configuration from a meaningless 49659607e0Smrg# configuration. 50659607e0Smrg 51659607e0Smrg# The goal of this file is to map all the various variations of a given 52659607e0Smrg# machine specification into a single specification in the form: 53659607e0Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 54659607e0Smrg# or in some cases, the newer four-part form: 55659607e0Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 56659607e0Smrg# It is wrong to echo any other type of specification. 57659607e0Smrg 58659607e0Smrgme=`echo "$0" | sed -e 's,.*/,,'` 59659607e0Smrg 60659607e0Smrgusage="\ 61659607e0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 62659607e0Smrg $0 [OPTION] ALIAS 63659607e0Smrg 64659607e0SmrgCanonicalize a configuration name. 65659607e0Smrg 66659607e0SmrgOperation modes: 67659607e0Smrg -h, --help print this help, then exit 68659607e0Smrg -t, --time-stamp print date of last modification, then exit 69659607e0Smrg -v, --version print version number, then exit 70659607e0Smrg 71659607e0SmrgReport bugs and patches to <config-patches@gnu.org>." 72659607e0Smrg 73659607e0Smrgversion="\ 74659607e0SmrgGNU config.sub ($timestamp) 75659607e0Smrg 76e4da38afSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 77e4da38afSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 78e4da38afSmrgFree Software Foundation, Inc. 79659607e0Smrg 80659607e0SmrgThis is free software; see the source for copying conditions. There is NO 81659607e0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 82659607e0Smrg 83659607e0Smrghelp=" 84659607e0SmrgTry \`$me --help' for more information." 85659607e0Smrg 86659607e0Smrg# Parse command line 87659607e0Smrgwhile test $# -gt 0 ; do 88659607e0Smrg case $1 in 89659607e0Smrg --time-stamp | --time* | -t ) 90659607e0Smrg echo "$timestamp" ; exit ;; 91659607e0Smrg --version | -v ) 92659607e0Smrg echo "$version" ; exit ;; 93659607e0Smrg --help | --h* | -h ) 94659607e0Smrg echo "$usage"; exit ;; 95659607e0Smrg -- ) # Stop option processing 96659607e0Smrg shift; break ;; 97659607e0Smrg - ) # Use stdin as input. 98659607e0Smrg break ;; 99659607e0Smrg -* ) 100659607e0Smrg echo "$me: invalid option $1$help" 101659607e0Smrg exit 1 ;; 102659607e0Smrg 103659607e0Smrg *local*) 104659607e0Smrg # First pass through any local machine types. 105659607e0Smrg echo $1 106659607e0Smrg exit ;; 107659607e0Smrg 108659607e0Smrg * ) 109659607e0Smrg break ;; 110659607e0Smrg esac 111659607e0Smrgdone 112659607e0Smrg 113659607e0Smrgcase $# in 114659607e0Smrg 0) echo "$me: missing argument$help" >&2 115659607e0Smrg exit 1;; 116659607e0Smrg 1) ;; 117659607e0Smrg *) echo "$me: too many arguments$help" >&2 118659607e0Smrg exit 1;; 119659607e0Smrgesac 120659607e0Smrg 121659607e0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 122659607e0Smrg# Here we must recognize all the valid KERNEL-OS combinations. 123659607e0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 124659607e0Smrgcase $maybe_os in 125bd3a1963Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 126e4da38afSmrg linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 127bd3a1963Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 128b73be646Smrg kopensolaris*-gnu* | \ 129659607e0Smrg storm-chaos* | os2-emx* | rtmk-nova*) 130659607e0Smrg os=-$maybe_os 131659607e0Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 132659607e0Smrg ;; 133a73597f9Smrg android-linux) 134a73597f9Smrg os=-linux-android 135a73597f9Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 136a73597f9Smrg ;; 137659607e0Smrg *) 138659607e0Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 139659607e0Smrg if [ $basic_machine != $1 ] 140659607e0Smrg then os=`echo $1 | sed 's/.*-/-/'` 141659607e0Smrg else os=; fi 142659607e0Smrg ;; 143659607e0Smrgesac 144659607e0Smrg 145659607e0Smrg### Let's recognize common machines as not being operating systems so 146659607e0Smrg### that things like config.sub decstation-3100 work. We also 147659607e0Smrg### recognize some manufacturers as not being operating systems, so we 148659607e0Smrg### can provide default operating systems below. 149659607e0Smrgcase $os in 150659607e0Smrg -sun*os*) 151659607e0Smrg # Prevent following clause from handling this invalid input. 152659607e0Smrg ;; 153659607e0Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 154659607e0Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 155659607e0Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 156659607e0Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 157659607e0Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 158659607e0Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 159e4da38afSmrg -apple | -axis | -knuth | -cray | -microblaze) 160659607e0Smrg os= 161659607e0Smrg basic_machine=$1 162659607e0Smrg ;; 163a73597f9Smrg -bluegene*) 164a73597f9Smrg os=-cnk 165b73be646Smrg ;; 166659607e0Smrg -sim | -cisco | -oki | -wec | -winbond) 167659607e0Smrg os= 168659607e0Smrg basic_machine=$1 169659607e0Smrg ;; 170659607e0Smrg -scout) 171659607e0Smrg ;; 172659607e0Smrg -wrs) 173659607e0Smrg os=-vxworks 174659607e0Smrg basic_machine=$1 175659607e0Smrg ;; 176659607e0Smrg -chorusos*) 177659607e0Smrg os=-chorusos 178659607e0Smrg basic_machine=$1 179659607e0Smrg ;; 180a73597f9Smrg -chorusrdb) 181a73597f9Smrg os=-chorusrdb 182659607e0Smrg basic_machine=$1 183a73597f9Smrg ;; 184659607e0Smrg -hiux*) 185659607e0Smrg os=-hiuxwe2 186659607e0Smrg ;; 187659607e0Smrg -sco6) 188659607e0Smrg os=-sco5v6 189659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 190659607e0Smrg ;; 191659607e0Smrg -sco5) 192659607e0Smrg os=-sco3.2v5 193659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 194659607e0Smrg ;; 195659607e0Smrg -sco4) 196659607e0Smrg os=-sco3.2v4 197659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 198659607e0Smrg ;; 199659607e0Smrg -sco3.2.[4-9]*) 200659607e0Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 201659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 202659607e0Smrg ;; 203659607e0Smrg -sco3.2v[4-9]*) 204659607e0Smrg # Don't forget version if it is 3.2v4 or newer. 205659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 206659607e0Smrg ;; 207659607e0Smrg -sco5v6*) 208659607e0Smrg # Don't forget version if it is 3.2v4 or newer. 209659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 210659607e0Smrg ;; 211659607e0Smrg -sco*) 212659607e0Smrg os=-sco3.2v2 213659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 214659607e0Smrg ;; 215659607e0Smrg -udk*) 216659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 217659607e0Smrg ;; 218659607e0Smrg -isc) 219659607e0Smrg os=-isc2.2 220659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 221659607e0Smrg ;; 222659607e0Smrg -clix*) 223659607e0Smrg basic_machine=clipper-intergraph 224659607e0Smrg ;; 225659607e0Smrg -isc*) 226659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 227659607e0Smrg ;; 228a73597f9Smrg -lynx*178) 229a73597f9Smrg os=-lynxos178 230a73597f9Smrg ;; 231a73597f9Smrg -lynx*5) 232a73597f9Smrg os=-lynxos5 233a73597f9Smrg ;; 234659607e0Smrg -lynx*) 235659607e0Smrg os=-lynxos 236659607e0Smrg ;; 237659607e0Smrg -ptx*) 238659607e0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 239659607e0Smrg ;; 240659607e0Smrg -windowsnt*) 241659607e0Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 242659607e0Smrg ;; 243659607e0Smrg -psos*) 244659607e0Smrg os=-psos 245659607e0Smrg ;; 246659607e0Smrg -mint | -mint[0-9]*) 247659607e0Smrg basic_machine=m68k-atari 248659607e0Smrg os=-mint 249659607e0Smrg ;; 250659607e0Smrgesac 251659607e0Smrg 252659607e0Smrg# Decode aliases for certain CPU-COMPANY combinations. 253659607e0Smrgcase $basic_machine in 254659607e0Smrg # Recognize the basic CPU types without company name. 255659607e0Smrg # Some are omitted here because they have special meanings below. 256659607e0Smrg 1750a | 580 \ 257659607e0Smrg | a29k \ 258a73597f9Smrg | aarch64 | aarch64_be \ 259659607e0Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 260659607e0Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 261659607e0Smrg | am33_2.0 \ 262e4da38afSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 263e4da38afSmrg | be32 | be64 \ 264659607e0Smrg | bfin \ 265e4da38afSmrg | c4x | clipper \ 266659607e0Smrg | d10v | d30v | dlx | dsp16xx \ 267a73597f9Smrg | epiphany \ 268fc27e79cSmrg | fido | fr30 | frv \ 269659607e0Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 270a73597f9Smrg | hexagon \ 271659607e0Smrg | i370 | i860 | i960 | ia64 \ 272659607e0Smrg | ip2k | iq2000 \ 273a73597f9Smrg | le32 | le64 \ 274b73be646Smrg | lm32 \ 275fc27e79cSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 276e4da38afSmrg | maxq | mb | microblaze | mcore | mep | metag \ 277659607e0Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 278659607e0Smrg | mips16 \ 279659607e0Smrg | mips64 | mips64el \ 280b73be646Smrg | mips64octeon | mips64octeonel \ 281659607e0Smrg | mips64orion | mips64orionel \ 282b73be646Smrg | mips64r5900 | mips64r5900el \ 283b73be646Smrg | mips64vr | mips64vrel \ 284659607e0Smrg | mips64vr4100 | mips64vr4100el \ 285659607e0Smrg | mips64vr4300 | mips64vr4300el \ 286659607e0Smrg | mips64vr5000 | mips64vr5000el \ 287659607e0Smrg | mips64vr5900 | mips64vr5900el \ 288659607e0Smrg | mipsisa32 | mipsisa32el \ 289659607e0Smrg | mipsisa32r2 | mipsisa32r2el \ 290659607e0Smrg | mipsisa64 | mipsisa64el \ 291659607e0Smrg | mipsisa64r2 | mipsisa64r2el \ 292659607e0Smrg | mipsisa64sb1 | mipsisa64sb1el \ 293659607e0Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 294659607e0Smrg | mipstx39 | mipstx39el \ 295659607e0Smrg | mn10200 | mn10300 \ 296b73be646Smrg | moxie \ 297659607e0Smrg | mt \ 298659607e0Smrg | msp430 \ 299bd3a1963Smrg | nds32 | nds32le | nds32be \ 300e4da38afSmrg | nios | nios2 \ 301659607e0Smrg | ns16k | ns32k \ 302a73597f9Smrg | open8 \ 303e4da38afSmrg | or32 \ 304659607e0Smrg | pdp10 | pdp11 | pj | pjl \ 305a73597f9Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 306659607e0Smrg | pyramid \ 307a73597f9Smrg | rl78 | rx \ 308fc27e79cSmrg | score \ 309b73be646Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 310659607e0Smrg | sh64 | sh64le \ 311fc27e79cSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 312fc27e79cSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 313a73597f9Smrg | spu \ 314a73597f9Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 315b73be646Smrg | ubicom32 \ 316a73597f9Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 317659607e0Smrg | we32k \ 318a73597f9Smrg | x86 | xc16x | xstormy16 | xtensa \ 319b73be646Smrg | z8k | z80) 320659607e0Smrg basic_machine=$basic_machine-unknown 321659607e0Smrg ;; 322bd3a1963Smrg c54x) 323bd3a1963Smrg basic_machine=tic54x-unknown 324bd3a1963Smrg ;; 325bd3a1963Smrg c55x) 326bd3a1963Smrg basic_machine=tic55x-unknown 327bd3a1963Smrg ;; 328bd3a1963Smrg c6x) 329bd3a1963Smrg basic_machine=tic6x-unknown 330bd3a1963Smrg ;; 331e4da38afSmrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 332659607e0Smrg basic_machine=$basic_machine-unknown 333659607e0Smrg os=-none 334659607e0Smrg ;; 335659607e0Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 336659607e0Smrg ;; 337659607e0Smrg ms1) 338659607e0Smrg basic_machine=mt-unknown 339659607e0Smrg ;; 340659607e0Smrg 341a73597f9Smrg strongarm | thumb | xscale) 342a73597f9Smrg basic_machine=arm-unknown 343a73597f9Smrg ;; 344a73597f9Smrg xgate) 345a73597f9Smrg basic_machine=$basic_machine-unknown 346a73597f9Smrg os=-none 347a73597f9Smrg ;; 348a73597f9Smrg xscaleeb) 349a73597f9Smrg basic_machine=armeb-unknown 350a73597f9Smrg ;; 351a73597f9Smrg 352a73597f9Smrg xscaleel) 353a73597f9Smrg basic_machine=armel-unknown 354a73597f9Smrg ;; 355a73597f9Smrg 356659607e0Smrg # We use `pc' rather than `unknown' 357659607e0Smrg # because (1) that's what they normally are, and 358659607e0Smrg # (2) the word "unknown" tends to confuse beginning users. 359659607e0Smrg i*86 | x86_64) 360659607e0Smrg basic_machine=$basic_machine-pc 361659607e0Smrg ;; 362659607e0Smrg # Object if more than one company name word. 363659607e0Smrg *-*-*) 364659607e0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 365659607e0Smrg exit 1 366659607e0Smrg ;; 367659607e0Smrg # Recognize the basic CPU types with company name. 368659607e0Smrg 580-* \ 369659607e0Smrg | a29k-* \ 370a73597f9Smrg | aarch64-* | aarch64_be-* \ 371659607e0Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 372659607e0Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 373e4da38afSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 374659607e0Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 375fc27e79cSmrg | avr-* | avr32-* \ 376a73597f9Smrg | be32-* | be64-* \ 377659607e0Smrg | bfin-* | bs2000-* \ 378bd3a1963Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 379e4da38afSmrg | clipper-* | craynv-* | cydra-* \ 380659607e0Smrg | d10v-* | d30v-* | dlx-* \ 381659607e0Smrg | elxsi-* \ 382fc27e79cSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 383659607e0Smrg | h8300-* | h8500-* \ 384659607e0Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 385a73597f9Smrg | hexagon-* \ 386659607e0Smrg | i*86-* | i860-* | i960-* | ia64-* \ 387659607e0Smrg | ip2k-* | iq2000-* \ 388a73597f9Smrg | le32-* | le64-* \ 389b73be646Smrg | lm32-* \ 390fc27e79cSmrg | m32c-* | m32r-* | m32rle-* \ 391659607e0Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 392e4da38afSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 393659607e0Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 394659607e0Smrg | mips16-* \ 395659607e0Smrg | mips64-* | mips64el-* \ 396b73be646Smrg | mips64octeon-* | mips64octeonel-* \ 397659607e0Smrg | mips64orion-* | mips64orionel-* \ 398b73be646Smrg | mips64r5900-* | mips64r5900el-* \ 399b73be646Smrg | mips64vr-* | mips64vrel-* \ 400659607e0Smrg | mips64vr4100-* | mips64vr4100el-* \ 401659607e0Smrg | mips64vr4300-* | mips64vr4300el-* \ 402659607e0Smrg | mips64vr5000-* | mips64vr5000el-* \ 403659607e0Smrg | mips64vr5900-* | mips64vr5900el-* \ 404659607e0Smrg | mipsisa32-* | mipsisa32el-* \ 405659607e0Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 406659607e0Smrg | mipsisa64-* | mipsisa64el-* \ 407659607e0Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 408659607e0Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 409659607e0Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 410659607e0Smrg | mipstx39-* | mipstx39el-* \ 411659607e0Smrg | mmix-* \ 412659607e0Smrg | mt-* \ 413659607e0Smrg | msp430-* \ 414bd3a1963Smrg | nds32-* | nds32le-* | nds32be-* \ 415e4da38afSmrg | nios-* | nios2-* \ 416659607e0Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 417a73597f9Smrg | open8-* \ 418659607e0Smrg | orion-* \ 419659607e0Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 420a73597f9Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 421659607e0Smrg | pyramid-* \ 422a73597f9Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 423b73be646Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 424659607e0Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 425fc27e79cSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 426659607e0Smrg | sparclite-* \ 427a73597f9Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 428a73597f9Smrg | tahoe-* \ 429bd3a1963Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 430a73597f9Smrg | tile*-* \ 431659607e0Smrg | tron-* \ 432b73be646Smrg | ubicom32-* \ 433a73597f9Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 434a73597f9Smrg | vax-* \ 435659607e0Smrg | we32k-* \ 436a73597f9Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 437fc27e79cSmrg | xstormy16-* | xtensa*-* \ 438659607e0Smrg | ymp-* \ 439b73be646Smrg | z8k-* | z80-*) 440659607e0Smrg ;; 441fc27e79cSmrg # Recognize the basic CPU types without company name, with glob match. 442fc27e79cSmrg xtensa*) 443fc27e79cSmrg basic_machine=$basic_machine-unknown 4446aab59a7Smrg ;; 445659607e0Smrg # Recognize the various machine names and aliases which stand 446659607e0Smrg # for a CPU type and a company and sometimes even an OS. 447659607e0Smrg 386bsd) 448659607e0Smrg basic_machine=i386-unknown 449659607e0Smrg os=-bsd 450659607e0Smrg ;; 451659607e0Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 452659607e0Smrg basic_machine=m68000-att 453659607e0Smrg ;; 454659607e0Smrg 3b*) 455659607e0Smrg basic_machine=we32k-att 456659607e0Smrg ;; 457659607e0Smrg a29khif) 458659607e0Smrg basic_machine=a29k-amd 459659607e0Smrg os=-udi 460659607e0Smrg ;; 461a73597f9Smrg abacus) 462659607e0Smrg basic_machine=abacus-unknown 463659607e0Smrg ;; 464659607e0Smrg adobe68k) 465659607e0Smrg basic_machine=m68010-adobe 466659607e0Smrg os=-scout 467659607e0Smrg ;; 468659607e0Smrg alliant | fx80) 469659607e0Smrg basic_machine=fx80-alliant 470659607e0Smrg ;; 471659607e0Smrg altos | altos3068) 472659607e0Smrg basic_machine=m68k-altos 473659607e0Smrg ;; 474659607e0Smrg am29k) 475659607e0Smrg basic_machine=a29k-none 476659607e0Smrg os=-bsd 477659607e0Smrg ;; 478659607e0Smrg amd64) 479659607e0Smrg basic_machine=x86_64-pc 480659607e0Smrg ;; 481659607e0Smrg amd64-*) 482659607e0Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 483659607e0Smrg ;; 484659607e0Smrg amdahl) 485659607e0Smrg basic_machine=580-amdahl 486659607e0Smrg os=-sysv 487659607e0Smrg ;; 488659607e0Smrg amiga | amiga-*) 489659607e0Smrg basic_machine=m68k-unknown 490659607e0Smrg ;; 491659607e0Smrg amigaos | amigados) 492659607e0Smrg basic_machine=m68k-unknown 493659607e0Smrg os=-amigaos 494659607e0Smrg ;; 495659607e0Smrg amigaunix | amix) 496659607e0Smrg basic_machine=m68k-unknown 497659607e0Smrg os=-sysv4 498659607e0Smrg ;; 499659607e0Smrg apollo68) 500659607e0Smrg basic_machine=m68k-apollo 501659607e0Smrg os=-sysv 502659607e0Smrg ;; 503659607e0Smrg apollo68bsd) 504659607e0Smrg basic_machine=m68k-apollo 505659607e0Smrg os=-bsd 506659607e0Smrg ;; 507b73be646Smrg aros) 508b73be646Smrg basic_machine=i386-pc 509b73be646Smrg os=-aros 510b73be646Smrg ;; 511659607e0Smrg aux) 512659607e0Smrg basic_machine=m68k-apple 513659607e0Smrg os=-aux 514659607e0Smrg ;; 515659607e0Smrg balance) 516659607e0Smrg basic_machine=ns32k-sequent 517659607e0Smrg os=-dynix 518659607e0Smrg ;; 519fc27e79cSmrg blackfin) 520fc27e79cSmrg basic_machine=bfin-unknown 521fc27e79cSmrg os=-linux 522fc27e79cSmrg ;; 523fc27e79cSmrg blackfin-*) 524fc27e79cSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 525fc27e79cSmrg os=-linux 526fc27e79cSmrg ;; 527b73be646Smrg bluegene*) 528b73be646Smrg basic_machine=powerpc-ibm 529b73be646Smrg os=-cnk 530b73be646Smrg ;; 531bd3a1963Smrg c54x-*) 532bd3a1963Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 533bd3a1963Smrg ;; 534bd3a1963Smrg c55x-*) 535bd3a1963Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 536bd3a1963Smrg ;; 537bd3a1963Smrg c6x-*) 538bd3a1963Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 539bd3a1963Smrg ;; 540659607e0Smrg c90) 541659607e0Smrg basic_machine=c90-cray 542659607e0Smrg os=-unicos 543659607e0Smrg ;; 544a73597f9Smrg cegcc) 545b73be646Smrg basic_machine=arm-unknown 546b73be646Smrg os=-cegcc 547b73be646Smrg ;; 548659607e0Smrg convex-c1) 549659607e0Smrg basic_machine=c1-convex 550659607e0Smrg os=-bsd 551659607e0Smrg ;; 552659607e0Smrg convex-c2) 553659607e0Smrg basic_machine=c2-convex 554659607e0Smrg os=-bsd 555659607e0Smrg ;; 556659607e0Smrg convex-c32) 557659607e0Smrg basic_machine=c32-convex 558659607e0Smrg os=-bsd 559659607e0Smrg ;; 560659607e0Smrg convex-c34) 561659607e0Smrg basic_machine=c34-convex 562659607e0Smrg os=-bsd 563659607e0Smrg ;; 564659607e0Smrg convex-c38) 565659607e0Smrg basic_machine=c38-convex 566659607e0Smrg os=-bsd 567659607e0Smrg ;; 568659607e0Smrg cray | j90) 569659607e0Smrg basic_machine=j90-cray 570659607e0Smrg os=-unicos 571659607e0Smrg ;; 572659607e0Smrg craynv) 573659607e0Smrg basic_machine=craynv-cray 574659607e0Smrg os=-unicosmp 575659607e0Smrg ;; 576a73597f9Smrg cr16 | cr16-*) 577fc27e79cSmrg basic_machine=cr16-unknown 578659607e0Smrg os=-elf 579659607e0Smrg ;; 580659607e0Smrg crds | unos) 581659607e0Smrg basic_machine=m68k-crds 582659607e0Smrg ;; 583659607e0Smrg crisv32 | crisv32-* | etraxfs*) 584659607e0Smrg basic_machine=crisv32-axis 585659607e0Smrg ;; 586659607e0Smrg cris | cris-* | etrax*) 587659607e0Smrg basic_machine=cris-axis 588659607e0Smrg ;; 589659607e0Smrg crx) 590659607e0Smrg basic_machine=crx-unknown 591659607e0Smrg os=-elf 592659607e0Smrg ;; 593659607e0Smrg da30 | da30-*) 594659607e0Smrg basic_machine=m68k-da30 595659607e0Smrg ;; 596659607e0Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 597659607e0Smrg basic_machine=mips-dec 598659607e0Smrg ;; 599659607e0Smrg decsystem10* | dec10*) 600659607e0Smrg basic_machine=pdp10-dec 601659607e0Smrg os=-tops10 602659607e0Smrg ;; 603659607e0Smrg decsystem20* | dec20*) 604659607e0Smrg basic_machine=pdp10-dec 605659607e0Smrg os=-tops20 606659607e0Smrg ;; 607659607e0Smrg delta | 3300 | motorola-3300 | motorola-delta \ 608659607e0Smrg | 3300-motorola | delta-motorola) 609659607e0Smrg basic_machine=m68k-motorola 610659607e0Smrg ;; 611659607e0Smrg delta88) 612659607e0Smrg basic_machine=m88k-motorola 613659607e0Smrg os=-sysv3 614659607e0Smrg ;; 615b73be646Smrg dicos) 616b73be646Smrg basic_machine=i686-pc 617b73be646Smrg os=-dicos 618b73be646Smrg ;; 619659607e0Smrg djgpp) 620659607e0Smrg basic_machine=i586-pc 621659607e0Smrg os=-msdosdjgpp 622659607e0Smrg ;; 623659607e0Smrg dpx20 | dpx20-*) 624659607e0Smrg basic_machine=rs6000-bull 625659607e0Smrg os=-bosx 626659607e0Smrg ;; 627659607e0Smrg dpx2* | dpx2*-bull) 628659607e0Smrg basic_machine=m68k-bull 629659607e0Smrg os=-sysv3 630659607e0Smrg ;; 631659607e0Smrg ebmon29k) 632659607e0Smrg basic_machine=a29k-amd 633659607e0Smrg os=-ebmon 634659607e0Smrg ;; 635659607e0Smrg elxsi) 636659607e0Smrg basic_machine=elxsi-elxsi 637659607e0Smrg os=-bsd 638659607e0Smrg ;; 639659607e0Smrg encore | umax | mmax) 640659607e0Smrg basic_machine=ns32k-encore 641659607e0Smrg ;; 642659607e0Smrg es1800 | OSE68k | ose68k | ose | OSE) 643659607e0Smrg basic_machine=m68k-ericsson 644659607e0Smrg os=-ose 645659607e0Smrg ;; 646659607e0Smrg fx2800) 647659607e0Smrg basic_machine=i860-alliant 648659607e0Smrg ;; 649659607e0Smrg genix) 650659607e0Smrg basic_machine=ns32k-ns 651659607e0Smrg ;; 652659607e0Smrg gmicro) 653659607e0Smrg basic_machine=tron-gmicro 654659607e0Smrg os=-sysv 655659607e0Smrg ;; 656659607e0Smrg go32) 657659607e0Smrg basic_machine=i386-pc 658659607e0Smrg os=-go32 659659607e0Smrg ;; 660659607e0Smrg h3050r* | hiux*) 661659607e0Smrg basic_machine=hppa1.1-hitachi 662659607e0Smrg os=-hiuxwe2 663659607e0Smrg ;; 664659607e0Smrg h8300hms) 665659607e0Smrg basic_machine=h8300-hitachi 666659607e0Smrg os=-hms 667659607e0Smrg ;; 668659607e0Smrg h8300xray) 669659607e0Smrg basic_machine=h8300-hitachi 670659607e0Smrg os=-xray 671659607e0Smrg ;; 672659607e0Smrg h8500hms) 673659607e0Smrg basic_machine=h8500-hitachi 674659607e0Smrg os=-hms 675659607e0Smrg ;; 676659607e0Smrg harris) 677659607e0Smrg basic_machine=m88k-harris 678659607e0Smrg os=-sysv3 679659607e0Smrg ;; 680659607e0Smrg hp300-*) 681659607e0Smrg basic_machine=m68k-hp 682659607e0Smrg ;; 683659607e0Smrg hp300bsd) 684659607e0Smrg basic_machine=m68k-hp 685659607e0Smrg os=-bsd 686659607e0Smrg ;; 687659607e0Smrg hp300hpux) 688659607e0Smrg basic_machine=m68k-hp 689659607e0Smrg os=-hpux 690659607e0Smrg ;; 691659607e0Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 692659607e0Smrg basic_machine=hppa1.0-hp 693659607e0Smrg ;; 694659607e0Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 695659607e0Smrg basic_machine=m68000-hp 696659607e0Smrg ;; 697659607e0Smrg hp9k3[2-9][0-9]) 698659607e0Smrg basic_machine=m68k-hp 699659607e0Smrg ;; 700659607e0Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 701659607e0Smrg basic_machine=hppa1.0-hp 702659607e0Smrg ;; 703659607e0Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 704659607e0Smrg basic_machine=hppa1.1-hp 705659607e0Smrg ;; 706659607e0Smrg hp9k78[0-9] | hp78[0-9]) 707659607e0Smrg # FIXME: really hppa2.0-hp 708659607e0Smrg basic_machine=hppa1.1-hp 709659607e0Smrg ;; 710659607e0Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 711659607e0Smrg # FIXME: really hppa2.0-hp 712659607e0Smrg basic_machine=hppa1.1-hp 713659607e0Smrg ;; 714659607e0Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 715659607e0Smrg basic_machine=hppa1.1-hp 716659607e0Smrg ;; 717659607e0Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 718659607e0Smrg basic_machine=hppa1.0-hp 719659607e0Smrg ;; 720659607e0Smrg hppa-next) 721659607e0Smrg os=-nextstep3 722659607e0Smrg ;; 723659607e0Smrg hppaosf) 724659607e0Smrg basic_machine=hppa1.1-hp 725659607e0Smrg os=-osf 726659607e0Smrg ;; 727659607e0Smrg hppro) 728659607e0Smrg basic_machine=hppa1.1-hp 729659607e0Smrg os=-proelf 730659607e0Smrg ;; 731659607e0Smrg i370-ibm* | ibm*) 732659607e0Smrg basic_machine=i370-ibm 733659607e0Smrg ;; 734659607e0Smrg i*86v32) 735659607e0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 736659607e0Smrg os=-sysv32 737659607e0Smrg ;; 738659607e0Smrg i*86v4*) 739659607e0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 740659607e0Smrg os=-sysv4 741659607e0Smrg ;; 742659607e0Smrg i*86v) 743659607e0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 744659607e0Smrg os=-sysv 745659607e0Smrg ;; 746659607e0Smrg i*86sol2) 747659607e0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 748659607e0Smrg os=-solaris2 749659607e0Smrg ;; 750659607e0Smrg i386mach) 751659607e0Smrg basic_machine=i386-mach 752659607e0Smrg os=-mach 753659607e0Smrg ;; 754659607e0Smrg i386-vsta | vsta) 755659607e0Smrg basic_machine=i386-unknown 756659607e0Smrg os=-vsta 757659607e0Smrg ;; 758659607e0Smrg iris | iris4d) 759659607e0Smrg basic_machine=mips-sgi 760659607e0Smrg case $os in 761659607e0Smrg -irix*) 762659607e0Smrg ;; 763659607e0Smrg *) 764659607e0Smrg os=-irix4 765659607e0Smrg ;; 766659607e0Smrg esac 767659607e0Smrg ;; 768659607e0Smrg isi68 | isi) 769659607e0Smrg basic_machine=m68k-isi 770659607e0Smrg os=-sysv 771659607e0Smrg ;; 772fc27e79cSmrg m68knommu) 773fc27e79cSmrg basic_machine=m68k-unknown 774fc27e79cSmrg os=-linux 775fc27e79cSmrg ;; 776fc27e79cSmrg m68knommu-*) 777fc27e79cSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 778fc27e79cSmrg os=-linux 779fc27e79cSmrg ;; 780659607e0Smrg m88k-omron*) 781659607e0Smrg basic_machine=m88k-omron 782659607e0Smrg ;; 783659607e0Smrg magnum | m3230) 784659607e0Smrg basic_machine=mips-mips 785659607e0Smrg os=-sysv 786659607e0Smrg ;; 787659607e0Smrg merlin) 788659607e0Smrg basic_machine=ns32k-utek 789659607e0Smrg os=-sysv 790659607e0Smrg ;; 791e4da38afSmrg microblaze) 792b73be646Smrg basic_machine=microblaze-xilinx 793b73be646Smrg ;; 794659607e0Smrg mingw32) 795e4da38afSmrg basic_machine=i386-pc 796659607e0Smrg os=-mingw32 797659607e0Smrg ;; 798fc27e79cSmrg mingw32ce) 799fc27e79cSmrg basic_machine=arm-unknown 800fc27e79cSmrg os=-mingw32ce 801fc27e79cSmrg ;; 802659607e0Smrg miniframe) 803659607e0Smrg basic_machine=m68000-convergent 804659607e0Smrg ;; 805659607e0Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 806659607e0Smrg basic_machine=m68k-atari 807659607e0Smrg os=-mint 808659607e0Smrg ;; 809659607e0Smrg mips3*-*) 810659607e0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 811659607e0Smrg ;; 812659607e0Smrg mips3*) 813659607e0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 814659607e0Smrg ;; 815659607e0Smrg monitor) 816659607e0Smrg basic_machine=m68k-rom68k 817659607e0Smrg os=-coff 818659607e0Smrg ;; 819659607e0Smrg morphos) 820659607e0Smrg basic_machine=powerpc-unknown 821659607e0Smrg os=-morphos 822659607e0Smrg ;; 823659607e0Smrg msdos) 824659607e0Smrg basic_machine=i386-pc 825659607e0Smrg os=-msdos 826659607e0Smrg ;; 827659607e0Smrg ms1-*) 828659607e0Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 829659607e0Smrg ;; 830a73597f9Smrg msys) 831e4da38afSmrg basic_machine=i386-pc 832a73597f9Smrg os=-msys 833a73597f9Smrg ;; 834659607e0Smrg mvs) 835659607e0Smrg basic_machine=i370-ibm 836659607e0Smrg os=-mvs 837659607e0Smrg ;; 838a73597f9Smrg nacl) 839a73597f9Smrg basic_machine=le32-unknown 840a73597f9Smrg os=-nacl 841a73597f9Smrg ;; 842659607e0Smrg ncr3000) 843659607e0Smrg basic_machine=i486-ncr 844659607e0Smrg os=-sysv4 845659607e0Smrg ;; 846659607e0Smrg netbsd386) 847659607e0Smrg basic_machine=i386-unknown 848659607e0Smrg os=-netbsd 849659607e0Smrg ;; 850659607e0Smrg netwinder) 851659607e0Smrg basic_machine=armv4l-rebel 852659607e0Smrg os=-linux 853659607e0Smrg ;; 854659607e0Smrg news | news700 | news800 | news900) 855659607e0Smrg basic_machine=m68k-sony 856659607e0Smrg os=-newsos 857659607e0Smrg ;; 858659607e0Smrg news1000) 859659607e0Smrg basic_machine=m68030-sony 860659607e0Smrg os=-newsos 861659607e0Smrg ;; 862659607e0Smrg news-3600 | risc-news) 863659607e0Smrg basic_machine=mips-sony 864659607e0Smrg os=-newsos 865659607e0Smrg ;; 866659607e0Smrg necv70) 867659607e0Smrg basic_machine=v70-nec 868659607e0Smrg os=-sysv 869659607e0Smrg ;; 870659607e0Smrg next | m*-next ) 871659607e0Smrg basic_machine=m68k-next 872659607e0Smrg case $os in 873659607e0Smrg -nextstep* ) 874659607e0Smrg ;; 875659607e0Smrg -ns2*) 876659607e0Smrg os=-nextstep2 877659607e0Smrg ;; 878659607e0Smrg *) 879659607e0Smrg os=-nextstep3 880659607e0Smrg ;; 881659607e0Smrg esac 882659607e0Smrg ;; 883659607e0Smrg nh3000) 884659607e0Smrg basic_machine=m68k-harris 885659607e0Smrg os=-cxux 886659607e0Smrg ;; 887659607e0Smrg nh[45]000) 888659607e0Smrg basic_machine=m88k-harris 889659607e0Smrg os=-cxux 890659607e0Smrg ;; 891659607e0Smrg nindy960) 892659607e0Smrg basic_machine=i960-intel 893659607e0Smrg os=-nindy 894659607e0Smrg ;; 895659607e0Smrg mon960) 896659607e0Smrg basic_machine=i960-intel 897659607e0Smrg os=-mon960 898659607e0Smrg ;; 899659607e0Smrg nonstopux) 900659607e0Smrg basic_machine=mips-compaq 901659607e0Smrg os=-nonstopux 902659607e0Smrg ;; 903659607e0Smrg np1) 904659607e0Smrg basic_machine=np1-gould 905659607e0Smrg ;; 906a73597f9Smrg neo-tandem) 907bd3a1963Smrg basic_machine=neo-tandem 908bd3a1963Smrg ;; 909a73597f9Smrg nse-tandem) 910bd3a1963Smrg basic_machine=nse-tandem 911bd3a1963Smrg ;; 912659607e0Smrg nsr-tandem) 913659607e0Smrg basic_machine=nsr-tandem 914659607e0Smrg ;; 915659607e0Smrg op50n-* | op60c-*) 916659607e0Smrg basic_machine=hppa1.1-oki 917659607e0Smrg os=-proelf 918659607e0Smrg ;; 919659607e0Smrg openrisc | openrisc-*) 920659607e0Smrg basic_machine=or32-unknown 921659607e0Smrg ;; 922659607e0Smrg os400) 923659607e0Smrg basic_machine=powerpc-ibm 924659607e0Smrg os=-os400 925659607e0Smrg ;; 926659607e0Smrg OSE68000 | ose68000) 927659607e0Smrg basic_machine=m68000-ericsson 928659607e0Smrg os=-ose 929659607e0Smrg ;; 930659607e0Smrg os68k) 931659607e0Smrg basic_machine=m68k-none 932659607e0Smrg os=-os68k 933659607e0Smrg ;; 934659607e0Smrg pa-hitachi) 935659607e0Smrg basic_machine=hppa1.1-hitachi 936659607e0Smrg os=-hiuxwe2 937659607e0Smrg ;; 938659607e0Smrg paragon) 939659607e0Smrg basic_machine=i860-intel 940659607e0Smrg os=-osf 941659607e0Smrg ;; 942fc27e79cSmrg parisc) 943fc27e79cSmrg basic_machine=hppa-unknown 944fc27e79cSmrg os=-linux 945fc27e79cSmrg ;; 946fc27e79cSmrg parisc-*) 947fc27e79cSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 948fc27e79cSmrg os=-linux 949fc27e79cSmrg ;; 950659607e0Smrg pbd) 951659607e0Smrg basic_machine=sparc-tti 952659607e0Smrg ;; 953659607e0Smrg pbb) 954659607e0Smrg basic_machine=m68k-tti 955659607e0Smrg ;; 956659607e0Smrg pc532 | pc532-*) 957659607e0Smrg basic_machine=ns32k-pc532 958659607e0Smrg ;; 959fc27e79cSmrg pc98) 960fc27e79cSmrg basic_machine=i386-pc 961fc27e79cSmrg ;; 962fc27e79cSmrg pc98-*) 963fc27e79cSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 964fc27e79cSmrg ;; 965659607e0Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 966659607e0Smrg basic_machine=i586-pc 967659607e0Smrg ;; 968659607e0Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 969659607e0Smrg basic_machine=i686-pc 970659607e0Smrg ;; 971659607e0Smrg pentiumii | pentium2 | pentiumiii | pentium3) 972659607e0Smrg basic_machine=i686-pc 973659607e0Smrg ;; 974659607e0Smrg pentium4) 975659607e0Smrg basic_machine=i786-pc 976659607e0Smrg ;; 977659607e0Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 978659607e0Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 979659607e0Smrg ;; 980659607e0Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 981659607e0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 982659607e0Smrg ;; 983659607e0Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 984659607e0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 985659607e0Smrg ;; 986659607e0Smrg pentium4-*) 987659607e0Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 988659607e0Smrg ;; 989659607e0Smrg pn) 990659607e0Smrg basic_machine=pn-gould 991659607e0Smrg ;; 992659607e0Smrg power) basic_machine=power-ibm 993659607e0Smrg ;; 994a73597f9Smrg ppc | ppcbe) basic_machine=powerpc-unknown 995659607e0Smrg ;; 996a73597f9Smrg ppc-* | ppcbe-*) 997a73597f9Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 998659607e0Smrg ;; 999659607e0Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 1000659607e0Smrg basic_machine=powerpcle-unknown 1001659607e0Smrg ;; 1002659607e0Smrg ppcle-* | powerpclittle-*) 1003659607e0Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 1004659607e0Smrg ;; 1005659607e0Smrg ppc64) basic_machine=powerpc64-unknown 1006659607e0Smrg ;; 1007659607e0Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 1008659607e0Smrg ;; 1009659607e0Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 1010659607e0Smrg basic_machine=powerpc64le-unknown 1011659607e0Smrg ;; 1012659607e0Smrg ppc64le-* | powerpc64little-*) 1013659607e0Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1014659607e0Smrg ;; 1015659607e0Smrg ps2) 1016659607e0Smrg basic_machine=i386-ibm 1017659607e0Smrg ;; 1018659607e0Smrg pw32) 1019659607e0Smrg basic_machine=i586-unknown 1020659607e0Smrg os=-pw32 1021659607e0Smrg ;; 1022e4da38afSmrg rdos) 1023659607e0Smrg basic_machine=i386-pc 1024659607e0Smrg os=-rdos 1025659607e0Smrg ;; 1026659607e0Smrg rom68k) 1027659607e0Smrg basic_machine=m68k-rom68k 1028659607e0Smrg os=-coff 1029659607e0Smrg ;; 1030659607e0Smrg rm[46]00) 1031659607e0Smrg basic_machine=mips-siemens 1032659607e0Smrg ;; 1033659607e0Smrg rtpc | rtpc-*) 1034659607e0Smrg basic_machine=romp-ibm 1035659607e0Smrg ;; 1036659607e0Smrg s390 | s390-*) 1037659607e0Smrg basic_machine=s390-ibm 1038659607e0Smrg ;; 1039659607e0Smrg s390x | s390x-*) 1040659607e0Smrg basic_machine=s390x-ibm 1041659607e0Smrg ;; 1042659607e0Smrg sa29200) 1043659607e0Smrg basic_machine=a29k-amd 1044659607e0Smrg os=-udi 1045659607e0Smrg ;; 1046659607e0Smrg sb1) 1047659607e0Smrg basic_machine=mipsisa64sb1-unknown 1048659607e0Smrg ;; 1049659607e0Smrg sb1el) 1050659607e0Smrg basic_machine=mipsisa64sb1el-unknown 1051659607e0Smrg ;; 1052fc27e79cSmrg sde) 1053fc27e79cSmrg basic_machine=mipsisa32-sde 1054fc27e79cSmrg os=-elf 1055fc27e79cSmrg ;; 1056659607e0Smrg sei) 1057659607e0Smrg basic_machine=mips-sei 1058659607e0Smrg os=-seiux 1059659607e0Smrg ;; 1060659607e0Smrg sequent) 1061659607e0Smrg basic_machine=i386-sequent 1062659607e0Smrg ;; 1063659607e0Smrg sh) 1064659607e0Smrg basic_machine=sh-hitachi 1065659607e0Smrg os=-hms 1066659607e0Smrg ;; 1067fc27e79cSmrg sh5el) 1068fc27e79cSmrg basic_machine=sh5le-unknown 1069fc27e79cSmrg ;; 1070659607e0Smrg sh64) 1071659607e0Smrg basic_machine=sh64-unknown 1072659607e0Smrg ;; 1073659607e0Smrg sparclite-wrs | simso-wrs) 1074659607e0Smrg basic_machine=sparclite-wrs 1075659607e0Smrg os=-vxworks 1076659607e0Smrg ;; 1077659607e0Smrg sps7) 1078659607e0Smrg basic_machine=m68k-bull 1079659607e0Smrg os=-sysv2 1080659607e0Smrg ;; 1081659607e0Smrg spur) 1082659607e0Smrg basic_machine=spur-unknown 1083659607e0Smrg ;; 1084659607e0Smrg st2000) 1085659607e0Smrg basic_machine=m68k-tandem 1086659607e0Smrg ;; 1087659607e0Smrg stratus) 1088659607e0Smrg basic_machine=i860-stratus 1089659607e0Smrg os=-sysv4 1090659607e0Smrg ;; 1091a73597f9Smrg strongarm-* | thumb-*) 1092a73597f9Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1093a73597f9Smrg ;; 1094659607e0Smrg sun2) 1095659607e0Smrg basic_machine=m68000-sun 1096659607e0Smrg ;; 1097659607e0Smrg sun2os3) 1098659607e0Smrg basic_machine=m68000-sun 1099659607e0Smrg os=-sunos3 1100659607e0Smrg ;; 1101659607e0Smrg sun2os4) 1102659607e0Smrg basic_machine=m68000-sun 1103659607e0Smrg os=-sunos4 1104659607e0Smrg ;; 1105659607e0Smrg sun3os3) 1106659607e0Smrg basic_machine=m68k-sun 1107659607e0Smrg os=-sunos3 1108659607e0Smrg ;; 1109659607e0Smrg sun3os4) 1110659607e0Smrg basic_machine=m68k-sun 1111659607e0Smrg os=-sunos4 1112659607e0Smrg ;; 1113659607e0Smrg sun4os3) 1114659607e0Smrg basic_machine=sparc-sun 1115659607e0Smrg os=-sunos3 1116659607e0Smrg ;; 1117659607e0Smrg sun4os4) 1118659607e0Smrg basic_machine=sparc-sun 1119659607e0Smrg os=-sunos4 1120659607e0Smrg ;; 1121659607e0Smrg sun4sol2) 1122659607e0Smrg basic_machine=sparc-sun 1123659607e0Smrg os=-solaris2 1124659607e0Smrg ;; 1125659607e0Smrg sun3 | sun3-*) 1126659607e0Smrg basic_machine=m68k-sun 1127659607e0Smrg ;; 1128659607e0Smrg sun4) 1129659607e0Smrg basic_machine=sparc-sun 1130659607e0Smrg ;; 1131659607e0Smrg sun386 | sun386i | roadrunner) 1132659607e0Smrg basic_machine=i386-sun 1133659607e0Smrg ;; 1134659607e0Smrg sv1) 1135659607e0Smrg basic_machine=sv1-cray 1136659607e0Smrg os=-unicos 1137659607e0Smrg ;; 1138659607e0Smrg symmetry) 1139659607e0Smrg basic_machine=i386-sequent 1140659607e0Smrg os=-dynix 1141659607e0Smrg ;; 1142659607e0Smrg t3e) 1143659607e0Smrg basic_machine=alphaev5-cray 1144659607e0Smrg os=-unicos 1145659607e0Smrg ;; 1146659607e0Smrg t90) 1147659607e0Smrg basic_machine=t90-cray 1148659607e0Smrg os=-unicos 1149659607e0Smrg ;; 1150fc27e79cSmrg tile*) 1151a73597f9Smrg basic_machine=$basic_machine-unknown 1152fc27e79cSmrg os=-linux-gnu 1153fc27e79cSmrg ;; 1154659607e0Smrg tx39) 1155659607e0Smrg basic_machine=mipstx39-unknown 1156659607e0Smrg ;; 1157659607e0Smrg tx39el) 1158659607e0Smrg basic_machine=mipstx39el-unknown 1159659607e0Smrg ;; 1160659607e0Smrg toad1) 1161659607e0Smrg basic_machine=pdp10-xkl 1162659607e0Smrg os=-tops20 1163659607e0Smrg ;; 1164659607e0Smrg tower | tower-32) 1165659607e0Smrg basic_machine=m68k-ncr 1166659607e0Smrg ;; 1167659607e0Smrg tpf) 1168659607e0Smrg basic_machine=s390x-ibm 1169659607e0Smrg os=-tpf 1170659607e0Smrg ;; 1171659607e0Smrg udi29k) 1172659607e0Smrg basic_machine=a29k-amd 1173659607e0Smrg os=-udi 1174659607e0Smrg ;; 1175659607e0Smrg ultra3) 1176659607e0Smrg basic_machine=a29k-nyu 1177659607e0Smrg os=-sym1 1178659607e0Smrg ;; 1179659607e0Smrg v810 | necv810) 1180659607e0Smrg basic_machine=v810-nec 1181659607e0Smrg os=-none 1182659607e0Smrg ;; 1183659607e0Smrg vaxv) 1184659607e0Smrg basic_machine=vax-dec 1185659607e0Smrg os=-sysv 1186659607e0Smrg ;; 1187659607e0Smrg vms) 1188659607e0Smrg basic_machine=vax-dec 1189659607e0Smrg os=-vms 1190659607e0Smrg ;; 1191659607e0Smrg vpp*|vx|vx-*) 1192659607e0Smrg basic_machine=f301-fujitsu 1193659607e0Smrg ;; 1194659607e0Smrg vxworks960) 1195659607e0Smrg basic_machine=i960-wrs 1196659607e0Smrg os=-vxworks 1197659607e0Smrg ;; 1198659607e0Smrg vxworks68) 1199659607e0Smrg basic_machine=m68k-wrs 1200659607e0Smrg os=-vxworks 1201659607e0Smrg ;; 1202659607e0Smrg vxworks29k) 1203659607e0Smrg basic_machine=a29k-wrs 1204659607e0Smrg os=-vxworks 1205659607e0Smrg ;; 1206659607e0Smrg w65*) 1207659607e0Smrg basic_machine=w65-wdc 1208659607e0Smrg os=-none 1209659607e0Smrg ;; 1210659607e0Smrg w89k-*) 1211659607e0Smrg basic_machine=hppa1.1-winbond 1212659607e0Smrg os=-proelf 1213659607e0Smrg ;; 1214659607e0Smrg xbox) 1215659607e0Smrg basic_machine=i686-pc 1216659607e0Smrg os=-mingw32 1217659607e0Smrg ;; 1218659607e0Smrg xps | xps100) 1219659607e0Smrg basic_machine=xps100-honeywell 1220659607e0Smrg ;; 1221a73597f9Smrg xscale-* | xscalee[bl]-*) 1222a73597f9Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1223a73597f9Smrg ;; 1224659607e0Smrg ymp) 1225659607e0Smrg basic_machine=ymp-cray 1226659607e0Smrg os=-unicos 1227659607e0Smrg ;; 1228659607e0Smrg z8k-*-coff) 1229659607e0Smrg basic_machine=z8k-unknown 1230659607e0Smrg os=-sim 1231659607e0Smrg ;; 1232b73be646Smrg z80-*-coff) 1233b73be646Smrg basic_machine=z80-unknown 1234b73be646Smrg os=-sim 1235b73be646Smrg ;; 1236659607e0Smrg none) 1237659607e0Smrg basic_machine=none-none 1238659607e0Smrg os=-none 1239659607e0Smrg ;; 1240659607e0Smrg 1241659607e0Smrg# Here we handle the default manufacturer of certain CPU types. It is in 1242659607e0Smrg# some cases the only manufacturer, in others, it is the most popular. 1243659607e0Smrg w89k) 1244659607e0Smrg basic_machine=hppa1.1-winbond 1245659607e0Smrg ;; 1246659607e0Smrg op50n) 1247659607e0Smrg basic_machine=hppa1.1-oki 1248659607e0Smrg ;; 1249659607e0Smrg op60c) 1250659607e0Smrg basic_machine=hppa1.1-oki 1251659607e0Smrg ;; 1252659607e0Smrg romp) 1253659607e0Smrg basic_machine=romp-ibm 1254659607e0Smrg ;; 1255659607e0Smrg mmix) 1256659607e0Smrg basic_machine=mmix-knuth 1257659607e0Smrg ;; 1258659607e0Smrg rs6000) 1259659607e0Smrg basic_machine=rs6000-ibm 1260659607e0Smrg ;; 1261659607e0Smrg vax) 1262659607e0Smrg basic_machine=vax-dec 1263659607e0Smrg ;; 1264659607e0Smrg pdp10) 1265659607e0Smrg # there are many clones, so DEC is not a safe bet 1266659607e0Smrg basic_machine=pdp10-unknown 1267659607e0Smrg ;; 1268659607e0Smrg pdp11) 1269659607e0Smrg basic_machine=pdp11-dec 1270659607e0Smrg ;; 1271659607e0Smrg we32k) 1272659607e0Smrg basic_machine=we32k-att 1273659607e0Smrg ;; 1274b73be646Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1275659607e0Smrg basic_machine=sh-unknown 1276659607e0Smrg ;; 1277fc27e79cSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1278659607e0Smrg basic_machine=sparc-sun 1279659607e0Smrg ;; 1280659607e0Smrg cydra) 1281659607e0Smrg basic_machine=cydra-cydrome 1282659607e0Smrg ;; 1283659607e0Smrg orion) 1284659607e0Smrg basic_machine=orion-highlevel 1285659607e0Smrg ;; 1286659607e0Smrg orion105) 1287659607e0Smrg basic_machine=clipper-highlevel 1288659607e0Smrg ;; 1289659607e0Smrg mac | mpw | mac-mpw) 1290659607e0Smrg basic_machine=m68k-apple 1291659607e0Smrg ;; 1292659607e0Smrg pmac | pmac-mpw) 1293659607e0Smrg basic_machine=powerpc-apple 1294659607e0Smrg ;; 1295659607e0Smrg *-unknown) 1296659607e0Smrg # Make sure to match an already-canonicalized machine name. 1297659607e0Smrg ;; 1298659607e0Smrg *) 1299659607e0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1300659607e0Smrg exit 1 1301659607e0Smrg ;; 1302659607e0Smrgesac 1303659607e0Smrg 1304659607e0Smrg# Here we canonicalize certain aliases for manufacturers. 1305659607e0Smrgcase $basic_machine in 1306659607e0Smrg *-digital*) 1307659607e0Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1308659607e0Smrg ;; 1309659607e0Smrg *-commodore*) 1310659607e0Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1311659607e0Smrg ;; 1312659607e0Smrg *) 1313659607e0Smrg ;; 1314659607e0Smrgesac 1315659607e0Smrg 1316659607e0Smrg# Decode manufacturer-specific aliases for certain operating systems. 1317659607e0Smrg 1318659607e0Smrgif [ x"$os" != x"" ] 1319659607e0Smrgthen 1320659607e0Smrgcase $os in 1321a73597f9Smrg # First match some system type aliases 1322a73597f9Smrg # that might get confused with valid system types. 1323659607e0Smrg # -solaris* is a basic system type, with this one exception. 1324a73597f9Smrg -auroraux) 1325a73597f9Smrg os=-auroraux 1326b73be646Smrg ;; 1327659607e0Smrg -solaris1 | -solaris1.*) 1328659607e0Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1329659607e0Smrg ;; 1330659607e0Smrg -solaris) 1331659607e0Smrg os=-solaris2 1332659607e0Smrg ;; 1333659607e0Smrg -svr4*) 1334659607e0Smrg os=-sysv4 1335659607e0Smrg ;; 1336659607e0Smrg -unixware*) 1337659607e0Smrg os=-sysv4.2uw 1338659607e0Smrg ;; 1339659607e0Smrg -gnu/linux*) 1340659607e0Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1341659607e0Smrg ;; 1342659607e0Smrg # First accept the basic system types. 1343659607e0Smrg # The portable systems comes first. 1344659607e0Smrg # Each alternative MUST END IN A *, to match a version number. 1345659607e0Smrg # -sysv* is not here because it comes later, after sysvr4. 1346659607e0Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1347b73be646Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1348b73be646Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1349e4da38afSmrg | -sym* | -kopensolaris* \ 1350659607e0Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1351b73be646Smrg | -aos* | -aros* \ 1352659607e0Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1353659607e0Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1354fc27e79cSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1355e4da38afSmrg | -openbsd* | -solidbsd* \ 1356659607e0Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1357659607e0Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1358659607e0Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1359659607e0Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1360b73be646Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1361a73597f9Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1362e4da38afSmrg | -mingw32* | -linux-gnu* | -linux-android* \ 1363e4da38afSmrg | -linux-newlib* | -linux-uclibc* \ 1364659607e0Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1365659607e0Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1366659607e0Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1367659607e0Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1368659607e0Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1369659607e0Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1370659607e0Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1371b73be646Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1372659607e0Smrg # Remember, each alternative MUST END IN *, to match a version number. 1373659607e0Smrg ;; 1374659607e0Smrg -qnx*) 1375659607e0Smrg case $basic_machine in 1376659607e0Smrg x86-* | i*86-*) 1377659607e0Smrg ;; 1378659607e0Smrg *) 1379659607e0Smrg os=-nto$os 1380659607e0Smrg ;; 1381659607e0Smrg esac 1382659607e0Smrg ;; 1383659607e0Smrg -nto-qnx*) 1384659607e0Smrg ;; 1385659607e0Smrg -nto*) 1386659607e0Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1387659607e0Smrg ;; 1388659607e0Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1389659607e0Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1390659607e0Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1391659607e0Smrg ;; 1392659607e0Smrg -mac*) 1393659607e0Smrg os=`echo $os | sed -e 's|mac|macos|'` 1394659607e0Smrg ;; 1395659607e0Smrg -linux-dietlibc) 1396659607e0Smrg os=-linux-dietlibc 1397659607e0Smrg ;; 1398659607e0Smrg -linux*) 1399659607e0Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1400659607e0Smrg ;; 1401659607e0Smrg -sunos5*) 1402659607e0Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1403659607e0Smrg ;; 1404659607e0Smrg -sunos6*) 1405659607e0Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1406659607e0Smrg ;; 1407659607e0Smrg -opened*) 1408659607e0Smrg os=-openedition 1409659607e0Smrg ;; 1410a73597f9Smrg -os400*) 1411659607e0Smrg os=-os400 1412659607e0Smrg ;; 1413659607e0Smrg -wince*) 1414659607e0Smrg os=-wince 1415659607e0Smrg ;; 1416659607e0Smrg -osfrose*) 1417659607e0Smrg os=-osfrose 1418659607e0Smrg ;; 1419659607e0Smrg -osf*) 1420659607e0Smrg os=-osf 1421659607e0Smrg ;; 1422659607e0Smrg -utek*) 1423659607e0Smrg os=-bsd 1424659607e0Smrg ;; 1425659607e0Smrg -dynix*) 1426659607e0Smrg os=-bsd 1427659607e0Smrg ;; 1428659607e0Smrg -acis*) 1429659607e0Smrg os=-aos 1430659607e0Smrg ;; 1431659607e0Smrg -atheos*) 1432659607e0Smrg os=-atheos 1433659607e0Smrg ;; 1434659607e0Smrg -syllable*) 1435659607e0Smrg os=-syllable 1436659607e0Smrg ;; 1437659607e0Smrg -386bsd) 1438659607e0Smrg os=-bsd 1439659607e0Smrg ;; 1440659607e0Smrg -ctix* | -uts*) 1441659607e0Smrg os=-sysv 1442659607e0Smrg ;; 1443659607e0Smrg -nova*) 1444659607e0Smrg os=-rtmk-nova 1445659607e0Smrg ;; 1446659607e0Smrg -ns2 ) 1447659607e0Smrg os=-nextstep2 1448659607e0Smrg ;; 1449659607e0Smrg -nsk*) 1450659607e0Smrg os=-nsk 1451659607e0Smrg ;; 1452659607e0Smrg # Preserve the version number of sinix5. 1453659607e0Smrg -sinix5.*) 1454659607e0Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 1455659607e0Smrg ;; 1456659607e0Smrg -sinix*) 1457659607e0Smrg os=-sysv4 1458659607e0Smrg ;; 1459a73597f9Smrg -tpf*) 1460659607e0Smrg os=-tpf 1461659607e0Smrg ;; 1462659607e0Smrg -triton*) 1463659607e0Smrg os=-sysv3 1464659607e0Smrg ;; 1465659607e0Smrg -oss*) 1466659607e0Smrg os=-sysv3 1467659607e0Smrg ;; 1468659607e0Smrg -svr4) 1469659607e0Smrg os=-sysv4 1470659607e0Smrg ;; 1471659607e0Smrg -svr3) 1472659607e0Smrg os=-sysv3 1473659607e0Smrg ;; 1474659607e0Smrg -sysvr4) 1475659607e0Smrg os=-sysv4 1476659607e0Smrg ;; 1477659607e0Smrg # This must come after -sysvr4. 1478659607e0Smrg -sysv*) 1479659607e0Smrg ;; 1480659607e0Smrg -ose*) 1481659607e0Smrg os=-ose 1482659607e0Smrg ;; 1483659607e0Smrg -es1800*) 1484659607e0Smrg os=-ose 1485659607e0Smrg ;; 1486659607e0Smrg -xenix) 1487659607e0Smrg os=-xenix 1488659607e0Smrg ;; 1489659607e0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1490659607e0Smrg os=-mint 1491659607e0Smrg ;; 1492659607e0Smrg -aros*) 1493659607e0Smrg os=-aros 1494659607e0Smrg ;; 1495e4da38afSmrg -kaos*) 1496e4da38afSmrg os=-kaos 1497e4da38afSmrg ;; 1498659607e0Smrg -zvmoe) 1499659607e0Smrg os=-zvmoe 1500659607e0Smrg ;; 1501b73be646Smrg -dicos*) 1502b73be646Smrg os=-dicos 1503b73be646Smrg ;; 1504a73597f9Smrg -nacl*) 1505a73597f9Smrg ;; 1506659607e0Smrg -none) 1507659607e0Smrg ;; 1508659607e0Smrg *) 1509659607e0Smrg # Get rid of the `-' at the beginning of $os. 1510659607e0Smrg os=`echo $os | sed 's/[^-]*-//'` 1511659607e0Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1512659607e0Smrg exit 1 1513659607e0Smrg ;; 1514659607e0Smrgesac 1515659607e0Smrgelse 1516659607e0Smrg 1517659607e0Smrg# Here we handle the default operating systems that come with various machines. 1518659607e0Smrg# The value should be what the vendor currently ships out the door with their 1519659607e0Smrg# machine or put another way, the most popular os provided with the machine. 1520659607e0Smrg 1521659607e0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1522659607e0Smrg# "-sun"), then you have to tell the case statement up towards the top 1523659607e0Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1524659607e0Smrg# will signal an error saying that MANUFACTURER isn't an operating 1525659607e0Smrg# system, and we'll never get to this point. 1526659607e0Smrg 1527659607e0Smrgcase $basic_machine in 1528a73597f9Smrg score-*) 1529fc27e79cSmrg os=-elf 1530fc27e79cSmrg ;; 1531a73597f9Smrg spu-*) 1532fc27e79cSmrg os=-elf 1533fc27e79cSmrg ;; 1534659607e0Smrg *-acorn) 1535659607e0Smrg os=-riscix1.2 1536659607e0Smrg ;; 1537659607e0Smrg arm*-rebel) 1538659607e0Smrg os=-linux 1539659607e0Smrg ;; 1540659607e0Smrg arm*-semi) 1541659607e0Smrg os=-aout 1542659607e0Smrg ;; 1543a73597f9Smrg c4x-* | tic4x-*) 1544a73597f9Smrg os=-coff 1545a73597f9Smrg ;; 1546a73597f9Smrg hexagon-*) 1547a73597f9Smrg os=-elf 1548fc27e79cSmrg ;; 1549bd3a1963Smrg tic54x-*) 1550bd3a1963Smrg os=-coff 1551bd3a1963Smrg ;; 1552bd3a1963Smrg tic55x-*) 1553bd3a1963Smrg os=-coff 1554bd3a1963Smrg ;; 1555bd3a1963Smrg tic6x-*) 1556bd3a1963Smrg os=-coff 1557bd3a1963Smrg ;; 1558659607e0Smrg # This must come before the *-dec entry. 1559659607e0Smrg pdp10-*) 1560659607e0Smrg os=-tops20 1561659607e0Smrg ;; 1562659607e0Smrg pdp11-*) 1563659607e0Smrg os=-none 1564659607e0Smrg ;; 1565659607e0Smrg *-dec | vax-*) 1566659607e0Smrg os=-ultrix4.2 1567659607e0Smrg ;; 1568659607e0Smrg m68*-apollo) 1569659607e0Smrg os=-domain 1570659607e0Smrg ;; 1571659607e0Smrg i386-sun) 1572659607e0Smrg os=-sunos4.0.2 1573659607e0Smrg ;; 1574659607e0Smrg m68000-sun) 1575659607e0Smrg os=-sunos3 1576659607e0Smrg ;; 1577659607e0Smrg m68*-cisco) 1578659607e0Smrg os=-aout 1579659607e0Smrg ;; 1580a73597f9Smrg mep-*) 1581fc27e79cSmrg os=-elf 1582fc27e79cSmrg ;; 1583659607e0Smrg mips*-cisco) 1584659607e0Smrg os=-elf 1585659607e0Smrg ;; 1586659607e0Smrg mips*-*) 1587659607e0Smrg os=-elf 1588659607e0Smrg ;; 1589659607e0Smrg or32-*) 1590659607e0Smrg os=-coff 1591659607e0Smrg ;; 1592659607e0Smrg *-tti) # must be before sparc entry or we get the wrong os. 1593659607e0Smrg os=-sysv3 1594659607e0Smrg ;; 1595659607e0Smrg sparc-* | *-sun) 1596659607e0Smrg os=-sunos4.1.1 1597659607e0Smrg ;; 1598659607e0Smrg *-be) 1599659607e0Smrg os=-beos 1600659607e0Smrg ;; 1601659607e0Smrg *-haiku) 1602659607e0Smrg os=-haiku 1603659607e0Smrg ;; 1604659607e0Smrg *-ibm) 1605659607e0Smrg os=-aix 1606659607e0Smrg ;; 1607a73597f9Smrg *-knuth) 1608659607e0Smrg os=-mmixware 1609659607e0Smrg ;; 1610659607e0Smrg *-wec) 1611659607e0Smrg os=-proelf 1612659607e0Smrg ;; 1613659607e0Smrg *-winbond) 1614659607e0Smrg os=-proelf 1615659607e0Smrg ;; 1616659607e0Smrg *-oki) 1617659607e0Smrg os=-proelf 1618659607e0Smrg ;; 1619659607e0Smrg *-hp) 1620659607e0Smrg os=-hpux 1621659607e0Smrg ;; 1622659607e0Smrg *-hitachi) 1623659607e0Smrg os=-hiux 1624659607e0Smrg ;; 1625659607e0Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1626659607e0Smrg os=-sysv 1627659607e0Smrg ;; 1628659607e0Smrg *-cbm) 1629659607e0Smrg os=-amigaos 1630659607e0Smrg ;; 1631659607e0Smrg *-dg) 1632659607e0Smrg os=-dgux 1633659607e0Smrg ;; 1634659607e0Smrg *-dolphin) 1635659607e0Smrg os=-sysv3 1636659607e0Smrg ;; 1637659607e0Smrg m68k-ccur) 1638659607e0Smrg os=-rtu 1639659607e0Smrg ;; 1640659607e0Smrg m88k-omron*) 1641659607e0Smrg os=-luna 1642659607e0Smrg ;; 1643659607e0Smrg *-next ) 1644659607e0Smrg os=-nextstep 1645659607e0Smrg ;; 1646659607e0Smrg *-sequent) 1647659607e0Smrg os=-ptx 1648659607e0Smrg ;; 1649659607e0Smrg *-crds) 1650659607e0Smrg os=-unos 1651659607e0Smrg ;; 1652659607e0Smrg *-ns) 1653659607e0Smrg os=-genix 1654659607e0Smrg ;; 1655659607e0Smrg i370-*) 1656659607e0Smrg os=-mvs 1657659607e0Smrg ;; 1658659607e0Smrg *-next) 1659659607e0Smrg os=-nextstep3 1660659607e0Smrg ;; 1661659607e0Smrg *-gould) 1662659607e0Smrg os=-sysv 1663659607e0Smrg ;; 1664659607e0Smrg *-highlevel) 1665659607e0Smrg os=-bsd 1666659607e0Smrg ;; 1667659607e0Smrg *-encore) 1668659607e0Smrg os=-bsd 1669659607e0Smrg ;; 1670659607e0Smrg *-sgi) 1671659607e0Smrg os=-irix 1672659607e0Smrg ;; 1673659607e0Smrg *-siemens) 1674659607e0Smrg os=-sysv4 1675659607e0Smrg ;; 1676659607e0Smrg *-masscomp) 1677659607e0Smrg os=-rtu 1678659607e0Smrg ;; 1679659607e0Smrg f30[01]-fujitsu | f700-fujitsu) 1680659607e0Smrg os=-uxpv 1681659607e0Smrg ;; 1682659607e0Smrg *-rom68k) 1683659607e0Smrg os=-coff 1684659607e0Smrg ;; 1685659607e0Smrg *-*bug) 1686659607e0Smrg os=-coff 1687659607e0Smrg ;; 1688659607e0Smrg *-apple) 1689659607e0Smrg os=-macos 1690659607e0Smrg ;; 1691659607e0Smrg *-atari*) 1692659607e0Smrg os=-mint 1693659607e0Smrg ;; 1694659607e0Smrg *) 1695659607e0Smrg os=-none 1696659607e0Smrg ;; 1697659607e0Smrgesac 1698659607e0Smrgfi 1699659607e0Smrg 1700659607e0Smrg# Here we handle the case where we know the os, and the CPU type, but not the 1701659607e0Smrg# manufacturer. We pick the logical manufacturer. 1702659607e0Smrgvendor=unknown 1703659607e0Smrgcase $basic_machine in 1704659607e0Smrg *-unknown) 1705659607e0Smrg case $os in 1706659607e0Smrg -riscix*) 1707659607e0Smrg vendor=acorn 1708659607e0Smrg ;; 1709659607e0Smrg -sunos*) 1710659607e0Smrg vendor=sun 1711659607e0Smrg ;; 1712b73be646Smrg -cnk*|-aix*) 1713659607e0Smrg vendor=ibm 1714659607e0Smrg ;; 1715659607e0Smrg -beos*) 1716659607e0Smrg vendor=be 1717659607e0Smrg ;; 1718659607e0Smrg -hpux*) 1719659607e0Smrg vendor=hp 1720659607e0Smrg ;; 1721659607e0Smrg -mpeix*) 1722659607e0Smrg vendor=hp 1723659607e0Smrg ;; 1724659607e0Smrg -hiux*) 1725659607e0Smrg vendor=hitachi 1726659607e0Smrg ;; 1727659607e0Smrg -unos*) 1728659607e0Smrg vendor=crds 1729659607e0Smrg ;; 1730659607e0Smrg -dgux*) 1731659607e0Smrg vendor=dg 1732659607e0Smrg ;; 1733659607e0Smrg -luna*) 1734659607e0Smrg vendor=omron 1735659607e0Smrg ;; 1736659607e0Smrg -genix*) 1737659607e0Smrg vendor=ns 1738659607e0Smrg ;; 1739659607e0Smrg -mvs* | -opened*) 1740659607e0Smrg vendor=ibm 1741659607e0Smrg ;; 1742659607e0Smrg -os400*) 1743659607e0Smrg vendor=ibm 1744659607e0Smrg ;; 1745659607e0Smrg -ptx*) 1746659607e0Smrg vendor=sequent 1747659607e0Smrg ;; 1748659607e0Smrg -tpf*) 1749659607e0Smrg vendor=ibm 1750659607e0Smrg ;; 1751659607e0Smrg -vxsim* | -vxworks* | -windiss*) 1752659607e0Smrg vendor=wrs 1753659607e0Smrg ;; 1754659607e0Smrg -aux*) 1755659607e0Smrg vendor=apple 1756659607e0Smrg ;; 1757659607e0Smrg -hms*) 1758659607e0Smrg vendor=hitachi 1759659607e0Smrg ;; 1760659607e0Smrg -mpw* | -macos*) 1761659607e0Smrg vendor=apple 1762659607e0Smrg ;; 1763659607e0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1764659607e0Smrg vendor=atari 1765659607e0Smrg ;; 1766659607e0Smrg -vos*) 1767659607e0Smrg vendor=stratus 1768659607e0Smrg ;; 1769659607e0Smrg esac 1770659607e0Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1771659607e0Smrg ;; 1772659607e0Smrgesac 1773659607e0Smrg 1774659607e0Smrgecho $basic_machine$os 1775659607e0Smrgexit 1776659607e0Smrg 1777659607e0Smrg# Local variables: 1778659607e0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1779659607e0Smrg# time-stamp-start: "timestamp='" 1780659607e0Smrg# time-stamp-format: "%:y-%02m-%02d" 1781659607e0Smrg# time-stamp-end: "'" 1782659607e0Smrg# End: 1783