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