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