config.sub revision 11245024
141b2f0bdSmrg#! /bin/sh 241b2f0bdSmrg# Configuration validation subroutine script. 341b2f0bdSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 411245024Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 511245024Smrg# Free Software Foundation, Inc. 641b2f0bdSmrg 711245024Smrgtimestamp='2008-01-16' 841b2f0bdSmrg 941b2f0bdSmrg# This file is (in principle) common to ALL GNU software. 1041b2f0bdSmrg# The presence of a machine in this file suggests that SOME GNU software 1141b2f0bdSmrg# can handle that machine. It does not imply ALL GNU software can. 1241b2f0bdSmrg# 1341b2f0bdSmrg# This file is free software; you can redistribute it and/or modify 1441b2f0bdSmrg# it under the terms of the GNU General Public License as published by 1541b2f0bdSmrg# the Free Software Foundation; either version 2 of the License, or 1641b2f0bdSmrg# (at your option) any later version. 1741b2f0bdSmrg# 1841b2f0bdSmrg# This program is distributed in the hope that it will be useful, 1941b2f0bdSmrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 2041b2f0bdSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2141b2f0bdSmrg# GNU General Public License for more details. 2241b2f0bdSmrg# 2341b2f0bdSmrg# You should have received a copy of the GNU General Public License 2441b2f0bdSmrg# along with this program; if not, write to the Free Software 2511245024Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2611245024Smrg# 02110-1301, USA. 2711245024Smrg# 2841b2f0bdSmrg# As a special exception to the GNU General Public License, if you 2941b2f0bdSmrg# distribute this file as part of a program that contains a 3041b2f0bdSmrg# configuration script generated by Autoconf, you may include it under 3141b2f0bdSmrg# the same distribution terms that you use for the rest of that program. 3241b2f0bdSmrg 3311245024Smrg 3441b2f0bdSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 3541b2f0bdSmrg# diff and a properly formatted ChangeLog entry. 3641b2f0bdSmrg# 3741b2f0bdSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3841b2f0bdSmrg# Supply the specified configuration type as an argument. 3941b2f0bdSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 4041b2f0bdSmrg# Otherwise, we print the canonical config type on stdout and succeed. 4141b2f0bdSmrg 4241b2f0bdSmrg# This file is supposed to be the same for all GNU packages 4341b2f0bdSmrg# and recognize all the CPU types, system types and aliases 4441b2f0bdSmrg# that are meaningful with *any* GNU software. 4541b2f0bdSmrg# Each package is responsible for reporting which valid configurations 4641b2f0bdSmrg# it does not support. The user should be able to distinguish 4741b2f0bdSmrg# a failure to support a valid configuration from a meaningless 4841b2f0bdSmrg# configuration. 4941b2f0bdSmrg 5041b2f0bdSmrg# The goal of this file is to map all the various variations of a given 5141b2f0bdSmrg# machine specification into a single specification in the form: 5241b2f0bdSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5341b2f0bdSmrg# or in some cases, the newer four-part form: 5441b2f0bdSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5541b2f0bdSmrg# It is wrong to echo any other type of specification. 5641b2f0bdSmrg 5741b2f0bdSmrgme=`echo "$0" | sed -e 's,.*/,,'` 5841b2f0bdSmrg 5941b2f0bdSmrgusage="\ 6041b2f0bdSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 6141b2f0bdSmrg $0 [OPTION] ALIAS 6241b2f0bdSmrg 6341b2f0bdSmrgCanonicalize a configuration name. 6441b2f0bdSmrg 6541b2f0bdSmrgOperation modes: 6641b2f0bdSmrg -h, --help print this help, then exit 6741b2f0bdSmrg -t, --time-stamp print date of last modification, then exit 6841b2f0bdSmrg -v, --version print version number, then exit 6941b2f0bdSmrg 7041b2f0bdSmrgReport bugs and patches to <config-patches@gnu.org>." 7141b2f0bdSmrg 7241b2f0bdSmrgversion="\ 7341b2f0bdSmrgGNU config.sub ($timestamp) 7441b2f0bdSmrg 7511245024SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 7611245024Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 7741b2f0bdSmrg 7841b2f0bdSmrgThis is free software; see the source for copying conditions. There is NO 7941b2f0bdSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8041b2f0bdSmrg 8141b2f0bdSmrghelp=" 8241b2f0bdSmrgTry \`$me --help' for more information." 8341b2f0bdSmrg 8441b2f0bdSmrg# Parse command line 8541b2f0bdSmrgwhile test $# -gt 0 ; do 8641b2f0bdSmrg case $1 in 8741b2f0bdSmrg --time-stamp | --time* | -t ) 8811245024Smrg echo "$timestamp" ; exit ;; 8941b2f0bdSmrg --version | -v ) 9011245024Smrg echo "$version" ; exit ;; 9141b2f0bdSmrg --help | --h* | -h ) 9211245024Smrg echo "$usage"; exit ;; 9341b2f0bdSmrg -- ) # Stop option processing 9441b2f0bdSmrg shift; break ;; 9541b2f0bdSmrg - ) # Use stdin as input. 9641b2f0bdSmrg break ;; 9741b2f0bdSmrg -* ) 9841b2f0bdSmrg echo "$me: invalid option $1$help" 9941b2f0bdSmrg exit 1 ;; 10041b2f0bdSmrg 10141b2f0bdSmrg *local*) 10241b2f0bdSmrg # First pass through any local machine types. 10341b2f0bdSmrg echo $1 10411245024Smrg exit ;; 10541b2f0bdSmrg 10641b2f0bdSmrg * ) 10741b2f0bdSmrg break ;; 10841b2f0bdSmrg esac 10941b2f0bdSmrgdone 11041b2f0bdSmrg 11141b2f0bdSmrgcase $# in 11241b2f0bdSmrg 0) echo "$me: missing argument$help" >&2 11341b2f0bdSmrg exit 1;; 11441b2f0bdSmrg 1) ;; 11541b2f0bdSmrg *) echo "$me: too many arguments$help" >&2 11641b2f0bdSmrg exit 1;; 11741b2f0bdSmrgesac 11841b2f0bdSmrg 11941b2f0bdSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12041b2f0bdSmrg# Here we must recognize all the valid KERNEL-OS combinations. 12141b2f0bdSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12241b2f0bdSmrgcase $maybe_os in 12311245024Smrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 12411245024Smrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 12511245024Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12641b2f0bdSmrg os=-$maybe_os 12741b2f0bdSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12841b2f0bdSmrg ;; 12941b2f0bdSmrg *) 13041b2f0bdSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13141b2f0bdSmrg if [ $basic_machine != $1 ] 13241b2f0bdSmrg then os=`echo $1 | sed 's/.*-/-/'` 13341b2f0bdSmrg else os=; fi 13441b2f0bdSmrg ;; 13541b2f0bdSmrgesac 13641b2f0bdSmrg 13741b2f0bdSmrg### Let's recognize common machines as not being operating systems so 13841b2f0bdSmrg### that things like config.sub decstation-3100 work. We also 13941b2f0bdSmrg### recognize some manufacturers as not being operating systems, so we 14041b2f0bdSmrg### can provide default operating systems below. 14141b2f0bdSmrgcase $os in 14241b2f0bdSmrg -sun*os*) 14341b2f0bdSmrg # Prevent following clause from handling this invalid input. 14441b2f0bdSmrg ;; 14541b2f0bdSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14641b2f0bdSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14741b2f0bdSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14841b2f0bdSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 14941b2f0bdSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15041b2f0bdSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15111245024Smrg -apple | -axis | -knuth | -cray) 15241b2f0bdSmrg os= 15341b2f0bdSmrg basic_machine=$1 15441b2f0bdSmrg ;; 15541b2f0bdSmrg -sim | -cisco | -oki | -wec | -winbond) 15641b2f0bdSmrg os= 15741b2f0bdSmrg basic_machine=$1 15841b2f0bdSmrg ;; 15941b2f0bdSmrg -scout) 16041b2f0bdSmrg ;; 16141b2f0bdSmrg -wrs) 16241b2f0bdSmrg os=-vxworks 16341b2f0bdSmrg basic_machine=$1 16441b2f0bdSmrg ;; 16541b2f0bdSmrg -chorusos*) 16641b2f0bdSmrg os=-chorusos 16741b2f0bdSmrg basic_machine=$1 16841b2f0bdSmrg ;; 16941b2f0bdSmrg -chorusrdb) 17041b2f0bdSmrg os=-chorusrdb 17141b2f0bdSmrg basic_machine=$1 17241b2f0bdSmrg ;; 17341b2f0bdSmrg -hiux*) 17441b2f0bdSmrg os=-hiuxwe2 17541b2f0bdSmrg ;; 17611245024Smrg -sco6) 17711245024Smrg os=-sco5v6 17811245024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 17911245024Smrg ;; 18041b2f0bdSmrg -sco5) 18141b2f0bdSmrg os=-sco3.2v5 18241b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18341b2f0bdSmrg ;; 18441b2f0bdSmrg -sco4) 18541b2f0bdSmrg os=-sco3.2v4 18641b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18741b2f0bdSmrg ;; 18841b2f0bdSmrg -sco3.2.[4-9]*) 18941b2f0bdSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19041b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19141b2f0bdSmrg ;; 19241b2f0bdSmrg -sco3.2v[4-9]*) 19341b2f0bdSmrg # Don't forget version if it is 3.2v4 or newer. 19441b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19541b2f0bdSmrg ;; 19611245024Smrg -sco5v6*) 19711245024Smrg # Don't forget version if it is 3.2v4 or newer. 19811245024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19911245024Smrg ;; 20041b2f0bdSmrg -sco*) 20141b2f0bdSmrg os=-sco3.2v2 20241b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20341b2f0bdSmrg ;; 20441b2f0bdSmrg -udk*) 20541b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20641b2f0bdSmrg ;; 20741b2f0bdSmrg -isc) 20841b2f0bdSmrg os=-isc2.2 20941b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21041b2f0bdSmrg ;; 21141b2f0bdSmrg -clix*) 21241b2f0bdSmrg basic_machine=clipper-intergraph 21341b2f0bdSmrg ;; 21441b2f0bdSmrg -isc*) 21541b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21641b2f0bdSmrg ;; 21741b2f0bdSmrg -lynx*) 21841b2f0bdSmrg os=-lynxos 21941b2f0bdSmrg ;; 22041b2f0bdSmrg -ptx*) 22141b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 22241b2f0bdSmrg ;; 22341b2f0bdSmrg -windowsnt*) 22441b2f0bdSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 22541b2f0bdSmrg ;; 22641b2f0bdSmrg -psos*) 22741b2f0bdSmrg os=-psos 22841b2f0bdSmrg ;; 22941b2f0bdSmrg -mint | -mint[0-9]*) 23041b2f0bdSmrg basic_machine=m68k-atari 23141b2f0bdSmrg os=-mint 23241b2f0bdSmrg ;; 23341b2f0bdSmrgesac 23441b2f0bdSmrg 23541b2f0bdSmrg# Decode aliases for certain CPU-COMPANY combinations. 23641b2f0bdSmrgcase $basic_machine in 23741b2f0bdSmrg # Recognize the basic CPU types without company name. 23841b2f0bdSmrg # Some are omitted here because they have special meanings below. 23941b2f0bdSmrg 1750a | 580 \ 24041b2f0bdSmrg | a29k \ 24141b2f0bdSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 24241b2f0bdSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 24311245024Smrg | am33_2.0 \ 24411245024Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 24511245024Smrg | bfin \ 24641b2f0bdSmrg | c4x | clipper \ 24741b2f0bdSmrg | d10v | d30v | dlx | dsp16xx \ 24811245024Smrg | fido | fr30 | frv \ 24941b2f0bdSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 25041b2f0bdSmrg | i370 | i860 | i960 | ia64 \ 25111245024Smrg | ip2k | iq2000 \ 25211245024Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 25311245024Smrg | maxq | mb | microblaze | mcore | mep \ 25441b2f0bdSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 25541b2f0bdSmrg | mips16 \ 25641b2f0bdSmrg | mips64 | mips64el \ 25741b2f0bdSmrg | mips64vr | mips64vrel \ 25841b2f0bdSmrg | mips64orion | mips64orionel \ 25941b2f0bdSmrg | mips64vr4100 | mips64vr4100el \ 26041b2f0bdSmrg | mips64vr4300 | mips64vr4300el \ 26141b2f0bdSmrg | mips64vr5000 | mips64vr5000el \ 26211245024Smrg | mips64vr5900 | mips64vr5900el \ 26341b2f0bdSmrg | mipsisa32 | mipsisa32el \ 26441b2f0bdSmrg | mipsisa32r2 | mipsisa32r2el \ 26541b2f0bdSmrg | mipsisa64 | mipsisa64el \ 26611245024Smrg | mipsisa64r2 | mipsisa64r2el \ 26741b2f0bdSmrg | mipsisa64sb1 | mipsisa64sb1el \ 26841b2f0bdSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 26941b2f0bdSmrg | mipstx39 | mipstx39el \ 27041b2f0bdSmrg | mn10200 | mn10300 \ 27111245024Smrg | mt \ 27241b2f0bdSmrg | msp430 \ 27311245024Smrg | nios | nios2 \ 27441b2f0bdSmrg | ns16k | ns32k \ 27511245024Smrg | or32 \ 27641b2f0bdSmrg | pdp10 | pdp11 | pj | pjl \ 27741b2f0bdSmrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 27841b2f0bdSmrg | pyramid \ 27911245024Smrg | score \ 28011245024Smrg | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 28141b2f0bdSmrg | sh64 | sh64le \ 28211245024Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 28311245024Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 28411245024Smrg | spu | strongarm \ 28541b2f0bdSmrg | tahoe | thumb | tic4x | tic80 | tron \ 28641b2f0bdSmrg | v850 | v850e \ 28741b2f0bdSmrg | we32k \ 28811245024Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 28941b2f0bdSmrg | z8k) 29041b2f0bdSmrg basic_machine=$basic_machine-unknown 29141b2f0bdSmrg ;; 29241b2f0bdSmrg m6811 | m68hc11 | m6812 | m68hc12) 29341b2f0bdSmrg # Motorola 68HC11/12. 29441b2f0bdSmrg basic_machine=$basic_machine-unknown 29541b2f0bdSmrg os=-none 29641b2f0bdSmrg ;; 29741b2f0bdSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 29841b2f0bdSmrg ;; 29911245024Smrg ms1) 30011245024Smrg basic_machine=mt-unknown 30111245024Smrg ;; 30241b2f0bdSmrg 30341b2f0bdSmrg # We use `pc' rather than `unknown' 30441b2f0bdSmrg # because (1) that's what they normally are, and 30541b2f0bdSmrg # (2) the word "unknown" tends to confuse beginning users. 30641b2f0bdSmrg i*86 | x86_64) 30741b2f0bdSmrg basic_machine=$basic_machine-pc 30841b2f0bdSmrg ;; 30941b2f0bdSmrg # Object if more than one company name word. 31041b2f0bdSmrg *-*-*) 31141b2f0bdSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 31241b2f0bdSmrg exit 1 31341b2f0bdSmrg ;; 31441b2f0bdSmrg # Recognize the basic CPU types with company name. 31541b2f0bdSmrg 580-* \ 31641b2f0bdSmrg | a29k-* \ 31741b2f0bdSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 31841b2f0bdSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 31941b2f0bdSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 32041b2f0bdSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 32111245024Smrg | avr-* | avr32-* \ 32211245024Smrg | bfin-* | bs2000-* \ 32341b2f0bdSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 32411245024Smrg | clipper-* | craynv-* | cydra-* \ 32541b2f0bdSmrg | d10v-* | d30v-* | dlx-* \ 32641b2f0bdSmrg | elxsi-* \ 32711245024Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 32841b2f0bdSmrg | h8300-* | h8500-* \ 32941b2f0bdSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 33041b2f0bdSmrg | i*86-* | i860-* | i960-* | ia64-* \ 33111245024Smrg | ip2k-* | iq2000-* \ 33211245024Smrg | m32c-* | m32r-* | m32rle-* \ 33341b2f0bdSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 33411245024Smrg | m88110-* | m88k-* | maxq-* | mcore-* \ 33541b2f0bdSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 33641b2f0bdSmrg | mips16-* \ 33741b2f0bdSmrg | mips64-* | mips64el-* \ 33841b2f0bdSmrg | mips64vr-* | mips64vrel-* \ 33941b2f0bdSmrg | mips64orion-* | mips64orionel-* \ 34041b2f0bdSmrg | mips64vr4100-* | mips64vr4100el-* \ 34141b2f0bdSmrg | mips64vr4300-* | mips64vr4300el-* \ 34241b2f0bdSmrg | mips64vr5000-* | mips64vr5000el-* \ 34311245024Smrg | mips64vr5900-* | mips64vr5900el-* \ 34441b2f0bdSmrg | mipsisa32-* | mipsisa32el-* \ 34541b2f0bdSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 34641b2f0bdSmrg | mipsisa64-* | mipsisa64el-* \ 34711245024Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 34841b2f0bdSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 34941b2f0bdSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 35041b2f0bdSmrg | mipstx39-* | mipstx39el-* \ 35111245024Smrg | mmix-* \ 35211245024Smrg | mt-* \ 35341b2f0bdSmrg | msp430-* \ 35411245024Smrg | nios-* | nios2-* \ 35511245024Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 35641b2f0bdSmrg | orion-* \ 35741b2f0bdSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 35841b2f0bdSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 35941b2f0bdSmrg | pyramid-* \ 36041b2f0bdSmrg | romp-* | rs6000-* \ 36111245024Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 36241b2f0bdSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 36311245024Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 36411245024Smrg | sparclite-* \ 36511245024Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 36641b2f0bdSmrg | tahoe-* | thumb-* \ 36741b2f0bdSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 36841b2f0bdSmrg | tron-* \ 36941b2f0bdSmrg | v850-* | v850e-* | vax-* \ 37041b2f0bdSmrg | we32k-* \ 37111245024Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 37211245024Smrg | xstormy16-* | xtensa*-* \ 37341b2f0bdSmrg | ymp-* \ 37441b2f0bdSmrg | z8k-*) 37541b2f0bdSmrg ;; 37611245024Smrg # Recognize the basic CPU types without company name, with glob match. 37711245024Smrg xtensa*) 37811245024Smrg basic_machine=$basic_machine-unknown 37911245024Smrg ;; 38041b2f0bdSmrg # Recognize the various machine names and aliases which stand 38141b2f0bdSmrg # for a CPU type and a company and sometimes even an OS. 38241b2f0bdSmrg 386bsd) 38341b2f0bdSmrg basic_machine=i386-unknown 38441b2f0bdSmrg os=-bsd 38541b2f0bdSmrg ;; 38641b2f0bdSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 38741b2f0bdSmrg basic_machine=m68000-att 38841b2f0bdSmrg ;; 38941b2f0bdSmrg 3b*) 39041b2f0bdSmrg basic_machine=we32k-att 39141b2f0bdSmrg ;; 39241b2f0bdSmrg a29khif) 39341b2f0bdSmrg basic_machine=a29k-amd 39441b2f0bdSmrg os=-udi 39541b2f0bdSmrg ;; 39611245024Smrg abacus) 39711245024Smrg basic_machine=abacus-unknown 39811245024Smrg ;; 39941b2f0bdSmrg adobe68k) 40041b2f0bdSmrg basic_machine=m68010-adobe 40141b2f0bdSmrg os=-scout 40241b2f0bdSmrg ;; 40341b2f0bdSmrg alliant | fx80) 40441b2f0bdSmrg basic_machine=fx80-alliant 40541b2f0bdSmrg ;; 40641b2f0bdSmrg altos | altos3068) 40741b2f0bdSmrg basic_machine=m68k-altos 40841b2f0bdSmrg ;; 40941b2f0bdSmrg am29k) 41041b2f0bdSmrg basic_machine=a29k-none 41141b2f0bdSmrg os=-bsd 41241b2f0bdSmrg ;; 41341b2f0bdSmrg amd64) 41441b2f0bdSmrg basic_machine=x86_64-pc 41541b2f0bdSmrg ;; 41611245024Smrg amd64-*) 41711245024Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 41811245024Smrg ;; 41941b2f0bdSmrg amdahl) 42041b2f0bdSmrg basic_machine=580-amdahl 42141b2f0bdSmrg os=-sysv 42241b2f0bdSmrg ;; 42341b2f0bdSmrg amiga | amiga-*) 42441b2f0bdSmrg basic_machine=m68k-unknown 42541b2f0bdSmrg ;; 42641b2f0bdSmrg amigaos | amigados) 42741b2f0bdSmrg basic_machine=m68k-unknown 42841b2f0bdSmrg os=-amigaos 42941b2f0bdSmrg ;; 43041b2f0bdSmrg amigaunix | amix) 43141b2f0bdSmrg basic_machine=m68k-unknown 43241b2f0bdSmrg os=-sysv4 43341b2f0bdSmrg ;; 43441b2f0bdSmrg apollo68) 43541b2f0bdSmrg basic_machine=m68k-apollo 43641b2f0bdSmrg os=-sysv 43741b2f0bdSmrg ;; 43841b2f0bdSmrg apollo68bsd) 43941b2f0bdSmrg basic_machine=m68k-apollo 44041b2f0bdSmrg os=-bsd 44141b2f0bdSmrg ;; 44241b2f0bdSmrg aux) 44341b2f0bdSmrg basic_machine=m68k-apple 44441b2f0bdSmrg os=-aux 44541b2f0bdSmrg ;; 44641b2f0bdSmrg balance) 44741b2f0bdSmrg basic_machine=ns32k-sequent 44841b2f0bdSmrg os=-dynix 44941b2f0bdSmrg ;; 45011245024Smrg blackfin) 45111245024Smrg basic_machine=bfin-unknown 45211245024Smrg os=-linux 45311245024Smrg ;; 45411245024Smrg blackfin-*) 45511245024Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 45611245024Smrg os=-linux 45711245024Smrg ;; 45841b2f0bdSmrg c90) 45941b2f0bdSmrg basic_machine=c90-cray 46041b2f0bdSmrg os=-unicos 46141b2f0bdSmrg ;; 46241b2f0bdSmrg convex-c1) 46341b2f0bdSmrg basic_machine=c1-convex 46441b2f0bdSmrg os=-bsd 46541b2f0bdSmrg ;; 46641b2f0bdSmrg convex-c2) 46741b2f0bdSmrg basic_machine=c2-convex 46841b2f0bdSmrg os=-bsd 46941b2f0bdSmrg ;; 47041b2f0bdSmrg convex-c32) 47141b2f0bdSmrg basic_machine=c32-convex 47241b2f0bdSmrg os=-bsd 47341b2f0bdSmrg ;; 47441b2f0bdSmrg convex-c34) 47541b2f0bdSmrg basic_machine=c34-convex 47641b2f0bdSmrg os=-bsd 47741b2f0bdSmrg ;; 47841b2f0bdSmrg convex-c38) 47941b2f0bdSmrg basic_machine=c38-convex 48041b2f0bdSmrg os=-bsd 48141b2f0bdSmrg ;; 48241b2f0bdSmrg cray | j90) 48341b2f0bdSmrg basic_machine=j90-cray 48441b2f0bdSmrg os=-unicos 48541b2f0bdSmrg ;; 48611245024Smrg craynv) 48711245024Smrg basic_machine=craynv-cray 48811245024Smrg os=-unicosmp 48911245024Smrg ;; 49011245024Smrg cr16) 49111245024Smrg basic_machine=cr16-unknown 49211245024Smrg os=-elf 49311245024Smrg ;; 49441b2f0bdSmrg crds | unos) 49541b2f0bdSmrg basic_machine=m68k-crds 49641b2f0bdSmrg ;; 49711245024Smrg crisv32 | crisv32-* | etraxfs*) 49811245024Smrg basic_machine=crisv32-axis 49911245024Smrg ;; 50041b2f0bdSmrg cris | cris-* | etrax*) 50141b2f0bdSmrg basic_machine=cris-axis 50241b2f0bdSmrg ;; 50311245024Smrg crx) 50411245024Smrg basic_machine=crx-unknown 50511245024Smrg os=-elf 50611245024Smrg ;; 50741b2f0bdSmrg da30 | da30-*) 50841b2f0bdSmrg basic_machine=m68k-da30 50941b2f0bdSmrg ;; 51041b2f0bdSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 51141b2f0bdSmrg basic_machine=mips-dec 51241b2f0bdSmrg ;; 51341b2f0bdSmrg decsystem10* | dec10*) 51441b2f0bdSmrg basic_machine=pdp10-dec 51541b2f0bdSmrg os=-tops10 51641b2f0bdSmrg ;; 51741b2f0bdSmrg decsystem20* | dec20*) 51841b2f0bdSmrg basic_machine=pdp10-dec 51941b2f0bdSmrg os=-tops20 52041b2f0bdSmrg ;; 52141b2f0bdSmrg delta | 3300 | motorola-3300 | motorola-delta \ 52241b2f0bdSmrg | 3300-motorola | delta-motorola) 52341b2f0bdSmrg basic_machine=m68k-motorola 52441b2f0bdSmrg ;; 52541b2f0bdSmrg delta88) 52641b2f0bdSmrg basic_machine=m88k-motorola 52741b2f0bdSmrg os=-sysv3 52841b2f0bdSmrg ;; 52911245024Smrg djgpp) 53011245024Smrg basic_machine=i586-pc 53111245024Smrg os=-msdosdjgpp 53211245024Smrg ;; 53341b2f0bdSmrg dpx20 | dpx20-*) 53441b2f0bdSmrg basic_machine=rs6000-bull 53541b2f0bdSmrg os=-bosx 53641b2f0bdSmrg ;; 53741b2f0bdSmrg dpx2* | dpx2*-bull) 53841b2f0bdSmrg basic_machine=m68k-bull 53941b2f0bdSmrg os=-sysv3 54041b2f0bdSmrg ;; 54141b2f0bdSmrg ebmon29k) 54241b2f0bdSmrg basic_machine=a29k-amd 54341b2f0bdSmrg os=-ebmon 54441b2f0bdSmrg ;; 54541b2f0bdSmrg elxsi) 54641b2f0bdSmrg basic_machine=elxsi-elxsi 54741b2f0bdSmrg os=-bsd 54841b2f0bdSmrg ;; 54941b2f0bdSmrg encore | umax | mmax) 55041b2f0bdSmrg basic_machine=ns32k-encore 55141b2f0bdSmrg ;; 55241b2f0bdSmrg es1800 | OSE68k | ose68k | ose | OSE) 55341b2f0bdSmrg basic_machine=m68k-ericsson 55441b2f0bdSmrg os=-ose 55541b2f0bdSmrg ;; 55641b2f0bdSmrg fx2800) 55741b2f0bdSmrg basic_machine=i860-alliant 55841b2f0bdSmrg ;; 55941b2f0bdSmrg genix) 56041b2f0bdSmrg basic_machine=ns32k-ns 56141b2f0bdSmrg ;; 56241b2f0bdSmrg gmicro) 56341b2f0bdSmrg basic_machine=tron-gmicro 56441b2f0bdSmrg os=-sysv 56541b2f0bdSmrg ;; 56641b2f0bdSmrg go32) 56741b2f0bdSmrg basic_machine=i386-pc 56841b2f0bdSmrg os=-go32 56941b2f0bdSmrg ;; 57041b2f0bdSmrg h3050r* | hiux*) 57141b2f0bdSmrg basic_machine=hppa1.1-hitachi 57241b2f0bdSmrg os=-hiuxwe2 57341b2f0bdSmrg ;; 57441b2f0bdSmrg h8300hms) 57541b2f0bdSmrg basic_machine=h8300-hitachi 57641b2f0bdSmrg os=-hms 57741b2f0bdSmrg ;; 57841b2f0bdSmrg h8300xray) 57941b2f0bdSmrg basic_machine=h8300-hitachi 58041b2f0bdSmrg os=-xray 58141b2f0bdSmrg ;; 58241b2f0bdSmrg h8500hms) 58341b2f0bdSmrg basic_machine=h8500-hitachi 58441b2f0bdSmrg os=-hms 58541b2f0bdSmrg ;; 58641b2f0bdSmrg harris) 58741b2f0bdSmrg basic_machine=m88k-harris 58841b2f0bdSmrg os=-sysv3 58941b2f0bdSmrg ;; 59041b2f0bdSmrg hp300-*) 59141b2f0bdSmrg basic_machine=m68k-hp 59241b2f0bdSmrg ;; 59341b2f0bdSmrg hp300bsd) 59441b2f0bdSmrg basic_machine=m68k-hp 59541b2f0bdSmrg os=-bsd 59641b2f0bdSmrg ;; 59741b2f0bdSmrg hp300hpux) 59841b2f0bdSmrg basic_machine=m68k-hp 59941b2f0bdSmrg os=-hpux 60041b2f0bdSmrg ;; 60141b2f0bdSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 60241b2f0bdSmrg basic_machine=hppa1.0-hp 60341b2f0bdSmrg ;; 60441b2f0bdSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 60541b2f0bdSmrg basic_machine=m68000-hp 60641b2f0bdSmrg ;; 60741b2f0bdSmrg hp9k3[2-9][0-9]) 60841b2f0bdSmrg basic_machine=m68k-hp 60941b2f0bdSmrg ;; 61041b2f0bdSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 61141b2f0bdSmrg basic_machine=hppa1.0-hp 61241b2f0bdSmrg ;; 61341b2f0bdSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 61441b2f0bdSmrg basic_machine=hppa1.1-hp 61541b2f0bdSmrg ;; 61641b2f0bdSmrg hp9k78[0-9] | hp78[0-9]) 61741b2f0bdSmrg # FIXME: really hppa2.0-hp 61841b2f0bdSmrg basic_machine=hppa1.1-hp 61941b2f0bdSmrg ;; 62041b2f0bdSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 62141b2f0bdSmrg # FIXME: really hppa2.0-hp 62241b2f0bdSmrg basic_machine=hppa1.1-hp 62341b2f0bdSmrg ;; 62441b2f0bdSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 62541b2f0bdSmrg basic_machine=hppa1.1-hp 62641b2f0bdSmrg ;; 62741b2f0bdSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 62841b2f0bdSmrg basic_machine=hppa1.0-hp 62941b2f0bdSmrg ;; 63041b2f0bdSmrg hppa-next) 63141b2f0bdSmrg os=-nextstep3 63241b2f0bdSmrg ;; 63341b2f0bdSmrg hppaosf) 63441b2f0bdSmrg basic_machine=hppa1.1-hp 63541b2f0bdSmrg os=-osf 63641b2f0bdSmrg ;; 63741b2f0bdSmrg hppro) 63841b2f0bdSmrg basic_machine=hppa1.1-hp 63941b2f0bdSmrg os=-proelf 64041b2f0bdSmrg ;; 64141b2f0bdSmrg i370-ibm* | ibm*) 64241b2f0bdSmrg basic_machine=i370-ibm 64341b2f0bdSmrg ;; 64441b2f0bdSmrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 64541b2f0bdSmrg i*86v32) 64641b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 64741b2f0bdSmrg os=-sysv32 64841b2f0bdSmrg ;; 64941b2f0bdSmrg i*86v4*) 65041b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 65141b2f0bdSmrg os=-sysv4 65241b2f0bdSmrg ;; 65341b2f0bdSmrg i*86v) 65441b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 65541b2f0bdSmrg os=-sysv 65641b2f0bdSmrg ;; 65741b2f0bdSmrg i*86sol2) 65841b2f0bdSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 65941b2f0bdSmrg os=-solaris2 66041b2f0bdSmrg ;; 66141b2f0bdSmrg i386mach) 66241b2f0bdSmrg basic_machine=i386-mach 66341b2f0bdSmrg os=-mach 66441b2f0bdSmrg ;; 66541b2f0bdSmrg i386-vsta | vsta) 66641b2f0bdSmrg basic_machine=i386-unknown 66741b2f0bdSmrg os=-vsta 66841b2f0bdSmrg ;; 66941b2f0bdSmrg iris | iris4d) 67041b2f0bdSmrg basic_machine=mips-sgi 67141b2f0bdSmrg case $os in 67241b2f0bdSmrg -irix*) 67341b2f0bdSmrg ;; 67441b2f0bdSmrg *) 67541b2f0bdSmrg os=-irix4 67641b2f0bdSmrg ;; 67741b2f0bdSmrg esac 67841b2f0bdSmrg ;; 67941b2f0bdSmrg isi68 | isi) 68041b2f0bdSmrg basic_machine=m68k-isi 68141b2f0bdSmrg os=-sysv 68241b2f0bdSmrg ;; 68311245024Smrg m68knommu) 68411245024Smrg basic_machine=m68k-unknown 68511245024Smrg os=-linux 68611245024Smrg ;; 68711245024Smrg m68knommu-*) 68811245024Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 68911245024Smrg os=-linux 69011245024Smrg ;; 69141b2f0bdSmrg m88k-omron*) 69241b2f0bdSmrg basic_machine=m88k-omron 69341b2f0bdSmrg ;; 69441b2f0bdSmrg magnum | m3230) 69541b2f0bdSmrg basic_machine=mips-mips 69641b2f0bdSmrg os=-sysv 69741b2f0bdSmrg ;; 69841b2f0bdSmrg merlin) 69941b2f0bdSmrg basic_machine=ns32k-utek 70041b2f0bdSmrg os=-sysv 70141b2f0bdSmrg ;; 70241b2f0bdSmrg mingw32) 70341b2f0bdSmrg basic_machine=i386-pc 70441b2f0bdSmrg os=-mingw32 70541b2f0bdSmrg ;; 70611245024Smrg mingw32ce) 70711245024Smrg basic_machine=arm-unknown 70811245024Smrg os=-mingw32ce 70911245024Smrg ;; 71041b2f0bdSmrg miniframe) 71141b2f0bdSmrg basic_machine=m68000-convergent 71241b2f0bdSmrg ;; 71341b2f0bdSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 71441b2f0bdSmrg basic_machine=m68k-atari 71541b2f0bdSmrg os=-mint 71641b2f0bdSmrg ;; 71741b2f0bdSmrg mips3*-*) 71841b2f0bdSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 71941b2f0bdSmrg ;; 72041b2f0bdSmrg mips3*) 72141b2f0bdSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 72241b2f0bdSmrg ;; 72341b2f0bdSmrg monitor) 72441b2f0bdSmrg basic_machine=m68k-rom68k 72541b2f0bdSmrg os=-coff 72641b2f0bdSmrg ;; 72741b2f0bdSmrg morphos) 72841b2f0bdSmrg basic_machine=powerpc-unknown 72941b2f0bdSmrg os=-morphos 73041b2f0bdSmrg ;; 73141b2f0bdSmrg msdos) 73241b2f0bdSmrg basic_machine=i386-pc 73341b2f0bdSmrg os=-msdos 73441b2f0bdSmrg ;; 73511245024Smrg ms1-*) 73611245024Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 73711245024Smrg ;; 73841b2f0bdSmrg mvs) 73941b2f0bdSmrg basic_machine=i370-ibm 74041b2f0bdSmrg os=-mvs 74141b2f0bdSmrg ;; 74241b2f0bdSmrg ncr3000) 74341b2f0bdSmrg basic_machine=i486-ncr 74441b2f0bdSmrg os=-sysv4 74541b2f0bdSmrg ;; 74641b2f0bdSmrg netbsd386) 74741b2f0bdSmrg basic_machine=i386-unknown 74841b2f0bdSmrg os=-netbsd 74941b2f0bdSmrg ;; 75041b2f0bdSmrg netwinder) 75141b2f0bdSmrg basic_machine=armv4l-rebel 75241b2f0bdSmrg os=-linux 75341b2f0bdSmrg ;; 75441b2f0bdSmrg news | news700 | news800 | news900) 75541b2f0bdSmrg basic_machine=m68k-sony 75641b2f0bdSmrg os=-newsos 75741b2f0bdSmrg ;; 75841b2f0bdSmrg news1000) 75941b2f0bdSmrg basic_machine=m68030-sony 76041b2f0bdSmrg os=-newsos 76141b2f0bdSmrg ;; 76241b2f0bdSmrg news-3600 | risc-news) 76341b2f0bdSmrg basic_machine=mips-sony 76441b2f0bdSmrg os=-newsos 76541b2f0bdSmrg ;; 76641b2f0bdSmrg necv70) 76741b2f0bdSmrg basic_machine=v70-nec 76841b2f0bdSmrg os=-sysv 76941b2f0bdSmrg ;; 77041b2f0bdSmrg next | m*-next ) 77141b2f0bdSmrg basic_machine=m68k-next 77241b2f0bdSmrg case $os in 77341b2f0bdSmrg -nextstep* ) 77441b2f0bdSmrg ;; 77541b2f0bdSmrg -ns2*) 77641b2f0bdSmrg os=-nextstep2 77741b2f0bdSmrg ;; 77841b2f0bdSmrg *) 77941b2f0bdSmrg os=-nextstep3 78041b2f0bdSmrg ;; 78141b2f0bdSmrg esac 78241b2f0bdSmrg ;; 78341b2f0bdSmrg nh3000) 78441b2f0bdSmrg basic_machine=m68k-harris 78541b2f0bdSmrg os=-cxux 78641b2f0bdSmrg ;; 78741b2f0bdSmrg nh[45]000) 78841b2f0bdSmrg basic_machine=m88k-harris 78941b2f0bdSmrg os=-cxux 79041b2f0bdSmrg ;; 79141b2f0bdSmrg nindy960) 79241b2f0bdSmrg basic_machine=i960-intel 79341b2f0bdSmrg os=-nindy 79441b2f0bdSmrg ;; 79541b2f0bdSmrg mon960) 79641b2f0bdSmrg basic_machine=i960-intel 79741b2f0bdSmrg os=-mon960 79841b2f0bdSmrg ;; 79941b2f0bdSmrg nonstopux) 80041b2f0bdSmrg basic_machine=mips-compaq 80141b2f0bdSmrg os=-nonstopux 80241b2f0bdSmrg ;; 80341b2f0bdSmrg np1) 80441b2f0bdSmrg basic_machine=np1-gould 80541b2f0bdSmrg ;; 80641b2f0bdSmrg nsr-tandem) 80741b2f0bdSmrg basic_machine=nsr-tandem 80841b2f0bdSmrg ;; 80941b2f0bdSmrg op50n-* | op60c-*) 81041b2f0bdSmrg basic_machine=hppa1.1-oki 81141b2f0bdSmrg os=-proelf 81241b2f0bdSmrg ;; 81311245024Smrg openrisc | openrisc-*) 81441b2f0bdSmrg basic_machine=or32-unknown 81511245024Smrg ;; 81611245024Smrg os400) 81711245024Smrg basic_machine=powerpc-ibm 81811245024Smrg os=-os400 81941b2f0bdSmrg ;; 82041b2f0bdSmrg OSE68000 | ose68000) 82141b2f0bdSmrg basic_machine=m68000-ericsson 82241b2f0bdSmrg os=-ose 82341b2f0bdSmrg ;; 82441b2f0bdSmrg os68k) 82541b2f0bdSmrg basic_machine=m68k-none 82641b2f0bdSmrg os=-os68k 82741b2f0bdSmrg ;; 82841b2f0bdSmrg pa-hitachi) 82941b2f0bdSmrg basic_machine=hppa1.1-hitachi 83041b2f0bdSmrg os=-hiuxwe2 83141b2f0bdSmrg ;; 83241b2f0bdSmrg paragon) 83341b2f0bdSmrg basic_machine=i860-intel 83441b2f0bdSmrg os=-osf 83541b2f0bdSmrg ;; 83611245024Smrg parisc) 83711245024Smrg basic_machine=hppa-unknown 83811245024Smrg os=-linux 83911245024Smrg ;; 84011245024Smrg parisc-*) 84111245024Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 84211245024Smrg os=-linux 84311245024Smrg ;; 84441b2f0bdSmrg pbd) 84541b2f0bdSmrg basic_machine=sparc-tti 84641b2f0bdSmrg ;; 84741b2f0bdSmrg pbb) 84841b2f0bdSmrg basic_machine=m68k-tti 84941b2f0bdSmrg ;; 85041b2f0bdSmrg pc532 | pc532-*) 85141b2f0bdSmrg basic_machine=ns32k-pc532 85241b2f0bdSmrg ;; 85311245024Smrg pc98) 85411245024Smrg basic_machine=i386-pc 85511245024Smrg ;; 85611245024Smrg pc98-*) 85711245024Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 85811245024Smrg ;; 85941b2f0bdSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 86041b2f0bdSmrg basic_machine=i586-pc 86141b2f0bdSmrg ;; 86241b2f0bdSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 86341b2f0bdSmrg basic_machine=i686-pc 86441b2f0bdSmrg ;; 86541b2f0bdSmrg pentiumii | pentium2 | pentiumiii | pentium3) 86641b2f0bdSmrg basic_machine=i686-pc 86741b2f0bdSmrg ;; 86841b2f0bdSmrg pentium4) 86941b2f0bdSmrg basic_machine=i786-pc 87041b2f0bdSmrg ;; 87141b2f0bdSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 87241b2f0bdSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 87341b2f0bdSmrg ;; 87441b2f0bdSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 87541b2f0bdSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 87641b2f0bdSmrg ;; 87741b2f0bdSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 87841b2f0bdSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 87941b2f0bdSmrg ;; 88041b2f0bdSmrg pentium4-*) 88141b2f0bdSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 88241b2f0bdSmrg ;; 88341b2f0bdSmrg pn) 88441b2f0bdSmrg basic_machine=pn-gould 88541b2f0bdSmrg ;; 88641b2f0bdSmrg power) basic_machine=power-ibm 88741b2f0bdSmrg ;; 88841b2f0bdSmrg ppc) basic_machine=powerpc-unknown 88941b2f0bdSmrg ;; 89041b2f0bdSmrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 89141b2f0bdSmrg ;; 89241b2f0bdSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 89341b2f0bdSmrg basic_machine=powerpcle-unknown 89441b2f0bdSmrg ;; 89541b2f0bdSmrg ppcle-* | powerpclittle-*) 89641b2f0bdSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 89741b2f0bdSmrg ;; 89841b2f0bdSmrg ppc64) basic_machine=powerpc64-unknown 89941b2f0bdSmrg ;; 90041b2f0bdSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 90141b2f0bdSmrg ;; 90241b2f0bdSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 90341b2f0bdSmrg basic_machine=powerpc64le-unknown 90441b2f0bdSmrg ;; 90541b2f0bdSmrg ppc64le-* | powerpc64little-*) 90641b2f0bdSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 90741b2f0bdSmrg ;; 90841b2f0bdSmrg ps2) 90941b2f0bdSmrg basic_machine=i386-ibm 91041b2f0bdSmrg ;; 91141b2f0bdSmrg pw32) 91241b2f0bdSmrg basic_machine=i586-unknown 91341b2f0bdSmrg os=-pw32 91441b2f0bdSmrg ;; 91511245024Smrg rdos) 91611245024Smrg basic_machine=i386-pc 91711245024Smrg os=-rdos 91811245024Smrg ;; 91941b2f0bdSmrg rom68k) 92041b2f0bdSmrg basic_machine=m68k-rom68k 92141b2f0bdSmrg os=-coff 92241b2f0bdSmrg ;; 92341b2f0bdSmrg rm[46]00) 92441b2f0bdSmrg basic_machine=mips-siemens 92541b2f0bdSmrg ;; 92641b2f0bdSmrg rtpc | rtpc-*) 92741b2f0bdSmrg basic_machine=romp-ibm 92841b2f0bdSmrg ;; 92911245024Smrg s390 | s390-*) 93011245024Smrg basic_machine=s390-ibm 93111245024Smrg ;; 93211245024Smrg s390x | s390x-*) 93311245024Smrg basic_machine=s390x-ibm 93411245024Smrg ;; 93541b2f0bdSmrg sa29200) 93641b2f0bdSmrg basic_machine=a29k-amd 93741b2f0bdSmrg os=-udi 93841b2f0bdSmrg ;; 93941b2f0bdSmrg sb1) 94041b2f0bdSmrg basic_machine=mipsisa64sb1-unknown 94141b2f0bdSmrg ;; 94241b2f0bdSmrg sb1el) 94341b2f0bdSmrg basic_machine=mipsisa64sb1el-unknown 94441b2f0bdSmrg ;; 94511245024Smrg sde) 94611245024Smrg basic_machine=mipsisa32-sde 94711245024Smrg os=-elf 94811245024Smrg ;; 94941b2f0bdSmrg sei) 95041b2f0bdSmrg basic_machine=mips-sei 95141b2f0bdSmrg os=-seiux 95241b2f0bdSmrg ;; 95341b2f0bdSmrg sequent) 95441b2f0bdSmrg basic_machine=i386-sequent 95541b2f0bdSmrg ;; 95641b2f0bdSmrg sh) 95741b2f0bdSmrg basic_machine=sh-hitachi 95841b2f0bdSmrg os=-hms 95941b2f0bdSmrg ;; 96011245024Smrg sh5el) 96111245024Smrg basic_machine=sh5le-unknown 96211245024Smrg ;; 96341b2f0bdSmrg sh64) 96441b2f0bdSmrg basic_machine=sh64-unknown 96541b2f0bdSmrg ;; 96641b2f0bdSmrg sparclite-wrs | simso-wrs) 96741b2f0bdSmrg basic_machine=sparclite-wrs 96841b2f0bdSmrg os=-vxworks 96941b2f0bdSmrg ;; 97041b2f0bdSmrg sps7) 97141b2f0bdSmrg basic_machine=m68k-bull 97241b2f0bdSmrg os=-sysv2 97341b2f0bdSmrg ;; 97441b2f0bdSmrg spur) 97541b2f0bdSmrg basic_machine=spur-unknown 97641b2f0bdSmrg ;; 97741b2f0bdSmrg st2000) 97841b2f0bdSmrg basic_machine=m68k-tandem 97941b2f0bdSmrg ;; 98041b2f0bdSmrg stratus) 98141b2f0bdSmrg basic_machine=i860-stratus 98241b2f0bdSmrg os=-sysv4 98341b2f0bdSmrg ;; 98441b2f0bdSmrg sun2) 98541b2f0bdSmrg basic_machine=m68000-sun 98641b2f0bdSmrg ;; 98741b2f0bdSmrg sun2os3) 98841b2f0bdSmrg basic_machine=m68000-sun 98941b2f0bdSmrg os=-sunos3 99041b2f0bdSmrg ;; 99141b2f0bdSmrg sun2os4) 99241b2f0bdSmrg basic_machine=m68000-sun 99341b2f0bdSmrg os=-sunos4 99441b2f0bdSmrg ;; 99541b2f0bdSmrg sun3os3) 99641b2f0bdSmrg basic_machine=m68k-sun 99741b2f0bdSmrg os=-sunos3 99841b2f0bdSmrg ;; 99941b2f0bdSmrg sun3os4) 100041b2f0bdSmrg basic_machine=m68k-sun 100141b2f0bdSmrg os=-sunos4 100241b2f0bdSmrg ;; 100341b2f0bdSmrg sun4os3) 100441b2f0bdSmrg basic_machine=sparc-sun 100541b2f0bdSmrg os=-sunos3 100641b2f0bdSmrg ;; 100741b2f0bdSmrg sun4os4) 100841b2f0bdSmrg basic_machine=sparc-sun 100941b2f0bdSmrg os=-sunos4 101041b2f0bdSmrg ;; 101141b2f0bdSmrg sun4sol2) 101241b2f0bdSmrg basic_machine=sparc-sun 101341b2f0bdSmrg os=-solaris2 101441b2f0bdSmrg ;; 101541b2f0bdSmrg sun3 | sun3-*) 101641b2f0bdSmrg basic_machine=m68k-sun 101741b2f0bdSmrg ;; 101841b2f0bdSmrg sun4) 101941b2f0bdSmrg basic_machine=sparc-sun 102041b2f0bdSmrg ;; 102141b2f0bdSmrg sun386 | sun386i | roadrunner) 102241b2f0bdSmrg basic_machine=i386-sun 102341b2f0bdSmrg ;; 102441b2f0bdSmrg sv1) 102541b2f0bdSmrg basic_machine=sv1-cray 102641b2f0bdSmrg os=-unicos 102741b2f0bdSmrg ;; 102841b2f0bdSmrg symmetry) 102941b2f0bdSmrg basic_machine=i386-sequent 103041b2f0bdSmrg os=-dynix 103141b2f0bdSmrg ;; 103241b2f0bdSmrg t3e) 103341b2f0bdSmrg basic_machine=alphaev5-cray 103441b2f0bdSmrg os=-unicos 103541b2f0bdSmrg ;; 103641b2f0bdSmrg t90) 103741b2f0bdSmrg basic_machine=t90-cray 103841b2f0bdSmrg os=-unicos 103941b2f0bdSmrg ;; 104041b2f0bdSmrg tic54x | c54x*) 104141b2f0bdSmrg basic_machine=tic54x-unknown 104241b2f0bdSmrg os=-coff 104341b2f0bdSmrg ;; 104441b2f0bdSmrg tic55x | c55x*) 104541b2f0bdSmrg basic_machine=tic55x-unknown 104641b2f0bdSmrg os=-coff 104741b2f0bdSmrg ;; 104841b2f0bdSmrg tic6x | c6x*) 104941b2f0bdSmrg basic_machine=tic6x-unknown 105041b2f0bdSmrg os=-coff 105141b2f0bdSmrg ;; 105211245024Smrg tile*) 105311245024Smrg basic_machine=tile-unknown 105411245024Smrg os=-linux-gnu 105511245024Smrg ;; 105641b2f0bdSmrg tx39) 105741b2f0bdSmrg basic_machine=mipstx39-unknown 105841b2f0bdSmrg ;; 105941b2f0bdSmrg tx39el) 106041b2f0bdSmrg basic_machine=mipstx39el-unknown 106141b2f0bdSmrg ;; 106241b2f0bdSmrg toad1) 106341b2f0bdSmrg basic_machine=pdp10-xkl 106441b2f0bdSmrg os=-tops20 106541b2f0bdSmrg ;; 106641b2f0bdSmrg tower | tower-32) 106741b2f0bdSmrg basic_machine=m68k-ncr 106841b2f0bdSmrg ;; 106911245024Smrg tpf) 107011245024Smrg basic_machine=s390x-ibm 107111245024Smrg os=-tpf 107211245024Smrg ;; 107341b2f0bdSmrg udi29k) 107441b2f0bdSmrg basic_machine=a29k-amd 107541b2f0bdSmrg os=-udi 107641b2f0bdSmrg ;; 107741b2f0bdSmrg ultra3) 107841b2f0bdSmrg basic_machine=a29k-nyu 107941b2f0bdSmrg os=-sym1 108041b2f0bdSmrg ;; 108141b2f0bdSmrg v810 | necv810) 108241b2f0bdSmrg basic_machine=v810-nec 108341b2f0bdSmrg os=-none 108441b2f0bdSmrg ;; 108541b2f0bdSmrg vaxv) 108641b2f0bdSmrg basic_machine=vax-dec 108741b2f0bdSmrg os=-sysv 108841b2f0bdSmrg ;; 108941b2f0bdSmrg vms) 109041b2f0bdSmrg basic_machine=vax-dec 109141b2f0bdSmrg os=-vms 109241b2f0bdSmrg ;; 109341b2f0bdSmrg vpp*|vx|vx-*) 109441b2f0bdSmrg basic_machine=f301-fujitsu 109541b2f0bdSmrg ;; 109641b2f0bdSmrg vxworks960) 109741b2f0bdSmrg basic_machine=i960-wrs 109841b2f0bdSmrg os=-vxworks 109941b2f0bdSmrg ;; 110041b2f0bdSmrg vxworks68) 110141b2f0bdSmrg basic_machine=m68k-wrs 110241b2f0bdSmrg os=-vxworks 110341b2f0bdSmrg ;; 110441b2f0bdSmrg vxworks29k) 110541b2f0bdSmrg basic_machine=a29k-wrs 110641b2f0bdSmrg os=-vxworks 110741b2f0bdSmrg ;; 110841b2f0bdSmrg w65*) 110941b2f0bdSmrg basic_machine=w65-wdc 111041b2f0bdSmrg os=-none 111141b2f0bdSmrg ;; 111241b2f0bdSmrg w89k-*) 111341b2f0bdSmrg basic_machine=hppa1.1-winbond 111441b2f0bdSmrg os=-proelf 111541b2f0bdSmrg ;; 111611245024Smrg xbox) 111711245024Smrg basic_machine=i686-pc 111811245024Smrg os=-mingw32 111911245024Smrg ;; 112041b2f0bdSmrg xps | xps100) 112141b2f0bdSmrg basic_machine=xps100-honeywell 112241b2f0bdSmrg ;; 112341b2f0bdSmrg ymp) 112441b2f0bdSmrg basic_machine=ymp-cray 112541b2f0bdSmrg os=-unicos 112641b2f0bdSmrg ;; 112741b2f0bdSmrg z8k-*-coff) 112841b2f0bdSmrg basic_machine=z8k-unknown 112941b2f0bdSmrg os=-sim 113041b2f0bdSmrg ;; 113141b2f0bdSmrg none) 113241b2f0bdSmrg basic_machine=none-none 113341b2f0bdSmrg os=-none 113441b2f0bdSmrg ;; 113541b2f0bdSmrg 113641b2f0bdSmrg# Here we handle the default manufacturer of certain CPU types. It is in 113741b2f0bdSmrg# some cases the only manufacturer, in others, it is the most popular. 113841b2f0bdSmrg w89k) 113941b2f0bdSmrg basic_machine=hppa1.1-winbond 114041b2f0bdSmrg ;; 114141b2f0bdSmrg op50n) 114241b2f0bdSmrg basic_machine=hppa1.1-oki 114341b2f0bdSmrg ;; 114441b2f0bdSmrg op60c) 114541b2f0bdSmrg basic_machine=hppa1.1-oki 114641b2f0bdSmrg ;; 114741b2f0bdSmrg romp) 114841b2f0bdSmrg basic_machine=romp-ibm 114941b2f0bdSmrg ;; 115011245024Smrg mmix) 115111245024Smrg basic_machine=mmix-knuth 115211245024Smrg ;; 115341b2f0bdSmrg rs6000) 115441b2f0bdSmrg basic_machine=rs6000-ibm 115541b2f0bdSmrg ;; 115641b2f0bdSmrg vax) 115741b2f0bdSmrg basic_machine=vax-dec 115841b2f0bdSmrg ;; 115941b2f0bdSmrg pdp10) 116041b2f0bdSmrg # there are many clones, so DEC is not a safe bet 116141b2f0bdSmrg basic_machine=pdp10-unknown 116241b2f0bdSmrg ;; 116341b2f0bdSmrg pdp11) 116441b2f0bdSmrg basic_machine=pdp11-dec 116541b2f0bdSmrg ;; 116641b2f0bdSmrg we32k) 116741b2f0bdSmrg basic_machine=we32k-att 116841b2f0bdSmrg ;; 116911245024Smrg sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) 117041b2f0bdSmrg basic_machine=sh-unknown 117141b2f0bdSmrg ;; 117211245024Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 117341b2f0bdSmrg basic_machine=sparc-sun 117441b2f0bdSmrg ;; 117541b2f0bdSmrg cydra) 117641b2f0bdSmrg basic_machine=cydra-cydrome 117741b2f0bdSmrg ;; 117841b2f0bdSmrg orion) 117941b2f0bdSmrg basic_machine=orion-highlevel 118041b2f0bdSmrg ;; 118141b2f0bdSmrg orion105) 118241b2f0bdSmrg basic_machine=clipper-highlevel 118341b2f0bdSmrg ;; 118441b2f0bdSmrg mac | mpw | mac-mpw) 118541b2f0bdSmrg basic_machine=m68k-apple 118641b2f0bdSmrg ;; 118741b2f0bdSmrg pmac | pmac-mpw) 118841b2f0bdSmrg basic_machine=powerpc-apple 118941b2f0bdSmrg ;; 119041b2f0bdSmrg *-unknown) 119141b2f0bdSmrg # Make sure to match an already-canonicalized machine name. 119241b2f0bdSmrg ;; 119341b2f0bdSmrg *) 119441b2f0bdSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 119541b2f0bdSmrg exit 1 119641b2f0bdSmrg ;; 119741b2f0bdSmrgesac 119841b2f0bdSmrg 119941b2f0bdSmrg# Here we canonicalize certain aliases for manufacturers. 120041b2f0bdSmrgcase $basic_machine in 120141b2f0bdSmrg *-digital*) 120241b2f0bdSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 120341b2f0bdSmrg ;; 120441b2f0bdSmrg *-commodore*) 120541b2f0bdSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 120641b2f0bdSmrg ;; 120741b2f0bdSmrg *) 120841b2f0bdSmrg ;; 120941b2f0bdSmrgesac 121041b2f0bdSmrg 121141b2f0bdSmrg# Decode manufacturer-specific aliases for certain operating systems. 121241b2f0bdSmrg 121341b2f0bdSmrgif [ x"$os" != x"" ] 121441b2f0bdSmrgthen 121541b2f0bdSmrgcase $os in 121641b2f0bdSmrg # First match some system type aliases 121741b2f0bdSmrg # that might get confused with valid system types. 121841b2f0bdSmrg # -solaris* is a basic system type, with this one exception. 121941b2f0bdSmrg -solaris1 | -solaris1.*) 122041b2f0bdSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 122141b2f0bdSmrg ;; 122241b2f0bdSmrg -solaris) 122341b2f0bdSmrg os=-solaris2 122441b2f0bdSmrg ;; 122541b2f0bdSmrg -svr4*) 122641b2f0bdSmrg os=-sysv4 122741b2f0bdSmrg ;; 122841b2f0bdSmrg -unixware*) 122941b2f0bdSmrg os=-sysv4.2uw 123041b2f0bdSmrg ;; 123141b2f0bdSmrg -gnu/linux*) 123241b2f0bdSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 123341b2f0bdSmrg ;; 123441b2f0bdSmrg # First accept the basic system types. 123541b2f0bdSmrg # The portable systems comes first. 123641b2f0bdSmrg # Each alternative MUST END IN A *, to match a version number. 123741b2f0bdSmrg # -sysv* is not here because it comes later, after sysvr4. 123841b2f0bdSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 123941b2f0bdSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 124041b2f0bdSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 124141b2f0bdSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 124241b2f0bdSmrg | -aos* \ 124341b2f0bdSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 124441b2f0bdSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 124511245024Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 124611245024Smrg | -openbsd* | -solidbsd* \ 124711245024Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 124811245024Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 124941b2f0bdSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 125041b2f0bdSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 125141b2f0bdSmrg | -chorusos* | -chorusrdb* \ 125241b2f0bdSmrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 125311245024Smrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 125411245024Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 125541b2f0bdSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 125641b2f0bdSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 125741b2f0bdSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 125841b2f0bdSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 125941b2f0bdSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 126011245024Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 126111245024Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) 126241b2f0bdSmrg # Remember, each alternative MUST END IN *, to match a version number. 126341b2f0bdSmrg ;; 126441b2f0bdSmrg -qnx*) 126541b2f0bdSmrg case $basic_machine in 126641b2f0bdSmrg x86-* | i*86-*) 126741b2f0bdSmrg ;; 126841b2f0bdSmrg *) 126941b2f0bdSmrg os=-nto$os 127041b2f0bdSmrg ;; 127141b2f0bdSmrg esac 127241b2f0bdSmrg ;; 127341b2f0bdSmrg -nto-qnx*) 127441b2f0bdSmrg ;; 127541b2f0bdSmrg -nto*) 127641b2f0bdSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 127741b2f0bdSmrg ;; 127841b2f0bdSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 127911245024Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 128041b2f0bdSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 128141b2f0bdSmrg ;; 128241b2f0bdSmrg -mac*) 128341b2f0bdSmrg os=`echo $os | sed -e 's|mac|macos|'` 128441b2f0bdSmrg ;; 128511245024Smrg -linux-dietlibc) 128611245024Smrg os=-linux-dietlibc 128711245024Smrg ;; 128841b2f0bdSmrg -linux*) 128941b2f0bdSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 129041b2f0bdSmrg ;; 129141b2f0bdSmrg -sunos5*) 129241b2f0bdSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 129341b2f0bdSmrg ;; 129441b2f0bdSmrg -sunos6*) 129541b2f0bdSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 129641b2f0bdSmrg ;; 129741b2f0bdSmrg -opened*) 129841b2f0bdSmrg os=-openedition 129941b2f0bdSmrg ;; 130011245024Smrg -os400*) 130111245024Smrg os=-os400 130211245024Smrg ;; 130341b2f0bdSmrg -wince*) 130441b2f0bdSmrg os=-wince 130541b2f0bdSmrg ;; 130641b2f0bdSmrg -osfrose*) 130741b2f0bdSmrg os=-osfrose 130841b2f0bdSmrg ;; 130941b2f0bdSmrg -osf*) 131041b2f0bdSmrg os=-osf 131141b2f0bdSmrg ;; 131241b2f0bdSmrg -utek*) 131341b2f0bdSmrg os=-bsd 131441b2f0bdSmrg ;; 131541b2f0bdSmrg -dynix*) 131641b2f0bdSmrg os=-bsd 131741b2f0bdSmrg ;; 131841b2f0bdSmrg -acis*) 131941b2f0bdSmrg os=-aos 132041b2f0bdSmrg ;; 132141b2f0bdSmrg -atheos*) 132241b2f0bdSmrg os=-atheos 132341b2f0bdSmrg ;; 132411245024Smrg -syllable*) 132511245024Smrg os=-syllable 132611245024Smrg ;; 132741b2f0bdSmrg -386bsd) 132841b2f0bdSmrg os=-bsd 132941b2f0bdSmrg ;; 133041b2f0bdSmrg -ctix* | -uts*) 133141b2f0bdSmrg os=-sysv 133241b2f0bdSmrg ;; 133341b2f0bdSmrg -nova*) 133441b2f0bdSmrg os=-rtmk-nova 133541b2f0bdSmrg ;; 133641b2f0bdSmrg -ns2 ) 133741b2f0bdSmrg os=-nextstep2 133841b2f0bdSmrg ;; 133941b2f0bdSmrg -nsk*) 134041b2f0bdSmrg os=-nsk 134141b2f0bdSmrg ;; 134241b2f0bdSmrg # Preserve the version number of sinix5. 134341b2f0bdSmrg -sinix5.*) 134441b2f0bdSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 134541b2f0bdSmrg ;; 134641b2f0bdSmrg -sinix*) 134741b2f0bdSmrg os=-sysv4 134841b2f0bdSmrg ;; 134911245024Smrg -tpf*) 135011245024Smrg os=-tpf 135111245024Smrg ;; 135241b2f0bdSmrg -triton*) 135341b2f0bdSmrg os=-sysv3 135441b2f0bdSmrg ;; 135541b2f0bdSmrg -oss*) 135641b2f0bdSmrg os=-sysv3 135741b2f0bdSmrg ;; 135841b2f0bdSmrg -svr4) 135941b2f0bdSmrg os=-sysv4 136041b2f0bdSmrg ;; 136141b2f0bdSmrg -svr3) 136241b2f0bdSmrg os=-sysv3 136341b2f0bdSmrg ;; 136441b2f0bdSmrg -sysvr4) 136541b2f0bdSmrg os=-sysv4 136641b2f0bdSmrg ;; 136741b2f0bdSmrg # This must come after -sysvr4. 136841b2f0bdSmrg -sysv*) 136941b2f0bdSmrg ;; 137041b2f0bdSmrg -ose*) 137141b2f0bdSmrg os=-ose 137241b2f0bdSmrg ;; 137341b2f0bdSmrg -es1800*) 137441b2f0bdSmrg os=-ose 137541b2f0bdSmrg ;; 137641b2f0bdSmrg -xenix) 137741b2f0bdSmrg os=-xenix 137841b2f0bdSmrg ;; 137941b2f0bdSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 138041b2f0bdSmrg os=-mint 138141b2f0bdSmrg ;; 138241b2f0bdSmrg -aros*) 138341b2f0bdSmrg os=-aros 138441b2f0bdSmrg ;; 138541b2f0bdSmrg -kaos*) 138641b2f0bdSmrg os=-kaos 138741b2f0bdSmrg ;; 138811245024Smrg -zvmoe) 138911245024Smrg os=-zvmoe 139011245024Smrg ;; 139141b2f0bdSmrg -none) 139241b2f0bdSmrg ;; 139341b2f0bdSmrg *) 139441b2f0bdSmrg # Get rid of the `-' at the beginning of $os. 139541b2f0bdSmrg os=`echo $os | sed 's/[^-]*-//'` 139641b2f0bdSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 139741b2f0bdSmrg exit 1 139841b2f0bdSmrg ;; 139941b2f0bdSmrgesac 140041b2f0bdSmrgelse 140141b2f0bdSmrg 140241b2f0bdSmrg# Here we handle the default operating systems that come with various machines. 140341b2f0bdSmrg# The value should be what the vendor currently ships out the door with their 140441b2f0bdSmrg# machine or put another way, the most popular os provided with the machine. 140541b2f0bdSmrg 140641b2f0bdSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 140741b2f0bdSmrg# "-sun"), then you have to tell the case statement up towards the top 140841b2f0bdSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 140941b2f0bdSmrg# will signal an error saying that MANUFACTURER isn't an operating 141041b2f0bdSmrg# system, and we'll never get to this point. 141141b2f0bdSmrg 141241b2f0bdSmrgcase $basic_machine in 141311245024Smrg score-*) 141411245024Smrg os=-elf 141511245024Smrg ;; 141611245024Smrg spu-*) 141711245024Smrg os=-elf 141811245024Smrg ;; 141941b2f0bdSmrg *-acorn) 142041b2f0bdSmrg os=-riscix1.2 142141b2f0bdSmrg ;; 142241b2f0bdSmrg arm*-rebel) 142341b2f0bdSmrg os=-linux 142441b2f0bdSmrg ;; 142541b2f0bdSmrg arm*-semi) 142641b2f0bdSmrg os=-aout 142741b2f0bdSmrg ;; 142811245024Smrg c4x-* | tic4x-*) 142911245024Smrg os=-coff 143041b2f0bdSmrg ;; 143141b2f0bdSmrg # This must come before the *-dec entry. 143241b2f0bdSmrg pdp10-*) 143341b2f0bdSmrg os=-tops20 143441b2f0bdSmrg ;; 143541b2f0bdSmrg pdp11-*) 143641b2f0bdSmrg os=-none 143741b2f0bdSmrg ;; 143841b2f0bdSmrg *-dec | vax-*) 143941b2f0bdSmrg os=-ultrix4.2 144041b2f0bdSmrg ;; 144141b2f0bdSmrg m68*-apollo) 144241b2f0bdSmrg os=-domain 144341b2f0bdSmrg ;; 144441b2f0bdSmrg i386-sun) 144541b2f0bdSmrg os=-sunos4.0.2 144641b2f0bdSmrg ;; 144741b2f0bdSmrg m68000-sun) 144841b2f0bdSmrg os=-sunos3 144941b2f0bdSmrg # This also exists in the configure program, but was not the 145041b2f0bdSmrg # default. 145141b2f0bdSmrg # os=-sunos4 145241b2f0bdSmrg ;; 145341b2f0bdSmrg m68*-cisco) 145441b2f0bdSmrg os=-aout 145541b2f0bdSmrg ;; 145611245024Smrg mep-*) 145711245024Smrg os=-elf 145811245024Smrg ;; 145941b2f0bdSmrg mips*-cisco) 146041b2f0bdSmrg os=-elf 146141b2f0bdSmrg ;; 146241b2f0bdSmrg mips*-*) 146341b2f0bdSmrg os=-elf 146441b2f0bdSmrg ;; 146541b2f0bdSmrg or32-*) 146641b2f0bdSmrg os=-coff 146741b2f0bdSmrg ;; 146841b2f0bdSmrg *-tti) # must be before sparc entry or we get the wrong os. 146941b2f0bdSmrg os=-sysv3 147041b2f0bdSmrg ;; 147141b2f0bdSmrg sparc-* | *-sun) 147241b2f0bdSmrg os=-sunos4.1.1 147341b2f0bdSmrg ;; 147441b2f0bdSmrg *-be) 147541b2f0bdSmrg os=-beos 147641b2f0bdSmrg ;; 147711245024Smrg *-haiku) 147811245024Smrg os=-haiku 147911245024Smrg ;; 148041b2f0bdSmrg *-ibm) 148141b2f0bdSmrg os=-aix 148241b2f0bdSmrg ;; 148311245024Smrg *-knuth) 148411245024Smrg os=-mmixware 148511245024Smrg ;; 148641b2f0bdSmrg *-wec) 148741b2f0bdSmrg os=-proelf 148841b2f0bdSmrg ;; 148941b2f0bdSmrg *-winbond) 149041b2f0bdSmrg os=-proelf 149141b2f0bdSmrg ;; 149241b2f0bdSmrg *-oki) 149341b2f0bdSmrg os=-proelf 149441b2f0bdSmrg ;; 149541b2f0bdSmrg *-hp) 149641b2f0bdSmrg os=-hpux 149741b2f0bdSmrg ;; 149841b2f0bdSmrg *-hitachi) 149941b2f0bdSmrg os=-hiux 150041b2f0bdSmrg ;; 150141b2f0bdSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 150241b2f0bdSmrg os=-sysv 150341b2f0bdSmrg ;; 150441b2f0bdSmrg *-cbm) 150541b2f0bdSmrg os=-amigaos 150641b2f0bdSmrg ;; 150741b2f0bdSmrg *-dg) 150841b2f0bdSmrg os=-dgux 150941b2f0bdSmrg ;; 151041b2f0bdSmrg *-dolphin) 151141b2f0bdSmrg os=-sysv3 151241b2f0bdSmrg ;; 151341b2f0bdSmrg m68k-ccur) 151441b2f0bdSmrg os=-rtu 151541b2f0bdSmrg ;; 151641b2f0bdSmrg m88k-omron*) 151741b2f0bdSmrg os=-luna 151841b2f0bdSmrg ;; 151941b2f0bdSmrg *-next ) 152041b2f0bdSmrg os=-nextstep 152141b2f0bdSmrg ;; 152241b2f0bdSmrg *-sequent) 152341b2f0bdSmrg os=-ptx 152441b2f0bdSmrg ;; 152541b2f0bdSmrg *-crds) 152641b2f0bdSmrg os=-unos 152741b2f0bdSmrg ;; 152841b2f0bdSmrg *-ns) 152941b2f0bdSmrg os=-genix 153041b2f0bdSmrg ;; 153141b2f0bdSmrg i370-*) 153241b2f0bdSmrg os=-mvs 153341b2f0bdSmrg ;; 153441b2f0bdSmrg *-next) 153541b2f0bdSmrg os=-nextstep3 153641b2f0bdSmrg ;; 153741b2f0bdSmrg *-gould) 153841b2f0bdSmrg os=-sysv 153941b2f0bdSmrg ;; 154041b2f0bdSmrg *-highlevel) 154141b2f0bdSmrg os=-bsd 154241b2f0bdSmrg ;; 154341b2f0bdSmrg *-encore) 154441b2f0bdSmrg os=-bsd 154541b2f0bdSmrg ;; 154641b2f0bdSmrg *-sgi) 154741b2f0bdSmrg os=-irix 154841b2f0bdSmrg ;; 154941b2f0bdSmrg *-siemens) 155041b2f0bdSmrg os=-sysv4 155141b2f0bdSmrg ;; 155241b2f0bdSmrg *-masscomp) 155341b2f0bdSmrg os=-rtu 155441b2f0bdSmrg ;; 155541b2f0bdSmrg f30[01]-fujitsu | f700-fujitsu) 155641b2f0bdSmrg os=-uxpv 155741b2f0bdSmrg ;; 155841b2f0bdSmrg *-rom68k) 155941b2f0bdSmrg os=-coff 156041b2f0bdSmrg ;; 156141b2f0bdSmrg *-*bug) 156241b2f0bdSmrg os=-coff 156341b2f0bdSmrg ;; 156441b2f0bdSmrg *-apple) 156541b2f0bdSmrg os=-macos 156641b2f0bdSmrg ;; 156741b2f0bdSmrg *-atari*) 156841b2f0bdSmrg os=-mint 156941b2f0bdSmrg ;; 157041b2f0bdSmrg *) 157141b2f0bdSmrg os=-none 157241b2f0bdSmrg ;; 157341b2f0bdSmrgesac 157441b2f0bdSmrgfi 157541b2f0bdSmrg 157641b2f0bdSmrg# Here we handle the case where we know the os, and the CPU type, but not the 157741b2f0bdSmrg# manufacturer. We pick the logical manufacturer. 157841b2f0bdSmrgvendor=unknown 157941b2f0bdSmrgcase $basic_machine in 158041b2f0bdSmrg *-unknown) 158141b2f0bdSmrg case $os in 158241b2f0bdSmrg -riscix*) 158341b2f0bdSmrg vendor=acorn 158441b2f0bdSmrg ;; 158541b2f0bdSmrg -sunos*) 158641b2f0bdSmrg vendor=sun 158741b2f0bdSmrg ;; 158841b2f0bdSmrg -aix*) 158941b2f0bdSmrg vendor=ibm 159041b2f0bdSmrg ;; 159141b2f0bdSmrg -beos*) 159241b2f0bdSmrg vendor=be 159341b2f0bdSmrg ;; 159441b2f0bdSmrg -hpux*) 159541b2f0bdSmrg vendor=hp 159641b2f0bdSmrg ;; 159741b2f0bdSmrg -mpeix*) 159841b2f0bdSmrg vendor=hp 159941b2f0bdSmrg ;; 160041b2f0bdSmrg -hiux*) 160141b2f0bdSmrg vendor=hitachi 160241b2f0bdSmrg ;; 160341b2f0bdSmrg -unos*) 160441b2f0bdSmrg vendor=crds 160541b2f0bdSmrg ;; 160641b2f0bdSmrg -dgux*) 160741b2f0bdSmrg vendor=dg 160841b2f0bdSmrg ;; 160941b2f0bdSmrg -luna*) 161041b2f0bdSmrg vendor=omron 161141b2f0bdSmrg ;; 161241b2f0bdSmrg -genix*) 161341b2f0bdSmrg vendor=ns 161441b2f0bdSmrg ;; 161541b2f0bdSmrg -mvs* | -opened*) 161641b2f0bdSmrg vendor=ibm 161741b2f0bdSmrg ;; 161811245024Smrg -os400*) 161911245024Smrg vendor=ibm 162011245024Smrg ;; 162141b2f0bdSmrg -ptx*) 162241b2f0bdSmrg vendor=sequent 162341b2f0bdSmrg ;; 162411245024Smrg -tpf*) 162511245024Smrg vendor=ibm 162611245024Smrg ;; 162741b2f0bdSmrg -vxsim* | -vxworks* | -windiss*) 162841b2f0bdSmrg vendor=wrs 162941b2f0bdSmrg ;; 163041b2f0bdSmrg -aux*) 163141b2f0bdSmrg vendor=apple 163241b2f0bdSmrg ;; 163341b2f0bdSmrg -hms*) 163441b2f0bdSmrg vendor=hitachi 163541b2f0bdSmrg ;; 163641b2f0bdSmrg -mpw* | -macos*) 163741b2f0bdSmrg vendor=apple 163841b2f0bdSmrg ;; 163941b2f0bdSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 164041b2f0bdSmrg vendor=atari 164141b2f0bdSmrg ;; 164241b2f0bdSmrg -vos*) 164341b2f0bdSmrg vendor=stratus 164441b2f0bdSmrg ;; 164541b2f0bdSmrg esac 164641b2f0bdSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 164741b2f0bdSmrg ;; 164841b2f0bdSmrgesac 164941b2f0bdSmrg 165041b2f0bdSmrgecho $basic_machine$os 165111245024Smrgexit 165241b2f0bdSmrg 165341b2f0bdSmrg# Local variables: 165441b2f0bdSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 165541b2f0bdSmrg# time-stamp-start: "timestamp='" 165641b2f0bdSmrg# time-stamp-format: "%:y-%02m-%02d" 165741b2f0bdSmrg# time-stamp-end: "'" 165841b2f0bdSmrg# End: 1659