config.sub revision d7accfef
197e8a2e8Smrg#! /bin/sh 297e8a2e8Smrg# Configuration validation subroutine script. 397e8a2e8Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4d7accfefSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5d7accfefSmrg# Free Software Foundation, Inc. 697e8a2e8Smrg 7d7accfefSmrgtimestamp='2009-04-17' 897e8a2e8Smrg 997e8a2e8Smrg# This file is (in principle) common to ALL GNU software. 1097e8a2e8Smrg# The presence of a machine in this file suggests that SOME GNU software 1197e8a2e8Smrg# can handle that machine. It does not imply ALL GNU software can. 1297e8a2e8Smrg# 1397e8a2e8Smrg# This file is free software; you can redistribute it and/or modify 1497e8a2e8Smrg# it under the terms of the GNU General Public License as published by 1597e8a2e8Smrg# the Free Software Foundation; either version 2 of the License, or 1697e8a2e8Smrg# (at your option) any later version. 1797e8a2e8Smrg# 1897e8a2e8Smrg# This program is distributed in the hope that it will be useful, 1997e8a2e8Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2097e8a2e8Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2197e8a2e8Smrg# GNU General Public License for more details. 2297e8a2e8Smrg# 2397e8a2e8Smrg# You should have received a copy of the GNU General Public License 2497e8a2e8Smrg# along with this program; if not, write to the Free Software 25d7accfefSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26d7accfefSmrg# 02110-1301, USA. 27d7accfefSmrg# 2897e8a2e8Smrg# As a special exception to the GNU General Public License, if you 2997e8a2e8Smrg# distribute this file as part of a program that contains a 3097e8a2e8Smrg# configuration script generated by Autoconf, you may include it under 3197e8a2e8Smrg# the same distribution terms that you use for the rest of that program. 3297e8a2e8Smrg 33d7accfefSmrg 3497e8a2e8Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 3597e8a2e8Smrg# diff and a properly formatted ChangeLog entry. 3697e8a2e8Smrg# 3797e8a2e8Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3897e8a2e8Smrg# Supply the specified configuration type as an argument. 3997e8a2e8Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 4097e8a2e8Smrg# Otherwise, we print the canonical config type on stdout and succeed. 4197e8a2e8Smrg 4297e8a2e8Smrg# This file is supposed to be the same for all GNU packages 4397e8a2e8Smrg# and recognize all the CPU types, system types and aliases 4497e8a2e8Smrg# that are meaningful with *any* GNU software. 4597e8a2e8Smrg# Each package is responsible for reporting which valid configurations 4697e8a2e8Smrg# it does not support. The user should be able to distinguish 4797e8a2e8Smrg# a failure to support a valid configuration from a meaningless 4897e8a2e8Smrg# configuration. 4997e8a2e8Smrg 5097e8a2e8Smrg# The goal of this file is to map all the various variations of a given 5197e8a2e8Smrg# machine specification into a single specification in the form: 5297e8a2e8Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5397e8a2e8Smrg# or in some cases, the newer four-part form: 5497e8a2e8Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5597e8a2e8Smrg# It is wrong to echo any other type of specification. 5697e8a2e8Smrg 5797e8a2e8Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5897e8a2e8Smrg 5997e8a2e8Smrgusage="\ 6097e8a2e8SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6197e8a2e8Smrg $0 [OPTION] ALIAS 6297e8a2e8Smrg 6397e8a2e8SmrgCanonicalize a configuration name. 6497e8a2e8Smrg 6597e8a2e8SmrgOperation modes: 6697e8a2e8Smrg -h, --help print this help, then exit 6797e8a2e8Smrg -t, --time-stamp print date of last modification, then exit 6897e8a2e8Smrg -v, --version print version number, then exit 6997e8a2e8Smrg 7097e8a2e8SmrgReport bugs and patches to <config-patches@gnu.org>." 7197e8a2e8Smrg 7297e8a2e8Smrgversion="\ 7397e8a2e8SmrgGNU config.sub ($timestamp) 7497e8a2e8Smrg 75d7accfefSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 76d7accfefSmrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 7797e8a2e8Smrg 7897e8a2e8SmrgThis is free software; see the source for copying conditions. There is NO 7997e8a2e8Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8097e8a2e8Smrg 8197e8a2e8Smrghelp=" 8297e8a2e8SmrgTry \`$me --help' for more information." 8397e8a2e8Smrg 8497e8a2e8Smrg# Parse command line 8597e8a2e8Smrgwhile test $# -gt 0 ; do 8697e8a2e8Smrg case $1 in 8797e8a2e8Smrg --time-stamp | --time* | -t ) 88d7accfefSmrg echo "$timestamp" ; exit ;; 8997e8a2e8Smrg --version | -v ) 90d7accfefSmrg echo "$version" ; exit ;; 9197e8a2e8Smrg --help | --h* | -h ) 92d7accfefSmrg echo "$usage"; exit ;; 9397e8a2e8Smrg -- ) # Stop option processing 9497e8a2e8Smrg shift; break ;; 9597e8a2e8Smrg - ) # Use stdin as input. 9697e8a2e8Smrg break ;; 9797e8a2e8Smrg -* ) 9897e8a2e8Smrg echo "$me: invalid option $1$help" 9997e8a2e8Smrg exit 1 ;; 10097e8a2e8Smrg 10197e8a2e8Smrg *local*) 10297e8a2e8Smrg # First pass through any local machine types. 10397e8a2e8Smrg echo $1 104d7accfefSmrg exit ;; 10597e8a2e8Smrg 10697e8a2e8Smrg * ) 10797e8a2e8Smrg break ;; 10897e8a2e8Smrg esac 10997e8a2e8Smrgdone 11097e8a2e8Smrg 11197e8a2e8Smrgcase $# in 11297e8a2e8Smrg 0) echo "$me: missing argument$help" >&2 11397e8a2e8Smrg exit 1;; 11497e8a2e8Smrg 1) ;; 11597e8a2e8Smrg *) echo "$me: too many arguments$help" >&2 11697e8a2e8Smrg exit 1;; 11797e8a2e8Smrgesac 11897e8a2e8Smrg 11997e8a2e8Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12097e8a2e8Smrg# Here we must recognize all the valid KERNEL-OS combinations. 12197e8a2e8Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12297e8a2e8Smrgcase $maybe_os in 123d7accfefSmrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 124d7accfefSmrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 125d7accfefSmrg kopensolaris*-gnu* | \ 126d7accfefSmrg storm-chaos* | os2-emx* | rtmk-nova*) 12797e8a2e8Smrg os=-$maybe_os 12897e8a2e8Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12997e8a2e8Smrg ;; 13097e8a2e8Smrg *) 13197e8a2e8Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13297e8a2e8Smrg if [ $basic_machine != $1 ] 13397e8a2e8Smrg then os=`echo $1 | sed 's/.*-/-/'` 13497e8a2e8Smrg else os=; fi 13597e8a2e8Smrg ;; 13697e8a2e8Smrgesac 13797e8a2e8Smrg 13897e8a2e8Smrg### Let's recognize common machines as not being operating systems so 13997e8a2e8Smrg### that things like config.sub decstation-3100 work. We also 14097e8a2e8Smrg### recognize some manufacturers as not being operating systems, so we 14197e8a2e8Smrg### can provide default operating systems below. 14297e8a2e8Smrgcase $os in 14397e8a2e8Smrg -sun*os*) 14497e8a2e8Smrg # Prevent following clause from handling this invalid input. 14597e8a2e8Smrg ;; 14697e8a2e8Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14797e8a2e8Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14897e8a2e8Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14997e8a2e8Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15097e8a2e8Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15197e8a2e8Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 152d7accfefSmrg -apple | -axis | -knuth | -cray) 15397e8a2e8Smrg os= 15497e8a2e8Smrg basic_machine=$1 15597e8a2e8Smrg ;; 15697e8a2e8Smrg -sim | -cisco | -oki | -wec | -winbond) 15797e8a2e8Smrg os= 15897e8a2e8Smrg basic_machine=$1 15997e8a2e8Smrg ;; 16097e8a2e8Smrg -scout) 16197e8a2e8Smrg ;; 16297e8a2e8Smrg -wrs) 16397e8a2e8Smrg os=-vxworks 16497e8a2e8Smrg basic_machine=$1 16597e8a2e8Smrg ;; 16697e8a2e8Smrg -chorusos*) 16797e8a2e8Smrg os=-chorusos 16897e8a2e8Smrg basic_machine=$1 16997e8a2e8Smrg ;; 17097e8a2e8Smrg -chorusrdb) 17197e8a2e8Smrg os=-chorusrdb 17297e8a2e8Smrg basic_machine=$1 17397e8a2e8Smrg ;; 17497e8a2e8Smrg -hiux*) 17597e8a2e8Smrg os=-hiuxwe2 17697e8a2e8Smrg ;; 177d7accfefSmrg -sco6) 178d7accfefSmrg os=-sco5v6 179d7accfefSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 180d7accfefSmrg ;; 18197e8a2e8Smrg -sco5) 18297e8a2e8Smrg os=-sco3.2v5 18397e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18497e8a2e8Smrg ;; 18597e8a2e8Smrg -sco4) 18697e8a2e8Smrg os=-sco3.2v4 18797e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18897e8a2e8Smrg ;; 18997e8a2e8Smrg -sco3.2.[4-9]*) 19097e8a2e8Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19197e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19297e8a2e8Smrg ;; 19397e8a2e8Smrg -sco3.2v[4-9]*) 19497e8a2e8Smrg # Don't forget version if it is 3.2v4 or newer. 19597e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19697e8a2e8Smrg ;; 197d7accfefSmrg -sco5v6*) 198d7accfefSmrg # Don't forget version if it is 3.2v4 or newer. 199d7accfefSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 200d7accfefSmrg ;; 20197e8a2e8Smrg -sco*) 20297e8a2e8Smrg os=-sco3.2v2 20397e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20497e8a2e8Smrg ;; 20597e8a2e8Smrg -udk*) 20697e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20797e8a2e8Smrg ;; 20897e8a2e8Smrg -isc) 20997e8a2e8Smrg os=-isc2.2 21097e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21197e8a2e8Smrg ;; 21297e8a2e8Smrg -clix*) 21397e8a2e8Smrg basic_machine=clipper-intergraph 21497e8a2e8Smrg ;; 21597e8a2e8Smrg -isc*) 21697e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21797e8a2e8Smrg ;; 21897e8a2e8Smrg -lynx*) 21997e8a2e8Smrg os=-lynxos 22097e8a2e8Smrg ;; 22197e8a2e8Smrg -ptx*) 22297e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 22397e8a2e8Smrg ;; 22497e8a2e8Smrg -windowsnt*) 22597e8a2e8Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 22697e8a2e8Smrg ;; 22797e8a2e8Smrg -psos*) 22897e8a2e8Smrg os=-psos 22997e8a2e8Smrg ;; 23097e8a2e8Smrg -mint | -mint[0-9]*) 23197e8a2e8Smrg basic_machine=m68k-atari 23297e8a2e8Smrg os=-mint 23397e8a2e8Smrg ;; 23497e8a2e8Smrgesac 23597e8a2e8Smrg 23697e8a2e8Smrg# Decode aliases for certain CPU-COMPANY combinations. 23797e8a2e8Smrgcase $basic_machine in 23897e8a2e8Smrg # Recognize the basic CPU types without company name. 23997e8a2e8Smrg # Some are omitted here because they have special meanings below. 24097e8a2e8Smrg 1750a | 580 \ 24197e8a2e8Smrg | a29k \ 24297e8a2e8Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 24397e8a2e8Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 244d7accfefSmrg | am33_2.0 \ 245d7accfefSmrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 246d7accfefSmrg | bfin \ 24797e8a2e8Smrg | c4x | clipper \ 24897e8a2e8Smrg | d10v | d30v | dlx | dsp16xx \ 249d7accfefSmrg | fido | fr30 | frv \ 25097e8a2e8Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 25197e8a2e8Smrg | i370 | i860 | i960 | ia64 \ 252d7accfefSmrg | ip2k | iq2000 \ 253d7accfefSmrg | lm32 \ 254d7accfefSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 255d7accfefSmrg | maxq | mb | microblaze | mcore | mep | metag \ 25697e8a2e8Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 25797e8a2e8Smrg | mips16 \ 25897e8a2e8Smrg | mips64 | mips64el \ 259d7accfefSmrg | mips64octeon | mips64octeonel \ 26097e8a2e8Smrg | mips64orion | mips64orionel \ 261d7accfefSmrg | mips64r5900 | mips64r5900el \ 262d7accfefSmrg | mips64vr | mips64vrel \ 26397e8a2e8Smrg | mips64vr4100 | mips64vr4100el \ 26497e8a2e8Smrg | mips64vr4300 | mips64vr4300el \ 26597e8a2e8Smrg | mips64vr5000 | mips64vr5000el \ 266d7accfefSmrg | mips64vr5900 | mips64vr5900el \ 26797e8a2e8Smrg | mipsisa32 | mipsisa32el \ 26897e8a2e8Smrg | mipsisa32r2 | mipsisa32r2el \ 26997e8a2e8Smrg | mipsisa64 | mipsisa64el \ 270d7accfefSmrg | mipsisa64r2 | mipsisa64r2el \ 27197e8a2e8Smrg | mipsisa64sb1 | mipsisa64sb1el \ 27297e8a2e8Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 27397e8a2e8Smrg | mipstx39 | mipstx39el \ 27497e8a2e8Smrg | mn10200 | mn10300 \ 275d7accfefSmrg | moxie \ 276d7accfefSmrg | mt \ 27797e8a2e8Smrg | msp430 \ 278d7accfefSmrg | nios | nios2 \ 27997e8a2e8Smrg | ns16k | ns32k \ 280d7accfefSmrg | or32 \ 28197e8a2e8Smrg | pdp10 | pdp11 | pj | pjl \ 28297e8a2e8Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 28397e8a2e8Smrg | pyramid \ 284d7accfefSmrg | score \ 285d7accfefSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 28697e8a2e8Smrg | sh64 | sh64le \ 287d7accfefSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 288d7accfefSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 289d7accfefSmrg | spu | strongarm \ 29097e8a2e8Smrg | tahoe | thumb | tic4x | tic80 | tron \ 29197e8a2e8Smrg | v850 | v850e \ 29297e8a2e8Smrg | we32k \ 293d7accfefSmrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 294d7accfefSmrg | z8k | z80) 29597e8a2e8Smrg basic_machine=$basic_machine-unknown 29697e8a2e8Smrg ;; 29797e8a2e8Smrg m6811 | m68hc11 | m6812 | m68hc12) 29897e8a2e8Smrg # Motorola 68HC11/12. 29997e8a2e8Smrg basic_machine=$basic_machine-unknown 30097e8a2e8Smrg os=-none 30197e8a2e8Smrg ;; 30297e8a2e8Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 30397e8a2e8Smrg ;; 304d7accfefSmrg ms1) 305d7accfefSmrg basic_machine=mt-unknown 306d7accfefSmrg ;; 30797e8a2e8Smrg 30897e8a2e8Smrg # We use `pc' rather than `unknown' 30997e8a2e8Smrg # because (1) that's what they normally are, and 31097e8a2e8Smrg # (2) the word "unknown" tends to confuse beginning users. 31197e8a2e8Smrg i*86 | x86_64) 31297e8a2e8Smrg basic_machine=$basic_machine-pc 31397e8a2e8Smrg ;; 31497e8a2e8Smrg # Object if more than one company name word. 31597e8a2e8Smrg *-*-*) 31697e8a2e8Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 31797e8a2e8Smrg exit 1 31897e8a2e8Smrg ;; 31997e8a2e8Smrg # Recognize the basic CPU types with company name. 32097e8a2e8Smrg 580-* \ 32197e8a2e8Smrg | a29k-* \ 32297e8a2e8Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 32397e8a2e8Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 32497e8a2e8Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 32597e8a2e8Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 326d7accfefSmrg | avr-* | avr32-* \ 327d7accfefSmrg | bfin-* | bs2000-* \ 32897e8a2e8Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 329d7accfefSmrg | clipper-* | craynv-* | cydra-* \ 33097e8a2e8Smrg | d10v-* | d30v-* | dlx-* \ 33197e8a2e8Smrg | elxsi-* \ 332d7accfefSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 33397e8a2e8Smrg | h8300-* | h8500-* \ 33497e8a2e8Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 33597e8a2e8Smrg | i*86-* | i860-* | i960-* | ia64-* \ 336d7accfefSmrg | ip2k-* | iq2000-* \ 337d7accfefSmrg | lm32-* \ 338d7accfefSmrg | m32c-* | m32r-* | m32rle-* \ 33997e8a2e8Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 340d7accfefSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 34197e8a2e8Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 34297e8a2e8Smrg | mips16-* \ 34397e8a2e8Smrg | mips64-* | mips64el-* \ 344d7accfefSmrg | mips64octeon-* | mips64octeonel-* \ 34597e8a2e8Smrg | mips64orion-* | mips64orionel-* \ 346d7accfefSmrg | mips64r5900-* | mips64r5900el-* \ 347d7accfefSmrg | mips64vr-* | mips64vrel-* \ 34897e8a2e8Smrg | mips64vr4100-* | mips64vr4100el-* \ 34997e8a2e8Smrg | mips64vr4300-* | mips64vr4300el-* \ 35097e8a2e8Smrg | mips64vr5000-* | mips64vr5000el-* \ 351d7accfefSmrg | mips64vr5900-* | mips64vr5900el-* \ 35297e8a2e8Smrg | mipsisa32-* | mipsisa32el-* \ 35397e8a2e8Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 35497e8a2e8Smrg | mipsisa64-* | mipsisa64el-* \ 355d7accfefSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 35697e8a2e8Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 35797e8a2e8Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 35897e8a2e8Smrg | mipstx39-* | mipstx39el-* \ 359d7accfefSmrg | mmix-* \ 360d7accfefSmrg | mt-* \ 36197e8a2e8Smrg | msp430-* \ 362d7accfefSmrg | nios-* | nios2-* \ 363d7accfefSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 36497e8a2e8Smrg | orion-* \ 36597e8a2e8Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 36697e8a2e8Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 36797e8a2e8Smrg | pyramid-* \ 36897e8a2e8Smrg | romp-* | rs6000-* \ 369d7accfefSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 37097e8a2e8Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 371d7accfefSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 372d7accfefSmrg | sparclite-* \ 373d7accfefSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 37497e8a2e8Smrg | tahoe-* | thumb-* \ 375d7accfefSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ 37697e8a2e8Smrg | tron-* \ 37797e8a2e8Smrg | v850-* | v850e-* | vax-* \ 37897e8a2e8Smrg | we32k-* \ 379d7accfefSmrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 380d7accfefSmrg | xstormy16-* | xtensa*-* \ 38197e8a2e8Smrg | ymp-* \ 382d7accfefSmrg | z8k-* | z80-*) 383d7accfefSmrg ;; 384d7accfefSmrg # Recognize the basic CPU types without company name, with glob match. 385d7accfefSmrg xtensa*) 386d7accfefSmrg basic_machine=$basic_machine-unknown 38797e8a2e8Smrg ;; 38897e8a2e8Smrg # Recognize the various machine names and aliases which stand 38997e8a2e8Smrg # for a CPU type and a company and sometimes even an OS. 39097e8a2e8Smrg 386bsd) 39197e8a2e8Smrg basic_machine=i386-unknown 39297e8a2e8Smrg os=-bsd 39397e8a2e8Smrg ;; 39497e8a2e8Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 39597e8a2e8Smrg basic_machine=m68000-att 39697e8a2e8Smrg ;; 39797e8a2e8Smrg 3b*) 39897e8a2e8Smrg basic_machine=we32k-att 39997e8a2e8Smrg ;; 40097e8a2e8Smrg a29khif) 40197e8a2e8Smrg basic_machine=a29k-amd 40297e8a2e8Smrg os=-udi 40397e8a2e8Smrg ;; 404d7accfefSmrg abacus) 405d7accfefSmrg basic_machine=abacus-unknown 406d7accfefSmrg ;; 40797e8a2e8Smrg adobe68k) 40897e8a2e8Smrg basic_machine=m68010-adobe 40997e8a2e8Smrg os=-scout 41097e8a2e8Smrg ;; 41197e8a2e8Smrg alliant | fx80) 41297e8a2e8Smrg basic_machine=fx80-alliant 41397e8a2e8Smrg ;; 41497e8a2e8Smrg altos | altos3068) 41597e8a2e8Smrg basic_machine=m68k-altos 41697e8a2e8Smrg ;; 41797e8a2e8Smrg am29k) 41897e8a2e8Smrg basic_machine=a29k-none 41997e8a2e8Smrg os=-bsd 42097e8a2e8Smrg ;; 42197e8a2e8Smrg amd64) 42297e8a2e8Smrg basic_machine=x86_64-pc 42397e8a2e8Smrg ;; 424d7accfefSmrg amd64-*) 425d7accfefSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 426d7accfefSmrg ;; 42797e8a2e8Smrg amdahl) 42897e8a2e8Smrg basic_machine=580-amdahl 42997e8a2e8Smrg os=-sysv 43097e8a2e8Smrg ;; 43197e8a2e8Smrg amiga | amiga-*) 43297e8a2e8Smrg basic_machine=m68k-unknown 43397e8a2e8Smrg ;; 43497e8a2e8Smrg amigaos | amigados) 43597e8a2e8Smrg basic_machine=m68k-unknown 43697e8a2e8Smrg os=-amigaos 43797e8a2e8Smrg ;; 43897e8a2e8Smrg amigaunix | amix) 43997e8a2e8Smrg basic_machine=m68k-unknown 44097e8a2e8Smrg os=-sysv4 44197e8a2e8Smrg ;; 44297e8a2e8Smrg apollo68) 44397e8a2e8Smrg basic_machine=m68k-apollo 44497e8a2e8Smrg os=-sysv 44597e8a2e8Smrg ;; 44697e8a2e8Smrg apollo68bsd) 44797e8a2e8Smrg basic_machine=m68k-apollo 44897e8a2e8Smrg os=-bsd 44997e8a2e8Smrg ;; 450d7accfefSmrg aros) 451d7accfefSmrg basic_machine=i386-pc 452d7accfefSmrg os=-aros 453d7accfefSmrg ;; 45497e8a2e8Smrg aux) 45597e8a2e8Smrg basic_machine=m68k-apple 45697e8a2e8Smrg os=-aux 45797e8a2e8Smrg ;; 45897e8a2e8Smrg balance) 45997e8a2e8Smrg basic_machine=ns32k-sequent 46097e8a2e8Smrg os=-dynix 46197e8a2e8Smrg ;; 462d7accfefSmrg blackfin) 463d7accfefSmrg basic_machine=bfin-unknown 464d7accfefSmrg os=-linux 465d7accfefSmrg ;; 466d7accfefSmrg blackfin-*) 467d7accfefSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 468d7accfefSmrg os=-linux 469d7accfefSmrg ;; 47097e8a2e8Smrg c90) 47197e8a2e8Smrg basic_machine=c90-cray 47297e8a2e8Smrg os=-unicos 47397e8a2e8Smrg ;; 474d7accfefSmrg cegcc) 475d7accfefSmrg basic_machine=arm-unknown 476d7accfefSmrg os=-cegcc 477d7accfefSmrg ;; 47897e8a2e8Smrg convex-c1) 47997e8a2e8Smrg basic_machine=c1-convex 48097e8a2e8Smrg os=-bsd 48197e8a2e8Smrg ;; 48297e8a2e8Smrg convex-c2) 48397e8a2e8Smrg basic_machine=c2-convex 48497e8a2e8Smrg os=-bsd 48597e8a2e8Smrg ;; 48697e8a2e8Smrg convex-c32) 48797e8a2e8Smrg basic_machine=c32-convex 48897e8a2e8Smrg os=-bsd 48997e8a2e8Smrg ;; 49097e8a2e8Smrg convex-c34) 49197e8a2e8Smrg basic_machine=c34-convex 49297e8a2e8Smrg os=-bsd 49397e8a2e8Smrg ;; 49497e8a2e8Smrg convex-c38) 49597e8a2e8Smrg basic_machine=c38-convex 49697e8a2e8Smrg os=-bsd 49797e8a2e8Smrg ;; 49897e8a2e8Smrg cray | j90) 49997e8a2e8Smrg basic_machine=j90-cray 50097e8a2e8Smrg os=-unicos 50197e8a2e8Smrg ;; 502d7accfefSmrg craynv) 503d7accfefSmrg basic_machine=craynv-cray 504d7accfefSmrg os=-unicosmp 505d7accfefSmrg ;; 506d7accfefSmrg cr16) 507d7accfefSmrg basic_machine=cr16-unknown 508d7accfefSmrg os=-elf 509d7accfefSmrg ;; 51097e8a2e8Smrg crds | unos) 51197e8a2e8Smrg basic_machine=m68k-crds 51297e8a2e8Smrg ;; 513d7accfefSmrg crisv32 | crisv32-* | etraxfs*) 514d7accfefSmrg basic_machine=crisv32-axis 515d7accfefSmrg ;; 51697e8a2e8Smrg cris | cris-* | etrax*) 51797e8a2e8Smrg basic_machine=cris-axis 51897e8a2e8Smrg ;; 519d7accfefSmrg crx) 520d7accfefSmrg basic_machine=crx-unknown 521d7accfefSmrg os=-elf 522d7accfefSmrg ;; 52397e8a2e8Smrg da30 | da30-*) 52497e8a2e8Smrg basic_machine=m68k-da30 52597e8a2e8Smrg ;; 52697e8a2e8Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 52797e8a2e8Smrg basic_machine=mips-dec 52897e8a2e8Smrg ;; 52997e8a2e8Smrg decsystem10* | dec10*) 53097e8a2e8Smrg basic_machine=pdp10-dec 53197e8a2e8Smrg os=-tops10 53297e8a2e8Smrg ;; 53397e8a2e8Smrg decsystem20* | dec20*) 53497e8a2e8Smrg basic_machine=pdp10-dec 53597e8a2e8Smrg os=-tops20 53697e8a2e8Smrg ;; 53797e8a2e8Smrg delta | 3300 | motorola-3300 | motorola-delta \ 53897e8a2e8Smrg | 3300-motorola | delta-motorola) 53997e8a2e8Smrg basic_machine=m68k-motorola 54097e8a2e8Smrg ;; 54197e8a2e8Smrg delta88) 54297e8a2e8Smrg basic_machine=m88k-motorola 54397e8a2e8Smrg os=-sysv3 54497e8a2e8Smrg ;; 545d7accfefSmrg dicos) 546d7accfefSmrg basic_machine=i686-pc 547d7accfefSmrg os=-dicos 548d7accfefSmrg ;; 549d7accfefSmrg djgpp) 550d7accfefSmrg basic_machine=i586-pc 551d7accfefSmrg os=-msdosdjgpp 552d7accfefSmrg ;; 55397e8a2e8Smrg dpx20 | dpx20-*) 55497e8a2e8Smrg basic_machine=rs6000-bull 55597e8a2e8Smrg os=-bosx 55697e8a2e8Smrg ;; 55797e8a2e8Smrg dpx2* | dpx2*-bull) 55897e8a2e8Smrg basic_machine=m68k-bull 55997e8a2e8Smrg os=-sysv3 56097e8a2e8Smrg ;; 56197e8a2e8Smrg ebmon29k) 56297e8a2e8Smrg basic_machine=a29k-amd 56397e8a2e8Smrg os=-ebmon 56497e8a2e8Smrg ;; 56597e8a2e8Smrg elxsi) 56697e8a2e8Smrg basic_machine=elxsi-elxsi 56797e8a2e8Smrg os=-bsd 56897e8a2e8Smrg ;; 56997e8a2e8Smrg encore | umax | mmax) 57097e8a2e8Smrg basic_machine=ns32k-encore 57197e8a2e8Smrg ;; 57297e8a2e8Smrg es1800 | OSE68k | ose68k | ose | OSE) 57397e8a2e8Smrg basic_machine=m68k-ericsson 57497e8a2e8Smrg os=-ose 57597e8a2e8Smrg ;; 57697e8a2e8Smrg fx2800) 57797e8a2e8Smrg basic_machine=i860-alliant 57897e8a2e8Smrg ;; 57997e8a2e8Smrg genix) 58097e8a2e8Smrg basic_machine=ns32k-ns 58197e8a2e8Smrg ;; 58297e8a2e8Smrg gmicro) 58397e8a2e8Smrg basic_machine=tron-gmicro 58497e8a2e8Smrg os=-sysv 58597e8a2e8Smrg ;; 58697e8a2e8Smrg go32) 58797e8a2e8Smrg basic_machine=i386-pc 58897e8a2e8Smrg os=-go32 58997e8a2e8Smrg ;; 59097e8a2e8Smrg h3050r* | hiux*) 59197e8a2e8Smrg basic_machine=hppa1.1-hitachi 59297e8a2e8Smrg os=-hiuxwe2 59397e8a2e8Smrg ;; 59497e8a2e8Smrg h8300hms) 59597e8a2e8Smrg basic_machine=h8300-hitachi 59697e8a2e8Smrg os=-hms 59797e8a2e8Smrg ;; 59897e8a2e8Smrg h8300xray) 59997e8a2e8Smrg basic_machine=h8300-hitachi 60097e8a2e8Smrg os=-xray 60197e8a2e8Smrg ;; 60297e8a2e8Smrg h8500hms) 60397e8a2e8Smrg basic_machine=h8500-hitachi 60497e8a2e8Smrg os=-hms 60597e8a2e8Smrg ;; 60697e8a2e8Smrg harris) 60797e8a2e8Smrg basic_machine=m88k-harris 60897e8a2e8Smrg os=-sysv3 60997e8a2e8Smrg ;; 61097e8a2e8Smrg hp300-*) 61197e8a2e8Smrg basic_machine=m68k-hp 61297e8a2e8Smrg ;; 61397e8a2e8Smrg hp300bsd) 61497e8a2e8Smrg basic_machine=m68k-hp 61597e8a2e8Smrg os=-bsd 61697e8a2e8Smrg ;; 61797e8a2e8Smrg hp300hpux) 61897e8a2e8Smrg basic_machine=m68k-hp 61997e8a2e8Smrg os=-hpux 62097e8a2e8Smrg ;; 62197e8a2e8Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 62297e8a2e8Smrg basic_machine=hppa1.0-hp 62397e8a2e8Smrg ;; 62497e8a2e8Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 62597e8a2e8Smrg basic_machine=m68000-hp 62697e8a2e8Smrg ;; 62797e8a2e8Smrg hp9k3[2-9][0-9]) 62897e8a2e8Smrg basic_machine=m68k-hp 62997e8a2e8Smrg ;; 63097e8a2e8Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 63197e8a2e8Smrg basic_machine=hppa1.0-hp 63297e8a2e8Smrg ;; 63397e8a2e8Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 63497e8a2e8Smrg basic_machine=hppa1.1-hp 63597e8a2e8Smrg ;; 63697e8a2e8Smrg hp9k78[0-9] | hp78[0-9]) 63797e8a2e8Smrg # FIXME: really hppa2.0-hp 63897e8a2e8Smrg basic_machine=hppa1.1-hp 63997e8a2e8Smrg ;; 64097e8a2e8Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 64197e8a2e8Smrg # FIXME: really hppa2.0-hp 64297e8a2e8Smrg basic_machine=hppa1.1-hp 64397e8a2e8Smrg ;; 64497e8a2e8Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 64597e8a2e8Smrg basic_machine=hppa1.1-hp 64697e8a2e8Smrg ;; 64797e8a2e8Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 64897e8a2e8Smrg basic_machine=hppa1.0-hp 64997e8a2e8Smrg ;; 65097e8a2e8Smrg hppa-next) 65197e8a2e8Smrg os=-nextstep3 65297e8a2e8Smrg ;; 65397e8a2e8Smrg hppaosf) 65497e8a2e8Smrg basic_machine=hppa1.1-hp 65597e8a2e8Smrg os=-osf 65697e8a2e8Smrg ;; 65797e8a2e8Smrg hppro) 65897e8a2e8Smrg basic_machine=hppa1.1-hp 65997e8a2e8Smrg os=-proelf 66097e8a2e8Smrg ;; 66197e8a2e8Smrg i370-ibm* | ibm*) 66297e8a2e8Smrg basic_machine=i370-ibm 66397e8a2e8Smrg ;; 66497e8a2e8Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 66597e8a2e8Smrg i*86v32) 66697e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 66797e8a2e8Smrg os=-sysv32 66897e8a2e8Smrg ;; 66997e8a2e8Smrg i*86v4*) 67097e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 67197e8a2e8Smrg os=-sysv4 67297e8a2e8Smrg ;; 67397e8a2e8Smrg i*86v) 67497e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 67597e8a2e8Smrg os=-sysv 67697e8a2e8Smrg ;; 67797e8a2e8Smrg i*86sol2) 67897e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 67997e8a2e8Smrg os=-solaris2 68097e8a2e8Smrg ;; 68197e8a2e8Smrg i386mach) 68297e8a2e8Smrg basic_machine=i386-mach 68397e8a2e8Smrg os=-mach 68497e8a2e8Smrg ;; 68597e8a2e8Smrg i386-vsta | vsta) 68697e8a2e8Smrg basic_machine=i386-unknown 68797e8a2e8Smrg os=-vsta 68897e8a2e8Smrg ;; 68997e8a2e8Smrg iris | iris4d) 69097e8a2e8Smrg basic_machine=mips-sgi 69197e8a2e8Smrg case $os in 69297e8a2e8Smrg -irix*) 69397e8a2e8Smrg ;; 69497e8a2e8Smrg *) 69597e8a2e8Smrg os=-irix4 69697e8a2e8Smrg ;; 69797e8a2e8Smrg esac 69897e8a2e8Smrg ;; 69997e8a2e8Smrg isi68 | isi) 70097e8a2e8Smrg basic_machine=m68k-isi 70197e8a2e8Smrg os=-sysv 70297e8a2e8Smrg ;; 703d7accfefSmrg m68knommu) 704d7accfefSmrg basic_machine=m68k-unknown 705d7accfefSmrg os=-linux 706d7accfefSmrg ;; 707d7accfefSmrg m68knommu-*) 708d7accfefSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 709d7accfefSmrg os=-linux 710d7accfefSmrg ;; 71197e8a2e8Smrg m88k-omron*) 71297e8a2e8Smrg basic_machine=m88k-omron 71397e8a2e8Smrg ;; 71497e8a2e8Smrg magnum | m3230) 71597e8a2e8Smrg basic_machine=mips-mips 71697e8a2e8Smrg os=-sysv 71797e8a2e8Smrg ;; 71897e8a2e8Smrg merlin) 71997e8a2e8Smrg basic_machine=ns32k-utek 72097e8a2e8Smrg os=-sysv 72197e8a2e8Smrg ;; 72297e8a2e8Smrg mingw32) 72397e8a2e8Smrg basic_machine=i386-pc 72497e8a2e8Smrg os=-mingw32 72597e8a2e8Smrg ;; 726d7accfefSmrg mingw32ce) 727d7accfefSmrg basic_machine=arm-unknown 728d7accfefSmrg os=-mingw32ce 729d7accfefSmrg ;; 73097e8a2e8Smrg miniframe) 73197e8a2e8Smrg basic_machine=m68000-convergent 73297e8a2e8Smrg ;; 73397e8a2e8Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 73497e8a2e8Smrg basic_machine=m68k-atari 73597e8a2e8Smrg os=-mint 73697e8a2e8Smrg ;; 73797e8a2e8Smrg mips3*-*) 73897e8a2e8Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 73997e8a2e8Smrg ;; 74097e8a2e8Smrg mips3*) 74197e8a2e8Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 74297e8a2e8Smrg ;; 74397e8a2e8Smrg monitor) 74497e8a2e8Smrg basic_machine=m68k-rom68k 74597e8a2e8Smrg os=-coff 74697e8a2e8Smrg ;; 74797e8a2e8Smrg morphos) 74897e8a2e8Smrg basic_machine=powerpc-unknown 74997e8a2e8Smrg os=-morphos 75097e8a2e8Smrg ;; 75197e8a2e8Smrg msdos) 75297e8a2e8Smrg basic_machine=i386-pc 75397e8a2e8Smrg os=-msdos 75497e8a2e8Smrg ;; 755d7accfefSmrg ms1-*) 756d7accfefSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 757d7accfefSmrg ;; 75897e8a2e8Smrg mvs) 75997e8a2e8Smrg basic_machine=i370-ibm 76097e8a2e8Smrg os=-mvs 76197e8a2e8Smrg ;; 76297e8a2e8Smrg ncr3000) 76397e8a2e8Smrg basic_machine=i486-ncr 76497e8a2e8Smrg os=-sysv4 76597e8a2e8Smrg ;; 76697e8a2e8Smrg netbsd386) 76797e8a2e8Smrg basic_machine=i386-unknown 76897e8a2e8Smrg os=-netbsd 76997e8a2e8Smrg ;; 77097e8a2e8Smrg netwinder) 77197e8a2e8Smrg basic_machine=armv4l-rebel 77297e8a2e8Smrg os=-linux 77397e8a2e8Smrg ;; 77497e8a2e8Smrg news | news700 | news800 | news900) 77597e8a2e8Smrg basic_machine=m68k-sony 77697e8a2e8Smrg os=-newsos 77797e8a2e8Smrg ;; 77897e8a2e8Smrg news1000) 77997e8a2e8Smrg basic_machine=m68030-sony 78097e8a2e8Smrg os=-newsos 78197e8a2e8Smrg ;; 78297e8a2e8Smrg news-3600 | risc-news) 78397e8a2e8Smrg basic_machine=mips-sony 78497e8a2e8Smrg os=-newsos 78597e8a2e8Smrg ;; 78697e8a2e8Smrg necv70) 78797e8a2e8Smrg basic_machine=v70-nec 78897e8a2e8Smrg os=-sysv 78997e8a2e8Smrg ;; 79097e8a2e8Smrg next | m*-next ) 79197e8a2e8Smrg basic_machine=m68k-next 79297e8a2e8Smrg case $os in 79397e8a2e8Smrg -nextstep* ) 79497e8a2e8Smrg ;; 79597e8a2e8Smrg -ns2*) 79697e8a2e8Smrg os=-nextstep2 79797e8a2e8Smrg ;; 79897e8a2e8Smrg *) 79997e8a2e8Smrg os=-nextstep3 80097e8a2e8Smrg ;; 80197e8a2e8Smrg esac 80297e8a2e8Smrg ;; 80397e8a2e8Smrg nh3000) 80497e8a2e8Smrg basic_machine=m68k-harris 80597e8a2e8Smrg os=-cxux 80697e8a2e8Smrg ;; 80797e8a2e8Smrg nh[45]000) 80897e8a2e8Smrg basic_machine=m88k-harris 80997e8a2e8Smrg os=-cxux 81097e8a2e8Smrg ;; 81197e8a2e8Smrg nindy960) 81297e8a2e8Smrg basic_machine=i960-intel 81397e8a2e8Smrg os=-nindy 81497e8a2e8Smrg ;; 81597e8a2e8Smrg mon960) 81697e8a2e8Smrg basic_machine=i960-intel 81797e8a2e8Smrg os=-mon960 81897e8a2e8Smrg ;; 81997e8a2e8Smrg nonstopux) 82097e8a2e8Smrg basic_machine=mips-compaq 82197e8a2e8Smrg os=-nonstopux 82297e8a2e8Smrg ;; 82397e8a2e8Smrg np1) 82497e8a2e8Smrg basic_machine=np1-gould 82597e8a2e8Smrg ;; 82697e8a2e8Smrg nsr-tandem) 82797e8a2e8Smrg basic_machine=nsr-tandem 82897e8a2e8Smrg ;; 82997e8a2e8Smrg op50n-* | op60c-*) 83097e8a2e8Smrg basic_machine=hppa1.1-oki 83197e8a2e8Smrg os=-proelf 83297e8a2e8Smrg ;; 833d7accfefSmrg openrisc | openrisc-*) 83497e8a2e8Smrg basic_machine=or32-unknown 835d7accfefSmrg ;; 836d7accfefSmrg os400) 837d7accfefSmrg basic_machine=powerpc-ibm 838d7accfefSmrg os=-os400 83997e8a2e8Smrg ;; 84097e8a2e8Smrg OSE68000 | ose68000) 84197e8a2e8Smrg basic_machine=m68000-ericsson 84297e8a2e8Smrg os=-ose 84397e8a2e8Smrg ;; 84497e8a2e8Smrg os68k) 84597e8a2e8Smrg basic_machine=m68k-none 84697e8a2e8Smrg os=-os68k 84797e8a2e8Smrg ;; 84897e8a2e8Smrg pa-hitachi) 84997e8a2e8Smrg basic_machine=hppa1.1-hitachi 85097e8a2e8Smrg os=-hiuxwe2 85197e8a2e8Smrg ;; 85297e8a2e8Smrg paragon) 85397e8a2e8Smrg basic_machine=i860-intel 85497e8a2e8Smrg os=-osf 85597e8a2e8Smrg ;; 856d7accfefSmrg parisc) 857d7accfefSmrg basic_machine=hppa-unknown 858d7accfefSmrg os=-linux 859d7accfefSmrg ;; 860d7accfefSmrg parisc-*) 861d7accfefSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 862d7accfefSmrg os=-linux 863d7accfefSmrg ;; 86497e8a2e8Smrg pbd) 86597e8a2e8Smrg basic_machine=sparc-tti 86697e8a2e8Smrg ;; 86797e8a2e8Smrg pbb) 86897e8a2e8Smrg basic_machine=m68k-tti 86997e8a2e8Smrg ;; 87097e8a2e8Smrg pc532 | pc532-*) 87197e8a2e8Smrg basic_machine=ns32k-pc532 87297e8a2e8Smrg ;; 873d7accfefSmrg pc98) 874d7accfefSmrg basic_machine=i386-pc 875d7accfefSmrg ;; 876d7accfefSmrg pc98-*) 877d7accfefSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 878d7accfefSmrg ;; 87997e8a2e8Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 88097e8a2e8Smrg basic_machine=i586-pc 88197e8a2e8Smrg ;; 88297e8a2e8Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 88397e8a2e8Smrg basic_machine=i686-pc 88497e8a2e8Smrg ;; 88597e8a2e8Smrg pentiumii | pentium2 | pentiumiii | pentium3) 88697e8a2e8Smrg basic_machine=i686-pc 88797e8a2e8Smrg ;; 88897e8a2e8Smrg pentium4) 88997e8a2e8Smrg basic_machine=i786-pc 89097e8a2e8Smrg ;; 89197e8a2e8Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 89297e8a2e8Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 89397e8a2e8Smrg ;; 89497e8a2e8Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 89597e8a2e8Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 89697e8a2e8Smrg ;; 89797e8a2e8Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 89897e8a2e8Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 89997e8a2e8Smrg ;; 90097e8a2e8Smrg pentium4-*) 90197e8a2e8Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 90297e8a2e8Smrg ;; 90397e8a2e8Smrg pn) 90497e8a2e8Smrg basic_machine=pn-gould 90597e8a2e8Smrg ;; 90697e8a2e8Smrg power) basic_machine=power-ibm 90797e8a2e8Smrg ;; 90897e8a2e8Smrg ppc) basic_machine=powerpc-unknown 90997e8a2e8Smrg ;; 91097e8a2e8Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 91197e8a2e8Smrg ;; 91297e8a2e8Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 91397e8a2e8Smrg basic_machine=powerpcle-unknown 91497e8a2e8Smrg ;; 91597e8a2e8Smrg ppcle-* | powerpclittle-*) 91697e8a2e8Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 91797e8a2e8Smrg ;; 91897e8a2e8Smrg ppc64) basic_machine=powerpc64-unknown 91997e8a2e8Smrg ;; 92097e8a2e8Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 92197e8a2e8Smrg ;; 92297e8a2e8Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 92397e8a2e8Smrg basic_machine=powerpc64le-unknown 92497e8a2e8Smrg ;; 92597e8a2e8Smrg ppc64le-* | powerpc64little-*) 92697e8a2e8Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 92797e8a2e8Smrg ;; 92897e8a2e8Smrg ps2) 92997e8a2e8Smrg basic_machine=i386-ibm 93097e8a2e8Smrg ;; 93197e8a2e8Smrg pw32) 93297e8a2e8Smrg basic_machine=i586-unknown 93397e8a2e8Smrg os=-pw32 93497e8a2e8Smrg ;; 935d7accfefSmrg rdos) 936d7accfefSmrg basic_machine=i386-pc 937d7accfefSmrg os=-rdos 938d7accfefSmrg ;; 93997e8a2e8Smrg rom68k) 94097e8a2e8Smrg basic_machine=m68k-rom68k 94197e8a2e8Smrg os=-coff 94297e8a2e8Smrg ;; 94397e8a2e8Smrg rm[46]00) 94497e8a2e8Smrg basic_machine=mips-siemens 94597e8a2e8Smrg ;; 94697e8a2e8Smrg rtpc | rtpc-*) 94797e8a2e8Smrg basic_machine=romp-ibm 94897e8a2e8Smrg ;; 949d7accfefSmrg s390 | s390-*) 950d7accfefSmrg basic_machine=s390-ibm 951d7accfefSmrg ;; 952d7accfefSmrg s390x | s390x-*) 953d7accfefSmrg basic_machine=s390x-ibm 954d7accfefSmrg ;; 95597e8a2e8Smrg sa29200) 95697e8a2e8Smrg basic_machine=a29k-amd 95797e8a2e8Smrg os=-udi 95897e8a2e8Smrg ;; 95997e8a2e8Smrg sb1) 96097e8a2e8Smrg basic_machine=mipsisa64sb1-unknown 96197e8a2e8Smrg ;; 96297e8a2e8Smrg sb1el) 96397e8a2e8Smrg basic_machine=mipsisa64sb1el-unknown 96497e8a2e8Smrg ;; 965d7accfefSmrg sde) 966d7accfefSmrg basic_machine=mipsisa32-sde 967d7accfefSmrg os=-elf 968d7accfefSmrg ;; 96997e8a2e8Smrg sei) 97097e8a2e8Smrg basic_machine=mips-sei 97197e8a2e8Smrg os=-seiux 97297e8a2e8Smrg ;; 97397e8a2e8Smrg sequent) 97497e8a2e8Smrg basic_machine=i386-sequent 97597e8a2e8Smrg ;; 97697e8a2e8Smrg sh) 97797e8a2e8Smrg basic_machine=sh-hitachi 97897e8a2e8Smrg os=-hms 97997e8a2e8Smrg ;; 980d7accfefSmrg sh5el) 981d7accfefSmrg basic_machine=sh5le-unknown 982d7accfefSmrg ;; 98397e8a2e8Smrg sh64) 98497e8a2e8Smrg basic_machine=sh64-unknown 98597e8a2e8Smrg ;; 98697e8a2e8Smrg sparclite-wrs | simso-wrs) 98797e8a2e8Smrg basic_machine=sparclite-wrs 98897e8a2e8Smrg os=-vxworks 98997e8a2e8Smrg ;; 99097e8a2e8Smrg sps7) 99197e8a2e8Smrg basic_machine=m68k-bull 99297e8a2e8Smrg os=-sysv2 99397e8a2e8Smrg ;; 99497e8a2e8Smrg spur) 99597e8a2e8Smrg basic_machine=spur-unknown 99697e8a2e8Smrg ;; 99797e8a2e8Smrg st2000) 99897e8a2e8Smrg basic_machine=m68k-tandem 99997e8a2e8Smrg ;; 100097e8a2e8Smrg stratus) 100197e8a2e8Smrg basic_machine=i860-stratus 100297e8a2e8Smrg os=-sysv4 100397e8a2e8Smrg ;; 100497e8a2e8Smrg sun2) 100597e8a2e8Smrg basic_machine=m68000-sun 100697e8a2e8Smrg ;; 100797e8a2e8Smrg sun2os3) 100897e8a2e8Smrg basic_machine=m68000-sun 100997e8a2e8Smrg os=-sunos3 101097e8a2e8Smrg ;; 101197e8a2e8Smrg sun2os4) 101297e8a2e8Smrg basic_machine=m68000-sun 101397e8a2e8Smrg os=-sunos4 101497e8a2e8Smrg ;; 101597e8a2e8Smrg sun3os3) 101697e8a2e8Smrg basic_machine=m68k-sun 101797e8a2e8Smrg os=-sunos3 101897e8a2e8Smrg ;; 101997e8a2e8Smrg sun3os4) 102097e8a2e8Smrg basic_machine=m68k-sun 102197e8a2e8Smrg os=-sunos4 102297e8a2e8Smrg ;; 102397e8a2e8Smrg sun4os3) 102497e8a2e8Smrg basic_machine=sparc-sun 102597e8a2e8Smrg os=-sunos3 102697e8a2e8Smrg ;; 102797e8a2e8Smrg sun4os4) 102897e8a2e8Smrg basic_machine=sparc-sun 102997e8a2e8Smrg os=-sunos4 103097e8a2e8Smrg ;; 103197e8a2e8Smrg sun4sol2) 103297e8a2e8Smrg basic_machine=sparc-sun 103397e8a2e8Smrg os=-solaris2 103497e8a2e8Smrg ;; 103597e8a2e8Smrg sun3 | sun3-*) 103697e8a2e8Smrg basic_machine=m68k-sun 103797e8a2e8Smrg ;; 103897e8a2e8Smrg sun4) 103997e8a2e8Smrg basic_machine=sparc-sun 104097e8a2e8Smrg ;; 104197e8a2e8Smrg sun386 | sun386i | roadrunner) 104297e8a2e8Smrg basic_machine=i386-sun 104397e8a2e8Smrg ;; 104497e8a2e8Smrg sv1) 104597e8a2e8Smrg basic_machine=sv1-cray 104697e8a2e8Smrg os=-unicos 104797e8a2e8Smrg ;; 104897e8a2e8Smrg symmetry) 104997e8a2e8Smrg basic_machine=i386-sequent 105097e8a2e8Smrg os=-dynix 105197e8a2e8Smrg ;; 105297e8a2e8Smrg t3e) 105397e8a2e8Smrg basic_machine=alphaev5-cray 105497e8a2e8Smrg os=-unicos 105597e8a2e8Smrg ;; 105697e8a2e8Smrg t90) 105797e8a2e8Smrg basic_machine=t90-cray 105897e8a2e8Smrg os=-unicos 105997e8a2e8Smrg ;; 106097e8a2e8Smrg tic54x | c54x*) 106197e8a2e8Smrg basic_machine=tic54x-unknown 106297e8a2e8Smrg os=-coff 106397e8a2e8Smrg ;; 106497e8a2e8Smrg tic55x | c55x*) 106597e8a2e8Smrg basic_machine=tic55x-unknown 106697e8a2e8Smrg os=-coff 106797e8a2e8Smrg ;; 106897e8a2e8Smrg tic6x | c6x*) 106997e8a2e8Smrg basic_machine=tic6x-unknown 107097e8a2e8Smrg os=-coff 107197e8a2e8Smrg ;; 1072d7accfefSmrg tile*) 1073d7accfefSmrg basic_machine=tile-unknown 1074d7accfefSmrg os=-linux-gnu 1075d7accfefSmrg ;; 107697e8a2e8Smrg tx39) 107797e8a2e8Smrg basic_machine=mipstx39-unknown 107897e8a2e8Smrg ;; 107997e8a2e8Smrg tx39el) 108097e8a2e8Smrg basic_machine=mipstx39el-unknown 108197e8a2e8Smrg ;; 108297e8a2e8Smrg toad1) 108397e8a2e8Smrg basic_machine=pdp10-xkl 108497e8a2e8Smrg os=-tops20 108597e8a2e8Smrg ;; 108697e8a2e8Smrg tower | tower-32) 108797e8a2e8Smrg basic_machine=m68k-ncr 108897e8a2e8Smrg ;; 1089d7accfefSmrg tpf) 1090d7accfefSmrg basic_machine=s390x-ibm 1091d7accfefSmrg os=-tpf 1092d7accfefSmrg ;; 109397e8a2e8Smrg udi29k) 109497e8a2e8Smrg basic_machine=a29k-amd 109597e8a2e8Smrg os=-udi 109697e8a2e8Smrg ;; 109797e8a2e8Smrg ultra3) 109897e8a2e8Smrg basic_machine=a29k-nyu 109997e8a2e8Smrg os=-sym1 110097e8a2e8Smrg ;; 110197e8a2e8Smrg v810 | necv810) 110297e8a2e8Smrg basic_machine=v810-nec 110397e8a2e8Smrg os=-none 110497e8a2e8Smrg ;; 110597e8a2e8Smrg vaxv) 110697e8a2e8Smrg basic_machine=vax-dec 110797e8a2e8Smrg os=-sysv 110897e8a2e8Smrg ;; 110997e8a2e8Smrg vms) 111097e8a2e8Smrg basic_machine=vax-dec 111197e8a2e8Smrg os=-vms 111297e8a2e8Smrg ;; 111397e8a2e8Smrg vpp*|vx|vx-*) 111497e8a2e8Smrg basic_machine=f301-fujitsu 111597e8a2e8Smrg ;; 111697e8a2e8Smrg vxworks960) 111797e8a2e8Smrg basic_machine=i960-wrs 111897e8a2e8Smrg os=-vxworks 111997e8a2e8Smrg ;; 112097e8a2e8Smrg vxworks68) 112197e8a2e8Smrg basic_machine=m68k-wrs 112297e8a2e8Smrg os=-vxworks 112397e8a2e8Smrg ;; 112497e8a2e8Smrg vxworks29k) 112597e8a2e8Smrg basic_machine=a29k-wrs 112697e8a2e8Smrg os=-vxworks 112797e8a2e8Smrg ;; 112897e8a2e8Smrg w65*) 112997e8a2e8Smrg basic_machine=w65-wdc 113097e8a2e8Smrg os=-none 113197e8a2e8Smrg ;; 113297e8a2e8Smrg w89k-*) 113397e8a2e8Smrg basic_machine=hppa1.1-winbond 113497e8a2e8Smrg os=-proelf 113597e8a2e8Smrg ;; 1136d7accfefSmrg xbox) 1137d7accfefSmrg basic_machine=i686-pc 1138d7accfefSmrg os=-mingw32 1139d7accfefSmrg ;; 114097e8a2e8Smrg xps | xps100) 114197e8a2e8Smrg basic_machine=xps100-honeywell 114297e8a2e8Smrg ;; 114397e8a2e8Smrg ymp) 114497e8a2e8Smrg basic_machine=ymp-cray 114597e8a2e8Smrg os=-unicos 114697e8a2e8Smrg ;; 114797e8a2e8Smrg z8k-*-coff) 114897e8a2e8Smrg basic_machine=z8k-unknown 114997e8a2e8Smrg os=-sim 115097e8a2e8Smrg ;; 1151d7accfefSmrg z80-*-coff) 1152d7accfefSmrg basic_machine=z80-unknown 1153d7accfefSmrg os=-sim 1154d7accfefSmrg ;; 115597e8a2e8Smrg none) 115697e8a2e8Smrg basic_machine=none-none 115797e8a2e8Smrg os=-none 115897e8a2e8Smrg ;; 115997e8a2e8Smrg 116097e8a2e8Smrg# Here we handle the default manufacturer of certain CPU types. It is in 116197e8a2e8Smrg# some cases the only manufacturer, in others, it is the most popular. 116297e8a2e8Smrg w89k) 116397e8a2e8Smrg basic_machine=hppa1.1-winbond 116497e8a2e8Smrg ;; 116597e8a2e8Smrg op50n) 116697e8a2e8Smrg basic_machine=hppa1.1-oki 116797e8a2e8Smrg ;; 116897e8a2e8Smrg op60c) 116997e8a2e8Smrg basic_machine=hppa1.1-oki 117097e8a2e8Smrg ;; 117197e8a2e8Smrg romp) 117297e8a2e8Smrg basic_machine=romp-ibm 117397e8a2e8Smrg ;; 1174d7accfefSmrg mmix) 1175d7accfefSmrg basic_machine=mmix-knuth 1176d7accfefSmrg ;; 117797e8a2e8Smrg rs6000) 117897e8a2e8Smrg basic_machine=rs6000-ibm 117997e8a2e8Smrg ;; 118097e8a2e8Smrg vax) 118197e8a2e8Smrg basic_machine=vax-dec 118297e8a2e8Smrg ;; 118397e8a2e8Smrg pdp10) 118497e8a2e8Smrg # there are many clones, so DEC is not a safe bet 118597e8a2e8Smrg basic_machine=pdp10-unknown 118697e8a2e8Smrg ;; 118797e8a2e8Smrg pdp11) 118897e8a2e8Smrg basic_machine=pdp11-dec 118997e8a2e8Smrg ;; 119097e8a2e8Smrg we32k) 119197e8a2e8Smrg basic_machine=we32k-att 119297e8a2e8Smrg ;; 1193d7accfefSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 119497e8a2e8Smrg basic_machine=sh-unknown 119597e8a2e8Smrg ;; 1196d7accfefSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 119797e8a2e8Smrg basic_machine=sparc-sun 119897e8a2e8Smrg ;; 119997e8a2e8Smrg cydra) 120097e8a2e8Smrg basic_machine=cydra-cydrome 120197e8a2e8Smrg ;; 120297e8a2e8Smrg orion) 120397e8a2e8Smrg basic_machine=orion-highlevel 120497e8a2e8Smrg ;; 120597e8a2e8Smrg orion105) 120697e8a2e8Smrg basic_machine=clipper-highlevel 120797e8a2e8Smrg ;; 120897e8a2e8Smrg mac | mpw | mac-mpw) 120997e8a2e8Smrg basic_machine=m68k-apple 121097e8a2e8Smrg ;; 121197e8a2e8Smrg pmac | pmac-mpw) 121297e8a2e8Smrg basic_machine=powerpc-apple 121397e8a2e8Smrg ;; 121497e8a2e8Smrg *-unknown) 121597e8a2e8Smrg # Make sure to match an already-canonicalized machine name. 121697e8a2e8Smrg ;; 121797e8a2e8Smrg *) 121897e8a2e8Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 121997e8a2e8Smrg exit 1 122097e8a2e8Smrg ;; 122197e8a2e8Smrgesac 122297e8a2e8Smrg 122397e8a2e8Smrg# Here we canonicalize certain aliases for manufacturers. 122497e8a2e8Smrgcase $basic_machine in 122597e8a2e8Smrg *-digital*) 122697e8a2e8Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 122797e8a2e8Smrg ;; 122897e8a2e8Smrg *-commodore*) 122997e8a2e8Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 123097e8a2e8Smrg ;; 123197e8a2e8Smrg *) 123297e8a2e8Smrg ;; 123397e8a2e8Smrgesac 123497e8a2e8Smrg 123597e8a2e8Smrg# Decode manufacturer-specific aliases for certain operating systems. 123697e8a2e8Smrg 123797e8a2e8Smrgif [ x"$os" != x"" ] 123897e8a2e8Smrgthen 123997e8a2e8Smrgcase $os in 124097e8a2e8Smrg # First match some system type aliases 124197e8a2e8Smrg # that might get confused with valid system types. 124297e8a2e8Smrg # -solaris* is a basic system type, with this one exception. 124397e8a2e8Smrg -solaris1 | -solaris1.*) 124497e8a2e8Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 124597e8a2e8Smrg ;; 124697e8a2e8Smrg -solaris) 124797e8a2e8Smrg os=-solaris2 124897e8a2e8Smrg ;; 124997e8a2e8Smrg -svr4*) 125097e8a2e8Smrg os=-sysv4 125197e8a2e8Smrg ;; 125297e8a2e8Smrg -unixware*) 125397e8a2e8Smrg os=-sysv4.2uw 125497e8a2e8Smrg ;; 125597e8a2e8Smrg -gnu/linux*) 125697e8a2e8Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 125797e8a2e8Smrg ;; 125897e8a2e8Smrg # First accept the basic system types. 125997e8a2e8Smrg # The portable systems comes first. 126097e8a2e8Smrg # Each alternative MUST END IN A *, to match a version number. 126197e8a2e8Smrg # -sysv* is not here because it comes later, after sysvr4. 126297e8a2e8Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 126397e8a2e8Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 126497e8a2e8Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 1265d7accfefSmrg | -kopensolaris* \ 126697e8a2e8Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1267d7accfefSmrg | -aos* | -aros* \ 126897e8a2e8Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 126997e8a2e8Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1270d7accfefSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1271d7accfefSmrg | -openbsd* | -solidbsd* \ 1272d7accfefSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1273d7accfefSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 127497e8a2e8Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 127597e8a2e8Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1276d7accfefSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 127797e8a2e8Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1278d7accfefSmrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 1279d7accfefSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 128097e8a2e8Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 128197e8a2e8Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 128297e8a2e8Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 128397e8a2e8Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 128497e8a2e8Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1285d7accfefSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1286d7accfefSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) 128797e8a2e8Smrg # Remember, each alternative MUST END IN *, to match a version number. 128897e8a2e8Smrg ;; 128997e8a2e8Smrg -qnx*) 129097e8a2e8Smrg case $basic_machine in 129197e8a2e8Smrg x86-* | i*86-*) 129297e8a2e8Smrg ;; 129397e8a2e8Smrg *) 129497e8a2e8Smrg os=-nto$os 129597e8a2e8Smrg ;; 129697e8a2e8Smrg esac 129797e8a2e8Smrg ;; 129897e8a2e8Smrg -nto-qnx*) 129997e8a2e8Smrg ;; 130097e8a2e8Smrg -nto*) 130197e8a2e8Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 130297e8a2e8Smrg ;; 130397e8a2e8Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1304d7accfefSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 130597e8a2e8Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 130697e8a2e8Smrg ;; 130797e8a2e8Smrg -mac*) 130897e8a2e8Smrg os=`echo $os | sed -e 's|mac|macos|'` 130997e8a2e8Smrg ;; 1310d7accfefSmrg -linux-dietlibc) 1311d7accfefSmrg os=-linux-dietlibc 1312d7accfefSmrg ;; 131397e8a2e8Smrg -linux*) 131497e8a2e8Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 131597e8a2e8Smrg ;; 131697e8a2e8Smrg -sunos5*) 131797e8a2e8Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 131897e8a2e8Smrg ;; 131997e8a2e8Smrg -sunos6*) 132097e8a2e8Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 132197e8a2e8Smrg ;; 132297e8a2e8Smrg -opened*) 132397e8a2e8Smrg os=-openedition 132497e8a2e8Smrg ;; 1325d7accfefSmrg -os400*) 1326d7accfefSmrg os=-os400 1327d7accfefSmrg ;; 132897e8a2e8Smrg -wince*) 132997e8a2e8Smrg os=-wince 133097e8a2e8Smrg ;; 133197e8a2e8Smrg -osfrose*) 133297e8a2e8Smrg os=-osfrose 133397e8a2e8Smrg ;; 133497e8a2e8Smrg -osf*) 133597e8a2e8Smrg os=-osf 133697e8a2e8Smrg ;; 133797e8a2e8Smrg -utek*) 133897e8a2e8Smrg os=-bsd 133997e8a2e8Smrg ;; 134097e8a2e8Smrg -dynix*) 134197e8a2e8Smrg os=-bsd 134297e8a2e8Smrg ;; 134397e8a2e8Smrg -acis*) 134497e8a2e8Smrg os=-aos 134597e8a2e8Smrg ;; 134697e8a2e8Smrg -atheos*) 134797e8a2e8Smrg os=-atheos 134897e8a2e8Smrg ;; 1349d7accfefSmrg -syllable*) 1350d7accfefSmrg os=-syllable 1351d7accfefSmrg ;; 135297e8a2e8Smrg -386bsd) 135397e8a2e8Smrg os=-bsd 135497e8a2e8Smrg ;; 135597e8a2e8Smrg -ctix* | -uts*) 135697e8a2e8Smrg os=-sysv 135797e8a2e8Smrg ;; 135897e8a2e8Smrg -nova*) 135997e8a2e8Smrg os=-rtmk-nova 136097e8a2e8Smrg ;; 136197e8a2e8Smrg -ns2 ) 136297e8a2e8Smrg os=-nextstep2 136397e8a2e8Smrg ;; 136497e8a2e8Smrg -nsk*) 136597e8a2e8Smrg os=-nsk 136697e8a2e8Smrg ;; 136797e8a2e8Smrg # Preserve the version number of sinix5. 136897e8a2e8Smrg -sinix5.*) 136997e8a2e8Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 137097e8a2e8Smrg ;; 137197e8a2e8Smrg -sinix*) 137297e8a2e8Smrg os=-sysv4 137397e8a2e8Smrg ;; 1374d7accfefSmrg -tpf*) 1375d7accfefSmrg os=-tpf 1376d7accfefSmrg ;; 137797e8a2e8Smrg -triton*) 137897e8a2e8Smrg os=-sysv3 137997e8a2e8Smrg ;; 138097e8a2e8Smrg -oss*) 138197e8a2e8Smrg os=-sysv3 138297e8a2e8Smrg ;; 138397e8a2e8Smrg -svr4) 138497e8a2e8Smrg os=-sysv4 138597e8a2e8Smrg ;; 138697e8a2e8Smrg -svr3) 138797e8a2e8Smrg os=-sysv3 138897e8a2e8Smrg ;; 138997e8a2e8Smrg -sysvr4) 139097e8a2e8Smrg os=-sysv4 139197e8a2e8Smrg ;; 139297e8a2e8Smrg # This must come after -sysvr4. 139397e8a2e8Smrg -sysv*) 139497e8a2e8Smrg ;; 139597e8a2e8Smrg -ose*) 139697e8a2e8Smrg os=-ose 139797e8a2e8Smrg ;; 139897e8a2e8Smrg -es1800*) 139997e8a2e8Smrg os=-ose 140097e8a2e8Smrg ;; 140197e8a2e8Smrg -xenix) 140297e8a2e8Smrg os=-xenix 140397e8a2e8Smrg ;; 140497e8a2e8Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 140597e8a2e8Smrg os=-mint 140697e8a2e8Smrg ;; 140797e8a2e8Smrg -aros*) 140897e8a2e8Smrg os=-aros 140997e8a2e8Smrg ;; 141097e8a2e8Smrg -kaos*) 141197e8a2e8Smrg os=-kaos 141297e8a2e8Smrg ;; 1413d7accfefSmrg -zvmoe) 1414d7accfefSmrg os=-zvmoe 1415d7accfefSmrg ;; 1416d7accfefSmrg -dicos*) 1417d7accfefSmrg os=-dicos 1418d7accfefSmrg ;; 141997e8a2e8Smrg -none) 142097e8a2e8Smrg ;; 142197e8a2e8Smrg *) 142297e8a2e8Smrg # Get rid of the `-' at the beginning of $os. 142397e8a2e8Smrg os=`echo $os | sed 's/[^-]*-//'` 142497e8a2e8Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 142597e8a2e8Smrg exit 1 142697e8a2e8Smrg ;; 142797e8a2e8Smrgesac 142897e8a2e8Smrgelse 142997e8a2e8Smrg 143097e8a2e8Smrg# Here we handle the default operating systems that come with various machines. 143197e8a2e8Smrg# The value should be what the vendor currently ships out the door with their 143297e8a2e8Smrg# machine or put another way, the most popular os provided with the machine. 143397e8a2e8Smrg 143497e8a2e8Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 143597e8a2e8Smrg# "-sun"), then you have to tell the case statement up towards the top 143697e8a2e8Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 143797e8a2e8Smrg# will signal an error saying that MANUFACTURER isn't an operating 143897e8a2e8Smrg# system, and we'll never get to this point. 143997e8a2e8Smrg 144097e8a2e8Smrgcase $basic_machine in 1441d7accfefSmrg score-*) 1442d7accfefSmrg os=-elf 1443d7accfefSmrg ;; 1444d7accfefSmrg spu-*) 1445d7accfefSmrg os=-elf 1446d7accfefSmrg ;; 144797e8a2e8Smrg *-acorn) 144897e8a2e8Smrg os=-riscix1.2 144997e8a2e8Smrg ;; 145097e8a2e8Smrg arm*-rebel) 145197e8a2e8Smrg os=-linux 145297e8a2e8Smrg ;; 145397e8a2e8Smrg arm*-semi) 145497e8a2e8Smrg os=-aout 145597e8a2e8Smrg ;; 1456d7accfefSmrg c4x-* | tic4x-*) 1457d7accfefSmrg os=-coff 145897e8a2e8Smrg ;; 145997e8a2e8Smrg # This must come before the *-dec entry. 146097e8a2e8Smrg pdp10-*) 146197e8a2e8Smrg os=-tops20 146297e8a2e8Smrg ;; 146397e8a2e8Smrg pdp11-*) 146497e8a2e8Smrg os=-none 146597e8a2e8Smrg ;; 146697e8a2e8Smrg *-dec | vax-*) 146797e8a2e8Smrg os=-ultrix4.2 146897e8a2e8Smrg ;; 146997e8a2e8Smrg m68*-apollo) 147097e8a2e8Smrg os=-domain 147197e8a2e8Smrg ;; 147297e8a2e8Smrg i386-sun) 147397e8a2e8Smrg os=-sunos4.0.2 147497e8a2e8Smrg ;; 147597e8a2e8Smrg m68000-sun) 147697e8a2e8Smrg os=-sunos3 147797e8a2e8Smrg # This also exists in the configure program, but was not the 147897e8a2e8Smrg # default. 147997e8a2e8Smrg # os=-sunos4 148097e8a2e8Smrg ;; 148197e8a2e8Smrg m68*-cisco) 148297e8a2e8Smrg os=-aout 148397e8a2e8Smrg ;; 1484d7accfefSmrg mep-*) 1485d7accfefSmrg os=-elf 1486d7accfefSmrg ;; 148797e8a2e8Smrg mips*-cisco) 148897e8a2e8Smrg os=-elf 148997e8a2e8Smrg ;; 149097e8a2e8Smrg mips*-*) 149197e8a2e8Smrg os=-elf 149297e8a2e8Smrg ;; 149397e8a2e8Smrg or32-*) 149497e8a2e8Smrg os=-coff 149597e8a2e8Smrg ;; 149697e8a2e8Smrg *-tti) # must be before sparc entry or we get the wrong os. 149797e8a2e8Smrg os=-sysv3 149897e8a2e8Smrg ;; 149997e8a2e8Smrg sparc-* | *-sun) 150097e8a2e8Smrg os=-sunos4.1.1 150197e8a2e8Smrg ;; 150297e8a2e8Smrg *-be) 150397e8a2e8Smrg os=-beos 150497e8a2e8Smrg ;; 1505d7accfefSmrg *-haiku) 1506d7accfefSmrg os=-haiku 1507d7accfefSmrg ;; 150897e8a2e8Smrg *-ibm) 150997e8a2e8Smrg os=-aix 151097e8a2e8Smrg ;; 1511d7accfefSmrg *-knuth) 1512d7accfefSmrg os=-mmixware 1513d7accfefSmrg ;; 151497e8a2e8Smrg *-wec) 151597e8a2e8Smrg os=-proelf 151697e8a2e8Smrg ;; 151797e8a2e8Smrg *-winbond) 151897e8a2e8Smrg os=-proelf 151997e8a2e8Smrg ;; 152097e8a2e8Smrg *-oki) 152197e8a2e8Smrg os=-proelf 152297e8a2e8Smrg ;; 152397e8a2e8Smrg *-hp) 152497e8a2e8Smrg os=-hpux 152597e8a2e8Smrg ;; 152697e8a2e8Smrg *-hitachi) 152797e8a2e8Smrg os=-hiux 152897e8a2e8Smrg ;; 152997e8a2e8Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 153097e8a2e8Smrg os=-sysv 153197e8a2e8Smrg ;; 153297e8a2e8Smrg *-cbm) 153397e8a2e8Smrg os=-amigaos 153497e8a2e8Smrg ;; 153597e8a2e8Smrg *-dg) 153697e8a2e8Smrg os=-dgux 153797e8a2e8Smrg ;; 153897e8a2e8Smrg *-dolphin) 153997e8a2e8Smrg os=-sysv3 154097e8a2e8Smrg ;; 154197e8a2e8Smrg m68k-ccur) 154297e8a2e8Smrg os=-rtu 154397e8a2e8Smrg ;; 154497e8a2e8Smrg m88k-omron*) 154597e8a2e8Smrg os=-luna 154697e8a2e8Smrg ;; 154797e8a2e8Smrg *-next ) 154897e8a2e8Smrg os=-nextstep 154997e8a2e8Smrg ;; 155097e8a2e8Smrg *-sequent) 155197e8a2e8Smrg os=-ptx 155297e8a2e8Smrg ;; 155397e8a2e8Smrg *-crds) 155497e8a2e8Smrg os=-unos 155597e8a2e8Smrg ;; 155697e8a2e8Smrg *-ns) 155797e8a2e8Smrg os=-genix 155897e8a2e8Smrg ;; 155997e8a2e8Smrg i370-*) 156097e8a2e8Smrg os=-mvs 156197e8a2e8Smrg ;; 156297e8a2e8Smrg *-next) 156397e8a2e8Smrg os=-nextstep3 156497e8a2e8Smrg ;; 156597e8a2e8Smrg *-gould) 156697e8a2e8Smrg os=-sysv 156797e8a2e8Smrg ;; 156897e8a2e8Smrg *-highlevel) 156997e8a2e8Smrg os=-bsd 157097e8a2e8Smrg ;; 157197e8a2e8Smrg *-encore) 157297e8a2e8Smrg os=-bsd 157397e8a2e8Smrg ;; 157497e8a2e8Smrg *-sgi) 157597e8a2e8Smrg os=-irix 157697e8a2e8Smrg ;; 157797e8a2e8Smrg *-siemens) 157897e8a2e8Smrg os=-sysv4 157997e8a2e8Smrg ;; 158097e8a2e8Smrg *-masscomp) 158197e8a2e8Smrg os=-rtu 158297e8a2e8Smrg ;; 158397e8a2e8Smrg f30[01]-fujitsu | f700-fujitsu) 158497e8a2e8Smrg os=-uxpv 158597e8a2e8Smrg ;; 158697e8a2e8Smrg *-rom68k) 158797e8a2e8Smrg os=-coff 158897e8a2e8Smrg ;; 158997e8a2e8Smrg *-*bug) 159097e8a2e8Smrg os=-coff 159197e8a2e8Smrg ;; 159297e8a2e8Smrg *-apple) 159397e8a2e8Smrg os=-macos 159497e8a2e8Smrg ;; 159597e8a2e8Smrg *-atari*) 159697e8a2e8Smrg os=-mint 159797e8a2e8Smrg ;; 159897e8a2e8Smrg *) 159997e8a2e8Smrg os=-none 160097e8a2e8Smrg ;; 160197e8a2e8Smrgesac 160297e8a2e8Smrgfi 160397e8a2e8Smrg 160497e8a2e8Smrg# Here we handle the case where we know the os, and the CPU type, but not the 160597e8a2e8Smrg# manufacturer. We pick the logical manufacturer. 160697e8a2e8Smrgvendor=unknown 160797e8a2e8Smrgcase $basic_machine in 160897e8a2e8Smrg *-unknown) 160997e8a2e8Smrg case $os in 161097e8a2e8Smrg -riscix*) 161197e8a2e8Smrg vendor=acorn 161297e8a2e8Smrg ;; 161397e8a2e8Smrg -sunos*) 161497e8a2e8Smrg vendor=sun 161597e8a2e8Smrg ;; 161697e8a2e8Smrg -aix*) 161797e8a2e8Smrg vendor=ibm 161897e8a2e8Smrg ;; 161997e8a2e8Smrg -beos*) 162097e8a2e8Smrg vendor=be 162197e8a2e8Smrg ;; 162297e8a2e8Smrg -hpux*) 162397e8a2e8Smrg vendor=hp 162497e8a2e8Smrg ;; 162597e8a2e8Smrg -mpeix*) 162697e8a2e8Smrg vendor=hp 162797e8a2e8Smrg ;; 162897e8a2e8Smrg -hiux*) 162997e8a2e8Smrg vendor=hitachi 163097e8a2e8Smrg ;; 163197e8a2e8Smrg -unos*) 163297e8a2e8Smrg vendor=crds 163397e8a2e8Smrg ;; 163497e8a2e8Smrg -dgux*) 163597e8a2e8Smrg vendor=dg 163697e8a2e8Smrg ;; 163797e8a2e8Smrg -luna*) 163897e8a2e8Smrg vendor=omron 163997e8a2e8Smrg ;; 164097e8a2e8Smrg -genix*) 164197e8a2e8Smrg vendor=ns 164297e8a2e8Smrg ;; 164397e8a2e8Smrg -mvs* | -opened*) 164497e8a2e8Smrg vendor=ibm 164597e8a2e8Smrg ;; 1646d7accfefSmrg -os400*) 1647d7accfefSmrg vendor=ibm 1648d7accfefSmrg ;; 164997e8a2e8Smrg -ptx*) 165097e8a2e8Smrg vendor=sequent 165197e8a2e8Smrg ;; 1652d7accfefSmrg -tpf*) 1653d7accfefSmrg vendor=ibm 1654d7accfefSmrg ;; 165597e8a2e8Smrg -vxsim* | -vxworks* | -windiss*) 165697e8a2e8Smrg vendor=wrs 165797e8a2e8Smrg ;; 165897e8a2e8Smrg -aux*) 165997e8a2e8Smrg vendor=apple 166097e8a2e8Smrg ;; 166197e8a2e8Smrg -hms*) 166297e8a2e8Smrg vendor=hitachi 166397e8a2e8Smrg ;; 166497e8a2e8Smrg -mpw* | -macos*) 166597e8a2e8Smrg vendor=apple 166697e8a2e8Smrg ;; 166797e8a2e8Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 166897e8a2e8Smrg vendor=atari 166997e8a2e8Smrg ;; 167097e8a2e8Smrg -vos*) 167197e8a2e8Smrg vendor=stratus 167297e8a2e8Smrg ;; 167397e8a2e8Smrg esac 167497e8a2e8Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 167597e8a2e8Smrg ;; 167697e8a2e8Smrgesac 167797e8a2e8Smrg 167897e8a2e8Smrgecho $basic_machine$os 1679d7accfefSmrgexit 168097e8a2e8Smrg 168197e8a2e8Smrg# Local variables: 168297e8a2e8Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 168397e8a2e8Smrg# time-stamp-start: "timestamp='" 168497e8a2e8Smrg# time-stamp-format: "%:y-%02m-%02d" 168597e8a2e8Smrg# time-stamp-end: "'" 168697e8a2e8Smrg# End: 1687