150276Speter#! /bin/sh 276726Speter# Configuration validation subroutine script. 397049Speter# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4178866Srafan# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5178866Srafan# Free Software Foundation, Inc. 662449Speter 7184989Srafantimestamp='2008-06-16' 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 75178866SrafanCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 76178866Srafan2002, 2003, 2004, 2005, 2006, 2007, 2008 Free 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 \ 248174993Srafan | fido | 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 \ 253184989Srafan | maxq | mb | microblaze | mcore | mep | metag \ 254166124Srafan | mips | mipsbe | mipseb | mipsel | mipsle \ 255166124Srafan | mips16 \ 256166124Srafan | mips64 | mips64el \ 257178866Srafan | mips64octeon | mips64octeonel \ 258178866Srafan | mips64orion | mips64orionel \ 259178866Srafan | mips64r5900 | mips64r5900el \ 260166124Srafan | mips64vr | mips64vrel \ 261166124Srafan | mips64vr4100 | mips64vr4100el \ 262166124Srafan | mips64vr4300 | mips64vr4300el \ 263166124Srafan | mips64vr5000 | mips64vr5000el \ 264166124Srafan | mips64vr5900 | mips64vr5900el \ 265166124Srafan | mipsisa32 | mipsisa32el \ 266166124Srafan | mipsisa32r2 | mipsisa32r2el \ 267166124Srafan | mipsisa64 | mipsisa64el \ 268166124Srafan | mipsisa64r2 | mipsisa64r2el \ 269166124Srafan | mipsisa64sb1 | mipsisa64sb1el \ 270166124Srafan | mipsisa64sr71k | mipsisa64sr71kel \ 271166124Srafan | mipstx39 | mipstx39el \ 27297049Speter | mn10200 | mn10300 \ 273166124Srafan | mt \ 274166124Srafan | msp430 \ 275166124Srafan | nios | nios2 \ 27697049Speter | ns16k | ns32k \ 277166124Srafan | or32 \ 27897049Speter | pdp10 | pdp11 | pj | pjl \ 27997049Speter | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 28097049Speter | pyramid \ 281174993Srafan | score \ 282166124Srafan | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 283166124Srafan | sh64 | sh64le \ 284166124Srafan | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 285166124Srafan | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 286166124Srafan | spu | strongarm \ 287166124Srafan | tahoe | thumb | tic4x | tic80 | tron \ 28897049Speter | v850 | v850e \ 28997049Speter | we32k \ 290166124Srafan | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 29197049Speter | z8k) 29250276Speter basic_machine=$basic_machine-unknown 29350276Speter ;; 29466963Speter m6811 | m68hc11 | m6812 | m68hc12) 29566963Speter # Motorola 68HC11/12. 29666963Speter basic_machine=$basic_machine-unknown 29766963Speter os=-none 29866963Speter ;; 29997049Speter m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 30062449Speter ;; 301166124Srafan ms1) 302166124Srafan basic_machine=mt-unknown 303166124Srafan ;; 30462449Speter 30550276Speter # We use `pc' rather than `unknown' 30650276Speter # because (1) that's what they normally are, and 30750276Speter # (2) the word "unknown" tends to confuse beginning users. 30897049Speter i*86 | x86_64) 309184989Srafan basic_machine=$basic_machine-pc 310184989Srafan ;; 31150276Speter # Object if more than one company name word. 31250276Speter *-*-*) 31350276Speter echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 31450276Speter exit 1 31550276Speter ;; 31650276Speter # Recognize the basic CPU types with company name. 31797049Speter 580-* \ 31897049Speter | a29k-* \ 31997049Speter | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 32097049Speter | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 32197049Speter | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 322166124Srafan | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 323166124Srafan | avr-* | avr32-* \ 324166124Srafan | bfin-* | bs2000-* \ 325166124Srafan | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 326166124Srafan | clipper-* | craynv-* | cydra-* \ 327166124Srafan | d10v-* | d30v-* | dlx-* \ 32897049Speter | elxsi-* \ 329174993Srafan | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 33097049Speter | h8300-* | h8500-* \ 33197049Speter | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 33297049Speter | i*86-* | i860-* | i960-* | ia64-* \ 333166124Srafan | ip2k-* | iq2000-* \ 334184989Srafan | m32c-* | m32r-* | m32rle-* \ 33597049Speter | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 336184989Srafan | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 337166124Srafan | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 338166124Srafan | mips16-* \ 339166124Srafan | mips64-* | mips64el-* \ 340178866Srafan | mips64octeon-* | mips64octeonel-* \ 341178866Srafan | mips64orion-* | mips64orionel-* \ 342178866Srafan | mips64r5900-* | mips64r5900el-* \ 343166124Srafan | mips64vr-* | mips64vrel-* \ 344166124Srafan | mips64vr4100-* | mips64vr4100el-* \ 345166124Srafan | mips64vr4300-* | mips64vr4300el-* \ 346166124Srafan | mips64vr5000-* | mips64vr5000el-* \ 347166124Srafan | mips64vr5900-* | mips64vr5900el-* \ 348166124Srafan | mipsisa32-* | mipsisa32el-* \ 349166124Srafan | mipsisa32r2-* | mipsisa32r2el-* \ 350166124Srafan | mipsisa64-* | mipsisa64el-* \ 351166124Srafan | mipsisa64r2-* | mipsisa64r2el-* \ 352166124Srafan | mipsisa64sb1-* | mipsisa64sb1el-* \ 353166124Srafan | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 354166124Srafan | mipstx39-* | mipstx39el-* \ 355166124Srafan | mmix-* \ 356166124Srafan | mt-* \ 357166124Srafan | msp430-* \ 358166124Srafan | nios-* | nios2-* \ 35997049Speter | none-* | np1-* | ns16k-* | ns32k-* \ 36097049Speter | orion-* \ 36197049Speter | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 36297049Speter | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 36397049Speter | pyramid-* \ 36497049Speter | romp-* | rs6000-* \ 365166124Srafan | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 366166124Srafan | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 367166124Srafan | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 368166124Srafan | sparclite-* \ 369166124Srafan | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 370166124Srafan | tahoe-* | thumb-* \ 371178866Srafan | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ 372166124Srafan | tron-* \ 37397049Speter | v850-* | v850e-* | vax-* \ 37497049Speter | we32k-* \ 375166124Srafan | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 376178866Srafan | xstormy16-* | xtensa*-* \ 37797049Speter | ymp-* \ 37897049Speter | z8k-*) 37950276Speter ;; 380178866Srafan # Recognize the basic CPU types without company name, with glob match. 381178866Srafan xtensa*) 382178866Srafan basic_machine=$basic_machine-unknown 383178866Srafan ;; 38450276Speter # Recognize the various machine names and aliases which stand 38550276Speter # for a CPU type and a company and sometimes even an OS. 38662449Speter 386bsd) 38762449Speter basic_machine=i386-unknown 38862449Speter os=-bsd 38962449Speter ;; 39050276Speter 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 39150276Speter basic_machine=m68000-att 39250276Speter ;; 39350276Speter 3b*) 39450276Speter basic_machine=we32k-att 39550276Speter ;; 39662449Speter a29khif) 39762449Speter basic_machine=a29k-amd 39862449Speter os=-udi 39962449Speter ;; 400184989Srafan abacus) 401166124Srafan basic_machine=abacus-unknown 402166124Srafan ;; 40362449Speter adobe68k) 40462449Speter basic_machine=m68010-adobe 40562449Speter os=-scout 40662449Speter ;; 40750276Speter alliant | fx80) 40850276Speter basic_machine=fx80-alliant 40950276Speter ;; 41050276Speter altos | altos3068) 41150276Speter basic_machine=m68k-altos 41250276Speter ;; 41350276Speter am29k) 41450276Speter basic_machine=a29k-none 41550276Speter os=-bsd 41650276Speter ;; 417166124Srafan amd64) 418166124Srafan basic_machine=x86_64-pc 419166124Srafan ;; 420166124Srafan amd64-*) 421166124Srafan basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 422166124Srafan ;; 42350276Speter amdahl) 42450276Speter basic_machine=580-amdahl 42550276Speter os=-sysv 42650276Speter ;; 42750276Speter amiga | amiga-*) 42876726Speter basic_machine=m68k-unknown 42950276Speter ;; 43050276Speter amigaos | amigados) 43176726Speter basic_machine=m68k-unknown 43250276Speter os=-amigaos 43350276Speter ;; 43450276Speter amigaunix | amix) 43576726Speter basic_machine=m68k-unknown 43650276Speter os=-sysv4 43750276Speter ;; 43850276Speter apollo68) 43950276Speter basic_machine=m68k-apollo 44050276Speter os=-sysv 44150276Speter ;; 44262449Speter apollo68bsd) 44362449Speter basic_machine=m68k-apollo 44462449Speter os=-bsd 44562449Speter ;; 44650276Speter aux) 44750276Speter basic_machine=m68k-apple 44850276Speter os=-aux 44950276Speter ;; 45050276Speter balance) 45150276Speter basic_machine=ns32k-sequent 45250276Speter os=-dynix 45350276Speter ;; 454178866Srafan blackfin) 455178866Srafan basic_machine=bfin-unknown 456178866Srafan os=-linux 457178866Srafan ;; 458178866Srafan blackfin-*) 459178866Srafan basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 460178866Srafan os=-linux 461178866Srafan ;; 46297049Speter c90) 46397049Speter basic_machine=c90-cray 46497049Speter os=-unicos 46597049Speter ;; 466184989Srafan cegcc) 467184989Srafan basic_machine=arm-unknown 468184989Srafan os=-cegcc 469184989Srafan ;; 47050276Speter convex-c1) 47150276Speter basic_machine=c1-convex 47250276Speter os=-bsd 47350276Speter ;; 47450276Speter convex-c2) 47550276Speter basic_machine=c2-convex 47650276Speter os=-bsd 47750276Speter ;; 47850276Speter convex-c32) 47950276Speter basic_machine=c32-convex 48050276Speter os=-bsd 48150276Speter ;; 48250276Speter convex-c34) 48350276Speter basic_machine=c34-convex 48450276Speter os=-bsd 48550276Speter ;; 48650276Speter convex-c38) 48750276Speter basic_machine=c38-convex 48850276Speter os=-bsd 48950276Speter ;; 49097049Speter cray | j90) 49197049Speter basic_machine=j90-cray 49250276Speter os=-unicos 49350276Speter ;; 494166124Srafan craynv) 495166124Srafan basic_machine=craynv-cray 496166124Srafan os=-unicosmp 497166124Srafan ;; 498174993Srafan cr16) 499174993Srafan basic_machine=cr16-unknown 500166124Srafan os=-elf 501166124Srafan ;; 50250276Speter crds | unos) 50350276Speter basic_machine=m68k-crds 50450276Speter ;; 505166124Srafan crisv32 | crisv32-* | etraxfs*) 506166124Srafan basic_machine=crisv32-axis 507166124Srafan ;; 50862449Speter cris | cris-* | etrax*) 50962449Speter basic_machine=cris-axis 51062449Speter ;; 511166124Srafan crx) 512166124Srafan basic_machine=crx-unknown 513166124Srafan os=-elf 514166124Srafan ;; 51550276Speter da30 | da30-*) 51650276Speter basic_machine=m68k-da30 51750276Speter ;; 51850276Speter decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 51950276Speter basic_machine=mips-dec 52050276Speter ;; 52197049Speter decsystem10* | dec10*) 52297049Speter basic_machine=pdp10-dec 52397049Speter os=-tops10 52497049Speter ;; 52597049Speter decsystem20* | dec20*) 52697049Speter basic_machine=pdp10-dec 52797049Speter os=-tops20 52897049Speter ;; 52950276Speter delta | 3300 | motorola-3300 | motorola-delta \ 53050276Speter | 3300-motorola | delta-motorola) 53150276Speter basic_machine=m68k-motorola 53250276Speter ;; 53350276Speter delta88) 53450276Speter basic_machine=m88k-motorola 53550276Speter os=-sysv3 53650276Speter ;; 537184989Srafan dicos) 538184989Srafan basic_machine=i686-pc 539184989Srafan os=-dicos 540184989Srafan ;; 541166124Srafan djgpp) 542166124Srafan basic_machine=i586-pc 543166124Srafan os=-msdosdjgpp 544166124Srafan ;; 54550276Speter dpx20 | dpx20-*) 54650276Speter basic_machine=rs6000-bull 54750276Speter os=-bosx 54850276Speter ;; 54950276Speter dpx2* | dpx2*-bull) 55050276Speter basic_machine=m68k-bull 55150276Speter os=-sysv3 55250276Speter ;; 55350276Speter ebmon29k) 55450276Speter basic_machine=a29k-amd 55550276Speter os=-ebmon 55650276Speter ;; 55750276Speter elxsi) 55850276Speter basic_machine=elxsi-elxsi 55950276Speter os=-bsd 56050276Speter ;; 56150276Speter encore | umax | mmax) 56250276Speter basic_machine=ns32k-encore 56350276Speter ;; 56462449Speter es1800 | OSE68k | ose68k | ose | OSE) 56562449Speter basic_machine=m68k-ericsson 56662449Speter os=-ose 56762449Speter ;; 56850276Speter fx2800) 56950276Speter basic_machine=i860-alliant 57050276Speter ;; 57150276Speter genix) 57250276Speter basic_machine=ns32k-ns 57350276Speter ;; 57450276Speter gmicro) 57550276Speter basic_machine=tron-gmicro 57650276Speter os=-sysv 57750276Speter ;; 57876726Speter go32) 57976726Speter basic_machine=i386-pc 58076726Speter os=-go32 58176726Speter ;; 58250276Speter h3050r* | hiux*) 58350276Speter basic_machine=hppa1.1-hitachi 58450276Speter os=-hiuxwe2 58550276Speter ;; 58650276Speter h8300hms) 58750276Speter basic_machine=h8300-hitachi 58850276Speter os=-hms 58950276Speter ;; 59062449Speter h8300xray) 59162449Speter basic_machine=h8300-hitachi 59262449Speter os=-xray 59362449Speter ;; 59462449Speter h8500hms) 59562449Speter basic_machine=h8500-hitachi 59662449Speter os=-hms 59762449Speter ;; 59850276Speter harris) 59950276Speter basic_machine=m88k-harris 60050276Speter os=-sysv3 60150276Speter ;; 60250276Speter hp300-*) 60350276Speter basic_machine=m68k-hp 60450276Speter ;; 60550276Speter hp300bsd) 60650276Speter basic_machine=m68k-hp 60750276Speter os=-bsd 60850276Speter ;; 60950276Speter hp300hpux) 61050276Speter basic_machine=m68k-hp 61150276Speter os=-hpux 61250276Speter ;; 61362449Speter hp3k9[0-9][0-9] | hp9[0-9][0-9]) 61462449Speter basic_machine=hppa1.0-hp 61562449Speter ;; 61650276Speter hp9k2[0-9][0-9] | hp9k31[0-9]) 61750276Speter basic_machine=m68000-hp 61850276Speter ;; 61950276Speter hp9k3[2-9][0-9]) 62050276Speter basic_machine=m68k-hp 62150276Speter ;; 62262449Speter hp9k6[0-9][0-9] | hp6[0-9][0-9]) 62362449Speter basic_machine=hppa1.0-hp 62462449Speter ;; 62562449Speter hp9k7[0-79][0-9] | hp7[0-79][0-9]) 62650276Speter basic_machine=hppa1.1-hp 62750276Speter ;; 62862449Speter hp9k78[0-9] | hp78[0-9]) 62962449Speter # FIXME: really hppa2.0-hp 63062449Speter basic_machine=hppa1.1-hp 63162449Speter ;; 63262449Speter hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 63362449Speter # FIXME: really hppa2.0-hp 63462449Speter basic_machine=hppa1.1-hp 63562449Speter ;; 63662449Speter hp9k8[0-9][13679] | hp8[0-9][13679]) 63762449Speter basic_machine=hppa1.1-hp 63862449Speter ;; 63950276Speter hp9k8[0-9][0-9] | hp8[0-9][0-9]) 64050276Speter basic_machine=hppa1.0-hp 64150276Speter ;; 64250276Speter hppa-next) 64350276Speter os=-nextstep3 64450276Speter ;; 64562449Speter hppaosf) 64662449Speter basic_machine=hppa1.1-hp 64762449Speter os=-osf 64862449Speter ;; 64962449Speter hppro) 65062449Speter basic_machine=hppa1.1-hp 65162449Speter os=-proelf 65262449Speter ;; 65350276Speter i370-ibm* | ibm*) 65450276Speter basic_machine=i370-ibm 65550276Speter ;; 65650276Speter# I'm not sure what "Sysv32" means. Should this be sysv3.2? 65797049Speter i*86v32) 65850276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 65950276Speter os=-sysv32 66050276Speter ;; 66197049Speter i*86v4*) 66250276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 66350276Speter os=-sysv4 66450276Speter ;; 66597049Speter i*86v) 66650276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 66750276Speter os=-sysv 66850276Speter ;; 66997049Speter i*86sol2) 67050276Speter basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 67150276Speter os=-solaris2 67250276Speter ;; 67362449Speter i386mach) 67462449Speter basic_machine=i386-mach 67562449Speter os=-mach 67662449Speter ;; 67762449Speter i386-vsta | vsta) 67862449Speter basic_machine=i386-unknown 67962449Speter os=-vsta 68062449Speter ;; 68150276Speter iris | iris4d) 68250276Speter basic_machine=mips-sgi 68350276Speter case $os in 68450276Speter -irix*) 68550276Speter ;; 68650276Speter *) 68750276Speter os=-irix4 68850276Speter ;; 68950276Speter esac 69050276Speter ;; 69150276Speter isi68 | isi) 69250276Speter basic_machine=m68k-isi 69350276Speter os=-sysv 69450276Speter ;; 695178866Srafan m68knommu) 696178866Srafan basic_machine=m68k-unknown 697178866Srafan os=-linux 698178866Srafan ;; 699178866Srafan m68knommu-*) 700178866Srafan basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 701178866Srafan os=-linux 702178866Srafan ;; 70350276Speter m88k-omron*) 70450276Speter basic_machine=m88k-omron 70550276Speter ;; 70650276Speter magnum | m3230) 70750276Speter basic_machine=mips-mips 70850276Speter os=-sysv 70950276Speter ;; 71050276Speter merlin) 71150276Speter basic_machine=ns32k-utek 71250276Speter os=-sysv 71350276Speter ;; 71476726Speter mingw32) 71576726Speter basic_machine=i386-pc 71676726Speter os=-mingw32 71776726Speter ;; 718174993Srafan mingw32ce) 719174993Srafan basic_machine=arm-unknown 720174993Srafan os=-mingw32ce 721174993Srafan ;; 72250276Speter miniframe) 72350276Speter basic_machine=m68000-convergent 72450276Speter ;; 72562449Speter *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 72662449Speter basic_machine=m68k-atari 72762449Speter os=-mint 72862449Speter ;; 72950276Speter mips3*-*) 73050276Speter basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 73150276Speter ;; 73250276Speter mips3*) 73350276Speter basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 73450276Speter ;; 73562449Speter monitor) 73662449Speter basic_machine=m68k-rom68k 73762449Speter os=-coff 73862449Speter ;; 73997049Speter morphos) 74097049Speter basic_machine=powerpc-unknown 74197049Speter os=-morphos 74297049Speter ;; 74362449Speter msdos) 74476726Speter basic_machine=i386-pc 74562449Speter os=-msdos 74662449Speter ;; 747166124Srafan ms1-*) 748166124Srafan basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 749166124Srafan ;; 75062449Speter mvs) 75162449Speter basic_machine=i370-ibm 75262449Speter os=-mvs 75362449Speter ;; 75450276Speter ncr3000) 75550276Speter basic_machine=i486-ncr 75650276Speter os=-sysv4 75750276Speter ;; 75862449Speter netbsd386) 75962449Speter basic_machine=i386-unknown 76062449Speter os=-netbsd 76162449Speter ;; 76262449Speter netwinder) 76362449Speter basic_machine=armv4l-rebel 76462449Speter os=-linux 76562449Speter ;; 76650276Speter news | news700 | news800 | news900) 76750276Speter basic_machine=m68k-sony 76850276Speter os=-newsos 76950276Speter ;; 77050276Speter news1000) 77150276Speter basic_machine=m68030-sony 77250276Speter os=-newsos 77350276Speter ;; 77450276Speter news-3600 | risc-news) 77550276Speter basic_machine=mips-sony 77650276Speter os=-newsos 77750276Speter ;; 77862449Speter necv70) 77962449Speter basic_machine=v70-nec 78062449Speter os=-sysv 78162449Speter ;; 78250276Speter next | m*-next ) 78350276Speter basic_machine=m68k-next 78450276Speter case $os in 78550276Speter -nextstep* ) 78650276Speter ;; 78750276Speter -ns2*) 78850276Speter os=-nextstep2 78950276Speter ;; 79050276Speter *) 79150276Speter os=-nextstep3 79250276Speter ;; 79350276Speter esac 79450276Speter ;; 79550276Speter nh3000) 79650276Speter basic_machine=m68k-harris 79750276Speter os=-cxux 79850276Speter ;; 79950276Speter nh[45]000) 80050276Speter basic_machine=m88k-harris 80150276Speter os=-cxux 80250276Speter ;; 80350276Speter nindy960) 80450276Speter basic_machine=i960-intel 80550276Speter os=-nindy 80650276Speter ;; 80762449Speter mon960) 80862449Speter basic_machine=i960-intel 80962449Speter os=-mon960 81062449Speter ;; 81176726Speter nonstopux) 81276726Speter basic_machine=mips-compaq 81376726Speter os=-nonstopux 81476726Speter ;; 81550276Speter np1) 81650276Speter basic_machine=np1-gould 81750276Speter ;; 81862449Speter nsr-tandem) 81962449Speter basic_machine=nsr-tandem 82062449Speter ;; 82162449Speter op50n-* | op60c-*) 82262449Speter basic_machine=hppa1.1-oki 82362449Speter os=-proelf 82462449Speter ;; 825166124Srafan openrisc | openrisc-*) 82697049Speter basic_machine=or32-unknown 82797049Speter ;; 828166124Srafan os400) 829166124Srafan basic_machine=powerpc-ibm 830166124Srafan os=-os400 831166124Srafan ;; 83262449Speter OSE68000 | ose68000) 83362449Speter basic_machine=m68000-ericsson 83462449Speter os=-ose 83562449Speter ;; 83662449Speter os68k) 83762449Speter basic_machine=m68k-none 83862449Speter os=-os68k 83962449Speter ;; 84050276Speter pa-hitachi) 84150276Speter basic_machine=hppa1.1-hitachi 84250276Speter os=-hiuxwe2 84350276Speter ;; 84450276Speter paragon) 84550276Speter basic_machine=i860-intel 84650276Speter os=-osf 84750276Speter ;; 848178866Srafan parisc) 849178866Srafan basic_machine=hppa-unknown 850178866Srafan os=-linux 851178866Srafan ;; 852178866Srafan parisc-*) 853178866Srafan basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 854178866Srafan os=-linux 855178866Srafan ;; 85650276Speter pbd) 85750276Speter basic_machine=sparc-tti 85850276Speter ;; 85950276Speter pbb) 86050276Speter basic_machine=m68k-tti 86150276Speter ;; 862166124Srafan pc532 | pc532-*) 86350276Speter basic_machine=ns32k-pc532 86450276Speter ;; 865166124Srafan pc98) 866166124Srafan basic_machine=i386-pc 867166124Srafan ;; 868166124Srafan pc98-*) 869166124Srafan basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 870166124Srafan ;; 87197049Speter pentium | p5 | k5 | k6 | nexgen | viac3) 87250276Speter basic_machine=i586-pc 87350276Speter ;; 874166124Srafan pentiumpro | p6 | 6x86 | athlon | athlon_*) 87550276Speter basic_machine=i686-pc 87650276Speter ;; 877166124Srafan pentiumii | pentium2 | pentiumiii | pentium3) 87876726Speter basic_machine=i686-pc 87950276Speter ;; 880166124Srafan pentium4) 881166124Srafan basic_machine=i786-pc 882166124Srafan ;; 88397049Speter pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 88450276Speter basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 88550276Speter ;; 88662449Speter pentiumpro-* | p6-* | 6x86-* | athlon-*) 88750276Speter basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 88850276Speter ;; 889166124Srafan pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 89076726Speter basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 89150276Speter ;; 892166124Srafan pentium4-*) 893166124Srafan basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 894166124Srafan ;; 89550276Speter pn) 89650276Speter basic_machine=pn-gould 89750276Speter ;; 89876726Speter power) basic_machine=power-ibm 89950276Speter ;; 90050276Speter ppc) basic_machine=powerpc-unknown 901166124Srafan ;; 90250276Speter ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 90350276Speter ;; 90450276Speter ppcle | powerpclittle | ppc-le | powerpc-little) 90550276Speter basic_machine=powerpcle-unknown 906166124Srafan ;; 90750276Speter ppcle-* | powerpclittle-*) 90850276Speter basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 90950276Speter ;; 91097049Speter ppc64) basic_machine=powerpc64-unknown 911166124Srafan ;; 91297049Speter ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 91397049Speter ;; 91497049Speter ppc64le | powerpc64little | ppc64-le | powerpc64-little) 91597049Speter basic_machine=powerpc64le-unknown 916166124Srafan ;; 91797049Speter ppc64le-* | powerpc64little-*) 91897049Speter basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 91997049Speter ;; 92050276Speter ps2) 92150276Speter basic_machine=i386-ibm 92250276Speter ;; 92376726Speter pw32) 92476726Speter basic_machine=i586-unknown 92576726Speter os=-pw32 92676726Speter ;; 927166124Srafan rdos) 928166124Srafan basic_machine=i386-pc 929166124Srafan os=-rdos 930166124Srafan ;; 93162449Speter rom68k) 93262449Speter basic_machine=m68k-rom68k 93362449Speter os=-coff 93462449Speter ;; 93550276Speter rm[46]00) 93650276Speter basic_machine=mips-siemens 93750276Speter ;; 93850276Speter rtpc | rtpc-*) 93950276Speter basic_machine=romp-ibm 94050276Speter ;; 94197049Speter s390 | s390-*) 94297049Speter basic_machine=s390-ibm 94397049Speter ;; 94497049Speter s390x | s390x-*) 94597049Speter basic_machine=s390x-ibm 94697049Speter ;; 94762449Speter sa29200) 94862449Speter basic_machine=a29k-amd 94962449Speter os=-udi 95062449Speter ;; 951166124Srafan sb1) 952166124Srafan basic_machine=mipsisa64sb1-unknown 953166124Srafan ;; 954166124Srafan sb1el) 955166124Srafan basic_machine=mipsisa64sb1el-unknown 956166124Srafan ;; 957166124Srafan sde) 958166124Srafan basic_machine=mipsisa32-sde 959166124Srafan os=-elf 960166124Srafan ;; 961166124Srafan sei) 962166124Srafan basic_machine=mips-sei 963166124Srafan os=-seiux 964166124Srafan ;; 96550276Speter sequent) 96650276Speter basic_machine=i386-sequent 96750276Speter ;; 96850276Speter sh) 96950276Speter basic_machine=sh-hitachi 97050276Speter os=-hms 97150276Speter ;; 972174993Srafan sh5el) 973174993Srafan basic_machine=sh5le-unknown 974174993Srafan ;; 975166124Srafan sh64) 976166124Srafan basic_machine=sh64-unknown 977166124Srafan ;; 97897049Speter sparclite-wrs | simso-wrs) 97962449Speter basic_machine=sparclite-wrs 98062449Speter os=-vxworks 98162449Speter ;; 98250276Speter sps7) 98350276Speter basic_machine=m68k-bull 98450276Speter os=-sysv2 98550276Speter ;; 98650276Speter spur) 98750276Speter basic_machine=spur-unknown 98850276Speter ;; 98962449Speter st2000) 99062449Speter basic_machine=m68k-tandem 99162449Speter ;; 99262449Speter stratus) 99362449Speter basic_machine=i860-stratus 99462449Speter os=-sysv4 99562449Speter ;; 99650276Speter sun2) 99750276Speter basic_machine=m68000-sun 99850276Speter ;; 99950276Speter sun2os3) 100050276Speter basic_machine=m68000-sun 100150276Speter os=-sunos3 100250276Speter ;; 100350276Speter sun2os4) 100450276Speter basic_machine=m68000-sun 100550276Speter os=-sunos4 100650276Speter ;; 100750276Speter sun3os3) 100850276Speter basic_machine=m68k-sun 100950276Speter os=-sunos3 101050276Speter ;; 101150276Speter sun3os4) 101250276Speter basic_machine=m68k-sun 101350276Speter os=-sunos4 101450276Speter ;; 101550276Speter sun4os3) 101650276Speter basic_machine=sparc-sun 101750276Speter os=-sunos3 101850276Speter ;; 101950276Speter sun4os4) 102050276Speter basic_machine=sparc-sun 102150276Speter os=-sunos4 102250276Speter ;; 102350276Speter sun4sol2) 102450276Speter basic_machine=sparc-sun 102550276Speter os=-solaris2 102650276Speter ;; 102750276Speter sun3 | sun3-*) 102850276Speter basic_machine=m68k-sun 102950276Speter ;; 103050276Speter sun4) 103150276Speter basic_machine=sparc-sun 103250276Speter ;; 103350276Speter sun386 | sun386i | roadrunner) 103450276Speter basic_machine=i386-sun 103550276Speter ;; 1036166124Srafan sv1) 103762449Speter basic_machine=sv1-cray 103862449Speter os=-unicos 103962449Speter ;; 104050276Speter symmetry) 104150276Speter basic_machine=i386-sequent 104250276Speter os=-dynix 104350276Speter ;; 104462449Speter t3e) 104597049Speter basic_machine=alphaev5-cray 104662449Speter os=-unicos 104762449Speter ;; 104897049Speter t90) 104997049Speter basic_machine=t90-cray 105097049Speter os=-unicos 105197049Speter ;; 105266963Speter tic54x | c54x*) 105366963Speter basic_machine=tic54x-unknown 105466963Speter os=-coff 105566963Speter ;; 1056166124Srafan tic55x | c55x*) 1057166124Srafan basic_machine=tic55x-unknown 1058166124Srafan os=-coff 1059166124Srafan ;; 1060166124Srafan tic6x | c6x*) 1061166124Srafan basic_machine=tic6x-unknown 1062166124Srafan os=-coff 1063166124Srafan ;; 1064178866Srafan tile*) 1065178866Srafan basic_machine=tile-unknown 1066178866Srafan os=-linux-gnu 1067178866Srafan ;; 106850276Speter tx39) 106950276Speter basic_machine=mipstx39-unknown 107050276Speter ;; 107150276Speter tx39el) 107250276Speter basic_machine=mipstx39el-unknown 107350276Speter ;; 107497049Speter toad1) 107597049Speter basic_machine=pdp10-xkl 107697049Speter os=-tops20 107797049Speter ;; 107850276Speter tower | tower-32) 107950276Speter basic_machine=m68k-ncr 108050276Speter ;; 1081166124Srafan tpf) 1082166124Srafan basic_machine=s390x-ibm 1083166124Srafan os=-tpf 1084166124Srafan ;; 108550276Speter udi29k) 108650276Speter basic_machine=a29k-amd 108750276Speter os=-udi 108850276Speter ;; 108950276Speter ultra3) 109050276Speter basic_machine=a29k-nyu 109150276Speter os=-sym1 109250276Speter ;; 109362449Speter v810 | necv810) 109462449Speter basic_machine=v810-nec 109562449Speter os=-none 109662449Speter ;; 109750276Speter vaxv) 109850276Speter basic_machine=vax-dec 109950276Speter os=-sysv 110050276Speter ;; 110150276Speter vms) 110250276Speter basic_machine=vax-dec 110350276Speter os=-vms 110450276Speter ;; 110550276Speter vpp*|vx|vx-*) 1106166124Srafan basic_machine=f301-fujitsu 1107166124Srafan ;; 110850276Speter vxworks960) 110950276Speter basic_machine=i960-wrs 111050276Speter os=-vxworks 111150276Speter ;; 111250276Speter vxworks68) 111350276Speter basic_machine=m68k-wrs 111450276Speter os=-vxworks 111550276Speter ;; 111650276Speter vxworks29k) 111750276Speter basic_machine=a29k-wrs 111850276Speter os=-vxworks 111950276Speter ;; 112062449Speter w65*) 112162449Speter basic_machine=w65-wdc 112262449Speter os=-none 112362449Speter ;; 112462449Speter w89k-*) 112562449Speter basic_machine=hppa1.1-winbond 112662449Speter os=-proelf 112762449Speter ;; 1128166124Srafan xbox) 1129166124Srafan basic_machine=i686-pc 1130166124Srafan os=-mingw32 113150276Speter ;; 1132166124Srafan xps | xps100) 113350276Speter basic_machine=xps100-honeywell 113450276Speter ;; 113597049Speter ymp) 113697049Speter basic_machine=ymp-cray 113797049Speter os=-unicos 113897049Speter ;; 113962449Speter z8k-*-coff) 114062449Speter basic_machine=z8k-unknown 114162449Speter os=-sim 114262449Speter ;; 114350276Speter none) 114450276Speter basic_machine=none-none 114550276Speter os=-none 114650276Speter ;; 114750276Speter 114850276Speter# Here we handle the default manufacturer of certain CPU types. It is in 114950276Speter# some cases the only manufacturer, in others, it is the most popular. 115062449Speter w89k) 115162449Speter basic_machine=hppa1.1-winbond 115262449Speter ;; 115362449Speter op50n) 115462449Speter basic_machine=hppa1.1-oki 115562449Speter ;; 115662449Speter op60c) 115762449Speter basic_machine=hppa1.1-oki 115862449Speter ;; 115950276Speter romp) 116050276Speter basic_machine=romp-ibm 116150276Speter ;; 1162166124Srafan mmix) 1163166124Srafan basic_machine=mmix-knuth 1164166124Srafan ;; 116550276Speter rs6000) 116650276Speter basic_machine=rs6000-ibm 116750276Speter ;; 116850276Speter vax) 116950276Speter basic_machine=vax-dec 117050276Speter ;; 117176726Speter pdp10) 117276726Speter # there are many clones, so DEC is not a safe bet 117376726Speter basic_machine=pdp10-unknown 117476726Speter ;; 117550276Speter pdp11) 117650276Speter basic_machine=pdp11-dec 117750276Speter ;; 117850276Speter we32k) 117950276Speter basic_machine=we32k-att 118050276Speter ;; 1181166124Srafan sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) 118276726Speter basic_machine=sh-unknown 118362449Speter ;; 1184166124Srafan sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 118550276Speter basic_machine=sparc-sun 118650276Speter ;; 1187166124Srafan cydra) 118850276Speter basic_machine=cydra-cydrome 118950276Speter ;; 119050276Speter orion) 119150276Speter basic_machine=orion-highlevel 119250276Speter ;; 119350276Speter orion105) 119450276Speter basic_machine=clipper-highlevel 119550276Speter ;; 119662449Speter mac | mpw | mac-mpw) 119762449Speter basic_machine=m68k-apple 119862449Speter ;; 119962449Speter pmac | pmac-mpw) 120062449Speter basic_machine=powerpc-apple 120162449Speter ;; 120297049Speter *-unknown) 120397049Speter # Make sure to match an already-canonicalized machine name. 120497049Speter ;; 120550276Speter *) 120650276Speter echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 120750276Speter exit 1 120850276Speter ;; 120950276Speteresac 121050276Speter 121150276Speter# Here we canonicalize certain aliases for manufacturers. 121250276Spetercase $basic_machine in 121350276Speter *-digital*) 121450276Speter basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 121550276Speter ;; 121650276Speter *-commodore*) 121750276Speter basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 121850276Speter ;; 121950276Speter *) 122050276Speter ;; 122150276Speteresac 122250276Speter 122350276Speter# Decode manufacturer-specific aliases for certain operating systems. 122450276Speter 122550276Speterif [ x"$os" != x"" ] 122650276Speterthen 122750276Spetercase $os in 1228184989Srafan # First match some system type aliases 1229184989Srafan # that might get confused with valid system types. 123050276Speter # -solaris* is a basic system type, with this one exception. 123150276Speter -solaris1 | -solaris1.*) 123250276Speter os=`echo $os | sed -e 's|solaris1|sunos4|'` 123350276Speter ;; 123450276Speter -solaris) 123550276Speter os=-solaris2 123650276Speter ;; 123750276Speter -svr4*) 123850276Speter os=-sysv4 123950276Speter ;; 124050276Speter -unixware*) 124150276Speter os=-sysv4.2uw 124250276Speter ;; 124350276Speter -gnu/linux*) 124450276Speter os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 124550276Speter ;; 124650276Speter # First accept the basic system types. 124750276Speter # The portable systems comes first. 124850276Speter # Each alternative MUST END IN A *, to match a version number. 124950276Speter # -sysv* is not here because it comes later, after sysvr4. 125050276Speter -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 125150276Speter | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 125250276Speter | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 125350276Speter | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 125450276Speter | -aos* \ 125562449Speter | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 125650276Speter | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1257166124Srafan | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1258166124Srafan | -openbsd* | -solidbsd* \ 1259166124Srafan | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1260166124Srafan | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 126150276Speter | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 126250276Speter | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1263184989Srafan | -chorusos* | -chorusrdb* | -cegcc* \ 126450276Speter | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1265166124Srafan | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 1266166124Srafan | -uxpv* | -beos* | -mpeix* | -udk* \ 1267166124Srafan | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 126876726Speter | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 126997049Speter | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 127097049Speter | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1271166124Srafan | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1272166124Srafan | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1273174993Srafan | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) 127450276Speter # Remember, each alternative MUST END IN *, to match a version number. 127550276Speter ;; 127662449Speter -qnx*) 127762449Speter case $basic_machine in 127897049Speter x86-* | i*86-*) 127962449Speter ;; 128062449Speter *) 128162449Speter os=-nto$os 128262449Speter ;; 128362449Speter esac 128462449Speter ;; 1285166124Srafan -nto-qnx*) 1286166124Srafan ;; 128762449Speter -nto*) 1288166124Srafan os=`echo $os | sed -e 's|nto|nto-qnx|'` 128962449Speter ;; 129062449Speter -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1291166124Srafan | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 129262449Speter | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 129362449Speter ;; 129462449Speter -mac*) 129562449Speter os=`echo $os | sed -e 's|mac|macos|'` 129662449Speter ;; 1297166124Srafan -linux-dietlibc) 1298166124Srafan os=-linux-dietlibc 1299166124Srafan ;; 130050276Speter -linux*) 130150276Speter os=`echo $os | sed -e 's|linux|linux-gnu|'` 130250276Speter ;; 130350276Speter -sunos5*) 130450276Speter os=`echo $os | sed -e 's|sunos5|solaris2|'` 130550276Speter ;; 130650276Speter -sunos6*) 130750276Speter os=`echo $os | sed -e 's|sunos6|solaris3|'` 130850276Speter ;; 130962449Speter -opened*) 131062449Speter os=-openedition 131162449Speter ;; 1312184989Srafan -os400*) 1313166124Srafan os=-os400 1314166124Srafan ;; 131562449Speter -wince*) 131662449Speter os=-wince 131762449Speter ;; 131850276Speter -osfrose*) 131950276Speter os=-osfrose 132050276Speter ;; 132150276Speter -osf*) 132250276Speter os=-osf 132350276Speter ;; 132450276Speter -utek*) 132550276Speter os=-bsd 132650276Speter ;; 132750276Speter -dynix*) 132850276Speter os=-bsd 132950276Speter ;; 133050276Speter -acis*) 133150276Speter os=-aos 133250276Speter ;; 133397049Speter -atheos*) 133497049Speter os=-atheos 133597049Speter ;; 1336166124Srafan -syllable*) 1337166124Srafan os=-syllable 1338166124Srafan ;; 133962449Speter -386bsd) 134062449Speter os=-bsd 134162449Speter ;; 134250276Speter -ctix* | -uts*) 134350276Speter os=-sysv 134450276Speter ;; 134597049Speter -nova*) 134697049Speter os=-rtmk-nova 134797049Speter ;; 134850276Speter -ns2 ) 1349166124Srafan os=-nextstep2 135050276Speter ;; 135176726Speter -nsk*) 135262449Speter os=-nsk 135362449Speter ;; 135450276Speter # Preserve the version number of sinix5. 135550276Speter -sinix5.*) 135650276Speter os=`echo $os | sed -e 's|sinix|sysv|'` 135750276Speter ;; 135850276Speter -sinix*) 135950276Speter os=-sysv4 136050276Speter ;; 1361184989Srafan -tpf*) 1362166124Srafan os=-tpf 1363166124Srafan ;; 136450276Speter -triton*) 136550276Speter os=-sysv3 136650276Speter ;; 136750276Speter -oss*) 136850276Speter os=-sysv3 136950276Speter ;; 137050276Speter -svr4) 137150276Speter os=-sysv4 137250276Speter ;; 137350276Speter -svr3) 137450276Speter os=-sysv3 137550276Speter ;; 137650276Speter -sysvr4) 137750276Speter os=-sysv4 137850276Speter ;; 137950276Speter # This must come after -sysvr4. 138050276Speter -sysv*) 138150276Speter ;; 138262449Speter -ose*) 138362449Speter os=-ose 138462449Speter ;; 138562449Speter -es1800*) 138662449Speter os=-ose 138762449Speter ;; 138850276Speter -xenix) 138950276Speter os=-xenix 139050276Speter ;; 1391166124Srafan -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1392166124Srafan os=-mint 139362449Speter ;; 1394166124Srafan -aros*) 1395166124Srafan os=-aros 1396166124Srafan ;; 1397166124Srafan -kaos*) 1398166124Srafan os=-kaos 1399166124Srafan ;; 1400166124Srafan -zvmoe) 1401166124Srafan os=-zvmoe 1402166124Srafan ;; 1403184989Srafan -dicos*) 1404184989Srafan os=-dicos 1405184989Srafan ;; 140650276Speter -none) 140750276Speter ;; 140850276Speter *) 140950276Speter # Get rid of the `-' at the beginning of $os. 141050276Speter os=`echo $os | sed 's/[^-]*-//'` 141150276Speter echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 141250276Speter exit 1 141350276Speter ;; 141450276Speteresac 141550276Speterelse 141650276Speter 141750276Speter# Here we handle the default operating systems that come with various machines. 141850276Speter# The value should be what the vendor currently ships out the door with their 141950276Speter# machine or put another way, the most popular os provided with the machine. 142050276Speter 142150276Speter# Note that if you're going to try to match "-MANUFACTURER" here (say, 142250276Speter# "-sun"), then you have to tell the case statement up towards the top 142350276Speter# that MANUFACTURER isn't an operating system. Otherwise, code above 142450276Speter# will signal an error saying that MANUFACTURER isn't an operating 142550276Speter# system, and we'll never get to this point. 142650276Speter 142750276Spetercase $basic_machine in 1428184989Srafan score-*) 1429174993Srafan os=-elf 1430174993Srafan ;; 1431184989Srafan spu-*) 1432166124Srafan os=-elf 1433166124Srafan ;; 143450276Speter *-acorn) 143550276Speter os=-riscix1.2 143650276Speter ;; 143762449Speter arm*-rebel) 143862449Speter os=-linux 143962449Speter ;; 144050276Speter arm*-semi) 144150276Speter os=-aout 144250276Speter ;; 1443184989Srafan c4x-* | tic4x-*) 1444184989Srafan os=-coff 1445166124Srafan ;; 144697049Speter # This must come before the *-dec entry. 144776726Speter pdp10-*) 144876726Speter os=-tops20 144976726Speter ;; 1450166124Srafan pdp11-*) 145150276Speter os=-none 145250276Speter ;; 145350276Speter *-dec | vax-*) 145450276Speter os=-ultrix4.2 145550276Speter ;; 145650276Speter m68*-apollo) 145750276Speter os=-domain 145850276Speter ;; 145950276Speter i386-sun) 146050276Speter os=-sunos4.0.2 146150276Speter ;; 146250276Speter m68000-sun) 146350276Speter os=-sunos3 146450276Speter # This also exists in the configure program, but was not the 146550276Speter # default. 146650276Speter # os=-sunos4 146750276Speter ;; 146862449Speter m68*-cisco) 146962449Speter os=-aout 147062449Speter ;; 1471184989Srafan mep-*) 1472174993Srafan os=-elf 1473174993Srafan ;; 147462449Speter mips*-cisco) 147562449Speter os=-elf 147662449Speter ;; 147762449Speter mips*-*) 147862449Speter os=-elf 147962449Speter ;; 148097049Speter or32-*) 148197049Speter os=-coff 148297049Speter ;; 148350276Speter *-tti) # must be before sparc entry or we get the wrong os. 148450276Speter os=-sysv3 148550276Speter ;; 148650276Speter sparc-* | *-sun) 148750276Speter os=-sunos4.1.1 148850276Speter ;; 148950276Speter *-be) 149050276Speter os=-beos 149150276Speter ;; 1492166124Srafan *-haiku) 1493166124Srafan os=-haiku 1494166124Srafan ;; 149550276Speter *-ibm) 149650276Speter os=-aix 149750276Speter ;; 1498184989Srafan *-knuth) 1499166124Srafan os=-mmixware 1500166124Srafan ;; 150162449Speter *-wec) 150262449Speter os=-proelf 150362449Speter ;; 150462449Speter *-winbond) 150562449Speter os=-proelf 150662449Speter ;; 150762449Speter *-oki) 150862449Speter os=-proelf 150962449Speter ;; 151050276Speter *-hp) 151150276Speter os=-hpux 151250276Speter ;; 151350276Speter *-hitachi) 151450276Speter os=-hiux 151550276Speter ;; 151650276Speter i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 151750276Speter os=-sysv 151850276Speter ;; 151950276Speter *-cbm) 152050276Speter os=-amigaos 152150276Speter ;; 152250276Speter *-dg) 152350276Speter os=-dgux 152450276Speter ;; 152550276Speter *-dolphin) 152650276Speter os=-sysv3 152750276Speter ;; 152850276Speter m68k-ccur) 152950276Speter os=-rtu 153050276Speter ;; 153150276Speter m88k-omron*) 153250276Speter os=-luna 153350276Speter ;; 153450276Speter *-next ) 153550276Speter os=-nextstep 153650276Speter ;; 153750276Speter *-sequent) 153850276Speter os=-ptx 153950276Speter ;; 154050276Speter *-crds) 154150276Speter os=-unos 154250276Speter ;; 154350276Speter *-ns) 154450276Speter os=-genix 154550276Speter ;; 154650276Speter i370-*) 154750276Speter os=-mvs 154850276Speter ;; 154950276Speter *-next) 155050276Speter os=-nextstep3 155150276Speter ;; 1552166124Srafan *-gould) 155350276Speter os=-sysv 155450276Speter ;; 1555166124Srafan *-highlevel) 155650276Speter os=-bsd 155750276Speter ;; 155850276Speter *-encore) 155950276Speter os=-bsd 156050276Speter ;; 1561166124Srafan *-sgi) 156250276Speter os=-irix 156350276Speter ;; 1564166124Srafan *-siemens) 156550276Speter os=-sysv4 156650276Speter ;; 156750276Speter *-masscomp) 156850276Speter os=-rtu 156950276Speter ;; 157076726Speter f30[01]-fujitsu | f700-fujitsu) 157150276Speter os=-uxpv 157250276Speter ;; 157362449Speter *-rom68k) 157462449Speter os=-coff 157562449Speter ;; 157662449Speter *-*bug) 157762449Speter os=-coff 157862449Speter ;; 157962449Speter *-apple) 158062449Speter os=-macos 158162449Speter ;; 158262449Speter *-atari*) 158362449Speter os=-mint 158462449Speter ;; 158550276Speter *) 158650276Speter os=-none 158750276Speter ;; 158850276Speteresac 158950276Speterfi 159050276Speter 159150276Speter# Here we handle the case where we know the os, and the CPU type, but not the 159250276Speter# manufacturer. We pick the logical manufacturer. 159350276Spetervendor=unknown 159450276Spetercase $basic_machine in 159550276Speter *-unknown) 159650276Speter case $os in 159750276Speter -riscix*) 159850276Speter vendor=acorn 159950276Speter ;; 160050276Speter -sunos*) 160150276Speter vendor=sun 160250276Speter ;; 160350276Speter -aix*) 160450276Speter vendor=ibm 160550276Speter ;; 160662449Speter -beos*) 160762449Speter vendor=be 160862449Speter ;; 160950276Speter -hpux*) 161050276Speter vendor=hp 161150276Speter ;; 161262449Speter -mpeix*) 161362449Speter vendor=hp 161462449Speter ;; 161550276Speter -hiux*) 161650276Speter vendor=hitachi 161750276Speter ;; 161850276Speter -unos*) 161950276Speter vendor=crds 162050276Speter ;; 162150276Speter -dgux*) 162250276Speter vendor=dg 162350276Speter ;; 162450276Speter -luna*) 162550276Speter vendor=omron 162650276Speter ;; 162750276Speter -genix*) 162850276Speter vendor=ns 162950276Speter ;; 163062449Speter -mvs* | -opened*) 163150276Speter vendor=ibm 163250276Speter ;; 1633166124Srafan -os400*) 1634166124Srafan vendor=ibm 1635166124Srafan ;; 163650276Speter -ptx*) 163750276Speter vendor=sequent 163850276Speter ;; 1639166124Srafan -tpf*) 1640166124Srafan vendor=ibm 1641166124Srafan ;; 164297049Speter -vxsim* | -vxworks* | -windiss*) 164350276Speter vendor=wrs 164450276Speter ;; 164550276Speter -aux*) 164650276Speter vendor=apple 164750276Speter ;; 164862449Speter -hms*) 164962449Speter vendor=hitachi 165062449Speter ;; 165162449Speter -mpw* | -macos*) 165262449Speter vendor=apple 165362449Speter ;; 165476726Speter -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 165562449Speter vendor=atari 165662449Speter ;; 165797049Speter -vos*) 165897049Speter vendor=stratus 165997049Speter ;; 166050276Speter esac 166150276Speter basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 166250276Speter ;; 166350276Speteresac 166450276Speter 166550276Speterecho $basic_machine$os 1666166124Srafanexit 166762449Speter 166862449Speter# Local variables: 166962449Speter# eval: (add-hook 'write-file-hooks 'time-stamp) 167076726Speter# time-stamp-start: "timestamp='" 167162449Speter# time-stamp-format: "%:y-%02m-%02d" 167262449Speter# time-stamp-end: "'" 167362449Speter# End: 1674