config.sub revision 89b0dc75
195b296d0Smrg#! /bin/sh 295b296d0Smrg# Configuration validation subroutine script. 389b0dc75Smrg# Copyright 1992-2016 Free Software Foundation, Inc. 495b296d0Smrg 589b0dc75Smrgtimestamp='2016-03-30' 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 2889b0dc75Smrg# Please send patches 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: 3689b0dc75Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 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="\ 5689b0dc75SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS 5795b296d0Smrg 5895b296d0SmrgCanonicalize a configuration name. 5995b296d0Smrg 6095b296d0SmrgOperation modes: 6195b296d0Smrg -h, --help print this help, then exit 6295b296d0Smrg -t, --time-stamp print date of last modification, then exit 6395b296d0Smrg -v, --version print version number, then exit 6495b296d0Smrg 6595b296d0SmrgReport bugs and patches to <config-patches@gnu.org>." 6695b296d0Smrg 6795b296d0Smrgversion="\ 6895b296d0SmrgGNU config.sub ($timestamp) 6995b296d0Smrg 7089b0dc75SmrgCopyright 1992-2016 Free Software Foundation, Inc. 7195b296d0Smrg 7295b296d0SmrgThis is free software; see the source for copying conditions. There is NO 7395b296d0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7495b296d0Smrg 7595b296d0Smrghelp=" 7695b296d0SmrgTry \`$me --help' for more information." 7795b296d0Smrg 7895b296d0Smrg# Parse command line 7995b296d0Smrgwhile test $# -gt 0 ; do 8095b296d0Smrg case $1 in 8195b296d0Smrg --time-stamp | --time* | -t ) 8295b296d0Smrg echo "$timestamp" ; exit ;; 8395b296d0Smrg --version | -v ) 8495b296d0Smrg echo "$version" ; exit ;; 8595b296d0Smrg --help | --h* | -h ) 8695b296d0Smrg echo "$usage"; exit ;; 8795b296d0Smrg -- ) # Stop option processing 8895b296d0Smrg shift; break ;; 8995b296d0Smrg - ) # Use stdin as input. 9095b296d0Smrg break ;; 9195b296d0Smrg -* ) 9295b296d0Smrg echo "$me: invalid option $1$help" 9395b296d0Smrg exit 1 ;; 9495b296d0Smrg 9595b296d0Smrg *local*) 9695b296d0Smrg # First pass through any local machine types. 9795b296d0Smrg echo $1 9895b296d0Smrg exit ;; 9995b296d0Smrg 10095b296d0Smrg * ) 10195b296d0Smrg break ;; 10295b296d0Smrg esac 10395b296d0Smrgdone 10495b296d0Smrg 10595b296d0Smrgcase $# in 10695b296d0Smrg 0) echo "$me: missing argument$help" >&2 10795b296d0Smrg exit 1;; 10895b296d0Smrg 1) ;; 10995b296d0Smrg *) echo "$me: too many arguments$help" >&2 11095b296d0Smrg exit 1;; 11195b296d0Smrgesac 11295b296d0Smrg 11395b296d0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11495b296d0Smrg# Here we must recognize all the valid KERNEL-OS combinations. 11595b296d0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11695b296d0Smrgcase $maybe_os in 11714330f12Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 118eca46af7Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 11989b0dc75Smrg knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ 12014330f12Smrg kopensolaris*-gnu* | \ 12195b296d0Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12295b296d0Smrg os=-$maybe_os 12395b296d0Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12495b296d0Smrg ;; 125eca46af7Smrg android-linux) 126eca46af7Smrg os=-linux-android 127eca46af7Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 128eca46af7Smrg ;; 12995b296d0Smrg *) 13095b296d0Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 13195b296d0Smrg if [ $basic_machine != $1 ] 13295b296d0Smrg then os=`echo $1 | sed 's/.*-/-/'` 13395b296d0Smrg else os=; fi 13495b296d0Smrg ;; 13595b296d0Smrgesac 13695b296d0Smrg 13795b296d0Smrg### Let's recognize common machines as not being operating systems so 13895b296d0Smrg### that things like config.sub decstation-3100 work. We also 13995b296d0Smrg### recognize some manufacturers as not being operating systems, so we 14095b296d0Smrg### can provide default operating systems below. 14195b296d0Smrgcase $os in 14295b296d0Smrg -sun*os*) 14395b296d0Smrg # Prevent following clause from handling this invalid input. 14495b296d0Smrg ;; 14595b296d0Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14695b296d0Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14795b296d0Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14895b296d0Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 14995b296d0Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15095b296d0Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 151eca46af7Smrg -apple | -axis | -knuth | -cray | -microblaze*) 15295b296d0Smrg os= 15395b296d0Smrg basic_machine=$1 15495b296d0Smrg ;; 155eca46af7Smrg -bluegene*) 156eca46af7Smrg os=-cnk 15714330f12Smrg ;; 15895b296d0Smrg -sim | -cisco | -oki | -wec | -winbond) 15995b296d0Smrg os= 16095b296d0Smrg basic_machine=$1 16195b296d0Smrg ;; 16295b296d0Smrg -scout) 16395b296d0Smrg ;; 16495b296d0Smrg -wrs) 16595b296d0Smrg os=-vxworks 16695b296d0Smrg basic_machine=$1 16795b296d0Smrg ;; 16895b296d0Smrg -chorusos*) 16995b296d0Smrg os=-chorusos 17095b296d0Smrg basic_machine=$1 17195b296d0Smrg ;; 172eca46af7Smrg -chorusrdb) 173eca46af7Smrg os=-chorusrdb 17495b296d0Smrg basic_machine=$1 175eca46af7Smrg ;; 17695b296d0Smrg -hiux*) 17795b296d0Smrg os=-hiuxwe2 17895b296d0Smrg ;; 17995b296d0Smrg -sco6) 18095b296d0Smrg os=-sco5v6 18195b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18295b296d0Smrg ;; 18395b296d0Smrg -sco5) 18495b296d0Smrg os=-sco3.2v5 18595b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 18695b296d0Smrg ;; 18795b296d0Smrg -sco4) 18895b296d0Smrg os=-sco3.2v4 18995b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19095b296d0Smrg ;; 19195b296d0Smrg -sco3.2.[4-9]*) 19295b296d0Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 19395b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19495b296d0Smrg ;; 19595b296d0Smrg -sco3.2v[4-9]*) 19695b296d0Smrg # Don't forget version if it is 3.2v4 or newer. 19795b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 19895b296d0Smrg ;; 19995b296d0Smrg -sco5v6*) 20095b296d0Smrg # Don't forget version if it is 3.2v4 or newer. 20195b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20295b296d0Smrg ;; 20395b296d0Smrg -sco*) 20495b296d0Smrg os=-sco3.2v2 20595b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20695b296d0Smrg ;; 20795b296d0Smrg -udk*) 20895b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 20995b296d0Smrg ;; 21095b296d0Smrg -isc) 21195b296d0Smrg os=-isc2.2 21295b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21395b296d0Smrg ;; 21495b296d0Smrg -clix*) 21595b296d0Smrg basic_machine=clipper-intergraph 21695b296d0Smrg ;; 21795b296d0Smrg -isc*) 21895b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 21995b296d0Smrg ;; 220eca46af7Smrg -lynx*178) 221eca46af7Smrg os=-lynxos178 222eca46af7Smrg ;; 223eca46af7Smrg -lynx*5) 224eca46af7Smrg os=-lynxos5 225eca46af7Smrg ;; 22695b296d0Smrg -lynx*) 22795b296d0Smrg os=-lynxos 22895b296d0Smrg ;; 22995b296d0Smrg -ptx*) 23095b296d0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 23195b296d0Smrg ;; 23295b296d0Smrg -windowsnt*) 23395b296d0Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 23495b296d0Smrg ;; 23595b296d0Smrg -psos*) 23695b296d0Smrg os=-psos 23795b296d0Smrg ;; 23895b296d0Smrg -mint | -mint[0-9]*) 23995b296d0Smrg basic_machine=m68k-atari 24095b296d0Smrg os=-mint 24195b296d0Smrg ;; 24295b296d0Smrgesac 24395b296d0Smrg 24495b296d0Smrg# Decode aliases for certain CPU-COMPANY combinations. 24595b296d0Smrgcase $basic_machine in 24695b296d0Smrg # Recognize the basic CPU types without company name. 24795b296d0Smrg # Some are omitted here because they have special meanings below. 24895b296d0Smrg 1750a | 580 \ 24995b296d0Smrg | a29k \ 250eca46af7Smrg | aarch64 | aarch64_be \ 25195b296d0Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 25295b296d0Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25395b296d0Smrg | am33_2.0 \ 254eca46af7Smrg | arc | arceb \ 255eca46af7Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 256eca46af7Smrg | avr | avr32 \ 25789b0dc75Smrg | ba \ 258eca46af7Smrg | be32 | be64 \ 25995b296d0Smrg | bfin \ 260eca46af7Smrg | c4x | c8051 | clipper \ 261eca46af7Smrg | d10v | d30v | dlx | dsp16xx | dvp \ 26289b0dc75Smrg | e2k | epiphany \ 26389b0dc75Smrg | fido | fr30 | frv | ft32 \ 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 \ 30589b0dc75Smrg | riscv32 | riscv64 \ 306eca46af7Smrg | rl78 | rx \ 307ff89ac2bSmrg | score \ 30889b0dc75Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30995b296d0Smrg | sh64 | sh64le \ 31095b296d0Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 31195b296d0Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 312eca46af7Smrg | spu \ 313eca46af7Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31414330f12Smrg | ubicom32 \ 315eca46af7Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31689b0dc75Smrg | visium \ 31795b296d0Smrg | we32k \ 318eca46af7Smrg | x86 | xc16x | xstormy16 | xtensa \ 31914330f12Smrg | z8k | z80) 32095b296d0Smrg basic_machine=$basic_machine-unknown 32195b296d0Smrg ;; 32214330f12Smrg c54x) 32314330f12Smrg basic_machine=tic54x-unknown 32414330f12Smrg ;; 32514330f12Smrg c55x) 32614330f12Smrg basic_machine=tic55x-unknown 32714330f12Smrg ;; 32814330f12Smrg c6x) 32914330f12Smrg basic_machine=tic6x-unknown 33014330f12Smrg ;; 33189b0dc75Smrg leon|leon[3-9]) 33289b0dc75Smrg basic_machine=sparc-$basic_machine 33389b0dc75Smrg ;; 334eca46af7Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 33595b296d0Smrg basic_machine=$basic_machine-unknown 33695b296d0Smrg os=-none 33795b296d0Smrg ;; 33895b296d0Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 33995b296d0Smrg ;; 34095b296d0Smrg ms1) 34195b296d0Smrg basic_machine=mt-unknown 34295b296d0Smrg ;; 34395b296d0Smrg 344eca46af7Smrg strongarm | thumb | xscale) 345eca46af7Smrg basic_machine=arm-unknown 346eca46af7Smrg ;; 347eca46af7Smrg xgate) 348eca46af7Smrg basic_machine=$basic_machine-unknown 349eca46af7Smrg os=-none 350eca46af7Smrg ;; 351eca46af7Smrg xscaleeb) 352eca46af7Smrg basic_machine=armeb-unknown 353eca46af7Smrg ;; 354eca46af7Smrg 355eca46af7Smrg xscaleel) 356eca46af7Smrg basic_machine=armel-unknown 357eca46af7Smrg ;; 358eca46af7Smrg 35995b296d0Smrg # We use `pc' rather than `unknown' 36095b296d0Smrg # because (1) that's what they normally are, and 36195b296d0Smrg # (2) the word "unknown" tends to confuse beginning users. 36295b296d0Smrg i*86 | x86_64) 36395b296d0Smrg basic_machine=$basic_machine-pc 36495b296d0Smrg ;; 36595b296d0Smrg # Object if more than one company name word. 36695b296d0Smrg *-*-*) 36795b296d0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 36895b296d0Smrg exit 1 36995b296d0Smrg ;; 37095b296d0Smrg # Recognize the basic CPU types with company name. 37195b296d0Smrg 580-* \ 37295b296d0Smrg | a29k-* \ 373eca46af7Smrg | aarch64-* | aarch64_be-* \ 37495b296d0Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 37595b296d0Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 376eca46af7Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37795b296d0Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 37895b296d0Smrg | avr-* | avr32-* \ 37989b0dc75Smrg | ba-* \ 380eca46af7Smrg | be32-* | be64-* \ 38195b296d0Smrg | bfin-* | bs2000-* \ 38214330f12Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 383eca46af7Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 38495b296d0Smrg | d10v-* | d30v-* | dlx-* \ 38589b0dc75Smrg | e2k-* | elxsi-* \ 386ff89ac2bSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38795b296d0Smrg | h8300-* | h8500-* \ 38895b296d0Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 389eca46af7Smrg | hexagon-* \ 39095b296d0Smrg | i*86-* | i860-* | i960-* | ia64-* \ 39195b296d0Smrg | ip2k-* | iq2000-* \ 392eca46af7Smrg | k1om-* \ 393eca46af7Smrg | le32-* | le64-* \ 39414330f12Smrg | lm32-* \ 39595b296d0Smrg | m32c-* | m32r-* | m32rle-* \ 39695b296d0Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 397eca46af7Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 398eca46af7Smrg | microblaze-* | microblazeel-* \ 39995b296d0Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 40095b296d0Smrg | mips16-* \ 40195b296d0Smrg | mips64-* | mips64el-* \ 40214330f12Smrg | mips64octeon-* | mips64octeonel-* \ 403e6f085baSmrg | mips64orion-* | mips64orionel-* \ 40414330f12Smrg | mips64r5900-* | mips64r5900el-* \ 40514330f12Smrg | mips64vr-* | mips64vrel-* \ 40695b296d0Smrg | mips64vr4100-* | mips64vr4100el-* \ 40795b296d0Smrg | mips64vr4300-* | mips64vr4300el-* \ 40895b296d0Smrg | mips64vr5000-* | mips64vr5000el-* \ 40995b296d0Smrg | mips64vr5900-* | mips64vr5900el-* \ 41095b296d0Smrg | mipsisa32-* | mipsisa32el-* \ 41195b296d0Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 412eca46af7Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 41395b296d0Smrg | mipsisa64-* | mipsisa64el-* \ 41495b296d0Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 415eca46af7Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 41695b296d0Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 41795b296d0Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 418eca46af7Smrg | mipsr5900-* | mipsr5900el-* \ 41995b296d0Smrg | mipstx39-* | mipstx39el-* \ 42095b296d0Smrg | mmix-* \ 42195b296d0Smrg | mt-* \ 42295b296d0Smrg | msp430-* \ 42314330f12Smrg | nds32-* | nds32le-* | nds32be-* \ 424eca46af7Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 42595b296d0Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 426eca46af7Smrg | open8-* \ 427eca46af7Smrg | or1k*-* \ 42895b296d0Smrg | orion-* \ 42995b296d0Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 430eca46af7Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 43195b296d0Smrg | pyramid-* \ 43289b0dc75Smrg | riscv32-* | riscv64-* \ 433eca46af7Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 43414330f12Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 43595b296d0Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 43695b296d0Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 43795b296d0Smrg | sparclite-* \ 43889b0dc75Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ 439eca46af7Smrg | tahoe-* \ 440e6f085baSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 441eca46af7Smrg | tile*-* \ 44295b296d0Smrg | tron-* \ 44314330f12Smrg | ubicom32-* \ 444eca46af7Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 445eca46af7Smrg | vax-* \ 44689b0dc75Smrg | visium-* \ 44795b296d0Smrg | we32k-* \ 448eca46af7Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 449ff89ac2bSmrg | xstormy16-* | xtensa*-* \ 45095b296d0Smrg | ymp-* \ 45114330f12Smrg | z8k-* | z80-*) 45295b296d0Smrg ;; 453ff89ac2bSmrg # Recognize the basic CPU types without company name, with glob match. 454ff89ac2bSmrg xtensa*) 455ff89ac2bSmrg basic_machine=$basic_machine-unknown 456ff89ac2bSmrg ;; 45795b296d0Smrg # Recognize the various machine names and aliases which stand 45895b296d0Smrg # for a CPU type and a company and sometimes even an OS. 45995b296d0Smrg 386bsd) 46095b296d0Smrg basic_machine=i386-unknown 46195b296d0Smrg os=-bsd 46295b296d0Smrg ;; 46395b296d0Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 46495b296d0Smrg basic_machine=m68000-att 46595b296d0Smrg ;; 46695b296d0Smrg 3b*) 46795b296d0Smrg basic_machine=we32k-att 46895b296d0Smrg ;; 46995b296d0Smrg a29khif) 47095b296d0Smrg basic_machine=a29k-amd 47195b296d0Smrg os=-udi 47295b296d0Smrg ;; 473eca46af7Smrg abacus) 47495b296d0Smrg basic_machine=abacus-unknown 47595b296d0Smrg ;; 47695b296d0Smrg adobe68k) 47795b296d0Smrg basic_machine=m68010-adobe 47895b296d0Smrg os=-scout 47995b296d0Smrg ;; 48095b296d0Smrg alliant | fx80) 48195b296d0Smrg basic_machine=fx80-alliant 48295b296d0Smrg ;; 48395b296d0Smrg altos | altos3068) 48495b296d0Smrg basic_machine=m68k-altos 48595b296d0Smrg ;; 48695b296d0Smrg am29k) 48795b296d0Smrg basic_machine=a29k-none 48895b296d0Smrg os=-bsd 48995b296d0Smrg ;; 49095b296d0Smrg amd64) 49195b296d0Smrg basic_machine=x86_64-pc 49295b296d0Smrg ;; 49395b296d0Smrg amd64-*) 49495b296d0Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 49595b296d0Smrg ;; 49695b296d0Smrg amdahl) 49795b296d0Smrg basic_machine=580-amdahl 49895b296d0Smrg os=-sysv 49995b296d0Smrg ;; 50095b296d0Smrg amiga | amiga-*) 50195b296d0Smrg basic_machine=m68k-unknown 50295b296d0Smrg ;; 50395b296d0Smrg amigaos | amigados) 50495b296d0Smrg basic_machine=m68k-unknown 50595b296d0Smrg os=-amigaos 50695b296d0Smrg ;; 50795b296d0Smrg amigaunix | amix) 50895b296d0Smrg basic_machine=m68k-unknown 50995b296d0Smrg os=-sysv4 51095b296d0Smrg ;; 51195b296d0Smrg apollo68) 51295b296d0Smrg basic_machine=m68k-apollo 51395b296d0Smrg os=-sysv 51495b296d0Smrg ;; 51595b296d0Smrg apollo68bsd) 51695b296d0Smrg basic_machine=m68k-apollo 51795b296d0Smrg os=-bsd 51895b296d0Smrg ;; 51914330f12Smrg aros) 52014330f12Smrg basic_machine=i386-pc 52114330f12Smrg os=-aros 52214330f12Smrg ;; 52389b0dc75Smrg asmjs) 52489b0dc75Smrg basic_machine=asmjs-unknown 52589b0dc75Smrg ;; 52695b296d0Smrg aux) 52795b296d0Smrg basic_machine=m68k-apple 52895b296d0Smrg os=-aux 52995b296d0Smrg ;; 53095b296d0Smrg balance) 53195b296d0Smrg basic_machine=ns32k-sequent 53295b296d0Smrg os=-dynix 53395b296d0Smrg ;; 534ff89ac2bSmrg blackfin) 535ff89ac2bSmrg basic_machine=bfin-unknown 536ff89ac2bSmrg os=-linux 537ff89ac2bSmrg ;; 538ff89ac2bSmrg blackfin-*) 539ff89ac2bSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 540ff89ac2bSmrg os=-linux 541ff89ac2bSmrg ;; 54214330f12Smrg bluegene*) 54314330f12Smrg basic_machine=powerpc-ibm 54414330f12Smrg os=-cnk 54514330f12Smrg ;; 54614330f12Smrg c54x-*) 54714330f12Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 54814330f12Smrg ;; 54914330f12Smrg c55x-*) 55014330f12Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 55114330f12Smrg ;; 55214330f12Smrg c6x-*) 55314330f12Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 55414330f12Smrg ;; 55595b296d0Smrg c90) 55695b296d0Smrg basic_machine=c90-cray 55795b296d0Smrg os=-unicos 55895b296d0Smrg ;; 559eca46af7Smrg cegcc) 56014330f12Smrg basic_machine=arm-unknown 56114330f12Smrg os=-cegcc 56214330f12Smrg ;; 56395b296d0Smrg convex-c1) 56495b296d0Smrg basic_machine=c1-convex 56595b296d0Smrg os=-bsd 56695b296d0Smrg ;; 56795b296d0Smrg convex-c2) 56895b296d0Smrg basic_machine=c2-convex 56995b296d0Smrg os=-bsd 57095b296d0Smrg ;; 57195b296d0Smrg convex-c32) 57295b296d0Smrg basic_machine=c32-convex 57395b296d0Smrg os=-bsd 57495b296d0Smrg ;; 57595b296d0Smrg convex-c34) 57695b296d0Smrg basic_machine=c34-convex 57795b296d0Smrg os=-bsd 57895b296d0Smrg ;; 57995b296d0Smrg convex-c38) 58095b296d0Smrg basic_machine=c38-convex 58195b296d0Smrg os=-bsd 58295b296d0Smrg ;; 58395b296d0Smrg cray | j90) 58495b296d0Smrg basic_machine=j90-cray 58595b296d0Smrg os=-unicos 58695b296d0Smrg ;; 58795b296d0Smrg craynv) 58895b296d0Smrg basic_machine=craynv-cray 58995b296d0Smrg os=-unicosmp 59095b296d0Smrg ;; 591eca46af7Smrg cr16 | cr16-*) 592ff89ac2bSmrg basic_machine=cr16-unknown 59395b296d0Smrg os=-elf 59495b296d0Smrg ;; 59595b296d0Smrg crds | unos) 59695b296d0Smrg basic_machine=m68k-crds 59795b296d0Smrg ;; 59895b296d0Smrg crisv32 | crisv32-* | etraxfs*) 59995b296d0Smrg basic_machine=crisv32-axis 60095b296d0Smrg ;; 60195b296d0Smrg cris | cris-* | etrax*) 60295b296d0Smrg basic_machine=cris-axis 60395b296d0Smrg ;; 60495b296d0Smrg crx) 60595b296d0Smrg basic_machine=crx-unknown 60695b296d0Smrg os=-elf 60795b296d0Smrg ;; 60895b296d0Smrg da30 | da30-*) 60995b296d0Smrg basic_machine=m68k-da30 61095b296d0Smrg ;; 61195b296d0Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 61295b296d0Smrg basic_machine=mips-dec 61395b296d0Smrg ;; 61495b296d0Smrg decsystem10* | dec10*) 61595b296d0Smrg basic_machine=pdp10-dec 61695b296d0Smrg os=-tops10 61795b296d0Smrg ;; 61895b296d0Smrg decsystem20* | dec20*) 61995b296d0Smrg basic_machine=pdp10-dec 62095b296d0Smrg os=-tops20 62195b296d0Smrg ;; 62295b296d0Smrg delta | 3300 | motorola-3300 | motorola-delta \ 62395b296d0Smrg | 3300-motorola | delta-motorola) 62495b296d0Smrg basic_machine=m68k-motorola 62595b296d0Smrg ;; 62695b296d0Smrg delta88) 62795b296d0Smrg basic_machine=m88k-motorola 62895b296d0Smrg os=-sysv3 62995b296d0Smrg ;; 63014330f12Smrg dicos) 63114330f12Smrg basic_machine=i686-pc 63214330f12Smrg os=-dicos 63314330f12Smrg ;; 63495b296d0Smrg djgpp) 63595b296d0Smrg basic_machine=i586-pc 63695b296d0Smrg os=-msdosdjgpp 63795b296d0Smrg ;; 63895b296d0Smrg dpx20 | dpx20-*) 63995b296d0Smrg basic_machine=rs6000-bull 64095b296d0Smrg os=-bosx 64195b296d0Smrg ;; 64295b296d0Smrg dpx2* | dpx2*-bull) 64395b296d0Smrg basic_machine=m68k-bull 64495b296d0Smrg os=-sysv3 64595b296d0Smrg ;; 64695b296d0Smrg ebmon29k) 64795b296d0Smrg basic_machine=a29k-amd 64895b296d0Smrg os=-ebmon 64995b296d0Smrg ;; 65095b296d0Smrg elxsi) 65195b296d0Smrg basic_machine=elxsi-elxsi 65295b296d0Smrg os=-bsd 65395b296d0Smrg ;; 65495b296d0Smrg encore | umax | mmax) 65595b296d0Smrg basic_machine=ns32k-encore 65695b296d0Smrg ;; 65795b296d0Smrg es1800 | OSE68k | ose68k | ose | OSE) 65895b296d0Smrg basic_machine=m68k-ericsson 65995b296d0Smrg os=-ose 66095b296d0Smrg ;; 66195b296d0Smrg fx2800) 66295b296d0Smrg basic_machine=i860-alliant 66395b296d0Smrg ;; 66495b296d0Smrg genix) 66595b296d0Smrg basic_machine=ns32k-ns 66695b296d0Smrg ;; 66795b296d0Smrg gmicro) 66895b296d0Smrg basic_machine=tron-gmicro 66995b296d0Smrg os=-sysv 67095b296d0Smrg ;; 67195b296d0Smrg go32) 67295b296d0Smrg basic_machine=i386-pc 67395b296d0Smrg os=-go32 67495b296d0Smrg ;; 67595b296d0Smrg h3050r* | hiux*) 67695b296d0Smrg basic_machine=hppa1.1-hitachi 67795b296d0Smrg os=-hiuxwe2 67895b296d0Smrg ;; 67995b296d0Smrg h8300hms) 68095b296d0Smrg basic_machine=h8300-hitachi 68195b296d0Smrg os=-hms 68295b296d0Smrg ;; 68395b296d0Smrg h8300xray) 68495b296d0Smrg basic_machine=h8300-hitachi 68595b296d0Smrg os=-xray 68695b296d0Smrg ;; 68795b296d0Smrg h8500hms) 68895b296d0Smrg basic_machine=h8500-hitachi 68995b296d0Smrg os=-hms 69095b296d0Smrg ;; 69195b296d0Smrg harris) 69295b296d0Smrg basic_machine=m88k-harris 69395b296d0Smrg os=-sysv3 69495b296d0Smrg ;; 69595b296d0Smrg hp300-*) 69695b296d0Smrg basic_machine=m68k-hp 69795b296d0Smrg ;; 69895b296d0Smrg hp300bsd) 69995b296d0Smrg basic_machine=m68k-hp 70095b296d0Smrg os=-bsd 70195b296d0Smrg ;; 70295b296d0Smrg hp300hpux) 70395b296d0Smrg basic_machine=m68k-hp 70495b296d0Smrg os=-hpux 70595b296d0Smrg ;; 70695b296d0Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 70795b296d0Smrg basic_machine=hppa1.0-hp 70895b296d0Smrg ;; 70995b296d0Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 71095b296d0Smrg basic_machine=m68000-hp 71195b296d0Smrg ;; 71295b296d0Smrg hp9k3[2-9][0-9]) 71395b296d0Smrg basic_machine=m68k-hp 71495b296d0Smrg ;; 71595b296d0Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 71695b296d0Smrg basic_machine=hppa1.0-hp 71795b296d0Smrg ;; 71895b296d0Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 71995b296d0Smrg basic_machine=hppa1.1-hp 72095b296d0Smrg ;; 72195b296d0Smrg hp9k78[0-9] | hp78[0-9]) 72295b296d0Smrg # FIXME: really hppa2.0-hp 72395b296d0Smrg basic_machine=hppa1.1-hp 72495b296d0Smrg ;; 72595b296d0Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 72695b296d0Smrg # FIXME: really hppa2.0-hp 72795b296d0Smrg basic_machine=hppa1.1-hp 72895b296d0Smrg ;; 72995b296d0Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 73095b296d0Smrg basic_machine=hppa1.1-hp 73195b296d0Smrg ;; 73295b296d0Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 73395b296d0Smrg basic_machine=hppa1.0-hp 73495b296d0Smrg ;; 73595b296d0Smrg hppa-next) 73695b296d0Smrg os=-nextstep3 73795b296d0Smrg ;; 73895b296d0Smrg hppaosf) 73995b296d0Smrg basic_machine=hppa1.1-hp 74095b296d0Smrg os=-osf 74195b296d0Smrg ;; 74295b296d0Smrg hppro) 74395b296d0Smrg basic_machine=hppa1.1-hp 74495b296d0Smrg os=-proelf 74595b296d0Smrg ;; 74695b296d0Smrg i370-ibm* | ibm*) 74795b296d0Smrg basic_machine=i370-ibm 74895b296d0Smrg ;; 74995b296d0Smrg i*86v32) 75095b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75195b296d0Smrg os=-sysv32 75295b296d0Smrg ;; 75395b296d0Smrg i*86v4*) 75495b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75595b296d0Smrg os=-sysv4 75695b296d0Smrg ;; 75795b296d0Smrg i*86v) 75895b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 75995b296d0Smrg os=-sysv 76095b296d0Smrg ;; 76195b296d0Smrg i*86sol2) 76295b296d0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 76395b296d0Smrg os=-solaris2 76495b296d0Smrg ;; 76595b296d0Smrg i386mach) 76695b296d0Smrg basic_machine=i386-mach 76795b296d0Smrg os=-mach 76895b296d0Smrg ;; 76995b296d0Smrg i386-vsta | vsta) 77095b296d0Smrg basic_machine=i386-unknown 77195b296d0Smrg os=-vsta 77295b296d0Smrg ;; 77395b296d0Smrg iris | iris4d) 77495b296d0Smrg basic_machine=mips-sgi 77595b296d0Smrg case $os in 77695b296d0Smrg -irix*) 77795b296d0Smrg ;; 77895b296d0Smrg *) 77995b296d0Smrg os=-irix4 78095b296d0Smrg ;; 78195b296d0Smrg esac 78295b296d0Smrg ;; 78395b296d0Smrg isi68 | isi) 78495b296d0Smrg basic_machine=m68k-isi 78595b296d0Smrg os=-sysv 78695b296d0Smrg ;; 78789b0dc75Smrg leon-*|leon[3-9]-*) 78889b0dc75Smrg basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 78989b0dc75Smrg ;; 790ff89ac2bSmrg m68knommu) 791ff89ac2bSmrg basic_machine=m68k-unknown 792ff89ac2bSmrg os=-linux 793ff89ac2bSmrg ;; 794ff89ac2bSmrg m68knommu-*) 795ff89ac2bSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 796ff89ac2bSmrg os=-linux 797ff89ac2bSmrg ;; 79895b296d0Smrg m88k-omron*) 79995b296d0Smrg basic_machine=m88k-omron 80095b296d0Smrg ;; 80195b296d0Smrg magnum | m3230) 80295b296d0Smrg basic_machine=mips-mips 80395b296d0Smrg os=-sysv 80495b296d0Smrg ;; 80595b296d0Smrg merlin) 80695b296d0Smrg basic_machine=ns32k-utek 80795b296d0Smrg os=-sysv 80895b296d0Smrg ;; 809eca46af7Smrg microblaze*) 81014330f12Smrg basic_machine=microblaze-xilinx 81114330f12Smrg ;; 812eca46af7Smrg mingw64) 813eca46af7Smrg basic_machine=x86_64-pc 814eca46af7Smrg os=-mingw64 815eca46af7Smrg ;; 81695b296d0Smrg mingw32) 817eca46af7Smrg basic_machine=i686-pc 81895b296d0Smrg os=-mingw32 81995b296d0Smrg ;; 820ff89ac2bSmrg mingw32ce) 821ff89ac2bSmrg basic_machine=arm-unknown 822ff89ac2bSmrg os=-mingw32ce 823ff89ac2bSmrg ;; 82495b296d0Smrg miniframe) 82595b296d0Smrg basic_machine=m68000-convergent 82695b296d0Smrg ;; 82795b296d0Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 82895b296d0Smrg basic_machine=m68k-atari 82995b296d0Smrg os=-mint 83095b296d0Smrg ;; 831eca46af7Smrg mipsEE* | ee | ps2) 832eca46af7Smrg basic_machine=mips64r5900el-scei 833eca46af7Smrg case $os in 834eca46af7Smrg -linux*) 835eca46af7Smrg ;; 836eca46af7Smrg *) 837eca46af7Smrg os=-elf 838eca46af7Smrg ;; 839eca46af7Smrg esac 840eca46af7Smrg ;; 841eca46af7Smrg iop) 842eca46af7Smrg basic_machine=mipsel-scei 843eca46af7Smrg os=-irx 844eca46af7Smrg ;; 845eca46af7Smrg dvp) 846eca46af7Smrg basic_machine=dvp-scei 847eca46af7Smrg os=-elf 848eca46af7Smrg ;; 84995b296d0Smrg mips3*-*) 85095b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 85195b296d0Smrg ;; 85295b296d0Smrg mips3*) 85395b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 85495b296d0Smrg ;; 85595b296d0Smrg monitor) 85695b296d0Smrg basic_machine=m68k-rom68k 85795b296d0Smrg os=-coff 85895b296d0Smrg ;; 85995b296d0Smrg morphos) 86095b296d0Smrg basic_machine=powerpc-unknown 86195b296d0Smrg os=-morphos 86295b296d0Smrg ;; 863eca46af7Smrg moxiebox) 864eca46af7Smrg basic_machine=moxie-unknown 865eca46af7Smrg os=-moxiebox 866eca46af7Smrg ;; 86795b296d0Smrg msdos) 86895b296d0Smrg basic_machine=i386-pc 86995b296d0Smrg os=-msdos 87095b296d0Smrg ;; 87195b296d0Smrg ms1-*) 87295b296d0Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 87395b296d0Smrg ;; 874eca46af7Smrg msys) 875eca46af7Smrg basic_machine=i686-pc 876eca46af7Smrg os=-msys 877eca46af7Smrg ;; 87895b296d0Smrg mvs) 87995b296d0Smrg basic_machine=i370-ibm 88095b296d0Smrg os=-mvs 88195b296d0Smrg ;; 882eca46af7Smrg nacl) 883eca46af7Smrg basic_machine=le32-unknown 884eca46af7Smrg os=-nacl 885eca46af7Smrg ;; 88695b296d0Smrg ncr3000) 88795b296d0Smrg basic_machine=i486-ncr 88895b296d0Smrg os=-sysv4 88995b296d0Smrg ;; 89095b296d0Smrg netbsd386) 89195b296d0Smrg basic_machine=i386-unknown 89295b296d0Smrg os=-netbsd 89395b296d0Smrg ;; 89495b296d0Smrg netwinder) 89595b296d0Smrg basic_machine=armv4l-rebel 89695b296d0Smrg os=-linux 89795b296d0Smrg ;; 89895b296d0Smrg news | news700 | news800 | news900) 89995b296d0Smrg basic_machine=m68k-sony 90095b296d0Smrg os=-newsos 90195b296d0Smrg ;; 90295b296d0Smrg news1000) 90395b296d0Smrg basic_machine=m68030-sony 90495b296d0Smrg os=-newsos 90595b296d0Smrg ;; 90695b296d0Smrg news-3600 | risc-news) 90795b296d0Smrg basic_machine=mips-sony 90895b296d0Smrg os=-newsos 90995b296d0Smrg ;; 91095b296d0Smrg necv70) 91195b296d0Smrg basic_machine=v70-nec 91295b296d0Smrg os=-sysv 91395b296d0Smrg ;; 91495b296d0Smrg next | m*-next ) 91595b296d0Smrg basic_machine=m68k-next 91695b296d0Smrg case $os in 91795b296d0Smrg -nextstep* ) 91895b296d0Smrg ;; 91995b296d0Smrg -ns2*) 92095b296d0Smrg os=-nextstep2 92195b296d0Smrg ;; 92295b296d0Smrg *) 92395b296d0Smrg os=-nextstep3 92495b296d0Smrg ;; 92595b296d0Smrg esac 92695b296d0Smrg ;; 92795b296d0Smrg nh3000) 92895b296d0Smrg basic_machine=m68k-harris 92995b296d0Smrg os=-cxux 93095b296d0Smrg ;; 93195b296d0Smrg nh[45]000) 93295b296d0Smrg basic_machine=m88k-harris 93395b296d0Smrg os=-cxux 93495b296d0Smrg ;; 93595b296d0Smrg nindy960) 93695b296d0Smrg basic_machine=i960-intel 93795b296d0Smrg os=-nindy 93895b296d0Smrg ;; 93995b296d0Smrg mon960) 94095b296d0Smrg basic_machine=i960-intel 94195b296d0Smrg os=-mon960 94295b296d0Smrg ;; 94395b296d0Smrg nonstopux) 94495b296d0Smrg basic_machine=mips-compaq 94595b296d0Smrg os=-nonstopux 94695b296d0Smrg ;; 94795b296d0Smrg np1) 94895b296d0Smrg basic_machine=np1-gould 94995b296d0Smrg ;; 950eca46af7Smrg neo-tandem) 95114330f12Smrg basic_machine=neo-tandem 95214330f12Smrg ;; 953eca46af7Smrg nse-tandem) 95414330f12Smrg basic_machine=nse-tandem 95514330f12Smrg ;; 95695b296d0Smrg nsr-tandem) 95795b296d0Smrg basic_machine=nsr-tandem 95895b296d0Smrg ;; 95995b296d0Smrg op50n-* | op60c-*) 96095b296d0Smrg basic_machine=hppa1.1-oki 96195b296d0Smrg os=-proelf 96295b296d0Smrg ;; 96395b296d0Smrg openrisc | openrisc-*) 96495b296d0Smrg basic_machine=or32-unknown 96595b296d0Smrg ;; 96695b296d0Smrg os400) 96795b296d0Smrg basic_machine=powerpc-ibm 96895b296d0Smrg os=-os400 96995b296d0Smrg ;; 97095b296d0Smrg OSE68000 | ose68000) 97195b296d0Smrg basic_machine=m68000-ericsson 97295b296d0Smrg os=-ose 97395b296d0Smrg ;; 97495b296d0Smrg os68k) 97595b296d0Smrg basic_machine=m68k-none 97695b296d0Smrg os=-os68k 97795b296d0Smrg ;; 97895b296d0Smrg pa-hitachi) 97995b296d0Smrg basic_machine=hppa1.1-hitachi 98095b296d0Smrg os=-hiuxwe2 98195b296d0Smrg ;; 98295b296d0Smrg paragon) 98395b296d0Smrg basic_machine=i860-intel 98495b296d0Smrg os=-osf 98595b296d0Smrg ;; 986ff89ac2bSmrg parisc) 987ff89ac2bSmrg basic_machine=hppa-unknown 988ff89ac2bSmrg os=-linux 989ff89ac2bSmrg ;; 990ff89ac2bSmrg parisc-*) 991ff89ac2bSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 992ff89ac2bSmrg os=-linux 993ff89ac2bSmrg ;; 99495b296d0Smrg pbd) 99595b296d0Smrg basic_machine=sparc-tti 99695b296d0Smrg ;; 99795b296d0Smrg pbb) 99895b296d0Smrg basic_machine=m68k-tti 99995b296d0Smrg ;; 100095b296d0Smrg pc532 | pc532-*) 100195b296d0Smrg basic_machine=ns32k-pc532 100295b296d0Smrg ;; 100395b296d0Smrg pc98) 100495b296d0Smrg basic_machine=i386-pc 100595b296d0Smrg ;; 100695b296d0Smrg pc98-*) 100795b296d0Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 100895b296d0Smrg ;; 100995b296d0Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 101095b296d0Smrg basic_machine=i586-pc 101195b296d0Smrg ;; 101295b296d0Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 101395b296d0Smrg basic_machine=i686-pc 101495b296d0Smrg ;; 101595b296d0Smrg pentiumii | pentium2 | pentiumiii | pentium3) 101695b296d0Smrg basic_machine=i686-pc 101795b296d0Smrg ;; 101895b296d0Smrg pentium4) 101995b296d0Smrg basic_machine=i786-pc 102095b296d0Smrg ;; 102195b296d0Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 102295b296d0Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 102395b296d0Smrg ;; 102495b296d0Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 102595b296d0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 102695b296d0Smrg ;; 102795b296d0Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 102895b296d0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 102995b296d0Smrg ;; 103095b296d0Smrg pentium4-*) 103195b296d0Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 103295b296d0Smrg ;; 103395b296d0Smrg pn) 103495b296d0Smrg basic_machine=pn-gould 103595b296d0Smrg ;; 103695b296d0Smrg power) basic_machine=power-ibm 103795b296d0Smrg ;; 1038eca46af7Smrg ppc | ppcbe) basic_machine=powerpc-unknown 103995b296d0Smrg ;; 1040eca46af7Smrg ppc-* | ppcbe-*) 1041eca46af7Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 104295b296d0Smrg ;; 104395b296d0Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 104495b296d0Smrg basic_machine=powerpcle-unknown 104595b296d0Smrg ;; 104695b296d0Smrg ppcle-* | powerpclittle-*) 104795b296d0Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 104895b296d0Smrg ;; 104995b296d0Smrg ppc64) basic_machine=powerpc64-unknown 105095b296d0Smrg ;; 105195b296d0Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 105295b296d0Smrg ;; 105395b296d0Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 105495b296d0Smrg basic_machine=powerpc64le-unknown 105595b296d0Smrg ;; 105695b296d0Smrg ppc64le-* | powerpc64little-*) 105795b296d0Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 105895b296d0Smrg ;; 105995b296d0Smrg ps2) 106095b296d0Smrg basic_machine=i386-ibm 106195b296d0Smrg ;; 106295b296d0Smrg pw32) 106395b296d0Smrg basic_machine=i586-unknown 106495b296d0Smrg os=-pw32 106595b296d0Smrg ;; 1066eca46af7Smrg rdos | rdos64) 1067eca46af7Smrg basic_machine=x86_64-pc 1068eca46af7Smrg os=-rdos 1069eca46af7Smrg ;; 1070eca46af7Smrg rdos32) 107195b296d0Smrg basic_machine=i386-pc 107295b296d0Smrg os=-rdos 107395b296d0Smrg ;; 107495b296d0Smrg rom68k) 107595b296d0Smrg basic_machine=m68k-rom68k 107695b296d0Smrg os=-coff 107795b296d0Smrg ;; 107895b296d0Smrg rm[46]00) 107995b296d0Smrg basic_machine=mips-siemens 108095b296d0Smrg ;; 108195b296d0Smrg rtpc | rtpc-*) 108295b296d0Smrg basic_machine=romp-ibm 108395b296d0Smrg ;; 108495b296d0Smrg s390 | s390-*) 108595b296d0Smrg basic_machine=s390-ibm 108695b296d0Smrg ;; 108795b296d0Smrg s390x | s390x-*) 108895b296d0Smrg basic_machine=s390x-ibm 108995b296d0Smrg ;; 109095b296d0Smrg sa29200) 109195b296d0Smrg basic_machine=a29k-amd 109295b296d0Smrg os=-udi 109395b296d0Smrg ;; 109495b296d0Smrg sb1) 109595b296d0Smrg basic_machine=mipsisa64sb1-unknown 109695b296d0Smrg ;; 109795b296d0Smrg sb1el) 109895b296d0Smrg basic_machine=mipsisa64sb1el-unknown 109995b296d0Smrg ;; 1100ff89ac2bSmrg sde) 1101ff89ac2bSmrg basic_machine=mipsisa32-sde 1102ff89ac2bSmrg os=-elf 1103ff89ac2bSmrg ;; 110495b296d0Smrg sei) 110595b296d0Smrg basic_machine=mips-sei 110695b296d0Smrg os=-seiux 110795b296d0Smrg ;; 110895b296d0Smrg sequent) 110995b296d0Smrg basic_machine=i386-sequent 111095b296d0Smrg ;; 111195b296d0Smrg sh) 111295b296d0Smrg basic_machine=sh-hitachi 111395b296d0Smrg os=-hms 111495b296d0Smrg ;; 1115ff89ac2bSmrg sh5el) 1116ff89ac2bSmrg basic_machine=sh5le-unknown 1117ff89ac2bSmrg ;; 111895b296d0Smrg sh64) 111995b296d0Smrg basic_machine=sh64-unknown 112095b296d0Smrg ;; 112195b296d0Smrg sparclite-wrs | simso-wrs) 112295b296d0Smrg basic_machine=sparclite-wrs 112395b296d0Smrg os=-vxworks 112495b296d0Smrg ;; 112595b296d0Smrg sps7) 112695b296d0Smrg basic_machine=m68k-bull 112795b296d0Smrg os=-sysv2 112895b296d0Smrg ;; 112995b296d0Smrg spur) 113095b296d0Smrg basic_machine=spur-unknown 113195b296d0Smrg ;; 113295b296d0Smrg st2000) 113395b296d0Smrg basic_machine=m68k-tandem 113495b296d0Smrg ;; 113595b296d0Smrg stratus) 113695b296d0Smrg basic_machine=i860-stratus 113795b296d0Smrg os=-sysv4 113895b296d0Smrg ;; 1139eca46af7Smrg strongarm-* | thumb-*) 1140eca46af7Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1141eca46af7Smrg ;; 114295b296d0Smrg sun2) 114395b296d0Smrg basic_machine=m68000-sun 114495b296d0Smrg ;; 114595b296d0Smrg sun2os3) 114695b296d0Smrg basic_machine=m68000-sun 114795b296d0Smrg os=-sunos3 114895b296d0Smrg ;; 114995b296d0Smrg sun2os4) 115095b296d0Smrg basic_machine=m68000-sun 115195b296d0Smrg os=-sunos4 115295b296d0Smrg ;; 115395b296d0Smrg sun3os3) 115495b296d0Smrg basic_machine=m68k-sun 115595b296d0Smrg os=-sunos3 115695b296d0Smrg ;; 115795b296d0Smrg sun3os4) 115895b296d0Smrg basic_machine=m68k-sun 115995b296d0Smrg os=-sunos4 116095b296d0Smrg ;; 116195b296d0Smrg sun4os3) 116295b296d0Smrg basic_machine=sparc-sun 116395b296d0Smrg os=-sunos3 116495b296d0Smrg ;; 116595b296d0Smrg sun4os4) 116695b296d0Smrg basic_machine=sparc-sun 116795b296d0Smrg os=-sunos4 116895b296d0Smrg ;; 116995b296d0Smrg sun4sol2) 117095b296d0Smrg basic_machine=sparc-sun 117195b296d0Smrg os=-solaris2 117295b296d0Smrg ;; 117395b296d0Smrg sun3 | sun3-*) 117495b296d0Smrg basic_machine=m68k-sun 117595b296d0Smrg ;; 117695b296d0Smrg sun4) 117795b296d0Smrg basic_machine=sparc-sun 117895b296d0Smrg ;; 117995b296d0Smrg sun386 | sun386i | roadrunner) 118095b296d0Smrg basic_machine=i386-sun 118195b296d0Smrg ;; 118295b296d0Smrg sv1) 118395b296d0Smrg basic_machine=sv1-cray 118495b296d0Smrg os=-unicos 118595b296d0Smrg ;; 118695b296d0Smrg symmetry) 118795b296d0Smrg basic_machine=i386-sequent 118895b296d0Smrg os=-dynix 118995b296d0Smrg ;; 119095b296d0Smrg t3e) 119195b296d0Smrg basic_machine=alphaev5-cray 119295b296d0Smrg os=-unicos 119395b296d0Smrg ;; 119495b296d0Smrg t90) 119595b296d0Smrg basic_machine=t90-cray 119695b296d0Smrg os=-unicos 119795b296d0Smrg ;; 1198ff89ac2bSmrg tile*) 1199eca46af7Smrg basic_machine=$basic_machine-unknown 1200ff89ac2bSmrg os=-linux-gnu 1201ff89ac2bSmrg ;; 120295b296d0Smrg tx39) 120395b296d0Smrg basic_machine=mipstx39-unknown 120495b296d0Smrg ;; 120595b296d0Smrg tx39el) 120695b296d0Smrg basic_machine=mipstx39el-unknown 120795b296d0Smrg ;; 120895b296d0Smrg toad1) 120995b296d0Smrg basic_machine=pdp10-xkl 121095b296d0Smrg os=-tops20 121195b296d0Smrg ;; 121295b296d0Smrg tower | tower-32) 121395b296d0Smrg basic_machine=m68k-ncr 121495b296d0Smrg ;; 121595b296d0Smrg tpf) 121695b296d0Smrg basic_machine=s390x-ibm 121795b296d0Smrg os=-tpf 121895b296d0Smrg ;; 121995b296d0Smrg udi29k) 122095b296d0Smrg basic_machine=a29k-amd 122195b296d0Smrg os=-udi 122295b296d0Smrg ;; 122395b296d0Smrg ultra3) 122495b296d0Smrg basic_machine=a29k-nyu 122595b296d0Smrg os=-sym1 122695b296d0Smrg ;; 122795b296d0Smrg v810 | necv810) 122895b296d0Smrg basic_machine=v810-nec 122995b296d0Smrg os=-none 123095b296d0Smrg ;; 123195b296d0Smrg vaxv) 123295b296d0Smrg basic_machine=vax-dec 123395b296d0Smrg os=-sysv 123495b296d0Smrg ;; 123595b296d0Smrg vms) 123695b296d0Smrg basic_machine=vax-dec 123795b296d0Smrg os=-vms 123895b296d0Smrg ;; 123995b296d0Smrg vpp*|vx|vx-*) 124095b296d0Smrg basic_machine=f301-fujitsu 124195b296d0Smrg ;; 124295b296d0Smrg vxworks960) 124395b296d0Smrg basic_machine=i960-wrs 124495b296d0Smrg os=-vxworks 124595b296d0Smrg ;; 124695b296d0Smrg vxworks68) 124795b296d0Smrg basic_machine=m68k-wrs 124895b296d0Smrg os=-vxworks 124995b296d0Smrg ;; 125095b296d0Smrg vxworks29k) 125195b296d0Smrg basic_machine=a29k-wrs 125295b296d0Smrg os=-vxworks 125395b296d0Smrg ;; 125495b296d0Smrg w65*) 125595b296d0Smrg basic_machine=w65-wdc 125695b296d0Smrg os=-none 125795b296d0Smrg ;; 125895b296d0Smrg w89k-*) 125995b296d0Smrg basic_machine=hppa1.1-winbond 126095b296d0Smrg os=-proelf 126195b296d0Smrg ;; 126295b296d0Smrg xbox) 126395b296d0Smrg basic_machine=i686-pc 126495b296d0Smrg os=-mingw32 126595b296d0Smrg ;; 126695b296d0Smrg xps | xps100) 126795b296d0Smrg basic_machine=xps100-honeywell 126895b296d0Smrg ;; 1269eca46af7Smrg xscale-* | xscalee[bl]-*) 1270eca46af7Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1271eca46af7Smrg ;; 127295b296d0Smrg ymp) 127395b296d0Smrg basic_machine=ymp-cray 127495b296d0Smrg os=-unicos 127595b296d0Smrg ;; 127695b296d0Smrg z8k-*-coff) 127795b296d0Smrg basic_machine=z8k-unknown 127895b296d0Smrg os=-sim 127995b296d0Smrg ;; 128014330f12Smrg z80-*-coff) 128114330f12Smrg basic_machine=z80-unknown 128214330f12Smrg os=-sim 128314330f12Smrg ;; 128495b296d0Smrg none) 128595b296d0Smrg basic_machine=none-none 128695b296d0Smrg os=-none 128795b296d0Smrg ;; 128895b296d0Smrg 128995b296d0Smrg# Here we handle the default manufacturer of certain CPU types. It is in 129095b296d0Smrg# some cases the only manufacturer, in others, it is the most popular. 129195b296d0Smrg w89k) 129295b296d0Smrg basic_machine=hppa1.1-winbond 129395b296d0Smrg ;; 129495b296d0Smrg op50n) 129595b296d0Smrg basic_machine=hppa1.1-oki 129695b296d0Smrg ;; 129795b296d0Smrg op60c) 129895b296d0Smrg basic_machine=hppa1.1-oki 129995b296d0Smrg ;; 130095b296d0Smrg romp) 130195b296d0Smrg basic_machine=romp-ibm 130295b296d0Smrg ;; 130395b296d0Smrg mmix) 130495b296d0Smrg basic_machine=mmix-knuth 130595b296d0Smrg ;; 130695b296d0Smrg rs6000) 130795b296d0Smrg basic_machine=rs6000-ibm 130895b296d0Smrg ;; 130995b296d0Smrg vax) 131095b296d0Smrg basic_machine=vax-dec 131195b296d0Smrg ;; 131295b296d0Smrg pdp10) 131395b296d0Smrg # there are many clones, so DEC is not a safe bet 131495b296d0Smrg basic_machine=pdp10-unknown 131595b296d0Smrg ;; 131695b296d0Smrg pdp11) 131795b296d0Smrg basic_machine=pdp11-dec 131895b296d0Smrg ;; 131995b296d0Smrg we32k) 132095b296d0Smrg basic_machine=we32k-att 132195b296d0Smrg ;; 132214330f12Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 132395b296d0Smrg basic_machine=sh-unknown 132495b296d0Smrg ;; 132595b296d0Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 132695b296d0Smrg basic_machine=sparc-sun 132795b296d0Smrg ;; 132895b296d0Smrg cydra) 132995b296d0Smrg basic_machine=cydra-cydrome 133095b296d0Smrg ;; 133195b296d0Smrg orion) 133295b296d0Smrg basic_machine=orion-highlevel 133395b296d0Smrg ;; 133495b296d0Smrg orion105) 133595b296d0Smrg basic_machine=clipper-highlevel 133695b296d0Smrg ;; 133795b296d0Smrg mac | mpw | mac-mpw) 133895b296d0Smrg basic_machine=m68k-apple 133995b296d0Smrg ;; 134095b296d0Smrg pmac | pmac-mpw) 134195b296d0Smrg basic_machine=powerpc-apple 134295b296d0Smrg ;; 134395b296d0Smrg *-unknown) 134495b296d0Smrg # Make sure to match an already-canonicalized machine name. 134595b296d0Smrg ;; 134695b296d0Smrg *) 134795b296d0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 134895b296d0Smrg exit 1 134995b296d0Smrg ;; 135095b296d0Smrgesac 135195b296d0Smrg 135295b296d0Smrg# Here we canonicalize certain aliases for manufacturers. 135395b296d0Smrgcase $basic_machine in 135495b296d0Smrg *-digital*) 135595b296d0Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 135695b296d0Smrg ;; 135795b296d0Smrg *-commodore*) 135895b296d0Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 135995b296d0Smrg ;; 136095b296d0Smrg *) 136195b296d0Smrg ;; 136295b296d0Smrgesac 136395b296d0Smrg 136495b296d0Smrg# Decode manufacturer-specific aliases for certain operating systems. 136595b296d0Smrg 136695b296d0Smrgif [ x"$os" != x"" ] 136795b296d0Smrgthen 136895b296d0Smrgcase $os in 1369eca46af7Smrg # First match some system type aliases 1370eca46af7Smrg # that might get confused with valid system types. 137195b296d0Smrg # -solaris* is a basic system type, with this one exception. 1372eca46af7Smrg -auroraux) 1373eca46af7Smrg os=-auroraux 137414330f12Smrg ;; 137595b296d0Smrg -solaris1 | -solaris1.*) 137695b296d0Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 137795b296d0Smrg ;; 137895b296d0Smrg -solaris) 137995b296d0Smrg os=-solaris2 138095b296d0Smrg ;; 138195b296d0Smrg -svr4*) 138295b296d0Smrg os=-sysv4 138395b296d0Smrg ;; 138495b296d0Smrg -unixware*) 138595b296d0Smrg os=-sysv4.2uw 138695b296d0Smrg ;; 138795b296d0Smrg -gnu/linux*) 138895b296d0Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 138995b296d0Smrg ;; 139095b296d0Smrg # First accept the basic system types. 139195b296d0Smrg # The portable systems comes first. 139295b296d0Smrg # Each alternative MUST END IN A *, to match a version number. 139395b296d0Smrg # -sysv* is not here because it comes later, after sysvr4. 139495b296d0Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 139514330f12Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 139614330f12Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1397eca46af7Smrg | -sym* | -kopensolaris* | -plan9* \ 139895b296d0Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 139989b0dc75Smrg | -aos* | -aros* | -cloudabi* | -sortix* \ 140095b296d0Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 140195b296d0Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 140295b296d0Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 140389b0dc75Smrg | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ 140495b296d0Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 140595b296d0Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 140695b296d0Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 140795b296d0Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 140814330f12Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1409eca46af7Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1410eca46af7Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1411eca46af7Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 1412eca46af7Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 141395b296d0Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 141495b296d0Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1415eca46af7Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -irx* \ 141695b296d0Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 141795b296d0Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 141895b296d0Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 141989b0dc75Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ 142089b0dc75Smrg | -onefs* | -tirtos*) 142195b296d0Smrg # Remember, each alternative MUST END IN *, to match a version number. 142295b296d0Smrg ;; 142395b296d0Smrg -qnx*) 142495b296d0Smrg case $basic_machine in 142595b296d0Smrg x86-* | i*86-*) 142695b296d0Smrg ;; 142795b296d0Smrg *) 142895b296d0Smrg os=-nto$os 142995b296d0Smrg ;; 143095b296d0Smrg esac 143195b296d0Smrg ;; 143295b296d0Smrg -nto-qnx*) 143395b296d0Smrg ;; 143495b296d0Smrg -nto*) 143595b296d0Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 143695b296d0Smrg ;; 143795b296d0Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 143895b296d0Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 143995b296d0Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 144095b296d0Smrg ;; 144195b296d0Smrg -mac*) 144295b296d0Smrg os=`echo $os | sed -e 's|mac|macos|'` 144395b296d0Smrg ;; 144495b296d0Smrg -linux-dietlibc) 144595b296d0Smrg os=-linux-dietlibc 144695b296d0Smrg ;; 144795b296d0Smrg -linux*) 144895b296d0Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 144995b296d0Smrg ;; 145095b296d0Smrg -sunos5*) 145195b296d0Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 145295b296d0Smrg ;; 145395b296d0Smrg -sunos6*) 145495b296d0Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 145595b296d0Smrg ;; 145695b296d0Smrg -opened*) 145795b296d0Smrg os=-openedition 145895b296d0Smrg ;; 1459eca46af7Smrg -os400*) 146095b296d0Smrg os=-os400 146195b296d0Smrg ;; 146295b296d0Smrg -wince*) 146395b296d0Smrg os=-wince 146495b296d0Smrg ;; 146595b296d0Smrg -osfrose*) 146695b296d0Smrg os=-osfrose 146795b296d0Smrg ;; 146895b296d0Smrg -osf*) 146995b296d0Smrg os=-osf 147095b296d0Smrg ;; 147195b296d0Smrg -utek*) 147295b296d0Smrg os=-bsd 147395b296d0Smrg ;; 147495b296d0Smrg -dynix*) 147595b296d0Smrg os=-bsd 147695b296d0Smrg ;; 147795b296d0Smrg -acis*) 147895b296d0Smrg os=-aos 147995b296d0Smrg ;; 148095b296d0Smrg -atheos*) 148195b296d0Smrg os=-atheos 148295b296d0Smrg ;; 148395b296d0Smrg -syllable*) 148495b296d0Smrg os=-syllable 148595b296d0Smrg ;; 148695b296d0Smrg -386bsd) 148795b296d0Smrg os=-bsd 148895b296d0Smrg ;; 148995b296d0Smrg -ctix* | -uts*) 149095b296d0Smrg os=-sysv 149195b296d0Smrg ;; 149295b296d0Smrg -nova*) 149395b296d0Smrg os=-rtmk-nova 149495b296d0Smrg ;; 149595b296d0Smrg -ns2 ) 149695b296d0Smrg os=-nextstep2 149795b296d0Smrg ;; 149895b296d0Smrg -nsk*) 149995b296d0Smrg os=-nsk 150095b296d0Smrg ;; 150195b296d0Smrg # Preserve the version number of sinix5. 150295b296d0Smrg -sinix5.*) 150395b296d0Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 150495b296d0Smrg ;; 150595b296d0Smrg -sinix*) 150695b296d0Smrg os=-sysv4 150795b296d0Smrg ;; 1508eca46af7Smrg -tpf*) 150995b296d0Smrg os=-tpf 151095b296d0Smrg ;; 151195b296d0Smrg -triton*) 151295b296d0Smrg os=-sysv3 151395b296d0Smrg ;; 151495b296d0Smrg -oss*) 151595b296d0Smrg os=-sysv3 151695b296d0Smrg ;; 151795b296d0Smrg -svr4) 151895b296d0Smrg os=-sysv4 151995b296d0Smrg ;; 152095b296d0Smrg -svr3) 152195b296d0Smrg os=-sysv3 152295b296d0Smrg ;; 152395b296d0Smrg -sysvr4) 152495b296d0Smrg os=-sysv4 152595b296d0Smrg ;; 152695b296d0Smrg # This must come after -sysvr4. 152795b296d0Smrg -sysv*) 152895b296d0Smrg ;; 152995b296d0Smrg -ose*) 153095b296d0Smrg os=-ose 153195b296d0Smrg ;; 153295b296d0Smrg -es1800*) 153395b296d0Smrg os=-ose 153495b296d0Smrg ;; 153595b296d0Smrg -xenix) 153695b296d0Smrg os=-xenix 153795b296d0Smrg ;; 153895b296d0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 153995b296d0Smrg os=-mint 154095b296d0Smrg ;; 154195b296d0Smrg -aros*) 154295b296d0Smrg os=-aros 154395b296d0Smrg ;; 154495b296d0Smrg -zvmoe) 154595b296d0Smrg os=-zvmoe 154695b296d0Smrg ;; 154714330f12Smrg -dicos*) 154814330f12Smrg os=-dicos 154914330f12Smrg ;; 1550eca46af7Smrg -nacl*) 1551eca46af7Smrg ;; 155289b0dc75Smrg -ios) 155389b0dc75Smrg ;; 155495b296d0Smrg -none) 155595b296d0Smrg ;; 155695b296d0Smrg *) 155795b296d0Smrg # Get rid of the `-' at the beginning of $os. 155895b296d0Smrg os=`echo $os | sed 's/[^-]*-//'` 155995b296d0Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 156095b296d0Smrg exit 1 156195b296d0Smrg ;; 156295b296d0Smrgesac 156395b296d0Smrgelse 156495b296d0Smrg 156595b296d0Smrg# Here we handle the default operating systems that come with various machines. 156695b296d0Smrg# The value should be what the vendor currently ships out the door with their 156795b296d0Smrg# machine or put another way, the most popular os provided with the machine. 156895b296d0Smrg 156995b296d0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 157095b296d0Smrg# "-sun"), then you have to tell the case statement up towards the top 157195b296d0Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 157295b296d0Smrg# will signal an error saying that MANUFACTURER isn't an operating 157395b296d0Smrg# system, and we'll never get to this point. 157495b296d0Smrg 157595b296d0Smrgcase $basic_machine in 1576eca46af7Smrg score-*) 1577ff89ac2bSmrg os=-elf 1578ff89ac2bSmrg ;; 1579eca46af7Smrg spu-*) 158095b296d0Smrg os=-elf 158195b296d0Smrg ;; 158295b296d0Smrg *-acorn) 158395b296d0Smrg os=-riscix1.2 158495b296d0Smrg ;; 158595b296d0Smrg arm*-rebel) 158695b296d0Smrg os=-linux 158795b296d0Smrg ;; 158895b296d0Smrg arm*-semi) 158995b296d0Smrg os=-aout 159095b296d0Smrg ;; 1591eca46af7Smrg c4x-* | tic4x-*) 1592eca46af7Smrg os=-coff 1593eca46af7Smrg ;; 1594eca46af7Smrg c8051-*) 1595eca46af7Smrg os=-elf 1596eca46af7Smrg ;; 1597eca46af7Smrg hexagon-*) 1598eca46af7Smrg os=-elf 159995b296d0Smrg ;; 160014330f12Smrg tic54x-*) 160114330f12Smrg os=-coff 160214330f12Smrg ;; 160314330f12Smrg tic55x-*) 160414330f12Smrg os=-coff 160514330f12Smrg ;; 160614330f12Smrg tic6x-*) 160714330f12Smrg os=-coff 160814330f12Smrg ;; 160995b296d0Smrg # This must come before the *-dec entry. 161095b296d0Smrg pdp10-*) 161195b296d0Smrg os=-tops20 161295b296d0Smrg ;; 161395b296d0Smrg pdp11-*) 161495b296d0Smrg os=-none 161595b296d0Smrg ;; 161695b296d0Smrg *-dec | vax-*) 161795b296d0Smrg os=-ultrix4.2 161895b296d0Smrg ;; 161995b296d0Smrg m68*-apollo) 162095b296d0Smrg os=-domain 162195b296d0Smrg ;; 162295b296d0Smrg i386-sun) 162395b296d0Smrg os=-sunos4.0.2 162495b296d0Smrg ;; 162595b296d0Smrg m68000-sun) 162695b296d0Smrg os=-sunos3 162795b296d0Smrg ;; 162895b296d0Smrg m68*-cisco) 162995b296d0Smrg os=-aout 163095b296d0Smrg ;; 1631eca46af7Smrg mep-*) 1632ff89ac2bSmrg os=-elf 1633ff89ac2bSmrg ;; 163495b296d0Smrg mips*-cisco) 163595b296d0Smrg os=-elf 163695b296d0Smrg ;; 163795b296d0Smrg mips*-*) 163895b296d0Smrg os=-elf 163995b296d0Smrg ;; 164095b296d0Smrg or32-*) 164195b296d0Smrg os=-coff 164295b296d0Smrg ;; 164395b296d0Smrg *-tti) # must be before sparc entry or we get the wrong os. 164495b296d0Smrg os=-sysv3 164595b296d0Smrg ;; 164695b296d0Smrg sparc-* | *-sun) 164795b296d0Smrg os=-sunos4.1.1 164895b296d0Smrg ;; 164995b296d0Smrg *-be) 165095b296d0Smrg os=-beos 165195b296d0Smrg ;; 165295b296d0Smrg *-haiku) 165395b296d0Smrg os=-haiku 165495b296d0Smrg ;; 165595b296d0Smrg *-ibm) 165695b296d0Smrg os=-aix 165795b296d0Smrg ;; 1658eca46af7Smrg *-knuth) 165995b296d0Smrg os=-mmixware 166095b296d0Smrg ;; 166195b296d0Smrg *-wec) 166295b296d0Smrg os=-proelf 166395b296d0Smrg ;; 166495b296d0Smrg *-winbond) 166595b296d0Smrg os=-proelf 166695b296d0Smrg ;; 166795b296d0Smrg *-oki) 166895b296d0Smrg os=-proelf 166995b296d0Smrg ;; 167095b296d0Smrg *-hp) 167195b296d0Smrg os=-hpux 167295b296d0Smrg ;; 167395b296d0Smrg *-hitachi) 167495b296d0Smrg os=-hiux 167595b296d0Smrg ;; 167695b296d0Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 167795b296d0Smrg os=-sysv 167895b296d0Smrg ;; 167995b296d0Smrg *-cbm) 168095b296d0Smrg os=-amigaos 168195b296d0Smrg ;; 168295b296d0Smrg *-dg) 168395b296d0Smrg os=-dgux 168495b296d0Smrg ;; 168595b296d0Smrg *-dolphin) 168695b296d0Smrg os=-sysv3 168795b296d0Smrg ;; 168895b296d0Smrg m68k-ccur) 168995b296d0Smrg os=-rtu 169095b296d0Smrg ;; 169195b296d0Smrg m88k-omron*) 169295b296d0Smrg os=-luna 169395b296d0Smrg ;; 169495b296d0Smrg *-next ) 169595b296d0Smrg os=-nextstep 169695b296d0Smrg ;; 169795b296d0Smrg *-sequent) 169895b296d0Smrg os=-ptx 169995b296d0Smrg ;; 170095b296d0Smrg *-crds) 170195b296d0Smrg os=-unos 170295b296d0Smrg ;; 170395b296d0Smrg *-ns) 170495b296d0Smrg os=-genix 170595b296d0Smrg ;; 170695b296d0Smrg i370-*) 170795b296d0Smrg os=-mvs 170895b296d0Smrg ;; 170995b296d0Smrg *-next) 171095b296d0Smrg os=-nextstep3 171195b296d0Smrg ;; 171295b296d0Smrg *-gould) 171395b296d0Smrg os=-sysv 171495b296d0Smrg ;; 171595b296d0Smrg *-highlevel) 171695b296d0Smrg os=-bsd 171795b296d0Smrg ;; 171895b296d0Smrg *-encore) 171995b296d0Smrg os=-bsd 172095b296d0Smrg ;; 172195b296d0Smrg *-sgi) 172295b296d0Smrg os=-irix 172395b296d0Smrg ;; 172495b296d0Smrg *-siemens) 172595b296d0Smrg os=-sysv4 172695b296d0Smrg ;; 172795b296d0Smrg *-masscomp) 172895b296d0Smrg os=-rtu 172995b296d0Smrg ;; 173095b296d0Smrg f30[01]-fujitsu | f700-fujitsu) 173195b296d0Smrg os=-uxpv 173295b296d0Smrg ;; 173395b296d0Smrg *-rom68k) 173495b296d0Smrg os=-coff 173595b296d0Smrg ;; 173695b296d0Smrg *-*bug) 173795b296d0Smrg os=-coff 173895b296d0Smrg ;; 173995b296d0Smrg *-apple) 174095b296d0Smrg os=-macos 174195b296d0Smrg ;; 174295b296d0Smrg *-atari*) 174395b296d0Smrg os=-mint 174495b296d0Smrg ;; 174595b296d0Smrg *) 174695b296d0Smrg os=-none 174795b296d0Smrg ;; 174895b296d0Smrgesac 174995b296d0Smrgfi 175095b296d0Smrg 175195b296d0Smrg# Here we handle the case where we know the os, and the CPU type, but not the 175295b296d0Smrg# manufacturer. We pick the logical manufacturer. 175395b296d0Smrgvendor=unknown 175495b296d0Smrgcase $basic_machine in 175595b296d0Smrg *-unknown) 175695b296d0Smrg case $os in 175795b296d0Smrg -riscix*) 175895b296d0Smrg vendor=acorn 175995b296d0Smrg ;; 176095b296d0Smrg -sunos*) 176195b296d0Smrg vendor=sun 176295b296d0Smrg ;; 176314330f12Smrg -cnk*|-aix*) 176495b296d0Smrg vendor=ibm 176595b296d0Smrg ;; 176695b296d0Smrg -beos*) 176795b296d0Smrg vendor=be 176895b296d0Smrg ;; 176995b296d0Smrg -hpux*) 177095b296d0Smrg vendor=hp 177195b296d0Smrg ;; 177295b296d0Smrg -mpeix*) 177395b296d0Smrg vendor=hp 177495b296d0Smrg ;; 177595b296d0Smrg -hiux*) 177695b296d0Smrg vendor=hitachi 177795b296d0Smrg ;; 177895b296d0Smrg -unos*) 177995b296d0Smrg vendor=crds 178095b296d0Smrg ;; 178195b296d0Smrg -dgux*) 178295b296d0Smrg vendor=dg 178395b296d0Smrg ;; 178495b296d0Smrg -luna*) 178595b296d0Smrg vendor=omron 178695b296d0Smrg ;; 178795b296d0Smrg -genix*) 178895b296d0Smrg vendor=ns 178995b296d0Smrg ;; 179095b296d0Smrg -mvs* | -opened*) 179195b296d0Smrg vendor=ibm 179295b296d0Smrg ;; 179395b296d0Smrg -os400*) 179495b296d0Smrg vendor=ibm 179595b296d0Smrg ;; 179695b296d0Smrg -ptx*) 179795b296d0Smrg vendor=sequent 179895b296d0Smrg ;; 179995b296d0Smrg -tpf*) 180095b296d0Smrg vendor=ibm 180195b296d0Smrg ;; 180295b296d0Smrg -vxsim* | -vxworks* | -windiss*) 180395b296d0Smrg vendor=wrs 180495b296d0Smrg ;; 180595b296d0Smrg -aux*) 180695b296d0Smrg vendor=apple 180795b296d0Smrg ;; 180895b296d0Smrg -hms*) 180995b296d0Smrg vendor=hitachi 181095b296d0Smrg ;; 181195b296d0Smrg -mpw* | -macos*) 181295b296d0Smrg vendor=apple 181395b296d0Smrg ;; 181495b296d0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 181595b296d0Smrg vendor=atari 181695b296d0Smrg ;; 181795b296d0Smrg -vos*) 181895b296d0Smrg vendor=stratus 181995b296d0Smrg ;; 182095b296d0Smrg esac 182195b296d0Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 182295b296d0Smrg ;; 182395b296d0Smrgesac 182495b296d0Smrg 182595b296d0Smrgecho $basic_machine$os 182695b296d0Smrgexit 182795b296d0Smrg 182895b296d0Smrg# Local variables: 182995b296d0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 183095b296d0Smrg# time-stamp-start: "timestamp='" 183195b296d0Smrg# time-stamp-format: "%:y-%02m-%02d" 183295b296d0Smrg# time-stamp-end: "'" 183395b296d0Smrg# End: 1834