config.sub revision 166124
150276Speter#! /bin/sh 276726Speter# Configuration validation subroutine script. 397049Speter# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4166124Srafan# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, 5166124Srafan# Inc. 662449Speter 7166124Srafantimestamp='2006-08-14' 862449Speter 950276Speter# This file is (in principle) common to ALL GNU software. 1050276Speter# The presence of a machine in this file suggests that SOME GNU software 1150276Speter# can handle that machine. It does not imply ALL GNU software can. 1250276Speter# 1350276Speter# This file is free software; you can redistribute it and/or modify 1450276Speter# it under the terms of the GNU General Public License as published by 1550276Speter# the Free Software Foundation; either version 2 of the License, or 1650276Speter# (at your option) any later version. 1750276Speter# 1850276Speter# This program is distributed in the hope that it will be useful, 1950276Speter# but WITHOUT ANY WARRANTY; without even the implied warranty of 2050276Speter# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2150276Speter# GNU General Public License for more details. 2250276Speter# 2350276Speter# You should have received a copy of the GNU General Public License 2450276Speter# along with this program; if not, write to the Free Software 25166124Srafan# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26166124Srafan# 02110-1301, USA. 27166124Srafan# 2850276Speter# As a special exception to the GNU General Public License, if you 2950276Speter# distribute this file as part of a program that contains a 3050276Speter# configuration script generated by Autoconf, you may include it under 3150276Speter# the same distribution terms that you use for the rest of that program. 3250276Speter 33166124Srafan 3497049Speter# Please send patches to <config-patches@gnu.org>. Submit a context 3597049Speter# diff and a properly formatted ChangeLog entry. 3662449Speter# 3750276Speter# Configuration subroutine to validate and canonicalize a configuration type. 3850276Speter# Supply the specified configuration type as an argument. 3950276Speter# If it is invalid, we print an error message on stderr and exit with code 1. 4050276Speter# Otherwise, we print the canonical config type on stdout and succeed. 4150276Speter 4250276Speter# This file is supposed to be the same for all GNU packages 4350276Speter# and recognize all the CPU types, system types and aliases 4450276Speter# that are meaningful with *any* GNU software. 4550276Speter# Each package is responsible for reporting which valid configurations 4650276Speter# it does not support. The user should be able to distinguish 4750276Speter# a failure to support a valid configuration from a meaningless 4850276Speter# configuration. 4950276Speter 5050276Speter# The goal of this file is to map all the various variations of a given 5150276Speter# machine specification into a single specification in the form: 5250276Speter# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 5350276Speter# or in some cases, the newer four-part form: 5450276Speter# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5550276Speter# It is wrong to echo any other type of specification. 5650276Speter 5762449Speterme=`echo "$0" | sed -e 's,.*/,,'` 5850276Speter 5962449Speterusage="\ 6062449SpeterUsage: $0 [OPTION] CPU-MFR-OPSYS 6162449Speter $0 [OPTION] ALIAS 6262449Speter 6362449SpeterCanonicalize a configuration name. 6462449Speter 6562449SpeterOperation modes: 6676726Speter -h, --help print this help, then exit 6776726Speter -t, --time-stamp print date of last modification, then exit 6876726Speter -v, --version print version number, then exit 6962449Speter 7076726SpeterReport bugs and patches to <config-patches@gnu.org>." 7176726Speter 7276726Speterversion="\ 7376726SpeterGNU config.sub ($timestamp) 7476726Speter 75166124SrafanCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 7676726SpeterFree Software Foundation, Inc. 7776726Speter 7876726SpeterThis is free software; see the source for copying conditions. There is NO 7976726Speterwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 8076726Speter 8162449Speterhelp=" 8262449SpeterTry \`$me --help' for more information." 8362449Speter 8462449Speter# Parse command line 8562449Speterwhile test $# -gt 0 ; do 8676726Speter case $1 in 8776726Speter --time-stamp | --time* | -t ) 88166124Srafan echo "$timestamp" ; exit ;; 8976726Speter --version | -v ) 90166124Srafan echo "$version" ; exit ;; 9162449Speter --help | --h* | -h ) 92166124Srafan echo "$usage"; exit ;; 9362449Speter -- ) # Stop option processing 9462449Speter shift; break ;; 9562449Speter - ) # Use stdin as input. 9662449Speter break ;; 9762449Speter -* ) 9876726Speter echo "$me: invalid option $1$help" 9962449Speter exit 1 ;; 10062449Speter 10162449Speter *local*) 10262449Speter # First pass through any local machine types. 10362449Speter echo $1 104166124Srafan exit ;; 10562449Speter 10662449Speter * ) 10762449Speter break ;; 10862449Speter esac 10962449Speterdone 11062449Speter 11162449Spetercase $# in 11262449Speter 0) echo "$me: missing argument$help" >&2 11362449Speter exit 1;; 11462449Speter 1) ;; 11562449Speter *) echo "$me: too many arguments$help" >&2 11662449Speter exit 1;; 11750276Speteresac 11850276Speter 11950276Speter# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 12050276Speter# Here we must recognize all the valid KERNEL-OS combinations. 12150276Spetermaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 12250276Spetercase $maybe_os in 123166124Srafan nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 124166124Srafan uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 125166124Srafan storm-chaos* | os2-emx* | rtmk-nova*) 12650276Speter os=-$maybe_os 12750276Speter basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12850276Speter ;; 12950276Speter *) 13050276Speter basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13150276Speter if [ $basic_machine != $1 ] 13250276Speter then os=`echo $1 | sed 's/.*-/-/'` 13350276Speter else os=; fi 13450276Speter ;; 13550276Speteresac 13650276Speter 13750276Speter### Let's recognize common machines as not being operating systems so 13850276Speter### that things like config.sub decstation-3100 work. We also 13950276Speter### recognize some manufacturers as not being operating systems, so we 14050276Speter### can provide default operating systems below. 14150276Spetercase $os in 14250276Speter -sun*os*) 14350276Speter # Prevent following clause from handling this invalid input. 14450276Speter ;; 14550276Speter -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14650276Speter -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14750276Speter -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14850276Speter -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 14950276Speter -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15050276Speter -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 151166124Srafan -apple | -axis | -knuth | -cray) 15250276Speter os= 15350276Speter basic_machine=$1 15450276Speter ;; 15562449Speter -sim | -cisco | -oki | -wec | -winbond) 15662449Speter os= 15762449Speter basic_machine=$1 15862449Speter ;; 15962449Speter -scout) 16062449Speter ;; 16162449Speter -wrs) 16262449Speter os=-vxworks 16362449Speter basic_machine=$1 16462449Speter ;; 16597049Speter -chorusos*) 16697049Speter os=-chorusos 16797049Speter basic_machine=$1 16897049Speter ;; 16997049Speter -chorusrdb) 17097049Speter os=-chorusrdb 17197049Speter basic_machine=$1 17297049Speter ;; 17350276Speter -hiux*) 17450276Speter os=-hiuxwe2 17550276Speter ;; 176166124Srafan -sco6) 177166124Srafan os=-sco5v6 178166124Srafan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 179166124Srafan ;; 18050276Speter -sco5) 18162449Speter os=-sco3.2v5 18250276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18350276Speter ;; 18450276Speter -sco4) 18550276Speter os=-sco3.2v4 18650276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18750276Speter ;; 18850276Speter -sco3.2.[4-9]*) 18950276Speter os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19050276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19150276Speter ;; 19250276Speter -sco3.2v[4-9]*) 19350276Speter # Don't forget version if it is 3.2v4 or newer. 19450276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19550276Speter ;; 196166124Srafan -sco5v6*) 197166124Srafan # Don't forget version if it is 3.2v4 or newer. 198166124Srafan basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 199166124Srafan ;; 20050276Speter -sco*) 20150276Speter os=-sco3.2v2 20250276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20350276Speter ;; 20462449Speter -udk*) 20562449Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20662449Speter ;; 20750276Speter -isc) 20850276Speter os=-isc2.2 20950276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21050276Speter ;; 21150276Speter -clix*) 21250276Speter basic_machine=clipper-intergraph 21350276Speter ;; 21450276Speter -isc*) 21550276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21650276Speter ;; 21750276Speter -lynx*) 21850276Speter os=-lynxos 21950276Speter ;; 22050276Speter -ptx*) 22150276Speter basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 22250276Speter ;; 22350276Speter -windowsnt*) 22450276Speter os=`echo $os | sed -e 's/windowsnt/winnt/'` 22550276Speter ;; 22650276Speter -psos*) 22750276Speter os=-psos 22850276Speter ;; 22962449Speter -mint | -mint[0-9]*) 23062449Speter basic_machine=m68k-atari 23162449Speter os=-mint 23262449Speter ;; 23350276Speteresac 23450276Speter 23550276Speter# Decode aliases for certain CPU-COMPANY combinations. 23650276Spetercase $basic_machine in 23750276Speter # Recognize the basic CPU types without company name. 23850276Speter # Some are omitted here because they have special meanings below. 23997049Speter 1750a | 580 \ 24097049Speter | a29k \ 24197049Speter | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 24297049Speter | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 243166124Srafan | am33_2.0 \ 244166124Srafan | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 245166124Srafan | bfin \ 24697049Speter | c4x | clipper \ 247166124Srafan | d10v | d30v | dlx | dsp16xx \ 248166124Srafan | fr30 | frv \ 24997049Speter | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 25097049Speter | i370 | i860 | i960 | ia64 \ 251166124Srafan | ip2k | iq2000 \ 252166124Srafan | m32c | m32r | m32rle | m68000 | m68k | m88k \ 253166124Srafan | maxq | mb | microblaze | mcore \ 254166124Srafan | mips | mipsbe | mipseb | mipsel | mipsle \ 255166124Srafan | mips16 \ 256166124Srafan | mips64 | mips64el \ 257166124Srafan | mips64vr | mips64vrel \ 258166124Srafan | mips64orion | mips64orionel \ 259166124Srafan | mips64vr4100 | mips64vr4100el \ 260166124Srafan | mips64vr4300 | mips64vr4300el \ 261166124Srafan | mips64vr5000 | mips64vr5000el \ 262166124Srafan | mips64vr5900 | mips64vr5900el \ 263166124Srafan | mipsisa32 | mipsisa32el \ 264166124Srafan | mipsisa32r2 | mipsisa32r2el \ 265166124Srafan | mipsisa64 | mipsisa64el \ 266166124Srafan | mipsisa64r2 | mipsisa64r2el \ 267166124Srafan | mipsisa64sb1 | mipsisa64sb1el \ 268166124Srafan | mipsisa64sr71k | mipsisa64sr71kel \ 269166124Srafan | mipstx39 | mipstx39el \ 27097049Speter | mn10200 | mn10300 \ 271166124Srafan | mt \ 272166124Srafan | msp430 \ 273166124Srafan | nios | nios2 \ 27497049Speter | ns16k | ns32k \ 275166124Srafan | or32 \ 27697049Speter | pdp10 | pdp11 | pj | pjl \ 27797049Speter | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 27897049Speter | pyramid \ 279166124Srafan | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 280166124Srafan | sh64 | sh64le \ 281166124Srafan | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 282166124Srafan | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 283166124Srafan | spu | strongarm \ 284166124Srafan | tahoe | thumb | tic4x | tic80 | tron \ 28597049Speter | v850 | v850e \ 28697049Speter | we32k \ 287166124Srafan | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 28897049Speter | z8k) 28950276Speter basic_machine=$basic_machine-unknown 29050276Speter ;; 29166963Speter m6811 | m68hc11 | m6812 | m68hc12) 29266963Speter # Motorola 68HC11/12. 29366963Speter basic_machine=$basic_machine-unknown 29466963Speter os=-none 29566963Speter ;; 29697049Speter m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 29762449Speter ;; 298166124Srafan ms1) 299166124Srafan basic_machine=mt-unknown 300166124Srafan ;; 30162449Speter 30250276Speter # We use `pc' rather than `unknown' 30350276Speter # because (1) that's what they normally are, and 30450276Speter # (2) the word "unknown" tends to confuse beginning users. 30597049Speter i*86 | x86_64) 30650276Speter basic_machine=$basic_machine-pc 30750276Speter ;; 30850276Speter # Object if more than one company name word. 30950276Speter *-*-*) 31050276Speter echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 31150276Speter exit 1 31250276Speter ;; 31350276Speter # Recognize the basic CPU types with company name. 31497049Speter 580-* \ 31597049Speter | a29k-* \ 31697049Speter | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 31797049Speter | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 31897049Speter | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 319166124Srafan | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 320166124Srafan | avr-* | avr32-* \ 321166124Srafan | bfin-* | bs2000-* \ 322166124Srafan | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 323166124Srafan | clipper-* | craynv-* | cydra-* \ 324166124Srafan | d10v-* | d30v-* | dlx-* \ 32597049Speter | elxsi-* \ 326166124Srafan | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ 32797049Speter | h8300-* | h8500-* \ 32897049Speter | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 32997049Speter | i*86-* | i860-* | i960-* | ia64-* \ 330166124Srafan | ip2k-* | iq2000-* \ 331166124Srafan | m32c-* | m32r-* | m32rle-* \ 33297049Speter | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 333166124Srafan | m88110-* | m88k-* | maxq-* | mcore-* \ 334166124Srafan | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 335166124Srafan | mips16-* \ 336166124Srafan | mips64-* | mips64el-* \ 337166124Srafan | mips64vr-* | mips64vrel-* \ 338166124Srafan | mips64orion-* | mips64orionel-* \ 339166124Srafan | mips64vr4100-* | mips64vr4100el-* \ 340166124Srafan | mips64vr4300-* | mips64vr4300el-* \ 341166124Srafan | mips64vr5000-* | mips64vr5000el-* \ 342166124Srafan | mips64vr5900-* | mips64vr5900el-* \ 343166124Srafan | mipsisa32-* | mipsisa32el-* \ 344166124Srafan | mipsisa32r2-* | mipsisa32r2el-* \ 345166124Srafan | mipsisa64-* | mipsisa64el-* \ 346166124Srafan | mipsisa64r2-* | mipsisa64r2el-* \ 347166124Srafan | mipsisa64sb1-* | mipsisa64sb1el-* \ 348166124Srafan | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 349166124Srafan | mipstx39-* | mipstx39el-* \ 350166124Srafan | mmix-* \ 351166124Srafan | mt-* \ 352166124Srafan | msp430-* \ 353166124Srafan | nios-* | nios2-* \ 35497049Speter | none-* | np1-* | ns16k-* | ns32k-* \ 35597049Speter | orion-* \ 35697049Speter | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 35797049Speter | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 35897049Speter | pyramid-* \ 35997049Speter | romp-* | rs6000-* \ 360166124Srafan | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 361166124Srafan | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 362166124Srafan | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 363166124Srafan | sparclite-* \ 364166124Srafan | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 365166124Srafan | tahoe-* | thumb-* \ 366166124Srafan | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 367166124Srafan | tron-* \ 36897049Speter | v850-* | v850e-* | vax-* \ 36997049Speter | we32k-* \ 370166124Srafan | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 371166124Srafan | xstormy16-* | xtensa-* \ 37297049Speter | ymp-* \ 37397049Speter | z8k-*) 37450276Speter ;; 37550276Speter # Recognize the various machine names and aliases which stand 37650276Speter # for a CPU type and a company and sometimes even an OS. 37762449Speter 386bsd) 37862449Speter basic_machine=i386-unknown 37962449Speter os=-bsd 38062449Speter ;; 38150276Speter 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 38250276Speter basic_machine=m68000-att 38350276Speter ;; 38450276Speter 3b*) 38550276Speter basic_machine=we32k-att 38650276Speter ;; 38762449Speter a29khif) 38862449Speter basic_machine=a29k-amd 38962449Speter os=-udi 39062449Speter ;; 391166124Srafan abacus) 392166124Srafan basic_machine=abacus-unknown 393166124Srafan ;; 39462449Speter adobe68k) 39562449Speter basic_machine=m68010-adobe 39662449Speter os=-scout 39762449Speter ;; 39850276Speter alliant | fx80) 39950276Speter basic_machine=fx80-alliant 40050276Speter ;; 40150276Speter altos | altos3068) 40250276Speter basic_machine=m68k-altos 40350276Speter ;; 40450276Speter am29k) 40550276Speter basic_machine=a29k-none 40650276Speter os=-bsd 40750276Speter ;; 408166124Srafan amd64) 409166124Srafan basic_machine=x86_64-pc 410166124Srafan ;; 411166124Srafan amd64-*) 412166124Srafan basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 413166124Srafan ;; 41450276Speter amdahl) 41550276Speter basic_machine=580-amdahl 41650276Speter os=-sysv 41750276Speter ;; 41850276Speter amiga | amiga-*) 41976726Speter basic_machine=m68k-unknown 42050276Speter ;; 42150276Speter amigaos | amigados) 42276726Speter basic_machine=m68k-unknown 42350276Speter os=-amigaos 42450276Speter ;; 42550276Speter amigaunix | amix) 42676726Speter basic_machine=m68k-unknown 42750276Speter os=-sysv4 42850276Speter ;; 42950276Speter apollo68) 43050276Speter basic_machine=m68k-apollo 43150276Speter os=-sysv 43250276Speter ;; 43362449Speter apollo68bsd) 43462449Speter basic_machine=m68k-apollo 43562449Speter os=-bsd 43662449Speter ;; 43750276Speter aux) 43850276Speter basic_machine=m68k-apple 43950276Speter os=-aux 44050276Speter ;; 44150276Speter balance) 44250276Speter basic_machine=ns32k-sequent 44350276Speter os=-dynix 44450276Speter ;; 44597049Speter c90) 44697049Speter basic_machine=c90-cray 44797049Speter os=-unicos 44897049Speter ;; 44950276Speter convex-c1) 45050276Speter basic_machine=c1-convex 45150276Speter os=-bsd 45250276Speter ;; 45350276Speter convex-c2) 45450276Speter basic_machine=c2-convex 45550276Speter os=-bsd 45650276Speter ;; 45750276Speter convex-c32) 45850276Speter basic_machine=c32-convex 45950276Speter os=-bsd 46050276Speter ;; 46150276Speter convex-c34) 46250276Speter basic_machine=c34-convex 46350276Speter os=-bsd 46450276Speter ;; 46550276Speter convex-c38) 46650276Speter basic_machine=c38-convex 46750276Speter os=-bsd 46850276Speter ;; 46997049Speter cray | j90) 47097049Speter basic_machine=j90-cray 47150276Speter os=-unicos 47250276Speter ;; 473166124Srafan craynv) 474166124Srafan basic_machine=craynv-cray 475166124Srafan os=-unicosmp 476166124Srafan ;; 477166124Srafan cr16c) 478166124Srafan basic_machine=cr16c-unknown 479166124Srafan os=-elf 480166124Srafan ;; 48150276Speter crds | unos) 48250276Speter basic_machine=m68k-crds 48350276Speter ;; 484166124Srafan crisv32 | crisv32-* | etraxfs*) 485166124Srafan basic_machine=crisv32-axis 486166124Srafan ;; 48762449Speter cris | cris-* | etrax*) 48862449Speter basic_machine=cris-axis 48962449Speter ;; 490166124Srafan crx) 491166124Srafan basic_machine=crx-unknown 492166124Srafan os=-elf 493166124Srafan ;; 49450276Speter da30 | da30-*) 49550276Speter basic_machine=m68k-da30 49650276Speter ;; 49750276Speter decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 49850276Speter basic_machine=mips-dec 49950276Speter ;; 50097049Speter decsystem10* | dec10*) 50197049Speter basic_machine=pdp10-dec 50297049Speter os=-tops10 50397049Speter ;; 50497049Speter decsystem20* | dec20*) 50597049Speter basic_machine=pdp10-dec 50697049Speter os=-tops20 50797049Speter ;; 50850276Speter delta | 3300 | motorola-3300 | motorola-delta \ 50950276Speter | 3300-motorola | delta-motorola) 51050276Speter basic_machine=m68k-motorola 51150276Speter ;; 51250276Speter delta88) 51350276Speter basic_machine=m88k-motorola 51450276Speter os=-sysv3 51550276Speter ;; 516166124Srafan djgpp) 517166124Srafan basic_machine=i586-pc 518166124Srafan os=-msdosdjgpp 519166124Srafan ;; 52050276Speter dpx20 | dpx20-*) 52150276Speter basic_machine=rs6000-bull 52250276Speter os=-bosx 52350276Speter ;; 52450276Speter dpx2* | dpx2*-bull) 52550276Speter basic_machine=m68k-bull 52650276Speter os=-sysv3 52750276Speter ;; 52850276Speter ebmon29k) 52950276Speter basic_machine=a29k-amd 53050276Speter os=-ebmon 53150276Speter ;; 53250276Speter elxsi) 53350276Speter basic_machine=elxsi-elxsi 53450276Speter os=-bsd 53550276Speter ;; 53650276Speter encore | umax | mmax) 53750276Speter basic_machine=ns32k-encore 53850276Speter ;; 53962449Speter es1800 | OSE68k | ose68k | ose | OSE) 54062449Speter basic_machine=m68k-ericsson 54162449Speter os=-ose 54262449Speter ;; 54350276Speter fx2800) 54450276Speter basic_machine=i860-alliant 54550276Speter ;; 54650276Speter genix) 54750276Speter basic_machine=ns32k-ns 54850276Speter ;; 54950276Speter gmicro) 55050276Speter basic_machine=tron-gmicro 55150276Speter os=-sysv 55250276Speter ;; 55376726Speter go32) 55476726Speter basic_machine=i386-pc 55576726Speter os=-go32 55676726Speter ;; 55750276Speter h3050r* | hiux*) 55850276Speter basic_machine=hppa1.1-hitachi 55950276Speter os=-hiuxwe2 56050276Speter ;; 56150276Speter h8300hms) 56250276Speter basic_machine=h8300-hitachi 56350276Speter os=-hms 56450276Speter ;; 56562449Speter h8300xray) 56662449Speter basic_machine=h8300-hitachi 56762449Speter os=-xray 56862449Speter ;; 56962449Speter h8500hms) 57062449Speter basic_machine=h8500-hitachi 57162449Speter os=-hms 57262449Speter ;; 57350276Speter harris) 57450276Speter basic_machine=m88k-harris 57550276Speter os=-sysv3 57650276Speter ;; 57750276Speter hp300-*) 57850276Speter basic_machine=m68k-hp 57950276Speter ;; 58050276Speter hp300bsd) 58150276Speter basic_machine=m68k-hp 58250276Speter os=-bsd 58350276Speter ;; 58450276Speter hp300hpux) 58550276Speter basic_machine=m68k-hp 58650276Speter os=-hpux 58750276Speter ;; 58862449Speter hp3k9[0-9][0-9] | hp9[0-9][0-9]) 58962449Speter basic_machine=hppa1.0-hp 59062449Speter ;; 59150276Speter hp9k2[0-9][0-9] | hp9k31[0-9]) 59250276Speter basic_machine=m68000-hp 59350276Speter ;; 59450276Speter hp9k3[2-9][0-9]) 59550276Speter basic_machine=m68k-hp 59650276Speter ;; 59762449Speter hp9k6[0-9][0-9] | hp6[0-9][0-9]) 59862449Speter basic_machine=hppa1.0-hp 59962449Speter ;; 60062449Speter hp9k7[0-79][0-9] | hp7[0-79][0-9]) 60150276Speter basic_machine=hppa1.1-hp 60250276Speter ;; 60362449Speter hp9k78[0-9] | hp78[0-9]) 60462449Speter # FIXME: really hppa2.0-hp 60562449Speter basic_machine=hppa1.1-hp 60662449Speter ;; 60762449Speter hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 60862449Speter # FIXME: really hppa2.0-hp 60962449Speter basic_machine=hppa1.1-hp 61062449Speter ;; 61162449Speter hp9k8[0-9][13679] | hp8[0-9][13679]) 61262449Speter basic_machine=hppa1.1-hp 61362449Speter ;; 61450276Speter hp9k8[0-9][0-9] | hp8[0-9][0-9]) 61550276Speter basic_machine=hppa1.0-hp 61650276Speter ;; 61750276Speter hppa-next) 61850276Speter os=-nextstep3 61950276Speter ;; 62062449Speter hppaosf) 62162449Speter basic_machine=hppa1.1-hp 62262449Speter os=-osf 62362449Speter ;; 62462449Speter hppro) 62562449Speter basic_machine=hppa1.1-hp 62662449Speter os=-proelf 62762449Speter ;; 62850276Speter i370-ibm* | ibm*) 62950276Speter basic_machine=i370-ibm 63050276Speter ;; 63150276Speter# I'm not sure what "Sysv32" means. Should this be sysv3.2? 63297049Speter i*86v32) 63350276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 63450276Speter os=-sysv32 63550276Speter ;; 63697049Speter i*86v4*) 63750276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 63850276Speter os=-sysv4 63950276Speter ;; 64097049Speter i*86v) 64150276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 64250276Speter os=-sysv 64350276Speter ;; 64497049Speter i*86sol2) 64550276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 64650276Speter os=-solaris2 64750276Speter ;; 64862449Speter i386mach) 64962449Speter basic_machine=i386-mach 65062449Speter os=-mach 65162449Speter ;; 65262449Speter i386-vsta | vsta) 65362449Speter basic_machine=i386-unknown 65462449Speter os=-vsta 65562449Speter ;; 65650276Speter iris | iris4d) 65750276Speter basic_machine=mips-sgi 65850276Speter case $os in 65950276Speter -irix*) 66050276Speter ;; 66150276Speter *) 66250276Speter os=-irix4 66350276Speter ;; 66450276Speter esac 66550276Speter ;; 66650276Speter isi68 | isi) 66750276Speter basic_machine=m68k-isi 66850276Speter os=-sysv 66950276Speter ;; 67050276Speter m88k-omron*) 67150276Speter basic_machine=m88k-omron 67250276Speter ;; 67350276Speter magnum | m3230) 67450276Speter basic_machine=mips-mips 67550276Speter os=-sysv 67650276Speter ;; 67750276Speter merlin) 67850276Speter basic_machine=ns32k-utek 67950276Speter os=-sysv 68050276Speter ;; 68176726Speter mingw32) 68276726Speter basic_machine=i386-pc 68376726Speter os=-mingw32 68476726Speter ;; 68550276Speter miniframe) 68650276Speter basic_machine=m68000-convergent 68750276Speter ;; 68862449Speter *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 68962449Speter basic_machine=m68k-atari 69062449Speter os=-mint 69162449Speter ;; 69250276Speter mips3*-*) 69350276Speter basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 69450276Speter ;; 69550276Speter mips3*) 69650276Speter basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 69750276Speter ;; 69862449Speter monitor) 69962449Speter basic_machine=m68k-rom68k 70062449Speter os=-coff 70162449Speter ;; 70297049Speter morphos) 70397049Speter basic_machine=powerpc-unknown 70497049Speter os=-morphos 70597049Speter ;; 70662449Speter msdos) 70776726Speter basic_machine=i386-pc 70862449Speter os=-msdos 70962449Speter ;; 710166124Srafan ms1-*) 711166124Srafan basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 712166124Srafan ;; 71362449Speter mvs) 71462449Speter basic_machine=i370-ibm 71562449Speter os=-mvs 71662449Speter ;; 71750276Speter ncr3000) 71850276Speter basic_machine=i486-ncr 71950276Speter os=-sysv4 72050276Speter ;; 72162449Speter netbsd386) 72262449Speter basic_machine=i386-unknown 72362449Speter os=-netbsd 72462449Speter ;; 72562449Speter netwinder) 72662449Speter basic_machine=armv4l-rebel 72762449Speter os=-linux 72862449Speter ;; 72950276Speter news | news700 | news800 | news900) 73050276Speter basic_machine=m68k-sony 73150276Speter os=-newsos 73250276Speter ;; 73350276Speter news1000) 73450276Speter basic_machine=m68030-sony 73550276Speter os=-newsos 73650276Speter ;; 73750276Speter news-3600 | risc-news) 73850276Speter basic_machine=mips-sony 73950276Speter os=-newsos 74050276Speter ;; 74162449Speter necv70) 74262449Speter basic_machine=v70-nec 74362449Speter os=-sysv 74462449Speter ;; 74550276Speter next | m*-next ) 74650276Speter basic_machine=m68k-next 74750276Speter case $os in 74850276Speter -nextstep* ) 74950276Speter ;; 75050276Speter -ns2*) 75150276Speter os=-nextstep2 75250276Speter ;; 75350276Speter *) 75450276Speter os=-nextstep3 75550276Speter ;; 75650276Speter esac 75750276Speter ;; 75850276Speter nh3000) 75950276Speter basic_machine=m68k-harris 76050276Speter os=-cxux 76150276Speter ;; 76250276Speter nh[45]000) 76350276Speter basic_machine=m88k-harris 76450276Speter os=-cxux 76550276Speter ;; 76650276Speter nindy960) 76750276Speter basic_machine=i960-intel 76850276Speter os=-nindy 76950276Speter ;; 77062449Speter mon960) 77162449Speter basic_machine=i960-intel 77262449Speter os=-mon960 77362449Speter ;; 77476726Speter nonstopux) 77576726Speter basic_machine=mips-compaq 77676726Speter os=-nonstopux 77776726Speter ;; 77850276Speter np1) 77950276Speter basic_machine=np1-gould 78050276Speter ;; 78162449Speter nsr-tandem) 78262449Speter basic_machine=nsr-tandem 78362449Speter ;; 78462449Speter op50n-* | op60c-*) 78562449Speter basic_machine=hppa1.1-oki 78662449Speter os=-proelf 78762449Speter ;; 788166124Srafan openrisc | openrisc-*) 78997049Speter basic_machine=or32-unknown 79097049Speter ;; 791166124Srafan os400) 792166124Srafan basic_machine=powerpc-ibm 793166124Srafan os=-os400 794166124Srafan ;; 79562449Speter OSE68000 | ose68000) 79662449Speter basic_machine=m68000-ericsson 79762449Speter os=-ose 79862449Speter ;; 79962449Speter os68k) 80062449Speter basic_machine=m68k-none 80162449Speter os=-os68k 80262449Speter ;; 80350276Speter pa-hitachi) 80450276Speter basic_machine=hppa1.1-hitachi 80550276Speter os=-hiuxwe2 80650276Speter ;; 80750276Speter paragon) 80850276Speter basic_machine=i860-intel 80950276Speter os=-osf 81050276Speter ;; 81150276Speter pbd) 81250276Speter basic_machine=sparc-tti 81350276Speter ;; 81450276Speter pbb) 81550276Speter basic_machine=m68k-tti 81650276Speter ;; 817166124Srafan pc532 | pc532-*) 81850276Speter basic_machine=ns32k-pc532 81950276Speter ;; 820166124Srafan pc98) 821166124Srafan basic_machine=i386-pc 822166124Srafan ;; 823166124Srafan pc98-*) 824166124Srafan basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 825166124Srafan ;; 82697049Speter pentium | p5 | k5 | k6 | nexgen | viac3) 82750276Speter basic_machine=i586-pc 82850276Speter ;; 829166124Srafan pentiumpro | p6 | 6x86 | athlon | athlon_*) 83050276Speter basic_machine=i686-pc 83150276Speter ;; 832166124Srafan pentiumii | pentium2 | pentiumiii | pentium3) 83376726Speter basic_machine=i686-pc 83450276Speter ;; 835166124Srafan pentium4) 836166124Srafan basic_machine=i786-pc 837166124Srafan ;; 83897049Speter pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 83950276Speter basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 84050276Speter ;; 84162449Speter pentiumpro-* | p6-* | 6x86-* | athlon-*) 84250276Speter basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 84350276Speter ;; 844166124Srafan pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 84576726Speter basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 84650276Speter ;; 847166124Srafan pentium4-*) 848166124Srafan basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 849166124Srafan ;; 85050276Speter pn) 85150276Speter basic_machine=pn-gould 85250276Speter ;; 85376726Speter power) basic_machine=power-ibm 85450276Speter ;; 85550276Speter ppc) basic_machine=powerpc-unknown 856166124Srafan ;; 85750276Speter ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 85850276Speter ;; 85950276Speter ppcle | powerpclittle | ppc-le | powerpc-little) 86050276Speter basic_machine=powerpcle-unknown 861166124Srafan ;; 86250276Speter ppcle-* | powerpclittle-*) 86350276Speter basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 86450276Speter ;; 86597049Speter ppc64) basic_machine=powerpc64-unknown 866166124Srafan ;; 86797049Speter ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 86897049Speter ;; 86997049Speter ppc64le | powerpc64little | ppc64-le | powerpc64-little) 87097049Speter basic_machine=powerpc64le-unknown 871166124Srafan ;; 87297049Speter ppc64le-* | powerpc64little-*) 87397049Speter basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 87497049Speter ;; 87550276Speter ps2) 87650276Speter basic_machine=i386-ibm 87750276Speter ;; 87876726Speter pw32) 87976726Speter basic_machine=i586-unknown 88076726Speter os=-pw32 88176726Speter ;; 882166124Srafan rdos) 883166124Srafan basic_machine=i386-pc 884166124Srafan os=-rdos 885166124Srafan ;; 88662449Speter rom68k) 88762449Speter basic_machine=m68k-rom68k 88862449Speter os=-coff 88962449Speter ;; 89050276Speter rm[46]00) 89150276Speter basic_machine=mips-siemens 89250276Speter ;; 89350276Speter rtpc | rtpc-*) 89450276Speter basic_machine=romp-ibm 89550276Speter ;; 89697049Speter s390 | s390-*) 89797049Speter basic_machine=s390-ibm 89897049Speter ;; 89997049Speter s390x | s390x-*) 90097049Speter basic_machine=s390x-ibm 90197049Speter ;; 90262449Speter sa29200) 90362449Speter basic_machine=a29k-amd 90462449Speter os=-udi 90562449Speter ;; 906166124Srafan sb1) 907166124Srafan basic_machine=mipsisa64sb1-unknown 908166124Srafan ;; 909166124Srafan sb1el) 910166124Srafan basic_machine=mipsisa64sb1el-unknown 911166124Srafan ;; 912166124Srafan sde) 913166124Srafan basic_machine=mipsisa32-sde 914166124Srafan os=-elf 915166124Srafan ;; 916166124Srafan sei) 917166124Srafan basic_machine=mips-sei 918166124Srafan os=-seiux 919166124Srafan ;; 92050276Speter sequent) 92150276Speter basic_machine=i386-sequent 92250276Speter ;; 92350276Speter sh) 92450276Speter basic_machine=sh-hitachi 92550276Speter os=-hms 92650276Speter ;; 927166124Srafan sh64) 928166124Srafan basic_machine=sh64-unknown 929166124Srafan ;; 93097049Speter sparclite-wrs | simso-wrs) 93162449Speter basic_machine=sparclite-wrs 93262449Speter os=-vxworks 93362449Speter ;; 93450276Speter sps7) 93550276Speter basic_machine=m68k-bull 93650276Speter os=-sysv2 93750276Speter ;; 93850276Speter spur) 93950276Speter basic_machine=spur-unknown 94050276Speter ;; 94162449Speter st2000) 94262449Speter basic_machine=m68k-tandem 94362449Speter ;; 94462449Speter stratus) 94562449Speter basic_machine=i860-stratus 94662449Speter os=-sysv4 94762449Speter ;; 94850276Speter sun2) 94950276Speter basic_machine=m68000-sun 95050276Speter ;; 95150276Speter sun2os3) 95250276Speter basic_machine=m68000-sun 95350276Speter os=-sunos3 95450276Speter ;; 95550276Speter sun2os4) 95650276Speter basic_machine=m68000-sun 95750276Speter os=-sunos4 95850276Speter ;; 95950276Speter sun3os3) 96050276Speter basic_machine=m68k-sun 96150276Speter os=-sunos3 96250276Speter ;; 96350276Speter sun3os4) 96450276Speter basic_machine=m68k-sun 96550276Speter os=-sunos4 96650276Speter ;; 96750276Speter sun4os3) 96850276Speter basic_machine=sparc-sun 96950276Speter os=-sunos3 97050276Speter ;; 97150276Speter sun4os4) 97250276Speter basic_machine=sparc-sun 97350276Speter os=-sunos4 97450276Speter ;; 97550276Speter sun4sol2) 97650276Speter basic_machine=sparc-sun 97750276Speter os=-solaris2 97850276Speter ;; 97950276Speter sun3 | sun3-*) 98050276Speter basic_machine=m68k-sun 98150276Speter ;; 98250276Speter sun4) 98350276Speter basic_machine=sparc-sun 98450276Speter ;; 98550276Speter sun386 | sun386i | roadrunner) 98650276Speter basic_machine=i386-sun 98750276Speter ;; 988166124Srafan sv1) 98962449Speter basic_machine=sv1-cray 99062449Speter os=-unicos 99162449Speter ;; 99250276Speter symmetry) 99350276Speter basic_machine=i386-sequent 99450276Speter os=-dynix 99550276Speter ;; 99662449Speter t3e) 99797049Speter basic_machine=alphaev5-cray 99862449Speter os=-unicos 99962449Speter ;; 100097049Speter t90) 100197049Speter basic_machine=t90-cray 100297049Speter os=-unicos 100397049Speter ;; 100466963Speter tic54x | c54x*) 100566963Speter basic_machine=tic54x-unknown 100666963Speter os=-coff 100766963Speter ;; 1008166124Srafan tic55x | c55x*) 1009166124Srafan basic_machine=tic55x-unknown 1010166124Srafan os=-coff 1011166124Srafan ;; 1012166124Srafan tic6x | c6x*) 1013166124Srafan basic_machine=tic6x-unknown 1014166124Srafan os=-coff 1015166124Srafan ;; 101650276Speter tx39) 101750276Speter basic_machine=mipstx39-unknown 101850276Speter ;; 101950276Speter tx39el) 102050276Speter basic_machine=mipstx39el-unknown 102150276Speter ;; 102297049Speter toad1) 102397049Speter basic_machine=pdp10-xkl 102497049Speter os=-tops20 102597049Speter ;; 102650276Speter tower | tower-32) 102750276Speter basic_machine=m68k-ncr 102850276Speter ;; 1029166124Srafan tpf) 1030166124Srafan basic_machine=s390x-ibm 1031166124Srafan os=-tpf 1032166124Srafan ;; 103350276Speter udi29k) 103450276Speter basic_machine=a29k-amd 103550276Speter os=-udi 103650276Speter ;; 103750276Speter ultra3) 103850276Speter basic_machine=a29k-nyu 103950276Speter os=-sym1 104050276Speter ;; 104162449Speter v810 | necv810) 104262449Speter basic_machine=v810-nec 104362449Speter os=-none 104462449Speter ;; 104550276Speter vaxv) 104650276Speter basic_machine=vax-dec 104750276Speter os=-sysv 104850276Speter ;; 104950276Speter vms) 105050276Speter basic_machine=vax-dec 105150276Speter os=-vms 105250276Speter ;; 105350276Speter vpp*|vx|vx-*) 1054166124Srafan basic_machine=f301-fujitsu 1055166124Srafan ;; 105650276Speter vxworks960) 105750276Speter basic_machine=i960-wrs 105850276Speter os=-vxworks 105950276Speter ;; 106050276Speter vxworks68) 106150276Speter basic_machine=m68k-wrs 106250276Speter os=-vxworks 106350276Speter ;; 106450276Speter vxworks29k) 106550276Speter basic_machine=a29k-wrs 106650276Speter os=-vxworks 106750276Speter ;; 106862449Speter w65*) 106962449Speter basic_machine=w65-wdc 107062449Speter os=-none 107162449Speter ;; 107262449Speter w89k-*) 107362449Speter basic_machine=hppa1.1-winbond 107462449Speter os=-proelf 107562449Speter ;; 1076166124Srafan xbox) 1077166124Srafan basic_machine=i686-pc 1078166124Srafan os=-mingw32 107950276Speter ;; 1080166124Srafan xps | xps100) 108150276Speter basic_machine=xps100-honeywell 108250276Speter ;; 108397049Speter ymp) 108497049Speter basic_machine=ymp-cray 108597049Speter os=-unicos 108697049Speter ;; 108762449Speter z8k-*-coff) 108862449Speter basic_machine=z8k-unknown 108962449Speter os=-sim 109062449Speter ;; 109150276Speter none) 109250276Speter basic_machine=none-none 109350276Speter os=-none 109450276Speter ;; 109550276Speter 109650276Speter# Here we handle the default manufacturer of certain CPU types. It is in 109750276Speter# some cases the only manufacturer, in others, it is the most popular. 109862449Speter w89k) 109962449Speter basic_machine=hppa1.1-winbond 110062449Speter ;; 110162449Speter op50n) 110262449Speter basic_machine=hppa1.1-oki 110362449Speter ;; 110462449Speter op60c) 110562449Speter basic_machine=hppa1.1-oki 110662449Speter ;; 110750276Speter romp) 110850276Speter basic_machine=romp-ibm 110950276Speter ;; 1110166124Srafan mmix) 1111166124Srafan basic_machine=mmix-knuth 1112166124Srafan ;; 111350276Speter rs6000) 111450276Speter basic_machine=rs6000-ibm 111550276Speter ;; 111650276Speter vax) 111750276Speter basic_machine=vax-dec 111850276Speter ;; 111976726Speter pdp10) 112076726Speter # there are many clones, so DEC is not a safe bet 112176726Speter basic_machine=pdp10-unknown 112276726Speter ;; 112350276Speter pdp11) 112450276Speter basic_machine=pdp11-dec 112550276Speter ;; 112650276Speter we32k) 112750276Speter basic_machine=we32k-att 112850276Speter ;; 1129166124Srafan sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) 113076726Speter basic_machine=sh-unknown 113162449Speter ;; 1132166124Srafan sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 113350276Speter basic_machine=sparc-sun 113450276Speter ;; 1135166124Srafan cydra) 113650276Speter basic_machine=cydra-cydrome 113750276Speter ;; 113850276Speter orion) 113950276Speter basic_machine=orion-highlevel 114050276Speter ;; 114150276Speter orion105) 114250276Speter basic_machine=clipper-highlevel 114350276Speter ;; 114462449Speter mac | mpw | mac-mpw) 114562449Speter basic_machine=m68k-apple 114662449Speter ;; 114762449Speter pmac | pmac-mpw) 114862449Speter basic_machine=powerpc-apple 114962449Speter ;; 115097049Speter *-unknown) 115197049Speter # Make sure to match an already-canonicalized machine name. 115297049Speter ;; 115350276Speter *) 115450276Speter echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 115550276Speter exit 1 115650276Speter ;; 115750276Speteresac 115850276Speter 115950276Speter# Here we canonicalize certain aliases for manufacturers. 116050276Spetercase $basic_machine in 116150276Speter *-digital*) 116250276Speter basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 116350276Speter ;; 116450276Speter *-commodore*) 116550276Speter basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 116650276Speter ;; 116750276Speter *) 116850276Speter ;; 116950276Speteresac 117050276Speter 117150276Speter# Decode manufacturer-specific aliases for certain operating systems. 117250276Speter 117350276Speterif [ x"$os" != x"" ] 117450276Speterthen 117550276Spetercase $os in 117650276Speter # First match some system type aliases 117750276Speter # that might get confused with valid system types. 117850276Speter # -solaris* is a basic system type, with this one exception. 117950276Speter -solaris1 | -solaris1.*) 118050276Speter os=`echo $os | sed -e 's|solaris1|sunos4|'` 118150276Speter ;; 118250276Speter -solaris) 118350276Speter os=-solaris2 118450276Speter ;; 118550276Speter -svr4*) 118650276Speter os=-sysv4 118750276Speter ;; 118850276Speter -unixware*) 118950276Speter os=-sysv4.2uw 119050276Speter ;; 119150276Speter -gnu/linux*) 119250276Speter os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 119350276Speter ;; 119450276Speter # First accept the basic system types. 119550276Speter # The portable systems comes first. 119650276Speter # Each alternative MUST END IN A *, to match a version number. 119750276Speter # -sysv* is not here because it comes later, after sysvr4. 119850276Speter -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 119950276Speter | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 120050276Speter | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 120150276Speter | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 120250276Speter | -aos* \ 120362449Speter | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 120450276Speter | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1205166124Srafan | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1206166124Srafan | -openbsd* | -solidbsd* \ 1207166124Srafan | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1208166124Srafan | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 120950276Speter | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 121050276Speter | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 121197049Speter | -chorusos* | -chorusrdb* \ 121250276Speter | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1213166124Srafan | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 1214166124Srafan | -uxpv* | -beos* | -mpeix* | -udk* \ 1215166124Srafan | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 121676726Speter | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 121797049Speter | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 121897049Speter | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1219166124Srafan | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1220166124Srafan | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1221166124Srafan | -skyos* | -haiku* | -rdos* | -toppers*) 122250276Speter # Remember, each alternative MUST END IN *, to match a version number. 122350276Speter ;; 122462449Speter -qnx*) 122562449Speter case $basic_machine in 122697049Speter x86-* | i*86-*) 122762449Speter ;; 122862449Speter *) 122962449Speter os=-nto$os 123062449Speter ;; 123162449Speter esac 123262449Speter ;; 1233166124Srafan -nto-qnx*) 1234166124Srafan ;; 123562449Speter -nto*) 1236166124Srafan os=`echo $os | sed -e 's|nto|nto-qnx|'` 123762449Speter ;; 123862449Speter -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1239166124Srafan | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 124062449Speter | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 124162449Speter ;; 124262449Speter -mac*) 124362449Speter os=`echo $os | sed -e 's|mac|macos|'` 124462449Speter ;; 1245166124Srafan -linux-dietlibc) 1246166124Srafan os=-linux-dietlibc 1247166124Srafan ;; 124850276Speter -linux*) 124950276Speter os=`echo $os | sed -e 's|linux|linux-gnu|'` 125050276Speter ;; 125150276Speter -sunos5*) 125250276Speter os=`echo $os | sed -e 's|sunos5|solaris2|'` 125350276Speter ;; 125450276Speter -sunos6*) 125550276Speter os=`echo $os | sed -e 's|sunos6|solaris3|'` 125650276Speter ;; 125762449Speter -opened*) 125862449Speter os=-openedition 125962449Speter ;; 1260166124Srafan -os400*) 1261166124Srafan os=-os400 1262166124Srafan ;; 126362449Speter -wince*) 126462449Speter os=-wince 126562449Speter ;; 126650276Speter -osfrose*) 126750276Speter os=-osfrose 126850276Speter ;; 126950276Speter -osf*) 127050276Speter os=-osf 127150276Speter ;; 127250276Speter -utek*) 127350276Speter os=-bsd 127450276Speter ;; 127550276Speter -dynix*) 127650276Speter os=-bsd 127750276Speter ;; 127850276Speter -acis*) 127950276Speter os=-aos 128050276Speter ;; 128197049Speter -atheos*) 128297049Speter os=-atheos 128397049Speter ;; 1284166124Srafan -syllable*) 1285166124Srafan os=-syllable 1286166124Srafan ;; 128762449Speter -386bsd) 128862449Speter os=-bsd 128962449Speter ;; 129050276Speter -ctix* | -uts*) 129150276Speter os=-sysv 129250276Speter ;; 129397049Speter -nova*) 129497049Speter os=-rtmk-nova 129597049Speter ;; 129650276Speter -ns2 ) 1297166124Srafan os=-nextstep2 129850276Speter ;; 129976726Speter -nsk*) 130062449Speter os=-nsk 130162449Speter ;; 130250276Speter # Preserve the version number of sinix5. 130350276Speter -sinix5.*) 130450276Speter os=`echo $os | sed -e 's|sinix|sysv|'` 130550276Speter ;; 130650276Speter -sinix*) 130750276Speter os=-sysv4 130850276Speter ;; 1309166124Srafan -tpf*) 1310166124Srafan os=-tpf 1311166124Srafan ;; 131250276Speter -triton*) 131350276Speter os=-sysv3 131450276Speter ;; 131550276Speter -oss*) 131650276Speter os=-sysv3 131750276Speter ;; 131850276Speter -svr4) 131950276Speter os=-sysv4 132050276Speter ;; 132150276Speter -svr3) 132250276Speter os=-sysv3 132350276Speter ;; 132450276Speter -sysvr4) 132550276Speter os=-sysv4 132650276Speter ;; 132750276Speter # This must come after -sysvr4. 132850276Speter -sysv*) 132950276Speter ;; 133062449Speter -ose*) 133162449Speter os=-ose 133262449Speter ;; 133362449Speter -es1800*) 133462449Speter os=-ose 133562449Speter ;; 133650276Speter -xenix) 133750276Speter os=-xenix 133850276Speter ;; 1339166124Srafan -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1340166124Srafan os=-mint 134162449Speter ;; 1342166124Srafan -aros*) 1343166124Srafan os=-aros 1344166124Srafan ;; 1345166124Srafan -kaos*) 1346166124Srafan os=-kaos 1347166124Srafan ;; 1348166124Srafan -zvmoe) 1349166124Srafan os=-zvmoe 1350166124Srafan ;; 135150276Speter -none) 135250276Speter ;; 135350276Speter *) 135450276Speter # Get rid of the `-' at the beginning of $os. 135550276Speter os=`echo $os | sed 's/[^-]*-//'` 135650276Speter echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 135750276Speter exit 1 135850276Speter ;; 135950276Speteresac 136050276Speterelse 136150276Speter 136250276Speter# Here we handle the default operating systems that come with various machines. 136350276Speter# The value should be what the vendor currently ships out the door with their 136450276Speter# machine or put another way, the most popular os provided with the machine. 136550276Speter 136650276Speter# Note that if you're going to try to match "-MANUFACTURER" here (say, 136750276Speter# "-sun"), then you have to tell the case statement up towards the top 136850276Speter# that MANUFACTURER isn't an operating system. Otherwise, code above 136950276Speter# will signal an error saying that MANUFACTURER isn't an operating 137050276Speter# system, and we'll never get to this point. 137150276Speter 137250276Spetercase $basic_machine in 1373166124Srafan spu-*) 1374166124Srafan os=-elf 1375166124Srafan ;; 137650276Speter *-acorn) 137750276Speter os=-riscix1.2 137850276Speter ;; 137962449Speter arm*-rebel) 138062449Speter os=-linux 138162449Speter ;; 138250276Speter arm*-semi) 138350276Speter os=-aout 138450276Speter ;; 1385166124Srafan c4x-* | tic4x-*) 1386166124Srafan os=-coff 1387166124Srafan ;; 138897049Speter # This must come before the *-dec entry. 138976726Speter pdp10-*) 139076726Speter os=-tops20 139176726Speter ;; 1392166124Srafan pdp11-*) 139350276Speter os=-none 139450276Speter ;; 139550276Speter *-dec | vax-*) 139650276Speter os=-ultrix4.2 139750276Speter ;; 139850276Speter m68*-apollo) 139950276Speter os=-domain 140050276Speter ;; 140150276Speter i386-sun) 140250276Speter os=-sunos4.0.2 140350276Speter ;; 140450276Speter m68000-sun) 140550276Speter os=-sunos3 140650276Speter # This also exists in the configure program, but was not the 140750276Speter # default. 140850276Speter # os=-sunos4 140950276Speter ;; 141062449Speter m68*-cisco) 141162449Speter os=-aout 141262449Speter ;; 141362449Speter mips*-cisco) 141462449Speter os=-elf 141562449Speter ;; 141662449Speter mips*-*) 141762449Speter os=-elf 141862449Speter ;; 141997049Speter or32-*) 142097049Speter os=-coff 142197049Speter ;; 142250276Speter *-tti) # must be before sparc entry or we get the wrong os. 142350276Speter os=-sysv3 142450276Speter ;; 142550276Speter sparc-* | *-sun) 142650276Speter os=-sunos4.1.1 142750276Speter ;; 142850276Speter *-be) 142950276Speter os=-beos 143050276Speter ;; 1431166124Srafan *-haiku) 1432166124Srafan os=-haiku 1433166124Srafan ;; 143450276Speter *-ibm) 143550276Speter os=-aix 143650276Speter ;; 1437166124Srafan *-knuth) 1438166124Srafan os=-mmixware 1439166124Srafan ;; 144062449Speter *-wec) 144162449Speter os=-proelf 144262449Speter ;; 144362449Speter *-winbond) 144462449Speter os=-proelf 144562449Speter ;; 144662449Speter *-oki) 144762449Speter os=-proelf 144862449Speter ;; 144950276Speter *-hp) 145050276Speter os=-hpux 145150276Speter ;; 145250276Speter *-hitachi) 145350276Speter os=-hiux 145450276Speter ;; 145550276Speter i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 145650276Speter os=-sysv 145750276Speter ;; 145850276Speter *-cbm) 145950276Speter os=-amigaos 146050276Speter ;; 146150276Speter *-dg) 146250276Speter os=-dgux 146350276Speter ;; 146450276Speter *-dolphin) 146550276Speter os=-sysv3 146650276Speter ;; 146750276Speter m68k-ccur) 146850276Speter os=-rtu 146950276Speter ;; 147050276Speter m88k-omron*) 147150276Speter os=-luna 147250276Speter ;; 147350276Speter *-next ) 147450276Speter os=-nextstep 147550276Speter ;; 147650276Speter *-sequent) 147750276Speter os=-ptx 147850276Speter ;; 147950276Speter *-crds) 148050276Speter os=-unos 148150276Speter ;; 148250276Speter *-ns) 148350276Speter os=-genix 148450276Speter ;; 148550276Speter i370-*) 148650276Speter os=-mvs 148750276Speter ;; 148850276Speter *-next) 148950276Speter os=-nextstep3 149050276Speter ;; 1491166124Srafan *-gould) 149250276Speter os=-sysv 149350276Speter ;; 1494166124Srafan *-highlevel) 149550276Speter os=-bsd 149650276Speter ;; 149750276Speter *-encore) 149850276Speter os=-bsd 149950276Speter ;; 1500166124Srafan *-sgi) 150150276Speter os=-irix 150250276Speter ;; 1503166124Srafan *-siemens) 150450276Speter os=-sysv4 150550276Speter ;; 150650276Speter *-masscomp) 150750276Speter os=-rtu 150850276Speter ;; 150976726Speter f30[01]-fujitsu | f700-fujitsu) 151050276Speter os=-uxpv 151150276Speter ;; 151262449Speter *-rom68k) 151362449Speter os=-coff 151462449Speter ;; 151562449Speter *-*bug) 151662449Speter os=-coff 151762449Speter ;; 151862449Speter *-apple) 151962449Speter os=-macos 152062449Speter ;; 152162449Speter *-atari*) 152262449Speter os=-mint 152362449Speter ;; 152450276Speter *) 152550276Speter os=-none 152650276Speter ;; 152750276Speteresac 152850276Speterfi 152950276Speter 153050276Speter# Here we handle the case where we know the os, and the CPU type, but not the 153150276Speter# manufacturer. We pick the logical manufacturer. 153250276Spetervendor=unknown 153350276Spetercase $basic_machine in 153450276Speter *-unknown) 153550276Speter case $os in 153650276Speter -riscix*) 153750276Speter vendor=acorn 153850276Speter ;; 153950276Speter -sunos*) 154050276Speter vendor=sun 154150276Speter ;; 154250276Speter -aix*) 154350276Speter vendor=ibm 154450276Speter ;; 154562449Speter -beos*) 154662449Speter vendor=be 154762449Speter ;; 154850276Speter -hpux*) 154950276Speter vendor=hp 155050276Speter ;; 155162449Speter -mpeix*) 155262449Speter vendor=hp 155362449Speter ;; 155450276Speter -hiux*) 155550276Speter vendor=hitachi 155650276Speter ;; 155750276Speter -unos*) 155850276Speter vendor=crds 155950276Speter ;; 156050276Speter -dgux*) 156150276Speter vendor=dg 156250276Speter ;; 156350276Speter -luna*) 156450276Speter vendor=omron 156550276Speter ;; 156650276Speter -genix*) 156750276Speter vendor=ns 156850276Speter ;; 156962449Speter -mvs* | -opened*) 157050276Speter vendor=ibm 157150276Speter ;; 1572166124Srafan -os400*) 1573166124Srafan vendor=ibm 1574166124Srafan ;; 157550276Speter -ptx*) 157650276Speter vendor=sequent 157750276Speter ;; 1578166124Srafan -tpf*) 1579166124Srafan vendor=ibm 1580166124Srafan ;; 158197049Speter -vxsim* | -vxworks* | -windiss*) 158250276Speter vendor=wrs 158350276Speter ;; 158450276Speter -aux*) 158550276Speter vendor=apple 158650276Speter ;; 158762449Speter -hms*) 158862449Speter vendor=hitachi 158962449Speter ;; 159062449Speter -mpw* | -macos*) 159162449Speter vendor=apple 159262449Speter ;; 159376726Speter -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 159462449Speter vendor=atari 159562449Speter ;; 159697049Speter -vos*) 159797049Speter vendor=stratus 159897049Speter ;; 159950276Speter esac 160050276Speter basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 160150276Speter ;; 160250276Speteresac 160350276Speter 160450276Speterecho $basic_machine$os 1605166124Srafanexit 160662449Speter 160762449Speter# Local variables: 160862449Speter# eval: (add-hook 'write-file-hooks 'time-stamp) 160976726Speter# time-stamp-start: "timestamp='" 161062449Speter# time-stamp-format: "%:y-%02m-%02d" 161162449Speter# time-stamp-end: "'" 161262449Speter# End: 1613