config.sub revision 93d9adc1
172b676d7Smrg#! /bin/sh 272b676d7Smrg# Configuration validation subroutine script. 393d9adc1Smrg# Copyright 1992-2016 Free Software Foundation, Inc. 472b676d7Smrg 593d9adc1Smrgtimestamp='2016-03-30' 672b676d7Smrg 793d9adc1Smrg# This file is free software; you can redistribute it and/or modify it 893d9adc1Smrg# under the terms of the GNU General Public License as published by 993d9adc1Smrg# the Free Software Foundation; either version 3 of the License, or 1072b676d7Smrg# (at your option) any later version. 1172b676d7Smrg# 1293d9adc1Smrg# This program is distributed in the hope that it will be useful, but 1393d9adc1Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1493d9adc1Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1593d9adc1Smrg# General Public License for more details. 1672b676d7Smrg# 1772b676d7Smrg# You should have received a copy of the GNU General Public License 1893d9adc1Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 1972b676d7Smrg# 2072b676d7Smrg# As a special exception to the GNU General Public License, if you 2172b676d7Smrg# distribute this file as part of a program that contains a 2272b676d7Smrg# configuration script generated by Autoconf, you may include it under 2393d9adc1Smrg# the same distribution terms that you use for the rest of that 2493d9adc1Smrg# program. This Exception is an additional permission under section 7 2593d9adc1Smrg# of the GNU General Public License, version 3 ("GPLv3"). 2672b676d7Smrg 2772b676d7Smrg 2893d9adc1Smrg# Please send patches to <config-patches@gnu.org>. 2972b676d7Smrg# 3072b676d7Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3172b676d7Smrg# Supply the specified configuration type as an argument. 3272b676d7Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 3372b676d7Smrg# Otherwise, we print the canonical config type on stdout and succeed. 3472b676d7Smrg 3574c14cd6Smrg# You can get the latest version of this script from: 3693d9adc1Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 3774c14cd6Smrg 3872b676d7Smrg# This file is supposed to be the same for all GNU packages 3972b676d7Smrg# and recognize all the CPU types, system types and aliases 4072b676d7Smrg# that are meaningful with *any* GNU software. 4172b676d7Smrg# Each package is responsible for reporting which valid configurations 4272b676d7Smrg# it does not support. The user should be able to distinguish 4372b676d7Smrg# a failure to support a valid configuration from a meaningless 4472b676d7Smrg# configuration. 4572b676d7Smrg 4672b676d7Smrg# The goal of this file is to map all the various variations of a given 4772b676d7Smrg# machine specification into a single specification in the form: 4872b676d7Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4972b676d7Smrg# or in some cases, the newer four-part form: 5072b676d7Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5172b676d7Smrg# It is wrong to echo any other type of specification. 5272b676d7Smrg 5372b676d7Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5472b676d7Smrg 5572b676d7Smrgusage="\ 5693d9adc1SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS 5772b676d7Smrg 5872b676d7SmrgCanonicalize a configuration name. 5972b676d7Smrg 6072b676d7SmrgOperation modes: 6172b676d7Smrg -h, --help print this help, then exit 6272b676d7Smrg -t, --time-stamp print date of last modification, then exit 6372b676d7Smrg -v, --version print version number, then exit 6472b676d7Smrg 6572b676d7SmrgReport bugs and patches to <config-patches@gnu.org>." 6672b676d7Smrg 6772b676d7Smrgversion="\ 6872b676d7SmrgGNU config.sub ($timestamp) 6972b676d7Smrg 7093d9adc1SmrgCopyright 1992-2016 Free Software Foundation, Inc. 7172b676d7Smrg 7272b676d7SmrgThis is free software; see the source for copying conditions. There is NO 7372b676d7Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7472b676d7Smrg 7572b676d7Smrghelp=" 7672b676d7SmrgTry \`$me --help' for more information." 7772b676d7Smrg 7872b676d7Smrg# Parse command line 7972b676d7Smrgwhile test $# -gt 0 ; do 8072b676d7Smrg case $1 in 8172b676d7Smrg --time-stamp | --time* | -t ) 8272b676d7Smrg echo "$timestamp" ; exit ;; 8372b676d7Smrg --version | -v ) 8472b676d7Smrg echo "$version" ; exit ;; 8572b676d7Smrg --help | --h* | -h ) 8672b676d7Smrg echo "$usage"; exit ;; 8772b676d7Smrg -- ) # Stop option processing 8872b676d7Smrg shift; break ;; 8972b676d7Smrg - ) # Use stdin as input. 9072b676d7Smrg break ;; 9172b676d7Smrg -* ) 9272b676d7Smrg echo "$me: invalid option $1$help" 9372b676d7Smrg exit 1 ;; 9472b676d7Smrg 9572b676d7Smrg *local*) 9672b676d7Smrg # First pass through any local machine types. 9772b676d7Smrg echo $1 9872b676d7Smrg exit ;; 9972b676d7Smrg 10072b676d7Smrg * ) 10172b676d7Smrg break ;; 10272b676d7Smrg esac 10372b676d7Smrgdone 10472b676d7Smrg 10572b676d7Smrgcase $# in 10672b676d7Smrg 0) echo "$me: missing argument$help" >&2 10772b676d7Smrg exit 1;; 10872b676d7Smrg 1) ;; 10972b676d7Smrg *) echo "$me: too many arguments$help" >&2 11072b676d7Smrg exit 1;; 11172b676d7Smrgesac 11272b676d7Smrg 11372b676d7Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11472b676d7Smrg# Here we must recognize all the valid KERNEL-OS combinations. 11572b676d7Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11672b676d7Smrgcase $maybe_os in 11774c14cd6Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 11893d9adc1Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 11993d9adc1Smrg knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ 12074c14cd6Smrg kopensolaris*-gnu* | \ 12172b676d7Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12272b676d7Smrg os=-$maybe_os 12372b676d7Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12472b676d7Smrg ;; 12593d9adc1Smrg android-linux) 12693d9adc1Smrg os=-linux-android 12793d9adc1Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 12893d9adc1Smrg ;; 12972b676d7Smrg *) 13072b676d7Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13172b676d7Smrg if [ $basic_machine != $1 ] 13272b676d7Smrg then os=`echo $1 | sed 's/.*-/-/'` 13372b676d7Smrg else os=; fi 13472b676d7Smrg ;; 13572b676d7Smrgesac 13672b676d7Smrg 13772b676d7Smrg### Let's recognize common machines as not being operating systems so 13872b676d7Smrg### that things like config.sub decstation-3100 work. We also 13972b676d7Smrg### recognize some manufacturers as not being operating systems, so we 14072b676d7Smrg### can provide default operating systems below. 14172b676d7Smrgcase $os in 14272b676d7Smrg -sun*os*) 14372b676d7Smrg # Prevent following clause from handling this invalid input. 14472b676d7Smrg ;; 14572b676d7Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14672b676d7Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14772b676d7Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14872b676d7Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 14972b676d7Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15072b676d7Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15193d9adc1Smrg -apple | -axis | -knuth | -cray | -microblaze*) 15272b676d7Smrg os= 15372b676d7Smrg basic_machine=$1 15472b676d7Smrg ;; 15574c14cd6Smrg -bluegene*) 15674c14cd6Smrg os=-cnk 15774c14cd6Smrg ;; 15872b676d7Smrg -sim | -cisco | -oki | -wec | -winbond) 15972b676d7Smrg os= 16072b676d7Smrg basic_machine=$1 16172b676d7Smrg ;; 16272b676d7Smrg -scout) 16372b676d7Smrg ;; 16472b676d7Smrg -wrs) 16572b676d7Smrg os=-vxworks 16672b676d7Smrg basic_machine=$1 16772b676d7Smrg ;; 16872b676d7Smrg -chorusos*) 16972b676d7Smrg os=-chorusos 17072b676d7Smrg basic_machine=$1 17172b676d7Smrg ;; 17274c14cd6Smrg -chorusrdb) 17374c14cd6Smrg os=-chorusrdb 17472b676d7Smrg basic_machine=$1 17574c14cd6Smrg ;; 17672b676d7Smrg -hiux*) 17772b676d7Smrg os=-hiuxwe2 17872b676d7Smrg ;; 17972b676d7Smrg -sco6) 18072b676d7Smrg os=-sco5v6 18172b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18272b676d7Smrg ;; 18372b676d7Smrg -sco5) 18472b676d7Smrg os=-sco3.2v5 18572b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18672b676d7Smrg ;; 18772b676d7Smrg -sco4) 18872b676d7Smrg os=-sco3.2v4 18972b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19072b676d7Smrg ;; 19172b676d7Smrg -sco3.2.[4-9]*) 19272b676d7Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19372b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19472b676d7Smrg ;; 19572b676d7Smrg -sco3.2v[4-9]*) 19672b676d7Smrg # Don't forget version if it is 3.2v4 or newer. 19772b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19872b676d7Smrg ;; 19972b676d7Smrg -sco5v6*) 20072b676d7Smrg # Don't forget version if it is 3.2v4 or newer. 20172b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20272b676d7Smrg ;; 20372b676d7Smrg -sco*) 20472b676d7Smrg os=-sco3.2v2 20572b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20672b676d7Smrg ;; 20772b676d7Smrg -udk*) 20872b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20972b676d7Smrg ;; 21072b676d7Smrg -isc) 21172b676d7Smrg os=-isc2.2 21272b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21372b676d7Smrg ;; 21472b676d7Smrg -clix*) 21572b676d7Smrg basic_machine=clipper-intergraph 21672b676d7Smrg ;; 21772b676d7Smrg -isc*) 21872b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21972b676d7Smrg ;; 22093d9adc1Smrg -lynx*178) 22193d9adc1Smrg os=-lynxos178 22293d9adc1Smrg ;; 22393d9adc1Smrg -lynx*5) 22493d9adc1Smrg os=-lynxos5 22593d9adc1Smrg ;; 22672b676d7Smrg -lynx*) 22772b676d7Smrg os=-lynxos 22872b676d7Smrg ;; 22972b676d7Smrg -ptx*) 23072b676d7Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23172b676d7Smrg ;; 23272b676d7Smrg -windowsnt*) 23372b676d7Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23472b676d7Smrg ;; 23572b676d7Smrg -psos*) 23672b676d7Smrg os=-psos 23772b676d7Smrg ;; 23872b676d7Smrg -mint | -mint[0-9]*) 23972b676d7Smrg basic_machine=m68k-atari 24072b676d7Smrg os=-mint 24172b676d7Smrg ;; 24272b676d7Smrgesac 24372b676d7Smrg 24472b676d7Smrg# Decode aliases for certain CPU-COMPANY combinations. 24572b676d7Smrgcase $basic_machine in 24672b676d7Smrg # Recognize the basic CPU types without company name. 24772b676d7Smrg # Some are omitted here because they have special meanings below. 24872b676d7Smrg 1750a | 580 \ 24972b676d7Smrg | a29k \ 25093d9adc1Smrg | aarch64 | aarch64_be \ 25172b676d7Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25272b676d7Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25372b676d7Smrg | am33_2.0 \ 25493d9adc1Smrg | arc | arceb \ 25593d9adc1Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 25693d9adc1Smrg | avr | avr32 \ 25793d9adc1Smrg | ba \ 25893d9adc1Smrg | be32 | be64 \ 25972b676d7Smrg | bfin \ 26093d9adc1Smrg | c4x | c8051 | clipper \ 26121525869Smrg | d10v | d30v | dlx | dsp16xx | dvp \ 26293d9adc1Smrg | e2k | epiphany \ 26393d9adc1Smrg | fido | fr30 | frv | ft32 \ 26472b676d7Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 26593d9adc1Smrg | hexagon \ 26672b676d7Smrg | i370 | i860 | i960 | ia64 \ 26772b676d7Smrg | ip2k | iq2000 \ 26893d9adc1Smrg | k1om \ 26993d9adc1Smrg | le32 | le64 \ 27074c14cd6Smrg | lm32 \ 2711fd23544Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 27293d9adc1Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27372b676d7Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27472b676d7Smrg | mips16 \ 27572b676d7Smrg | mips64 | mips64el \ 27674c14cd6Smrg | mips64octeon | mips64octeonel \ 27772b676d7Smrg | mips64orion | mips64orionel \ 27874c14cd6Smrg | mips64r5900 | mips64r5900el \ 27974c14cd6Smrg | mips64vr | mips64vrel \ 28072b676d7Smrg | mips64vr4100 | mips64vr4100el \ 28172b676d7Smrg | mips64vr4300 | mips64vr4300el \ 28272b676d7Smrg | mips64vr5000 | mips64vr5000el \ 28372b676d7Smrg | mips64vr5900 | mips64vr5900el \ 28472b676d7Smrg | mipsisa32 | mipsisa32el \ 28572b676d7Smrg | mipsisa32r2 | mipsisa32r2el \ 28693d9adc1Smrg | mipsisa32r6 | mipsisa32r6el \ 28772b676d7Smrg | mipsisa64 | mipsisa64el \ 28872b676d7Smrg | mipsisa64r2 | mipsisa64r2el \ 28993d9adc1Smrg | mipsisa64r6 | mipsisa64r6el \ 29072b676d7Smrg | mipsisa64sb1 | mipsisa64sb1el \ 29172b676d7Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 29293d9adc1Smrg | mipsr5900 | mipsr5900el \ 29372b676d7Smrg | mipstx39 | mipstx39el \ 29472b676d7Smrg | mn10200 | mn10300 \ 29574c14cd6Smrg | moxie \ 29672b676d7Smrg | mt \ 29772b676d7Smrg | msp430 \ 29874c14cd6Smrg | nds32 | nds32le | nds32be \ 29993d9adc1Smrg | nios | nios2 | nios2eb | nios2el \ 30072b676d7Smrg | ns16k | ns32k \ 30193d9adc1Smrg | open8 | or1k | or1knd | or32 \ 30272b676d7Smrg | pdp10 | pdp11 | pj | pjl \ 30393d9adc1Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 30472b676d7Smrg | pyramid \ 30593d9adc1Smrg | riscv32 | riscv64 \ 30693d9adc1Smrg | rl78 | rx \ 3071fd23544Smrg | score \ 30893d9adc1Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30972b676d7Smrg | sh64 | sh64le \ 3101fd23544Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3111fd23544Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 31293d9adc1Smrg | spu \ 31393d9adc1Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31474c14cd6Smrg | ubicom32 \ 31593d9adc1Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31693d9adc1Smrg | visium \ 31772b676d7Smrg | we32k \ 31893d9adc1Smrg | x86 | xc16x | xstormy16 | xtensa \ 31974c14cd6Smrg | z8k | z80) 32072b676d7Smrg basic_machine=$basic_machine-unknown 32172b676d7Smrg ;; 32274c14cd6Smrg c54x) 32374c14cd6Smrg basic_machine=tic54x-unknown 32474c14cd6Smrg ;; 32574c14cd6Smrg c55x) 32674c14cd6Smrg basic_machine=tic55x-unknown 32774c14cd6Smrg ;; 32874c14cd6Smrg c6x) 32974c14cd6Smrg basic_machine=tic6x-unknown 33074c14cd6Smrg ;; 33193d9adc1Smrg leon|leon[3-9]) 33293d9adc1Smrg basic_machine=sparc-$basic_machine 33393d9adc1Smrg ;; 33493d9adc1Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 33572b676d7Smrg basic_machine=$basic_machine-unknown 33672b676d7Smrg os=-none 33772b676d7Smrg ;; 33872b676d7Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33972b676d7Smrg ;; 34072b676d7Smrg ms1) 34172b676d7Smrg basic_machine=mt-unknown 34272b676d7Smrg ;; 34372b676d7Smrg 34493d9adc1Smrg strongarm | thumb | xscale) 34593d9adc1Smrg basic_machine=arm-unknown 34693d9adc1Smrg ;; 34793d9adc1Smrg xgate) 34893d9adc1Smrg basic_machine=$basic_machine-unknown 34993d9adc1Smrg os=-none 35093d9adc1Smrg ;; 35193d9adc1Smrg xscaleeb) 35293d9adc1Smrg basic_machine=armeb-unknown 35393d9adc1Smrg ;; 35493d9adc1Smrg 35593d9adc1Smrg xscaleel) 35693d9adc1Smrg basic_machine=armel-unknown 35793d9adc1Smrg ;; 35893d9adc1Smrg 35972b676d7Smrg # We use `pc' rather than `unknown' 36072b676d7Smrg # because (1) that's what they normally are, and 36172b676d7Smrg # (2) the word "unknown" tends to confuse beginning users. 36272b676d7Smrg i*86 | x86_64) 36372b676d7Smrg basic_machine=$basic_machine-pc 36472b676d7Smrg ;; 36572b676d7Smrg # Object if more than one company name word. 36672b676d7Smrg *-*-*) 36772b676d7Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36872b676d7Smrg exit 1 36972b676d7Smrg ;; 37072b676d7Smrg # Recognize the basic CPU types with company name. 37172b676d7Smrg 580-* \ 37272b676d7Smrg | a29k-* \ 37393d9adc1Smrg | aarch64-* | aarch64_be-* \ 37472b676d7Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 37572b676d7Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 37693d9adc1Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37772b676d7Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3781fd23544Smrg | avr-* | avr32-* \ 37993d9adc1Smrg | ba-* \ 38093d9adc1Smrg | be32-* | be64-* \ 38172b676d7Smrg | bfin-* | bs2000-* \ 38274c14cd6Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 38393d9adc1Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 38472b676d7Smrg | d10v-* | d30v-* | dlx-* \ 38593d9adc1Smrg | e2k-* | elxsi-* \ 3861fd23544Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38772b676d7Smrg | h8300-* | h8500-* \ 38872b676d7Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 38993d9adc1Smrg | hexagon-* \ 39072b676d7Smrg | i*86-* | i860-* | i960-* | ia64-* \ 39172b676d7Smrg | ip2k-* | iq2000-* \ 39293d9adc1Smrg | k1om-* \ 39393d9adc1Smrg | le32-* | le64-* \ 39474c14cd6Smrg | lm32-* \ 3951fd23544Smrg | m32c-* | m32r-* | m32rle-* \ 39672b676d7Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 39793d9adc1Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 39893d9adc1Smrg | microblaze-* | microblazeel-* \ 39972b676d7Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 40072b676d7Smrg | mips16-* \ 40172b676d7Smrg | mips64-* | mips64el-* \ 40274c14cd6Smrg | mips64octeon-* | mips64octeonel-* \ 40372b676d7Smrg | mips64orion-* | mips64orionel-* \ 40474c14cd6Smrg | mips64r5900-* | mips64r5900el-* \ 40574c14cd6Smrg | mips64vr-* | mips64vrel-* \ 40672b676d7Smrg | mips64vr4100-* | mips64vr4100el-* \ 40772b676d7Smrg | mips64vr4300-* | mips64vr4300el-* \ 40872b676d7Smrg | mips64vr5000-* | mips64vr5000el-* \ 40972b676d7Smrg | mips64vr5900-* | mips64vr5900el-* \ 41072b676d7Smrg | mipsisa32-* | mipsisa32el-* \ 41172b676d7Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 41293d9adc1Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 41372b676d7Smrg | mipsisa64-* | mipsisa64el-* \ 41472b676d7Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 41593d9adc1Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 41672b676d7Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 41772b676d7Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 41893d9adc1Smrg | mipsr5900-* | mipsr5900el-* \ 41972b676d7Smrg | mipstx39-* | mipstx39el-* \ 42072b676d7Smrg | mmix-* \ 42172b676d7Smrg | mt-* \ 42272b676d7Smrg | msp430-* \ 42374c14cd6Smrg | nds32-* | nds32le-* | nds32be-* \ 42493d9adc1Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 42572b676d7Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 42693d9adc1Smrg | open8-* \ 42793d9adc1Smrg | or1k*-* \ 42872b676d7Smrg | orion-* \ 42972b676d7Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 43093d9adc1Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 43172b676d7Smrg | pyramid-* \ 43293d9adc1Smrg | riscv32-* | riscv64-* \ 43393d9adc1Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 43474c14cd6Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 43572b676d7Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4361fd23544Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 43772b676d7Smrg | sparclite-* \ 43893d9adc1Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ 43993d9adc1Smrg | tahoe-* \ 44072b676d7Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 44193d9adc1Smrg | tile*-* \ 44272b676d7Smrg | tron-* \ 44374c14cd6Smrg | ubicom32-* \ 44493d9adc1Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 44593d9adc1Smrg | vax-* \ 44693d9adc1Smrg | visium-* \ 44772b676d7Smrg | we32k-* \ 44893d9adc1Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4491fd23544Smrg | xstormy16-* | xtensa*-* \ 45072b676d7Smrg | ymp-* \ 45174c14cd6Smrg | z8k-* | z80-*) 45272b676d7Smrg ;; 4531fd23544Smrg # Recognize the basic CPU types without company name, with glob match. 4541fd23544Smrg xtensa*) 4551fd23544Smrg basic_machine=$basic_machine-unknown 45672b676d7Smrg ;; 45772b676d7Smrg # Recognize the various machine names and aliases which stand 45872b676d7Smrg # for a CPU type and a company and sometimes even an OS. 45972b676d7Smrg 386bsd) 46072b676d7Smrg basic_machine=i386-unknown 46172b676d7Smrg os=-bsd 46272b676d7Smrg ;; 46372b676d7Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 46472b676d7Smrg basic_machine=m68000-att 46572b676d7Smrg ;; 46672b676d7Smrg 3b*) 46772b676d7Smrg basic_machine=we32k-att 46872b676d7Smrg ;; 46972b676d7Smrg a29khif) 47072b676d7Smrg basic_machine=a29k-amd 47172b676d7Smrg os=-udi 47272b676d7Smrg ;; 47374c14cd6Smrg abacus) 47472b676d7Smrg basic_machine=abacus-unknown 47572b676d7Smrg ;; 47672b676d7Smrg adobe68k) 47772b676d7Smrg basic_machine=m68010-adobe 47872b676d7Smrg os=-scout 47972b676d7Smrg ;; 48072b676d7Smrg alliant | fx80) 48172b676d7Smrg basic_machine=fx80-alliant 48272b676d7Smrg ;; 48372b676d7Smrg altos | altos3068) 48472b676d7Smrg basic_machine=m68k-altos 48572b676d7Smrg ;; 48672b676d7Smrg am29k) 48772b676d7Smrg basic_machine=a29k-none 48872b676d7Smrg os=-bsd 48972b676d7Smrg ;; 49072b676d7Smrg amd64) 49172b676d7Smrg basic_machine=x86_64-pc 49272b676d7Smrg ;; 49372b676d7Smrg amd64-*) 49472b676d7Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 49572b676d7Smrg ;; 49672b676d7Smrg amdahl) 49772b676d7Smrg basic_machine=580-amdahl 49872b676d7Smrg os=-sysv 49972b676d7Smrg ;; 50072b676d7Smrg amiga | amiga-*) 50172b676d7Smrg basic_machine=m68k-unknown 50272b676d7Smrg ;; 50372b676d7Smrg amigaos | amigados) 50472b676d7Smrg basic_machine=m68k-unknown 50572b676d7Smrg os=-amigaos 50672b676d7Smrg ;; 50772b676d7Smrg amigaunix | amix) 50872b676d7Smrg basic_machine=m68k-unknown 50972b676d7Smrg os=-sysv4 51072b676d7Smrg ;; 51172b676d7Smrg apollo68) 51272b676d7Smrg basic_machine=m68k-apollo 51372b676d7Smrg os=-sysv 51472b676d7Smrg ;; 51572b676d7Smrg apollo68bsd) 51672b676d7Smrg basic_machine=m68k-apollo 51772b676d7Smrg os=-bsd 51872b676d7Smrg ;; 51974c14cd6Smrg aros) 52074c14cd6Smrg basic_machine=i386-pc 52174c14cd6Smrg os=-aros 52274c14cd6Smrg ;; 52393d9adc1Smrg asmjs) 52493d9adc1Smrg basic_machine=asmjs-unknown 52593d9adc1Smrg ;; 52672b676d7Smrg aux) 52772b676d7Smrg basic_machine=m68k-apple 52872b676d7Smrg os=-aux 52972b676d7Smrg ;; 53072b676d7Smrg balance) 53172b676d7Smrg basic_machine=ns32k-sequent 53272b676d7Smrg os=-dynix 53372b676d7Smrg ;; 5341fd23544Smrg blackfin) 5351fd23544Smrg basic_machine=bfin-unknown 5361fd23544Smrg os=-linux 5371fd23544Smrg ;; 5381fd23544Smrg blackfin-*) 5391fd23544Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5401fd23544Smrg os=-linux 5411fd23544Smrg ;; 54274c14cd6Smrg bluegene*) 54374c14cd6Smrg basic_machine=powerpc-ibm 54474c14cd6Smrg os=-cnk 54574c14cd6Smrg ;; 54674c14cd6Smrg c54x-*) 54774c14cd6Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 54874c14cd6Smrg ;; 54974c14cd6Smrg c55x-*) 55074c14cd6Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 55174c14cd6Smrg ;; 55274c14cd6Smrg c6x-*) 55374c14cd6Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 55474c14cd6Smrg ;; 55572b676d7Smrg c90) 55672b676d7Smrg basic_machine=c90-cray 55772b676d7Smrg os=-unicos 55872b676d7Smrg ;; 55974c14cd6Smrg cegcc) 56074c14cd6Smrg basic_machine=arm-unknown 56174c14cd6Smrg os=-cegcc 56274c14cd6Smrg ;; 56372b676d7Smrg convex-c1) 56472b676d7Smrg basic_machine=c1-convex 56572b676d7Smrg os=-bsd 56672b676d7Smrg ;; 56772b676d7Smrg convex-c2) 56872b676d7Smrg basic_machine=c2-convex 56972b676d7Smrg os=-bsd 57072b676d7Smrg ;; 57172b676d7Smrg convex-c32) 57272b676d7Smrg basic_machine=c32-convex 57372b676d7Smrg os=-bsd 57472b676d7Smrg ;; 57572b676d7Smrg convex-c34) 57672b676d7Smrg basic_machine=c34-convex 57772b676d7Smrg os=-bsd 57872b676d7Smrg ;; 57972b676d7Smrg convex-c38) 58072b676d7Smrg basic_machine=c38-convex 58172b676d7Smrg os=-bsd 58272b676d7Smrg ;; 58372b676d7Smrg cray | j90) 58472b676d7Smrg basic_machine=j90-cray 58572b676d7Smrg os=-unicos 58672b676d7Smrg ;; 58772b676d7Smrg craynv) 58872b676d7Smrg basic_machine=craynv-cray 58972b676d7Smrg os=-unicosmp 59072b676d7Smrg ;; 59174c14cd6Smrg cr16 | cr16-*) 5921fd23544Smrg basic_machine=cr16-unknown 59372b676d7Smrg os=-elf 59472b676d7Smrg ;; 59572b676d7Smrg crds | unos) 59672b676d7Smrg basic_machine=m68k-crds 59772b676d7Smrg ;; 59872b676d7Smrg crisv32 | crisv32-* | etraxfs*) 59972b676d7Smrg basic_machine=crisv32-axis 60072b676d7Smrg ;; 60172b676d7Smrg cris | cris-* | etrax*) 60272b676d7Smrg basic_machine=cris-axis 60372b676d7Smrg ;; 60472b676d7Smrg crx) 60572b676d7Smrg basic_machine=crx-unknown 60672b676d7Smrg os=-elf 60772b676d7Smrg ;; 60872b676d7Smrg da30 | da30-*) 60972b676d7Smrg basic_machine=m68k-da30 61072b676d7Smrg ;; 61172b676d7Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 61272b676d7Smrg basic_machine=mips-dec 61372b676d7Smrg ;; 61472b676d7Smrg decsystem10* | dec10*) 61572b676d7Smrg basic_machine=pdp10-dec 61672b676d7Smrg os=-tops10 61772b676d7Smrg ;; 61872b676d7Smrg decsystem20* | dec20*) 61972b676d7Smrg basic_machine=pdp10-dec 62072b676d7Smrg os=-tops20 62172b676d7Smrg ;; 62272b676d7Smrg delta | 3300 | motorola-3300 | motorola-delta \ 62372b676d7Smrg | 3300-motorola | delta-motorola) 62472b676d7Smrg basic_machine=m68k-motorola 62572b676d7Smrg ;; 62672b676d7Smrg delta88) 62772b676d7Smrg basic_machine=m88k-motorola 62872b676d7Smrg os=-sysv3 62972b676d7Smrg ;; 63074c14cd6Smrg dicos) 63174c14cd6Smrg basic_machine=i686-pc 63274c14cd6Smrg os=-dicos 63374c14cd6Smrg ;; 63472b676d7Smrg djgpp) 63572b676d7Smrg basic_machine=i586-pc 63672b676d7Smrg os=-msdosdjgpp 63772b676d7Smrg ;; 63872b676d7Smrg dpx20 | dpx20-*) 63972b676d7Smrg basic_machine=rs6000-bull 64072b676d7Smrg os=-bosx 64172b676d7Smrg ;; 64272b676d7Smrg dpx2* | dpx2*-bull) 64372b676d7Smrg basic_machine=m68k-bull 64472b676d7Smrg os=-sysv3 64572b676d7Smrg ;; 64672b676d7Smrg ebmon29k) 64772b676d7Smrg basic_machine=a29k-amd 64872b676d7Smrg os=-ebmon 64972b676d7Smrg ;; 65072b676d7Smrg elxsi) 65172b676d7Smrg basic_machine=elxsi-elxsi 65272b676d7Smrg os=-bsd 65372b676d7Smrg ;; 65472b676d7Smrg encore | umax | mmax) 65572b676d7Smrg basic_machine=ns32k-encore 65672b676d7Smrg ;; 65772b676d7Smrg es1800 | OSE68k | ose68k | ose | OSE) 65872b676d7Smrg basic_machine=m68k-ericsson 65972b676d7Smrg os=-ose 66072b676d7Smrg ;; 66172b676d7Smrg fx2800) 66272b676d7Smrg basic_machine=i860-alliant 66372b676d7Smrg ;; 66472b676d7Smrg genix) 66572b676d7Smrg basic_machine=ns32k-ns 66672b676d7Smrg ;; 66772b676d7Smrg gmicro) 66872b676d7Smrg basic_machine=tron-gmicro 66972b676d7Smrg os=-sysv 67072b676d7Smrg ;; 67172b676d7Smrg go32) 67272b676d7Smrg basic_machine=i386-pc 67372b676d7Smrg os=-go32 67472b676d7Smrg ;; 67572b676d7Smrg h3050r* | hiux*) 67672b676d7Smrg basic_machine=hppa1.1-hitachi 67772b676d7Smrg os=-hiuxwe2 67872b676d7Smrg ;; 67972b676d7Smrg h8300hms) 68072b676d7Smrg basic_machine=h8300-hitachi 68172b676d7Smrg os=-hms 68272b676d7Smrg ;; 68372b676d7Smrg h8300xray) 68472b676d7Smrg basic_machine=h8300-hitachi 68572b676d7Smrg os=-xray 68672b676d7Smrg ;; 68772b676d7Smrg h8500hms) 68872b676d7Smrg basic_machine=h8500-hitachi 68972b676d7Smrg os=-hms 69072b676d7Smrg ;; 69172b676d7Smrg harris) 69272b676d7Smrg basic_machine=m88k-harris 69372b676d7Smrg os=-sysv3 69472b676d7Smrg ;; 69572b676d7Smrg hp300-*) 69672b676d7Smrg basic_machine=m68k-hp 69772b676d7Smrg ;; 69872b676d7Smrg hp300bsd) 69972b676d7Smrg basic_machine=m68k-hp 70072b676d7Smrg os=-bsd 70172b676d7Smrg ;; 70272b676d7Smrg hp300hpux) 70372b676d7Smrg basic_machine=m68k-hp 70472b676d7Smrg os=-hpux 70572b676d7Smrg ;; 70672b676d7Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 70772b676d7Smrg basic_machine=hppa1.0-hp 70872b676d7Smrg ;; 70972b676d7Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 71072b676d7Smrg basic_machine=m68000-hp 71172b676d7Smrg ;; 71272b676d7Smrg hp9k3[2-9][0-9]) 71372b676d7Smrg basic_machine=m68k-hp 71472b676d7Smrg ;; 71572b676d7Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 71672b676d7Smrg basic_machine=hppa1.0-hp 71772b676d7Smrg ;; 71872b676d7Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 71972b676d7Smrg basic_machine=hppa1.1-hp 72072b676d7Smrg ;; 72172b676d7Smrg hp9k78[0-9] | hp78[0-9]) 72272b676d7Smrg # FIXME: really hppa2.0-hp 72372b676d7Smrg basic_machine=hppa1.1-hp 72472b676d7Smrg ;; 72572b676d7Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 72672b676d7Smrg # FIXME: really hppa2.0-hp 72772b676d7Smrg basic_machine=hppa1.1-hp 72872b676d7Smrg ;; 72972b676d7Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 73072b676d7Smrg basic_machine=hppa1.1-hp 73172b676d7Smrg ;; 73272b676d7Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 73372b676d7Smrg basic_machine=hppa1.0-hp 73472b676d7Smrg ;; 73572b676d7Smrg hppa-next) 73672b676d7Smrg os=-nextstep3 73772b676d7Smrg ;; 73872b676d7Smrg hppaosf) 73972b676d7Smrg basic_machine=hppa1.1-hp 74072b676d7Smrg os=-osf 74172b676d7Smrg ;; 74272b676d7Smrg hppro) 74372b676d7Smrg basic_machine=hppa1.1-hp 74472b676d7Smrg os=-proelf 74572b676d7Smrg ;; 74672b676d7Smrg i370-ibm* | ibm*) 74772b676d7Smrg basic_machine=i370-ibm 74872b676d7Smrg ;; 74972b676d7Smrg i*86v32) 75072b676d7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75172b676d7Smrg os=-sysv32 75272b676d7Smrg ;; 75372b676d7Smrg i*86v4*) 75472b676d7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75572b676d7Smrg os=-sysv4 75672b676d7Smrg ;; 75772b676d7Smrg i*86v) 75872b676d7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75972b676d7Smrg os=-sysv 76072b676d7Smrg ;; 76172b676d7Smrg i*86sol2) 76272b676d7Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 76372b676d7Smrg os=-solaris2 76472b676d7Smrg ;; 76572b676d7Smrg i386mach) 76672b676d7Smrg basic_machine=i386-mach 76772b676d7Smrg os=-mach 76872b676d7Smrg ;; 76972b676d7Smrg i386-vsta | vsta) 77072b676d7Smrg basic_machine=i386-unknown 77172b676d7Smrg os=-vsta 77272b676d7Smrg ;; 77372b676d7Smrg iris | iris4d) 77472b676d7Smrg basic_machine=mips-sgi 77572b676d7Smrg case $os in 77672b676d7Smrg -irix*) 77772b676d7Smrg ;; 77872b676d7Smrg *) 77972b676d7Smrg os=-irix4 78072b676d7Smrg ;; 78172b676d7Smrg esac 78272b676d7Smrg ;; 78372b676d7Smrg isi68 | isi) 78472b676d7Smrg basic_machine=m68k-isi 78572b676d7Smrg os=-sysv 78672b676d7Smrg ;; 78793d9adc1Smrg leon-*|leon[3-9]-*) 78893d9adc1Smrg basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 78993d9adc1Smrg ;; 7901fd23544Smrg m68knommu) 7911fd23544Smrg basic_machine=m68k-unknown 7921fd23544Smrg os=-linux 7931fd23544Smrg ;; 7941fd23544Smrg m68knommu-*) 7951fd23544Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7961fd23544Smrg os=-linux 7971fd23544Smrg ;; 79872b676d7Smrg m88k-omron*) 79972b676d7Smrg basic_machine=m88k-omron 80072b676d7Smrg ;; 80172b676d7Smrg magnum | m3230) 80272b676d7Smrg basic_machine=mips-mips 80372b676d7Smrg os=-sysv 80472b676d7Smrg ;; 80572b676d7Smrg merlin) 80672b676d7Smrg basic_machine=ns32k-utek 80772b676d7Smrg os=-sysv 80872b676d7Smrg ;; 80993d9adc1Smrg microblaze*) 81074c14cd6Smrg basic_machine=microblaze-xilinx 81174c14cd6Smrg ;; 81293d9adc1Smrg mingw64) 81393d9adc1Smrg basic_machine=x86_64-pc 81493d9adc1Smrg os=-mingw64 81593d9adc1Smrg ;; 81672b676d7Smrg mingw32) 81793d9adc1Smrg basic_machine=i686-pc 81872b676d7Smrg os=-mingw32 81972b676d7Smrg ;; 8201fd23544Smrg mingw32ce) 8211fd23544Smrg basic_machine=arm-unknown 8221fd23544Smrg os=-mingw32ce 8231fd23544Smrg ;; 82472b676d7Smrg miniframe) 82572b676d7Smrg basic_machine=m68000-convergent 82672b676d7Smrg ;; 82772b676d7Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 82872b676d7Smrg basic_machine=m68k-atari 82972b676d7Smrg os=-mint 83072b676d7Smrg ;; 83121525869Smrg mipsEE* | ee | ps2) 83221525869Smrg basic_machine=mips64r5900el-scei 83321525869Smrg case $os in 83421525869Smrg -linux*) 83521525869Smrg ;; 83621525869Smrg *) 83721525869Smrg os=-elf 83821525869Smrg ;; 83921525869Smrg esac 84021525869Smrg ;; 84121525869Smrg iop) 84221525869Smrg basic_machine=mipsel-scei 84321525869Smrg os=-irx 84421525869Smrg ;; 84521525869Smrg dvp) 84621525869Smrg basic_machine=dvp-scei 84721525869Smrg os=-elf 84821525869Smrg ;; 84972b676d7Smrg mips3*-*) 85072b676d7Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 85172b676d7Smrg ;; 85272b676d7Smrg mips3*) 85372b676d7Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 85472b676d7Smrg ;; 85572b676d7Smrg monitor) 85672b676d7Smrg basic_machine=m68k-rom68k 85772b676d7Smrg os=-coff 85872b676d7Smrg ;; 85972b676d7Smrg morphos) 86072b676d7Smrg basic_machine=powerpc-unknown 86172b676d7Smrg os=-morphos 86272b676d7Smrg ;; 86393d9adc1Smrg moxiebox) 86493d9adc1Smrg basic_machine=moxie-unknown 86593d9adc1Smrg os=-moxiebox 86693d9adc1Smrg ;; 86772b676d7Smrg msdos) 86872b676d7Smrg basic_machine=i386-pc 86972b676d7Smrg os=-msdos 87072b676d7Smrg ;; 87172b676d7Smrg ms1-*) 87272b676d7Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 87372b676d7Smrg ;; 87493d9adc1Smrg msys) 87593d9adc1Smrg basic_machine=i686-pc 87693d9adc1Smrg os=-msys 87793d9adc1Smrg ;; 87872b676d7Smrg mvs) 87972b676d7Smrg basic_machine=i370-ibm 88072b676d7Smrg os=-mvs 88172b676d7Smrg ;; 88293d9adc1Smrg nacl) 88393d9adc1Smrg basic_machine=le32-unknown 88493d9adc1Smrg os=-nacl 88593d9adc1Smrg ;; 88672b676d7Smrg ncr3000) 88772b676d7Smrg basic_machine=i486-ncr 88872b676d7Smrg os=-sysv4 88972b676d7Smrg ;; 89072b676d7Smrg netbsd386) 89172b676d7Smrg basic_machine=i386-unknown 89272b676d7Smrg os=-netbsd 89372b676d7Smrg ;; 89472b676d7Smrg netwinder) 89572b676d7Smrg basic_machine=armv4l-rebel 89672b676d7Smrg os=-linux 89772b676d7Smrg ;; 89872b676d7Smrg news | news700 | news800 | news900) 89972b676d7Smrg basic_machine=m68k-sony 90072b676d7Smrg os=-newsos 90172b676d7Smrg ;; 90272b676d7Smrg news1000) 90372b676d7Smrg basic_machine=m68030-sony 90472b676d7Smrg os=-newsos 90572b676d7Smrg ;; 90672b676d7Smrg news-3600 | risc-news) 90772b676d7Smrg basic_machine=mips-sony 90872b676d7Smrg os=-newsos 90972b676d7Smrg ;; 91072b676d7Smrg necv70) 91172b676d7Smrg basic_machine=v70-nec 91272b676d7Smrg os=-sysv 91372b676d7Smrg ;; 91472b676d7Smrg next | m*-next ) 91572b676d7Smrg basic_machine=m68k-next 91672b676d7Smrg case $os in 91772b676d7Smrg -nextstep* ) 91872b676d7Smrg ;; 91972b676d7Smrg -ns2*) 92072b676d7Smrg os=-nextstep2 92172b676d7Smrg ;; 92272b676d7Smrg *) 92372b676d7Smrg os=-nextstep3 92472b676d7Smrg ;; 92572b676d7Smrg esac 92672b676d7Smrg ;; 92772b676d7Smrg nh3000) 92872b676d7Smrg basic_machine=m68k-harris 92972b676d7Smrg os=-cxux 93072b676d7Smrg ;; 93172b676d7Smrg nh[45]000) 93272b676d7Smrg basic_machine=m88k-harris 93372b676d7Smrg os=-cxux 93472b676d7Smrg ;; 93572b676d7Smrg nindy960) 93672b676d7Smrg basic_machine=i960-intel 93772b676d7Smrg os=-nindy 93872b676d7Smrg ;; 93972b676d7Smrg mon960) 94072b676d7Smrg basic_machine=i960-intel 94172b676d7Smrg os=-mon960 94272b676d7Smrg ;; 94372b676d7Smrg nonstopux) 94472b676d7Smrg basic_machine=mips-compaq 94572b676d7Smrg os=-nonstopux 94672b676d7Smrg ;; 94772b676d7Smrg np1) 94872b676d7Smrg basic_machine=np1-gould 94972b676d7Smrg ;; 95074c14cd6Smrg neo-tandem) 95174c14cd6Smrg basic_machine=neo-tandem 95274c14cd6Smrg ;; 95374c14cd6Smrg nse-tandem) 95474c14cd6Smrg basic_machine=nse-tandem 95574c14cd6Smrg ;; 95672b676d7Smrg nsr-tandem) 95772b676d7Smrg basic_machine=nsr-tandem 95872b676d7Smrg ;; 95972b676d7Smrg op50n-* | op60c-*) 96072b676d7Smrg basic_machine=hppa1.1-oki 96172b676d7Smrg os=-proelf 96272b676d7Smrg ;; 96372b676d7Smrg openrisc | openrisc-*) 96472b676d7Smrg basic_machine=or32-unknown 96572b676d7Smrg ;; 96672b676d7Smrg os400) 96772b676d7Smrg basic_machine=powerpc-ibm 96872b676d7Smrg os=-os400 96972b676d7Smrg ;; 97072b676d7Smrg OSE68000 | ose68000) 97172b676d7Smrg basic_machine=m68000-ericsson 97272b676d7Smrg os=-ose 97372b676d7Smrg ;; 97472b676d7Smrg os68k) 97572b676d7Smrg basic_machine=m68k-none 97672b676d7Smrg os=-os68k 97772b676d7Smrg ;; 97872b676d7Smrg pa-hitachi) 97972b676d7Smrg basic_machine=hppa1.1-hitachi 98072b676d7Smrg os=-hiuxwe2 98172b676d7Smrg ;; 98272b676d7Smrg paragon) 98372b676d7Smrg basic_machine=i860-intel 98472b676d7Smrg os=-osf 98572b676d7Smrg ;; 9861fd23544Smrg parisc) 9871fd23544Smrg basic_machine=hppa-unknown 9881fd23544Smrg os=-linux 9891fd23544Smrg ;; 9901fd23544Smrg parisc-*) 9911fd23544Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9921fd23544Smrg os=-linux 9931fd23544Smrg ;; 99472b676d7Smrg pbd) 99572b676d7Smrg basic_machine=sparc-tti 99672b676d7Smrg ;; 99772b676d7Smrg pbb) 99872b676d7Smrg basic_machine=m68k-tti 99972b676d7Smrg ;; 100072b676d7Smrg pc532 | pc532-*) 100172b676d7Smrg basic_machine=ns32k-pc532 100272b676d7Smrg ;; 100372b676d7Smrg pc98) 100472b676d7Smrg basic_machine=i386-pc 100572b676d7Smrg ;; 100672b676d7Smrg pc98-*) 100772b676d7Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 100872b676d7Smrg ;; 100972b676d7Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 101072b676d7Smrg basic_machine=i586-pc 101172b676d7Smrg ;; 101272b676d7Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 101372b676d7Smrg basic_machine=i686-pc 101472b676d7Smrg ;; 101572b676d7Smrg pentiumii | pentium2 | pentiumiii | pentium3) 101672b676d7Smrg basic_machine=i686-pc 101772b676d7Smrg ;; 101872b676d7Smrg pentium4) 101972b676d7Smrg basic_machine=i786-pc 102072b676d7Smrg ;; 102172b676d7Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 102272b676d7Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 102372b676d7Smrg ;; 102472b676d7Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 102572b676d7Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 102672b676d7Smrg ;; 102772b676d7Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 102872b676d7Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 102972b676d7Smrg ;; 103072b676d7Smrg pentium4-*) 103172b676d7Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 103272b676d7Smrg ;; 103372b676d7Smrg pn) 103472b676d7Smrg basic_machine=pn-gould 103572b676d7Smrg ;; 103672b676d7Smrg power) basic_machine=power-ibm 103772b676d7Smrg ;; 103893d9adc1Smrg ppc | ppcbe) basic_machine=powerpc-unknown 103972b676d7Smrg ;; 104093d9adc1Smrg ppc-* | ppcbe-*) 104193d9adc1Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 104272b676d7Smrg ;; 104372b676d7Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 104472b676d7Smrg basic_machine=powerpcle-unknown 104572b676d7Smrg ;; 104672b676d7Smrg ppcle-* | powerpclittle-*) 104772b676d7Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 104872b676d7Smrg ;; 104972b676d7Smrg ppc64) basic_machine=powerpc64-unknown 105072b676d7Smrg ;; 105172b676d7Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 105272b676d7Smrg ;; 105372b676d7Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 105472b676d7Smrg basic_machine=powerpc64le-unknown 105572b676d7Smrg ;; 105672b676d7Smrg ppc64le-* | powerpc64little-*) 105772b676d7Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 105872b676d7Smrg ;; 105972b676d7Smrg ps2) 106072b676d7Smrg basic_machine=i386-ibm 106172b676d7Smrg ;; 106272b676d7Smrg pw32) 106372b676d7Smrg basic_machine=i586-unknown 106472b676d7Smrg os=-pw32 106572b676d7Smrg ;; 106693d9adc1Smrg rdos | rdos64) 106793d9adc1Smrg basic_machine=x86_64-pc 106893d9adc1Smrg os=-rdos 106993d9adc1Smrg ;; 107093d9adc1Smrg rdos32) 107172b676d7Smrg basic_machine=i386-pc 107272b676d7Smrg os=-rdos 107372b676d7Smrg ;; 107472b676d7Smrg rom68k) 107572b676d7Smrg basic_machine=m68k-rom68k 107672b676d7Smrg os=-coff 107772b676d7Smrg ;; 107872b676d7Smrg rm[46]00) 107972b676d7Smrg basic_machine=mips-siemens 108072b676d7Smrg ;; 108172b676d7Smrg rtpc | rtpc-*) 108272b676d7Smrg basic_machine=romp-ibm 108372b676d7Smrg ;; 108472b676d7Smrg s390 | s390-*) 108572b676d7Smrg basic_machine=s390-ibm 108672b676d7Smrg ;; 108772b676d7Smrg s390x | s390x-*) 108872b676d7Smrg basic_machine=s390x-ibm 108972b676d7Smrg ;; 109072b676d7Smrg sa29200) 109172b676d7Smrg basic_machine=a29k-amd 109272b676d7Smrg os=-udi 109372b676d7Smrg ;; 109472b676d7Smrg sb1) 109572b676d7Smrg basic_machine=mipsisa64sb1-unknown 109672b676d7Smrg ;; 109772b676d7Smrg sb1el) 109872b676d7Smrg basic_machine=mipsisa64sb1el-unknown 109972b676d7Smrg ;; 11001fd23544Smrg sde) 11011fd23544Smrg basic_machine=mipsisa32-sde 11021fd23544Smrg os=-elf 11031fd23544Smrg ;; 110472b676d7Smrg sei) 110572b676d7Smrg basic_machine=mips-sei 110672b676d7Smrg os=-seiux 110772b676d7Smrg ;; 110872b676d7Smrg sequent) 110972b676d7Smrg basic_machine=i386-sequent 111072b676d7Smrg ;; 111172b676d7Smrg sh) 111272b676d7Smrg basic_machine=sh-hitachi 111372b676d7Smrg os=-hms 111472b676d7Smrg ;; 11151fd23544Smrg sh5el) 11161fd23544Smrg basic_machine=sh5le-unknown 11171fd23544Smrg ;; 111872b676d7Smrg sh64) 111972b676d7Smrg basic_machine=sh64-unknown 112072b676d7Smrg ;; 112172b676d7Smrg sparclite-wrs | simso-wrs) 112272b676d7Smrg basic_machine=sparclite-wrs 112372b676d7Smrg os=-vxworks 112472b676d7Smrg ;; 112572b676d7Smrg sps7) 112672b676d7Smrg basic_machine=m68k-bull 112772b676d7Smrg os=-sysv2 112872b676d7Smrg ;; 112972b676d7Smrg spur) 113072b676d7Smrg basic_machine=spur-unknown 113172b676d7Smrg ;; 113272b676d7Smrg st2000) 113372b676d7Smrg basic_machine=m68k-tandem 113472b676d7Smrg ;; 113572b676d7Smrg stratus) 113672b676d7Smrg basic_machine=i860-stratus 113772b676d7Smrg os=-sysv4 113872b676d7Smrg ;; 113993d9adc1Smrg strongarm-* | thumb-*) 114093d9adc1Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 114193d9adc1Smrg ;; 114272b676d7Smrg sun2) 114372b676d7Smrg basic_machine=m68000-sun 114472b676d7Smrg ;; 114572b676d7Smrg sun2os3) 114672b676d7Smrg basic_machine=m68000-sun 114772b676d7Smrg os=-sunos3 114872b676d7Smrg ;; 114972b676d7Smrg sun2os4) 115072b676d7Smrg basic_machine=m68000-sun 115172b676d7Smrg os=-sunos4 115272b676d7Smrg ;; 115372b676d7Smrg sun3os3) 115472b676d7Smrg basic_machine=m68k-sun 115572b676d7Smrg os=-sunos3 115672b676d7Smrg ;; 115772b676d7Smrg sun3os4) 115872b676d7Smrg basic_machine=m68k-sun 115972b676d7Smrg os=-sunos4 116072b676d7Smrg ;; 116172b676d7Smrg sun4os3) 116272b676d7Smrg basic_machine=sparc-sun 116372b676d7Smrg os=-sunos3 116472b676d7Smrg ;; 116572b676d7Smrg sun4os4) 116672b676d7Smrg basic_machine=sparc-sun 116772b676d7Smrg os=-sunos4 116872b676d7Smrg ;; 116972b676d7Smrg sun4sol2) 117072b676d7Smrg basic_machine=sparc-sun 117172b676d7Smrg os=-solaris2 117272b676d7Smrg ;; 117372b676d7Smrg sun3 | sun3-*) 117472b676d7Smrg basic_machine=m68k-sun 117572b676d7Smrg ;; 117672b676d7Smrg sun4) 117772b676d7Smrg basic_machine=sparc-sun 117872b676d7Smrg ;; 117972b676d7Smrg sun386 | sun386i | roadrunner) 118072b676d7Smrg basic_machine=i386-sun 118172b676d7Smrg ;; 118272b676d7Smrg sv1) 118372b676d7Smrg basic_machine=sv1-cray 118472b676d7Smrg os=-unicos 118572b676d7Smrg ;; 118672b676d7Smrg symmetry) 118772b676d7Smrg basic_machine=i386-sequent 118872b676d7Smrg os=-dynix 118972b676d7Smrg ;; 119072b676d7Smrg t3e) 119172b676d7Smrg basic_machine=alphaev5-cray 119272b676d7Smrg os=-unicos 119372b676d7Smrg ;; 119472b676d7Smrg t90) 119572b676d7Smrg basic_machine=t90-cray 119672b676d7Smrg os=-unicos 119772b676d7Smrg ;; 11981fd23544Smrg tile*) 119993d9adc1Smrg basic_machine=$basic_machine-unknown 12001fd23544Smrg os=-linux-gnu 12011fd23544Smrg ;; 120272b676d7Smrg tx39) 120372b676d7Smrg basic_machine=mipstx39-unknown 120472b676d7Smrg ;; 120572b676d7Smrg tx39el) 120672b676d7Smrg basic_machine=mipstx39el-unknown 120772b676d7Smrg ;; 120872b676d7Smrg toad1) 120972b676d7Smrg basic_machine=pdp10-xkl 121072b676d7Smrg os=-tops20 121172b676d7Smrg ;; 121272b676d7Smrg tower | tower-32) 121372b676d7Smrg basic_machine=m68k-ncr 121472b676d7Smrg ;; 121572b676d7Smrg tpf) 121672b676d7Smrg basic_machine=s390x-ibm 121772b676d7Smrg os=-tpf 121872b676d7Smrg ;; 121972b676d7Smrg udi29k) 122072b676d7Smrg basic_machine=a29k-amd 122172b676d7Smrg os=-udi 122272b676d7Smrg ;; 122372b676d7Smrg ultra3) 122472b676d7Smrg basic_machine=a29k-nyu 122572b676d7Smrg os=-sym1 122672b676d7Smrg ;; 122772b676d7Smrg v810 | necv810) 122872b676d7Smrg basic_machine=v810-nec 122972b676d7Smrg os=-none 123072b676d7Smrg ;; 123172b676d7Smrg vaxv) 123272b676d7Smrg basic_machine=vax-dec 123372b676d7Smrg os=-sysv 123472b676d7Smrg ;; 123572b676d7Smrg vms) 123672b676d7Smrg basic_machine=vax-dec 123772b676d7Smrg os=-vms 123872b676d7Smrg ;; 123972b676d7Smrg vpp*|vx|vx-*) 124072b676d7Smrg basic_machine=f301-fujitsu 124172b676d7Smrg ;; 124272b676d7Smrg vxworks960) 124372b676d7Smrg basic_machine=i960-wrs 124472b676d7Smrg os=-vxworks 124572b676d7Smrg ;; 124672b676d7Smrg vxworks68) 124772b676d7Smrg basic_machine=m68k-wrs 124872b676d7Smrg os=-vxworks 124972b676d7Smrg ;; 125072b676d7Smrg vxworks29k) 125172b676d7Smrg basic_machine=a29k-wrs 125272b676d7Smrg os=-vxworks 125372b676d7Smrg ;; 125472b676d7Smrg w65*) 125572b676d7Smrg basic_machine=w65-wdc 125672b676d7Smrg os=-none 125772b676d7Smrg ;; 125872b676d7Smrg w89k-*) 125972b676d7Smrg basic_machine=hppa1.1-winbond 126072b676d7Smrg os=-proelf 126172b676d7Smrg ;; 126272b676d7Smrg xbox) 126372b676d7Smrg basic_machine=i686-pc 126472b676d7Smrg os=-mingw32 126572b676d7Smrg ;; 126672b676d7Smrg xps | xps100) 126772b676d7Smrg basic_machine=xps100-honeywell 126872b676d7Smrg ;; 126993d9adc1Smrg xscale-* | xscalee[bl]-*) 127093d9adc1Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 127193d9adc1Smrg ;; 127272b676d7Smrg ymp) 127372b676d7Smrg basic_machine=ymp-cray 127472b676d7Smrg os=-unicos 127572b676d7Smrg ;; 127672b676d7Smrg z8k-*-coff) 127772b676d7Smrg basic_machine=z8k-unknown 127872b676d7Smrg os=-sim 127972b676d7Smrg ;; 128074c14cd6Smrg z80-*-coff) 128174c14cd6Smrg basic_machine=z80-unknown 128274c14cd6Smrg os=-sim 128374c14cd6Smrg ;; 128472b676d7Smrg none) 128572b676d7Smrg basic_machine=none-none 128672b676d7Smrg os=-none 128772b676d7Smrg ;; 128872b676d7Smrg 128972b676d7Smrg# Here we handle the default manufacturer of certain CPU types. It is in 129072b676d7Smrg# some cases the only manufacturer, in others, it is the most popular. 129172b676d7Smrg w89k) 129272b676d7Smrg basic_machine=hppa1.1-winbond 129372b676d7Smrg ;; 129472b676d7Smrg op50n) 129572b676d7Smrg basic_machine=hppa1.1-oki 129672b676d7Smrg ;; 129772b676d7Smrg op60c) 129872b676d7Smrg basic_machine=hppa1.1-oki 129972b676d7Smrg ;; 130072b676d7Smrg romp) 130172b676d7Smrg basic_machine=romp-ibm 130272b676d7Smrg ;; 130372b676d7Smrg mmix) 130472b676d7Smrg basic_machine=mmix-knuth 130572b676d7Smrg ;; 130672b676d7Smrg rs6000) 130772b676d7Smrg basic_machine=rs6000-ibm 130872b676d7Smrg ;; 130972b676d7Smrg vax) 131072b676d7Smrg basic_machine=vax-dec 131172b676d7Smrg ;; 131272b676d7Smrg pdp10) 131372b676d7Smrg # there are many clones, so DEC is not a safe bet 131472b676d7Smrg basic_machine=pdp10-unknown 131572b676d7Smrg ;; 131672b676d7Smrg pdp11) 131772b676d7Smrg basic_machine=pdp11-dec 131872b676d7Smrg ;; 131972b676d7Smrg we32k) 132072b676d7Smrg basic_machine=we32k-att 132172b676d7Smrg ;; 132274c14cd6Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 132372b676d7Smrg basic_machine=sh-unknown 132472b676d7Smrg ;; 13251fd23544Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 132672b676d7Smrg basic_machine=sparc-sun 132772b676d7Smrg ;; 132872b676d7Smrg cydra) 132972b676d7Smrg basic_machine=cydra-cydrome 133072b676d7Smrg ;; 133172b676d7Smrg orion) 133272b676d7Smrg basic_machine=orion-highlevel 133372b676d7Smrg ;; 133472b676d7Smrg orion105) 133572b676d7Smrg basic_machine=clipper-highlevel 133672b676d7Smrg ;; 133772b676d7Smrg mac | mpw | mac-mpw) 133872b676d7Smrg basic_machine=m68k-apple 133972b676d7Smrg ;; 134072b676d7Smrg pmac | pmac-mpw) 134172b676d7Smrg basic_machine=powerpc-apple 134272b676d7Smrg ;; 134372b676d7Smrg *-unknown) 134472b676d7Smrg # Make sure to match an already-canonicalized machine name. 134572b676d7Smrg ;; 134672b676d7Smrg *) 134772b676d7Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 134872b676d7Smrg exit 1 134972b676d7Smrg ;; 135072b676d7Smrgesac 135172b676d7Smrg 135272b676d7Smrg# Here we canonicalize certain aliases for manufacturers. 135372b676d7Smrgcase $basic_machine in 135472b676d7Smrg *-digital*) 135572b676d7Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 135672b676d7Smrg ;; 135772b676d7Smrg *-commodore*) 135872b676d7Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 135972b676d7Smrg ;; 136072b676d7Smrg *) 136172b676d7Smrg ;; 136272b676d7Smrgesac 136372b676d7Smrg 136472b676d7Smrg# Decode manufacturer-specific aliases for certain operating systems. 136572b676d7Smrg 136672b676d7Smrgif [ x"$os" != x"" ] 136772b676d7Smrgthen 136872b676d7Smrgcase $os in 136974c14cd6Smrg # First match some system type aliases 137074c14cd6Smrg # that might get confused with valid system types. 137172b676d7Smrg # -solaris* is a basic system type, with this one exception. 137274c14cd6Smrg -auroraux) 137374c14cd6Smrg os=-auroraux 137474c14cd6Smrg ;; 137572b676d7Smrg -solaris1 | -solaris1.*) 137672b676d7Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 137772b676d7Smrg ;; 137872b676d7Smrg -solaris) 137972b676d7Smrg os=-solaris2 138072b676d7Smrg ;; 138172b676d7Smrg -svr4*) 138272b676d7Smrg os=-sysv4 138372b676d7Smrg ;; 138472b676d7Smrg -unixware*) 138572b676d7Smrg os=-sysv4.2uw 138672b676d7Smrg ;; 138772b676d7Smrg -gnu/linux*) 138872b676d7Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 138972b676d7Smrg ;; 139072b676d7Smrg # First accept the basic system types. 139172b676d7Smrg # The portable systems comes first. 139272b676d7Smrg # Each alternative MUST END IN A *, to match a version number. 139372b676d7Smrg # -sysv* is not here because it comes later, after sysvr4. 139472b676d7Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 139574c14cd6Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 139674c14cd6Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 139793d9adc1Smrg | -sym* | -kopensolaris* | -plan9* \ 139872b676d7Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 139993d9adc1Smrg | -aos* | -aros* | -cloudabi* | -sortix* \ 140072b676d7Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 140172b676d7Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 140272b676d7Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 140393d9adc1Smrg | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ 140472b676d7Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 140572b676d7Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 140672b676d7Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 140772b676d7Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 140874c14cd6Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 140993d9adc1Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 141093d9adc1Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 141193d9adc1Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 141293d9adc1Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 141372b676d7Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 141472b676d7Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 141521525869Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \ 141672b676d7Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 141772b676d7Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 141872b676d7Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 141993d9adc1Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ 142093d9adc1Smrg | -onefs* | -tirtos*) 142172b676d7Smrg # Remember, each alternative MUST END IN *, to match a version number. 142272b676d7Smrg ;; 142372b676d7Smrg -qnx*) 142472b676d7Smrg case $basic_machine in 142572b676d7Smrg x86-* | i*86-*) 142672b676d7Smrg ;; 142772b676d7Smrg *) 142872b676d7Smrg os=-nto$os 142972b676d7Smrg ;; 143072b676d7Smrg esac 143172b676d7Smrg ;; 143272b676d7Smrg -nto-qnx*) 143372b676d7Smrg ;; 143472b676d7Smrg -nto*) 143572b676d7Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 143672b676d7Smrg ;; 143772b676d7Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 143872b676d7Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 143972b676d7Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 144072b676d7Smrg ;; 144172b676d7Smrg -mac*) 144272b676d7Smrg os=`echo $os | sed -e 's|mac|macos|'` 144372b676d7Smrg ;; 144472b676d7Smrg -linux-dietlibc) 144572b676d7Smrg os=-linux-dietlibc 144672b676d7Smrg ;; 144772b676d7Smrg -linux*) 144872b676d7Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 144972b676d7Smrg ;; 145072b676d7Smrg -sunos5*) 145172b676d7Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 145272b676d7Smrg ;; 145372b676d7Smrg -sunos6*) 145472b676d7Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 145572b676d7Smrg ;; 145672b676d7Smrg -opened*) 145772b676d7Smrg os=-openedition 145872b676d7Smrg ;; 145974c14cd6Smrg -os400*) 146072b676d7Smrg os=-os400 146172b676d7Smrg ;; 146272b676d7Smrg -wince*) 146372b676d7Smrg os=-wince 146472b676d7Smrg ;; 146572b676d7Smrg -osfrose*) 146672b676d7Smrg os=-osfrose 146772b676d7Smrg ;; 146872b676d7Smrg -osf*) 146972b676d7Smrg os=-osf 147072b676d7Smrg ;; 147172b676d7Smrg -utek*) 147272b676d7Smrg os=-bsd 147372b676d7Smrg ;; 147472b676d7Smrg -dynix*) 147572b676d7Smrg os=-bsd 147672b676d7Smrg ;; 147772b676d7Smrg -acis*) 147872b676d7Smrg os=-aos 147972b676d7Smrg ;; 148072b676d7Smrg -atheos*) 148172b676d7Smrg os=-atheos 148272b676d7Smrg ;; 148372b676d7Smrg -syllable*) 148472b676d7Smrg os=-syllable 148572b676d7Smrg ;; 148672b676d7Smrg -386bsd) 148772b676d7Smrg os=-bsd 148872b676d7Smrg ;; 148972b676d7Smrg -ctix* | -uts*) 149072b676d7Smrg os=-sysv 149172b676d7Smrg ;; 149272b676d7Smrg -nova*) 149372b676d7Smrg os=-rtmk-nova 149472b676d7Smrg ;; 149572b676d7Smrg -ns2 ) 149672b676d7Smrg os=-nextstep2 149772b676d7Smrg ;; 149872b676d7Smrg -nsk*) 149972b676d7Smrg os=-nsk 150072b676d7Smrg ;; 150172b676d7Smrg # Preserve the version number of sinix5. 150272b676d7Smrg -sinix5.*) 150372b676d7Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 150472b676d7Smrg ;; 150572b676d7Smrg -sinix*) 150672b676d7Smrg os=-sysv4 150772b676d7Smrg ;; 150874c14cd6Smrg -tpf*) 150972b676d7Smrg os=-tpf 151072b676d7Smrg ;; 151172b676d7Smrg -triton*) 151272b676d7Smrg os=-sysv3 151372b676d7Smrg ;; 151472b676d7Smrg -oss*) 151572b676d7Smrg os=-sysv3 151672b676d7Smrg ;; 151772b676d7Smrg -svr4) 151872b676d7Smrg os=-sysv4 151972b676d7Smrg ;; 152072b676d7Smrg -svr3) 152172b676d7Smrg os=-sysv3 152272b676d7Smrg ;; 152372b676d7Smrg -sysvr4) 152472b676d7Smrg os=-sysv4 152572b676d7Smrg ;; 152672b676d7Smrg # This must come after -sysvr4. 152772b676d7Smrg -sysv*) 152872b676d7Smrg ;; 152972b676d7Smrg -ose*) 153072b676d7Smrg os=-ose 153172b676d7Smrg ;; 153272b676d7Smrg -es1800*) 153372b676d7Smrg os=-ose 153472b676d7Smrg ;; 153572b676d7Smrg -xenix) 153672b676d7Smrg os=-xenix 153772b676d7Smrg ;; 153872b676d7Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 153972b676d7Smrg os=-mint 154072b676d7Smrg ;; 154172b676d7Smrg -aros*) 154272b676d7Smrg os=-aros 154372b676d7Smrg ;; 154472b676d7Smrg -zvmoe) 154572b676d7Smrg os=-zvmoe 154672b676d7Smrg ;; 154774c14cd6Smrg -dicos*) 154874c14cd6Smrg os=-dicos 154974c14cd6Smrg ;; 155074c14cd6Smrg -nacl*) 155174c14cd6Smrg ;; 155293d9adc1Smrg -ios) 155393d9adc1Smrg ;; 155472b676d7Smrg -none) 155572b676d7Smrg ;; 155672b676d7Smrg *) 155772b676d7Smrg # Get rid of the `-' at the beginning of $os. 155872b676d7Smrg os=`echo $os | sed 's/[^-]*-//'` 155972b676d7Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 156072b676d7Smrg exit 1 156172b676d7Smrg ;; 156272b676d7Smrgesac 156372b676d7Smrgelse 156472b676d7Smrg 156572b676d7Smrg# Here we handle the default operating systems that come with various machines. 156672b676d7Smrg# The value should be what the vendor currently ships out the door with their 156772b676d7Smrg# machine or put another way, the most popular os provided with the machine. 156872b676d7Smrg 156972b676d7Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 157072b676d7Smrg# "-sun"), then you have to tell the case statement up towards the top 157172b676d7Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 157272b676d7Smrg# will signal an error saying that MANUFACTURER isn't an operating 157372b676d7Smrg# system, and we'll never get to this point. 157472b676d7Smrg 157572b676d7Smrgcase $basic_machine in 157674c14cd6Smrg score-*) 15771fd23544Smrg os=-elf 15781fd23544Smrg ;; 157974c14cd6Smrg spu-*) 15801fd23544Smrg os=-elf 15811fd23544Smrg ;; 158272b676d7Smrg *-acorn) 158372b676d7Smrg os=-riscix1.2 158472b676d7Smrg ;; 158572b676d7Smrg arm*-rebel) 158672b676d7Smrg os=-linux 158772b676d7Smrg ;; 158872b676d7Smrg arm*-semi) 158972b676d7Smrg os=-aout 159072b676d7Smrg ;; 159174c14cd6Smrg c4x-* | tic4x-*) 159274c14cd6Smrg os=-coff 159374c14cd6Smrg ;; 159493d9adc1Smrg c8051-*) 159593d9adc1Smrg os=-elf 159693d9adc1Smrg ;; 159793d9adc1Smrg hexagon-*) 159893d9adc1Smrg os=-elf 159993d9adc1Smrg ;; 160074c14cd6Smrg tic54x-*) 160174c14cd6Smrg os=-coff 160274c14cd6Smrg ;; 160374c14cd6Smrg tic55x-*) 160474c14cd6Smrg os=-coff 160574c14cd6Smrg ;; 160674c14cd6Smrg tic6x-*) 160774c14cd6Smrg os=-coff 16081fd23544Smrg ;; 160972b676d7Smrg # This must come before the *-dec entry. 161072b676d7Smrg pdp10-*) 161172b676d7Smrg os=-tops20 161272b676d7Smrg ;; 161372b676d7Smrg pdp11-*) 161472b676d7Smrg os=-none 161572b676d7Smrg ;; 161672b676d7Smrg *-dec | vax-*) 161772b676d7Smrg os=-ultrix4.2 161872b676d7Smrg ;; 161972b676d7Smrg m68*-apollo) 162072b676d7Smrg os=-domain 162172b676d7Smrg ;; 162272b676d7Smrg i386-sun) 162372b676d7Smrg os=-sunos4.0.2 162472b676d7Smrg ;; 162572b676d7Smrg m68000-sun) 162672b676d7Smrg os=-sunos3 162772b676d7Smrg ;; 162872b676d7Smrg m68*-cisco) 162972b676d7Smrg os=-aout 163072b676d7Smrg ;; 163174c14cd6Smrg mep-*) 16321fd23544Smrg os=-elf 16331fd23544Smrg ;; 163472b676d7Smrg mips*-cisco) 163572b676d7Smrg os=-elf 163672b676d7Smrg ;; 163772b676d7Smrg mips*-*) 163872b676d7Smrg os=-elf 163972b676d7Smrg ;; 164072b676d7Smrg or32-*) 164172b676d7Smrg os=-coff 164272b676d7Smrg ;; 164372b676d7Smrg *-tti) # must be before sparc entry or we get the wrong os. 164472b676d7Smrg os=-sysv3 164572b676d7Smrg ;; 164672b676d7Smrg sparc-* | *-sun) 164772b676d7Smrg os=-sunos4.1.1 164872b676d7Smrg ;; 164972b676d7Smrg *-be) 165072b676d7Smrg os=-beos 165172b676d7Smrg ;; 165272b676d7Smrg *-haiku) 165372b676d7Smrg os=-haiku 165472b676d7Smrg ;; 165572b676d7Smrg *-ibm) 165672b676d7Smrg os=-aix 165772b676d7Smrg ;; 165874c14cd6Smrg *-knuth) 165972b676d7Smrg os=-mmixware 166072b676d7Smrg ;; 166172b676d7Smrg *-wec) 166272b676d7Smrg os=-proelf 166372b676d7Smrg ;; 166472b676d7Smrg *-winbond) 166572b676d7Smrg os=-proelf 166672b676d7Smrg ;; 166772b676d7Smrg *-oki) 166872b676d7Smrg os=-proelf 166972b676d7Smrg ;; 167072b676d7Smrg *-hp) 167172b676d7Smrg os=-hpux 167272b676d7Smrg ;; 167372b676d7Smrg *-hitachi) 167472b676d7Smrg os=-hiux 167572b676d7Smrg ;; 167672b676d7Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 167772b676d7Smrg os=-sysv 167872b676d7Smrg ;; 167972b676d7Smrg *-cbm) 168072b676d7Smrg os=-amigaos 168172b676d7Smrg ;; 168272b676d7Smrg *-dg) 168372b676d7Smrg os=-dgux 168472b676d7Smrg ;; 168572b676d7Smrg *-dolphin) 168672b676d7Smrg os=-sysv3 168772b676d7Smrg ;; 168872b676d7Smrg m68k-ccur) 168972b676d7Smrg os=-rtu 169072b676d7Smrg ;; 169172b676d7Smrg m88k-omron*) 169272b676d7Smrg os=-luna 169372b676d7Smrg ;; 169472b676d7Smrg *-next ) 169572b676d7Smrg os=-nextstep 169672b676d7Smrg ;; 169772b676d7Smrg *-sequent) 169872b676d7Smrg os=-ptx 169972b676d7Smrg ;; 170072b676d7Smrg *-crds) 170172b676d7Smrg os=-unos 170272b676d7Smrg ;; 170372b676d7Smrg *-ns) 170472b676d7Smrg os=-genix 170572b676d7Smrg ;; 170672b676d7Smrg i370-*) 170772b676d7Smrg os=-mvs 170872b676d7Smrg ;; 170972b676d7Smrg *-next) 171072b676d7Smrg os=-nextstep3 171172b676d7Smrg ;; 171272b676d7Smrg *-gould) 171372b676d7Smrg os=-sysv 171472b676d7Smrg ;; 171572b676d7Smrg *-highlevel) 171672b676d7Smrg os=-bsd 171772b676d7Smrg ;; 171872b676d7Smrg *-encore) 171972b676d7Smrg os=-bsd 172072b676d7Smrg ;; 172172b676d7Smrg *-sgi) 172272b676d7Smrg os=-irix 172372b676d7Smrg ;; 172472b676d7Smrg *-siemens) 172572b676d7Smrg os=-sysv4 172672b676d7Smrg ;; 172772b676d7Smrg *-masscomp) 172872b676d7Smrg os=-rtu 172972b676d7Smrg ;; 173072b676d7Smrg f30[01]-fujitsu | f700-fujitsu) 173172b676d7Smrg os=-uxpv 173272b676d7Smrg ;; 173372b676d7Smrg *-rom68k) 173472b676d7Smrg os=-coff 173572b676d7Smrg ;; 173672b676d7Smrg *-*bug) 173772b676d7Smrg os=-coff 173872b676d7Smrg ;; 173972b676d7Smrg *-apple) 174072b676d7Smrg os=-macos 174172b676d7Smrg ;; 174272b676d7Smrg *-atari*) 174372b676d7Smrg os=-mint 174472b676d7Smrg ;; 174572b676d7Smrg *) 174672b676d7Smrg os=-none 174772b676d7Smrg ;; 174872b676d7Smrgesac 174972b676d7Smrgfi 175072b676d7Smrg 175172b676d7Smrg# Here we handle the case where we know the os, and the CPU type, but not the 175272b676d7Smrg# manufacturer. We pick the logical manufacturer. 175372b676d7Smrgvendor=unknown 175472b676d7Smrgcase $basic_machine in 175572b676d7Smrg *-unknown) 175672b676d7Smrg case $os in 175772b676d7Smrg -riscix*) 175872b676d7Smrg vendor=acorn 175972b676d7Smrg ;; 176072b676d7Smrg -sunos*) 176172b676d7Smrg vendor=sun 176272b676d7Smrg ;; 176374c14cd6Smrg -cnk*|-aix*) 176472b676d7Smrg vendor=ibm 176572b676d7Smrg ;; 176672b676d7Smrg -beos*) 176772b676d7Smrg vendor=be 176872b676d7Smrg ;; 176972b676d7Smrg -hpux*) 177072b676d7Smrg vendor=hp 177172b676d7Smrg ;; 177272b676d7Smrg -mpeix*) 177372b676d7Smrg vendor=hp 177472b676d7Smrg ;; 177572b676d7Smrg -hiux*) 177672b676d7Smrg vendor=hitachi 177772b676d7Smrg ;; 177872b676d7Smrg -unos*) 177972b676d7Smrg vendor=crds 178072b676d7Smrg ;; 178172b676d7Smrg -dgux*) 178272b676d7Smrg vendor=dg 178372b676d7Smrg ;; 178472b676d7Smrg -luna*) 178572b676d7Smrg vendor=omron 178672b676d7Smrg ;; 178772b676d7Smrg -genix*) 178872b676d7Smrg vendor=ns 178972b676d7Smrg ;; 179072b676d7Smrg -mvs* | -opened*) 179172b676d7Smrg vendor=ibm 179272b676d7Smrg ;; 179372b676d7Smrg -os400*) 179472b676d7Smrg vendor=ibm 179572b676d7Smrg ;; 179672b676d7Smrg -ptx*) 179772b676d7Smrg vendor=sequent 179872b676d7Smrg ;; 179972b676d7Smrg -tpf*) 180072b676d7Smrg vendor=ibm 180172b676d7Smrg ;; 180272b676d7Smrg -vxsim* | -vxworks* | -windiss*) 180372b676d7Smrg vendor=wrs 180472b676d7Smrg ;; 180572b676d7Smrg -aux*) 180672b676d7Smrg vendor=apple 180772b676d7Smrg ;; 180872b676d7Smrg -hms*) 180972b676d7Smrg vendor=hitachi 181072b676d7Smrg ;; 181172b676d7Smrg -mpw* | -macos*) 181272b676d7Smrg vendor=apple 181372b676d7Smrg ;; 181472b676d7Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 181572b676d7Smrg vendor=atari 181672b676d7Smrg ;; 181772b676d7Smrg -vos*) 181872b676d7Smrg vendor=stratus 181972b676d7Smrg ;; 182072b676d7Smrg esac 182172b676d7Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 182272b676d7Smrg ;; 182372b676d7Smrgesac 182472b676d7Smrg 182572b676d7Smrgecho $basic_machine$os 182672b676d7Smrgexit 182772b676d7Smrg 182872b676d7Smrg# Local variables: 182972b676d7Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 183072b676d7Smrg# time-stamp-start: "timestamp='" 183172b676d7Smrg# time-stamp-format: "%:y-%02m-%02d" 183272b676d7Smrg# time-stamp-end: "'" 183372b676d7Smrg# End: 1834