config.sub revision 33dddc75
172b4363aSmrg#! /bin/sh 272b4363aSmrg# Configuration validation subroutine script. 333dddc75Smrg# Copyright 1992-2014 Free Software Foundation, Inc. 472b4363aSmrg 533dddc75Smrgtimestamp='2014-12-03' 672b4363aSmrg 733dddc75Smrg# This file is free software; you can redistribute it and/or modify it 833dddc75Smrg# under the terms of the GNU General Public License as published by 933dddc75Smrg# the Free Software Foundation; either version 3 of the License, or 1072b4363aSmrg# (at your option) any later version. 1172b4363aSmrg# 1233dddc75Smrg# This program is distributed in the hope that it will be useful, but 1333dddc75Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1433dddc75Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1533dddc75Smrg# General Public License for more details. 1672b4363aSmrg# 1772b4363aSmrg# You should have received a copy of the GNU General Public License 1833dddc75Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 1972b4363aSmrg# 2072b4363aSmrg# As a special exception to the GNU General Public License, if you 2172b4363aSmrg# distribute this file as part of a program that contains a 2272b4363aSmrg# configuration script generated by Autoconf, you may include it under 2333dddc75Smrg# the same distribution terms that you use for the rest of that 2433dddc75Smrg# program. This Exception is an additional permission under section 7 2533dddc75Smrg# of the GNU General Public License, version 3 ("GPLv3"). 2672b4363aSmrg 2772b4363aSmrg 2833dddc75Smrg# Please send patches to <config-patches@gnu.org>. 2972b4363aSmrg# 3072b4363aSmrg# Configuration subroutine to validate and canonicalize a configuration type. 3172b4363aSmrg# Supply the specified configuration type as an argument. 3272b4363aSmrg# If it is invalid, we print an error message on stderr and exit with code 1. 3372b4363aSmrg# Otherwise, we print the canonical config type on stdout and succeed. 3472b4363aSmrg 3508e312fdSmrg# You can get the latest version of this script from: 3608e312fdSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 3708e312fdSmrg 3872b4363aSmrg# This file is supposed to be the same for all GNU packages 3972b4363aSmrg# and recognize all the CPU types, system types and aliases 4072b4363aSmrg# that are meaningful with *any* GNU software. 4172b4363aSmrg# Each package is responsible for reporting which valid configurations 4272b4363aSmrg# it does not support. The user should be able to distinguish 4372b4363aSmrg# a failure to support a valid configuration from a meaningless 4472b4363aSmrg# configuration. 4572b4363aSmrg 4672b4363aSmrg# The goal of this file is to map all the various variations of a given 4772b4363aSmrg# machine specification into a single specification in the form: 4872b4363aSmrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4972b4363aSmrg# or in some cases, the newer four-part form: 5072b4363aSmrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5172b4363aSmrg# It is wrong to echo any other type of specification. 5272b4363aSmrg 5372b4363aSmrgme=`echo "$0" | sed -e 's,.*/,,'` 5472b4363aSmrg 5572b4363aSmrgusage="\ 5672b4363aSmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 5772b4363aSmrg $0 [OPTION] ALIAS 5872b4363aSmrg 5972b4363aSmrgCanonicalize a configuration name. 6072b4363aSmrg 6172b4363aSmrgOperation modes: 6272b4363aSmrg -h, --help print this help, then exit 6372b4363aSmrg -t, --time-stamp print date of last modification, then exit 6472b4363aSmrg -v, --version print version number, then exit 6572b4363aSmrg 6672b4363aSmrgReport bugs and patches to <config-patches@gnu.org>." 6772b4363aSmrg 6872b4363aSmrgversion="\ 6972b4363aSmrgGNU config.sub ($timestamp) 7072b4363aSmrg 7133dddc75SmrgCopyright 1992-2014 Free Software Foundation, Inc. 7272b4363aSmrg 7372b4363aSmrgThis is free software; see the source for copying conditions. There is NO 7472b4363aSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7572b4363aSmrg 7672b4363aSmrghelp=" 7772b4363aSmrgTry \`$me --help' for more information." 7872b4363aSmrg 7972b4363aSmrg# Parse command line 8072b4363aSmrgwhile test $# -gt 0 ; do 8172b4363aSmrg case $1 in 8272b4363aSmrg --time-stamp | --time* | -t ) 8372b4363aSmrg echo "$timestamp" ; exit ;; 8472b4363aSmrg --version | -v ) 8572b4363aSmrg echo "$version" ; exit ;; 8672b4363aSmrg --help | --h* | -h ) 8772b4363aSmrg echo "$usage"; exit ;; 8872b4363aSmrg -- ) # Stop option processing 8972b4363aSmrg shift; break ;; 9072b4363aSmrg - ) # Use stdin as input. 9172b4363aSmrg break ;; 9272b4363aSmrg -* ) 9372b4363aSmrg echo "$me: invalid option $1$help" 9472b4363aSmrg exit 1 ;; 9572b4363aSmrg 9672b4363aSmrg *local*) 9772b4363aSmrg # First pass through any local machine types. 9872b4363aSmrg echo $1 9972b4363aSmrg exit ;; 10072b4363aSmrg 10172b4363aSmrg * ) 10272b4363aSmrg break ;; 10372b4363aSmrg esac 10472b4363aSmrgdone 10572b4363aSmrg 10672b4363aSmrgcase $# in 10772b4363aSmrg 0) echo "$me: missing argument$help" >&2 10872b4363aSmrg exit 1;; 10972b4363aSmrg 1) ;; 11072b4363aSmrg *) echo "$me: too many arguments$help" >&2 11172b4363aSmrg exit 1;; 11272b4363aSmrgesac 11372b4363aSmrg 11472b4363aSmrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11572b4363aSmrg# Here we must recognize all the valid KERNEL-OS combinations. 11672b4363aSmrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11772b4363aSmrgcase $maybe_os in 11808e312fdSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 11933dddc75Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12008e312fdSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 121dd77ae96Smrg kopensolaris*-gnu* | \ 12272b4363aSmrg storm-chaos* | os2-emx* | rtmk-nova*) 12372b4363aSmrg os=-$maybe_os 12472b4363aSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12572b4363aSmrg ;; 12633dddc75Smrg android-linux) 12733dddc75Smrg os=-linux-android 12833dddc75Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 12933dddc75Smrg ;; 13072b4363aSmrg *) 13172b4363aSmrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13272b4363aSmrg if [ $basic_machine != $1 ] 13372b4363aSmrg then os=`echo $1 | sed 's/.*-/-/'` 13472b4363aSmrg else os=; fi 13572b4363aSmrg ;; 13672b4363aSmrgesac 13772b4363aSmrg 13872b4363aSmrg### Let's recognize common machines as not being operating systems so 13972b4363aSmrg### that things like config.sub decstation-3100 work. We also 14072b4363aSmrg### recognize some manufacturers as not being operating systems, so we 14172b4363aSmrg### can provide default operating systems below. 14272b4363aSmrgcase $os in 14372b4363aSmrg -sun*os*) 14472b4363aSmrg # Prevent following clause from handling this invalid input. 14572b4363aSmrg ;; 14672b4363aSmrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14772b4363aSmrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14872b4363aSmrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14972b4363aSmrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15072b4363aSmrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15172b4363aSmrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15233dddc75Smrg -apple | -axis | -knuth | -cray | -microblaze*) 15372b4363aSmrg os= 15472b4363aSmrg basic_machine=$1 15572b4363aSmrg ;; 15633dddc75Smrg -bluegene*) 15733dddc75Smrg os=-cnk 15808e312fdSmrg ;; 15972b4363aSmrg -sim | -cisco | -oki | -wec | -winbond) 16072b4363aSmrg os= 16172b4363aSmrg basic_machine=$1 16272b4363aSmrg ;; 16372b4363aSmrg -scout) 16472b4363aSmrg ;; 16572b4363aSmrg -wrs) 16672b4363aSmrg os=-vxworks 16772b4363aSmrg basic_machine=$1 16872b4363aSmrg ;; 16972b4363aSmrg -chorusos*) 17072b4363aSmrg os=-chorusos 17172b4363aSmrg basic_machine=$1 17272b4363aSmrg ;; 17333dddc75Smrg -chorusrdb) 17433dddc75Smrg os=-chorusrdb 17572b4363aSmrg basic_machine=$1 17633dddc75Smrg ;; 17772b4363aSmrg -hiux*) 17872b4363aSmrg os=-hiuxwe2 17972b4363aSmrg ;; 18072b4363aSmrg -sco6) 18172b4363aSmrg os=-sco5v6 18272b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18372b4363aSmrg ;; 18472b4363aSmrg -sco5) 18572b4363aSmrg os=-sco3.2v5 18672b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18772b4363aSmrg ;; 18872b4363aSmrg -sco4) 18972b4363aSmrg os=-sco3.2v4 19072b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19172b4363aSmrg ;; 19272b4363aSmrg -sco3.2.[4-9]*) 19372b4363aSmrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19472b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19572b4363aSmrg ;; 19672b4363aSmrg -sco3.2v[4-9]*) 19772b4363aSmrg # Don't forget version if it is 3.2v4 or newer. 19872b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19972b4363aSmrg ;; 20072b4363aSmrg -sco5v6*) 20172b4363aSmrg # Don't forget version if it is 3.2v4 or newer. 20272b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20372b4363aSmrg ;; 20472b4363aSmrg -sco*) 20572b4363aSmrg os=-sco3.2v2 20672b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20772b4363aSmrg ;; 20872b4363aSmrg -udk*) 20972b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21072b4363aSmrg ;; 21172b4363aSmrg -isc) 21272b4363aSmrg os=-isc2.2 21372b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21472b4363aSmrg ;; 21572b4363aSmrg -clix*) 21672b4363aSmrg basic_machine=clipper-intergraph 21772b4363aSmrg ;; 21872b4363aSmrg -isc*) 21972b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22072b4363aSmrg ;; 22133dddc75Smrg -lynx*178) 22233dddc75Smrg os=-lynxos178 22333dddc75Smrg ;; 22433dddc75Smrg -lynx*5) 22533dddc75Smrg os=-lynxos5 22633dddc75Smrg ;; 22772b4363aSmrg -lynx*) 22872b4363aSmrg os=-lynxos 22972b4363aSmrg ;; 23072b4363aSmrg -ptx*) 23172b4363aSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23272b4363aSmrg ;; 23372b4363aSmrg -windowsnt*) 23472b4363aSmrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23572b4363aSmrg ;; 23672b4363aSmrg -psos*) 23772b4363aSmrg os=-psos 23872b4363aSmrg ;; 23972b4363aSmrg -mint | -mint[0-9]*) 24072b4363aSmrg basic_machine=m68k-atari 24172b4363aSmrg os=-mint 24272b4363aSmrg ;; 24372b4363aSmrgesac 24472b4363aSmrg 24572b4363aSmrg# Decode aliases for certain CPU-COMPANY combinations. 24672b4363aSmrgcase $basic_machine in 24772b4363aSmrg # Recognize the basic CPU types without company name. 24872b4363aSmrg # Some are omitted here because they have special meanings below. 24972b4363aSmrg 1750a | 580 \ 25072b4363aSmrg | a29k \ 25133dddc75Smrg | aarch64 | aarch64_be \ 25272b4363aSmrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25372b4363aSmrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25472b4363aSmrg | am33_2.0 \ 25533dddc75Smrg | arc | arceb \ 25633dddc75Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 25733dddc75Smrg | avr | avr32 \ 25833dddc75Smrg | be32 | be64 \ 25972b4363aSmrg | bfin \ 26033dddc75Smrg | c4x | c8051 | clipper \ 26172b4363aSmrg | d10v | d30v | dlx | dsp16xx \ 26233dddc75Smrg | epiphany \ 263dd77ae96Smrg | fido | fr30 | frv \ 26472b4363aSmrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 26533dddc75Smrg | hexagon \ 26672b4363aSmrg | i370 | i860 | i960 | ia64 \ 26772b4363aSmrg | ip2k | iq2000 \ 26833dddc75Smrg | k1om \ 26933dddc75Smrg | le32 | le64 \ 270dd77ae96Smrg | lm32 \ 27172b4363aSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 27233dddc75Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27372b4363aSmrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27472b4363aSmrg | mips16 \ 27572b4363aSmrg | mips64 | mips64el \ 276dd77ae96Smrg | mips64octeon | mips64octeonel \ 27772b4363aSmrg | mips64orion | mips64orionel \ 278dd77ae96Smrg | mips64r5900 | mips64r5900el \ 279dd77ae96Smrg | mips64vr | mips64vrel \ 28072b4363aSmrg | mips64vr4100 | mips64vr4100el \ 28172b4363aSmrg | mips64vr4300 | mips64vr4300el \ 28272b4363aSmrg | mips64vr5000 | mips64vr5000el \ 28372b4363aSmrg | mips64vr5900 | mips64vr5900el \ 28472b4363aSmrg | mipsisa32 | mipsisa32el \ 28572b4363aSmrg | mipsisa32r2 | mipsisa32r2el \ 28633dddc75Smrg | mipsisa32r6 | mipsisa32r6el \ 28772b4363aSmrg | mipsisa64 | mipsisa64el \ 28872b4363aSmrg | mipsisa64r2 | mipsisa64r2el \ 28933dddc75Smrg | mipsisa64r6 | mipsisa64r6el \ 29072b4363aSmrg | mipsisa64sb1 | mipsisa64sb1el \ 29172b4363aSmrg | mipsisa64sr71k | mipsisa64sr71kel \ 29233dddc75Smrg | mipsr5900 | mipsr5900el \ 29372b4363aSmrg | mipstx39 | mipstx39el \ 29472b4363aSmrg | mn10200 | mn10300 \ 295dd77ae96Smrg | moxie \ 29672b4363aSmrg | mt \ 29772b4363aSmrg | msp430 \ 29808e312fdSmrg | nds32 | nds32le | nds32be \ 29933dddc75Smrg | nios | nios2 | nios2eb | nios2el \ 30072b4363aSmrg | ns16k | ns32k \ 30133dddc75Smrg | open8 | or1k | or1knd | or32 \ 30272b4363aSmrg | pdp10 | pdp11 | pj | pjl \ 30333dddc75Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 30472b4363aSmrg | pyramid \ 30533dddc75Smrg | riscv32 | riscv64 \ 30633dddc75Smrg | rl78 | rx \ 30772b4363aSmrg | score \ 308dd77ae96Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30972b4363aSmrg | sh64 | sh64le \ 31072b4363aSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 31172b4363aSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 31233dddc75Smrg | spu \ 31333dddc75Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31408e312fdSmrg | ubicom32 \ 31533dddc75Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31633dddc75Smrg | visium \ 31772b4363aSmrg | we32k \ 31833dddc75Smrg | x86 | xc16x | xstormy16 | xtensa \ 319dd77ae96Smrg | z8k | z80) 32072b4363aSmrg basic_machine=$basic_machine-unknown 32172b4363aSmrg ;; 32208e312fdSmrg c54x) 32308e312fdSmrg basic_machine=tic54x-unknown 32408e312fdSmrg ;; 32508e312fdSmrg c55x) 32608e312fdSmrg basic_machine=tic55x-unknown 32708e312fdSmrg ;; 32808e312fdSmrg c6x) 32908e312fdSmrg basic_machine=tic6x-unknown 33008e312fdSmrg ;; 33133dddc75Smrg leon|leon[3-9]) 33233dddc75Smrg basic_machine=sparc-$basic_machine 33333dddc75Smrg ;; 33433dddc75Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 33572b4363aSmrg basic_machine=$basic_machine-unknown 33672b4363aSmrg os=-none 33772b4363aSmrg ;; 33872b4363aSmrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33972b4363aSmrg ;; 34072b4363aSmrg ms1) 34172b4363aSmrg basic_machine=mt-unknown 34272b4363aSmrg ;; 34372b4363aSmrg 34433dddc75Smrg strongarm | thumb | xscale) 34533dddc75Smrg basic_machine=arm-unknown 34633dddc75Smrg ;; 34733dddc75Smrg xgate) 34833dddc75Smrg basic_machine=$basic_machine-unknown 34933dddc75Smrg os=-none 35033dddc75Smrg ;; 35133dddc75Smrg xscaleeb) 35233dddc75Smrg basic_machine=armeb-unknown 35333dddc75Smrg ;; 35433dddc75Smrg 35533dddc75Smrg xscaleel) 35633dddc75Smrg basic_machine=armel-unknown 35733dddc75Smrg ;; 35833dddc75Smrg 35972b4363aSmrg # We use `pc' rather than `unknown' 36072b4363aSmrg # because (1) that's what they normally are, and 36172b4363aSmrg # (2) the word "unknown" tends to confuse beginning users. 36272b4363aSmrg i*86 | x86_64) 36372b4363aSmrg basic_machine=$basic_machine-pc 36472b4363aSmrg ;; 36572b4363aSmrg # Object if more than one company name word. 36672b4363aSmrg *-*-*) 36772b4363aSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36872b4363aSmrg exit 1 36972b4363aSmrg ;; 37072b4363aSmrg # Recognize the basic CPU types with company name. 37172b4363aSmrg 580-* \ 37272b4363aSmrg | a29k-* \ 37333dddc75Smrg | aarch64-* | aarch64_be-* \ 37472b4363aSmrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 37572b4363aSmrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 37633dddc75Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37772b4363aSmrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 37872b4363aSmrg | avr-* | avr32-* \ 37933dddc75Smrg | be32-* | be64-* \ 38072b4363aSmrg | bfin-* | bs2000-* \ 38108e312fdSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 38233dddc75Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 38372b4363aSmrg | d10v-* | d30v-* | dlx-* \ 38472b4363aSmrg | elxsi-* \ 385dd77ae96Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38672b4363aSmrg | h8300-* | h8500-* \ 38772b4363aSmrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 38833dddc75Smrg | hexagon-* \ 38972b4363aSmrg | i*86-* | i860-* | i960-* | ia64-* \ 39072b4363aSmrg | ip2k-* | iq2000-* \ 39133dddc75Smrg | k1om-* \ 39233dddc75Smrg | le32-* | le64-* \ 393dd77ae96Smrg | lm32-* \ 39472b4363aSmrg | m32c-* | m32r-* | m32rle-* \ 39572b4363aSmrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 39633dddc75Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 39733dddc75Smrg | microblaze-* | microblazeel-* \ 39872b4363aSmrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 39972b4363aSmrg | mips16-* \ 40072b4363aSmrg | mips64-* | mips64el-* \ 401dd77ae96Smrg | mips64octeon-* | mips64octeonel-* \ 40272b4363aSmrg | mips64orion-* | mips64orionel-* \ 403dd77ae96Smrg | mips64r5900-* | mips64r5900el-* \ 404dd77ae96Smrg | mips64vr-* | mips64vrel-* \ 40572b4363aSmrg | mips64vr4100-* | mips64vr4100el-* \ 40672b4363aSmrg | mips64vr4300-* | mips64vr4300el-* \ 40772b4363aSmrg | mips64vr5000-* | mips64vr5000el-* \ 40872b4363aSmrg | mips64vr5900-* | mips64vr5900el-* \ 40972b4363aSmrg | mipsisa32-* | mipsisa32el-* \ 41072b4363aSmrg | mipsisa32r2-* | mipsisa32r2el-* \ 41133dddc75Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 41272b4363aSmrg | mipsisa64-* | mipsisa64el-* \ 41372b4363aSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 41433dddc75Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 41572b4363aSmrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 41672b4363aSmrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 41733dddc75Smrg | mipsr5900-* | mipsr5900el-* \ 41872b4363aSmrg | mipstx39-* | mipstx39el-* \ 41972b4363aSmrg | mmix-* \ 42072b4363aSmrg | mt-* \ 42172b4363aSmrg | msp430-* \ 42208e312fdSmrg | nds32-* | nds32le-* | nds32be-* \ 42333dddc75Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 42472b4363aSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 42533dddc75Smrg | open8-* \ 42633dddc75Smrg | or1k*-* \ 42772b4363aSmrg | orion-* \ 42872b4363aSmrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 42933dddc75Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 43072b4363aSmrg | pyramid-* \ 43133dddc75Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 432dd77ae96Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 43372b4363aSmrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 43472b4363aSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 43572b4363aSmrg | sparclite-* \ 43633dddc75Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 43733dddc75Smrg | tahoe-* \ 43808e312fdSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 43933dddc75Smrg | tile*-* \ 44072b4363aSmrg | tron-* \ 44108e312fdSmrg | ubicom32-* \ 44233dddc75Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 44333dddc75Smrg | vax-* \ 44433dddc75Smrg | visium-* \ 44572b4363aSmrg | we32k-* \ 44633dddc75Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 447dd77ae96Smrg | xstormy16-* | xtensa*-* \ 44872b4363aSmrg | ymp-* \ 449dd77ae96Smrg | z8k-* | z80-*) 450dd77ae96Smrg ;; 451dd77ae96Smrg # Recognize the basic CPU types without company name, with glob match. 452dd77ae96Smrg xtensa*) 453dd77ae96Smrg basic_machine=$basic_machine-unknown 45472b4363aSmrg ;; 45572b4363aSmrg # Recognize the various machine names and aliases which stand 45672b4363aSmrg # for a CPU type and a company and sometimes even an OS. 45772b4363aSmrg 386bsd) 45872b4363aSmrg basic_machine=i386-unknown 45972b4363aSmrg os=-bsd 46072b4363aSmrg ;; 46172b4363aSmrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 46272b4363aSmrg basic_machine=m68000-att 46372b4363aSmrg ;; 46472b4363aSmrg 3b*) 46572b4363aSmrg basic_machine=we32k-att 46672b4363aSmrg ;; 46772b4363aSmrg a29khif) 46872b4363aSmrg basic_machine=a29k-amd 46972b4363aSmrg os=-udi 47072b4363aSmrg ;; 47133dddc75Smrg abacus) 47272b4363aSmrg basic_machine=abacus-unknown 47372b4363aSmrg ;; 47472b4363aSmrg adobe68k) 47572b4363aSmrg basic_machine=m68010-adobe 47672b4363aSmrg os=-scout 47772b4363aSmrg ;; 47872b4363aSmrg alliant | fx80) 47972b4363aSmrg basic_machine=fx80-alliant 48072b4363aSmrg ;; 48172b4363aSmrg altos | altos3068) 48272b4363aSmrg basic_machine=m68k-altos 48372b4363aSmrg ;; 48472b4363aSmrg am29k) 48572b4363aSmrg basic_machine=a29k-none 48672b4363aSmrg os=-bsd 48772b4363aSmrg ;; 48872b4363aSmrg amd64) 48972b4363aSmrg basic_machine=x86_64-pc 49072b4363aSmrg ;; 49172b4363aSmrg amd64-*) 49272b4363aSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 49372b4363aSmrg ;; 49472b4363aSmrg amdahl) 49572b4363aSmrg basic_machine=580-amdahl 49672b4363aSmrg os=-sysv 49772b4363aSmrg ;; 49872b4363aSmrg amiga | amiga-*) 49972b4363aSmrg basic_machine=m68k-unknown 50072b4363aSmrg ;; 50172b4363aSmrg amigaos | amigados) 50272b4363aSmrg basic_machine=m68k-unknown 50372b4363aSmrg os=-amigaos 50472b4363aSmrg ;; 50572b4363aSmrg amigaunix | amix) 50672b4363aSmrg basic_machine=m68k-unknown 50772b4363aSmrg os=-sysv4 50872b4363aSmrg ;; 50972b4363aSmrg apollo68) 51072b4363aSmrg basic_machine=m68k-apollo 51172b4363aSmrg os=-sysv 51272b4363aSmrg ;; 51372b4363aSmrg apollo68bsd) 51472b4363aSmrg basic_machine=m68k-apollo 51572b4363aSmrg os=-bsd 51672b4363aSmrg ;; 517dd77ae96Smrg aros) 518dd77ae96Smrg basic_machine=i386-pc 519dd77ae96Smrg os=-aros 520dd77ae96Smrg ;; 52172b4363aSmrg aux) 52272b4363aSmrg basic_machine=m68k-apple 52372b4363aSmrg os=-aux 52472b4363aSmrg ;; 52572b4363aSmrg balance) 52672b4363aSmrg basic_machine=ns32k-sequent 52772b4363aSmrg os=-dynix 52872b4363aSmrg ;; 529dd77ae96Smrg blackfin) 530dd77ae96Smrg basic_machine=bfin-unknown 531dd77ae96Smrg os=-linux 532dd77ae96Smrg ;; 533dd77ae96Smrg blackfin-*) 534dd77ae96Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 535dd77ae96Smrg os=-linux 536dd77ae96Smrg ;; 53708e312fdSmrg bluegene*) 53808e312fdSmrg basic_machine=powerpc-ibm 53908e312fdSmrg os=-cnk 54008e312fdSmrg ;; 54108e312fdSmrg c54x-*) 54208e312fdSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 54308e312fdSmrg ;; 54408e312fdSmrg c55x-*) 54508e312fdSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 54608e312fdSmrg ;; 54708e312fdSmrg c6x-*) 54808e312fdSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 54908e312fdSmrg ;; 55072b4363aSmrg c90) 55172b4363aSmrg basic_machine=c90-cray 55272b4363aSmrg os=-unicos 55372b4363aSmrg ;; 55433dddc75Smrg cegcc) 555dd77ae96Smrg basic_machine=arm-unknown 556dd77ae96Smrg os=-cegcc 557dd77ae96Smrg ;; 55872b4363aSmrg convex-c1) 55972b4363aSmrg basic_machine=c1-convex 56072b4363aSmrg os=-bsd 56172b4363aSmrg ;; 56272b4363aSmrg convex-c2) 56372b4363aSmrg basic_machine=c2-convex 56472b4363aSmrg os=-bsd 56572b4363aSmrg ;; 56672b4363aSmrg convex-c32) 56772b4363aSmrg basic_machine=c32-convex 56872b4363aSmrg os=-bsd 56972b4363aSmrg ;; 57072b4363aSmrg convex-c34) 57172b4363aSmrg basic_machine=c34-convex 57272b4363aSmrg os=-bsd 57372b4363aSmrg ;; 57472b4363aSmrg convex-c38) 57572b4363aSmrg basic_machine=c38-convex 57672b4363aSmrg os=-bsd 57772b4363aSmrg ;; 57872b4363aSmrg cray | j90) 57972b4363aSmrg basic_machine=j90-cray 58072b4363aSmrg os=-unicos 58172b4363aSmrg ;; 58272b4363aSmrg craynv) 58372b4363aSmrg basic_machine=craynv-cray 58472b4363aSmrg os=-unicosmp 58572b4363aSmrg ;; 58633dddc75Smrg cr16 | cr16-*) 587dd77ae96Smrg basic_machine=cr16-unknown 58872b4363aSmrg os=-elf 58972b4363aSmrg ;; 59072b4363aSmrg crds | unos) 59172b4363aSmrg basic_machine=m68k-crds 59272b4363aSmrg ;; 59372b4363aSmrg crisv32 | crisv32-* | etraxfs*) 59472b4363aSmrg basic_machine=crisv32-axis 59572b4363aSmrg ;; 59672b4363aSmrg cris | cris-* | etrax*) 59772b4363aSmrg basic_machine=cris-axis 59872b4363aSmrg ;; 59972b4363aSmrg crx) 60072b4363aSmrg basic_machine=crx-unknown 60172b4363aSmrg os=-elf 60272b4363aSmrg ;; 60372b4363aSmrg da30 | da30-*) 60472b4363aSmrg basic_machine=m68k-da30 60572b4363aSmrg ;; 60672b4363aSmrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 60772b4363aSmrg basic_machine=mips-dec 60872b4363aSmrg ;; 60972b4363aSmrg decsystem10* | dec10*) 61072b4363aSmrg basic_machine=pdp10-dec 61172b4363aSmrg os=-tops10 61272b4363aSmrg ;; 61372b4363aSmrg decsystem20* | dec20*) 61472b4363aSmrg basic_machine=pdp10-dec 61572b4363aSmrg os=-tops20 61672b4363aSmrg ;; 61772b4363aSmrg delta | 3300 | motorola-3300 | motorola-delta \ 61872b4363aSmrg | 3300-motorola | delta-motorola) 61972b4363aSmrg basic_machine=m68k-motorola 62072b4363aSmrg ;; 62172b4363aSmrg delta88) 62272b4363aSmrg basic_machine=m88k-motorola 62372b4363aSmrg os=-sysv3 62472b4363aSmrg ;; 625dd77ae96Smrg dicos) 626dd77ae96Smrg basic_machine=i686-pc 627dd77ae96Smrg os=-dicos 628dd77ae96Smrg ;; 62972b4363aSmrg djgpp) 63072b4363aSmrg basic_machine=i586-pc 63172b4363aSmrg os=-msdosdjgpp 63272b4363aSmrg ;; 63372b4363aSmrg dpx20 | dpx20-*) 63472b4363aSmrg basic_machine=rs6000-bull 63572b4363aSmrg os=-bosx 63672b4363aSmrg ;; 63772b4363aSmrg dpx2* | dpx2*-bull) 63872b4363aSmrg basic_machine=m68k-bull 63972b4363aSmrg os=-sysv3 64072b4363aSmrg ;; 64172b4363aSmrg ebmon29k) 64272b4363aSmrg basic_machine=a29k-amd 64372b4363aSmrg os=-ebmon 64472b4363aSmrg ;; 64572b4363aSmrg elxsi) 64672b4363aSmrg basic_machine=elxsi-elxsi 64772b4363aSmrg os=-bsd 64872b4363aSmrg ;; 64972b4363aSmrg encore | umax | mmax) 65072b4363aSmrg basic_machine=ns32k-encore 65172b4363aSmrg ;; 65272b4363aSmrg es1800 | OSE68k | ose68k | ose | OSE) 65372b4363aSmrg basic_machine=m68k-ericsson 65472b4363aSmrg os=-ose 65572b4363aSmrg ;; 65672b4363aSmrg fx2800) 65772b4363aSmrg basic_machine=i860-alliant 65872b4363aSmrg ;; 65972b4363aSmrg genix) 66072b4363aSmrg basic_machine=ns32k-ns 66172b4363aSmrg ;; 66272b4363aSmrg gmicro) 66372b4363aSmrg basic_machine=tron-gmicro 66472b4363aSmrg os=-sysv 66572b4363aSmrg ;; 66672b4363aSmrg go32) 66772b4363aSmrg basic_machine=i386-pc 66872b4363aSmrg os=-go32 66972b4363aSmrg ;; 67072b4363aSmrg h3050r* | hiux*) 67172b4363aSmrg basic_machine=hppa1.1-hitachi 67272b4363aSmrg os=-hiuxwe2 67372b4363aSmrg ;; 67472b4363aSmrg h8300hms) 67572b4363aSmrg basic_machine=h8300-hitachi 67672b4363aSmrg os=-hms 67772b4363aSmrg ;; 67872b4363aSmrg h8300xray) 67972b4363aSmrg basic_machine=h8300-hitachi 68072b4363aSmrg os=-xray 68172b4363aSmrg ;; 68272b4363aSmrg h8500hms) 68372b4363aSmrg basic_machine=h8500-hitachi 68472b4363aSmrg os=-hms 68572b4363aSmrg ;; 68672b4363aSmrg harris) 68772b4363aSmrg basic_machine=m88k-harris 68872b4363aSmrg os=-sysv3 68972b4363aSmrg ;; 69072b4363aSmrg hp300-*) 69172b4363aSmrg basic_machine=m68k-hp 69272b4363aSmrg ;; 69372b4363aSmrg hp300bsd) 69472b4363aSmrg basic_machine=m68k-hp 69572b4363aSmrg os=-bsd 69672b4363aSmrg ;; 69772b4363aSmrg hp300hpux) 69872b4363aSmrg basic_machine=m68k-hp 69972b4363aSmrg os=-hpux 70072b4363aSmrg ;; 70172b4363aSmrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 70272b4363aSmrg basic_machine=hppa1.0-hp 70372b4363aSmrg ;; 70472b4363aSmrg hp9k2[0-9][0-9] | hp9k31[0-9]) 70572b4363aSmrg basic_machine=m68000-hp 70672b4363aSmrg ;; 70772b4363aSmrg hp9k3[2-9][0-9]) 70872b4363aSmrg basic_machine=m68k-hp 70972b4363aSmrg ;; 71072b4363aSmrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 71172b4363aSmrg basic_machine=hppa1.0-hp 71272b4363aSmrg ;; 71372b4363aSmrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 71472b4363aSmrg basic_machine=hppa1.1-hp 71572b4363aSmrg ;; 71672b4363aSmrg hp9k78[0-9] | hp78[0-9]) 71772b4363aSmrg # FIXME: really hppa2.0-hp 71872b4363aSmrg basic_machine=hppa1.1-hp 71972b4363aSmrg ;; 72072b4363aSmrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 72172b4363aSmrg # FIXME: really hppa2.0-hp 72272b4363aSmrg basic_machine=hppa1.1-hp 72372b4363aSmrg ;; 72472b4363aSmrg hp9k8[0-9][13679] | hp8[0-9][13679]) 72572b4363aSmrg basic_machine=hppa1.1-hp 72672b4363aSmrg ;; 72772b4363aSmrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 72872b4363aSmrg basic_machine=hppa1.0-hp 72972b4363aSmrg ;; 73072b4363aSmrg hppa-next) 73172b4363aSmrg os=-nextstep3 73272b4363aSmrg ;; 73372b4363aSmrg hppaosf) 73472b4363aSmrg basic_machine=hppa1.1-hp 73572b4363aSmrg os=-osf 73672b4363aSmrg ;; 73772b4363aSmrg hppro) 73872b4363aSmrg basic_machine=hppa1.1-hp 73972b4363aSmrg os=-proelf 74072b4363aSmrg ;; 74172b4363aSmrg i370-ibm* | ibm*) 74272b4363aSmrg basic_machine=i370-ibm 74372b4363aSmrg ;; 74472b4363aSmrg i*86v32) 74572b4363aSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74672b4363aSmrg os=-sysv32 74772b4363aSmrg ;; 74872b4363aSmrg i*86v4*) 74972b4363aSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75072b4363aSmrg os=-sysv4 75172b4363aSmrg ;; 75272b4363aSmrg i*86v) 75372b4363aSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75472b4363aSmrg os=-sysv 75572b4363aSmrg ;; 75672b4363aSmrg i*86sol2) 75772b4363aSmrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75872b4363aSmrg os=-solaris2 75972b4363aSmrg ;; 76072b4363aSmrg i386mach) 76172b4363aSmrg basic_machine=i386-mach 76272b4363aSmrg os=-mach 76372b4363aSmrg ;; 76472b4363aSmrg i386-vsta | vsta) 76572b4363aSmrg basic_machine=i386-unknown 76672b4363aSmrg os=-vsta 76772b4363aSmrg ;; 76872b4363aSmrg iris | iris4d) 76972b4363aSmrg basic_machine=mips-sgi 77072b4363aSmrg case $os in 77172b4363aSmrg -irix*) 77272b4363aSmrg ;; 77372b4363aSmrg *) 77472b4363aSmrg os=-irix4 77572b4363aSmrg ;; 77672b4363aSmrg esac 77772b4363aSmrg ;; 77872b4363aSmrg isi68 | isi) 77972b4363aSmrg basic_machine=m68k-isi 78072b4363aSmrg os=-sysv 78172b4363aSmrg ;; 78233dddc75Smrg leon-*|leon[3-9]-*) 78333dddc75Smrg basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 78433dddc75Smrg ;; 785dd77ae96Smrg m68knommu) 786dd77ae96Smrg basic_machine=m68k-unknown 787dd77ae96Smrg os=-linux 788dd77ae96Smrg ;; 789dd77ae96Smrg m68knommu-*) 790dd77ae96Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 791dd77ae96Smrg os=-linux 792dd77ae96Smrg ;; 79372b4363aSmrg m88k-omron*) 79472b4363aSmrg basic_machine=m88k-omron 79572b4363aSmrg ;; 79672b4363aSmrg magnum | m3230) 79772b4363aSmrg basic_machine=mips-mips 79872b4363aSmrg os=-sysv 79972b4363aSmrg ;; 80072b4363aSmrg merlin) 80172b4363aSmrg basic_machine=ns32k-utek 80272b4363aSmrg os=-sysv 80372b4363aSmrg ;; 80433dddc75Smrg microblaze*) 80508e312fdSmrg basic_machine=microblaze-xilinx 80608e312fdSmrg ;; 80733dddc75Smrg mingw64) 80833dddc75Smrg basic_machine=x86_64-pc 80933dddc75Smrg os=-mingw64 81033dddc75Smrg ;; 81172b4363aSmrg mingw32) 81233dddc75Smrg basic_machine=i686-pc 81372b4363aSmrg os=-mingw32 81472b4363aSmrg ;; 815dd77ae96Smrg mingw32ce) 816dd77ae96Smrg basic_machine=arm-unknown 817dd77ae96Smrg os=-mingw32ce 818dd77ae96Smrg ;; 81972b4363aSmrg miniframe) 82072b4363aSmrg basic_machine=m68000-convergent 82172b4363aSmrg ;; 82272b4363aSmrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 82372b4363aSmrg basic_machine=m68k-atari 82472b4363aSmrg os=-mint 82572b4363aSmrg ;; 82672b4363aSmrg mips3*-*) 82772b4363aSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 82872b4363aSmrg ;; 82972b4363aSmrg mips3*) 83072b4363aSmrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 83172b4363aSmrg ;; 83272b4363aSmrg monitor) 83372b4363aSmrg basic_machine=m68k-rom68k 83472b4363aSmrg os=-coff 83572b4363aSmrg ;; 83672b4363aSmrg morphos) 83772b4363aSmrg basic_machine=powerpc-unknown 83872b4363aSmrg os=-morphos 83972b4363aSmrg ;; 84033dddc75Smrg moxiebox) 84133dddc75Smrg basic_machine=moxie-unknown 84233dddc75Smrg os=-moxiebox 84333dddc75Smrg ;; 84472b4363aSmrg msdos) 84572b4363aSmrg basic_machine=i386-pc 84672b4363aSmrg os=-msdos 84772b4363aSmrg ;; 84872b4363aSmrg ms1-*) 84972b4363aSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 85072b4363aSmrg ;; 85133dddc75Smrg msys) 85233dddc75Smrg basic_machine=i686-pc 85333dddc75Smrg os=-msys 85433dddc75Smrg ;; 85572b4363aSmrg mvs) 85672b4363aSmrg basic_machine=i370-ibm 85772b4363aSmrg os=-mvs 85872b4363aSmrg ;; 85933dddc75Smrg nacl) 86033dddc75Smrg basic_machine=le32-unknown 86133dddc75Smrg os=-nacl 86233dddc75Smrg ;; 86372b4363aSmrg ncr3000) 86472b4363aSmrg basic_machine=i486-ncr 86572b4363aSmrg os=-sysv4 86672b4363aSmrg ;; 86772b4363aSmrg netbsd386) 86872b4363aSmrg basic_machine=i386-unknown 86972b4363aSmrg os=-netbsd 87072b4363aSmrg ;; 87172b4363aSmrg netwinder) 87272b4363aSmrg basic_machine=armv4l-rebel 87372b4363aSmrg os=-linux 87472b4363aSmrg ;; 87572b4363aSmrg news | news700 | news800 | news900) 87672b4363aSmrg basic_machine=m68k-sony 87772b4363aSmrg os=-newsos 87872b4363aSmrg ;; 87972b4363aSmrg news1000) 88072b4363aSmrg basic_machine=m68030-sony 88172b4363aSmrg os=-newsos 88272b4363aSmrg ;; 88372b4363aSmrg news-3600 | risc-news) 88472b4363aSmrg basic_machine=mips-sony 88572b4363aSmrg os=-newsos 88672b4363aSmrg ;; 88772b4363aSmrg necv70) 88872b4363aSmrg basic_machine=v70-nec 88972b4363aSmrg os=-sysv 89072b4363aSmrg ;; 89172b4363aSmrg next | m*-next ) 89272b4363aSmrg basic_machine=m68k-next 89372b4363aSmrg case $os in 89472b4363aSmrg -nextstep* ) 89572b4363aSmrg ;; 89672b4363aSmrg -ns2*) 89772b4363aSmrg os=-nextstep2 89872b4363aSmrg ;; 89972b4363aSmrg *) 90072b4363aSmrg os=-nextstep3 90172b4363aSmrg ;; 90272b4363aSmrg esac 90372b4363aSmrg ;; 90472b4363aSmrg nh3000) 90572b4363aSmrg basic_machine=m68k-harris 90672b4363aSmrg os=-cxux 90772b4363aSmrg ;; 90872b4363aSmrg nh[45]000) 90972b4363aSmrg basic_machine=m88k-harris 91072b4363aSmrg os=-cxux 91172b4363aSmrg ;; 91272b4363aSmrg nindy960) 91372b4363aSmrg basic_machine=i960-intel 91472b4363aSmrg os=-nindy 91572b4363aSmrg ;; 91672b4363aSmrg mon960) 91772b4363aSmrg basic_machine=i960-intel 91872b4363aSmrg os=-mon960 91972b4363aSmrg ;; 92072b4363aSmrg nonstopux) 92172b4363aSmrg basic_machine=mips-compaq 92272b4363aSmrg os=-nonstopux 92372b4363aSmrg ;; 92472b4363aSmrg np1) 92572b4363aSmrg basic_machine=np1-gould 92672b4363aSmrg ;; 92733dddc75Smrg neo-tandem) 92808e312fdSmrg basic_machine=neo-tandem 92908e312fdSmrg ;; 93033dddc75Smrg nse-tandem) 93108e312fdSmrg basic_machine=nse-tandem 93208e312fdSmrg ;; 93372b4363aSmrg nsr-tandem) 93472b4363aSmrg basic_machine=nsr-tandem 93572b4363aSmrg ;; 93672b4363aSmrg op50n-* | op60c-*) 93772b4363aSmrg basic_machine=hppa1.1-oki 93872b4363aSmrg os=-proelf 93972b4363aSmrg ;; 94072b4363aSmrg openrisc | openrisc-*) 94172b4363aSmrg basic_machine=or32-unknown 94272b4363aSmrg ;; 94372b4363aSmrg os400) 94472b4363aSmrg basic_machine=powerpc-ibm 94572b4363aSmrg os=-os400 94672b4363aSmrg ;; 94772b4363aSmrg OSE68000 | ose68000) 94872b4363aSmrg basic_machine=m68000-ericsson 94972b4363aSmrg os=-ose 95072b4363aSmrg ;; 95172b4363aSmrg os68k) 95272b4363aSmrg basic_machine=m68k-none 95372b4363aSmrg os=-os68k 95472b4363aSmrg ;; 95572b4363aSmrg pa-hitachi) 95672b4363aSmrg basic_machine=hppa1.1-hitachi 95772b4363aSmrg os=-hiuxwe2 95872b4363aSmrg ;; 95972b4363aSmrg paragon) 96072b4363aSmrg basic_machine=i860-intel 96172b4363aSmrg os=-osf 96272b4363aSmrg ;; 963dd77ae96Smrg parisc) 964dd77ae96Smrg basic_machine=hppa-unknown 965dd77ae96Smrg os=-linux 966dd77ae96Smrg ;; 967dd77ae96Smrg parisc-*) 968dd77ae96Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 969dd77ae96Smrg os=-linux 970dd77ae96Smrg ;; 97172b4363aSmrg pbd) 97272b4363aSmrg basic_machine=sparc-tti 97372b4363aSmrg ;; 97472b4363aSmrg pbb) 97572b4363aSmrg basic_machine=m68k-tti 97672b4363aSmrg ;; 97772b4363aSmrg pc532 | pc532-*) 97872b4363aSmrg basic_machine=ns32k-pc532 97972b4363aSmrg ;; 98072b4363aSmrg pc98) 98172b4363aSmrg basic_machine=i386-pc 98272b4363aSmrg ;; 98372b4363aSmrg pc98-*) 98472b4363aSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 98572b4363aSmrg ;; 98672b4363aSmrg pentium | p5 | k5 | k6 | nexgen | viac3) 98772b4363aSmrg basic_machine=i586-pc 98872b4363aSmrg ;; 98972b4363aSmrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 99072b4363aSmrg basic_machine=i686-pc 99172b4363aSmrg ;; 99272b4363aSmrg pentiumii | pentium2 | pentiumiii | pentium3) 99372b4363aSmrg basic_machine=i686-pc 99472b4363aSmrg ;; 99572b4363aSmrg pentium4) 99672b4363aSmrg basic_machine=i786-pc 99772b4363aSmrg ;; 99872b4363aSmrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 99972b4363aSmrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 100072b4363aSmrg ;; 100172b4363aSmrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 100272b4363aSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 100372b4363aSmrg ;; 100472b4363aSmrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 100572b4363aSmrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 100672b4363aSmrg ;; 100772b4363aSmrg pentium4-*) 100872b4363aSmrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 100972b4363aSmrg ;; 101072b4363aSmrg pn) 101172b4363aSmrg basic_machine=pn-gould 101272b4363aSmrg ;; 101372b4363aSmrg power) basic_machine=power-ibm 101472b4363aSmrg ;; 101533dddc75Smrg ppc | ppcbe) basic_machine=powerpc-unknown 101672b4363aSmrg ;; 101733dddc75Smrg ppc-* | ppcbe-*) 101833dddc75Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 101972b4363aSmrg ;; 102072b4363aSmrg ppcle | powerpclittle | ppc-le | powerpc-little) 102172b4363aSmrg basic_machine=powerpcle-unknown 102272b4363aSmrg ;; 102372b4363aSmrg ppcle-* | powerpclittle-*) 102472b4363aSmrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 102572b4363aSmrg ;; 102672b4363aSmrg ppc64) basic_machine=powerpc64-unknown 102772b4363aSmrg ;; 102872b4363aSmrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 102972b4363aSmrg ;; 103072b4363aSmrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 103172b4363aSmrg basic_machine=powerpc64le-unknown 103272b4363aSmrg ;; 103372b4363aSmrg ppc64le-* | powerpc64little-*) 103472b4363aSmrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 103572b4363aSmrg ;; 103672b4363aSmrg ps2) 103772b4363aSmrg basic_machine=i386-ibm 103872b4363aSmrg ;; 103972b4363aSmrg pw32) 104072b4363aSmrg basic_machine=i586-unknown 104172b4363aSmrg os=-pw32 104272b4363aSmrg ;; 104333dddc75Smrg rdos | rdos64) 104433dddc75Smrg basic_machine=x86_64-pc 104533dddc75Smrg os=-rdos 104633dddc75Smrg ;; 104733dddc75Smrg rdos32) 104872b4363aSmrg basic_machine=i386-pc 104972b4363aSmrg os=-rdos 105072b4363aSmrg ;; 105172b4363aSmrg rom68k) 105272b4363aSmrg basic_machine=m68k-rom68k 105372b4363aSmrg os=-coff 105472b4363aSmrg ;; 105572b4363aSmrg rm[46]00) 105672b4363aSmrg basic_machine=mips-siemens 105772b4363aSmrg ;; 105872b4363aSmrg rtpc | rtpc-*) 105972b4363aSmrg basic_machine=romp-ibm 106072b4363aSmrg ;; 106172b4363aSmrg s390 | s390-*) 106272b4363aSmrg basic_machine=s390-ibm 106372b4363aSmrg ;; 106472b4363aSmrg s390x | s390x-*) 106572b4363aSmrg basic_machine=s390x-ibm 106672b4363aSmrg ;; 106772b4363aSmrg sa29200) 106872b4363aSmrg basic_machine=a29k-amd 106972b4363aSmrg os=-udi 107072b4363aSmrg ;; 107172b4363aSmrg sb1) 107272b4363aSmrg basic_machine=mipsisa64sb1-unknown 107372b4363aSmrg ;; 107472b4363aSmrg sb1el) 107572b4363aSmrg basic_machine=mipsisa64sb1el-unknown 107672b4363aSmrg ;; 107772b4363aSmrg sde) 107872b4363aSmrg basic_machine=mipsisa32-sde 107972b4363aSmrg os=-elf 108072b4363aSmrg ;; 108172b4363aSmrg sei) 108272b4363aSmrg basic_machine=mips-sei 108372b4363aSmrg os=-seiux 108472b4363aSmrg ;; 108572b4363aSmrg sequent) 108672b4363aSmrg basic_machine=i386-sequent 108772b4363aSmrg ;; 108872b4363aSmrg sh) 108972b4363aSmrg basic_machine=sh-hitachi 109072b4363aSmrg os=-hms 109172b4363aSmrg ;; 1092dd77ae96Smrg sh5el) 1093dd77ae96Smrg basic_machine=sh5le-unknown 1094dd77ae96Smrg ;; 109572b4363aSmrg sh64) 109672b4363aSmrg basic_machine=sh64-unknown 109772b4363aSmrg ;; 109872b4363aSmrg sparclite-wrs | simso-wrs) 109972b4363aSmrg basic_machine=sparclite-wrs 110072b4363aSmrg os=-vxworks 110172b4363aSmrg ;; 110272b4363aSmrg sps7) 110372b4363aSmrg basic_machine=m68k-bull 110472b4363aSmrg os=-sysv2 110572b4363aSmrg ;; 110672b4363aSmrg spur) 110772b4363aSmrg basic_machine=spur-unknown 110872b4363aSmrg ;; 110972b4363aSmrg st2000) 111072b4363aSmrg basic_machine=m68k-tandem 111172b4363aSmrg ;; 111272b4363aSmrg stratus) 111372b4363aSmrg basic_machine=i860-stratus 111472b4363aSmrg os=-sysv4 111572b4363aSmrg ;; 111633dddc75Smrg strongarm-* | thumb-*) 111733dddc75Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 111833dddc75Smrg ;; 111972b4363aSmrg sun2) 112072b4363aSmrg basic_machine=m68000-sun 112172b4363aSmrg ;; 112272b4363aSmrg sun2os3) 112372b4363aSmrg basic_machine=m68000-sun 112472b4363aSmrg os=-sunos3 112572b4363aSmrg ;; 112672b4363aSmrg sun2os4) 112772b4363aSmrg basic_machine=m68000-sun 112872b4363aSmrg os=-sunos4 112972b4363aSmrg ;; 113072b4363aSmrg sun3os3) 113172b4363aSmrg basic_machine=m68k-sun 113272b4363aSmrg os=-sunos3 113372b4363aSmrg ;; 113472b4363aSmrg sun3os4) 113572b4363aSmrg basic_machine=m68k-sun 113672b4363aSmrg os=-sunos4 113772b4363aSmrg ;; 113872b4363aSmrg sun4os3) 113972b4363aSmrg basic_machine=sparc-sun 114072b4363aSmrg os=-sunos3 114172b4363aSmrg ;; 114272b4363aSmrg sun4os4) 114372b4363aSmrg basic_machine=sparc-sun 114472b4363aSmrg os=-sunos4 114572b4363aSmrg ;; 114672b4363aSmrg sun4sol2) 114772b4363aSmrg basic_machine=sparc-sun 114872b4363aSmrg os=-solaris2 114972b4363aSmrg ;; 115072b4363aSmrg sun3 | sun3-*) 115172b4363aSmrg basic_machine=m68k-sun 115272b4363aSmrg ;; 115372b4363aSmrg sun4) 115472b4363aSmrg basic_machine=sparc-sun 115572b4363aSmrg ;; 115672b4363aSmrg sun386 | sun386i | roadrunner) 115772b4363aSmrg basic_machine=i386-sun 115872b4363aSmrg ;; 115972b4363aSmrg sv1) 116072b4363aSmrg basic_machine=sv1-cray 116172b4363aSmrg os=-unicos 116272b4363aSmrg ;; 116372b4363aSmrg symmetry) 116472b4363aSmrg basic_machine=i386-sequent 116572b4363aSmrg os=-dynix 116672b4363aSmrg ;; 116772b4363aSmrg t3e) 116872b4363aSmrg basic_machine=alphaev5-cray 116972b4363aSmrg os=-unicos 117072b4363aSmrg ;; 117172b4363aSmrg t90) 117272b4363aSmrg basic_machine=t90-cray 117372b4363aSmrg os=-unicos 117472b4363aSmrg ;; 1175dd77ae96Smrg tile*) 117633dddc75Smrg basic_machine=$basic_machine-unknown 1177dd77ae96Smrg os=-linux-gnu 1178dd77ae96Smrg ;; 117972b4363aSmrg tx39) 118072b4363aSmrg basic_machine=mipstx39-unknown 118172b4363aSmrg ;; 118272b4363aSmrg tx39el) 118372b4363aSmrg basic_machine=mipstx39el-unknown 118472b4363aSmrg ;; 118572b4363aSmrg toad1) 118672b4363aSmrg basic_machine=pdp10-xkl 118772b4363aSmrg os=-tops20 118872b4363aSmrg ;; 118972b4363aSmrg tower | tower-32) 119072b4363aSmrg basic_machine=m68k-ncr 119172b4363aSmrg ;; 119272b4363aSmrg tpf) 119372b4363aSmrg basic_machine=s390x-ibm 119472b4363aSmrg os=-tpf 119572b4363aSmrg ;; 119672b4363aSmrg udi29k) 119772b4363aSmrg basic_machine=a29k-amd 119872b4363aSmrg os=-udi 119972b4363aSmrg ;; 120072b4363aSmrg ultra3) 120172b4363aSmrg basic_machine=a29k-nyu 120272b4363aSmrg os=-sym1 120372b4363aSmrg ;; 120472b4363aSmrg v810 | necv810) 120572b4363aSmrg basic_machine=v810-nec 120672b4363aSmrg os=-none 120772b4363aSmrg ;; 120872b4363aSmrg vaxv) 120972b4363aSmrg basic_machine=vax-dec 121072b4363aSmrg os=-sysv 121172b4363aSmrg ;; 121272b4363aSmrg vms) 121372b4363aSmrg basic_machine=vax-dec 121472b4363aSmrg os=-vms 121572b4363aSmrg ;; 121672b4363aSmrg vpp*|vx|vx-*) 121772b4363aSmrg basic_machine=f301-fujitsu 121872b4363aSmrg ;; 121972b4363aSmrg vxworks960) 122072b4363aSmrg basic_machine=i960-wrs 122172b4363aSmrg os=-vxworks 122272b4363aSmrg ;; 122372b4363aSmrg vxworks68) 122472b4363aSmrg basic_machine=m68k-wrs 122572b4363aSmrg os=-vxworks 122672b4363aSmrg ;; 122772b4363aSmrg vxworks29k) 122872b4363aSmrg basic_machine=a29k-wrs 122972b4363aSmrg os=-vxworks 123072b4363aSmrg ;; 123172b4363aSmrg w65*) 123272b4363aSmrg basic_machine=w65-wdc 123372b4363aSmrg os=-none 123472b4363aSmrg ;; 123572b4363aSmrg w89k-*) 123672b4363aSmrg basic_machine=hppa1.1-winbond 123772b4363aSmrg os=-proelf 123872b4363aSmrg ;; 123972b4363aSmrg xbox) 124072b4363aSmrg basic_machine=i686-pc 124172b4363aSmrg os=-mingw32 124272b4363aSmrg ;; 124372b4363aSmrg xps | xps100) 124472b4363aSmrg basic_machine=xps100-honeywell 124572b4363aSmrg ;; 124633dddc75Smrg xscale-* | xscalee[bl]-*) 124733dddc75Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 124833dddc75Smrg ;; 124972b4363aSmrg ymp) 125072b4363aSmrg basic_machine=ymp-cray 125172b4363aSmrg os=-unicos 125272b4363aSmrg ;; 125372b4363aSmrg z8k-*-coff) 125472b4363aSmrg basic_machine=z8k-unknown 125572b4363aSmrg os=-sim 125672b4363aSmrg ;; 1257dd77ae96Smrg z80-*-coff) 1258dd77ae96Smrg basic_machine=z80-unknown 1259dd77ae96Smrg os=-sim 1260dd77ae96Smrg ;; 126172b4363aSmrg none) 126272b4363aSmrg basic_machine=none-none 126372b4363aSmrg os=-none 126472b4363aSmrg ;; 126572b4363aSmrg 126672b4363aSmrg# Here we handle the default manufacturer of certain CPU types. It is in 126772b4363aSmrg# some cases the only manufacturer, in others, it is the most popular. 126872b4363aSmrg w89k) 126972b4363aSmrg basic_machine=hppa1.1-winbond 127072b4363aSmrg ;; 127172b4363aSmrg op50n) 127272b4363aSmrg basic_machine=hppa1.1-oki 127372b4363aSmrg ;; 127472b4363aSmrg op60c) 127572b4363aSmrg basic_machine=hppa1.1-oki 127672b4363aSmrg ;; 127772b4363aSmrg romp) 127872b4363aSmrg basic_machine=romp-ibm 127972b4363aSmrg ;; 128072b4363aSmrg mmix) 128172b4363aSmrg basic_machine=mmix-knuth 128272b4363aSmrg ;; 128372b4363aSmrg rs6000) 128472b4363aSmrg basic_machine=rs6000-ibm 128572b4363aSmrg ;; 128672b4363aSmrg vax) 128772b4363aSmrg basic_machine=vax-dec 128872b4363aSmrg ;; 128972b4363aSmrg pdp10) 129072b4363aSmrg # there are many clones, so DEC is not a safe bet 129172b4363aSmrg basic_machine=pdp10-unknown 129272b4363aSmrg ;; 129372b4363aSmrg pdp11) 129472b4363aSmrg basic_machine=pdp11-dec 129572b4363aSmrg ;; 129672b4363aSmrg we32k) 129772b4363aSmrg basic_machine=we32k-att 129872b4363aSmrg ;; 1299dd77ae96Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 130072b4363aSmrg basic_machine=sh-unknown 130172b4363aSmrg ;; 130272b4363aSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 130372b4363aSmrg basic_machine=sparc-sun 130472b4363aSmrg ;; 130572b4363aSmrg cydra) 130672b4363aSmrg basic_machine=cydra-cydrome 130772b4363aSmrg ;; 130872b4363aSmrg orion) 130972b4363aSmrg basic_machine=orion-highlevel 131072b4363aSmrg ;; 131172b4363aSmrg orion105) 131272b4363aSmrg basic_machine=clipper-highlevel 131372b4363aSmrg ;; 131472b4363aSmrg mac | mpw | mac-mpw) 131572b4363aSmrg basic_machine=m68k-apple 131672b4363aSmrg ;; 131772b4363aSmrg pmac | pmac-mpw) 131872b4363aSmrg basic_machine=powerpc-apple 131972b4363aSmrg ;; 132072b4363aSmrg *-unknown) 132172b4363aSmrg # Make sure to match an already-canonicalized machine name. 132272b4363aSmrg ;; 132372b4363aSmrg *) 132472b4363aSmrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 132572b4363aSmrg exit 1 132672b4363aSmrg ;; 132772b4363aSmrgesac 132872b4363aSmrg 132972b4363aSmrg# Here we canonicalize certain aliases for manufacturers. 133072b4363aSmrgcase $basic_machine in 133172b4363aSmrg *-digital*) 133272b4363aSmrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 133372b4363aSmrg ;; 133472b4363aSmrg *-commodore*) 133572b4363aSmrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 133672b4363aSmrg ;; 133772b4363aSmrg *) 133872b4363aSmrg ;; 133972b4363aSmrgesac 134072b4363aSmrg 134172b4363aSmrg# Decode manufacturer-specific aliases for certain operating systems. 134272b4363aSmrg 134372b4363aSmrgif [ x"$os" != x"" ] 134472b4363aSmrgthen 134572b4363aSmrgcase $os in 134633dddc75Smrg # First match some system type aliases 134733dddc75Smrg # that might get confused with valid system types. 134872b4363aSmrg # -solaris* is a basic system type, with this one exception. 134933dddc75Smrg -auroraux) 135033dddc75Smrg os=-auroraux 135108e312fdSmrg ;; 135272b4363aSmrg -solaris1 | -solaris1.*) 135372b4363aSmrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 135472b4363aSmrg ;; 135572b4363aSmrg -solaris) 135672b4363aSmrg os=-solaris2 135772b4363aSmrg ;; 135872b4363aSmrg -svr4*) 135972b4363aSmrg os=-sysv4 136072b4363aSmrg ;; 136172b4363aSmrg -unixware*) 136272b4363aSmrg os=-sysv4.2uw 136372b4363aSmrg ;; 136472b4363aSmrg -gnu/linux*) 136572b4363aSmrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 136672b4363aSmrg ;; 136772b4363aSmrg # First accept the basic system types. 136872b4363aSmrg # The portable systems comes first. 136972b4363aSmrg # Each alternative MUST END IN A *, to match a version number. 137072b4363aSmrg # -sysv* is not here because it comes later, after sysvr4. 137172b4363aSmrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 137208e312fdSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 137308e312fdSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 137433dddc75Smrg | -sym* | -kopensolaris* | -plan9* \ 137572b4363aSmrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1376dd77ae96Smrg | -aos* | -aros* \ 137772b4363aSmrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 137872b4363aSmrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 137972b4363aSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 138033dddc75Smrg | -bitrig* | -openbsd* | -solidbsd* \ 138172b4363aSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 138272b4363aSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 138372b4363aSmrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 138472b4363aSmrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1385dd77ae96Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 138633dddc75Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 138733dddc75Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 138833dddc75Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 138933dddc75Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 139072b4363aSmrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 139172b4363aSmrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 139272b4363aSmrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 139372b4363aSmrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 139472b4363aSmrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 139572b4363aSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 139633dddc75Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) 139772b4363aSmrg # Remember, each alternative MUST END IN *, to match a version number. 139872b4363aSmrg ;; 139972b4363aSmrg -qnx*) 140072b4363aSmrg case $basic_machine in 140172b4363aSmrg x86-* | i*86-*) 140272b4363aSmrg ;; 140372b4363aSmrg *) 140472b4363aSmrg os=-nto$os 140572b4363aSmrg ;; 140672b4363aSmrg esac 140772b4363aSmrg ;; 140872b4363aSmrg -nto-qnx*) 140972b4363aSmrg ;; 141072b4363aSmrg -nto*) 141172b4363aSmrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 141272b4363aSmrg ;; 141372b4363aSmrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 141472b4363aSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 141572b4363aSmrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 141672b4363aSmrg ;; 141772b4363aSmrg -mac*) 141872b4363aSmrg os=`echo $os | sed -e 's|mac|macos|'` 141972b4363aSmrg ;; 142072b4363aSmrg -linux-dietlibc) 142172b4363aSmrg os=-linux-dietlibc 142272b4363aSmrg ;; 142372b4363aSmrg -linux*) 142472b4363aSmrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 142572b4363aSmrg ;; 142672b4363aSmrg -sunos5*) 142772b4363aSmrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 142872b4363aSmrg ;; 142972b4363aSmrg -sunos6*) 143072b4363aSmrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 143172b4363aSmrg ;; 143272b4363aSmrg -opened*) 143372b4363aSmrg os=-openedition 143472b4363aSmrg ;; 143533dddc75Smrg -os400*) 143672b4363aSmrg os=-os400 143772b4363aSmrg ;; 143872b4363aSmrg -wince*) 143972b4363aSmrg os=-wince 144072b4363aSmrg ;; 144172b4363aSmrg -osfrose*) 144272b4363aSmrg os=-osfrose 144372b4363aSmrg ;; 144472b4363aSmrg -osf*) 144572b4363aSmrg os=-osf 144672b4363aSmrg ;; 144772b4363aSmrg -utek*) 144872b4363aSmrg os=-bsd 144972b4363aSmrg ;; 145072b4363aSmrg -dynix*) 145172b4363aSmrg os=-bsd 145272b4363aSmrg ;; 145372b4363aSmrg -acis*) 145472b4363aSmrg os=-aos 145572b4363aSmrg ;; 145672b4363aSmrg -atheos*) 145772b4363aSmrg os=-atheos 145872b4363aSmrg ;; 145972b4363aSmrg -syllable*) 146072b4363aSmrg os=-syllable 146172b4363aSmrg ;; 146272b4363aSmrg -386bsd) 146372b4363aSmrg os=-bsd 146472b4363aSmrg ;; 146572b4363aSmrg -ctix* | -uts*) 146672b4363aSmrg os=-sysv 146772b4363aSmrg ;; 146872b4363aSmrg -nova*) 146972b4363aSmrg os=-rtmk-nova 147072b4363aSmrg ;; 147172b4363aSmrg -ns2 ) 147272b4363aSmrg os=-nextstep2 147372b4363aSmrg ;; 147472b4363aSmrg -nsk*) 147572b4363aSmrg os=-nsk 147672b4363aSmrg ;; 147772b4363aSmrg # Preserve the version number of sinix5. 147872b4363aSmrg -sinix5.*) 147972b4363aSmrg os=`echo $os | sed -e 's|sinix|sysv|'` 148072b4363aSmrg ;; 148172b4363aSmrg -sinix*) 148272b4363aSmrg os=-sysv4 148372b4363aSmrg ;; 148433dddc75Smrg -tpf*) 148572b4363aSmrg os=-tpf 148672b4363aSmrg ;; 148772b4363aSmrg -triton*) 148872b4363aSmrg os=-sysv3 148972b4363aSmrg ;; 149072b4363aSmrg -oss*) 149172b4363aSmrg os=-sysv3 149272b4363aSmrg ;; 149372b4363aSmrg -svr4) 149472b4363aSmrg os=-sysv4 149572b4363aSmrg ;; 149672b4363aSmrg -svr3) 149772b4363aSmrg os=-sysv3 149872b4363aSmrg ;; 149972b4363aSmrg -sysvr4) 150072b4363aSmrg os=-sysv4 150172b4363aSmrg ;; 150272b4363aSmrg # This must come after -sysvr4. 150372b4363aSmrg -sysv*) 150472b4363aSmrg ;; 150572b4363aSmrg -ose*) 150672b4363aSmrg os=-ose 150772b4363aSmrg ;; 150872b4363aSmrg -es1800*) 150972b4363aSmrg os=-ose 151072b4363aSmrg ;; 151172b4363aSmrg -xenix) 151272b4363aSmrg os=-xenix 151372b4363aSmrg ;; 151472b4363aSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 151572b4363aSmrg os=-mint 151672b4363aSmrg ;; 151772b4363aSmrg -aros*) 151872b4363aSmrg os=-aros 151972b4363aSmrg ;; 152072b4363aSmrg -zvmoe) 152172b4363aSmrg os=-zvmoe 152272b4363aSmrg ;; 1523dd77ae96Smrg -dicos*) 1524dd77ae96Smrg os=-dicos 1525dd77ae96Smrg ;; 152633dddc75Smrg -nacl*) 152733dddc75Smrg ;; 152872b4363aSmrg -none) 152972b4363aSmrg ;; 153072b4363aSmrg *) 153172b4363aSmrg # Get rid of the `-' at the beginning of $os. 153272b4363aSmrg os=`echo $os | sed 's/[^-]*-//'` 153372b4363aSmrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 153472b4363aSmrg exit 1 153572b4363aSmrg ;; 153672b4363aSmrgesac 153772b4363aSmrgelse 153872b4363aSmrg 153972b4363aSmrg# Here we handle the default operating systems that come with various machines. 154072b4363aSmrg# The value should be what the vendor currently ships out the door with their 154172b4363aSmrg# machine or put another way, the most popular os provided with the machine. 154272b4363aSmrg 154372b4363aSmrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 154472b4363aSmrg# "-sun"), then you have to tell the case statement up towards the top 154572b4363aSmrg# that MANUFACTURER isn't an operating system. Otherwise, code above 154672b4363aSmrg# will signal an error saying that MANUFACTURER isn't an operating 154772b4363aSmrg# system, and we'll never get to this point. 154872b4363aSmrg 154972b4363aSmrgcase $basic_machine in 155033dddc75Smrg score-*) 155172b4363aSmrg os=-elf 155272b4363aSmrg ;; 155333dddc75Smrg spu-*) 155472b4363aSmrg os=-elf 155572b4363aSmrg ;; 155672b4363aSmrg *-acorn) 155772b4363aSmrg os=-riscix1.2 155872b4363aSmrg ;; 155972b4363aSmrg arm*-rebel) 156072b4363aSmrg os=-linux 156172b4363aSmrg ;; 156272b4363aSmrg arm*-semi) 156372b4363aSmrg os=-aout 156472b4363aSmrg ;; 156533dddc75Smrg c4x-* | tic4x-*) 156633dddc75Smrg os=-coff 156733dddc75Smrg ;; 156833dddc75Smrg c8051-*) 156933dddc75Smrg os=-elf 157033dddc75Smrg ;; 157133dddc75Smrg hexagon-*) 157233dddc75Smrg os=-elf 157372b4363aSmrg ;; 157408e312fdSmrg tic54x-*) 157508e312fdSmrg os=-coff 157608e312fdSmrg ;; 157708e312fdSmrg tic55x-*) 157808e312fdSmrg os=-coff 157908e312fdSmrg ;; 158008e312fdSmrg tic6x-*) 158108e312fdSmrg os=-coff 158208e312fdSmrg ;; 158372b4363aSmrg # This must come before the *-dec entry. 158472b4363aSmrg pdp10-*) 158572b4363aSmrg os=-tops20 158672b4363aSmrg ;; 158772b4363aSmrg pdp11-*) 158872b4363aSmrg os=-none 158972b4363aSmrg ;; 159072b4363aSmrg *-dec | vax-*) 159172b4363aSmrg os=-ultrix4.2 159272b4363aSmrg ;; 159372b4363aSmrg m68*-apollo) 159472b4363aSmrg os=-domain 159572b4363aSmrg ;; 159672b4363aSmrg i386-sun) 159772b4363aSmrg os=-sunos4.0.2 159872b4363aSmrg ;; 159972b4363aSmrg m68000-sun) 160072b4363aSmrg os=-sunos3 160172b4363aSmrg ;; 160272b4363aSmrg m68*-cisco) 160372b4363aSmrg os=-aout 160472b4363aSmrg ;; 160533dddc75Smrg mep-*) 1606dd77ae96Smrg os=-elf 1607dd77ae96Smrg ;; 160872b4363aSmrg mips*-cisco) 160972b4363aSmrg os=-elf 161072b4363aSmrg ;; 161172b4363aSmrg mips*-*) 161272b4363aSmrg os=-elf 161372b4363aSmrg ;; 161472b4363aSmrg or32-*) 161572b4363aSmrg os=-coff 161672b4363aSmrg ;; 161772b4363aSmrg *-tti) # must be before sparc entry or we get the wrong os. 161872b4363aSmrg os=-sysv3 161972b4363aSmrg ;; 162072b4363aSmrg sparc-* | *-sun) 162172b4363aSmrg os=-sunos4.1.1 162272b4363aSmrg ;; 162372b4363aSmrg *-be) 162472b4363aSmrg os=-beos 162572b4363aSmrg ;; 162672b4363aSmrg *-haiku) 162772b4363aSmrg os=-haiku 162872b4363aSmrg ;; 162972b4363aSmrg *-ibm) 163072b4363aSmrg os=-aix 163172b4363aSmrg ;; 163233dddc75Smrg *-knuth) 163372b4363aSmrg os=-mmixware 163472b4363aSmrg ;; 163572b4363aSmrg *-wec) 163672b4363aSmrg os=-proelf 163772b4363aSmrg ;; 163872b4363aSmrg *-winbond) 163972b4363aSmrg os=-proelf 164072b4363aSmrg ;; 164172b4363aSmrg *-oki) 164272b4363aSmrg os=-proelf 164372b4363aSmrg ;; 164472b4363aSmrg *-hp) 164572b4363aSmrg os=-hpux 164672b4363aSmrg ;; 164772b4363aSmrg *-hitachi) 164872b4363aSmrg os=-hiux 164972b4363aSmrg ;; 165072b4363aSmrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 165172b4363aSmrg os=-sysv 165272b4363aSmrg ;; 165372b4363aSmrg *-cbm) 165472b4363aSmrg os=-amigaos 165572b4363aSmrg ;; 165672b4363aSmrg *-dg) 165772b4363aSmrg os=-dgux 165872b4363aSmrg ;; 165972b4363aSmrg *-dolphin) 166072b4363aSmrg os=-sysv3 166172b4363aSmrg ;; 166272b4363aSmrg m68k-ccur) 166372b4363aSmrg os=-rtu 166472b4363aSmrg ;; 166572b4363aSmrg m88k-omron*) 166672b4363aSmrg os=-luna 166772b4363aSmrg ;; 166872b4363aSmrg *-next ) 166972b4363aSmrg os=-nextstep 167072b4363aSmrg ;; 167172b4363aSmrg *-sequent) 167272b4363aSmrg os=-ptx 167372b4363aSmrg ;; 167472b4363aSmrg *-crds) 167572b4363aSmrg os=-unos 167672b4363aSmrg ;; 167772b4363aSmrg *-ns) 167872b4363aSmrg os=-genix 167972b4363aSmrg ;; 168072b4363aSmrg i370-*) 168172b4363aSmrg os=-mvs 168272b4363aSmrg ;; 168372b4363aSmrg *-next) 168472b4363aSmrg os=-nextstep3 168572b4363aSmrg ;; 168672b4363aSmrg *-gould) 168772b4363aSmrg os=-sysv 168872b4363aSmrg ;; 168972b4363aSmrg *-highlevel) 169072b4363aSmrg os=-bsd 169172b4363aSmrg ;; 169272b4363aSmrg *-encore) 169372b4363aSmrg os=-bsd 169472b4363aSmrg ;; 169572b4363aSmrg *-sgi) 169672b4363aSmrg os=-irix 169772b4363aSmrg ;; 169872b4363aSmrg *-siemens) 169972b4363aSmrg os=-sysv4 170072b4363aSmrg ;; 170172b4363aSmrg *-masscomp) 170272b4363aSmrg os=-rtu 170372b4363aSmrg ;; 170472b4363aSmrg f30[01]-fujitsu | f700-fujitsu) 170572b4363aSmrg os=-uxpv 170672b4363aSmrg ;; 170772b4363aSmrg *-rom68k) 170872b4363aSmrg os=-coff 170972b4363aSmrg ;; 171072b4363aSmrg *-*bug) 171172b4363aSmrg os=-coff 171272b4363aSmrg ;; 171372b4363aSmrg *-apple) 171472b4363aSmrg os=-macos 171572b4363aSmrg ;; 171672b4363aSmrg *-atari*) 171772b4363aSmrg os=-mint 171872b4363aSmrg ;; 171972b4363aSmrg *) 172072b4363aSmrg os=-none 172172b4363aSmrg ;; 172272b4363aSmrgesac 172372b4363aSmrgfi 172472b4363aSmrg 172572b4363aSmrg# Here we handle the case where we know the os, and the CPU type, but not the 172672b4363aSmrg# manufacturer. We pick the logical manufacturer. 172772b4363aSmrgvendor=unknown 172872b4363aSmrgcase $basic_machine in 172972b4363aSmrg *-unknown) 173072b4363aSmrg case $os in 173172b4363aSmrg -riscix*) 173272b4363aSmrg vendor=acorn 173372b4363aSmrg ;; 173472b4363aSmrg -sunos*) 173572b4363aSmrg vendor=sun 173672b4363aSmrg ;; 173708e312fdSmrg -cnk*|-aix*) 173872b4363aSmrg vendor=ibm 173972b4363aSmrg ;; 174072b4363aSmrg -beos*) 174172b4363aSmrg vendor=be 174272b4363aSmrg ;; 174372b4363aSmrg -hpux*) 174472b4363aSmrg vendor=hp 174572b4363aSmrg ;; 174672b4363aSmrg -mpeix*) 174772b4363aSmrg vendor=hp 174872b4363aSmrg ;; 174972b4363aSmrg -hiux*) 175072b4363aSmrg vendor=hitachi 175172b4363aSmrg ;; 175272b4363aSmrg -unos*) 175372b4363aSmrg vendor=crds 175472b4363aSmrg ;; 175572b4363aSmrg -dgux*) 175672b4363aSmrg vendor=dg 175772b4363aSmrg ;; 175872b4363aSmrg -luna*) 175972b4363aSmrg vendor=omron 176072b4363aSmrg ;; 176172b4363aSmrg -genix*) 176272b4363aSmrg vendor=ns 176372b4363aSmrg ;; 176472b4363aSmrg -mvs* | -opened*) 176572b4363aSmrg vendor=ibm 176672b4363aSmrg ;; 176772b4363aSmrg -os400*) 176872b4363aSmrg vendor=ibm 176972b4363aSmrg ;; 177072b4363aSmrg -ptx*) 177172b4363aSmrg vendor=sequent 177272b4363aSmrg ;; 177372b4363aSmrg -tpf*) 177472b4363aSmrg vendor=ibm 177572b4363aSmrg ;; 177672b4363aSmrg -vxsim* | -vxworks* | -windiss*) 177772b4363aSmrg vendor=wrs 177872b4363aSmrg ;; 177972b4363aSmrg -aux*) 178072b4363aSmrg vendor=apple 178172b4363aSmrg ;; 178272b4363aSmrg -hms*) 178372b4363aSmrg vendor=hitachi 178472b4363aSmrg ;; 178572b4363aSmrg -mpw* | -macos*) 178672b4363aSmrg vendor=apple 178772b4363aSmrg ;; 178872b4363aSmrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 178972b4363aSmrg vendor=atari 179072b4363aSmrg ;; 179172b4363aSmrg -vos*) 179272b4363aSmrg vendor=stratus 179372b4363aSmrg ;; 179472b4363aSmrg esac 179572b4363aSmrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 179672b4363aSmrg ;; 179772b4363aSmrgesac 179872b4363aSmrg 179972b4363aSmrgecho $basic_machine$os 180072b4363aSmrgexit 180172b4363aSmrg 180272b4363aSmrg# Local variables: 180372b4363aSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 180472b4363aSmrg# time-stamp-start: "timestamp='" 180572b4363aSmrg# time-stamp-format: "%:y-%02m-%02d" 180672b4363aSmrg# time-stamp-end: "'" 180772b4363aSmrg# End: 1808