config.sub revision 7cea3689
127702724Smrg#! /bin/sh 227702724Smrg# Configuration validation subroutine script. 37cea3689Smrg# Copyright 1992-2018 Free Software Foundation, Inc. 427702724Smrg 57cea3689Smrgtimestamp='2018-02-28' 627702724Smrg 7313a12fdSmrg# This file is free software; you can redistribute it and/or modify it 8313a12fdSmrg# under the terms of the GNU General Public License as published by 9313a12fdSmrg# the Free Software Foundation; either version 3 of the License, or 1027702724Smrg# (at your option) any later version. 1127702724Smrg# 12313a12fdSmrg# This program is distributed in the hope that it will be useful, but 13313a12fdSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 14313a12fdSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15313a12fdSmrg# General Public License for more details. 1627702724Smrg# 1727702724Smrg# You should have received a copy of the GNU General Public License 187cea3689Smrg# along with this program; if not, see <https://www.gnu.org/licenses/>. 1927702724Smrg# 2027702724Smrg# As a special exception to the GNU General Public License, if you 2127702724Smrg# distribute this file as part of a program that contains a 2227702724Smrg# configuration script generated by Autoconf, you may include it under 23313a12fdSmrg# the same distribution terms that you use for the rest of that 24313a12fdSmrg# program. This Exception is an additional permission under section 7 25313a12fdSmrg# of the GNU General Public License, version 3 ("GPLv3"). 2627702724Smrg 2727702724Smrg 287cea3689Smrg# Please send patches to <config-patches@gnu.org>. 2927702724Smrg# 3027702724Smrg# Configuration subroutine to validate and canonicalize a configuration type. 3127702724Smrg# Supply the specified configuration type as an argument. 3227702724Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 3327702724Smrg# Otherwise, we print the canonical config type on stdout and succeed. 3427702724Smrg 3500084f2cSmrg# You can get the latest version of this script from: 367cea3689Smrg# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 3700084f2cSmrg 3827702724Smrg# This file is supposed to be the same for all GNU packages 3927702724Smrg# and recognize all the CPU types, system types and aliases 4027702724Smrg# that are meaningful with *any* GNU software. 4127702724Smrg# Each package is responsible for reporting which valid configurations 4227702724Smrg# it does not support. The user should be able to distinguish 4327702724Smrg# a failure to support a valid configuration from a meaningless 4427702724Smrg# configuration. 4527702724Smrg 4627702724Smrg# The goal of this file is to map all the various variations of a given 4727702724Smrg# machine specification into a single specification in the form: 4827702724Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 4927702724Smrg# or in some cases, the newer four-part form: 5027702724Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 5127702724Smrg# It is wrong to echo any other type of specification. 5227702724Smrg 5327702724Smrgme=`echo "$0" | sed -e 's,.*/,,'` 5427702724Smrg 5527702724Smrgusage="\ 567cea3689SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS 5727702724Smrg 5827702724SmrgCanonicalize a configuration name. 5927702724Smrg 607cea3689SmrgOptions: 6127702724Smrg -h, --help print this help, then exit 6227702724Smrg -t, --time-stamp print date of last modification, then exit 6327702724Smrg -v, --version print version number, then exit 6427702724Smrg 6527702724SmrgReport bugs and patches to <config-patches@gnu.org>." 6627702724Smrg 6727702724Smrgversion="\ 6827702724SmrgGNU config.sub ($timestamp) 6927702724Smrg 707cea3689SmrgCopyright 1992-2018 Free Software Foundation, Inc. 7127702724Smrg 7227702724SmrgThis is free software; see the source for copying conditions. There is NO 7327702724Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 7427702724Smrg 7527702724Smrghelp=" 7627702724SmrgTry \`$me --help' for more information." 7727702724Smrg 7827702724Smrg# Parse command line 7927702724Smrgwhile test $# -gt 0 ; do 8027702724Smrg case $1 in 8127702724Smrg --time-stamp | --time* | -t ) 8227702724Smrg echo "$timestamp" ; exit ;; 8327702724Smrg --version | -v ) 8427702724Smrg echo "$version" ; exit ;; 8527702724Smrg --help | --h* | -h ) 8627702724Smrg echo "$usage"; exit ;; 8727702724Smrg -- ) # Stop option processing 8827702724Smrg shift; break ;; 8927702724Smrg - ) # Use stdin as input. 9027702724Smrg break ;; 9127702724Smrg -* ) 9227702724Smrg echo "$me: invalid option $1$help" 9327702724Smrg exit 1 ;; 9427702724Smrg 9527702724Smrg *local*) 9627702724Smrg # First pass through any local machine types. 977cea3689Smrg echo "$1" 9827702724Smrg exit ;; 9927702724Smrg 10027702724Smrg * ) 10127702724Smrg break ;; 10227702724Smrg esac 10327702724Smrgdone 10427702724Smrg 10527702724Smrgcase $# in 10627702724Smrg 0) echo "$me: missing argument$help" >&2 10727702724Smrg exit 1;; 10827702724Smrg 1) ;; 10927702724Smrg *) echo "$me: too many arguments$help" >&2 11027702724Smrg exit 1;; 11127702724Smrgesac 11227702724Smrg 11327702724Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 11427702724Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1157cea3689Smrgmaybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 11627702724Smrgcase $maybe_os in 117313a12fdSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 118313a12fdSmrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1197cea3689Smrg knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ 1207cea3689Smrg kopensolaris*-gnu* | cloudabi*-eabi* | \ 12127702724Smrg storm-chaos* | os2-emx* | rtmk-nova*) 12227702724Smrg os=-$maybe_os 1237cea3689Smrg basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 12427702724Smrg ;; 125313a12fdSmrg android-linux) 126313a12fdSmrg os=-linux-android 1277cea3689Smrg basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 128313a12fdSmrg ;; 12927702724Smrg *) 1307cea3689Smrg basic_machine=`echo "$1" | sed 's/-[^-]*$//'` 1317cea3689Smrg if [ "$basic_machine" != "$1" ] 1327cea3689Smrg then os=`echo "$1" | sed 's/.*-/-/'` 13327702724Smrg else os=; fi 13427702724Smrg ;; 13527702724Smrgesac 13627702724Smrg 13727702724Smrg### Let's recognize common machines as not being operating systems so 13827702724Smrg### that things like config.sub decstation-3100 work. We also 13927702724Smrg### recognize some manufacturers as not being operating systems, so we 14027702724Smrg### can provide default operating systems below. 14127702724Smrgcase $os in 14227702724Smrg -sun*os*) 14327702724Smrg # Prevent following clause from handling this invalid input. 14427702724Smrg ;; 14527702724Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 14627702724Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 14727702724Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 14827702724Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 14927702724Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 15027702724Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 151313a12fdSmrg -apple | -axis | -knuth | -cray | -microblaze*) 15227702724Smrg os= 15327702724Smrg basic_machine=$1 15427702724Smrg ;; 155313a12fdSmrg -bluegene*) 156313a12fdSmrg os=-cnk 15700084f2cSmrg ;; 15827702724Smrg -sim | -cisco | -oki | -wec | -winbond) 15927702724Smrg os= 16027702724Smrg basic_machine=$1 16127702724Smrg ;; 16227702724Smrg -scout) 16327702724Smrg ;; 16427702724Smrg -wrs) 16527702724Smrg os=-vxworks 16627702724Smrg basic_machine=$1 16727702724Smrg ;; 16827702724Smrg -chorusos*) 16927702724Smrg os=-chorusos 17027702724Smrg basic_machine=$1 17127702724Smrg ;; 172313a12fdSmrg -chorusrdb) 173313a12fdSmrg os=-chorusrdb 17427702724Smrg basic_machine=$1 175313a12fdSmrg ;; 17627702724Smrg -hiux*) 17727702724Smrg os=-hiuxwe2 17827702724Smrg ;; 17927702724Smrg -sco6) 18027702724Smrg os=-sco5v6 1817cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 18227702724Smrg ;; 18327702724Smrg -sco5) 18427702724Smrg os=-sco3.2v5 1857cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 18627702724Smrg ;; 18727702724Smrg -sco4) 18827702724Smrg os=-sco3.2v4 1897cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 19027702724Smrg ;; 19127702724Smrg -sco3.2.[4-9]*) 19227702724Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1937cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 19427702724Smrg ;; 19527702724Smrg -sco3.2v[4-9]*) 19627702724Smrg # Don't forget version if it is 3.2v4 or newer. 1977cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 19827702724Smrg ;; 19927702724Smrg -sco5v6*) 20027702724Smrg # Don't forget version if it is 3.2v4 or newer. 2017cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 20227702724Smrg ;; 20327702724Smrg -sco*) 20427702724Smrg os=-sco3.2v2 2057cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 20627702724Smrg ;; 20727702724Smrg -udk*) 2087cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 20927702724Smrg ;; 21027702724Smrg -isc) 21127702724Smrg os=-isc2.2 2127cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 21327702724Smrg ;; 21427702724Smrg -clix*) 21527702724Smrg basic_machine=clipper-intergraph 21627702724Smrg ;; 21727702724Smrg -isc*) 2187cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` 21927702724Smrg ;; 220313a12fdSmrg -lynx*178) 221313a12fdSmrg os=-lynxos178 222313a12fdSmrg ;; 223313a12fdSmrg -lynx*5) 224313a12fdSmrg os=-lynxos5 225313a12fdSmrg ;; 22627702724Smrg -lynx*) 22727702724Smrg os=-lynxos 22827702724Smrg ;; 22927702724Smrg -ptx*) 2307cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'` 23127702724Smrg ;; 23227702724Smrg -psos*) 23327702724Smrg os=-psos 23427702724Smrg ;; 23527702724Smrg -mint | -mint[0-9]*) 23627702724Smrg basic_machine=m68k-atari 23727702724Smrg os=-mint 23827702724Smrg ;; 23927702724Smrgesac 24027702724Smrg 24127702724Smrg# Decode aliases for certain CPU-COMPANY combinations. 24227702724Smrgcase $basic_machine in 24327702724Smrg # Recognize the basic CPU types without company name. 24427702724Smrg # Some are omitted here because they have special meanings below. 24527702724Smrg 1750a | 580 \ 24627702724Smrg | a29k \ 247313a12fdSmrg | aarch64 | aarch64_be \ 24827702724Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 24927702724Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 25027702724Smrg | am33_2.0 \ 251313a12fdSmrg | arc | arceb \ 252313a12fdSmrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 253313a12fdSmrg | avr | avr32 \ 2547cea3689Smrg | ba \ 255313a12fdSmrg | be32 | be64 \ 25627702724Smrg | bfin \ 2577cea3689Smrg | c4x | c8051 | clipper \ 25827702724Smrg | d10v | d30v | dlx | dsp16xx \ 2597cea3689Smrg | e2k | epiphany \ 2607cea3689Smrg | fido | fr30 | frv | ft32 \ 26127702724Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 262313a12fdSmrg | hexagon \ 2637cea3689Smrg | i370 | i860 | i960 | ia16 | ia64 \ 26427702724Smrg | ip2k | iq2000 \ 2657cea3689Smrg | k1om \ 266313a12fdSmrg | le32 | le64 \ 26700084f2cSmrg | lm32 \ 268e19dfac4Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 269313a12fdSmrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 27027702724Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 27127702724Smrg | mips16 \ 27227702724Smrg | mips64 | mips64el \ 27300084f2cSmrg | mips64octeon | mips64octeonel \ 27427702724Smrg | mips64orion | mips64orionel \ 27500084f2cSmrg | mips64r5900 | mips64r5900el \ 27600084f2cSmrg | mips64vr | mips64vrel \ 27727702724Smrg | mips64vr4100 | mips64vr4100el \ 27827702724Smrg | mips64vr4300 | mips64vr4300el \ 27927702724Smrg | mips64vr5000 | mips64vr5000el \ 28027702724Smrg | mips64vr5900 | mips64vr5900el \ 28127702724Smrg | mipsisa32 | mipsisa32el \ 28227702724Smrg | mipsisa32r2 | mipsisa32r2el \ 2837cea3689Smrg | mipsisa32r6 | mipsisa32r6el \ 28427702724Smrg | mipsisa64 | mipsisa64el \ 28527702724Smrg | mipsisa64r2 | mipsisa64r2el \ 2867cea3689Smrg | mipsisa64r6 | mipsisa64r6el \ 28727702724Smrg | mipsisa64sb1 | mipsisa64sb1el \ 28827702724Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 289313a12fdSmrg | mipsr5900 | mipsr5900el \ 29027702724Smrg | mipstx39 | mipstx39el \ 29127702724Smrg | mn10200 | mn10300 \ 29200084f2cSmrg | moxie \ 29327702724Smrg | mt \ 29427702724Smrg | msp430 \ 295313a12fdSmrg | nds32 | nds32le | nds32be \ 296313a12fdSmrg | nios | nios2 | nios2eb | nios2el \ 29727702724Smrg | ns16k | ns32k \ 2987cea3689Smrg | open8 | or1k | or1knd | or32 \ 2997cea3689Smrg | pdp10 | pj | pjl \ 300313a12fdSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3017cea3689Smrg | pru \ 30227702724Smrg | pyramid \ 3037cea3689Smrg | riscv32 | riscv64 \ 304313a12fdSmrg | rl78 | rx \ 305e19dfac4Smrg | score \ 3067cea3689Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 30727702724Smrg | sh64 | sh64le \ 308e19dfac4Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 309e19dfac4Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 310313a12fdSmrg | spu \ 311313a12fdSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 31200084f2cSmrg | ubicom32 \ 313313a12fdSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3147cea3689Smrg | visium \ 3157cea3689Smrg | wasm32 \ 316313a12fdSmrg | x86 | xc16x | xstormy16 | xtensa \ 31700084f2cSmrg | z8k | z80) 31827702724Smrg basic_machine=$basic_machine-unknown 31927702724Smrg ;; 320313a12fdSmrg c54x) 321313a12fdSmrg basic_machine=tic54x-unknown 322313a12fdSmrg ;; 323313a12fdSmrg c55x) 324313a12fdSmrg basic_machine=tic55x-unknown 325313a12fdSmrg ;; 326313a12fdSmrg c6x) 327313a12fdSmrg basic_machine=tic6x-unknown 328313a12fdSmrg ;; 3297cea3689Smrg leon|leon[3-9]) 3307cea3689Smrg basic_machine=sparc-$basic_machine 3317cea3689Smrg ;; 3327cea3689Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 33327702724Smrg basic_machine=$basic_machine-unknown 33427702724Smrg os=-none 33527702724Smrg ;; 3367cea3689Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65) 33727702724Smrg ;; 33827702724Smrg ms1) 33927702724Smrg basic_machine=mt-unknown 34027702724Smrg ;; 34127702724Smrg 342313a12fdSmrg strongarm | thumb | xscale) 343313a12fdSmrg basic_machine=arm-unknown 344313a12fdSmrg ;; 345313a12fdSmrg xgate) 346313a12fdSmrg basic_machine=$basic_machine-unknown 347313a12fdSmrg os=-none 348313a12fdSmrg ;; 349313a12fdSmrg xscaleeb) 350313a12fdSmrg basic_machine=armeb-unknown 351313a12fdSmrg ;; 352313a12fdSmrg 353313a12fdSmrg xscaleel) 354313a12fdSmrg basic_machine=armel-unknown 355313a12fdSmrg ;; 356313a12fdSmrg 35727702724Smrg # We use `pc' rather than `unknown' 35827702724Smrg # because (1) that's what they normally are, and 35927702724Smrg # (2) the word "unknown" tends to confuse beginning users. 36027702724Smrg i*86 | x86_64) 36127702724Smrg basic_machine=$basic_machine-pc 36227702724Smrg ;; 36327702724Smrg # Object if more than one company name word. 36427702724Smrg *-*-*) 3657cea3689Smrg echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 36627702724Smrg exit 1 36727702724Smrg ;; 36827702724Smrg # Recognize the basic CPU types with company name. 36927702724Smrg 580-* \ 37027702724Smrg | a29k-* \ 371313a12fdSmrg | aarch64-* | aarch64_be-* \ 37227702724Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 37327702724Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 374313a12fdSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 37527702724Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 376e19dfac4Smrg | avr-* | avr32-* \ 3777cea3689Smrg | ba-* \ 378313a12fdSmrg | be32-* | be64-* \ 37927702724Smrg | bfin-* | bs2000-* \ 380313a12fdSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3817cea3689Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 38227702724Smrg | d10v-* | d30v-* | dlx-* \ 3837cea3689Smrg | e2k-* | elxsi-* \ 384e19dfac4Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 38527702724Smrg | h8300-* | h8500-* \ 38627702724Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 387313a12fdSmrg | hexagon-* \ 3887cea3689Smrg | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ 38927702724Smrg | ip2k-* | iq2000-* \ 3907cea3689Smrg | k1om-* \ 391313a12fdSmrg | le32-* | le64-* \ 39200084f2cSmrg | lm32-* \ 393e19dfac4Smrg | m32c-* | m32r-* | m32rle-* \ 39427702724Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 395313a12fdSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 396313a12fdSmrg | microblaze-* | microblazeel-* \ 39727702724Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 39827702724Smrg | mips16-* \ 39927702724Smrg | mips64-* | mips64el-* \ 40000084f2cSmrg | mips64octeon-* | mips64octeonel-* \ 40127702724Smrg | mips64orion-* | mips64orionel-* \ 40200084f2cSmrg | mips64r5900-* | mips64r5900el-* \ 40300084f2cSmrg | mips64vr-* | mips64vrel-* \ 40427702724Smrg | mips64vr4100-* | mips64vr4100el-* \ 40527702724Smrg | mips64vr4300-* | mips64vr4300el-* \ 40627702724Smrg | mips64vr5000-* | mips64vr5000el-* \ 40727702724Smrg | mips64vr5900-* | mips64vr5900el-* \ 40827702724Smrg | mipsisa32-* | mipsisa32el-* \ 40927702724Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 4107cea3689Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 41127702724Smrg | mipsisa64-* | mipsisa64el-* \ 41227702724Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 4137cea3689Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 41427702724Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 41527702724Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 416313a12fdSmrg | mipsr5900-* | mipsr5900el-* \ 41727702724Smrg | mipstx39-* | mipstx39el-* \ 41827702724Smrg | mmix-* \ 41927702724Smrg | mt-* \ 42027702724Smrg | msp430-* \ 421313a12fdSmrg | nds32-* | nds32le-* | nds32be-* \ 422313a12fdSmrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 42327702724Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 424313a12fdSmrg | open8-* \ 4257cea3689Smrg | or1k*-* \ 42627702724Smrg | orion-* \ 42727702724Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 428313a12fdSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4297cea3689Smrg | pru-* \ 43027702724Smrg | pyramid-* \ 4317cea3689Smrg | riscv32-* | riscv64-* \ 432313a12fdSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 43300084f2cSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 43427702724Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 435e19dfac4Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 43627702724Smrg | sparclite-* \ 4377cea3689Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ 438313a12fdSmrg | tahoe-* \ 43927702724Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 440313a12fdSmrg | tile*-* \ 44127702724Smrg | tron-* \ 44200084f2cSmrg | ubicom32-* \ 443313a12fdSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 444313a12fdSmrg | vax-* \ 4457cea3689Smrg | visium-* \ 4467cea3689Smrg | wasm32-* \ 44727702724Smrg | we32k-* \ 448313a12fdSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 449e19dfac4Smrg | xstormy16-* | xtensa*-* \ 45027702724Smrg | ymp-* \ 45100084f2cSmrg | z8k-* | z80-*) 45227702724Smrg ;; 453e19dfac4Smrg # Recognize the basic CPU types without company name, with glob match. 454e19dfac4Smrg xtensa*) 455e19dfac4Smrg basic_machine=$basic_machine-unknown 45627702724Smrg ;; 45727702724Smrg # Recognize the various machine names and aliases which stand 45827702724Smrg # for a CPU type and a company and sometimes even an OS. 45927702724Smrg 386bsd) 4607cea3689Smrg basic_machine=i386-pc 46127702724Smrg os=-bsd 46227702724Smrg ;; 46327702724Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 46427702724Smrg basic_machine=m68000-att 46527702724Smrg ;; 46627702724Smrg 3b*) 46727702724Smrg basic_machine=we32k-att 46827702724Smrg ;; 46927702724Smrg a29khif) 47027702724Smrg basic_machine=a29k-amd 47127702724Smrg os=-udi 47227702724Smrg ;; 473313a12fdSmrg abacus) 47427702724Smrg basic_machine=abacus-unknown 47527702724Smrg ;; 47627702724Smrg adobe68k) 47727702724Smrg basic_machine=m68010-adobe 47827702724Smrg os=-scout 47927702724Smrg ;; 48027702724Smrg alliant | fx80) 48127702724Smrg basic_machine=fx80-alliant 48227702724Smrg ;; 48327702724Smrg altos | altos3068) 48427702724Smrg basic_machine=m68k-altos 48527702724Smrg ;; 48627702724Smrg am29k) 48727702724Smrg basic_machine=a29k-none 48827702724Smrg os=-bsd 48927702724Smrg ;; 49027702724Smrg amd64) 49127702724Smrg basic_machine=x86_64-pc 49227702724Smrg ;; 49327702724Smrg amd64-*) 4947cea3689Smrg basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'` 49527702724Smrg ;; 49627702724Smrg amdahl) 49727702724Smrg basic_machine=580-amdahl 49827702724Smrg os=-sysv 49927702724Smrg ;; 50027702724Smrg amiga | amiga-*) 50127702724Smrg basic_machine=m68k-unknown 50227702724Smrg ;; 50327702724Smrg amigaos | amigados) 50427702724Smrg basic_machine=m68k-unknown 50527702724Smrg os=-amigaos 50627702724Smrg ;; 50727702724Smrg amigaunix | amix) 50827702724Smrg basic_machine=m68k-unknown 50927702724Smrg os=-sysv4 51027702724Smrg ;; 51127702724Smrg apollo68) 51227702724Smrg basic_machine=m68k-apollo 51327702724Smrg os=-sysv 51427702724Smrg ;; 51527702724Smrg apollo68bsd) 51627702724Smrg basic_machine=m68k-apollo 51727702724Smrg os=-bsd 51827702724Smrg ;; 51900084f2cSmrg aros) 52000084f2cSmrg basic_machine=i386-pc 52100084f2cSmrg os=-aros 52200084f2cSmrg ;; 5237cea3689Smrg asmjs) 5247cea3689Smrg basic_machine=asmjs-unknown 5257cea3689Smrg ;; 52627702724Smrg aux) 52727702724Smrg basic_machine=m68k-apple 52827702724Smrg os=-aux 52927702724Smrg ;; 53027702724Smrg balance) 53127702724Smrg basic_machine=ns32k-sequent 53227702724Smrg os=-dynix 53327702724Smrg ;; 534e19dfac4Smrg blackfin) 535e19dfac4Smrg basic_machine=bfin-unknown 536e19dfac4Smrg os=-linux 537e19dfac4Smrg ;; 538e19dfac4Smrg blackfin-*) 5397cea3689Smrg basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'` 540e19dfac4Smrg os=-linux 541e19dfac4Smrg ;; 54200084f2cSmrg bluegene*) 54300084f2cSmrg basic_machine=powerpc-ibm 54400084f2cSmrg os=-cnk 54500084f2cSmrg ;; 546313a12fdSmrg c54x-*) 5477cea3689Smrg basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'` 548313a12fdSmrg ;; 549313a12fdSmrg c55x-*) 5507cea3689Smrg basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'` 551313a12fdSmrg ;; 552313a12fdSmrg c6x-*) 5537cea3689Smrg basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'` 554313a12fdSmrg ;; 55527702724Smrg c90) 55627702724Smrg basic_machine=c90-cray 55727702724Smrg os=-unicos 55827702724Smrg ;; 559313a12fdSmrg cegcc) 56000084f2cSmrg basic_machine=arm-unknown 56100084f2cSmrg os=-cegcc 56200084f2cSmrg ;; 56327702724Smrg convex-c1) 56427702724Smrg basic_machine=c1-convex 56527702724Smrg os=-bsd 56627702724Smrg ;; 56727702724Smrg convex-c2) 56827702724Smrg basic_machine=c2-convex 56927702724Smrg os=-bsd 57027702724Smrg ;; 57127702724Smrg convex-c32) 57227702724Smrg basic_machine=c32-convex 57327702724Smrg os=-bsd 57427702724Smrg ;; 57527702724Smrg convex-c34) 57627702724Smrg basic_machine=c34-convex 57727702724Smrg os=-bsd 57827702724Smrg ;; 57927702724Smrg convex-c38) 58027702724Smrg basic_machine=c38-convex 58127702724Smrg os=-bsd 58227702724Smrg ;; 58327702724Smrg cray | j90) 58427702724Smrg basic_machine=j90-cray 58527702724Smrg os=-unicos 58627702724Smrg ;; 58727702724Smrg craynv) 58827702724Smrg basic_machine=craynv-cray 58927702724Smrg os=-unicosmp 59027702724Smrg ;; 591313a12fdSmrg cr16 | cr16-*) 592e19dfac4Smrg basic_machine=cr16-unknown 59327702724Smrg os=-elf 59427702724Smrg ;; 59527702724Smrg crds | unos) 59627702724Smrg basic_machine=m68k-crds 59727702724Smrg ;; 59827702724Smrg crisv32 | crisv32-* | etraxfs*) 59927702724Smrg basic_machine=crisv32-axis 60027702724Smrg ;; 60127702724Smrg cris | cris-* | etrax*) 60227702724Smrg basic_machine=cris-axis 60327702724Smrg ;; 60427702724Smrg crx) 60527702724Smrg basic_machine=crx-unknown 60627702724Smrg os=-elf 60727702724Smrg ;; 60827702724Smrg da30 | da30-*) 60927702724Smrg basic_machine=m68k-da30 61027702724Smrg ;; 61127702724Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 61227702724Smrg basic_machine=mips-dec 61327702724Smrg ;; 61427702724Smrg decsystem10* | dec10*) 61527702724Smrg basic_machine=pdp10-dec 61627702724Smrg os=-tops10 61727702724Smrg ;; 61827702724Smrg decsystem20* | dec20*) 61927702724Smrg basic_machine=pdp10-dec 62027702724Smrg os=-tops20 62127702724Smrg ;; 62227702724Smrg delta | 3300 | motorola-3300 | motorola-delta \ 62327702724Smrg | 3300-motorola | delta-motorola) 62427702724Smrg basic_machine=m68k-motorola 62527702724Smrg ;; 62627702724Smrg delta88) 62727702724Smrg basic_machine=m88k-motorola 62827702724Smrg os=-sysv3 62927702724Smrg ;; 63000084f2cSmrg dicos) 63100084f2cSmrg basic_machine=i686-pc 63200084f2cSmrg os=-dicos 63300084f2cSmrg ;; 63427702724Smrg djgpp) 63527702724Smrg basic_machine=i586-pc 63627702724Smrg os=-msdosdjgpp 63727702724Smrg ;; 63827702724Smrg dpx20 | dpx20-*) 63927702724Smrg basic_machine=rs6000-bull 64027702724Smrg os=-bosx 64127702724Smrg ;; 6427cea3689Smrg dpx2*) 64327702724Smrg basic_machine=m68k-bull 64427702724Smrg os=-sysv3 64527702724Smrg ;; 6467cea3689Smrg e500v[12]) 6477cea3689Smrg basic_machine=powerpc-unknown 6487cea3689Smrg os=$os"spe" 6497cea3689Smrg ;; 6507cea3689Smrg e500v[12]-*) 6517cea3689Smrg basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` 6527cea3689Smrg os=$os"spe" 6537cea3689Smrg ;; 65427702724Smrg ebmon29k) 65527702724Smrg basic_machine=a29k-amd 65627702724Smrg os=-ebmon 65727702724Smrg ;; 65827702724Smrg elxsi) 65927702724Smrg basic_machine=elxsi-elxsi 66027702724Smrg os=-bsd 66127702724Smrg ;; 66227702724Smrg encore | umax | mmax) 66327702724Smrg basic_machine=ns32k-encore 66427702724Smrg ;; 66527702724Smrg es1800 | OSE68k | ose68k | ose | OSE) 66627702724Smrg basic_machine=m68k-ericsson 66727702724Smrg os=-ose 66827702724Smrg ;; 66927702724Smrg fx2800) 67027702724Smrg basic_machine=i860-alliant 67127702724Smrg ;; 67227702724Smrg genix) 67327702724Smrg basic_machine=ns32k-ns 67427702724Smrg ;; 67527702724Smrg gmicro) 67627702724Smrg basic_machine=tron-gmicro 67727702724Smrg os=-sysv 67827702724Smrg ;; 67927702724Smrg go32) 68027702724Smrg basic_machine=i386-pc 68127702724Smrg os=-go32 68227702724Smrg ;; 68327702724Smrg h3050r* | hiux*) 68427702724Smrg basic_machine=hppa1.1-hitachi 68527702724Smrg os=-hiuxwe2 68627702724Smrg ;; 68727702724Smrg h8300hms) 68827702724Smrg basic_machine=h8300-hitachi 68927702724Smrg os=-hms 69027702724Smrg ;; 69127702724Smrg h8300xray) 69227702724Smrg basic_machine=h8300-hitachi 69327702724Smrg os=-xray 69427702724Smrg ;; 69527702724Smrg h8500hms) 69627702724Smrg basic_machine=h8500-hitachi 69727702724Smrg os=-hms 69827702724Smrg ;; 69927702724Smrg harris) 70027702724Smrg basic_machine=m88k-harris 70127702724Smrg os=-sysv3 70227702724Smrg ;; 70327702724Smrg hp300-*) 70427702724Smrg basic_machine=m68k-hp 70527702724Smrg ;; 70627702724Smrg hp300bsd) 70727702724Smrg basic_machine=m68k-hp 70827702724Smrg os=-bsd 70927702724Smrg ;; 71027702724Smrg hp300hpux) 71127702724Smrg basic_machine=m68k-hp 71227702724Smrg os=-hpux 71327702724Smrg ;; 71427702724Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 71527702724Smrg basic_machine=hppa1.0-hp 71627702724Smrg ;; 71727702724Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 71827702724Smrg basic_machine=m68000-hp 71927702724Smrg ;; 72027702724Smrg hp9k3[2-9][0-9]) 72127702724Smrg basic_machine=m68k-hp 72227702724Smrg ;; 72327702724Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 72427702724Smrg basic_machine=hppa1.0-hp 72527702724Smrg ;; 72627702724Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 72727702724Smrg basic_machine=hppa1.1-hp 72827702724Smrg ;; 72927702724Smrg hp9k78[0-9] | hp78[0-9]) 73027702724Smrg # FIXME: really hppa2.0-hp 73127702724Smrg basic_machine=hppa1.1-hp 73227702724Smrg ;; 73327702724Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 73427702724Smrg # FIXME: really hppa2.0-hp 73527702724Smrg basic_machine=hppa1.1-hp 73627702724Smrg ;; 73727702724Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 73827702724Smrg basic_machine=hppa1.1-hp 73927702724Smrg ;; 74027702724Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 74127702724Smrg basic_machine=hppa1.0-hp 74227702724Smrg ;; 74327702724Smrg hppaosf) 74427702724Smrg basic_machine=hppa1.1-hp 74527702724Smrg os=-osf 74627702724Smrg ;; 74727702724Smrg hppro) 74827702724Smrg basic_machine=hppa1.1-hp 74927702724Smrg os=-proelf 75027702724Smrg ;; 75127702724Smrg i370-ibm* | ibm*) 75227702724Smrg basic_machine=i370-ibm 75327702724Smrg ;; 75427702724Smrg i*86v32) 7557cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` 75627702724Smrg os=-sysv32 75727702724Smrg ;; 75827702724Smrg i*86v4*) 7597cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` 76027702724Smrg os=-sysv4 76127702724Smrg ;; 76227702724Smrg i*86v) 7637cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` 76427702724Smrg os=-sysv 76527702724Smrg ;; 76627702724Smrg i*86sol2) 7677cea3689Smrg basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` 76827702724Smrg os=-solaris2 76927702724Smrg ;; 77027702724Smrg i386mach) 77127702724Smrg basic_machine=i386-mach 77227702724Smrg os=-mach 77327702724Smrg ;; 7747cea3689Smrg vsta) 77527702724Smrg basic_machine=i386-unknown 77627702724Smrg os=-vsta 77727702724Smrg ;; 77827702724Smrg iris | iris4d) 77927702724Smrg basic_machine=mips-sgi 78027702724Smrg case $os in 78127702724Smrg -irix*) 78227702724Smrg ;; 78327702724Smrg *) 78427702724Smrg os=-irix4 78527702724Smrg ;; 78627702724Smrg esac 78727702724Smrg ;; 78827702724Smrg isi68 | isi) 78927702724Smrg basic_machine=m68k-isi 79027702724Smrg os=-sysv 79127702724Smrg ;; 7927cea3689Smrg leon-*|leon[3-9]-*) 7937cea3689Smrg basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'` 7947cea3689Smrg ;; 795e19dfac4Smrg m68knommu) 796e19dfac4Smrg basic_machine=m68k-unknown 797e19dfac4Smrg os=-linux 798e19dfac4Smrg ;; 799e19dfac4Smrg m68knommu-*) 8007cea3689Smrg basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'` 801e19dfac4Smrg os=-linux 802e19dfac4Smrg ;; 80327702724Smrg magnum | m3230) 80427702724Smrg basic_machine=mips-mips 80527702724Smrg os=-sysv 80627702724Smrg ;; 80727702724Smrg merlin) 80827702724Smrg basic_machine=ns32k-utek 80927702724Smrg os=-sysv 81027702724Smrg ;; 811313a12fdSmrg microblaze*) 81200084f2cSmrg basic_machine=microblaze-xilinx 81300084f2cSmrg ;; 814313a12fdSmrg mingw64) 815313a12fdSmrg basic_machine=x86_64-pc 816313a12fdSmrg os=-mingw64 817313a12fdSmrg ;; 81827702724Smrg mingw32) 8197cea3689Smrg basic_machine=i686-pc 82027702724Smrg os=-mingw32 82127702724Smrg ;; 822e19dfac4Smrg mingw32ce) 823e19dfac4Smrg basic_machine=arm-unknown 824e19dfac4Smrg os=-mingw32ce 825e19dfac4Smrg ;; 82627702724Smrg miniframe) 82727702724Smrg basic_machine=m68000-convergent 82827702724Smrg ;; 82927702724Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 83027702724Smrg basic_machine=m68k-atari 83127702724Smrg os=-mint 83227702724Smrg ;; 83327702724Smrg mips3*-*) 8347cea3689Smrg basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'` 83527702724Smrg ;; 83627702724Smrg mips3*) 8377cea3689Smrg basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown 83827702724Smrg ;; 83927702724Smrg monitor) 84027702724Smrg basic_machine=m68k-rom68k 84127702724Smrg os=-coff 84227702724Smrg ;; 84327702724Smrg morphos) 84427702724Smrg basic_machine=powerpc-unknown 84527702724Smrg os=-morphos 84627702724Smrg ;; 8477cea3689Smrg moxiebox) 8487cea3689Smrg basic_machine=moxie-unknown 8497cea3689Smrg os=-moxiebox 8507cea3689Smrg ;; 85127702724Smrg msdos) 85227702724Smrg basic_machine=i386-pc 85327702724Smrg os=-msdos 85427702724Smrg ;; 85527702724Smrg ms1-*) 8567cea3689Smrg basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'` 85727702724Smrg ;; 858313a12fdSmrg msys) 8597cea3689Smrg basic_machine=i686-pc 860313a12fdSmrg os=-msys 861313a12fdSmrg ;; 86227702724Smrg mvs) 86327702724Smrg basic_machine=i370-ibm 86427702724Smrg os=-mvs 86527702724Smrg ;; 866313a12fdSmrg nacl) 867313a12fdSmrg basic_machine=le32-unknown 868313a12fdSmrg os=-nacl 869313a12fdSmrg ;; 87027702724Smrg ncr3000) 87127702724Smrg basic_machine=i486-ncr 87227702724Smrg os=-sysv4 87327702724Smrg ;; 87427702724Smrg netbsd386) 87527702724Smrg basic_machine=i386-unknown 87627702724Smrg os=-netbsd 87727702724Smrg ;; 87827702724Smrg netwinder) 87927702724Smrg basic_machine=armv4l-rebel 88027702724Smrg os=-linux 88127702724Smrg ;; 88227702724Smrg news | news700 | news800 | news900) 88327702724Smrg basic_machine=m68k-sony 88427702724Smrg os=-newsos 88527702724Smrg ;; 88627702724Smrg news1000) 88727702724Smrg basic_machine=m68030-sony 88827702724Smrg os=-newsos 88927702724Smrg ;; 89027702724Smrg news-3600 | risc-news) 89127702724Smrg basic_machine=mips-sony 89227702724Smrg os=-newsos 89327702724Smrg ;; 89427702724Smrg necv70) 89527702724Smrg basic_machine=v70-nec 89627702724Smrg os=-sysv 89727702724Smrg ;; 8987cea3689Smrg next | m*-next) 89927702724Smrg basic_machine=m68k-next 90027702724Smrg case $os in 90127702724Smrg -nextstep* ) 90227702724Smrg ;; 90327702724Smrg -ns2*) 90427702724Smrg os=-nextstep2 90527702724Smrg ;; 90627702724Smrg *) 90727702724Smrg os=-nextstep3 90827702724Smrg ;; 90927702724Smrg esac 91027702724Smrg ;; 91127702724Smrg nh3000) 91227702724Smrg basic_machine=m68k-harris 91327702724Smrg os=-cxux 91427702724Smrg ;; 91527702724Smrg nh[45]000) 91627702724Smrg basic_machine=m88k-harris 91727702724Smrg os=-cxux 91827702724Smrg ;; 91927702724Smrg nindy960) 92027702724Smrg basic_machine=i960-intel 92127702724Smrg os=-nindy 92227702724Smrg ;; 92327702724Smrg mon960) 92427702724Smrg basic_machine=i960-intel 92527702724Smrg os=-mon960 92627702724Smrg ;; 92727702724Smrg nonstopux) 92827702724Smrg basic_machine=mips-compaq 92927702724Smrg os=-nonstopux 93027702724Smrg ;; 93127702724Smrg np1) 93227702724Smrg basic_machine=np1-gould 93327702724Smrg ;; 934313a12fdSmrg neo-tandem) 935313a12fdSmrg basic_machine=neo-tandem 936313a12fdSmrg ;; 937313a12fdSmrg nse-tandem) 938313a12fdSmrg basic_machine=nse-tandem 939313a12fdSmrg ;; 94027702724Smrg nsr-tandem) 94127702724Smrg basic_machine=nsr-tandem 94227702724Smrg ;; 9437cea3689Smrg nsv-tandem) 9447cea3689Smrg basic_machine=nsv-tandem 9457cea3689Smrg ;; 9467cea3689Smrg nsx-tandem) 9477cea3689Smrg basic_machine=nsx-tandem 9487cea3689Smrg ;; 94927702724Smrg op50n-* | op60c-*) 95027702724Smrg basic_machine=hppa1.1-oki 95127702724Smrg os=-proelf 95227702724Smrg ;; 95327702724Smrg openrisc | openrisc-*) 95427702724Smrg basic_machine=or32-unknown 95527702724Smrg ;; 95627702724Smrg os400) 95727702724Smrg basic_machine=powerpc-ibm 95827702724Smrg os=-os400 95927702724Smrg ;; 96027702724Smrg OSE68000 | ose68000) 96127702724Smrg basic_machine=m68000-ericsson 96227702724Smrg os=-ose 96327702724Smrg ;; 96427702724Smrg os68k) 96527702724Smrg basic_machine=m68k-none 96627702724Smrg os=-os68k 96727702724Smrg ;; 96827702724Smrg pa-hitachi) 96927702724Smrg basic_machine=hppa1.1-hitachi 97027702724Smrg os=-hiuxwe2 97127702724Smrg ;; 97227702724Smrg paragon) 97327702724Smrg basic_machine=i860-intel 97427702724Smrg os=-osf 97527702724Smrg ;; 976e19dfac4Smrg parisc) 977e19dfac4Smrg basic_machine=hppa-unknown 978e19dfac4Smrg os=-linux 979e19dfac4Smrg ;; 980e19dfac4Smrg parisc-*) 9817cea3689Smrg basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'` 982e19dfac4Smrg os=-linux 983e19dfac4Smrg ;; 98427702724Smrg pbd) 98527702724Smrg basic_machine=sparc-tti 98627702724Smrg ;; 98727702724Smrg pbb) 98827702724Smrg basic_machine=m68k-tti 98927702724Smrg ;; 99027702724Smrg pc532 | pc532-*) 99127702724Smrg basic_machine=ns32k-pc532 99227702724Smrg ;; 99327702724Smrg pc98) 99427702724Smrg basic_machine=i386-pc 99527702724Smrg ;; 99627702724Smrg pc98-*) 9977cea3689Smrg basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'` 99827702724Smrg ;; 99927702724Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 100027702724Smrg basic_machine=i586-pc 100127702724Smrg ;; 100227702724Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 100327702724Smrg basic_machine=i686-pc 100427702724Smrg ;; 100527702724Smrg pentiumii | pentium2 | pentiumiii | pentium3) 100627702724Smrg basic_machine=i686-pc 100727702724Smrg ;; 100827702724Smrg pentium4) 100927702724Smrg basic_machine=i786-pc 101027702724Smrg ;; 101127702724Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 10127cea3689Smrg basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'` 101327702724Smrg ;; 101427702724Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 10157cea3689Smrg basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` 101627702724Smrg ;; 101727702724Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 10187cea3689Smrg basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` 101927702724Smrg ;; 102027702724Smrg pentium4-*) 10217cea3689Smrg basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'` 102227702724Smrg ;; 102327702724Smrg pn) 102427702724Smrg basic_machine=pn-gould 102527702724Smrg ;; 102627702724Smrg power) basic_machine=power-ibm 102727702724Smrg ;; 1028313a12fdSmrg ppc | ppcbe) basic_machine=powerpc-unknown 102927702724Smrg ;; 1030313a12fdSmrg ppc-* | ppcbe-*) 10317cea3689Smrg basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` 103227702724Smrg ;; 10337cea3689Smrg ppcle | powerpclittle) 103427702724Smrg basic_machine=powerpcle-unknown 103527702724Smrg ;; 103627702724Smrg ppcle-* | powerpclittle-*) 10377cea3689Smrg basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'` 103827702724Smrg ;; 103927702724Smrg ppc64) basic_machine=powerpc64-unknown 104027702724Smrg ;; 10417cea3689Smrg ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'` 104227702724Smrg ;; 10437cea3689Smrg ppc64le | powerpc64little) 104427702724Smrg basic_machine=powerpc64le-unknown 104527702724Smrg ;; 104627702724Smrg ppc64le-* | powerpc64little-*) 10477cea3689Smrg basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'` 104827702724Smrg ;; 104927702724Smrg ps2) 105027702724Smrg basic_machine=i386-ibm 105127702724Smrg ;; 105227702724Smrg pw32) 105327702724Smrg basic_machine=i586-unknown 105427702724Smrg os=-pw32 105527702724Smrg ;; 1056313a12fdSmrg rdos | rdos64) 1057313a12fdSmrg basic_machine=x86_64-pc 1058313a12fdSmrg os=-rdos 1059313a12fdSmrg ;; 1060313a12fdSmrg rdos32) 106127702724Smrg basic_machine=i386-pc 106227702724Smrg os=-rdos 106327702724Smrg ;; 106427702724Smrg rom68k) 106527702724Smrg basic_machine=m68k-rom68k 106627702724Smrg os=-coff 106727702724Smrg ;; 106827702724Smrg rm[46]00) 106927702724Smrg basic_machine=mips-siemens 107027702724Smrg ;; 107127702724Smrg rtpc | rtpc-*) 107227702724Smrg basic_machine=romp-ibm 107327702724Smrg ;; 107427702724Smrg s390 | s390-*) 107527702724Smrg basic_machine=s390-ibm 107627702724Smrg ;; 107727702724Smrg s390x | s390x-*) 107827702724Smrg basic_machine=s390x-ibm 107927702724Smrg ;; 108027702724Smrg sa29200) 108127702724Smrg basic_machine=a29k-amd 108227702724Smrg os=-udi 108327702724Smrg ;; 108427702724Smrg sb1) 108527702724Smrg basic_machine=mipsisa64sb1-unknown 108627702724Smrg ;; 108727702724Smrg sb1el) 108827702724Smrg basic_machine=mipsisa64sb1el-unknown 108927702724Smrg ;; 1090e19dfac4Smrg sde) 1091e19dfac4Smrg basic_machine=mipsisa32-sde 1092e19dfac4Smrg os=-elf 1093e19dfac4Smrg ;; 109427702724Smrg sei) 109527702724Smrg basic_machine=mips-sei 109627702724Smrg os=-seiux 109727702724Smrg ;; 109827702724Smrg sequent) 109927702724Smrg basic_machine=i386-sequent 110027702724Smrg ;; 1101e19dfac4Smrg sh5el) 1102e19dfac4Smrg basic_machine=sh5le-unknown 1103e19dfac4Smrg ;; 11047cea3689Smrg simso-wrs) 110527702724Smrg basic_machine=sparclite-wrs 110627702724Smrg os=-vxworks 110727702724Smrg ;; 110827702724Smrg sps7) 110927702724Smrg basic_machine=m68k-bull 111027702724Smrg os=-sysv2 111127702724Smrg ;; 111227702724Smrg spur) 111327702724Smrg basic_machine=spur-unknown 111427702724Smrg ;; 111527702724Smrg st2000) 111627702724Smrg basic_machine=m68k-tandem 111727702724Smrg ;; 111827702724Smrg stratus) 111927702724Smrg basic_machine=i860-stratus 112027702724Smrg os=-sysv4 112127702724Smrg ;; 1122313a12fdSmrg strongarm-* | thumb-*) 11237cea3689Smrg basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'` 1124313a12fdSmrg ;; 112527702724Smrg sun2) 112627702724Smrg basic_machine=m68000-sun 112727702724Smrg ;; 112827702724Smrg sun2os3) 112927702724Smrg basic_machine=m68000-sun 113027702724Smrg os=-sunos3 113127702724Smrg ;; 113227702724Smrg sun2os4) 113327702724Smrg basic_machine=m68000-sun 113427702724Smrg os=-sunos4 113527702724Smrg ;; 113627702724Smrg sun3os3) 113727702724Smrg basic_machine=m68k-sun 113827702724Smrg os=-sunos3 113927702724Smrg ;; 114027702724Smrg sun3os4) 114127702724Smrg basic_machine=m68k-sun 114227702724Smrg os=-sunos4 114327702724Smrg ;; 114427702724Smrg sun4os3) 114527702724Smrg basic_machine=sparc-sun 114627702724Smrg os=-sunos3 114727702724Smrg ;; 114827702724Smrg sun4os4) 114927702724Smrg basic_machine=sparc-sun 115027702724Smrg os=-sunos4 115127702724Smrg ;; 115227702724Smrg sun4sol2) 115327702724Smrg basic_machine=sparc-sun 115427702724Smrg os=-solaris2 115527702724Smrg ;; 115627702724Smrg sun3 | sun3-*) 115727702724Smrg basic_machine=m68k-sun 115827702724Smrg ;; 115927702724Smrg sun4) 116027702724Smrg basic_machine=sparc-sun 116127702724Smrg ;; 116227702724Smrg sun386 | sun386i | roadrunner) 116327702724Smrg basic_machine=i386-sun 116427702724Smrg ;; 116527702724Smrg sv1) 116627702724Smrg basic_machine=sv1-cray 116727702724Smrg os=-unicos 116827702724Smrg ;; 116927702724Smrg symmetry) 117027702724Smrg basic_machine=i386-sequent 117127702724Smrg os=-dynix 117227702724Smrg ;; 117327702724Smrg t3e) 117427702724Smrg basic_machine=alphaev5-cray 117527702724Smrg os=-unicos 117627702724Smrg ;; 117727702724Smrg t90) 117827702724Smrg basic_machine=t90-cray 117927702724Smrg os=-unicos 118027702724Smrg ;; 1181e19dfac4Smrg tile*) 1182313a12fdSmrg basic_machine=$basic_machine-unknown 1183e19dfac4Smrg os=-linux-gnu 1184e19dfac4Smrg ;; 118527702724Smrg tx39) 118627702724Smrg basic_machine=mipstx39-unknown 118727702724Smrg ;; 118827702724Smrg tx39el) 118927702724Smrg basic_machine=mipstx39el-unknown 119027702724Smrg ;; 119127702724Smrg toad1) 119227702724Smrg basic_machine=pdp10-xkl 119327702724Smrg os=-tops20 119427702724Smrg ;; 119527702724Smrg tower | tower-32) 119627702724Smrg basic_machine=m68k-ncr 119727702724Smrg ;; 119827702724Smrg tpf) 119927702724Smrg basic_machine=s390x-ibm 120027702724Smrg os=-tpf 120127702724Smrg ;; 120227702724Smrg udi29k) 120327702724Smrg basic_machine=a29k-amd 120427702724Smrg os=-udi 120527702724Smrg ;; 120627702724Smrg ultra3) 120727702724Smrg basic_machine=a29k-nyu 120827702724Smrg os=-sym1 120927702724Smrg ;; 121027702724Smrg v810 | necv810) 121127702724Smrg basic_machine=v810-nec 121227702724Smrg os=-none 121327702724Smrg ;; 121427702724Smrg vaxv) 121527702724Smrg basic_machine=vax-dec 121627702724Smrg os=-sysv 121727702724Smrg ;; 121827702724Smrg vms) 121927702724Smrg basic_machine=vax-dec 122027702724Smrg os=-vms 122127702724Smrg ;; 122227702724Smrg vpp*|vx|vx-*) 122327702724Smrg basic_machine=f301-fujitsu 122427702724Smrg ;; 122527702724Smrg vxworks960) 122627702724Smrg basic_machine=i960-wrs 122727702724Smrg os=-vxworks 122827702724Smrg ;; 122927702724Smrg vxworks68) 123027702724Smrg basic_machine=m68k-wrs 123127702724Smrg os=-vxworks 123227702724Smrg ;; 123327702724Smrg vxworks29k) 123427702724Smrg basic_machine=a29k-wrs 123527702724Smrg os=-vxworks 123627702724Smrg ;; 123727702724Smrg w65*) 123827702724Smrg basic_machine=w65-wdc 123927702724Smrg os=-none 124027702724Smrg ;; 124127702724Smrg w89k-*) 124227702724Smrg basic_machine=hppa1.1-winbond 124327702724Smrg os=-proelf 124427702724Smrg ;; 12457cea3689Smrg x64) 12467cea3689Smrg basic_machine=x86_64-pc 12477cea3689Smrg ;; 124827702724Smrg xbox) 124927702724Smrg basic_machine=i686-pc 125027702724Smrg os=-mingw32 125127702724Smrg ;; 125227702724Smrg xps | xps100) 125327702724Smrg basic_machine=xps100-honeywell 125427702724Smrg ;; 1255313a12fdSmrg xscale-* | xscalee[bl]-*) 12567cea3689Smrg basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'` 1257313a12fdSmrg ;; 125827702724Smrg ymp) 125927702724Smrg basic_machine=ymp-cray 126027702724Smrg os=-unicos 126127702724Smrg ;; 126227702724Smrg none) 126327702724Smrg basic_machine=none-none 126427702724Smrg os=-none 126527702724Smrg ;; 126627702724Smrg 126727702724Smrg# Here we handle the default manufacturer of certain CPU types. It is in 126827702724Smrg# some cases the only manufacturer, in others, it is the most popular. 126927702724Smrg w89k) 127027702724Smrg basic_machine=hppa1.1-winbond 127127702724Smrg ;; 127227702724Smrg op50n) 127327702724Smrg basic_machine=hppa1.1-oki 127427702724Smrg ;; 127527702724Smrg op60c) 127627702724Smrg basic_machine=hppa1.1-oki 127727702724Smrg ;; 127827702724Smrg romp) 127927702724Smrg basic_machine=romp-ibm 128027702724Smrg ;; 128127702724Smrg mmix) 128227702724Smrg basic_machine=mmix-knuth 128327702724Smrg ;; 128427702724Smrg rs6000) 128527702724Smrg basic_machine=rs6000-ibm 128627702724Smrg ;; 128727702724Smrg vax) 128827702724Smrg basic_machine=vax-dec 128927702724Smrg ;; 129027702724Smrg pdp11) 129127702724Smrg basic_machine=pdp11-dec 129227702724Smrg ;; 129327702724Smrg we32k) 129427702724Smrg basic_machine=we32k-att 129527702724Smrg ;; 129600084f2cSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 129727702724Smrg basic_machine=sh-unknown 129827702724Smrg ;; 129927702724Smrg cydra) 130027702724Smrg basic_machine=cydra-cydrome 130127702724Smrg ;; 130227702724Smrg orion) 130327702724Smrg basic_machine=orion-highlevel 130427702724Smrg ;; 130527702724Smrg orion105) 130627702724Smrg basic_machine=clipper-highlevel 130727702724Smrg ;; 130827702724Smrg mac | mpw | mac-mpw) 130927702724Smrg basic_machine=m68k-apple 131027702724Smrg ;; 131127702724Smrg pmac | pmac-mpw) 131227702724Smrg basic_machine=powerpc-apple 131327702724Smrg ;; 131427702724Smrg *-unknown) 131527702724Smrg # Make sure to match an already-canonicalized machine name. 131627702724Smrg ;; 131727702724Smrg *) 13187cea3689Smrg echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 131927702724Smrg exit 1 132027702724Smrg ;; 132127702724Smrgesac 132227702724Smrg 132327702724Smrg# Here we canonicalize certain aliases for manufacturers. 132427702724Smrgcase $basic_machine in 132527702724Smrg *-digital*) 13267cea3689Smrg basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'` 132727702724Smrg ;; 132827702724Smrg *-commodore*) 13297cea3689Smrg basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'` 133027702724Smrg ;; 133127702724Smrg *) 133227702724Smrg ;; 133327702724Smrgesac 133427702724Smrg 133527702724Smrg# Decode manufacturer-specific aliases for certain operating systems. 133627702724Smrg 133727702724Smrgif [ x"$os" != x"" ] 133827702724Smrgthen 133927702724Smrgcase $os in 13407cea3689Smrg # First match some system type aliases that might get confused 13417cea3689Smrg # with valid system types. 134227702724Smrg # -solaris* is a basic system type, with this one exception. 1343313a12fdSmrg -auroraux) 1344313a12fdSmrg os=-auroraux 134500084f2cSmrg ;; 134627702724Smrg -solaris1 | -solaris1.*) 134727702724Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 134827702724Smrg ;; 134927702724Smrg -solaris) 135027702724Smrg os=-solaris2 135127702724Smrg ;; 135227702724Smrg -unixware*) 135327702724Smrg os=-sysv4.2uw 135427702724Smrg ;; 135527702724Smrg -gnu/linux*) 135627702724Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 135727702724Smrg ;; 13587cea3689Smrg # es1800 is here to avoid being matched by es* (a different OS) 13597cea3689Smrg -es1800*) 13607cea3689Smrg os=-ose 13617cea3689Smrg ;; 13627cea3689Smrg # Now accept the basic system types. 136327702724Smrg # The portable systems comes first. 13647cea3689Smrg # Each alternative MUST end in a * to match a version number. 136527702724Smrg # -sysv* is not here because it comes later, after sysvr4. 136627702724Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 136700084f2cSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 136800084f2cSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1369313a12fdSmrg | -sym* | -kopensolaris* | -plan9* \ 137027702724Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13717cea3689Smrg | -aos* | -aros* | -cloudabi* | -sortix* \ 137227702724Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 137327702724Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13747cea3689Smrg | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \ 13757cea3689Smrg | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ 137627702724Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 137727702724Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 137827702724Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13797cea3689Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* | -hcos* \ 13807cea3689Smrg | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ 1381313a12fdSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13827cea3689Smrg | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1383313a12fdSmrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 13847cea3689Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 13857cea3689Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \ 138627702724Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 138727702724Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 138827702724Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13897cea3689Smrg | -morphos* | -superux* | -rtmk* | -windiss* \ 139027702724Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13917cea3689Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ 13927cea3689Smrg | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \ 13937cea3689Smrg | -midnightbsd*) 139427702724Smrg # Remember, each alternative MUST END IN *, to match a version number. 139527702724Smrg ;; 139627702724Smrg -qnx*) 139727702724Smrg case $basic_machine in 139827702724Smrg x86-* | i*86-*) 139927702724Smrg ;; 140027702724Smrg *) 140127702724Smrg os=-nto$os 140227702724Smrg ;; 140327702724Smrg esac 140427702724Smrg ;; 140527702724Smrg -nto-qnx*) 140627702724Smrg ;; 140727702724Smrg -nto*) 140827702724Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 140927702724Smrg ;; 14107cea3689Smrg -sim | -xray | -os68k* | -v88r* \ 14117cea3689Smrg | -windows* | -osx | -abug | -netware* | -os9* \ 141227702724Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 141327702724Smrg ;; 141427702724Smrg -mac*) 14157cea3689Smrg os=`echo "$os" | sed -e 's|mac|macos|'` 141627702724Smrg ;; 141727702724Smrg -linux-dietlibc) 141827702724Smrg os=-linux-dietlibc 141927702724Smrg ;; 142027702724Smrg -linux*) 142127702724Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 142227702724Smrg ;; 142327702724Smrg -sunos5*) 14247cea3689Smrg os=`echo "$os" | sed -e 's|sunos5|solaris2|'` 142527702724Smrg ;; 142627702724Smrg -sunos6*) 14277cea3689Smrg os=`echo "$os" | sed -e 's|sunos6|solaris3|'` 142827702724Smrg ;; 142927702724Smrg -opened*) 143027702724Smrg os=-openedition 143127702724Smrg ;; 1432313a12fdSmrg -os400*) 143327702724Smrg os=-os400 143427702724Smrg ;; 143527702724Smrg -wince*) 143627702724Smrg os=-wince 143727702724Smrg ;; 143827702724Smrg -utek*) 143927702724Smrg os=-bsd 144027702724Smrg ;; 144127702724Smrg -dynix*) 144227702724Smrg os=-bsd 144327702724Smrg ;; 144427702724Smrg -acis*) 144527702724Smrg os=-aos 144627702724Smrg ;; 144727702724Smrg -atheos*) 144827702724Smrg os=-atheos 144927702724Smrg ;; 145027702724Smrg -syllable*) 145127702724Smrg os=-syllable 145227702724Smrg ;; 145327702724Smrg -386bsd) 145427702724Smrg os=-bsd 145527702724Smrg ;; 145627702724Smrg -ctix* | -uts*) 145727702724Smrg os=-sysv 145827702724Smrg ;; 145927702724Smrg -nova*) 146027702724Smrg os=-rtmk-nova 146127702724Smrg ;; 14627cea3689Smrg -ns2) 146327702724Smrg os=-nextstep2 146427702724Smrg ;; 146527702724Smrg -nsk*) 146627702724Smrg os=-nsk 146727702724Smrg ;; 146827702724Smrg # Preserve the version number of sinix5. 146927702724Smrg -sinix5.*) 147027702724Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 147127702724Smrg ;; 147227702724Smrg -sinix*) 147327702724Smrg os=-sysv4 147427702724Smrg ;; 1475313a12fdSmrg -tpf*) 147627702724Smrg os=-tpf 147727702724Smrg ;; 147827702724Smrg -triton*) 147927702724Smrg os=-sysv3 148027702724Smrg ;; 148127702724Smrg -oss*) 148227702724Smrg os=-sysv3 148327702724Smrg ;; 14847cea3689Smrg -svr4*) 148527702724Smrg os=-sysv4 148627702724Smrg ;; 148727702724Smrg -svr3) 148827702724Smrg os=-sysv3 148927702724Smrg ;; 149027702724Smrg -sysvr4) 149127702724Smrg os=-sysv4 149227702724Smrg ;; 149327702724Smrg # This must come after -sysvr4. 149427702724Smrg -sysv*) 149527702724Smrg ;; 149627702724Smrg -ose*) 149727702724Smrg os=-ose 149827702724Smrg ;; 149927702724Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 150027702724Smrg os=-mint 150127702724Smrg ;; 150227702724Smrg -zvmoe) 150327702724Smrg os=-zvmoe 150427702724Smrg ;; 150500084f2cSmrg -dicos*) 150600084f2cSmrg os=-dicos 150700084f2cSmrg ;; 15087cea3689Smrg -pikeos*) 15097cea3689Smrg # Until real need of OS specific support for 15107cea3689Smrg # particular features comes up, bare metal 15117cea3689Smrg # configurations are quite functional. 15127cea3689Smrg case $basic_machine in 15137cea3689Smrg arm*) 15147cea3689Smrg os=-eabi 15157cea3689Smrg ;; 15167cea3689Smrg *) 15177cea3689Smrg os=-elf 15187cea3689Smrg ;; 15197cea3689Smrg esac 15207cea3689Smrg ;; 1521313a12fdSmrg -nacl*) 1522313a12fdSmrg ;; 15237cea3689Smrg -ios) 15247cea3689Smrg ;; 152527702724Smrg -none) 152627702724Smrg ;; 152727702724Smrg *) 152827702724Smrg # Get rid of the `-' at the beginning of $os. 152927702724Smrg os=`echo $os | sed 's/[^-]*-//'` 15307cea3689Smrg echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 153127702724Smrg exit 1 153227702724Smrg ;; 153327702724Smrgesac 153427702724Smrgelse 153527702724Smrg 153627702724Smrg# Here we handle the default operating systems that come with various machines. 153727702724Smrg# The value should be what the vendor currently ships out the door with their 153827702724Smrg# machine or put another way, the most popular os provided with the machine. 153927702724Smrg 154027702724Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 154127702724Smrg# "-sun"), then you have to tell the case statement up towards the top 154227702724Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 154327702724Smrg# will signal an error saying that MANUFACTURER isn't an operating 154427702724Smrg# system, and we'll never get to this point. 154527702724Smrg 154627702724Smrgcase $basic_machine in 1547313a12fdSmrg score-*) 1548e19dfac4Smrg os=-elf 1549e19dfac4Smrg ;; 1550313a12fdSmrg spu-*) 1551e19dfac4Smrg os=-elf 1552e19dfac4Smrg ;; 155327702724Smrg *-acorn) 155427702724Smrg os=-riscix1.2 155527702724Smrg ;; 155627702724Smrg arm*-rebel) 155727702724Smrg os=-linux 155827702724Smrg ;; 155927702724Smrg arm*-semi) 156027702724Smrg os=-aout 156127702724Smrg ;; 1562313a12fdSmrg c4x-* | tic4x-*) 1563313a12fdSmrg os=-coff 1564313a12fdSmrg ;; 15657cea3689Smrg c8051-*) 15667cea3689Smrg os=-elf 15677cea3689Smrg ;; 1568313a12fdSmrg hexagon-*) 1569313a12fdSmrg os=-elf 1570313a12fdSmrg ;; 1571313a12fdSmrg tic54x-*) 1572313a12fdSmrg os=-coff 1573313a12fdSmrg ;; 1574313a12fdSmrg tic55x-*) 1575313a12fdSmrg os=-coff 1576313a12fdSmrg ;; 1577313a12fdSmrg tic6x-*) 1578313a12fdSmrg os=-coff 1579e19dfac4Smrg ;; 158027702724Smrg # This must come before the *-dec entry. 158127702724Smrg pdp10-*) 158227702724Smrg os=-tops20 158327702724Smrg ;; 158427702724Smrg pdp11-*) 158527702724Smrg os=-none 158627702724Smrg ;; 158727702724Smrg *-dec | vax-*) 158827702724Smrg os=-ultrix4.2 158927702724Smrg ;; 159027702724Smrg m68*-apollo) 159127702724Smrg os=-domain 159227702724Smrg ;; 159327702724Smrg i386-sun) 159427702724Smrg os=-sunos4.0.2 159527702724Smrg ;; 159627702724Smrg m68000-sun) 159727702724Smrg os=-sunos3 159827702724Smrg ;; 159927702724Smrg m68*-cisco) 160027702724Smrg os=-aout 160127702724Smrg ;; 1602313a12fdSmrg mep-*) 1603e19dfac4Smrg os=-elf 1604e19dfac4Smrg ;; 160527702724Smrg mips*-cisco) 160627702724Smrg os=-elf 160727702724Smrg ;; 160827702724Smrg mips*-*) 160927702724Smrg os=-elf 161027702724Smrg ;; 161127702724Smrg or32-*) 161227702724Smrg os=-coff 161327702724Smrg ;; 161427702724Smrg *-tti) # must be before sparc entry or we get the wrong os. 161527702724Smrg os=-sysv3 161627702724Smrg ;; 161727702724Smrg sparc-* | *-sun) 161827702724Smrg os=-sunos4.1.1 161927702724Smrg ;; 16207cea3689Smrg pru-*) 16217cea3689Smrg os=-elf 16227cea3689Smrg ;; 162327702724Smrg *-be) 162427702724Smrg os=-beos 162527702724Smrg ;; 162627702724Smrg *-ibm) 162727702724Smrg os=-aix 162827702724Smrg ;; 1629313a12fdSmrg *-knuth) 163027702724Smrg os=-mmixware 163127702724Smrg ;; 163227702724Smrg *-wec) 163327702724Smrg os=-proelf 163427702724Smrg ;; 163527702724Smrg *-winbond) 163627702724Smrg os=-proelf 163727702724Smrg ;; 163827702724Smrg *-oki) 163927702724Smrg os=-proelf 164027702724Smrg ;; 164127702724Smrg *-hp) 164227702724Smrg os=-hpux 164327702724Smrg ;; 164427702724Smrg *-hitachi) 164527702724Smrg os=-hiux 164627702724Smrg ;; 164727702724Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 164827702724Smrg os=-sysv 164927702724Smrg ;; 165027702724Smrg *-cbm) 165127702724Smrg os=-amigaos 165227702724Smrg ;; 165327702724Smrg *-dg) 165427702724Smrg os=-dgux 165527702724Smrg ;; 165627702724Smrg *-dolphin) 165727702724Smrg os=-sysv3 165827702724Smrg ;; 165927702724Smrg m68k-ccur) 166027702724Smrg os=-rtu 166127702724Smrg ;; 166227702724Smrg m88k-omron*) 166327702724Smrg os=-luna 166427702724Smrg ;; 16657cea3689Smrg *-next) 166627702724Smrg os=-nextstep 166727702724Smrg ;; 166827702724Smrg *-sequent) 166927702724Smrg os=-ptx 167027702724Smrg ;; 167127702724Smrg *-crds) 167227702724Smrg os=-unos 167327702724Smrg ;; 167427702724Smrg *-ns) 167527702724Smrg os=-genix 167627702724Smrg ;; 167727702724Smrg i370-*) 167827702724Smrg os=-mvs 167927702724Smrg ;; 168027702724Smrg *-gould) 168127702724Smrg os=-sysv 168227702724Smrg ;; 168327702724Smrg *-highlevel) 168427702724Smrg os=-bsd 168527702724Smrg ;; 168627702724Smrg *-encore) 168727702724Smrg os=-bsd 168827702724Smrg ;; 168927702724Smrg *-sgi) 169027702724Smrg os=-irix 169127702724Smrg ;; 169227702724Smrg *-siemens) 169327702724Smrg os=-sysv4 169427702724Smrg ;; 169527702724Smrg *-masscomp) 169627702724Smrg os=-rtu 169727702724Smrg ;; 169827702724Smrg f30[01]-fujitsu | f700-fujitsu) 169927702724Smrg os=-uxpv 170027702724Smrg ;; 170127702724Smrg *-rom68k) 170227702724Smrg os=-coff 170327702724Smrg ;; 170427702724Smrg *-*bug) 170527702724Smrg os=-coff 170627702724Smrg ;; 170727702724Smrg *-apple) 170827702724Smrg os=-macos 170927702724Smrg ;; 171027702724Smrg *-atari*) 171127702724Smrg os=-mint 171227702724Smrg ;; 171327702724Smrg *) 171427702724Smrg os=-none 171527702724Smrg ;; 171627702724Smrgesac 171727702724Smrgfi 171827702724Smrg 171927702724Smrg# Here we handle the case where we know the os, and the CPU type, but not the 172027702724Smrg# manufacturer. We pick the logical manufacturer. 172127702724Smrgvendor=unknown 172227702724Smrgcase $basic_machine in 172327702724Smrg *-unknown) 172427702724Smrg case $os in 172527702724Smrg -riscix*) 172627702724Smrg vendor=acorn 172727702724Smrg ;; 172827702724Smrg -sunos*) 172927702724Smrg vendor=sun 173027702724Smrg ;; 173100084f2cSmrg -cnk*|-aix*) 173227702724Smrg vendor=ibm 173327702724Smrg ;; 173427702724Smrg -beos*) 173527702724Smrg vendor=be 173627702724Smrg ;; 173727702724Smrg -hpux*) 173827702724Smrg vendor=hp 173927702724Smrg ;; 174027702724Smrg -mpeix*) 174127702724Smrg vendor=hp 174227702724Smrg ;; 174327702724Smrg -hiux*) 174427702724Smrg vendor=hitachi 174527702724Smrg ;; 174627702724Smrg -unos*) 174727702724Smrg vendor=crds 174827702724Smrg ;; 174927702724Smrg -dgux*) 175027702724Smrg vendor=dg 175127702724Smrg ;; 175227702724Smrg -luna*) 175327702724Smrg vendor=omron 175427702724Smrg ;; 175527702724Smrg -genix*) 175627702724Smrg vendor=ns 175727702724Smrg ;; 175827702724Smrg -mvs* | -opened*) 175927702724Smrg vendor=ibm 176027702724Smrg ;; 176127702724Smrg -os400*) 176227702724Smrg vendor=ibm 176327702724Smrg ;; 176427702724Smrg -ptx*) 176527702724Smrg vendor=sequent 176627702724Smrg ;; 176727702724Smrg -tpf*) 176827702724Smrg vendor=ibm 176927702724Smrg ;; 177027702724Smrg -vxsim* | -vxworks* | -windiss*) 177127702724Smrg vendor=wrs 177227702724Smrg ;; 177327702724Smrg -aux*) 177427702724Smrg vendor=apple 177527702724Smrg ;; 177627702724Smrg -hms*) 177727702724Smrg vendor=hitachi 177827702724Smrg ;; 177927702724Smrg -mpw* | -macos*) 178027702724Smrg vendor=apple 178127702724Smrg ;; 178227702724Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 178327702724Smrg vendor=atari 178427702724Smrg ;; 178527702724Smrg -vos*) 178627702724Smrg vendor=stratus 178727702724Smrg ;; 178827702724Smrg esac 17897cea3689Smrg basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"` 179027702724Smrg ;; 179127702724Smrgesac 179227702724Smrg 17937cea3689Smrgecho "$basic_machine$os" 179427702724Smrgexit 179527702724Smrg 179627702724Smrg# Local variables: 17977cea3689Smrg# eval: (add-hook 'write-file-functions 'time-stamp) 179827702724Smrg# time-stamp-start: "timestamp='" 179927702724Smrg# time-stamp-format: "%:y-%02m-%02d" 180027702724Smrg# time-stamp-end: "'" 180127702724Smrg# End: 1802