config.sub revision 68af480f
197e8a2e8Smrg#! /bin/sh 297e8a2e8Smrg# Configuration validation subroutine script. 368af480fSmrg# Copyright 1992-2013 Free Software Foundation, Inc. 497e8a2e8Smrg 568af480fSmrgtimestamp='2013-04-24' 697e8a2e8Smrg 768af480fSmrg# This file is free software; you can redistribute it and/or modify it 868af480fSmrg# under the terms of the GNU General Public License as published by 968af480fSmrg# the Free Software Foundation; either version 3 of the License, or 1097e8a2e8Smrg# (at your option) any later version. 1197e8a2e8Smrg# 1268af480fSmrg# This program is distributed in the hope that it will be useful, but 1368af480fSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1468af480fSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1568af480fSmrg# General Public License for more details. 1697e8a2e8Smrg# 1797e8a2e8Smrg# You should have received a copy of the GNU General Public License 1868af480fSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 19d7accfefSmrg# 2097e8a2e8Smrg# As a special exception to the GNU General Public License, if you 2197e8a2e8Smrg# distribute this file as part of a program that contains a 2297e8a2e8Smrg# configuration script generated by Autoconf, you may include it under 2368af480fSmrg# the same distribution terms that you use for the rest of that 2468af480fSmrg# program. This Exception is an additional permission under section 7 2568af480fSmrg# of the GNU General Public License, version 3 ("GPLv3"). 2697e8a2e8Smrg 27d7accfefSmrg 2868af480fSmrg# Please send patches with a ChangeLog entry to config-patches@gnu.org. 2997e8a2e8Smrg# 3097e8a2e8Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3197e8a2e8Smrg# Supply the specified configuration type as an argument. 3297e8a2e8Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 3397e8a2e8Smrg# Otherwise, we print the canonical config type on stdout and succeed. 3497e8a2e8Smrg 35c3f70f0aSmrg# You can get the latest version of this script from: 36c3f70f0aSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 37c3f70f0aSmrg 3897e8a2e8Smrg# This file is supposed to be the same for all GNU packages 3997e8a2e8Smrg# and recognize all the CPU types, system types and aliases 4097e8a2e8Smrg# that are meaningful with *any* GNU software. 4197e8a2e8Smrg# Each package is responsible for reporting which valid configurations 4297e8a2e8Smrg# it does not support. The user should be able to distinguish 4397e8a2e8Smrg# a failure to support a valid configuration from a meaningless 4497e8a2e8Smrg# configuration. 4597e8a2e8Smrg 4697e8a2e8Smrg# The goal of this file is to map all the various variations of a given 4797e8a2e8Smrg# machine specification into a single specification in the form: 4897e8a2e8Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4997e8a2e8Smrg# or in some cases, the newer four-part form: 5097e8a2e8Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5197e8a2e8Smrg# It is wrong to echo any other type of specification. 5297e8a2e8Smrg 5397e8a2e8Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5497e8a2e8Smrg 5597e8a2e8Smrgusage="\ 5697e8a2e8SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 5797e8a2e8Smrg $0 [OPTION] ALIAS 5897e8a2e8Smrg 5997e8a2e8SmrgCanonicalize a configuration name. 6097e8a2e8Smrg 6197e8a2e8SmrgOperation modes: 6297e8a2e8Smrg -h, --help print this help, then exit 6397e8a2e8Smrg -t, --time-stamp print date of last modification, then exit 6497e8a2e8Smrg -v, --version print version number, then exit 6597e8a2e8Smrg 6697e8a2e8SmrgReport bugs and patches to <config-patches@gnu.org>." 6797e8a2e8Smrg 6897e8a2e8Smrgversion="\ 6997e8a2e8SmrgGNU config.sub ($timestamp) 7097e8a2e8Smrg 7168af480fSmrgCopyright 1992-2013 Free Software Foundation, Inc. 7297e8a2e8Smrg 7397e8a2e8SmrgThis is free software; see the source for copying conditions. There is NO 7497e8a2e8Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7597e8a2e8Smrg 7697e8a2e8Smrghelp=" 7797e8a2e8SmrgTry \`$me --help' for more information." 7897e8a2e8Smrg 7997e8a2e8Smrg# Parse command line 8097e8a2e8Smrgwhile test $# -gt 0 ; do 8197e8a2e8Smrg case $1 in 8297e8a2e8Smrg --time-stamp | --time* | -t ) 83d7accfefSmrg echo "$timestamp" ; exit ;; 8497e8a2e8Smrg --version | -v ) 85d7accfefSmrg echo "$version" ; exit ;; 8697e8a2e8Smrg --help | --h* | -h ) 87d7accfefSmrg echo "$usage"; exit ;; 8897e8a2e8Smrg -- ) # Stop option processing 8997e8a2e8Smrg shift; break ;; 9097e8a2e8Smrg - ) # Use stdin as input. 9197e8a2e8Smrg break ;; 9297e8a2e8Smrg -* ) 9397e8a2e8Smrg echo "$me: invalid option $1$help" 9497e8a2e8Smrg exit 1 ;; 9597e8a2e8Smrg 9697e8a2e8Smrg *local*) 9797e8a2e8Smrg # First pass through any local machine types. 9897e8a2e8Smrg echo $1 99d7accfefSmrg exit ;; 10097e8a2e8Smrg 10197e8a2e8Smrg * ) 10297e8a2e8Smrg break ;; 10397e8a2e8Smrg esac 10497e8a2e8Smrgdone 10597e8a2e8Smrg 10697e8a2e8Smrgcase $# in 10797e8a2e8Smrg 0) echo "$me: missing argument$help" >&2 10897e8a2e8Smrg exit 1;; 10997e8a2e8Smrg 1) ;; 11097e8a2e8Smrg *) echo "$me: too many arguments$help" >&2 11197e8a2e8Smrg exit 1;; 11297e8a2e8Smrgesac 11397e8a2e8Smrg 11497e8a2e8Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11597e8a2e8Smrg# Here we must recognize all the valid KERNEL-OS combinations. 11697e8a2e8Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11797e8a2e8Smrgcase $maybe_os in 118c3f70f0aSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 11968af480fSmrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 120c3f70f0aSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 121d7accfefSmrg kopensolaris*-gnu* | \ 122d7accfefSmrg storm-chaos* | os2-emx* | rtmk-nova*) 12397e8a2e8Smrg os=-$maybe_os 12497e8a2e8Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12597e8a2e8Smrg ;; 12668af480fSmrg android-linux) 12768af480fSmrg os=-linux-android 12868af480fSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 12968af480fSmrg ;; 13097e8a2e8Smrg *) 13197e8a2e8Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13297e8a2e8Smrg if [ $basic_machine != $1 ] 13397e8a2e8Smrg then os=`echo $1 | sed 's/.*-/-/'` 13497e8a2e8Smrg else os=; fi 13597e8a2e8Smrg ;; 13697e8a2e8Smrgesac 13797e8a2e8Smrg 13897e8a2e8Smrg### Let's recognize common machines as not being operating systems so 13997e8a2e8Smrg### that things like config.sub decstation-3100 work. We also 14097e8a2e8Smrg### recognize some manufacturers as not being operating systems, so we 14197e8a2e8Smrg### can provide default operating systems below. 14297e8a2e8Smrgcase $os in 14397e8a2e8Smrg -sun*os*) 14497e8a2e8Smrg # Prevent following clause from handling this invalid input. 14597e8a2e8Smrg ;; 14697e8a2e8Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14797e8a2e8Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14897e8a2e8Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14997e8a2e8Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15097e8a2e8Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15197e8a2e8Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15268af480fSmrg -apple | -axis | -knuth | -cray | -microblaze*) 15397e8a2e8Smrg os= 15497e8a2e8Smrg basic_machine=$1 15597e8a2e8Smrg ;; 15668af480fSmrg -bluegene*) 15768af480fSmrg os=-cnk 158c3f70f0aSmrg ;; 15997e8a2e8Smrg -sim | -cisco | -oki | -wec | -winbond) 16097e8a2e8Smrg os= 16197e8a2e8Smrg basic_machine=$1 16297e8a2e8Smrg ;; 16397e8a2e8Smrg -scout) 16497e8a2e8Smrg ;; 16597e8a2e8Smrg -wrs) 16697e8a2e8Smrg os=-vxworks 16797e8a2e8Smrg basic_machine=$1 16897e8a2e8Smrg ;; 16997e8a2e8Smrg -chorusos*) 17097e8a2e8Smrg os=-chorusos 17197e8a2e8Smrg basic_machine=$1 17297e8a2e8Smrg ;; 17368af480fSmrg -chorusrdb) 17468af480fSmrg os=-chorusrdb 17597e8a2e8Smrg basic_machine=$1 17668af480fSmrg ;; 17797e8a2e8Smrg -hiux*) 17897e8a2e8Smrg os=-hiuxwe2 17997e8a2e8Smrg ;; 180d7accfefSmrg -sco6) 181d7accfefSmrg os=-sco5v6 182d7accfefSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 183d7accfefSmrg ;; 18497e8a2e8Smrg -sco5) 18597e8a2e8Smrg os=-sco3.2v5 18697e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18797e8a2e8Smrg ;; 18897e8a2e8Smrg -sco4) 18997e8a2e8Smrg os=-sco3.2v4 19097e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19197e8a2e8Smrg ;; 19297e8a2e8Smrg -sco3.2.[4-9]*) 19397e8a2e8Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19497e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19597e8a2e8Smrg ;; 19697e8a2e8Smrg -sco3.2v[4-9]*) 19797e8a2e8Smrg # Don't forget version if it is 3.2v4 or newer. 19897e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19997e8a2e8Smrg ;; 200d7accfefSmrg -sco5v6*) 201d7accfefSmrg # Don't forget version if it is 3.2v4 or newer. 202d7accfefSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 203d7accfefSmrg ;; 20497e8a2e8Smrg -sco*) 20597e8a2e8Smrg os=-sco3.2v2 20697e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20797e8a2e8Smrg ;; 20897e8a2e8Smrg -udk*) 20997e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21097e8a2e8Smrg ;; 21197e8a2e8Smrg -isc) 21297e8a2e8Smrg os=-isc2.2 21397e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21497e8a2e8Smrg ;; 21597e8a2e8Smrg -clix*) 21697e8a2e8Smrg basic_machine=clipper-intergraph 21797e8a2e8Smrg ;; 21897e8a2e8Smrg -isc*) 21997e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22097e8a2e8Smrg ;; 22168af480fSmrg -lynx*178) 22268af480fSmrg os=-lynxos178 22368af480fSmrg ;; 22468af480fSmrg -lynx*5) 22568af480fSmrg os=-lynxos5 22668af480fSmrg ;; 22797e8a2e8Smrg -lynx*) 22897e8a2e8Smrg os=-lynxos 22997e8a2e8Smrg ;; 23097e8a2e8Smrg -ptx*) 23197e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23297e8a2e8Smrg ;; 23397e8a2e8Smrg -windowsnt*) 23497e8a2e8Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23597e8a2e8Smrg ;; 23697e8a2e8Smrg -psos*) 23797e8a2e8Smrg os=-psos 23897e8a2e8Smrg ;; 23997e8a2e8Smrg -mint | -mint[0-9]*) 24097e8a2e8Smrg basic_machine=m68k-atari 24197e8a2e8Smrg os=-mint 24297e8a2e8Smrg ;; 24397e8a2e8Smrgesac 24497e8a2e8Smrg 24597e8a2e8Smrg# Decode aliases for certain CPU-COMPANY combinations. 24697e8a2e8Smrgcase $basic_machine in 24797e8a2e8Smrg # Recognize the basic CPU types without company name. 24897e8a2e8Smrg # Some are omitted here because they have special meanings below. 24997e8a2e8Smrg 1750a | 580 \ 25097e8a2e8Smrg | a29k \ 25168af480fSmrg | aarch64 | aarch64_be \ 25297e8a2e8Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25397e8a2e8Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 254d7accfefSmrg | am33_2.0 \ 25568af480fSmrg | arc | arceb \ 25668af480fSmrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 25768af480fSmrg | avr | avr32 \ 25868af480fSmrg | be32 | be64 \ 259d7accfefSmrg | bfin \ 26097e8a2e8Smrg | c4x | clipper \ 26197e8a2e8Smrg | d10v | d30v | dlx | dsp16xx \ 26268af480fSmrg | epiphany \ 263d7accfefSmrg | fido | fr30 | frv \ 26497e8a2e8Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 26568af480fSmrg | hexagon \ 26697e8a2e8Smrg | i370 | i860 | i960 | ia64 \ 267d7accfefSmrg | ip2k | iq2000 \ 26868af480fSmrg | le32 | le64 \ 269d7accfefSmrg | lm32 \ 270d7accfefSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 27168af480fSmrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27297e8a2e8Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27397e8a2e8Smrg | mips16 \ 27497e8a2e8Smrg | mips64 | mips64el \ 275d7accfefSmrg | mips64octeon | mips64octeonel \ 27697e8a2e8Smrg | mips64orion | mips64orionel \ 277d7accfefSmrg | mips64r5900 | mips64r5900el \ 278d7accfefSmrg | mips64vr | mips64vrel \ 27997e8a2e8Smrg | mips64vr4100 | mips64vr4100el \ 28097e8a2e8Smrg | mips64vr4300 | mips64vr4300el \ 28197e8a2e8Smrg | mips64vr5000 | mips64vr5000el \ 282d7accfefSmrg | mips64vr5900 | mips64vr5900el \ 28397e8a2e8Smrg | mipsisa32 | mipsisa32el \ 28497e8a2e8Smrg | mipsisa32r2 | mipsisa32r2el \ 28597e8a2e8Smrg | mipsisa64 | mipsisa64el \ 286d7accfefSmrg | mipsisa64r2 | mipsisa64r2el \ 28797e8a2e8Smrg | mipsisa64sb1 | mipsisa64sb1el \ 28897e8a2e8Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 28968af480fSmrg | mipsr5900 | mipsr5900el \ 29097e8a2e8Smrg | mipstx39 | mipstx39el \ 29197e8a2e8Smrg | mn10200 | mn10300 \ 292d7accfefSmrg | moxie \ 293d7accfefSmrg | mt \ 29497e8a2e8Smrg | msp430 \ 295c3f70f0aSmrg | nds32 | nds32le | nds32be \ 29668af480fSmrg | nios | nios2 | nios2eb | nios2el \ 29797e8a2e8Smrg | ns16k | ns32k \ 29868af480fSmrg | open8 \ 29968af480fSmrg | or1k | or32 \ 30097e8a2e8Smrg | pdp10 | pdp11 | pj | pjl \ 30168af480fSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 30297e8a2e8Smrg | pyramid \ 30368af480fSmrg | rl78 | rx \ 304d7accfefSmrg | score \ 305d7accfefSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30697e8a2e8Smrg | sh64 | sh64le \ 307d7accfefSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 308d7accfefSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 30968af480fSmrg | spu \ 31068af480fSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 311c3f70f0aSmrg | ubicom32 \ 31268af480fSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31397e8a2e8Smrg | we32k \ 31468af480fSmrg | x86 | xc16x | xstormy16 | xtensa \ 315d7accfefSmrg | z8k | z80) 31697e8a2e8Smrg basic_machine=$basic_machine-unknown 31797e8a2e8Smrg ;; 318c3f70f0aSmrg c54x) 319c3f70f0aSmrg basic_machine=tic54x-unknown 320c3f70f0aSmrg ;; 321c3f70f0aSmrg c55x) 322c3f70f0aSmrg basic_machine=tic55x-unknown 323c3f70f0aSmrg ;; 324c3f70f0aSmrg c6x) 325c3f70f0aSmrg basic_machine=tic6x-unknown 326c3f70f0aSmrg ;; 32768af480fSmrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 32897e8a2e8Smrg basic_machine=$basic_machine-unknown 32997e8a2e8Smrg os=-none 33097e8a2e8Smrg ;; 33197e8a2e8Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33297e8a2e8Smrg ;; 333d7accfefSmrg ms1) 334d7accfefSmrg basic_machine=mt-unknown 335d7accfefSmrg ;; 33697e8a2e8Smrg 33768af480fSmrg strongarm | thumb | xscale) 33868af480fSmrg basic_machine=arm-unknown 33968af480fSmrg ;; 34068af480fSmrg xgate) 34168af480fSmrg basic_machine=$basic_machine-unknown 34268af480fSmrg os=-none 34368af480fSmrg ;; 34468af480fSmrg xscaleeb) 34568af480fSmrg basic_machine=armeb-unknown 34668af480fSmrg ;; 34768af480fSmrg 34868af480fSmrg xscaleel) 34968af480fSmrg basic_machine=armel-unknown 35068af480fSmrg ;; 35168af480fSmrg 35297e8a2e8Smrg # We use `pc' rather than `unknown' 35397e8a2e8Smrg # because (1) that's what they normally are, and 35497e8a2e8Smrg # (2) the word "unknown" tends to confuse beginning users. 35597e8a2e8Smrg i*86 | x86_64) 35697e8a2e8Smrg basic_machine=$basic_machine-pc 35797e8a2e8Smrg ;; 35897e8a2e8Smrg # Object if more than one company name word. 35997e8a2e8Smrg *-*-*) 36097e8a2e8Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36197e8a2e8Smrg exit 1 36297e8a2e8Smrg ;; 36397e8a2e8Smrg # Recognize the basic CPU types with company name. 36497e8a2e8Smrg 580-* \ 36597e8a2e8Smrg | a29k-* \ 36668af480fSmrg | aarch64-* | aarch64_be-* \ 36797e8a2e8Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 36897e8a2e8Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 36968af480fSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37097e8a2e8Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 371d7accfefSmrg | avr-* | avr32-* \ 37268af480fSmrg | be32-* | be64-* \ 373d7accfefSmrg | bfin-* | bs2000-* \ 374c3f70f0aSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 375d7accfefSmrg | clipper-* | craynv-* | cydra-* \ 37697e8a2e8Smrg | d10v-* | d30v-* | dlx-* \ 37797e8a2e8Smrg | elxsi-* \ 378d7accfefSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 37997e8a2e8Smrg | h8300-* | h8500-* \ 38097e8a2e8Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 38168af480fSmrg | hexagon-* \ 38297e8a2e8Smrg | i*86-* | i860-* | i960-* | ia64-* \ 383d7accfefSmrg | ip2k-* | iq2000-* \ 38468af480fSmrg | le32-* | le64-* \ 385d7accfefSmrg | lm32-* \ 386d7accfefSmrg | m32c-* | m32r-* | m32rle-* \ 38797e8a2e8Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 38868af480fSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 38968af480fSmrg | microblaze-* | microblazeel-* \ 39097e8a2e8Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 39197e8a2e8Smrg | mips16-* \ 39297e8a2e8Smrg | mips64-* | mips64el-* \ 393d7accfefSmrg | mips64octeon-* | mips64octeonel-* \ 39497e8a2e8Smrg | mips64orion-* | mips64orionel-* \ 395d7accfefSmrg | mips64r5900-* | mips64r5900el-* \ 396d7accfefSmrg | mips64vr-* | mips64vrel-* \ 39797e8a2e8Smrg | mips64vr4100-* | mips64vr4100el-* \ 39897e8a2e8Smrg | mips64vr4300-* | mips64vr4300el-* \ 39997e8a2e8Smrg | mips64vr5000-* | mips64vr5000el-* \ 400d7accfefSmrg | mips64vr5900-* | mips64vr5900el-* \ 40197e8a2e8Smrg | mipsisa32-* | mipsisa32el-* \ 40297e8a2e8Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 40397e8a2e8Smrg | mipsisa64-* | mipsisa64el-* \ 404d7accfefSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 40597e8a2e8Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 40697e8a2e8Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 40768af480fSmrg | mipsr5900-* | mipsr5900el-* \ 40897e8a2e8Smrg | mipstx39-* | mipstx39el-* \ 409d7accfefSmrg | mmix-* \ 410d7accfefSmrg | mt-* \ 41197e8a2e8Smrg | msp430-* \ 412c3f70f0aSmrg | nds32-* | nds32le-* | nds32be-* \ 41368af480fSmrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 414d7accfefSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 41568af480fSmrg | open8-* \ 41697e8a2e8Smrg | orion-* \ 41797e8a2e8Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 41868af480fSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 41997e8a2e8Smrg | pyramid-* \ 42068af480fSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 421d7accfefSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 42297e8a2e8Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 423d7accfefSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 424d7accfefSmrg | sparclite-* \ 42568af480fSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 42668af480fSmrg | tahoe-* \ 427c3f70f0aSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 42868af480fSmrg | tile*-* \ 42997e8a2e8Smrg | tron-* \ 430c3f70f0aSmrg | ubicom32-* \ 43168af480fSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 43268af480fSmrg | vax-* \ 43397e8a2e8Smrg | we32k-* \ 43468af480fSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 435d7accfefSmrg | xstormy16-* | xtensa*-* \ 43697e8a2e8Smrg | ymp-* \ 437d7accfefSmrg | z8k-* | z80-*) 438d7accfefSmrg ;; 439d7accfefSmrg # Recognize the basic CPU types without company name, with glob match. 440d7accfefSmrg xtensa*) 441d7accfefSmrg basic_machine=$basic_machine-unknown 44297e8a2e8Smrg ;; 44397e8a2e8Smrg # Recognize the various machine names and aliases which stand 44497e8a2e8Smrg # for a CPU type and a company and sometimes even an OS. 44597e8a2e8Smrg 386bsd) 44697e8a2e8Smrg basic_machine=i386-unknown 44797e8a2e8Smrg os=-bsd 44897e8a2e8Smrg ;; 44997e8a2e8Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 45097e8a2e8Smrg basic_machine=m68000-att 45197e8a2e8Smrg ;; 45297e8a2e8Smrg 3b*) 45397e8a2e8Smrg basic_machine=we32k-att 45497e8a2e8Smrg ;; 45597e8a2e8Smrg a29khif) 45697e8a2e8Smrg basic_machine=a29k-amd 45797e8a2e8Smrg os=-udi 45897e8a2e8Smrg ;; 45968af480fSmrg abacus) 460d7accfefSmrg basic_machine=abacus-unknown 461d7accfefSmrg ;; 46297e8a2e8Smrg adobe68k) 46397e8a2e8Smrg basic_machine=m68010-adobe 46497e8a2e8Smrg os=-scout 46597e8a2e8Smrg ;; 46697e8a2e8Smrg alliant | fx80) 46797e8a2e8Smrg basic_machine=fx80-alliant 46897e8a2e8Smrg ;; 46997e8a2e8Smrg altos | altos3068) 47097e8a2e8Smrg basic_machine=m68k-altos 47197e8a2e8Smrg ;; 47297e8a2e8Smrg am29k) 47397e8a2e8Smrg basic_machine=a29k-none 47497e8a2e8Smrg os=-bsd 47597e8a2e8Smrg ;; 47697e8a2e8Smrg amd64) 47797e8a2e8Smrg basic_machine=x86_64-pc 47897e8a2e8Smrg ;; 479d7accfefSmrg amd64-*) 480d7accfefSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 481d7accfefSmrg ;; 48297e8a2e8Smrg amdahl) 48397e8a2e8Smrg basic_machine=580-amdahl 48497e8a2e8Smrg os=-sysv 48597e8a2e8Smrg ;; 48697e8a2e8Smrg amiga | amiga-*) 48797e8a2e8Smrg basic_machine=m68k-unknown 48897e8a2e8Smrg ;; 48997e8a2e8Smrg amigaos | amigados) 49097e8a2e8Smrg basic_machine=m68k-unknown 49197e8a2e8Smrg os=-amigaos 49297e8a2e8Smrg ;; 49397e8a2e8Smrg amigaunix | amix) 49497e8a2e8Smrg basic_machine=m68k-unknown 49597e8a2e8Smrg os=-sysv4 49697e8a2e8Smrg ;; 49797e8a2e8Smrg apollo68) 49897e8a2e8Smrg basic_machine=m68k-apollo 49997e8a2e8Smrg os=-sysv 50097e8a2e8Smrg ;; 50197e8a2e8Smrg apollo68bsd) 50297e8a2e8Smrg basic_machine=m68k-apollo 50397e8a2e8Smrg os=-bsd 50497e8a2e8Smrg ;; 505d7accfefSmrg aros) 506d7accfefSmrg basic_machine=i386-pc 507d7accfefSmrg os=-aros 508d7accfefSmrg ;; 50997e8a2e8Smrg aux) 51097e8a2e8Smrg basic_machine=m68k-apple 51197e8a2e8Smrg os=-aux 51297e8a2e8Smrg ;; 51397e8a2e8Smrg balance) 51497e8a2e8Smrg basic_machine=ns32k-sequent 51597e8a2e8Smrg os=-dynix 51697e8a2e8Smrg ;; 517d7accfefSmrg blackfin) 518d7accfefSmrg basic_machine=bfin-unknown 519d7accfefSmrg os=-linux 520d7accfefSmrg ;; 521d7accfefSmrg blackfin-*) 522d7accfefSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 523d7accfefSmrg os=-linux 524d7accfefSmrg ;; 525c3f70f0aSmrg bluegene*) 526c3f70f0aSmrg basic_machine=powerpc-ibm 527c3f70f0aSmrg os=-cnk 528c3f70f0aSmrg ;; 529c3f70f0aSmrg c54x-*) 530c3f70f0aSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 531c3f70f0aSmrg ;; 532c3f70f0aSmrg c55x-*) 533c3f70f0aSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 534c3f70f0aSmrg ;; 535c3f70f0aSmrg c6x-*) 536c3f70f0aSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 537c3f70f0aSmrg ;; 53897e8a2e8Smrg c90) 53997e8a2e8Smrg basic_machine=c90-cray 54097e8a2e8Smrg os=-unicos 54197e8a2e8Smrg ;; 54268af480fSmrg cegcc) 543d7accfefSmrg basic_machine=arm-unknown 544d7accfefSmrg os=-cegcc 545d7accfefSmrg ;; 54697e8a2e8Smrg convex-c1) 54797e8a2e8Smrg basic_machine=c1-convex 54897e8a2e8Smrg os=-bsd 54997e8a2e8Smrg ;; 55097e8a2e8Smrg convex-c2) 55197e8a2e8Smrg basic_machine=c2-convex 55297e8a2e8Smrg os=-bsd 55397e8a2e8Smrg ;; 55497e8a2e8Smrg convex-c32) 55597e8a2e8Smrg basic_machine=c32-convex 55697e8a2e8Smrg os=-bsd 55797e8a2e8Smrg ;; 55897e8a2e8Smrg convex-c34) 55997e8a2e8Smrg basic_machine=c34-convex 56097e8a2e8Smrg os=-bsd 56197e8a2e8Smrg ;; 56297e8a2e8Smrg convex-c38) 56397e8a2e8Smrg basic_machine=c38-convex 56497e8a2e8Smrg os=-bsd 56597e8a2e8Smrg ;; 56697e8a2e8Smrg cray | j90) 56797e8a2e8Smrg basic_machine=j90-cray 56897e8a2e8Smrg os=-unicos 56997e8a2e8Smrg ;; 570d7accfefSmrg craynv) 571d7accfefSmrg basic_machine=craynv-cray 572d7accfefSmrg os=-unicosmp 573d7accfefSmrg ;; 57468af480fSmrg cr16 | cr16-*) 575d7accfefSmrg basic_machine=cr16-unknown 576d7accfefSmrg os=-elf 577d7accfefSmrg ;; 57897e8a2e8Smrg crds | unos) 57997e8a2e8Smrg basic_machine=m68k-crds 58097e8a2e8Smrg ;; 581d7accfefSmrg crisv32 | crisv32-* | etraxfs*) 582d7accfefSmrg basic_machine=crisv32-axis 583d7accfefSmrg ;; 58497e8a2e8Smrg cris | cris-* | etrax*) 58597e8a2e8Smrg basic_machine=cris-axis 58697e8a2e8Smrg ;; 587d7accfefSmrg crx) 588d7accfefSmrg basic_machine=crx-unknown 589d7accfefSmrg os=-elf 590d7accfefSmrg ;; 59197e8a2e8Smrg da30 | da30-*) 59297e8a2e8Smrg basic_machine=m68k-da30 59397e8a2e8Smrg ;; 59497e8a2e8Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 59597e8a2e8Smrg basic_machine=mips-dec 59697e8a2e8Smrg ;; 59797e8a2e8Smrg decsystem10* | dec10*) 59897e8a2e8Smrg basic_machine=pdp10-dec 59997e8a2e8Smrg os=-tops10 60097e8a2e8Smrg ;; 60197e8a2e8Smrg decsystem20* | dec20*) 60297e8a2e8Smrg basic_machine=pdp10-dec 60397e8a2e8Smrg os=-tops20 60497e8a2e8Smrg ;; 60597e8a2e8Smrg delta | 3300 | motorola-3300 | motorola-delta \ 60697e8a2e8Smrg | 3300-motorola | delta-motorola) 60797e8a2e8Smrg basic_machine=m68k-motorola 60897e8a2e8Smrg ;; 60997e8a2e8Smrg delta88) 61097e8a2e8Smrg basic_machine=m88k-motorola 61197e8a2e8Smrg os=-sysv3 61297e8a2e8Smrg ;; 613d7accfefSmrg dicos) 614d7accfefSmrg basic_machine=i686-pc 615d7accfefSmrg os=-dicos 616d7accfefSmrg ;; 617d7accfefSmrg djgpp) 618d7accfefSmrg basic_machine=i586-pc 619d7accfefSmrg os=-msdosdjgpp 620d7accfefSmrg ;; 62197e8a2e8Smrg dpx20 | dpx20-*) 62297e8a2e8Smrg basic_machine=rs6000-bull 62397e8a2e8Smrg os=-bosx 62497e8a2e8Smrg ;; 62597e8a2e8Smrg dpx2* | dpx2*-bull) 62697e8a2e8Smrg basic_machine=m68k-bull 62797e8a2e8Smrg os=-sysv3 62897e8a2e8Smrg ;; 62997e8a2e8Smrg ebmon29k) 63097e8a2e8Smrg basic_machine=a29k-amd 63197e8a2e8Smrg os=-ebmon 63297e8a2e8Smrg ;; 63397e8a2e8Smrg elxsi) 63497e8a2e8Smrg basic_machine=elxsi-elxsi 63597e8a2e8Smrg os=-bsd 63697e8a2e8Smrg ;; 63797e8a2e8Smrg encore | umax | mmax) 63897e8a2e8Smrg basic_machine=ns32k-encore 63997e8a2e8Smrg ;; 64097e8a2e8Smrg es1800 | OSE68k | ose68k | ose | OSE) 64197e8a2e8Smrg basic_machine=m68k-ericsson 64297e8a2e8Smrg os=-ose 64397e8a2e8Smrg ;; 64497e8a2e8Smrg fx2800) 64597e8a2e8Smrg basic_machine=i860-alliant 64697e8a2e8Smrg ;; 64797e8a2e8Smrg genix) 64897e8a2e8Smrg basic_machine=ns32k-ns 64997e8a2e8Smrg ;; 65097e8a2e8Smrg gmicro) 65197e8a2e8Smrg basic_machine=tron-gmicro 65297e8a2e8Smrg os=-sysv 65397e8a2e8Smrg ;; 65497e8a2e8Smrg go32) 65597e8a2e8Smrg basic_machine=i386-pc 65697e8a2e8Smrg os=-go32 65797e8a2e8Smrg ;; 65897e8a2e8Smrg h3050r* | hiux*) 65997e8a2e8Smrg basic_machine=hppa1.1-hitachi 66097e8a2e8Smrg os=-hiuxwe2 66197e8a2e8Smrg ;; 66297e8a2e8Smrg h8300hms) 66397e8a2e8Smrg basic_machine=h8300-hitachi 66497e8a2e8Smrg os=-hms 66597e8a2e8Smrg ;; 66697e8a2e8Smrg h8300xray) 66797e8a2e8Smrg basic_machine=h8300-hitachi 66897e8a2e8Smrg os=-xray 66997e8a2e8Smrg ;; 67097e8a2e8Smrg h8500hms) 67197e8a2e8Smrg basic_machine=h8500-hitachi 67297e8a2e8Smrg os=-hms 67397e8a2e8Smrg ;; 67497e8a2e8Smrg harris) 67597e8a2e8Smrg basic_machine=m88k-harris 67697e8a2e8Smrg os=-sysv3 67797e8a2e8Smrg ;; 67897e8a2e8Smrg hp300-*) 67997e8a2e8Smrg basic_machine=m68k-hp 68097e8a2e8Smrg ;; 68197e8a2e8Smrg hp300bsd) 68297e8a2e8Smrg basic_machine=m68k-hp 68397e8a2e8Smrg os=-bsd 68497e8a2e8Smrg ;; 68597e8a2e8Smrg hp300hpux) 68697e8a2e8Smrg basic_machine=m68k-hp 68797e8a2e8Smrg os=-hpux 68897e8a2e8Smrg ;; 68997e8a2e8Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 69097e8a2e8Smrg basic_machine=hppa1.0-hp 69197e8a2e8Smrg ;; 69297e8a2e8Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 69397e8a2e8Smrg basic_machine=m68000-hp 69497e8a2e8Smrg ;; 69597e8a2e8Smrg hp9k3[2-9][0-9]) 69697e8a2e8Smrg basic_machine=m68k-hp 69797e8a2e8Smrg ;; 69897e8a2e8Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 69997e8a2e8Smrg basic_machine=hppa1.0-hp 70097e8a2e8Smrg ;; 70197e8a2e8Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 70297e8a2e8Smrg basic_machine=hppa1.1-hp 70397e8a2e8Smrg ;; 70497e8a2e8Smrg hp9k78[0-9] | hp78[0-9]) 70597e8a2e8Smrg # FIXME: really hppa2.0-hp 70697e8a2e8Smrg basic_machine=hppa1.1-hp 70797e8a2e8Smrg ;; 70897e8a2e8Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 70997e8a2e8Smrg # FIXME: really hppa2.0-hp 71097e8a2e8Smrg basic_machine=hppa1.1-hp 71197e8a2e8Smrg ;; 71297e8a2e8Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 71397e8a2e8Smrg basic_machine=hppa1.1-hp 71497e8a2e8Smrg ;; 71597e8a2e8Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 71697e8a2e8Smrg basic_machine=hppa1.0-hp 71797e8a2e8Smrg ;; 71897e8a2e8Smrg hppa-next) 71997e8a2e8Smrg os=-nextstep3 72097e8a2e8Smrg ;; 72197e8a2e8Smrg hppaosf) 72297e8a2e8Smrg basic_machine=hppa1.1-hp 72397e8a2e8Smrg os=-osf 72497e8a2e8Smrg ;; 72597e8a2e8Smrg hppro) 72697e8a2e8Smrg basic_machine=hppa1.1-hp 72797e8a2e8Smrg os=-proelf 72897e8a2e8Smrg ;; 72997e8a2e8Smrg i370-ibm* | ibm*) 73097e8a2e8Smrg basic_machine=i370-ibm 73197e8a2e8Smrg ;; 73297e8a2e8Smrg i*86v32) 73397e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73497e8a2e8Smrg os=-sysv32 73597e8a2e8Smrg ;; 73697e8a2e8Smrg i*86v4*) 73797e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 73897e8a2e8Smrg os=-sysv4 73997e8a2e8Smrg ;; 74097e8a2e8Smrg i*86v) 74197e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74297e8a2e8Smrg os=-sysv 74397e8a2e8Smrg ;; 74497e8a2e8Smrg i*86sol2) 74597e8a2e8Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74697e8a2e8Smrg os=-solaris2 74797e8a2e8Smrg ;; 74897e8a2e8Smrg i386mach) 74997e8a2e8Smrg basic_machine=i386-mach 75097e8a2e8Smrg os=-mach 75197e8a2e8Smrg ;; 75297e8a2e8Smrg i386-vsta | vsta) 75397e8a2e8Smrg basic_machine=i386-unknown 75497e8a2e8Smrg os=-vsta 75597e8a2e8Smrg ;; 75697e8a2e8Smrg iris | iris4d) 75797e8a2e8Smrg basic_machine=mips-sgi 75897e8a2e8Smrg case $os in 75997e8a2e8Smrg -irix*) 76097e8a2e8Smrg ;; 76197e8a2e8Smrg *) 76297e8a2e8Smrg os=-irix4 76397e8a2e8Smrg ;; 76497e8a2e8Smrg esac 76597e8a2e8Smrg ;; 76697e8a2e8Smrg isi68 | isi) 76797e8a2e8Smrg basic_machine=m68k-isi 76897e8a2e8Smrg os=-sysv 76997e8a2e8Smrg ;; 770d7accfefSmrg m68knommu) 771d7accfefSmrg basic_machine=m68k-unknown 772d7accfefSmrg os=-linux 773d7accfefSmrg ;; 774d7accfefSmrg m68knommu-*) 775d7accfefSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 776d7accfefSmrg os=-linux 777d7accfefSmrg ;; 77897e8a2e8Smrg m88k-omron*) 77997e8a2e8Smrg basic_machine=m88k-omron 78097e8a2e8Smrg ;; 78197e8a2e8Smrg magnum | m3230) 78297e8a2e8Smrg basic_machine=mips-mips 78397e8a2e8Smrg os=-sysv 78497e8a2e8Smrg ;; 78597e8a2e8Smrg merlin) 78697e8a2e8Smrg basic_machine=ns32k-utek 78797e8a2e8Smrg os=-sysv 78897e8a2e8Smrg ;; 78968af480fSmrg microblaze*) 790c3f70f0aSmrg basic_machine=microblaze-xilinx 791c3f70f0aSmrg ;; 79268af480fSmrg mingw64) 79368af480fSmrg basic_machine=x86_64-pc 79468af480fSmrg os=-mingw64 79568af480fSmrg ;; 79697e8a2e8Smrg mingw32) 79797e8a2e8Smrg basic_machine=i386-pc 79897e8a2e8Smrg os=-mingw32 79997e8a2e8Smrg ;; 800d7accfefSmrg mingw32ce) 801d7accfefSmrg basic_machine=arm-unknown 802d7accfefSmrg os=-mingw32ce 803d7accfefSmrg ;; 80497e8a2e8Smrg miniframe) 80597e8a2e8Smrg basic_machine=m68000-convergent 80697e8a2e8Smrg ;; 80797e8a2e8Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 80897e8a2e8Smrg basic_machine=m68k-atari 80997e8a2e8Smrg os=-mint 81097e8a2e8Smrg ;; 81197e8a2e8Smrg mips3*-*) 81297e8a2e8Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 81397e8a2e8Smrg ;; 81497e8a2e8Smrg mips3*) 81597e8a2e8Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 81697e8a2e8Smrg ;; 81797e8a2e8Smrg monitor) 81897e8a2e8Smrg basic_machine=m68k-rom68k 81997e8a2e8Smrg os=-coff 82097e8a2e8Smrg ;; 82197e8a2e8Smrg morphos) 82297e8a2e8Smrg basic_machine=powerpc-unknown 82397e8a2e8Smrg os=-morphos 82497e8a2e8Smrg ;; 82597e8a2e8Smrg msdos) 82697e8a2e8Smrg basic_machine=i386-pc 82797e8a2e8Smrg os=-msdos 82897e8a2e8Smrg ;; 829d7accfefSmrg ms1-*) 830d7accfefSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 831d7accfefSmrg ;; 83268af480fSmrg msys) 83368af480fSmrg basic_machine=i386-pc 83468af480fSmrg os=-msys 83568af480fSmrg ;; 83697e8a2e8Smrg mvs) 83797e8a2e8Smrg basic_machine=i370-ibm 83897e8a2e8Smrg os=-mvs 83997e8a2e8Smrg ;; 84068af480fSmrg nacl) 84168af480fSmrg basic_machine=le32-unknown 84268af480fSmrg os=-nacl 84368af480fSmrg ;; 84497e8a2e8Smrg ncr3000) 84597e8a2e8Smrg basic_machine=i486-ncr 84697e8a2e8Smrg os=-sysv4 84797e8a2e8Smrg ;; 84897e8a2e8Smrg netbsd386) 84997e8a2e8Smrg basic_machine=i386-unknown 85097e8a2e8Smrg os=-netbsd 85197e8a2e8Smrg ;; 85297e8a2e8Smrg netwinder) 85397e8a2e8Smrg basic_machine=armv4l-rebel 85497e8a2e8Smrg os=-linux 85597e8a2e8Smrg ;; 85697e8a2e8Smrg news | news700 | news800 | news900) 85797e8a2e8Smrg basic_machine=m68k-sony 85897e8a2e8Smrg os=-newsos 85997e8a2e8Smrg ;; 86097e8a2e8Smrg news1000) 86197e8a2e8Smrg basic_machine=m68030-sony 86297e8a2e8Smrg os=-newsos 86397e8a2e8Smrg ;; 86497e8a2e8Smrg news-3600 | risc-news) 86597e8a2e8Smrg basic_machine=mips-sony 86697e8a2e8Smrg os=-newsos 86797e8a2e8Smrg ;; 86897e8a2e8Smrg necv70) 86997e8a2e8Smrg basic_machine=v70-nec 87097e8a2e8Smrg os=-sysv 87197e8a2e8Smrg ;; 87297e8a2e8Smrg next | m*-next ) 87397e8a2e8Smrg basic_machine=m68k-next 87497e8a2e8Smrg case $os in 87597e8a2e8Smrg -nextstep* ) 87697e8a2e8Smrg ;; 87797e8a2e8Smrg -ns2*) 87897e8a2e8Smrg os=-nextstep2 87997e8a2e8Smrg ;; 88097e8a2e8Smrg *) 88197e8a2e8Smrg os=-nextstep3 88297e8a2e8Smrg ;; 88397e8a2e8Smrg esac 88497e8a2e8Smrg ;; 88597e8a2e8Smrg nh3000) 88697e8a2e8Smrg basic_machine=m68k-harris 88797e8a2e8Smrg os=-cxux 88897e8a2e8Smrg ;; 88997e8a2e8Smrg nh[45]000) 89097e8a2e8Smrg basic_machine=m88k-harris 89197e8a2e8Smrg os=-cxux 89297e8a2e8Smrg ;; 89397e8a2e8Smrg nindy960) 89497e8a2e8Smrg basic_machine=i960-intel 89597e8a2e8Smrg os=-nindy 89697e8a2e8Smrg ;; 89797e8a2e8Smrg mon960) 89897e8a2e8Smrg basic_machine=i960-intel 89997e8a2e8Smrg os=-mon960 90097e8a2e8Smrg ;; 90197e8a2e8Smrg nonstopux) 90297e8a2e8Smrg basic_machine=mips-compaq 90397e8a2e8Smrg os=-nonstopux 90497e8a2e8Smrg ;; 90597e8a2e8Smrg np1) 90697e8a2e8Smrg basic_machine=np1-gould 90797e8a2e8Smrg ;; 90868af480fSmrg neo-tandem) 909c3f70f0aSmrg basic_machine=neo-tandem 910c3f70f0aSmrg ;; 91168af480fSmrg nse-tandem) 912c3f70f0aSmrg basic_machine=nse-tandem 913c3f70f0aSmrg ;; 91497e8a2e8Smrg nsr-tandem) 91597e8a2e8Smrg basic_machine=nsr-tandem 91697e8a2e8Smrg ;; 91797e8a2e8Smrg op50n-* | op60c-*) 91897e8a2e8Smrg basic_machine=hppa1.1-oki 91997e8a2e8Smrg os=-proelf 92097e8a2e8Smrg ;; 921d7accfefSmrg openrisc | openrisc-*) 92297e8a2e8Smrg basic_machine=or32-unknown 923d7accfefSmrg ;; 924d7accfefSmrg os400) 925d7accfefSmrg basic_machine=powerpc-ibm 926d7accfefSmrg os=-os400 92797e8a2e8Smrg ;; 92897e8a2e8Smrg OSE68000 | ose68000) 92997e8a2e8Smrg basic_machine=m68000-ericsson 93097e8a2e8Smrg os=-ose 93197e8a2e8Smrg ;; 93297e8a2e8Smrg os68k) 93397e8a2e8Smrg basic_machine=m68k-none 93497e8a2e8Smrg os=-os68k 93597e8a2e8Smrg ;; 93697e8a2e8Smrg pa-hitachi) 93797e8a2e8Smrg basic_machine=hppa1.1-hitachi 93897e8a2e8Smrg os=-hiuxwe2 93997e8a2e8Smrg ;; 94097e8a2e8Smrg paragon) 94197e8a2e8Smrg basic_machine=i860-intel 94297e8a2e8Smrg os=-osf 94397e8a2e8Smrg ;; 944d7accfefSmrg parisc) 945d7accfefSmrg basic_machine=hppa-unknown 946d7accfefSmrg os=-linux 947d7accfefSmrg ;; 948d7accfefSmrg parisc-*) 949d7accfefSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 950d7accfefSmrg os=-linux 951d7accfefSmrg ;; 95297e8a2e8Smrg pbd) 95397e8a2e8Smrg basic_machine=sparc-tti 95497e8a2e8Smrg ;; 95597e8a2e8Smrg pbb) 95697e8a2e8Smrg basic_machine=m68k-tti 95797e8a2e8Smrg ;; 95897e8a2e8Smrg pc532 | pc532-*) 95997e8a2e8Smrg basic_machine=ns32k-pc532 96097e8a2e8Smrg ;; 961d7accfefSmrg pc98) 962d7accfefSmrg basic_machine=i386-pc 963d7accfefSmrg ;; 964d7accfefSmrg pc98-*) 965d7accfefSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 966d7accfefSmrg ;; 96797e8a2e8Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 96897e8a2e8Smrg basic_machine=i586-pc 96997e8a2e8Smrg ;; 97097e8a2e8Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 97197e8a2e8Smrg basic_machine=i686-pc 97297e8a2e8Smrg ;; 97397e8a2e8Smrg pentiumii | pentium2 | pentiumiii | pentium3) 97497e8a2e8Smrg basic_machine=i686-pc 97597e8a2e8Smrg ;; 97697e8a2e8Smrg pentium4) 97797e8a2e8Smrg basic_machine=i786-pc 97897e8a2e8Smrg ;; 97997e8a2e8Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 98097e8a2e8Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 98197e8a2e8Smrg ;; 98297e8a2e8Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 98397e8a2e8Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 98497e8a2e8Smrg ;; 98597e8a2e8Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 98697e8a2e8Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 98797e8a2e8Smrg ;; 98897e8a2e8Smrg pentium4-*) 98997e8a2e8Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 99097e8a2e8Smrg ;; 99197e8a2e8Smrg pn) 99297e8a2e8Smrg basic_machine=pn-gould 99397e8a2e8Smrg ;; 99497e8a2e8Smrg power) basic_machine=power-ibm 99597e8a2e8Smrg ;; 99668af480fSmrg ppc | ppcbe) basic_machine=powerpc-unknown 99797e8a2e8Smrg ;; 99868af480fSmrg ppc-* | ppcbe-*) 99968af480fSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 100097e8a2e8Smrg ;; 100197e8a2e8Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 100297e8a2e8Smrg basic_machine=powerpcle-unknown 100397e8a2e8Smrg ;; 100497e8a2e8Smrg ppcle-* | powerpclittle-*) 100597e8a2e8Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 100697e8a2e8Smrg ;; 100797e8a2e8Smrg ppc64) basic_machine=powerpc64-unknown 100897e8a2e8Smrg ;; 100997e8a2e8Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 101097e8a2e8Smrg ;; 101197e8a2e8Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 101297e8a2e8Smrg basic_machine=powerpc64le-unknown 101397e8a2e8Smrg ;; 101497e8a2e8Smrg ppc64le-* | powerpc64little-*) 101597e8a2e8Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 101697e8a2e8Smrg ;; 101797e8a2e8Smrg ps2) 101897e8a2e8Smrg basic_machine=i386-ibm 101997e8a2e8Smrg ;; 102097e8a2e8Smrg pw32) 102197e8a2e8Smrg basic_machine=i586-unknown 102297e8a2e8Smrg os=-pw32 102397e8a2e8Smrg ;; 102468af480fSmrg rdos | rdos64) 102568af480fSmrg basic_machine=x86_64-pc 102668af480fSmrg os=-rdos 102768af480fSmrg ;; 102868af480fSmrg rdos32) 1029d7accfefSmrg basic_machine=i386-pc 1030d7accfefSmrg os=-rdos 1031d7accfefSmrg ;; 103297e8a2e8Smrg rom68k) 103397e8a2e8Smrg basic_machine=m68k-rom68k 103497e8a2e8Smrg os=-coff 103597e8a2e8Smrg ;; 103697e8a2e8Smrg rm[46]00) 103797e8a2e8Smrg basic_machine=mips-siemens 103897e8a2e8Smrg ;; 103997e8a2e8Smrg rtpc | rtpc-*) 104097e8a2e8Smrg basic_machine=romp-ibm 104197e8a2e8Smrg ;; 1042d7accfefSmrg s390 | s390-*) 1043d7accfefSmrg basic_machine=s390-ibm 1044d7accfefSmrg ;; 1045d7accfefSmrg s390x | s390x-*) 1046d7accfefSmrg basic_machine=s390x-ibm 1047d7accfefSmrg ;; 104897e8a2e8Smrg sa29200) 104997e8a2e8Smrg basic_machine=a29k-amd 105097e8a2e8Smrg os=-udi 105197e8a2e8Smrg ;; 105297e8a2e8Smrg sb1) 105397e8a2e8Smrg basic_machine=mipsisa64sb1-unknown 105497e8a2e8Smrg ;; 105597e8a2e8Smrg sb1el) 105697e8a2e8Smrg basic_machine=mipsisa64sb1el-unknown 105797e8a2e8Smrg ;; 1058d7accfefSmrg sde) 1059d7accfefSmrg basic_machine=mipsisa32-sde 1060d7accfefSmrg os=-elf 1061d7accfefSmrg ;; 106297e8a2e8Smrg sei) 106397e8a2e8Smrg basic_machine=mips-sei 106497e8a2e8Smrg os=-seiux 106597e8a2e8Smrg ;; 106697e8a2e8Smrg sequent) 106797e8a2e8Smrg basic_machine=i386-sequent 106897e8a2e8Smrg ;; 106997e8a2e8Smrg sh) 107097e8a2e8Smrg basic_machine=sh-hitachi 107197e8a2e8Smrg os=-hms 107297e8a2e8Smrg ;; 1073d7accfefSmrg sh5el) 1074d7accfefSmrg basic_machine=sh5le-unknown 1075d7accfefSmrg ;; 107697e8a2e8Smrg sh64) 107797e8a2e8Smrg basic_machine=sh64-unknown 107897e8a2e8Smrg ;; 107997e8a2e8Smrg sparclite-wrs | simso-wrs) 108097e8a2e8Smrg basic_machine=sparclite-wrs 108197e8a2e8Smrg os=-vxworks 108297e8a2e8Smrg ;; 108397e8a2e8Smrg sps7) 108497e8a2e8Smrg basic_machine=m68k-bull 108597e8a2e8Smrg os=-sysv2 108697e8a2e8Smrg ;; 108797e8a2e8Smrg spur) 108897e8a2e8Smrg basic_machine=spur-unknown 108997e8a2e8Smrg ;; 109097e8a2e8Smrg st2000) 109197e8a2e8Smrg basic_machine=m68k-tandem 109297e8a2e8Smrg ;; 109397e8a2e8Smrg stratus) 109497e8a2e8Smrg basic_machine=i860-stratus 109597e8a2e8Smrg os=-sysv4 109697e8a2e8Smrg ;; 109768af480fSmrg strongarm-* | thumb-*) 109868af480fSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 109968af480fSmrg ;; 110097e8a2e8Smrg sun2) 110197e8a2e8Smrg basic_machine=m68000-sun 110297e8a2e8Smrg ;; 110397e8a2e8Smrg sun2os3) 110497e8a2e8Smrg basic_machine=m68000-sun 110597e8a2e8Smrg os=-sunos3 110697e8a2e8Smrg ;; 110797e8a2e8Smrg sun2os4) 110897e8a2e8Smrg basic_machine=m68000-sun 110997e8a2e8Smrg os=-sunos4 111097e8a2e8Smrg ;; 111197e8a2e8Smrg sun3os3) 111297e8a2e8Smrg basic_machine=m68k-sun 111397e8a2e8Smrg os=-sunos3 111497e8a2e8Smrg ;; 111597e8a2e8Smrg sun3os4) 111697e8a2e8Smrg basic_machine=m68k-sun 111797e8a2e8Smrg os=-sunos4 111897e8a2e8Smrg ;; 111997e8a2e8Smrg sun4os3) 112097e8a2e8Smrg basic_machine=sparc-sun 112197e8a2e8Smrg os=-sunos3 112297e8a2e8Smrg ;; 112397e8a2e8Smrg sun4os4) 112497e8a2e8Smrg basic_machine=sparc-sun 112597e8a2e8Smrg os=-sunos4 112697e8a2e8Smrg ;; 112797e8a2e8Smrg sun4sol2) 112897e8a2e8Smrg basic_machine=sparc-sun 112997e8a2e8Smrg os=-solaris2 113097e8a2e8Smrg ;; 113197e8a2e8Smrg sun3 | sun3-*) 113297e8a2e8Smrg basic_machine=m68k-sun 113397e8a2e8Smrg ;; 113497e8a2e8Smrg sun4) 113597e8a2e8Smrg basic_machine=sparc-sun 113697e8a2e8Smrg ;; 113797e8a2e8Smrg sun386 | sun386i | roadrunner) 113897e8a2e8Smrg basic_machine=i386-sun 113997e8a2e8Smrg ;; 114097e8a2e8Smrg sv1) 114197e8a2e8Smrg basic_machine=sv1-cray 114297e8a2e8Smrg os=-unicos 114397e8a2e8Smrg ;; 114497e8a2e8Smrg symmetry) 114597e8a2e8Smrg basic_machine=i386-sequent 114697e8a2e8Smrg os=-dynix 114797e8a2e8Smrg ;; 114897e8a2e8Smrg t3e) 114997e8a2e8Smrg basic_machine=alphaev5-cray 115097e8a2e8Smrg os=-unicos 115197e8a2e8Smrg ;; 115297e8a2e8Smrg t90) 115397e8a2e8Smrg basic_machine=t90-cray 115497e8a2e8Smrg os=-unicos 115597e8a2e8Smrg ;; 1156d7accfefSmrg tile*) 115768af480fSmrg basic_machine=$basic_machine-unknown 1158d7accfefSmrg os=-linux-gnu 1159d7accfefSmrg ;; 116097e8a2e8Smrg tx39) 116197e8a2e8Smrg basic_machine=mipstx39-unknown 116297e8a2e8Smrg ;; 116397e8a2e8Smrg tx39el) 116497e8a2e8Smrg basic_machine=mipstx39el-unknown 116597e8a2e8Smrg ;; 116697e8a2e8Smrg toad1) 116797e8a2e8Smrg basic_machine=pdp10-xkl 116897e8a2e8Smrg os=-tops20 116997e8a2e8Smrg ;; 117097e8a2e8Smrg tower | tower-32) 117197e8a2e8Smrg basic_machine=m68k-ncr 117297e8a2e8Smrg ;; 1173d7accfefSmrg tpf) 1174d7accfefSmrg basic_machine=s390x-ibm 1175d7accfefSmrg os=-tpf 1176d7accfefSmrg ;; 117797e8a2e8Smrg udi29k) 117897e8a2e8Smrg basic_machine=a29k-amd 117997e8a2e8Smrg os=-udi 118097e8a2e8Smrg ;; 118197e8a2e8Smrg ultra3) 118297e8a2e8Smrg basic_machine=a29k-nyu 118397e8a2e8Smrg os=-sym1 118497e8a2e8Smrg ;; 118597e8a2e8Smrg v810 | necv810) 118697e8a2e8Smrg basic_machine=v810-nec 118797e8a2e8Smrg os=-none 118897e8a2e8Smrg ;; 118997e8a2e8Smrg vaxv) 119097e8a2e8Smrg basic_machine=vax-dec 119197e8a2e8Smrg os=-sysv 119297e8a2e8Smrg ;; 119397e8a2e8Smrg vms) 119497e8a2e8Smrg basic_machine=vax-dec 119597e8a2e8Smrg os=-vms 119697e8a2e8Smrg ;; 119797e8a2e8Smrg vpp*|vx|vx-*) 119897e8a2e8Smrg basic_machine=f301-fujitsu 119997e8a2e8Smrg ;; 120097e8a2e8Smrg vxworks960) 120197e8a2e8Smrg basic_machine=i960-wrs 120297e8a2e8Smrg os=-vxworks 120397e8a2e8Smrg ;; 120497e8a2e8Smrg vxworks68) 120597e8a2e8Smrg basic_machine=m68k-wrs 120697e8a2e8Smrg os=-vxworks 120797e8a2e8Smrg ;; 120897e8a2e8Smrg vxworks29k) 120997e8a2e8Smrg basic_machine=a29k-wrs 121097e8a2e8Smrg os=-vxworks 121197e8a2e8Smrg ;; 121297e8a2e8Smrg w65*) 121397e8a2e8Smrg basic_machine=w65-wdc 121497e8a2e8Smrg os=-none 121597e8a2e8Smrg ;; 121697e8a2e8Smrg w89k-*) 121797e8a2e8Smrg basic_machine=hppa1.1-winbond 121897e8a2e8Smrg os=-proelf 121997e8a2e8Smrg ;; 1220d7accfefSmrg xbox) 1221d7accfefSmrg basic_machine=i686-pc 1222d7accfefSmrg os=-mingw32 1223d7accfefSmrg ;; 122497e8a2e8Smrg xps | xps100) 122597e8a2e8Smrg basic_machine=xps100-honeywell 122697e8a2e8Smrg ;; 122768af480fSmrg xscale-* | xscalee[bl]-*) 122868af480fSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 122968af480fSmrg ;; 123097e8a2e8Smrg ymp) 123197e8a2e8Smrg basic_machine=ymp-cray 123297e8a2e8Smrg os=-unicos 123397e8a2e8Smrg ;; 123497e8a2e8Smrg z8k-*-coff) 123597e8a2e8Smrg basic_machine=z8k-unknown 123697e8a2e8Smrg os=-sim 123797e8a2e8Smrg ;; 1238d7accfefSmrg z80-*-coff) 1239d7accfefSmrg basic_machine=z80-unknown 1240d7accfefSmrg os=-sim 1241d7accfefSmrg ;; 124297e8a2e8Smrg none) 124397e8a2e8Smrg basic_machine=none-none 124497e8a2e8Smrg os=-none 124597e8a2e8Smrg ;; 124697e8a2e8Smrg 124797e8a2e8Smrg# Here we handle the default manufacturer of certain CPU types. It is in 124897e8a2e8Smrg# some cases the only manufacturer, in others, it is the most popular. 124997e8a2e8Smrg w89k) 125097e8a2e8Smrg basic_machine=hppa1.1-winbond 125197e8a2e8Smrg ;; 125297e8a2e8Smrg op50n) 125397e8a2e8Smrg basic_machine=hppa1.1-oki 125497e8a2e8Smrg ;; 125597e8a2e8Smrg op60c) 125697e8a2e8Smrg basic_machine=hppa1.1-oki 125797e8a2e8Smrg ;; 125897e8a2e8Smrg romp) 125997e8a2e8Smrg basic_machine=romp-ibm 126097e8a2e8Smrg ;; 1261d7accfefSmrg mmix) 1262d7accfefSmrg basic_machine=mmix-knuth 1263d7accfefSmrg ;; 126497e8a2e8Smrg rs6000) 126597e8a2e8Smrg basic_machine=rs6000-ibm 126697e8a2e8Smrg ;; 126797e8a2e8Smrg vax) 126897e8a2e8Smrg basic_machine=vax-dec 126997e8a2e8Smrg ;; 127097e8a2e8Smrg pdp10) 127197e8a2e8Smrg # there are many clones, so DEC is not a safe bet 127297e8a2e8Smrg basic_machine=pdp10-unknown 127397e8a2e8Smrg ;; 127497e8a2e8Smrg pdp11) 127597e8a2e8Smrg basic_machine=pdp11-dec 127697e8a2e8Smrg ;; 127797e8a2e8Smrg we32k) 127897e8a2e8Smrg basic_machine=we32k-att 127997e8a2e8Smrg ;; 1280d7accfefSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 128197e8a2e8Smrg basic_machine=sh-unknown 128297e8a2e8Smrg ;; 1283d7accfefSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 128497e8a2e8Smrg basic_machine=sparc-sun 128597e8a2e8Smrg ;; 128697e8a2e8Smrg cydra) 128797e8a2e8Smrg basic_machine=cydra-cydrome 128897e8a2e8Smrg ;; 128997e8a2e8Smrg orion) 129097e8a2e8Smrg basic_machine=orion-highlevel 129197e8a2e8Smrg ;; 129297e8a2e8Smrg orion105) 129397e8a2e8Smrg basic_machine=clipper-highlevel 129497e8a2e8Smrg ;; 129597e8a2e8Smrg mac | mpw | mac-mpw) 129697e8a2e8Smrg basic_machine=m68k-apple 129797e8a2e8Smrg ;; 129897e8a2e8Smrg pmac | pmac-mpw) 129997e8a2e8Smrg basic_machine=powerpc-apple 130097e8a2e8Smrg ;; 130197e8a2e8Smrg *-unknown) 130297e8a2e8Smrg # Make sure to match an already-canonicalized machine name. 130397e8a2e8Smrg ;; 130497e8a2e8Smrg *) 130597e8a2e8Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 130697e8a2e8Smrg exit 1 130797e8a2e8Smrg ;; 130897e8a2e8Smrgesac 130997e8a2e8Smrg 131097e8a2e8Smrg# Here we canonicalize certain aliases for manufacturers. 131197e8a2e8Smrgcase $basic_machine in 131297e8a2e8Smrg *-digital*) 131397e8a2e8Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 131497e8a2e8Smrg ;; 131597e8a2e8Smrg *-commodore*) 131697e8a2e8Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 131797e8a2e8Smrg ;; 131897e8a2e8Smrg *) 131997e8a2e8Smrg ;; 132097e8a2e8Smrgesac 132197e8a2e8Smrg 132297e8a2e8Smrg# Decode manufacturer-specific aliases for certain operating systems. 132397e8a2e8Smrg 132497e8a2e8Smrgif [ x"$os" != x"" ] 132597e8a2e8Smrgthen 132697e8a2e8Smrgcase $os in 132768af480fSmrg # First match some system type aliases 132868af480fSmrg # that might get confused with valid system types. 132997e8a2e8Smrg # -solaris* is a basic system type, with this one exception. 133068af480fSmrg -auroraux) 133168af480fSmrg os=-auroraux 1332c3f70f0aSmrg ;; 133397e8a2e8Smrg -solaris1 | -solaris1.*) 133497e8a2e8Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 133597e8a2e8Smrg ;; 133697e8a2e8Smrg -solaris) 133797e8a2e8Smrg os=-solaris2 133897e8a2e8Smrg ;; 133997e8a2e8Smrg -svr4*) 134097e8a2e8Smrg os=-sysv4 134197e8a2e8Smrg ;; 134297e8a2e8Smrg -unixware*) 134397e8a2e8Smrg os=-sysv4.2uw 134497e8a2e8Smrg ;; 134597e8a2e8Smrg -gnu/linux*) 134697e8a2e8Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 134797e8a2e8Smrg ;; 134897e8a2e8Smrg # First accept the basic system types. 134997e8a2e8Smrg # The portable systems comes first. 135097e8a2e8Smrg # Each alternative MUST END IN A *, to match a version number. 135197e8a2e8Smrg # -sysv* is not here because it comes later, after sysvr4. 135297e8a2e8Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1353c3f70f0aSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1354c3f70f0aSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 135568af480fSmrg | -sym* | -kopensolaris* | -plan9* \ 135697e8a2e8Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1357d7accfefSmrg | -aos* | -aros* \ 135897e8a2e8Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 135997e8a2e8Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1360d7accfefSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 136168af480fSmrg | -bitrig* | -openbsd* | -solidbsd* \ 1362d7accfefSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1363d7accfefSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 136497e8a2e8Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 136597e8a2e8Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1366d7accfefSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 136768af480fSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 136868af480fSmrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 136968af480fSmrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 1370d7accfefSmrg | -uxpv* | -beos* | -mpeix* | -udk* \ 137197e8a2e8Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 137297e8a2e8Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 137397e8a2e8Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 137497e8a2e8Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 137597e8a2e8Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1376d7accfefSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1377c3f70f0aSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 137897e8a2e8Smrg # Remember, each alternative MUST END IN *, to match a version number. 137997e8a2e8Smrg ;; 138097e8a2e8Smrg -qnx*) 138197e8a2e8Smrg case $basic_machine in 138297e8a2e8Smrg x86-* | i*86-*) 138397e8a2e8Smrg ;; 138497e8a2e8Smrg *) 138597e8a2e8Smrg os=-nto$os 138697e8a2e8Smrg ;; 138797e8a2e8Smrg esac 138897e8a2e8Smrg ;; 138997e8a2e8Smrg -nto-qnx*) 139097e8a2e8Smrg ;; 139197e8a2e8Smrg -nto*) 139297e8a2e8Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 139397e8a2e8Smrg ;; 139497e8a2e8Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1395d7accfefSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 139697e8a2e8Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 139797e8a2e8Smrg ;; 139897e8a2e8Smrg -mac*) 139997e8a2e8Smrg os=`echo $os | sed -e 's|mac|macos|'` 140097e8a2e8Smrg ;; 1401d7accfefSmrg -linux-dietlibc) 1402d7accfefSmrg os=-linux-dietlibc 1403d7accfefSmrg ;; 140497e8a2e8Smrg -linux*) 140597e8a2e8Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 140697e8a2e8Smrg ;; 140797e8a2e8Smrg -sunos5*) 140897e8a2e8Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 140997e8a2e8Smrg ;; 141097e8a2e8Smrg -sunos6*) 141197e8a2e8Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 141297e8a2e8Smrg ;; 141397e8a2e8Smrg -opened*) 141497e8a2e8Smrg os=-openedition 141597e8a2e8Smrg ;; 141668af480fSmrg -os400*) 1417d7accfefSmrg os=-os400 1418d7accfefSmrg ;; 141997e8a2e8Smrg -wince*) 142097e8a2e8Smrg os=-wince 142197e8a2e8Smrg ;; 142297e8a2e8Smrg -osfrose*) 142397e8a2e8Smrg os=-osfrose 142497e8a2e8Smrg ;; 142597e8a2e8Smrg -osf*) 142697e8a2e8Smrg os=-osf 142797e8a2e8Smrg ;; 142897e8a2e8Smrg -utek*) 142997e8a2e8Smrg os=-bsd 143097e8a2e8Smrg ;; 143197e8a2e8Smrg -dynix*) 143297e8a2e8Smrg os=-bsd 143397e8a2e8Smrg ;; 143497e8a2e8Smrg -acis*) 143597e8a2e8Smrg os=-aos 143697e8a2e8Smrg ;; 143797e8a2e8Smrg -atheos*) 143897e8a2e8Smrg os=-atheos 143997e8a2e8Smrg ;; 1440d7accfefSmrg -syllable*) 1441d7accfefSmrg os=-syllable 1442d7accfefSmrg ;; 144397e8a2e8Smrg -386bsd) 144497e8a2e8Smrg os=-bsd 144597e8a2e8Smrg ;; 144697e8a2e8Smrg -ctix* | -uts*) 144797e8a2e8Smrg os=-sysv 144897e8a2e8Smrg ;; 144997e8a2e8Smrg -nova*) 145097e8a2e8Smrg os=-rtmk-nova 145197e8a2e8Smrg ;; 145297e8a2e8Smrg -ns2 ) 145397e8a2e8Smrg os=-nextstep2 145497e8a2e8Smrg ;; 145597e8a2e8Smrg -nsk*) 145697e8a2e8Smrg os=-nsk 145797e8a2e8Smrg ;; 145897e8a2e8Smrg # Preserve the version number of sinix5. 145997e8a2e8Smrg -sinix5.*) 146097e8a2e8Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 146197e8a2e8Smrg ;; 146297e8a2e8Smrg -sinix*) 146397e8a2e8Smrg os=-sysv4 146497e8a2e8Smrg ;; 146568af480fSmrg -tpf*) 1466d7accfefSmrg os=-tpf 1467d7accfefSmrg ;; 146897e8a2e8Smrg -triton*) 146997e8a2e8Smrg os=-sysv3 147097e8a2e8Smrg ;; 147197e8a2e8Smrg -oss*) 147297e8a2e8Smrg os=-sysv3 147397e8a2e8Smrg ;; 147497e8a2e8Smrg -svr4) 147597e8a2e8Smrg os=-sysv4 147697e8a2e8Smrg ;; 147797e8a2e8Smrg -svr3) 147897e8a2e8Smrg os=-sysv3 147997e8a2e8Smrg ;; 148097e8a2e8Smrg -sysvr4) 148197e8a2e8Smrg os=-sysv4 148297e8a2e8Smrg ;; 148397e8a2e8Smrg # This must come after -sysvr4. 148497e8a2e8Smrg -sysv*) 148597e8a2e8Smrg ;; 148697e8a2e8Smrg -ose*) 148797e8a2e8Smrg os=-ose 148897e8a2e8Smrg ;; 148997e8a2e8Smrg -es1800*) 149097e8a2e8Smrg os=-ose 149197e8a2e8Smrg ;; 149297e8a2e8Smrg -xenix) 149397e8a2e8Smrg os=-xenix 149497e8a2e8Smrg ;; 149597e8a2e8Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 149697e8a2e8Smrg os=-mint 149797e8a2e8Smrg ;; 149897e8a2e8Smrg -aros*) 149997e8a2e8Smrg os=-aros 150097e8a2e8Smrg ;; 1501d7accfefSmrg -zvmoe) 1502d7accfefSmrg os=-zvmoe 1503d7accfefSmrg ;; 1504d7accfefSmrg -dicos*) 1505d7accfefSmrg os=-dicos 1506d7accfefSmrg ;; 150768af480fSmrg -nacl*) 150868af480fSmrg ;; 150997e8a2e8Smrg -none) 151097e8a2e8Smrg ;; 151197e8a2e8Smrg *) 151297e8a2e8Smrg # Get rid of the `-' at the beginning of $os. 151397e8a2e8Smrg os=`echo $os | sed 's/[^-]*-//'` 151497e8a2e8Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 151597e8a2e8Smrg exit 1 151697e8a2e8Smrg ;; 151797e8a2e8Smrgesac 151897e8a2e8Smrgelse 151997e8a2e8Smrg 152097e8a2e8Smrg# Here we handle the default operating systems that come with various machines. 152197e8a2e8Smrg# The value should be what the vendor currently ships out the door with their 152297e8a2e8Smrg# machine or put another way, the most popular os provided with the machine. 152397e8a2e8Smrg 152497e8a2e8Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 152597e8a2e8Smrg# "-sun"), then you have to tell the case statement up towards the top 152697e8a2e8Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 152797e8a2e8Smrg# will signal an error saying that MANUFACTURER isn't an operating 152897e8a2e8Smrg# system, and we'll never get to this point. 152997e8a2e8Smrg 153097e8a2e8Smrgcase $basic_machine in 153168af480fSmrg score-*) 1532d7accfefSmrg os=-elf 1533d7accfefSmrg ;; 153468af480fSmrg spu-*) 1535d7accfefSmrg os=-elf 1536d7accfefSmrg ;; 153797e8a2e8Smrg *-acorn) 153897e8a2e8Smrg os=-riscix1.2 153997e8a2e8Smrg ;; 154097e8a2e8Smrg arm*-rebel) 154197e8a2e8Smrg os=-linux 154297e8a2e8Smrg ;; 154397e8a2e8Smrg arm*-semi) 154497e8a2e8Smrg os=-aout 154597e8a2e8Smrg ;; 154668af480fSmrg c4x-* | tic4x-*) 154768af480fSmrg os=-coff 154868af480fSmrg ;; 154968af480fSmrg hexagon-*) 155068af480fSmrg os=-elf 155197e8a2e8Smrg ;; 1552c3f70f0aSmrg tic54x-*) 1553c3f70f0aSmrg os=-coff 1554c3f70f0aSmrg ;; 1555c3f70f0aSmrg tic55x-*) 1556c3f70f0aSmrg os=-coff 1557c3f70f0aSmrg ;; 1558c3f70f0aSmrg tic6x-*) 1559c3f70f0aSmrg os=-coff 1560c3f70f0aSmrg ;; 156197e8a2e8Smrg # This must come before the *-dec entry. 156297e8a2e8Smrg pdp10-*) 156397e8a2e8Smrg os=-tops20 156497e8a2e8Smrg ;; 156597e8a2e8Smrg pdp11-*) 156697e8a2e8Smrg os=-none 156797e8a2e8Smrg ;; 156897e8a2e8Smrg *-dec | vax-*) 156997e8a2e8Smrg os=-ultrix4.2 157097e8a2e8Smrg ;; 157197e8a2e8Smrg m68*-apollo) 157297e8a2e8Smrg os=-domain 157397e8a2e8Smrg ;; 157497e8a2e8Smrg i386-sun) 157597e8a2e8Smrg os=-sunos4.0.2 157697e8a2e8Smrg ;; 157797e8a2e8Smrg m68000-sun) 157897e8a2e8Smrg os=-sunos3 157997e8a2e8Smrg ;; 158097e8a2e8Smrg m68*-cisco) 158197e8a2e8Smrg os=-aout 158297e8a2e8Smrg ;; 158368af480fSmrg mep-*) 1584d7accfefSmrg os=-elf 1585d7accfefSmrg ;; 158697e8a2e8Smrg mips*-cisco) 158797e8a2e8Smrg os=-elf 158897e8a2e8Smrg ;; 158997e8a2e8Smrg mips*-*) 159097e8a2e8Smrg os=-elf 159197e8a2e8Smrg ;; 159268af480fSmrg or1k-*) 159368af480fSmrg os=-elf 159468af480fSmrg ;; 159597e8a2e8Smrg or32-*) 159697e8a2e8Smrg os=-coff 159797e8a2e8Smrg ;; 159897e8a2e8Smrg *-tti) # must be before sparc entry or we get the wrong os. 159997e8a2e8Smrg os=-sysv3 160097e8a2e8Smrg ;; 160197e8a2e8Smrg sparc-* | *-sun) 160297e8a2e8Smrg os=-sunos4.1.1 160397e8a2e8Smrg ;; 160497e8a2e8Smrg *-be) 160597e8a2e8Smrg os=-beos 160697e8a2e8Smrg ;; 1607d7accfefSmrg *-haiku) 1608d7accfefSmrg os=-haiku 1609d7accfefSmrg ;; 161097e8a2e8Smrg *-ibm) 161197e8a2e8Smrg os=-aix 161297e8a2e8Smrg ;; 161368af480fSmrg *-knuth) 1614d7accfefSmrg os=-mmixware 1615d7accfefSmrg ;; 161697e8a2e8Smrg *-wec) 161797e8a2e8Smrg os=-proelf 161897e8a2e8Smrg ;; 161997e8a2e8Smrg *-winbond) 162097e8a2e8Smrg os=-proelf 162197e8a2e8Smrg ;; 162297e8a2e8Smrg *-oki) 162397e8a2e8Smrg os=-proelf 162497e8a2e8Smrg ;; 162597e8a2e8Smrg *-hp) 162697e8a2e8Smrg os=-hpux 162797e8a2e8Smrg ;; 162897e8a2e8Smrg *-hitachi) 162997e8a2e8Smrg os=-hiux 163097e8a2e8Smrg ;; 163197e8a2e8Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 163297e8a2e8Smrg os=-sysv 163397e8a2e8Smrg ;; 163497e8a2e8Smrg *-cbm) 163597e8a2e8Smrg os=-amigaos 163697e8a2e8Smrg ;; 163797e8a2e8Smrg *-dg) 163897e8a2e8Smrg os=-dgux 163997e8a2e8Smrg ;; 164097e8a2e8Smrg *-dolphin) 164197e8a2e8Smrg os=-sysv3 164297e8a2e8Smrg ;; 164397e8a2e8Smrg m68k-ccur) 164497e8a2e8Smrg os=-rtu 164597e8a2e8Smrg ;; 164697e8a2e8Smrg m88k-omron*) 164797e8a2e8Smrg os=-luna 164897e8a2e8Smrg ;; 164997e8a2e8Smrg *-next ) 165097e8a2e8Smrg os=-nextstep 165197e8a2e8Smrg ;; 165297e8a2e8Smrg *-sequent) 165397e8a2e8Smrg os=-ptx 165497e8a2e8Smrg ;; 165597e8a2e8Smrg *-crds) 165697e8a2e8Smrg os=-unos 165797e8a2e8Smrg ;; 165897e8a2e8Smrg *-ns) 165997e8a2e8Smrg os=-genix 166097e8a2e8Smrg ;; 166197e8a2e8Smrg i370-*) 166297e8a2e8Smrg os=-mvs 166397e8a2e8Smrg ;; 166497e8a2e8Smrg *-next) 166597e8a2e8Smrg os=-nextstep3 166697e8a2e8Smrg ;; 166797e8a2e8Smrg *-gould) 166897e8a2e8Smrg os=-sysv 166997e8a2e8Smrg ;; 167097e8a2e8Smrg *-highlevel) 167197e8a2e8Smrg os=-bsd 167297e8a2e8Smrg ;; 167397e8a2e8Smrg *-encore) 167497e8a2e8Smrg os=-bsd 167597e8a2e8Smrg ;; 167697e8a2e8Smrg *-sgi) 167797e8a2e8Smrg os=-irix 167897e8a2e8Smrg ;; 167997e8a2e8Smrg *-siemens) 168097e8a2e8Smrg os=-sysv4 168197e8a2e8Smrg ;; 168297e8a2e8Smrg *-masscomp) 168397e8a2e8Smrg os=-rtu 168497e8a2e8Smrg ;; 168597e8a2e8Smrg f30[01]-fujitsu | f700-fujitsu) 168697e8a2e8Smrg os=-uxpv 168797e8a2e8Smrg ;; 168897e8a2e8Smrg *-rom68k) 168997e8a2e8Smrg os=-coff 169097e8a2e8Smrg ;; 169197e8a2e8Smrg *-*bug) 169297e8a2e8Smrg os=-coff 169397e8a2e8Smrg ;; 169497e8a2e8Smrg *-apple) 169597e8a2e8Smrg os=-macos 169697e8a2e8Smrg ;; 169797e8a2e8Smrg *-atari*) 169897e8a2e8Smrg os=-mint 169997e8a2e8Smrg ;; 170097e8a2e8Smrg *) 170197e8a2e8Smrg os=-none 170297e8a2e8Smrg ;; 170397e8a2e8Smrgesac 170497e8a2e8Smrgfi 170597e8a2e8Smrg 170697e8a2e8Smrg# Here we handle the case where we know the os, and the CPU type, but not the 170797e8a2e8Smrg# manufacturer. We pick the logical manufacturer. 170897e8a2e8Smrgvendor=unknown 170997e8a2e8Smrgcase $basic_machine in 171097e8a2e8Smrg *-unknown) 171197e8a2e8Smrg case $os in 171297e8a2e8Smrg -riscix*) 171397e8a2e8Smrg vendor=acorn 171497e8a2e8Smrg ;; 171597e8a2e8Smrg -sunos*) 171697e8a2e8Smrg vendor=sun 171797e8a2e8Smrg ;; 1718c3f70f0aSmrg -cnk*|-aix*) 171997e8a2e8Smrg vendor=ibm 172097e8a2e8Smrg ;; 172197e8a2e8Smrg -beos*) 172297e8a2e8Smrg vendor=be 172397e8a2e8Smrg ;; 172497e8a2e8Smrg -hpux*) 172597e8a2e8Smrg vendor=hp 172697e8a2e8Smrg ;; 172797e8a2e8Smrg -mpeix*) 172897e8a2e8Smrg vendor=hp 172997e8a2e8Smrg ;; 173097e8a2e8Smrg -hiux*) 173197e8a2e8Smrg vendor=hitachi 173297e8a2e8Smrg ;; 173397e8a2e8Smrg -unos*) 173497e8a2e8Smrg vendor=crds 173597e8a2e8Smrg ;; 173697e8a2e8Smrg -dgux*) 173797e8a2e8Smrg vendor=dg 173897e8a2e8Smrg ;; 173997e8a2e8Smrg -luna*) 174097e8a2e8Smrg vendor=omron 174197e8a2e8Smrg ;; 174297e8a2e8Smrg -genix*) 174397e8a2e8Smrg vendor=ns 174497e8a2e8Smrg ;; 174597e8a2e8Smrg -mvs* | -opened*) 174697e8a2e8Smrg vendor=ibm 174797e8a2e8Smrg ;; 1748d7accfefSmrg -os400*) 1749d7accfefSmrg vendor=ibm 1750d7accfefSmrg ;; 175197e8a2e8Smrg -ptx*) 175297e8a2e8Smrg vendor=sequent 175397e8a2e8Smrg ;; 1754d7accfefSmrg -tpf*) 1755d7accfefSmrg vendor=ibm 1756d7accfefSmrg ;; 175797e8a2e8Smrg -vxsim* | -vxworks* | -windiss*) 175897e8a2e8Smrg vendor=wrs 175997e8a2e8Smrg ;; 176097e8a2e8Smrg -aux*) 176197e8a2e8Smrg vendor=apple 176297e8a2e8Smrg ;; 176397e8a2e8Smrg -hms*) 176497e8a2e8Smrg vendor=hitachi 176597e8a2e8Smrg ;; 176697e8a2e8Smrg -mpw* | -macos*) 176797e8a2e8Smrg vendor=apple 176897e8a2e8Smrg ;; 176997e8a2e8Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 177097e8a2e8Smrg vendor=atari 177197e8a2e8Smrg ;; 177297e8a2e8Smrg -vos*) 177397e8a2e8Smrg vendor=stratus 177497e8a2e8Smrg ;; 177597e8a2e8Smrg esac 177697e8a2e8Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 177797e8a2e8Smrg ;; 177897e8a2e8Smrgesac 177997e8a2e8Smrg 178097e8a2e8Smrgecho $basic_machine$os 1781d7accfefSmrgexit 178297e8a2e8Smrg 178397e8a2e8Smrg# Local variables: 178497e8a2e8Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 178597e8a2e8Smrg# time-stamp-start: "timestamp='" 178697e8a2e8Smrg# time-stamp-format: "%:y-%02m-%02d" 178797e8a2e8Smrg# time-stamp-end: "'" 178897e8a2e8Smrg# End: 1789