config.sub revision eca46af7
195b296d0Smrg#! /bin/sh 295b296d0Smrg# Configuration validation subroutine script. 3eca46af7Smrg# Copyright 1992-2014 Free Software Foundation, Inc. 495b296d0Smrg 5eca46af7Smrgtimestamp='2014-07-28' 695b296d0Smrg 7eca46af7Smrg# This file is free software; you can redistribute it and/or modify it 8eca46af7Smrg# under the terms of the GNU General Public License as published by 9eca46af7Smrg# the Free Software Foundation; either version 3 of the License, or 1095b296d0Smrg# (at your option) any later version. 1195b296d0Smrg# 12eca46af7Smrg# This program is distributed in the hope that it will be useful, but 13eca46af7Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 14eca46af7Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15eca46af7Smrg# General Public License for more details. 1695b296d0Smrg# 1795b296d0Smrg# You should have received a copy of the GNU General Public License 18eca46af7Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 1995b296d0Smrg# 2095b296d0Smrg# As a special exception to the GNU General Public License, if you 2195b296d0Smrg# distribute this file as part of a program that contains a 2295b296d0Smrg# configuration script generated by Autoconf, you may include it under 23eca46af7Smrg# the same distribution terms that you use for the rest of that 24eca46af7Smrg# program. This Exception is an additional permission under section 7 25eca46af7Smrg# of the GNU General Public License, version 3 ("GPLv3"). 2695b296d0Smrg 2795b296d0Smrg 28eca46af7Smrg# Please send patches with a ChangeLog entry to config-patches@gnu.org. 2995b296d0Smrg# 3095b296d0Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3195b296d0Smrg# Supply the specified configuration type as an argument. 3295b296d0Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 3395b296d0Smrg# Otherwise, we print the canonical config type on stdout and succeed. 3495b296d0Smrg 3514330f12Smrg# You can get the latest version of this script from: 3614330f12Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 3714330f12Smrg 3895b296d0Smrg# This file is supposed to be the same for all GNU packages 3995b296d0Smrg# and recognize all the CPU types, system types and aliases 4095b296d0Smrg# that are meaningful with *any* GNU software. 4195b296d0Smrg# Each package is responsible for reporting which valid configurations 4295b296d0Smrg# it does not support. The user should be able to distinguish 4395b296d0Smrg# a failure to support a valid configuration from a meaningless 4495b296d0Smrg# configuration. 4595b296d0Smrg 4695b296d0Smrg# The goal of this file is to map all the various variations of a given 4795b296d0Smrg# machine specification into a single specification in the form: 4895b296d0Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4995b296d0Smrg# or in some cases, the newer four-part form: 5095b296d0Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5195b296d0Smrg# It is wrong to echo any other type of specification. 5295b296d0Smrg 5395b296d0Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5495b296d0Smrg 5595b296d0Smrgusage="\ 5695b296d0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 5795b296d0Smrg $0 [OPTION] ALIAS 5895b296d0Smrg 5995b296d0SmrgCanonicalize a configuration name. 6095b296d0Smrg 6195b296d0SmrgOperation modes: 6295b296d0Smrg -h, --help print this help, then exit 6395b296d0Smrg -t, --time-stamp print date of last modification, then exit 6495b296d0Smrg -v, --version print version number, then exit 6595b296d0Smrg 6695b296d0SmrgReport bugs and patches to <config-patches@gnu.org>." 6795b296d0Smrg 6895b296d0Smrgversion="\ 6995b296d0SmrgGNU config.sub ($timestamp) 7095b296d0Smrg 71eca46af7SmrgCopyright 1992-2014 Free Software Foundation, Inc. 7295b296d0Smrg 7395b296d0SmrgThis is free software; see the source for copying conditions. There is NO 7495b296d0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7595b296d0Smrg 7695b296d0Smrghelp=" 7795b296d0SmrgTry \`$me --help' for more information." 7895b296d0Smrg 7995b296d0Smrg# Parse command line 8095b296d0Smrgwhile test $# -gt 0 ; do 8195b296d0Smrg case $1 in 8295b296d0Smrg --time-stamp | --time* | -t ) 8395b296d0Smrg echo "$timestamp" ; exit ;; 8495b296d0Smrg --version | -v ) 8595b296d0Smrg echo "$version" ; exit ;; 8695b296d0Smrg --help | --h* | -h ) 8795b296d0Smrg echo "$usage"; exit ;; 8895b296d0Smrg -- ) # Stop option processing 8995b296d0Smrg shift; break ;; 9095b296d0Smrg - ) # Use stdin as input. 9195b296d0Smrg break ;; 9295b296d0Smrg -* ) 9395b296d0Smrg echo "$me: invalid option $1$help" 9495b296d0Smrg exit 1 ;; 9595b296d0Smrg 9695b296d0Smrg *local*) 9795b296d0Smrg # First pass through any local machine types. 9895b296d0Smrg echo $1 9995b296d0Smrg exit ;; 10095b296d0Smrg 10195b296d0Smrg * ) 10295b296d0Smrg break ;; 10395b296d0Smrg esac 10495b296d0Smrgdone 10595b296d0Smrg 10695b296d0Smrgcase $# in 10795b296d0Smrg 0) echo "$me: missing argument$help" >&2 10895b296d0Smrg exit 1;; 10995b296d0Smrg 1) ;; 11095b296d0Smrg *) echo "$me: too many arguments$help" >&2 11195b296d0Smrg exit 1;; 11295b296d0Smrgesac 11395b296d0Smrg 11495b296d0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11595b296d0Smrg# Here we must recognize all the valid KERNEL-OS combinations. 11695b296d0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11795b296d0Smrgcase $maybe_os in 11814330f12Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 119eca46af7Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12014330f12Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 12114330f12Smrg kopensolaris*-gnu* | \ 12295b296d0Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12395b296d0Smrg os=-$maybe_os 12495b296d0Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12595b296d0Smrg ;; 126eca46af7Smrg android-linux) 127eca46af7Smrg os=-linux-android 128eca46af7Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 129eca46af7Smrg ;; 13095b296d0Smrg *) 13195b296d0Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13295b296d0Smrg if [ $basic_machine != $1 ] 13395b296d0Smrg then os=`echo $1 | sed 's/.*-/-/'` 13495b296d0Smrg else os=; fi 13595b296d0Smrg ;; 13695b296d0Smrgesac 13795b296d0Smrg 13895b296d0Smrg### Let's recognize common machines as not being operating systems so 13995b296d0Smrg### that things like config.sub decstation-3100 work. We also 14095b296d0Smrg### recognize some manufacturers as not being operating systems, so we 14195b296d0Smrg### can provide default operating systems below. 14295b296d0Smrgcase $os in 14395b296d0Smrg -sun*os*) 14495b296d0Smrg # Prevent following clause from handling this invalid input. 14595b296d0Smrg ;; 14695b296d0Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14795b296d0Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14895b296d0Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14995b296d0Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 15095b296d0Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15195b296d0Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 152eca46af7Smrg -apple | -axis | -knuth | -cray | -microblaze*) 15395b296d0Smrg os= 15495b296d0Smrg basic_machine=$1 15595b296d0Smrg ;; 156eca46af7Smrg -bluegene*) 157eca46af7Smrg os=-cnk 15814330f12Smrg ;; 15995b296d0Smrg -sim | -cisco | -oki | -wec | -winbond) 16095b296d0Smrg os= 16195b296d0Smrg basic_machine=$1 16295b296d0Smrg ;; 16395b296d0Smrg -scout) 16495b296d0Smrg ;; 16595b296d0Smrg -wrs) 16695b296d0Smrg os=-vxworks 16795b296d0Smrg basic_machine=$1 16895b296d0Smrg ;; 16995b296d0Smrg -chorusos*) 17095b296d0Smrg os=-chorusos 17195b296d0Smrg basic_machine=$1 17295b296d0Smrg ;; 173eca46af7Smrg -chorusrdb) 174eca46af7Smrg os=-chorusrdb 17595b296d0Smrg basic_machine=$1 176eca46af7Smrg ;; 17795b296d0Smrg -hiux*) 17895b296d0Smrg os=-hiuxwe2 17995b296d0Smrg ;; 18095b296d0Smrg -sco6) 18195b296d0Smrg os=-sco5v6 18295b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18395b296d0Smrg ;; 18495b296d0Smrg -sco5) 18595b296d0Smrg os=-sco3.2v5 18695b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18795b296d0Smrg ;; 18895b296d0Smrg -sco4) 18995b296d0Smrg os=-sco3.2v4 19095b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19195b296d0Smrg ;; 19295b296d0Smrg -sco3.2.[4-9]*) 19395b296d0Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19495b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19595b296d0Smrg ;; 19695b296d0Smrg -sco3.2v[4-9]*) 19795b296d0Smrg # Don't forget version if it is 3.2v4 or newer. 19895b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19995b296d0Smrg ;; 20095b296d0Smrg -sco5v6*) 20195b296d0Smrg # Don't forget version if it is 3.2v4 or newer. 20295b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20395b296d0Smrg ;; 20495b296d0Smrg -sco*) 20595b296d0Smrg os=-sco3.2v2 20695b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20795b296d0Smrg ;; 20895b296d0Smrg -udk*) 20995b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21095b296d0Smrg ;; 21195b296d0Smrg -isc) 21295b296d0Smrg os=-isc2.2 21395b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21495b296d0Smrg ;; 21595b296d0Smrg -clix*) 21695b296d0Smrg basic_machine=clipper-intergraph 21795b296d0Smrg ;; 21895b296d0Smrg -isc*) 21995b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 22095b296d0Smrg ;; 221eca46af7Smrg -lynx*178) 222eca46af7Smrg os=-lynxos178 223eca46af7Smrg ;; 224eca46af7Smrg -lynx*5) 225eca46af7Smrg os=-lynxos5 226eca46af7Smrg ;; 22795b296d0Smrg -lynx*) 22895b296d0Smrg os=-lynxos 22995b296d0Smrg ;; 23095b296d0Smrg -ptx*) 23195b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23295b296d0Smrg ;; 23395b296d0Smrg -windowsnt*) 23495b296d0Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23595b296d0Smrg ;; 23695b296d0Smrg -psos*) 23795b296d0Smrg os=-psos 23895b296d0Smrg ;; 23995b296d0Smrg -mint | -mint[0-9]*) 24095b296d0Smrg basic_machine=m68k-atari 24195b296d0Smrg os=-mint 24295b296d0Smrg ;; 24395b296d0Smrgesac 24495b296d0Smrg 24595b296d0Smrg# Decode aliases for certain CPU-COMPANY combinations. 24695b296d0Smrgcase $basic_machine in 24795b296d0Smrg # Recognize the basic CPU types without company name. 24895b296d0Smrg # Some are omitted here because they have special meanings below. 24995b296d0Smrg 1750a | 580 \ 25095b296d0Smrg | a29k \ 251eca46af7Smrg | aarch64 | aarch64_be \ 25295b296d0Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25395b296d0Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25495b296d0Smrg | am33_2.0 \ 255eca46af7Smrg | arc | arceb \ 256eca46af7Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 257eca46af7Smrg | avr | avr32 \ 258eca46af7Smrg | be32 | be64 \ 25995b296d0Smrg | bfin \ 260eca46af7Smrg | c4x | c8051 | clipper \ 261eca46af7Smrg | d10v | d30v | dlx | dsp16xx | dvp \ 262eca46af7Smrg | epiphany \ 263ff89ac2bSmrg | fido | fr30 | frv \ 26495b296d0Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 265eca46af7Smrg | hexagon \ 26695b296d0Smrg | i370 | i860 | i960 | ia64 \ 26795b296d0Smrg | ip2k | iq2000 \ 268eca46af7Smrg | k1om \ 269eca46af7Smrg | le32 | le64 \ 27014330f12Smrg | lm32 \ 27195b296d0Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 272eca46af7Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27395b296d0Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27495b296d0Smrg | mips16 \ 27595b296d0Smrg | mips64 | mips64el \ 27614330f12Smrg | mips64octeon | mips64octeonel \ 277e6f085baSmrg | mips64orion | mips64orionel \ 27814330f12Smrg | mips64r5900 | mips64r5900el \ 27914330f12Smrg | mips64vr | mips64vrel \ 28095b296d0Smrg | mips64vr4100 | mips64vr4100el \ 28195b296d0Smrg | mips64vr4300 | mips64vr4300el \ 28295b296d0Smrg | mips64vr5000 | mips64vr5000el \ 28395b296d0Smrg | mips64vr5900 | mips64vr5900el \ 28495b296d0Smrg | mipsisa32 | mipsisa32el \ 28595b296d0Smrg | mipsisa32r2 | mipsisa32r2el \ 286eca46af7Smrg | mipsisa32r6 | mipsisa32r6el \ 28795b296d0Smrg | mipsisa64 | mipsisa64el \ 28895b296d0Smrg | mipsisa64r2 | mipsisa64r2el \ 289eca46af7Smrg | mipsisa64r6 | mipsisa64r6el \ 29095b296d0Smrg | mipsisa64sb1 | mipsisa64sb1el \ 29195b296d0Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 292eca46af7Smrg | mipsr5900 | mipsr5900el \ 29395b296d0Smrg | mipstx39 | mipstx39el \ 29495b296d0Smrg | mn10200 | mn10300 \ 29514330f12Smrg | moxie \ 29695b296d0Smrg | mt \ 29795b296d0Smrg | msp430 \ 29814330f12Smrg | nds32 | nds32le | nds32be \ 299eca46af7Smrg | nios | nios2 | nios2eb | nios2el \ 30095b296d0Smrg | ns16k | ns32k \ 301eca46af7Smrg | open8 | or1k | or1knd | or32 \ 30295b296d0Smrg | pdp10 | pdp11 | pj | pjl \ 303eca46af7Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 30495b296d0Smrg | pyramid \ 305eca46af7Smrg | rl78 | rx \ 306ff89ac2bSmrg | score \ 30714330f12Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30895b296d0Smrg | sh64 | sh64le \ 30995b296d0Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 31095b296d0Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 311eca46af7Smrg | spu \ 312eca46af7Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31314330f12Smrg | ubicom32 \ 314eca46af7Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31595b296d0Smrg | we32k \ 316eca46af7Smrg | x86 | xc16x | xstormy16 | xtensa \ 31714330f12Smrg | z8k | z80) 31895b296d0Smrg basic_machine=$basic_machine-unknown 31995b296d0Smrg ;; 32014330f12Smrg c54x) 32114330f12Smrg basic_machine=tic54x-unknown 32214330f12Smrg ;; 32314330f12Smrg c55x) 32414330f12Smrg basic_machine=tic55x-unknown 32514330f12Smrg ;; 32614330f12Smrg c6x) 32714330f12Smrg basic_machine=tic6x-unknown 32814330f12Smrg ;; 329eca46af7Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 33095b296d0Smrg basic_machine=$basic_machine-unknown 33195b296d0Smrg os=-none 33295b296d0Smrg ;; 33395b296d0Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33495b296d0Smrg ;; 33595b296d0Smrg ms1) 33695b296d0Smrg basic_machine=mt-unknown 33795b296d0Smrg ;; 33895b296d0Smrg 339eca46af7Smrg strongarm | thumb | xscale) 340eca46af7Smrg basic_machine=arm-unknown 341eca46af7Smrg ;; 342eca46af7Smrg xgate) 343eca46af7Smrg basic_machine=$basic_machine-unknown 344eca46af7Smrg os=-none 345eca46af7Smrg ;; 346eca46af7Smrg xscaleeb) 347eca46af7Smrg basic_machine=armeb-unknown 348eca46af7Smrg ;; 349eca46af7Smrg 350eca46af7Smrg xscaleel) 351eca46af7Smrg basic_machine=armel-unknown 352eca46af7Smrg ;; 353eca46af7Smrg 35495b296d0Smrg # We use `pc' rather than `unknown' 35595b296d0Smrg # because (1) that's what they normally are, and 35695b296d0Smrg # (2) the word "unknown" tends to confuse beginning users. 35795b296d0Smrg i*86 | x86_64) 35895b296d0Smrg basic_machine=$basic_machine-pc 35995b296d0Smrg ;; 36095b296d0Smrg # Object if more than one company name word. 36195b296d0Smrg *-*-*) 36295b296d0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36395b296d0Smrg exit 1 36495b296d0Smrg ;; 36595b296d0Smrg # Recognize the basic CPU types with company name. 36695b296d0Smrg 580-* \ 36795b296d0Smrg | a29k-* \ 368eca46af7Smrg | aarch64-* | aarch64_be-* \ 36995b296d0Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 37095b296d0Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 371eca46af7Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37295b296d0Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 37395b296d0Smrg | avr-* | avr32-* \ 374eca46af7Smrg | be32-* | be64-* \ 37595b296d0Smrg | bfin-* | bs2000-* \ 37614330f12Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 377eca46af7Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 37895b296d0Smrg | d10v-* | d30v-* | dlx-* \ 37995b296d0Smrg | elxsi-* \ 380ff89ac2bSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38195b296d0Smrg | h8300-* | h8500-* \ 38295b296d0Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 383eca46af7Smrg | hexagon-* \ 38495b296d0Smrg | i*86-* | i860-* | i960-* | ia64-* \ 38595b296d0Smrg | ip2k-* | iq2000-* \ 386eca46af7Smrg | k1om-* \ 387eca46af7Smrg | le32-* | le64-* \ 38814330f12Smrg | lm32-* \ 38995b296d0Smrg | m32c-* | m32r-* | m32rle-* \ 39095b296d0Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 391eca46af7Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 392eca46af7Smrg | microblaze-* | microblazeel-* \ 39395b296d0Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 39495b296d0Smrg | mips16-* \ 39595b296d0Smrg | mips64-* | mips64el-* \ 39614330f12Smrg | mips64octeon-* | mips64octeonel-* \ 397e6f085baSmrg | mips64orion-* | mips64orionel-* \ 39814330f12Smrg | mips64r5900-* | mips64r5900el-* \ 39914330f12Smrg | mips64vr-* | mips64vrel-* \ 40095b296d0Smrg | mips64vr4100-* | mips64vr4100el-* \ 40195b296d0Smrg | mips64vr4300-* | mips64vr4300el-* \ 40295b296d0Smrg | mips64vr5000-* | mips64vr5000el-* \ 40395b296d0Smrg | mips64vr5900-* | mips64vr5900el-* \ 40495b296d0Smrg | mipsisa32-* | mipsisa32el-* \ 40595b296d0Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 406eca46af7Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 40795b296d0Smrg | mipsisa64-* | mipsisa64el-* \ 40895b296d0Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 409eca46af7Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 41095b296d0Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 41195b296d0Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 412eca46af7Smrg | mipsr5900-* | mipsr5900el-* \ 41395b296d0Smrg | mipstx39-* | mipstx39el-* \ 41495b296d0Smrg | mmix-* \ 41595b296d0Smrg | mt-* \ 41695b296d0Smrg | msp430-* \ 41714330f12Smrg | nds32-* | nds32le-* | nds32be-* \ 418eca46af7Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 41995b296d0Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 420eca46af7Smrg | open8-* \ 421eca46af7Smrg | or1k*-* \ 42295b296d0Smrg | orion-* \ 42395b296d0Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 424eca46af7Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 42595b296d0Smrg | pyramid-* \ 426eca46af7Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 42714330f12Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 42895b296d0Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 42995b296d0Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 43095b296d0Smrg | sparclite-* \ 431eca46af7Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 432eca46af7Smrg | tahoe-* \ 433e6f085baSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 434eca46af7Smrg | tile*-* \ 43595b296d0Smrg | tron-* \ 43614330f12Smrg | ubicom32-* \ 437eca46af7Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 438eca46af7Smrg | vax-* \ 43995b296d0Smrg | we32k-* \ 440eca46af7Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 441ff89ac2bSmrg | xstormy16-* | xtensa*-* \ 44295b296d0Smrg | ymp-* \ 44314330f12Smrg | z8k-* | z80-*) 44495b296d0Smrg ;; 445ff89ac2bSmrg # Recognize the basic CPU types without company name, with glob match. 446ff89ac2bSmrg xtensa*) 447ff89ac2bSmrg basic_machine=$basic_machine-unknown 448ff89ac2bSmrg ;; 44995b296d0Smrg # Recognize the various machine names and aliases which stand 45095b296d0Smrg # for a CPU type and a company and sometimes even an OS. 45195b296d0Smrg 386bsd) 45295b296d0Smrg basic_machine=i386-unknown 45395b296d0Smrg os=-bsd 45495b296d0Smrg ;; 45595b296d0Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 45695b296d0Smrg basic_machine=m68000-att 45795b296d0Smrg ;; 45895b296d0Smrg 3b*) 45995b296d0Smrg basic_machine=we32k-att 46095b296d0Smrg ;; 46195b296d0Smrg a29khif) 46295b296d0Smrg basic_machine=a29k-amd 46395b296d0Smrg os=-udi 46495b296d0Smrg ;; 465eca46af7Smrg abacus) 46695b296d0Smrg basic_machine=abacus-unknown 46795b296d0Smrg ;; 46895b296d0Smrg adobe68k) 46995b296d0Smrg basic_machine=m68010-adobe 47095b296d0Smrg os=-scout 47195b296d0Smrg ;; 47295b296d0Smrg alliant | fx80) 47395b296d0Smrg basic_machine=fx80-alliant 47495b296d0Smrg ;; 47595b296d0Smrg altos | altos3068) 47695b296d0Smrg basic_machine=m68k-altos 47795b296d0Smrg ;; 47895b296d0Smrg am29k) 47995b296d0Smrg basic_machine=a29k-none 48095b296d0Smrg os=-bsd 48195b296d0Smrg ;; 48295b296d0Smrg amd64) 48395b296d0Smrg basic_machine=x86_64-pc 48495b296d0Smrg ;; 48595b296d0Smrg amd64-*) 48695b296d0Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 48795b296d0Smrg ;; 48895b296d0Smrg amdahl) 48995b296d0Smrg basic_machine=580-amdahl 49095b296d0Smrg os=-sysv 49195b296d0Smrg ;; 49295b296d0Smrg amiga | amiga-*) 49395b296d0Smrg basic_machine=m68k-unknown 49495b296d0Smrg ;; 49595b296d0Smrg amigaos | amigados) 49695b296d0Smrg basic_machine=m68k-unknown 49795b296d0Smrg os=-amigaos 49895b296d0Smrg ;; 49995b296d0Smrg amigaunix | amix) 50095b296d0Smrg basic_machine=m68k-unknown 50195b296d0Smrg os=-sysv4 50295b296d0Smrg ;; 50395b296d0Smrg apollo68) 50495b296d0Smrg basic_machine=m68k-apollo 50595b296d0Smrg os=-sysv 50695b296d0Smrg ;; 50795b296d0Smrg apollo68bsd) 50895b296d0Smrg basic_machine=m68k-apollo 50995b296d0Smrg os=-bsd 51095b296d0Smrg ;; 51114330f12Smrg aros) 51214330f12Smrg basic_machine=i386-pc 51314330f12Smrg os=-aros 51414330f12Smrg ;; 51595b296d0Smrg aux) 51695b296d0Smrg basic_machine=m68k-apple 51795b296d0Smrg os=-aux 51895b296d0Smrg ;; 51995b296d0Smrg balance) 52095b296d0Smrg basic_machine=ns32k-sequent 52195b296d0Smrg os=-dynix 52295b296d0Smrg ;; 523ff89ac2bSmrg blackfin) 524ff89ac2bSmrg basic_machine=bfin-unknown 525ff89ac2bSmrg os=-linux 526ff89ac2bSmrg ;; 527ff89ac2bSmrg blackfin-*) 528ff89ac2bSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 529ff89ac2bSmrg os=-linux 530ff89ac2bSmrg ;; 53114330f12Smrg bluegene*) 53214330f12Smrg basic_machine=powerpc-ibm 53314330f12Smrg os=-cnk 53414330f12Smrg ;; 53514330f12Smrg c54x-*) 53614330f12Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 53714330f12Smrg ;; 53814330f12Smrg c55x-*) 53914330f12Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 54014330f12Smrg ;; 54114330f12Smrg c6x-*) 54214330f12Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 54314330f12Smrg ;; 54495b296d0Smrg c90) 54595b296d0Smrg basic_machine=c90-cray 54695b296d0Smrg os=-unicos 54795b296d0Smrg ;; 548eca46af7Smrg cegcc) 54914330f12Smrg basic_machine=arm-unknown 55014330f12Smrg os=-cegcc 55114330f12Smrg ;; 55295b296d0Smrg convex-c1) 55395b296d0Smrg basic_machine=c1-convex 55495b296d0Smrg os=-bsd 55595b296d0Smrg ;; 55695b296d0Smrg convex-c2) 55795b296d0Smrg basic_machine=c2-convex 55895b296d0Smrg os=-bsd 55995b296d0Smrg ;; 56095b296d0Smrg convex-c32) 56195b296d0Smrg basic_machine=c32-convex 56295b296d0Smrg os=-bsd 56395b296d0Smrg ;; 56495b296d0Smrg convex-c34) 56595b296d0Smrg basic_machine=c34-convex 56695b296d0Smrg os=-bsd 56795b296d0Smrg ;; 56895b296d0Smrg convex-c38) 56995b296d0Smrg basic_machine=c38-convex 57095b296d0Smrg os=-bsd 57195b296d0Smrg ;; 57295b296d0Smrg cray | j90) 57395b296d0Smrg basic_machine=j90-cray 57495b296d0Smrg os=-unicos 57595b296d0Smrg ;; 57695b296d0Smrg craynv) 57795b296d0Smrg basic_machine=craynv-cray 57895b296d0Smrg os=-unicosmp 57995b296d0Smrg ;; 580eca46af7Smrg cr16 | cr16-*) 581ff89ac2bSmrg basic_machine=cr16-unknown 58295b296d0Smrg os=-elf 58395b296d0Smrg ;; 58495b296d0Smrg crds | unos) 58595b296d0Smrg basic_machine=m68k-crds 58695b296d0Smrg ;; 58795b296d0Smrg crisv32 | crisv32-* | etraxfs*) 58895b296d0Smrg basic_machine=crisv32-axis 58995b296d0Smrg ;; 59095b296d0Smrg cris | cris-* | etrax*) 59195b296d0Smrg basic_machine=cris-axis 59295b296d0Smrg ;; 59395b296d0Smrg crx) 59495b296d0Smrg basic_machine=crx-unknown 59595b296d0Smrg os=-elf 59695b296d0Smrg ;; 59795b296d0Smrg da30 | da30-*) 59895b296d0Smrg basic_machine=m68k-da30 59995b296d0Smrg ;; 60095b296d0Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 60195b296d0Smrg basic_machine=mips-dec 60295b296d0Smrg ;; 60395b296d0Smrg decsystem10* | dec10*) 60495b296d0Smrg basic_machine=pdp10-dec 60595b296d0Smrg os=-tops10 60695b296d0Smrg ;; 60795b296d0Smrg decsystem20* | dec20*) 60895b296d0Smrg basic_machine=pdp10-dec 60995b296d0Smrg os=-tops20 61095b296d0Smrg ;; 61195b296d0Smrg delta | 3300 | motorola-3300 | motorola-delta \ 61295b296d0Smrg | 3300-motorola | delta-motorola) 61395b296d0Smrg basic_machine=m68k-motorola 61495b296d0Smrg ;; 61595b296d0Smrg delta88) 61695b296d0Smrg basic_machine=m88k-motorola 61795b296d0Smrg os=-sysv3 61895b296d0Smrg ;; 61914330f12Smrg dicos) 62014330f12Smrg basic_machine=i686-pc 62114330f12Smrg os=-dicos 62214330f12Smrg ;; 62395b296d0Smrg djgpp) 62495b296d0Smrg basic_machine=i586-pc 62595b296d0Smrg os=-msdosdjgpp 62695b296d0Smrg ;; 62795b296d0Smrg dpx20 | dpx20-*) 62895b296d0Smrg basic_machine=rs6000-bull 62995b296d0Smrg os=-bosx 63095b296d0Smrg ;; 63195b296d0Smrg dpx2* | dpx2*-bull) 63295b296d0Smrg basic_machine=m68k-bull 63395b296d0Smrg os=-sysv3 63495b296d0Smrg ;; 63595b296d0Smrg ebmon29k) 63695b296d0Smrg basic_machine=a29k-amd 63795b296d0Smrg os=-ebmon 63895b296d0Smrg ;; 63995b296d0Smrg elxsi) 64095b296d0Smrg basic_machine=elxsi-elxsi 64195b296d0Smrg os=-bsd 64295b296d0Smrg ;; 64395b296d0Smrg encore | umax | mmax) 64495b296d0Smrg basic_machine=ns32k-encore 64595b296d0Smrg ;; 64695b296d0Smrg es1800 | OSE68k | ose68k | ose | OSE) 64795b296d0Smrg basic_machine=m68k-ericsson 64895b296d0Smrg os=-ose 64995b296d0Smrg ;; 65095b296d0Smrg fx2800) 65195b296d0Smrg basic_machine=i860-alliant 65295b296d0Smrg ;; 65395b296d0Smrg genix) 65495b296d0Smrg basic_machine=ns32k-ns 65595b296d0Smrg ;; 65695b296d0Smrg gmicro) 65795b296d0Smrg basic_machine=tron-gmicro 65895b296d0Smrg os=-sysv 65995b296d0Smrg ;; 66095b296d0Smrg go32) 66195b296d0Smrg basic_machine=i386-pc 66295b296d0Smrg os=-go32 66395b296d0Smrg ;; 66495b296d0Smrg h3050r* | hiux*) 66595b296d0Smrg basic_machine=hppa1.1-hitachi 66695b296d0Smrg os=-hiuxwe2 66795b296d0Smrg ;; 66895b296d0Smrg h8300hms) 66995b296d0Smrg basic_machine=h8300-hitachi 67095b296d0Smrg os=-hms 67195b296d0Smrg ;; 67295b296d0Smrg h8300xray) 67395b296d0Smrg basic_machine=h8300-hitachi 67495b296d0Smrg os=-xray 67595b296d0Smrg ;; 67695b296d0Smrg h8500hms) 67795b296d0Smrg basic_machine=h8500-hitachi 67895b296d0Smrg os=-hms 67995b296d0Smrg ;; 68095b296d0Smrg harris) 68195b296d0Smrg basic_machine=m88k-harris 68295b296d0Smrg os=-sysv3 68395b296d0Smrg ;; 68495b296d0Smrg hp300-*) 68595b296d0Smrg basic_machine=m68k-hp 68695b296d0Smrg ;; 68795b296d0Smrg hp300bsd) 68895b296d0Smrg basic_machine=m68k-hp 68995b296d0Smrg os=-bsd 69095b296d0Smrg ;; 69195b296d0Smrg hp300hpux) 69295b296d0Smrg basic_machine=m68k-hp 69395b296d0Smrg os=-hpux 69495b296d0Smrg ;; 69595b296d0Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 69695b296d0Smrg basic_machine=hppa1.0-hp 69795b296d0Smrg ;; 69895b296d0Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 69995b296d0Smrg basic_machine=m68000-hp 70095b296d0Smrg ;; 70195b296d0Smrg hp9k3[2-9][0-9]) 70295b296d0Smrg basic_machine=m68k-hp 70395b296d0Smrg ;; 70495b296d0Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 70595b296d0Smrg basic_machine=hppa1.0-hp 70695b296d0Smrg ;; 70795b296d0Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 70895b296d0Smrg basic_machine=hppa1.1-hp 70995b296d0Smrg ;; 71095b296d0Smrg hp9k78[0-9] | hp78[0-9]) 71195b296d0Smrg # FIXME: really hppa2.0-hp 71295b296d0Smrg basic_machine=hppa1.1-hp 71395b296d0Smrg ;; 71495b296d0Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 71595b296d0Smrg # FIXME: really hppa2.0-hp 71695b296d0Smrg basic_machine=hppa1.1-hp 71795b296d0Smrg ;; 71895b296d0Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 71995b296d0Smrg basic_machine=hppa1.1-hp 72095b296d0Smrg ;; 72195b296d0Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 72295b296d0Smrg basic_machine=hppa1.0-hp 72395b296d0Smrg ;; 72495b296d0Smrg hppa-next) 72595b296d0Smrg os=-nextstep3 72695b296d0Smrg ;; 72795b296d0Smrg hppaosf) 72895b296d0Smrg basic_machine=hppa1.1-hp 72995b296d0Smrg os=-osf 73095b296d0Smrg ;; 73195b296d0Smrg hppro) 73295b296d0Smrg basic_machine=hppa1.1-hp 73395b296d0Smrg os=-proelf 73495b296d0Smrg ;; 73595b296d0Smrg i370-ibm* | ibm*) 73695b296d0Smrg basic_machine=i370-ibm 73795b296d0Smrg ;; 73895b296d0Smrg i*86v32) 73995b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74095b296d0Smrg os=-sysv32 74195b296d0Smrg ;; 74295b296d0Smrg i*86v4*) 74395b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74495b296d0Smrg os=-sysv4 74595b296d0Smrg ;; 74695b296d0Smrg i*86v) 74795b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 74895b296d0Smrg os=-sysv 74995b296d0Smrg ;; 75095b296d0Smrg i*86sol2) 75195b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75295b296d0Smrg os=-solaris2 75395b296d0Smrg ;; 75495b296d0Smrg i386mach) 75595b296d0Smrg basic_machine=i386-mach 75695b296d0Smrg os=-mach 75795b296d0Smrg ;; 75895b296d0Smrg i386-vsta | vsta) 75995b296d0Smrg basic_machine=i386-unknown 76095b296d0Smrg os=-vsta 76195b296d0Smrg ;; 76295b296d0Smrg iris | iris4d) 76395b296d0Smrg basic_machine=mips-sgi 76495b296d0Smrg case $os in 76595b296d0Smrg -irix*) 76695b296d0Smrg ;; 76795b296d0Smrg *) 76895b296d0Smrg os=-irix4 76995b296d0Smrg ;; 77095b296d0Smrg esac 77195b296d0Smrg ;; 77295b296d0Smrg isi68 | isi) 77395b296d0Smrg basic_machine=m68k-isi 77495b296d0Smrg os=-sysv 77595b296d0Smrg ;; 776ff89ac2bSmrg m68knommu) 777ff89ac2bSmrg basic_machine=m68k-unknown 778ff89ac2bSmrg os=-linux 779ff89ac2bSmrg ;; 780ff89ac2bSmrg m68knommu-*) 781ff89ac2bSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 782ff89ac2bSmrg os=-linux 783ff89ac2bSmrg ;; 78495b296d0Smrg m88k-omron*) 78595b296d0Smrg basic_machine=m88k-omron 78695b296d0Smrg ;; 78795b296d0Smrg magnum | m3230) 78895b296d0Smrg basic_machine=mips-mips 78995b296d0Smrg os=-sysv 79095b296d0Smrg ;; 79195b296d0Smrg merlin) 79295b296d0Smrg basic_machine=ns32k-utek 79395b296d0Smrg os=-sysv 79495b296d0Smrg ;; 795eca46af7Smrg microblaze*) 79614330f12Smrg basic_machine=microblaze-xilinx 79714330f12Smrg ;; 798eca46af7Smrg mingw64) 799eca46af7Smrg basic_machine=x86_64-pc 800eca46af7Smrg os=-mingw64 801eca46af7Smrg ;; 80295b296d0Smrg mingw32) 803eca46af7Smrg basic_machine=i686-pc 80495b296d0Smrg os=-mingw32 80595b296d0Smrg ;; 806ff89ac2bSmrg mingw32ce) 807ff89ac2bSmrg basic_machine=arm-unknown 808ff89ac2bSmrg os=-mingw32ce 809ff89ac2bSmrg ;; 81095b296d0Smrg miniframe) 81195b296d0Smrg basic_machine=m68000-convergent 81295b296d0Smrg ;; 81395b296d0Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 81495b296d0Smrg basic_machine=m68k-atari 81595b296d0Smrg os=-mint 81695b296d0Smrg ;; 817eca46af7Smrg mipsEE* | ee | ps2) 818eca46af7Smrg basic_machine=mips64r5900el-scei 819eca46af7Smrg case $os in 820eca46af7Smrg -linux*) 821eca46af7Smrg ;; 822eca46af7Smrg *) 823eca46af7Smrg os=-elf 824eca46af7Smrg ;; 825eca46af7Smrg esac 826eca46af7Smrg ;; 827eca46af7Smrg iop) 828eca46af7Smrg basic_machine=mipsel-scei 829eca46af7Smrg os=-irx 830eca46af7Smrg ;; 831eca46af7Smrg dvp) 832eca46af7Smrg basic_machine=dvp-scei 833eca46af7Smrg os=-elf 834eca46af7Smrg ;; 83595b296d0Smrg mips3*-*) 83695b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 83795b296d0Smrg ;; 83895b296d0Smrg mips3*) 83995b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 84095b296d0Smrg ;; 84195b296d0Smrg monitor) 84295b296d0Smrg basic_machine=m68k-rom68k 84395b296d0Smrg os=-coff 84495b296d0Smrg ;; 84595b296d0Smrg morphos) 84695b296d0Smrg basic_machine=powerpc-unknown 84795b296d0Smrg os=-morphos 84895b296d0Smrg ;; 849eca46af7Smrg moxiebox) 850eca46af7Smrg basic_machine=moxie-unknown 851eca46af7Smrg os=-moxiebox 852eca46af7Smrg ;; 85395b296d0Smrg msdos) 85495b296d0Smrg basic_machine=i386-pc 85595b296d0Smrg os=-msdos 85695b296d0Smrg ;; 85795b296d0Smrg ms1-*) 85895b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 85995b296d0Smrg ;; 860eca46af7Smrg msys) 861eca46af7Smrg basic_machine=i686-pc 862eca46af7Smrg os=-msys 863eca46af7Smrg ;; 86495b296d0Smrg mvs) 86595b296d0Smrg basic_machine=i370-ibm 86695b296d0Smrg os=-mvs 86795b296d0Smrg ;; 868eca46af7Smrg nacl) 869eca46af7Smrg basic_machine=le32-unknown 870eca46af7Smrg os=-nacl 871eca46af7Smrg ;; 87295b296d0Smrg ncr3000) 87395b296d0Smrg basic_machine=i486-ncr 87495b296d0Smrg os=-sysv4 87595b296d0Smrg ;; 87695b296d0Smrg netbsd386) 87795b296d0Smrg basic_machine=i386-unknown 87895b296d0Smrg os=-netbsd 87995b296d0Smrg ;; 88095b296d0Smrg netwinder) 88195b296d0Smrg basic_machine=armv4l-rebel 88295b296d0Smrg os=-linux 88395b296d0Smrg ;; 88495b296d0Smrg news | news700 | news800 | news900) 88595b296d0Smrg basic_machine=m68k-sony 88695b296d0Smrg os=-newsos 88795b296d0Smrg ;; 88895b296d0Smrg news1000) 88995b296d0Smrg basic_machine=m68030-sony 89095b296d0Smrg os=-newsos 89195b296d0Smrg ;; 89295b296d0Smrg news-3600 | risc-news) 89395b296d0Smrg basic_machine=mips-sony 89495b296d0Smrg os=-newsos 89595b296d0Smrg ;; 89695b296d0Smrg necv70) 89795b296d0Smrg basic_machine=v70-nec 89895b296d0Smrg os=-sysv 89995b296d0Smrg ;; 90095b296d0Smrg next | m*-next ) 90195b296d0Smrg basic_machine=m68k-next 90295b296d0Smrg case $os in 90395b296d0Smrg -nextstep* ) 90495b296d0Smrg ;; 90595b296d0Smrg -ns2*) 90695b296d0Smrg os=-nextstep2 90795b296d0Smrg ;; 90895b296d0Smrg *) 90995b296d0Smrg os=-nextstep3 91095b296d0Smrg ;; 91195b296d0Smrg esac 91295b296d0Smrg ;; 91395b296d0Smrg nh3000) 91495b296d0Smrg basic_machine=m68k-harris 91595b296d0Smrg os=-cxux 91695b296d0Smrg ;; 91795b296d0Smrg nh[45]000) 91895b296d0Smrg basic_machine=m88k-harris 91995b296d0Smrg os=-cxux 92095b296d0Smrg ;; 92195b296d0Smrg nindy960) 92295b296d0Smrg basic_machine=i960-intel 92395b296d0Smrg os=-nindy 92495b296d0Smrg ;; 92595b296d0Smrg mon960) 92695b296d0Smrg basic_machine=i960-intel 92795b296d0Smrg os=-mon960 92895b296d0Smrg ;; 92995b296d0Smrg nonstopux) 93095b296d0Smrg basic_machine=mips-compaq 93195b296d0Smrg os=-nonstopux 93295b296d0Smrg ;; 93395b296d0Smrg np1) 93495b296d0Smrg basic_machine=np1-gould 93595b296d0Smrg ;; 936eca46af7Smrg neo-tandem) 93714330f12Smrg basic_machine=neo-tandem 93814330f12Smrg ;; 939eca46af7Smrg nse-tandem) 94014330f12Smrg basic_machine=nse-tandem 94114330f12Smrg ;; 94295b296d0Smrg nsr-tandem) 94395b296d0Smrg basic_machine=nsr-tandem 94495b296d0Smrg ;; 94595b296d0Smrg op50n-* | op60c-*) 94695b296d0Smrg basic_machine=hppa1.1-oki 94795b296d0Smrg os=-proelf 94895b296d0Smrg ;; 94995b296d0Smrg openrisc | openrisc-*) 95095b296d0Smrg basic_machine=or32-unknown 95195b296d0Smrg ;; 95295b296d0Smrg os400) 95395b296d0Smrg basic_machine=powerpc-ibm 95495b296d0Smrg os=-os400 95595b296d0Smrg ;; 95695b296d0Smrg OSE68000 | ose68000) 95795b296d0Smrg basic_machine=m68000-ericsson 95895b296d0Smrg os=-ose 95995b296d0Smrg ;; 96095b296d0Smrg os68k) 96195b296d0Smrg basic_machine=m68k-none 96295b296d0Smrg os=-os68k 96395b296d0Smrg ;; 96495b296d0Smrg pa-hitachi) 96595b296d0Smrg basic_machine=hppa1.1-hitachi 96695b296d0Smrg os=-hiuxwe2 96795b296d0Smrg ;; 96895b296d0Smrg paragon) 96995b296d0Smrg basic_machine=i860-intel 97095b296d0Smrg os=-osf 97195b296d0Smrg ;; 972ff89ac2bSmrg parisc) 973ff89ac2bSmrg basic_machine=hppa-unknown 974ff89ac2bSmrg os=-linux 975ff89ac2bSmrg ;; 976ff89ac2bSmrg parisc-*) 977ff89ac2bSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 978ff89ac2bSmrg os=-linux 979ff89ac2bSmrg ;; 98095b296d0Smrg pbd) 98195b296d0Smrg basic_machine=sparc-tti 98295b296d0Smrg ;; 98395b296d0Smrg pbb) 98495b296d0Smrg basic_machine=m68k-tti 98595b296d0Smrg ;; 98695b296d0Smrg pc532 | pc532-*) 98795b296d0Smrg basic_machine=ns32k-pc532 98895b296d0Smrg ;; 98995b296d0Smrg pc98) 99095b296d0Smrg basic_machine=i386-pc 99195b296d0Smrg ;; 99295b296d0Smrg pc98-*) 99395b296d0Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 99495b296d0Smrg ;; 99595b296d0Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 99695b296d0Smrg basic_machine=i586-pc 99795b296d0Smrg ;; 99895b296d0Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 99995b296d0Smrg basic_machine=i686-pc 100095b296d0Smrg ;; 100195b296d0Smrg pentiumii | pentium2 | pentiumiii | pentium3) 100295b296d0Smrg basic_machine=i686-pc 100395b296d0Smrg ;; 100495b296d0Smrg pentium4) 100595b296d0Smrg basic_machine=i786-pc 100695b296d0Smrg ;; 100795b296d0Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 100895b296d0Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 100995b296d0Smrg ;; 101095b296d0Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 101195b296d0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 101295b296d0Smrg ;; 101395b296d0Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 101495b296d0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 101595b296d0Smrg ;; 101695b296d0Smrg pentium4-*) 101795b296d0Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 101895b296d0Smrg ;; 101995b296d0Smrg pn) 102095b296d0Smrg basic_machine=pn-gould 102195b296d0Smrg ;; 102295b296d0Smrg power) basic_machine=power-ibm 102395b296d0Smrg ;; 1024eca46af7Smrg ppc | ppcbe) basic_machine=powerpc-unknown 102595b296d0Smrg ;; 1026eca46af7Smrg ppc-* | ppcbe-*) 1027eca46af7Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 102895b296d0Smrg ;; 102995b296d0Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 103095b296d0Smrg basic_machine=powerpcle-unknown 103195b296d0Smrg ;; 103295b296d0Smrg ppcle-* | powerpclittle-*) 103395b296d0Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 103495b296d0Smrg ;; 103595b296d0Smrg ppc64) basic_machine=powerpc64-unknown 103695b296d0Smrg ;; 103795b296d0Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 103895b296d0Smrg ;; 103995b296d0Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 104095b296d0Smrg basic_machine=powerpc64le-unknown 104195b296d0Smrg ;; 104295b296d0Smrg ppc64le-* | powerpc64little-*) 104395b296d0Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 104495b296d0Smrg ;; 104595b296d0Smrg ps2) 104695b296d0Smrg basic_machine=i386-ibm 104795b296d0Smrg ;; 104895b296d0Smrg pw32) 104995b296d0Smrg basic_machine=i586-unknown 105095b296d0Smrg os=-pw32 105195b296d0Smrg ;; 1052eca46af7Smrg rdos | rdos64) 1053eca46af7Smrg basic_machine=x86_64-pc 1054eca46af7Smrg os=-rdos 1055eca46af7Smrg ;; 1056eca46af7Smrg rdos32) 105795b296d0Smrg basic_machine=i386-pc 105895b296d0Smrg os=-rdos 105995b296d0Smrg ;; 106095b296d0Smrg rom68k) 106195b296d0Smrg basic_machine=m68k-rom68k 106295b296d0Smrg os=-coff 106395b296d0Smrg ;; 106495b296d0Smrg rm[46]00) 106595b296d0Smrg basic_machine=mips-siemens 106695b296d0Smrg ;; 106795b296d0Smrg rtpc | rtpc-*) 106895b296d0Smrg basic_machine=romp-ibm 106995b296d0Smrg ;; 107095b296d0Smrg s390 | s390-*) 107195b296d0Smrg basic_machine=s390-ibm 107295b296d0Smrg ;; 107395b296d0Smrg s390x | s390x-*) 107495b296d0Smrg basic_machine=s390x-ibm 107595b296d0Smrg ;; 107695b296d0Smrg sa29200) 107795b296d0Smrg basic_machine=a29k-amd 107895b296d0Smrg os=-udi 107995b296d0Smrg ;; 108095b296d0Smrg sb1) 108195b296d0Smrg basic_machine=mipsisa64sb1-unknown 108295b296d0Smrg ;; 108395b296d0Smrg sb1el) 108495b296d0Smrg basic_machine=mipsisa64sb1el-unknown 108595b296d0Smrg ;; 1086ff89ac2bSmrg sde) 1087ff89ac2bSmrg basic_machine=mipsisa32-sde 1088ff89ac2bSmrg os=-elf 1089ff89ac2bSmrg ;; 109095b296d0Smrg sei) 109195b296d0Smrg basic_machine=mips-sei 109295b296d0Smrg os=-seiux 109395b296d0Smrg ;; 109495b296d0Smrg sequent) 109595b296d0Smrg basic_machine=i386-sequent 109695b296d0Smrg ;; 109795b296d0Smrg sh) 109895b296d0Smrg basic_machine=sh-hitachi 109995b296d0Smrg os=-hms 110095b296d0Smrg ;; 1101ff89ac2bSmrg sh5el) 1102ff89ac2bSmrg basic_machine=sh5le-unknown 1103ff89ac2bSmrg ;; 110495b296d0Smrg sh64) 110595b296d0Smrg basic_machine=sh64-unknown 110695b296d0Smrg ;; 110795b296d0Smrg sparclite-wrs | simso-wrs) 110895b296d0Smrg basic_machine=sparclite-wrs 110995b296d0Smrg os=-vxworks 111095b296d0Smrg ;; 111195b296d0Smrg sps7) 111295b296d0Smrg basic_machine=m68k-bull 111395b296d0Smrg os=-sysv2 111495b296d0Smrg ;; 111595b296d0Smrg spur) 111695b296d0Smrg basic_machine=spur-unknown 111795b296d0Smrg ;; 111895b296d0Smrg st2000) 111995b296d0Smrg basic_machine=m68k-tandem 112095b296d0Smrg ;; 112195b296d0Smrg stratus) 112295b296d0Smrg basic_machine=i860-stratus 112395b296d0Smrg os=-sysv4 112495b296d0Smrg ;; 1125eca46af7Smrg strongarm-* | thumb-*) 1126eca46af7Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1127eca46af7Smrg ;; 112895b296d0Smrg sun2) 112995b296d0Smrg basic_machine=m68000-sun 113095b296d0Smrg ;; 113195b296d0Smrg sun2os3) 113295b296d0Smrg basic_machine=m68000-sun 113395b296d0Smrg os=-sunos3 113495b296d0Smrg ;; 113595b296d0Smrg sun2os4) 113695b296d0Smrg basic_machine=m68000-sun 113795b296d0Smrg os=-sunos4 113895b296d0Smrg ;; 113995b296d0Smrg sun3os3) 114095b296d0Smrg basic_machine=m68k-sun 114195b296d0Smrg os=-sunos3 114295b296d0Smrg ;; 114395b296d0Smrg sun3os4) 114495b296d0Smrg basic_machine=m68k-sun 114595b296d0Smrg os=-sunos4 114695b296d0Smrg ;; 114795b296d0Smrg sun4os3) 114895b296d0Smrg basic_machine=sparc-sun 114995b296d0Smrg os=-sunos3 115095b296d0Smrg ;; 115195b296d0Smrg sun4os4) 115295b296d0Smrg basic_machine=sparc-sun 115395b296d0Smrg os=-sunos4 115495b296d0Smrg ;; 115595b296d0Smrg sun4sol2) 115695b296d0Smrg basic_machine=sparc-sun 115795b296d0Smrg os=-solaris2 115895b296d0Smrg ;; 115995b296d0Smrg sun3 | sun3-*) 116095b296d0Smrg basic_machine=m68k-sun 116195b296d0Smrg ;; 116295b296d0Smrg sun4) 116395b296d0Smrg basic_machine=sparc-sun 116495b296d0Smrg ;; 116595b296d0Smrg sun386 | sun386i | roadrunner) 116695b296d0Smrg basic_machine=i386-sun 116795b296d0Smrg ;; 116895b296d0Smrg sv1) 116995b296d0Smrg basic_machine=sv1-cray 117095b296d0Smrg os=-unicos 117195b296d0Smrg ;; 117295b296d0Smrg symmetry) 117395b296d0Smrg basic_machine=i386-sequent 117495b296d0Smrg os=-dynix 117595b296d0Smrg ;; 117695b296d0Smrg t3e) 117795b296d0Smrg basic_machine=alphaev5-cray 117895b296d0Smrg os=-unicos 117995b296d0Smrg ;; 118095b296d0Smrg t90) 118195b296d0Smrg basic_machine=t90-cray 118295b296d0Smrg os=-unicos 118395b296d0Smrg ;; 1184ff89ac2bSmrg tile*) 1185eca46af7Smrg basic_machine=$basic_machine-unknown 1186ff89ac2bSmrg os=-linux-gnu 1187ff89ac2bSmrg ;; 118895b296d0Smrg tx39) 118995b296d0Smrg basic_machine=mipstx39-unknown 119095b296d0Smrg ;; 119195b296d0Smrg tx39el) 119295b296d0Smrg basic_machine=mipstx39el-unknown 119395b296d0Smrg ;; 119495b296d0Smrg toad1) 119595b296d0Smrg basic_machine=pdp10-xkl 119695b296d0Smrg os=-tops20 119795b296d0Smrg ;; 119895b296d0Smrg tower | tower-32) 119995b296d0Smrg basic_machine=m68k-ncr 120095b296d0Smrg ;; 120195b296d0Smrg tpf) 120295b296d0Smrg basic_machine=s390x-ibm 120395b296d0Smrg os=-tpf 120495b296d0Smrg ;; 120595b296d0Smrg udi29k) 120695b296d0Smrg basic_machine=a29k-amd 120795b296d0Smrg os=-udi 120895b296d0Smrg ;; 120995b296d0Smrg ultra3) 121095b296d0Smrg basic_machine=a29k-nyu 121195b296d0Smrg os=-sym1 121295b296d0Smrg ;; 121395b296d0Smrg v810 | necv810) 121495b296d0Smrg basic_machine=v810-nec 121595b296d0Smrg os=-none 121695b296d0Smrg ;; 121795b296d0Smrg vaxv) 121895b296d0Smrg basic_machine=vax-dec 121995b296d0Smrg os=-sysv 122095b296d0Smrg ;; 122195b296d0Smrg vms) 122295b296d0Smrg basic_machine=vax-dec 122395b296d0Smrg os=-vms 122495b296d0Smrg ;; 122595b296d0Smrg vpp*|vx|vx-*) 122695b296d0Smrg basic_machine=f301-fujitsu 122795b296d0Smrg ;; 122895b296d0Smrg vxworks960) 122995b296d0Smrg basic_machine=i960-wrs 123095b296d0Smrg os=-vxworks 123195b296d0Smrg ;; 123295b296d0Smrg vxworks68) 123395b296d0Smrg basic_machine=m68k-wrs 123495b296d0Smrg os=-vxworks 123595b296d0Smrg ;; 123695b296d0Smrg vxworks29k) 123795b296d0Smrg basic_machine=a29k-wrs 123895b296d0Smrg os=-vxworks 123995b296d0Smrg ;; 124095b296d0Smrg w65*) 124195b296d0Smrg basic_machine=w65-wdc 124295b296d0Smrg os=-none 124395b296d0Smrg ;; 124495b296d0Smrg w89k-*) 124595b296d0Smrg basic_machine=hppa1.1-winbond 124695b296d0Smrg os=-proelf 124795b296d0Smrg ;; 124895b296d0Smrg xbox) 124995b296d0Smrg basic_machine=i686-pc 125095b296d0Smrg os=-mingw32 125195b296d0Smrg ;; 125295b296d0Smrg xps | xps100) 125395b296d0Smrg basic_machine=xps100-honeywell 125495b296d0Smrg ;; 1255eca46af7Smrg xscale-* | xscalee[bl]-*) 1256eca46af7Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1257eca46af7Smrg ;; 125895b296d0Smrg ymp) 125995b296d0Smrg basic_machine=ymp-cray 126095b296d0Smrg os=-unicos 126195b296d0Smrg ;; 126295b296d0Smrg z8k-*-coff) 126395b296d0Smrg basic_machine=z8k-unknown 126495b296d0Smrg os=-sim 126595b296d0Smrg ;; 126614330f12Smrg z80-*-coff) 126714330f12Smrg basic_machine=z80-unknown 126814330f12Smrg os=-sim 126914330f12Smrg ;; 127095b296d0Smrg none) 127195b296d0Smrg basic_machine=none-none 127295b296d0Smrg os=-none 127395b296d0Smrg ;; 127495b296d0Smrg 127595b296d0Smrg# Here we handle the default manufacturer of certain CPU types. It is in 127695b296d0Smrg# some cases the only manufacturer, in others, it is the most popular. 127795b296d0Smrg w89k) 127895b296d0Smrg basic_machine=hppa1.1-winbond 127995b296d0Smrg ;; 128095b296d0Smrg op50n) 128195b296d0Smrg basic_machine=hppa1.1-oki 128295b296d0Smrg ;; 128395b296d0Smrg op60c) 128495b296d0Smrg basic_machine=hppa1.1-oki 128595b296d0Smrg ;; 128695b296d0Smrg romp) 128795b296d0Smrg basic_machine=romp-ibm 128895b296d0Smrg ;; 128995b296d0Smrg mmix) 129095b296d0Smrg basic_machine=mmix-knuth 129195b296d0Smrg ;; 129295b296d0Smrg rs6000) 129395b296d0Smrg basic_machine=rs6000-ibm 129495b296d0Smrg ;; 129595b296d0Smrg vax) 129695b296d0Smrg basic_machine=vax-dec 129795b296d0Smrg ;; 129895b296d0Smrg pdp10) 129995b296d0Smrg # there are many clones, so DEC is not a safe bet 130095b296d0Smrg basic_machine=pdp10-unknown 130195b296d0Smrg ;; 130295b296d0Smrg pdp11) 130395b296d0Smrg basic_machine=pdp11-dec 130495b296d0Smrg ;; 130595b296d0Smrg we32k) 130695b296d0Smrg basic_machine=we32k-att 130795b296d0Smrg ;; 130814330f12Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 130995b296d0Smrg basic_machine=sh-unknown 131095b296d0Smrg ;; 131195b296d0Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 131295b296d0Smrg basic_machine=sparc-sun 131395b296d0Smrg ;; 131495b296d0Smrg cydra) 131595b296d0Smrg basic_machine=cydra-cydrome 131695b296d0Smrg ;; 131795b296d0Smrg orion) 131895b296d0Smrg basic_machine=orion-highlevel 131995b296d0Smrg ;; 132095b296d0Smrg orion105) 132195b296d0Smrg basic_machine=clipper-highlevel 132295b296d0Smrg ;; 132395b296d0Smrg mac | mpw | mac-mpw) 132495b296d0Smrg basic_machine=m68k-apple 132595b296d0Smrg ;; 132695b296d0Smrg pmac | pmac-mpw) 132795b296d0Smrg basic_machine=powerpc-apple 132895b296d0Smrg ;; 132995b296d0Smrg *-unknown) 133095b296d0Smrg # Make sure to match an already-canonicalized machine name. 133195b296d0Smrg ;; 133295b296d0Smrg *) 133395b296d0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 133495b296d0Smrg exit 1 133595b296d0Smrg ;; 133695b296d0Smrgesac 133795b296d0Smrg 133895b296d0Smrg# Here we canonicalize certain aliases for manufacturers. 133995b296d0Smrgcase $basic_machine in 134095b296d0Smrg *-digital*) 134195b296d0Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 134295b296d0Smrg ;; 134395b296d0Smrg *-commodore*) 134495b296d0Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 134595b296d0Smrg ;; 134695b296d0Smrg *) 134795b296d0Smrg ;; 134895b296d0Smrgesac 134995b296d0Smrg 135095b296d0Smrg# Decode manufacturer-specific aliases for certain operating systems. 135195b296d0Smrg 135295b296d0Smrgif [ x"$os" != x"" ] 135395b296d0Smrgthen 135495b296d0Smrgcase $os in 1355eca46af7Smrg # First match some system type aliases 1356eca46af7Smrg # that might get confused with valid system types. 135795b296d0Smrg # -solaris* is a basic system type, with this one exception. 1358eca46af7Smrg -auroraux) 1359eca46af7Smrg os=-auroraux 136014330f12Smrg ;; 136195b296d0Smrg -solaris1 | -solaris1.*) 136295b296d0Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 136395b296d0Smrg ;; 136495b296d0Smrg -solaris) 136595b296d0Smrg os=-solaris2 136695b296d0Smrg ;; 136795b296d0Smrg -svr4*) 136895b296d0Smrg os=-sysv4 136995b296d0Smrg ;; 137095b296d0Smrg -unixware*) 137195b296d0Smrg os=-sysv4.2uw 137295b296d0Smrg ;; 137395b296d0Smrg -gnu/linux*) 137495b296d0Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 137595b296d0Smrg ;; 137695b296d0Smrg # First accept the basic system types. 137795b296d0Smrg # The portable systems comes first. 137895b296d0Smrg # Each alternative MUST END IN A *, to match a version number. 137995b296d0Smrg # -sysv* is not here because it comes later, after sysvr4. 138095b296d0Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 138114330f12Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 138214330f12Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1383eca46af7Smrg | -sym* | -kopensolaris* | -plan9* \ 138495b296d0Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 138514330f12Smrg | -aos* | -aros* \ 138695b296d0Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 138795b296d0Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 138895b296d0Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1389eca46af7Smrg | -bitrig* | -openbsd* | -solidbsd* \ 139095b296d0Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 139195b296d0Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 139295b296d0Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 139395b296d0Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 139414330f12Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1395eca46af7Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1396eca46af7Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1397eca46af7Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 1398eca46af7Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 139995b296d0Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 140095b296d0Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1401eca46af7Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \ 140295b296d0Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 140395b296d0Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 140495b296d0Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1405eca46af7Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) 140695b296d0Smrg # Remember, each alternative MUST END IN *, to match a version number. 140795b296d0Smrg ;; 140895b296d0Smrg -qnx*) 140995b296d0Smrg case $basic_machine in 141095b296d0Smrg x86-* | i*86-*) 141195b296d0Smrg ;; 141295b296d0Smrg *) 141395b296d0Smrg os=-nto$os 141495b296d0Smrg ;; 141595b296d0Smrg esac 141695b296d0Smrg ;; 141795b296d0Smrg -nto-qnx*) 141895b296d0Smrg ;; 141995b296d0Smrg -nto*) 142095b296d0Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 142195b296d0Smrg ;; 142295b296d0Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 142395b296d0Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 142495b296d0Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 142595b296d0Smrg ;; 142695b296d0Smrg -mac*) 142795b296d0Smrg os=`echo $os | sed -e 's|mac|macos|'` 142895b296d0Smrg ;; 142995b296d0Smrg -linux-dietlibc) 143095b296d0Smrg os=-linux-dietlibc 143195b296d0Smrg ;; 143295b296d0Smrg -linux*) 143395b296d0Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 143495b296d0Smrg ;; 143595b296d0Smrg -sunos5*) 143695b296d0Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 143795b296d0Smrg ;; 143895b296d0Smrg -sunos6*) 143995b296d0Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 144095b296d0Smrg ;; 144195b296d0Smrg -opened*) 144295b296d0Smrg os=-openedition 144395b296d0Smrg ;; 1444eca46af7Smrg -os400*) 144595b296d0Smrg os=-os400 144695b296d0Smrg ;; 144795b296d0Smrg -wince*) 144895b296d0Smrg os=-wince 144995b296d0Smrg ;; 145095b296d0Smrg -osfrose*) 145195b296d0Smrg os=-osfrose 145295b296d0Smrg ;; 145395b296d0Smrg -osf*) 145495b296d0Smrg os=-osf 145595b296d0Smrg ;; 145695b296d0Smrg -utek*) 145795b296d0Smrg os=-bsd 145895b296d0Smrg ;; 145995b296d0Smrg -dynix*) 146095b296d0Smrg os=-bsd 146195b296d0Smrg ;; 146295b296d0Smrg -acis*) 146395b296d0Smrg os=-aos 146495b296d0Smrg ;; 146595b296d0Smrg -atheos*) 146695b296d0Smrg os=-atheos 146795b296d0Smrg ;; 146895b296d0Smrg -syllable*) 146995b296d0Smrg os=-syllable 147095b296d0Smrg ;; 147195b296d0Smrg -386bsd) 147295b296d0Smrg os=-bsd 147395b296d0Smrg ;; 147495b296d0Smrg -ctix* | -uts*) 147595b296d0Smrg os=-sysv 147695b296d0Smrg ;; 147795b296d0Smrg -nova*) 147895b296d0Smrg os=-rtmk-nova 147995b296d0Smrg ;; 148095b296d0Smrg -ns2 ) 148195b296d0Smrg os=-nextstep2 148295b296d0Smrg ;; 148395b296d0Smrg -nsk*) 148495b296d0Smrg os=-nsk 148595b296d0Smrg ;; 148695b296d0Smrg # Preserve the version number of sinix5. 148795b296d0Smrg -sinix5.*) 148895b296d0Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 148995b296d0Smrg ;; 149095b296d0Smrg -sinix*) 149195b296d0Smrg os=-sysv4 149295b296d0Smrg ;; 1493eca46af7Smrg -tpf*) 149495b296d0Smrg os=-tpf 149595b296d0Smrg ;; 149695b296d0Smrg -triton*) 149795b296d0Smrg os=-sysv3 149895b296d0Smrg ;; 149995b296d0Smrg -oss*) 150095b296d0Smrg os=-sysv3 150195b296d0Smrg ;; 150295b296d0Smrg -svr4) 150395b296d0Smrg os=-sysv4 150495b296d0Smrg ;; 150595b296d0Smrg -svr3) 150695b296d0Smrg os=-sysv3 150795b296d0Smrg ;; 150895b296d0Smrg -sysvr4) 150995b296d0Smrg os=-sysv4 151095b296d0Smrg ;; 151195b296d0Smrg # This must come after -sysvr4. 151295b296d0Smrg -sysv*) 151395b296d0Smrg ;; 151495b296d0Smrg -ose*) 151595b296d0Smrg os=-ose 151695b296d0Smrg ;; 151795b296d0Smrg -es1800*) 151895b296d0Smrg os=-ose 151995b296d0Smrg ;; 152095b296d0Smrg -xenix) 152195b296d0Smrg os=-xenix 152295b296d0Smrg ;; 152395b296d0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 152495b296d0Smrg os=-mint 152595b296d0Smrg ;; 152695b296d0Smrg -aros*) 152795b296d0Smrg os=-aros 152895b296d0Smrg ;; 152995b296d0Smrg -zvmoe) 153095b296d0Smrg os=-zvmoe 153195b296d0Smrg ;; 153214330f12Smrg -dicos*) 153314330f12Smrg os=-dicos 153414330f12Smrg ;; 1535eca46af7Smrg -nacl*) 1536eca46af7Smrg ;; 153795b296d0Smrg -none) 153895b296d0Smrg ;; 153995b296d0Smrg *) 154095b296d0Smrg # Get rid of the `-' at the beginning of $os. 154195b296d0Smrg os=`echo $os | sed 's/[^-]*-//'` 154295b296d0Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 154395b296d0Smrg exit 1 154495b296d0Smrg ;; 154595b296d0Smrgesac 154695b296d0Smrgelse 154795b296d0Smrg 154895b296d0Smrg# Here we handle the default operating systems that come with various machines. 154995b296d0Smrg# The value should be what the vendor currently ships out the door with their 155095b296d0Smrg# machine or put another way, the most popular os provided with the machine. 155195b296d0Smrg 155295b296d0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 155395b296d0Smrg# "-sun"), then you have to tell the case statement up towards the top 155495b296d0Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 155595b296d0Smrg# will signal an error saying that MANUFACTURER isn't an operating 155695b296d0Smrg# system, and we'll never get to this point. 155795b296d0Smrg 155895b296d0Smrgcase $basic_machine in 1559eca46af7Smrg score-*) 1560ff89ac2bSmrg os=-elf 1561ff89ac2bSmrg ;; 1562eca46af7Smrg spu-*) 156395b296d0Smrg os=-elf 156495b296d0Smrg ;; 156595b296d0Smrg *-acorn) 156695b296d0Smrg os=-riscix1.2 156795b296d0Smrg ;; 156895b296d0Smrg arm*-rebel) 156995b296d0Smrg os=-linux 157095b296d0Smrg ;; 157195b296d0Smrg arm*-semi) 157295b296d0Smrg os=-aout 157395b296d0Smrg ;; 1574eca46af7Smrg c4x-* | tic4x-*) 1575eca46af7Smrg os=-coff 1576eca46af7Smrg ;; 1577eca46af7Smrg c8051-*) 1578eca46af7Smrg os=-elf 1579eca46af7Smrg ;; 1580eca46af7Smrg hexagon-*) 1581eca46af7Smrg os=-elf 158295b296d0Smrg ;; 158314330f12Smrg tic54x-*) 158414330f12Smrg os=-coff 158514330f12Smrg ;; 158614330f12Smrg tic55x-*) 158714330f12Smrg os=-coff 158814330f12Smrg ;; 158914330f12Smrg tic6x-*) 159014330f12Smrg os=-coff 159114330f12Smrg ;; 159295b296d0Smrg # This must come before the *-dec entry. 159395b296d0Smrg pdp10-*) 159495b296d0Smrg os=-tops20 159595b296d0Smrg ;; 159695b296d0Smrg pdp11-*) 159795b296d0Smrg os=-none 159895b296d0Smrg ;; 159995b296d0Smrg *-dec | vax-*) 160095b296d0Smrg os=-ultrix4.2 160195b296d0Smrg ;; 160295b296d0Smrg m68*-apollo) 160395b296d0Smrg os=-domain 160495b296d0Smrg ;; 160595b296d0Smrg i386-sun) 160695b296d0Smrg os=-sunos4.0.2 160795b296d0Smrg ;; 160895b296d0Smrg m68000-sun) 160995b296d0Smrg os=-sunos3 161095b296d0Smrg ;; 161195b296d0Smrg m68*-cisco) 161295b296d0Smrg os=-aout 161395b296d0Smrg ;; 1614eca46af7Smrg mep-*) 1615ff89ac2bSmrg os=-elf 1616ff89ac2bSmrg ;; 161795b296d0Smrg mips*-cisco) 161895b296d0Smrg os=-elf 161995b296d0Smrg ;; 162095b296d0Smrg mips*-*) 162195b296d0Smrg os=-elf 162295b296d0Smrg ;; 162395b296d0Smrg or32-*) 162495b296d0Smrg os=-coff 162595b296d0Smrg ;; 162695b296d0Smrg *-tti) # must be before sparc entry or we get the wrong os. 162795b296d0Smrg os=-sysv3 162895b296d0Smrg ;; 162995b296d0Smrg sparc-* | *-sun) 163095b296d0Smrg os=-sunos4.1.1 163195b296d0Smrg ;; 163295b296d0Smrg *-be) 163395b296d0Smrg os=-beos 163495b296d0Smrg ;; 163595b296d0Smrg *-haiku) 163695b296d0Smrg os=-haiku 163795b296d0Smrg ;; 163895b296d0Smrg *-ibm) 163995b296d0Smrg os=-aix 164095b296d0Smrg ;; 1641eca46af7Smrg *-knuth) 164295b296d0Smrg os=-mmixware 164395b296d0Smrg ;; 164495b296d0Smrg *-wec) 164595b296d0Smrg os=-proelf 164695b296d0Smrg ;; 164795b296d0Smrg *-winbond) 164895b296d0Smrg os=-proelf 164995b296d0Smrg ;; 165095b296d0Smrg *-oki) 165195b296d0Smrg os=-proelf 165295b296d0Smrg ;; 165395b296d0Smrg *-hp) 165495b296d0Smrg os=-hpux 165595b296d0Smrg ;; 165695b296d0Smrg *-hitachi) 165795b296d0Smrg os=-hiux 165895b296d0Smrg ;; 165995b296d0Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 166095b296d0Smrg os=-sysv 166195b296d0Smrg ;; 166295b296d0Smrg *-cbm) 166395b296d0Smrg os=-amigaos 166495b296d0Smrg ;; 166595b296d0Smrg *-dg) 166695b296d0Smrg os=-dgux 166795b296d0Smrg ;; 166895b296d0Smrg *-dolphin) 166995b296d0Smrg os=-sysv3 167095b296d0Smrg ;; 167195b296d0Smrg m68k-ccur) 167295b296d0Smrg os=-rtu 167395b296d0Smrg ;; 167495b296d0Smrg m88k-omron*) 167595b296d0Smrg os=-luna 167695b296d0Smrg ;; 167795b296d0Smrg *-next ) 167895b296d0Smrg os=-nextstep 167995b296d0Smrg ;; 168095b296d0Smrg *-sequent) 168195b296d0Smrg os=-ptx 168295b296d0Smrg ;; 168395b296d0Smrg *-crds) 168495b296d0Smrg os=-unos 168595b296d0Smrg ;; 168695b296d0Smrg *-ns) 168795b296d0Smrg os=-genix 168895b296d0Smrg ;; 168995b296d0Smrg i370-*) 169095b296d0Smrg os=-mvs 169195b296d0Smrg ;; 169295b296d0Smrg *-next) 169395b296d0Smrg os=-nextstep3 169495b296d0Smrg ;; 169595b296d0Smrg *-gould) 169695b296d0Smrg os=-sysv 169795b296d0Smrg ;; 169895b296d0Smrg *-highlevel) 169995b296d0Smrg os=-bsd 170095b296d0Smrg ;; 170195b296d0Smrg *-encore) 170295b296d0Smrg os=-bsd 170395b296d0Smrg ;; 170495b296d0Smrg *-sgi) 170595b296d0Smrg os=-irix 170695b296d0Smrg ;; 170795b296d0Smrg *-siemens) 170895b296d0Smrg os=-sysv4 170995b296d0Smrg ;; 171095b296d0Smrg *-masscomp) 171195b296d0Smrg os=-rtu 171295b296d0Smrg ;; 171395b296d0Smrg f30[01]-fujitsu | f700-fujitsu) 171495b296d0Smrg os=-uxpv 171595b296d0Smrg ;; 171695b296d0Smrg *-rom68k) 171795b296d0Smrg os=-coff 171895b296d0Smrg ;; 171995b296d0Smrg *-*bug) 172095b296d0Smrg os=-coff 172195b296d0Smrg ;; 172295b296d0Smrg *-apple) 172395b296d0Smrg os=-macos 172495b296d0Smrg ;; 172595b296d0Smrg *-atari*) 172695b296d0Smrg os=-mint 172795b296d0Smrg ;; 172895b296d0Smrg *) 172995b296d0Smrg os=-none 173095b296d0Smrg ;; 173195b296d0Smrgesac 173295b296d0Smrgfi 173395b296d0Smrg 173495b296d0Smrg# Here we handle the case where we know the os, and the CPU type, but not the 173595b296d0Smrg# manufacturer. We pick the logical manufacturer. 173695b296d0Smrgvendor=unknown 173795b296d0Smrgcase $basic_machine in 173895b296d0Smrg *-unknown) 173995b296d0Smrg case $os in 174095b296d0Smrg -riscix*) 174195b296d0Smrg vendor=acorn 174295b296d0Smrg ;; 174395b296d0Smrg -sunos*) 174495b296d0Smrg vendor=sun 174595b296d0Smrg ;; 174614330f12Smrg -cnk*|-aix*) 174795b296d0Smrg vendor=ibm 174895b296d0Smrg ;; 174995b296d0Smrg -beos*) 175095b296d0Smrg vendor=be 175195b296d0Smrg ;; 175295b296d0Smrg -hpux*) 175395b296d0Smrg vendor=hp 175495b296d0Smrg ;; 175595b296d0Smrg -mpeix*) 175695b296d0Smrg vendor=hp 175795b296d0Smrg ;; 175895b296d0Smrg -hiux*) 175995b296d0Smrg vendor=hitachi 176095b296d0Smrg ;; 176195b296d0Smrg -unos*) 176295b296d0Smrg vendor=crds 176395b296d0Smrg ;; 176495b296d0Smrg -dgux*) 176595b296d0Smrg vendor=dg 176695b296d0Smrg ;; 176795b296d0Smrg -luna*) 176895b296d0Smrg vendor=omron 176995b296d0Smrg ;; 177095b296d0Smrg -genix*) 177195b296d0Smrg vendor=ns 177295b296d0Smrg ;; 177395b296d0Smrg -mvs* | -opened*) 177495b296d0Smrg vendor=ibm 177595b296d0Smrg ;; 177695b296d0Smrg -os400*) 177795b296d0Smrg vendor=ibm 177895b296d0Smrg ;; 177995b296d0Smrg -ptx*) 178095b296d0Smrg vendor=sequent 178195b296d0Smrg ;; 178295b296d0Smrg -tpf*) 178395b296d0Smrg vendor=ibm 178495b296d0Smrg ;; 178595b296d0Smrg -vxsim* | -vxworks* | -windiss*) 178695b296d0Smrg vendor=wrs 178795b296d0Smrg ;; 178895b296d0Smrg -aux*) 178995b296d0Smrg vendor=apple 179095b296d0Smrg ;; 179195b296d0Smrg -hms*) 179295b296d0Smrg vendor=hitachi 179395b296d0Smrg ;; 179495b296d0Smrg -mpw* | -macos*) 179595b296d0Smrg vendor=apple 179695b296d0Smrg ;; 179795b296d0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 179895b296d0Smrg vendor=atari 179995b296d0Smrg ;; 180095b296d0Smrg -vos*) 180195b296d0Smrg vendor=stratus 180295b296d0Smrg ;; 180395b296d0Smrg esac 180495b296d0Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 180595b296d0Smrg ;; 180695b296d0Smrgesac 180795b296d0Smrg 180895b296d0Smrgecho $basic_machine$os 180995b296d0Smrgexit 181095b296d0Smrg 181195b296d0Smrg# Local variables: 181295b296d0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 181395b296d0Smrg# time-stamp-start: "timestamp='" 181495b296d0Smrg# time-stamp-format: "%:y-%02m-%02d" 181595b296d0Smrg# time-stamp-end: "'" 181695b296d0Smrg# End: 1817