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