1966bf024Smrg#! /bin/sh 2966bf024Smrg# Configuration validation subroutine script. 3966bf024Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 49384b2f3Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 59384b2f3Smrg# 2011, 2012, 2013 Free Software Foundation, Inc. 6966bf024Smrg 79384b2f3Smrgtimestamp='2012-12-29' 8966bf024Smrg 99384b2f3Smrg# This file is free software; you can redistribute it and/or modify it 109384b2f3Smrg# under the terms of the GNU General Public License as published by 119384b2f3Smrg# the Free Software Foundation; either version 3 of the License, or 12966bf024Smrg# (at your option) any later version. 13966bf024Smrg# 149384b2f3Smrg# This program is distributed in the hope that it will be useful, but 159384b2f3Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 169384b2f3Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 179384b2f3Smrg# General Public License for more details. 18966bf024Smrg# 19966bf024Smrg# You should have received a copy of the GNU General Public License 209384b2f3Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 219384b2f3Smrg# 22966bf024Smrg# As a special exception to the GNU General Public License, if you 23966bf024Smrg# distribute this file as part of a program that contains a 24966bf024Smrg# configuration script generated by Autoconf, you may include it under 259384b2f3Smrg# the same distribution terms that you use for the rest of that 269384b2f3Smrg# program. This Exception is an additional permission under section 7 279384b2f3Smrg# of the GNU General Public License, version 3 ("GPLv3"). 28966bf024Smrg 299384b2f3Smrg 309384b2f3Smrg# Please send patches with a ChangeLog entry to config-patches@gnu.org. 31966bf024Smrg# 32966bf024Smrg# Configuration subroutine to validate and canonicalize a configuration type. 33966bf024Smrg# Supply the specified configuration type as an argument. 34966bf024Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 35966bf024Smrg# Otherwise, we print the canonical config type on stdout and succeed. 36966bf024Smrg 379384b2f3Smrg# You can get the latest version of this script from: 389384b2f3Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 399384b2f3Smrg 40966bf024Smrg# This file is supposed to be the same for all GNU packages 41966bf024Smrg# and recognize all the CPU types, system types and aliases 42966bf024Smrg# that are meaningful with *any* GNU software. 43966bf024Smrg# Each package is responsible for reporting which valid configurations 44966bf024Smrg# it does not support. The user should be able to distinguish 45966bf024Smrg# a failure to support a valid configuration from a meaningless 46966bf024Smrg# configuration. 47966bf024Smrg 48966bf024Smrg# The goal of this file is to map all the various variations of a given 49966bf024Smrg# machine specification into a single specification in the form: 50966bf024Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 51966bf024Smrg# or in some cases, the newer four-part form: 52966bf024Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 53966bf024Smrg# It is wrong to echo any other type of specification. 54966bf024Smrg 55966bf024Smrgme=`echo "$0" | sed -e 's,.*/,,'` 56966bf024Smrg 57966bf024Smrgusage="\ 58966bf024SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 59966bf024Smrg $0 [OPTION] ALIAS 60966bf024Smrg 61966bf024SmrgCanonicalize a configuration name. 62966bf024Smrg 63966bf024SmrgOperation modes: 64966bf024Smrg -h, --help print this help, then exit 65966bf024Smrg -t, --time-stamp print date of last modification, then exit 66966bf024Smrg -v, --version print version number, then exit 67966bf024Smrg 68966bf024SmrgReport bugs and patches to <config-patches@gnu.org>." 69966bf024Smrg 70966bf024Smrgversion="\ 71966bf024SmrgGNU config.sub ($timestamp) 72966bf024Smrg 739384b2f3SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 749384b2f3Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 759384b2f3Smrg2012, 2013 Free Software Foundation, Inc. 76966bf024Smrg 77966bf024SmrgThis is free software; see the source for copying conditions. There is NO 78966bf024Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 79966bf024Smrg 80966bf024Smrghelp=" 81966bf024SmrgTry \`$me --help' for more information." 82966bf024Smrg 83966bf024Smrg# Parse command line 84966bf024Smrgwhile test $# -gt 0 ; do 85966bf024Smrg case $1 in 86966bf024Smrg --time-stamp | --time* | -t ) 879384b2f3Smrg echo "$timestamp" ; exit ;; 88966bf024Smrg --version | -v ) 899384b2f3Smrg echo "$version" ; exit ;; 90966bf024Smrg --help | --h* | -h ) 919384b2f3Smrg echo "$usage"; exit ;; 92966bf024Smrg -- ) # Stop option processing 93966bf024Smrg shift; break ;; 94966bf024Smrg - ) # Use stdin as input. 95966bf024Smrg break ;; 96966bf024Smrg -* ) 97966bf024Smrg echo "$me: invalid option $1$help" 98966bf024Smrg exit 1 ;; 99966bf024Smrg 100966bf024Smrg *local*) 101966bf024Smrg # First pass through any local machine types. 102966bf024Smrg echo $1 1039384b2f3Smrg exit ;; 104966bf024Smrg 105966bf024Smrg * ) 106966bf024Smrg break ;; 107966bf024Smrg esac 108966bf024Smrgdone 109966bf024Smrg 110966bf024Smrgcase $# in 111966bf024Smrg 0) echo "$me: missing argument$help" >&2 112966bf024Smrg exit 1;; 113966bf024Smrg 1) ;; 114966bf024Smrg *) echo "$me: too many arguments$help" >&2 115966bf024Smrg exit 1;; 116966bf024Smrgesac 117966bf024Smrg 118966bf024Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 119966bf024Smrg# Here we must recognize all the valid KERNEL-OS combinations. 120966bf024Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 121966bf024Smrgcase $maybe_os in 1229384b2f3Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 1239384b2f3Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1249384b2f3Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1259384b2f3Smrg kopensolaris*-gnu* | \ 1269384b2f3Smrg storm-chaos* | os2-emx* | rtmk-nova*) 127966bf024Smrg os=-$maybe_os 128966bf024Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 129966bf024Smrg ;; 1309384b2f3Smrg android-linux) 1319384b2f3Smrg os=-linux-android 1329384b2f3Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 1339384b2f3Smrg ;; 134966bf024Smrg *) 135966bf024Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 136966bf024Smrg if [ $basic_machine != $1 ] 137966bf024Smrg then os=`echo $1 | sed 's/.*-/-/'` 138966bf024Smrg else os=; fi 139966bf024Smrg ;; 140966bf024Smrgesac 141966bf024Smrg 142966bf024Smrg### Let's recognize common machines as not being operating systems so 143966bf024Smrg### that things like config.sub decstation-3100 work. We also 144966bf024Smrg### recognize some manufacturers as not being operating systems, so we 145966bf024Smrg### can provide default operating systems below. 146966bf024Smrgcase $os in 147966bf024Smrg -sun*os*) 148966bf024Smrg # Prevent following clause from handling this invalid input. 149966bf024Smrg ;; 150966bf024Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 151966bf024Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 152966bf024Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 153966bf024Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 154966bf024Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 155966bf024Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1569384b2f3Smrg -apple | -axis | -knuth | -cray | -microblaze*) 157966bf024Smrg os= 158966bf024Smrg basic_machine=$1 159966bf024Smrg ;; 1609384b2f3Smrg -bluegene*) 1619384b2f3Smrg os=-cnk 1629384b2f3Smrg ;; 163966bf024Smrg -sim | -cisco | -oki | -wec | -winbond) 164966bf024Smrg os= 165966bf024Smrg basic_machine=$1 166966bf024Smrg ;; 167966bf024Smrg -scout) 168966bf024Smrg ;; 169966bf024Smrg -wrs) 170966bf024Smrg os=-vxworks 171966bf024Smrg basic_machine=$1 172966bf024Smrg ;; 173966bf024Smrg -chorusos*) 174966bf024Smrg os=-chorusos 175966bf024Smrg basic_machine=$1 176966bf024Smrg ;; 1779384b2f3Smrg -chorusrdb) 1789384b2f3Smrg os=-chorusrdb 179966bf024Smrg basic_machine=$1 1809384b2f3Smrg ;; 181966bf024Smrg -hiux*) 182966bf024Smrg os=-hiuxwe2 183966bf024Smrg ;; 1849384b2f3Smrg -sco6) 1859384b2f3Smrg os=-sco5v6 1869384b2f3Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1879384b2f3Smrg ;; 188966bf024Smrg -sco5) 189966bf024Smrg os=-sco3.2v5 190966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 191966bf024Smrg ;; 192966bf024Smrg -sco4) 193966bf024Smrg os=-sco3.2v4 194966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 195966bf024Smrg ;; 196966bf024Smrg -sco3.2.[4-9]*) 197966bf024Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 198966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 199966bf024Smrg ;; 200966bf024Smrg -sco3.2v[4-9]*) 201966bf024Smrg # Don't forget version if it is 3.2v4 or newer. 202966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 203966bf024Smrg ;; 2049384b2f3Smrg -sco5v6*) 2059384b2f3Smrg # Don't forget version if it is 3.2v4 or newer. 2069384b2f3Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2079384b2f3Smrg ;; 208966bf024Smrg -sco*) 209966bf024Smrg os=-sco3.2v2 210966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 211966bf024Smrg ;; 212966bf024Smrg -udk*) 213966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 214966bf024Smrg ;; 215966bf024Smrg -isc) 216966bf024Smrg os=-isc2.2 217966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 218966bf024Smrg ;; 219966bf024Smrg -clix*) 220966bf024Smrg basic_machine=clipper-intergraph 221966bf024Smrg ;; 222966bf024Smrg -isc*) 223966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 224966bf024Smrg ;; 2259384b2f3Smrg -lynx*178) 2269384b2f3Smrg os=-lynxos178 2279384b2f3Smrg ;; 2289384b2f3Smrg -lynx*5) 2299384b2f3Smrg os=-lynxos5 2309384b2f3Smrg ;; 231966bf024Smrg -lynx*) 232966bf024Smrg os=-lynxos 233966bf024Smrg ;; 234966bf024Smrg -ptx*) 235966bf024Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 236966bf024Smrg ;; 237966bf024Smrg -windowsnt*) 238966bf024Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 239966bf024Smrg ;; 240966bf024Smrg -psos*) 241966bf024Smrg os=-psos 242966bf024Smrg ;; 243966bf024Smrg -mint | -mint[0-9]*) 244966bf024Smrg basic_machine=m68k-atari 245966bf024Smrg os=-mint 246966bf024Smrg ;; 247966bf024Smrgesac 248966bf024Smrg 249966bf024Smrg# Decode aliases for certain CPU-COMPANY combinations. 250966bf024Smrgcase $basic_machine in 251966bf024Smrg # Recognize the basic CPU types without company name. 252966bf024Smrg # Some are omitted here because they have special meanings below. 253966bf024Smrg 1750a | 580 \ 254966bf024Smrg | a29k \ 2559384b2f3Smrg | aarch64 | aarch64_be \ 256966bf024Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 257966bf024Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2589384b2f3Smrg | am33_2.0 \ 2599384b2f3Smrg | arc \ 2609384b2f3Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 2619384b2f3Smrg | avr | avr32 \ 2629384b2f3Smrg | be32 | be64 \ 2639384b2f3Smrg | bfin \ 264966bf024Smrg | c4x | clipper \ 265966bf024Smrg | d10v | d30v | dlx | dsp16xx \ 2669384b2f3Smrg | epiphany \ 2679384b2f3Smrg | fido | fr30 | frv \ 268966bf024Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2699384b2f3Smrg | hexagon \ 270966bf024Smrg | i370 | i860 | i960 | ia64 \ 2719384b2f3Smrg | ip2k | iq2000 \ 2729384b2f3Smrg | le32 | le64 \ 2739384b2f3Smrg | lm32 \ 2749384b2f3Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 2759384b2f3Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 276966bf024Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 277966bf024Smrg | mips16 \ 278966bf024Smrg | mips64 | mips64el \ 2799384b2f3Smrg | mips64octeon | mips64octeonel \ 280966bf024Smrg | mips64orion | mips64orionel \ 2819384b2f3Smrg | mips64r5900 | mips64r5900el \ 2829384b2f3Smrg | mips64vr | mips64vrel \ 283966bf024Smrg | mips64vr4100 | mips64vr4100el \ 284966bf024Smrg | mips64vr4300 | mips64vr4300el \ 285966bf024Smrg | mips64vr5000 | mips64vr5000el \ 2869384b2f3Smrg | mips64vr5900 | mips64vr5900el \ 287966bf024Smrg | mipsisa32 | mipsisa32el \ 288966bf024Smrg | mipsisa32r2 | mipsisa32r2el \ 289966bf024Smrg | mipsisa64 | mipsisa64el \ 2909384b2f3Smrg | mipsisa64r2 | mipsisa64r2el \ 291966bf024Smrg | mipsisa64sb1 | mipsisa64sb1el \ 292966bf024Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 293966bf024Smrg | mipstx39 | mipstx39el \ 294966bf024Smrg | mn10200 | mn10300 \ 2959384b2f3Smrg | moxie \ 2969384b2f3Smrg | mt \ 297966bf024Smrg | msp430 \ 2989384b2f3Smrg | nds32 | nds32le | nds32be \ 2999384b2f3Smrg | nios | nios2 \ 300966bf024Smrg | ns16k | ns32k \ 3019384b2f3Smrg | open8 \ 3029384b2f3Smrg | or32 \ 303966bf024Smrg | pdp10 | pdp11 | pj | pjl \ 3049384b2f3Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 305966bf024Smrg | pyramid \ 3069384b2f3Smrg | rl78 | rx \ 3079384b2f3Smrg | score \ 3089384b2f3Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 309966bf024Smrg | sh64 | sh64le \ 3109384b2f3Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3119384b2f3Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 3129384b2f3Smrg | spu \ 3139384b2f3Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3149384b2f3Smrg | ubicom32 \ 3159384b2f3Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 316966bf024Smrg | we32k \ 3179384b2f3Smrg | x86 | xc16x | xstormy16 | xtensa \ 3189384b2f3Smrg | z8k | z80) 319966bf024Smrg basic_machine=$basic_machine-unknown 320966bf024Smrg ;; 3219384b2f3Smrg c54x) 3229384b2f3Smrg basic_machine=tic54x-unknown 3239384b2f3Smrg ;; 3249384b2f3Smrg c55x) 3259384b2f3Smrg basic_machine=tic55x-unknown 3269384b2f3Smrg ;; 3279384b2f3Smrg c6x) 3289384b2f3Smrg basic_machine=tic6x-unknown 3299384b2f3Smrg ;; 3309384b2f3Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 331966bf024Smrg basic_machine=$basic_machine-unknown 332966bf024Smrg os=-none 333966bf024Smrg ;; 334966bf024Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 335966bf024Smrg ;; 3369384b2f3Smrg ms1) 3379384b2f3Smrg basic_machine=mt-unknown 3389384b2f3Smrg ;; 3399384b2f3Smrg 3409384b2f3Smrg strongarm | thumb | xscale) 3419384b2f3Smrg basic_machine=arm-unknown 3429384b2f3Smrg ;; 3439384b2f3Smrg xgate) 3449384b2f3Smrg basic_machine=$basic_machine-unknown 3459384b2f3Smrg os=-none 3469384b2f3Smrg ;; 3479384b2f3Smrg xscaleeb) 3489384b2f3Smrg basic_machine=armeb-unknown 3499384b2f3Smrg ;; 3509384b2f3Smrg 3519384b2f3Smrg xscaleel) 3529384b2f3Smrg basic_machine=armel-unknown 3539384b2f3Smrg ;; 354966bf024Smrg 355966bf024Smrg # We use `pc' rather than `unknown' 356966bf024Smrg # because (1) that's what they normally are, and 357966bf024Smrg # (2) the word "unknown" tends to confuse beginning users. 358966bf024Smrg i*86 | x86_64) 359966bf024Smrg basic_machine=$basic_machine-pc 360966bf024Smrg ;; 361966bf024Smrg # Object if more than one company name word. 362966bf024Smrg *-*-*) 363966bf024Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 364966bf024Smrg exit 1 365966bf024Smrg ;; 366966bf024Smrg # Recognize the basic CPU types with company name. 367966bf024Smrg 580-* \ 368966bf024Smrg | a29k-* \ 3699384b2f3Smrg | aarch64-* | aarch64_be-* \ 370966bf024Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 371966bf024Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 372966bf024Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 373966bf024Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3749384b2f3Smrg | avr-* | avr32-* \ 3759384b2f3Smrg | be32-* | be64-* \ 3769384b2f3Smrg | bfin-* | bs2000-* \ 3779384b2f3Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3789384b2f3Smrg | clipper-* | craynv-* | cydra-* \ 379966bf024Smrg | d10v-* | d30v-* | dlx-* \ 380966bf024Smrg | elxsi-* \ 3819384b2f3Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 382966bf024Smrg | h8300-* | h8500-* \ 383966bf024Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 3849384b2f3Smrg | hexagon-* \ 385966bf024Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3869384b2f3Smrg | ip2k-* | iq2000-* \ 3879384b2f3Smrg | le32-* | le64-* \ 3889384b2f3Smrg | lm32-* \ 3899384b2f3Smrg | m32c-* | m32r-* | m32rle-* \ 390966bf024Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3919384b2f3Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 3929384b2f3Smrg | microblaze-* | microblazeel-* \ 393966bf024Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 394966bf024Smrg | mips16-* \ 395966bf024Smrg | mips64-* | mips64el-* \ 3969384b2f3Smrg | mips64octeon-* | mips64octeonel-* \ 397966bf024Smrg | mips64orion-* | mips64orionel-* \ 3989384b2f3Smrg | mips64r5900-* | mips64r5900el-* \ 3999384b2f3Smrg | mips64vr-* | mips64vrel-* \ 400966bf024Smrg | mips64vr4100-* | mips64vr4100el-* \ 401966bf024Smrg | mips64vr4300-* | mips64vr4300el-* \ 402966bf024Smrg | mips64vr5000-* | mips64vr5000el-* \ 4039384b2f3Smrg | mips64vr5900-* | mips64vr5900el-* \ 404966bf024Smrg | mipsisa32-* | mipsisa32el-* \ 405966bf024Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 406966bf024Smrg | mipsisa64-* | mipsisa64el-* \ 4079384b2f3Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 408966bf024Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 409966bf024Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 410966bf024Smrg | mipstx39-* | mipstx39el-* \ 4119384b2f3Smrg | mmix-* \ 4129384b2f3Smrg | mt-* \ 413966bf024Smrg | msp430-* \ 4149384b2f3Smrg | nds32-* | nds32le-* | nds32be-* \ 4159384b2f3Smrg | nios-* | nios2-* \ 4169384b2f3Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 4179384b2f3Smrg | open8-* \ 418966bf024Smrg | orion-* \ 419966bf024Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 4209384b2f3Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 421966bf024Smrg | pyramid-* \ 4229384b2f3Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 4239384b2f3Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 424966bf024Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4259384b2f3Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4269384b2f3Smrg | sparclite-* \ 4279384b2f3Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 4289384b2f3Smrg | tahoe-* \ 429966bf024Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 4309384b2f3Smrg | tile*-* \ 431966bf024Smrg | tron-* \ 4329384b2f3Smrg | ubicom32-* \ 4339384b2f3Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 4349384b2f3Smrg | vax-* \ 435966bf024Smrg | we32k-* \ 4369384b2f3Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4379384b2f3Smrg | xstormy16-* | xtensa*-* \ 438966bf024Smrg | ymp-* \ 4399384b2f3Smrg | z8k-* | z80-*) 4409384b2f3Smrg ;; 4419384b2f3Smrg # Recognize the basic CPU types without company name, with glob match. 4429384b2f3Smrg xtensa*) 4439384b2f3Smrg basic_machine=$basic_machine-unknown 444966bf024Smrg ;; 445966bf024Smrg # Recognize the various machine names and aliases which stand 446966bf024Smrg # for a CPU type and a company and sometimes even an OS. 447966bf024Smrg 386bsd) 448966bf024Smrg basic_machine=i386-unknown 449966bf024Smrg os=-bsd 450966bf024Smrg ;; 451966bf024Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 452966bf024Smrg basic_machine=m68000-att 453966bf024Smrg ;; 454966bf024Smrg 3b*) 455966bf024Smrg basic_machine=we32k-att 456966bf024Smrg ;; 457966bf024Smrg a29khif) 458966bf024Smrg basic_machine=a29k-amd 459966bf024Smrg os=-udi 460966bf024Smrg ;; 4619384b2f3Smrg abacus) 4629384b2f3Smrg basic_machine=abacus-unknown 4639384b2f3Smrg ;; 464966bf024Smrg adobe68k) 465966bf024Smrg basic_machine=m68010-adobe 466966bf024Smrg os=-scout 467966bf024Smrg ;; 468966bf024Smrg alliant | fx80) 469966bf024Smrg basic_machine=fx80-alliant 470966bf024Smrg ;; 471966bf024Smrg altos | altos3068) 472966bf024Smrg basic_machine=m68k-altos 473966bf024Smrg ;; 474966bf024Smrg am29k) 475966bf024Smrg basic_machine=a29k-none 476966bf024Smrg os=-bsd 477966bf024Smrg ;; 478966bf024Smrg amd64) 479966bf024Smrg basic_machine=x86_64-pc 480966bf024Smrg ;; 4819384b2f3Smrg amd64-*) 4829384b2f3Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4839384b2f3Smrg ;; 484966bf024Smrg amdahl) 485966bf024Smrg basic_machine=580-amdahl 486966bf024Smrg os=-sysv 487966bf024Smrg ;; 488966bf024Smrg amiga | amiga-*) 489966bf024Smrg basic_machine=m68k-unknown 490966bf024Smrg ;; 491966bf024Smrg amigaos | amigados) 492966bf024Smrg basic_machine=m68k-unknown 493966bf024Smrg os=-amigaos 494966bf024Smrg ;; 495966bf024Smrg amigaunix | amix) 496966bf024Smrg basic_machine=m68k-unknown 497966bf024Smrg os=-sysv4 498966bf024Smrg ;; 499966bf024Smrg apollo68) 500966bf024Smrg basic_machine=m68k-apollo 501966bf024Smrg os=-sysv 502966bf024Smrg ;; 503966bf024Smrg apollo68bsd) 504966bf024Smrg basic_machine=m68k-apollo 505966bf024Smrg os=-bsd 506966bf024Smrg ;; 5079384b2f3Smrg aros) 5089384b2f3Smrg basic_machine=i386-pc 5099384b2f3Smrg os=-aros 5109384b2f3Smrg ;; 511966bf024Smrg aux) 512966bf024Smrg basic_machine=m68k-apple 513966bf024Smrg os=-aux 514966bf024Smrg ;; 515966bf024Smrg balance) 516966bf024Smrg basic_machine=ns32k-sequent 517966bf024Smrg os=-dynix 518966bf024Smrg ;; 5199384b2f3Smrg blackfin) 5209384b2f3Smrg basic_machine=bfin-unknown 5219384b2f3Smrg os=-linux 5229384b2f3Smrg ;; 5239384b2f3Smrg blackfin-*) 5249384b2f3Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5259384b2f3Smrg os=-linux 5269384b2f3Smrg ;; 5279384b2f3Smrg bluegene*) 5289384b2f3Smrg basic_machine=powerpc-ibm 5299384b2f3Smrg os=-cnk 5309384b2f3Smrg ;; 5319384b2f3Smrg c54x-*) 5329384b2f3Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 5339384b2f3Smrg ;; 5349384b2f3Smrg c55x-*) 5359384b2f3Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5369384b2f3Smrg ;; 5379384b2f3Smrg c6x-*) 5389384b2f3Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5399384b2f3Smrg ;; 540966bf024Smrg c90) 541966bf024Smrg basic_machine=c90-cray 542966bf024Smrg os=-unicos 543966bf024Smrg ;; 5449384b2f3Smrg cegcc) 5459384b2f3Smrg basic_machine=arm-unknown 5469384b2f3Smrg os=-cegcc 5479384b2f3Smrg ;; 548966bf024Smrg convex-c1) 549966bf024Smrg basic_machine=c1-convex 550966bf024Smrg os=-bsd 551966bf024Smrg ;; 552966bf024Smrg convex-c2) 553966bf024Smrg basic_machine=c2-convex 554966bf024Smrg os=-bsd 555966bf024Smrg ;; 556966bf024Smrg convex-c32) 557966bf024Smrg basic_machine=c32-convex 558966bf024Smrg os=-bsd 559966bf024Smrg ;; 560966bf024Smrg convex-c34) 561966bf024Smrg basic_machine=c34-convex 562966bf024Smrg os=-bsd 563966bf024Smrg ;; 564966bf024Smrg convex-c38) 565966bf024Smrg basic_machine=c38-convex 566966bf024Smrg os=-bsd 567966bf024Smrg ;; 568966bf024Smrg cray | j90) 569966bf024Smrg basic_machine=j90-cray 570966bf024Smrg os=-unicos 571966bf024Smrg ;; 5729384b2f3Smrg craynv) 5739384b2f3Smrg basic_machine=craynv-cray 5749384b2f3Smrg os=-unicosmp 5759384b2f3Smrg ;; 5769384b2f3Smrg cr16 | cr16-*) 5779384b2f3Smrg basic_machine=cr16-unknown 5789384b2f3Smrg os=-elf 5799384b2f3Smrg ;; 580966bf024Smrg crds | unos) 581966bf024Smrg basic_machine=m68k-crds 582966bf024Smrg ;; 5839384b2f3Smrg crisv32 | crisv32-* | etraxfs*) 5849384b2f3Smrg basic_machine=crisv32-axis 5859384b2f3Smrg ;; 586966bf024Smrg cris | cris-* | etrax*) 587966bf024Smrg basic_machine=cris-axis 588966bf024Smrg ;; 5899384b2f3Smrg crx) 5909384b2f3Smrg basic_machine=crx-unknown 5919384b2f3Smrg os=-elf 5929384b2f3Smrg ;; 593966bf024Smrg da30 | da30-*) 594966bf024Smrg basic_machine=m68k-da30 595966bf024Smrg ;; 596966bf024Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 597966bf024Smrg basic_machine=mips-dec 598966bf024Smrg ;; 599966bf024Smrg decsystem10* | dec10*) 600966bf024Smrg basic_machine=pdp10-dec 601966bf024Smrg os=-tops10 602966bf024Smrg ;; 603966bf024Smrg decsystem20* | dec20*) 604966bf024Smrg basic_machine=pdp10-dec 605966bf024Smrg os=-tops20 606966bf024Smrg ;; 607966bf024Smrg delta | 3300 | motorola-3300 | motorola-delta \ 608966bf024Smrg | 3300-motorola | delta-motorola) 609966bf024Smrg basic_machine=m68k-motorola 610966bf024Smrg ;; 611966bf024Smrg delta88) 612966bf024Smrg basic_machine=m88k-motorola 613966bf024Smrg os=-sysv3 614966bf024Smrg ;; 6159384b2f3Smrg dicos) 6169384b2f3Smrg basic_machine=i686-pc 6179384b2f3Smrg os=-dicos 6189384b2f3Smrg ;; 6199384b2f3Smrg djgpp) 6209384b2f3Smrg basic_machine=i586-pc 6219384b2f3Smrg os=-msdosdjgpp 6229384b2f3Smrg ;; 623966bf024Smrg dpx20 | dpx20-*) 624966bf024Smrg basic_machine=rs6000-bull 625966bf024Smrg os=-bosx 626966bf024Smrg ;; 627966bf024Smrg dpx2* | dpx2*-bull) 628966bf024Smrg basic_machine=m68k-bull 629966bf024Smrg os=-sysv3 630966bf024Smrg ;; 631966bf024Smrg ebmon29k) 632966bf024Smrg basic_machine=a29k-amd 633966bf024Smrg os=-ebmon 634966bf024Smrg ;; 635966bf024Smrg elxsi) 636966bf024Smrg basic_machine=elxsi-elxsi 637966bf024Smrg os=-bsd 638966bf024Smrg ;; 639966bf024Smrg encore | umax | mmax) 640966bf024Smrg basic_machine=ns32k-encore 641966bf024Smrg ;; 642966bf024Smrg es1800 | OSE68k | ose68k | ose | OSE) 643966bf024Smrg basic_machine=m68k-ericsson 644966bf024Smrg os=-ose 645966bf024Smrg ;; 646966bf024Smrg fx2800) 647966bf024Smrg basic_machine=i860-alliant 648966bf024Smrg ;; 649966bf024Smrg genix) 650966bf024Smrg basic_machine=ns32k-ns 651966bf024Smrg ;; 652966bf024Smrg gmicro) 653966bf024Smrg basic_machine=tron-gmicro 654966bf024Smrg os=-sysv 655966bf024Smrg ;; 656966bf024Smrg go32) 657966bf024Smrg basic_machine=i386-pc 658966bf024Smrg os=-go32 659966bf024Smrg ;; 660966bf024Smrg h3050r* | hiux*) 661966bf024Smrg basic_machine=hppa1.1-hitachi 662966bf024Smrg os=-hiuxwe2 663966bf024Smrg ;; 664966bf024Smrg h8300hms) 665966bf024Smrg basic_machine=h8300-hitachi 666966bf024Smrg os=-hms 667966bf024Smrg ;; 668966bf024Smrg h8300xray) 669966bf024Smrg basic_machine=h8300-hitachi 670966bf024Smrg os=-xray 671966bf024Smrg ;; 672966bf024Smrg h8500hms) 673966bf024Smrg basic_machine=h8500-hitachi 674966bf024Smrg os=-hms 675966bf024Smrg ;; 676966bf024Smrg harris) 677966bf024Smrg basic_machine=m88k-harris 678966bf024Smrg os=-sysv3 679966bf024Smrg ;; 680966bf024Smrg hp300-*) 681966bf024Smrg basic_machine=m68k-hp 682966bf024Smrg ;; 683966bf024Smrg hp300bsd) 684966bf024Smrg basic_machine=m68k-hp 685966bf024Smrg os=-bsd 686966bf024Smrg ;; 687966bf024Smrg hp300hpux) 688966bf024Smrg basic_machine=m68k-hp 689966bf024Smrg os=-hpux 690966bf024Smrg ;; 691966bf024Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 692966bf024Smrg basic_machine=hppa1.0-hp 693966bf024Smrg ;; 694966bf024Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 695966bf024Smrg basic_machine=m68000-hp 696966bf024Smrg ;; 697966bf024Smrg hp9k3[2-9][0-9]) 698966bf024Smrg basic_machine=m68k-hp 699966bf024Smrg ;; 700966bf024Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 701966bf024Smrg basic_machine=hppa1.0-hp 702966bf024Smrg ;; 703966bf024Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 704966bf024Smrg basic_machine=hppa1.1-hp 705966bf024Smrg ;; 706966bf024Smrg hp9k78[0-9] | hp78[0-9]) 707966bf024Smrg # FIXME: really hppa2.0-hp 708966bf024Smrg basic_machine=hppa1.1-hp 709966bf024Smrg ;; 710966bf024Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 711966bf024Smrg # FIXME: really hppa2.0-hp 712966bf024Smrg basic_machine=hppa1.1-hp 713966bf024Smrg ;; 714966bf024Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 715966bf024Smrg basic_machine=hppa1.1-hp 716966bf024Smrg ;; 717966bf024Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 718966bf024Smrg basic_machine=hppa1.0-hp 719966bf024Smrg ;; 720966bf024Smrg hppa-next) 721966bf024Smrg os=-nextstep3 722966bf024Smrg ;; 723966bf024Smrg hppaosf) 724966bf024Smrg basic_machine=hppa1.1-hp 725966bf024Smrg os=-osf 726966bf024Smrg ;; 727966bf024Smrg hppro) 728966bf024Smrg basic_machine=hppa1.1-hp 729966bf024Smrg os=-proelf 730966bf024Smrg ;; 731966bf024Smrg i370-ibm* | ibm*) 732966bf024Smrg basic_machine=i370-ibm 733966bf024Smrg ;; 734966bf024Smrg i*86v32) 735966bf024Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 736966bf024Smrg os=-sysv32 737966bf024Smrg ;; 738966bf024Smrg i*86v4*) 739966bf024Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 740966bf024Smrg os=-sysv4 741966bf024Smrg ;; 742966bf024Smrg i*86v) 743966bf024Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 744966bf024Smrg os=-sysv 745966bf024Smrg ;; 746966bf024Smrg i*86sol2) 747966bf024Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 748966bf024Smrg os=-solaris2 749966bf024Smrg ;; 750966bf024Smrg i386mach) 751966bf024Smrg basic_machine=i386-mach 752966bf024Smrg os=-mach 753966bf024Smrg ;; 754966bf024Smrg i386-vsta | vsta) 755966bf024Smrg basic_machine=i386-unknown 756966bf024Smrg os=-vsta 757966bf024Smrg ;; 758966bf024Smrg iris | iris4d) 759966bf024Smrg basic_machine=mips-sgi 760966bf024Smrg case $os in 761966bf024Smrg -irix*) 762966bf024Smrg ;; 763966bf024Smrg *) 764966bf024Smrg os=-irix4 765966bf024Smrg ;; 766966bf024Smrg esac 767966bf024Smrg ;; 768966bf024Smrg isi68 | isi) 769966bf024Smrg basic_machine=m68k-isi 770966bf024Smrg os=-sysv 771966bf024Smrg ;; 7729384b2f3Smrg m68knommu) 7739384b2f3Smrg basic_machine=m68k-unknown 7749384b2f3Smrg os=-linux 7759384b2f3Smrg ;; 7769384b2f3Smrg m68knommu-*) 7779384b2f3Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7789384b2f3Smrg os=-linux 7799384b2f3Smrg ;; 780966bf024Smrg m88k-omron*) 781966bf024Smrg basic_machine=m88k-omron 782966bf024Smrg ;; 783966bf024Smrg magnum | m3230) 784966bf024Smrg basic_machine=mips-mips 785966bf024Smrg os=-sysv 786966bf024Smrg ;; 787966bf024Smrg merlin) 788966bf024Smrg basic_machine=ns32k-utek 789966bf024Smrg os=-sysv 790966bf024Smrg ;; 7919384b2f3Smrg microblaze*) 7929384b2f3Smrg basic_machine=microblaze-xilinx 7939384b2f3Smrg ;; 7949384b2f3Smrg mingw64) 7959384b2f3Smrg basic_machine=x86_64-pc 7969384b2f3Smrg os=-mingw64 7979384b2f3Smrg ;; 798966bf024Smrg mingw32) 799966bf024Smrg basic_machine=i386-pc 800966bf024Smrg os=-mingw32 801966bf024Smrg ;; 8029384b2f3Smrg mingw32ce) 8039384b2f3Smrg basic_machine=arm-unknown 8049384b2f3Smrg os=-mingw32ce 8059384b2f3Smrg ;; 806966bf024Smrg miniframe) 807966bf024Smrg basic_machine=m68000-convergent 808966bf024Smrg ;; 809966bf024Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 810966bf024Smrg basic_machine=m68k-atari 811966bf024Smrg os=-mint 812966bf024Smrg ;; 813966bf024Smrg mips3*-*) 814966bf024Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 815966bf024Smrg ;; 816966bf024Smrg mips3*) 817966bf024Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 818966bf024Smrg ;; 819966bf024Smrg monitor) 820966bf024Smrg basic_machine=m68k-rom68k 821966bf024Smrg os=-coff 822966bf024Smrg ;; 823966bf024Smrg morphos) 824966bf024Smrg basic_machine=powerpc-unknown 825966bf024Smrg os=-morphos 826966bf024Smrg ;; 827966bf024Smrg msdos) 828966bf024Smrg basic_machine=i386-pc 829966bf024Smrg os=-msdos 830966bf024Smrg ;; 8319384b2f3Smrg ms1-*) 8329384b2f3Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8339384b2f3Smrg ;; 8349384b2f3Smrg msys) 8359384b2f3Smrg basic_machine=i386-pc 8369384b2f3Smrg os=-msys 8379384b2f3Smrg ;; 838966bf024Smrg mvs) 839966bf024Smrg basic_machine=i370-ibm 840966bf024Smrg os=-mvs 841966bf024Smrg ;; 8429384b2f3Smrg nacl) 8439384b2f3Smrg basic_machine=le32-unknown 8449384b2f3Smrg os=-nacl 8459384b2f3Smrg ;; 846966bf024Smrg ncr3000) 847966bf024Smrg basic_machine=i486-ncr 848966bf024Smrg os=-sysv4 849966bf024Smrg ;; 850966bf024Smrg netbsd386) 851966bf024Smrg basic_machine=i386-unknown 852966bf024Smrg os=-netbsd 853966bf024Smrg ;; 854966bf024Smrg netwinder) 855966bf024Smrg basic_machine=armv4l-rebel 856966bf024Smrg os=-linux 857966bf024Smrg ;; 858966bf024Smrg news | news700 | news800 | news900) 859966bf024Smrg basic_machine=m68k-sony 860966bf024Smrg os=-newsos 861966bf024Smrg ;; 862966bf024Smrg news1000) 863966bf024Smrg basic_machine=m68030-sony 864966bf024Smrg os=-newsos 865966bf024Smrg ;; 866966bf024Smrg news-3600 | risc-news) 867966bf024Smrg basic_machine=mips-sony 868966bf024Smrg os=-newsos 869966bf024Smrg ;; 870966bf024Smrg necv70) 871966bf024Smrg basic_machine=v70-nec 872966bf024Smrg os=-sysv 873966bf024Smrg ;; 874966bf024Smrg next | m*-next ) 875966bf024Smrg basic_machine=m68k-next 876966bf024Smrg case $os in 877966bf024Smrg -nextstep* ) 878966bf024Smrg ;; 879966bf024Smrg -ns2*) 880966bf024Smrg os=-nextstep2 881966bf024Smrg ;; 882966bf024Smrg *) 883966bf024Smrg os=-nextstep3 884966bf024Smrg ;; 885966bf024Smrg esac 886966bf024Smrg ;; 887966bf024Smrg nh3000) 888966bf024Smrg basic_machine=m68k-harris 889966bf024Smrg os=-cxux 890966bf024Smrg ;; 891966bf024Smrg nh[45]000) 892966bf024Smrg basic_machine=m88k-harris 893966bf024Smrg os=-cxux 894966bf024Smrg ;; 895966bf024Smrg nindy960) 896966bf024Smrg basic_machine=i960-intel 897966bf024Smrg os=-nindy 898966bf024Smrg ;; 899966bf024Smrg mon960) 900966bf024Smrg basic_machine=i960-intel 901966bf024Smrg os=-mon960 902966bf024Smrg ;; 903966bf024Smrg nonstopux) 904966bf024Smrg basic_machine=mips-compaq 905966bf024Smrg os=-nonstopux 906966bf024Smrg ;; 907966bf024Smrg np1) 908966bf024Smrg basic_machine=np1-gould 909966bf024Smrg ;; 9109384b2f3Smrg neo-tandem) 9119384b2f3Smrg basic_machine=neo-tandem 9129384b2f3Smrg ;; 9139384b2f3Smrg nse-tandem) 9149384b2f3Smrg basic_machine=nse-tandem 915966bf024Smrg ;; 916966bf024Smrg nsr-tandem) 917966bf024Smrg basic_machine=nsr-tandem 918966bf024Smrg ;; 919966bf024Smrg op50n-* | op60c-*) 920966bf024Smrg basic_machine=hppa1.1-oki 921966bf024Smrg os=-proelf 922966bf024Smrg ;; 9239384b2f3Smrg openrisc | openrisc-*) 924966bf024Smrg basic_machine=or32-unknown 9259384b2f3Smrg ;; 9269384b2f3Smrg os400) 9279384b2f3Smrg basic_machine=powerpc-ibm 9289384b2f3Smrg os=-os400 929966bf024Smrg ;; 930966bf024Smrg OSE68000 | ose68000) 931966bf024Smrg basic_machine=m68000-ericsson 932966bf024Smrg os=-ose 933966bf024Smrg ;; 934966bf024Smrg os68k) 935966bf024Smrg basic_machine=m68k-none 936966bf024Smrg os=-os68k 937966bf024Smrg ;; 938966bf024Smrg pa-hitachi) 939966bf024Smrg basic_machine=hppa1.1-hitachi 940966bf024Smrg os=-hiuxwe2 941966bf024Smrg ;; 942966bf024Smrg paragon) 943966bf024Smrg basic_machine=i860-intel 944966bf024Smrg os=-osf 945966bf024Smrg ;; 9469384b2f3Smrg parisc) 9479384b2f3Smrg basic_machine=hppa-unknown 9489384b2f3Smrg os=-linux 9499384b2f3Smrg ;; 9509384b2f3Smrg parisc-*) 9519384b2f3Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9529384b2f3Smrg os=-linux 9539384b2f3Smrg ;; 954966bf024Smrg pbd) 955966bf024Smrg basic_machine=sparc-tti 956966bf024Smrg ;; 957966bf024Smrg pbb) 958966bf024Smrg basic_machine=m68k-tti 959966bf024Smrg ;; 960966bf024Smrg pc532 | pc532-*) 961966bf024Smrg basic_machine=ns32k-pc532 962966bf024Smrg ;; 9639384b2f3Smrg pc98) 9649384b2f3Smrg basic_machine=i386-pc 9659384b2f3Smrg ;; 9669384b2f3Smrg pc98-*) 9679384b2f3Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9689384b2f3Smrg ;; 969966bf024Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 970966bf024Smrg basic_machine=i586-pc 971966bf024Smrg ;; 972966bf024Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 973966bf024Smrg basic_machine=i686-pc 974966bf024Smrg ;; 975966bf024Smrg pentiumii | pentium2 | pentiumiii | pentium3) 976966bf024Smrg basic_machine=i686-pc 977966bf024Smrg ;; 978966bf024Smrg pentium4) 979966bf024Smrg basic_machine=i786-pc 980966bf024Smrg ;; 981966bf024Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 982966bf024Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 983966bf024Smrg ;; 984966bf024Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 985966bf024Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 986966bf024Smrg ;; 987966bf024Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 988966bf024Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 989966bf024Smrg ;; 990966bf024Smrg pentium4-*) 991966bf024Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 992966bf024Smrg ;; 993966bf024Smrg pn) 994966bf024Smrg basic_machine=pn-gould 995966bf024Smrg ;; 996966bf024Smrg power) basic_machine=power-ibm 997966bf024Smrg ;; 9989384b2f3Smrg ppc | ppcbe) basic_machine=powerpc-unknown 999966bf024Smrg ;; 10009384b2f3Smrg ppc-* | ppcbe-*) 10019384b2f3Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 1002966bf024Smrg ;; 1003966bf024Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 1004966bf024Smrg basic_machine=powerpcle-unknown 1005966bf024Smrg ;; 1006966bf024Smrg ppcle-* | powerpclittle-*) 1007966bf024Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 1008966bf024Smrg ;; 1009966bf024Smrg ppc64) basic_machine=powerpc64-unknown 1010966bf024Smrg ;; 1011966bf024Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 1012966bf024Smrg ;; 1013966bf024Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 1014966bf024Smrg basic_machine=powerpc64le-unknown 1015966bf024Smrg ;; 1016966bf024Smrg ppc64le-* | powerpc64little-*) 1017966bf024Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1018966bf024Smrg ;; 1019966bf024Smrg ps2) 1020966bf024Smrg basic_machine=i386-ibm 1021966bf024Smrg ;; 1022966bf024Smrg pw32) 1023966bf024Smrg basic_machine=i586-unknown 1024966bf024Smrg os=-pw32 1025966bf024Smrg ;; 10269384b2f3Smrg rdos | rdos64) 10279384b2f3Smrg basic_machine=x86_64-pc 10289384b2f3Smrg os=-rdos 10299384b2f3Smrg ;; 10309384b2f3Smrg rdos32) 10319384b2f3Smrg basic_machine=i386-pc 10329384b2f3Smrg os=-rdos 10339384b2f3Smrg ;; 1034966bf024Smrg rom68k) 1035966bf024Smrg basic_machine=m68k-rom68k 1036966bf024Smrg os=-coff 1037966bf024Smrg ;; 1038966bf024Smrg rm[46]00) 1039966bf024Smrg basic_machine=mips-siemens 1040966bf024Smrg ;; 1041966bf024Smrg rtpc | rtpc-*) 1042966bf024Smrg basic_machine=romp-ibm 1043966bf024Smrg ;; 10449384b2f3Smrg s390 | s390-*) 10459384b2f3Smrg basic_machine=s390-ibm 10469384b2f3Smrg ;; 10479384b2f3Smrg s390x | s390x-*) 10489384b2f3Smrg basic_machine=s390x-ibm 10499384b2f3Smrg ;; 1050966bf024Smrg sa29200) 1051966bf024Smrg basic_machine=a29k-amd 1052966bf024Smrg os=-udi 1053966bf024Smrg ;; 1054966bf024Smrg sb1) 1055966bf024Smrg basic_machine=mipsisa64sb1-unknown 1056966bf024Smrg ;; 1057966bf024Smrg sb1el) 1058966bf024Smrg basic_machine=mipsisa64sb1el-unknown 1059966bf024Smrg ;; 10609384b2f3Smrg sde) 10619384b2f3Smrg basic_machine=mipsisa32-sde 10629384b2f3Smrg os=-elf 10639384b2f3Smrg ;; 1064966bf024Smrg sei) 1065966bf024Smrg basic_machine=mips-sei 1066966bf024Smrg os=-seiux 1067966bf024Smrg ;; 1068966bf024Smrg sequent) 1069966bf024Smrg basic_machine=i386-sequent 1070966bf024Smrg ;; 1071966bf024Smrg sh) 1072966bf024Smrg basic_machine=sh-hitachi 1073966bf024Smrg os=-hms 1074966bf024Smrg ;; 10759384b2f3Smrg sh5el) 10769384b2f3Smrg basic_machine=sh5le-unknown 10779384b2f3Smrg ;; 1078966bf024Smrg sh64) 1079966bf024Smrg basic_machine=sh64-unknown 1080966bf024Smrg ;; 1081966bf024Smrg sparclite-wrs | simso-wrs) 1082966bf024Smrg basic_machine=sparclite-wrs 1083966bf024Smrg os=-vxworks 1084966bf024Smrg ;; 1085966bf024Smrg sps7) 1086966bf024Smrg basic_machine=m68k-bull 1087966bf024Smrg os=-sysv2 1088966bf024Smrg ;; 1089966bf024Smrg spur) 1090966bf024Smrg basic_machine=spur-unknown 1091966bf024Smrg ;; 1092966bf024Smrg st2000) 1093966bf024Smrg basic_machine=m68k-tandem 1094966bf024Smrg ;; 1095966bf024Smrg stratus) 1096966bf024Smrg basic_machine=i860-stratus 1097966bf024Smrg os=-sysv4 1098966bf024Smrg ;; 10999384b2f3Smrg strongarm-* | thumb-*) 11009384b2f3Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 11019384b2f3Smrg ;; 1102966bf024Smrg sun2) 1103966bf024Smrg basic_machine=m68000-sun 1104966bf024Smrg ;; 1105966bf024Smrg sun2os3) 1106966bf024Smrg basic_machine=m68000-sun 1107966bf024Smrg os=-sunos3 1108966bf024Smrg ;; 1109966bf024Smrg sun2os4) 1110966bf024Smrg basic_machine=m68000-sun 1111966bf024Smrg os=-sunos4 1112966bf024Smrg ;; 1113966bf024Smrg sun3os3) 1114966bf024Smrg basic_machine=m68k-sun 1115966bf024Smrg os=-sunos3 1116966bf024Smrg ;; 1117966bf024Smrg sun3os4) 1118966bf024Smrg basic_machine=m68k-sun 1119966bf024Smrg os=-sunos4 1120966bf024Smrg ;; 1121966bf024Smrg sun4os3) 1122966bf024Smrg basic_machine=sparc-sun 1123966bf024Smrg os=-sunos3 1124966bf024Smrg ;; 1125966bf024Smrg sun4os4) 1126966bf024Smrg basic_machine=sparc-sun 1127966bf024Smrg os=-sunos4 1128966bf024Smrg ;; 1129966bf024Smrg sun4sol2) 1130966bf024Smrg basic_machine=sparc-sun 1131966bf024Smrg os=-solaris2 1132966bf024Smrg ;; 1133966bf024Smrg sun3 | sun3-*) 1134966bf024Smrg basic_machine=m68k-sun 1135966bf024Smrg ;; 1136966bf024Smrg sun4) 1137966bf024Smrg basic_machine=sparc-sun 1138966bf024Smrg ;; 1139966bf024Smrg sun386 | sun386i | roadrunner) 1140966bf024Smrg basic_machine=i386-sun 1141966bf024Smrg ;; 1142966bf024Smrg sv1) 1143966bf024Smrg basic_machine=sv1-cray 1144966bf024Smrg os=-unicos 1145966bf024Smrg ;; 1146966bf024Smrg symmetry) 1147966bf024Smrg basic_machine=i386-sequent 1148966bf024Smrg os=-dynix 1149966bf024Smrg ;; 1150966bf024Smrg t3e) 1151966bf024Smrg basic_machine=alphaev5-cray 1152966bf024Smrg os=-unicos 1153966bf024Smrg ;; 1154966bf024Smrg t90) 1155966bf024Smrg basic_machine=t90-cray 1156966bf024Smrg os=-unicos 1157966bf024Smrg ;; 11589384b2f3Smrg tile*) 11599384b2f3Smrg basic_machine=$basic_machine-unknown 11609384b2f3Smrg os=-linux-gnu 1161966bf024Smrg ;; 1162966bf024Smrg tx39) 1163966bf024Smrg basic_machine=mipstx39-unknown 1164966bf024Smrg ;; 1165966bf024Smrg tx39el) 1166966bf024Smrg basic_machine=mipstx39el-unknown 1167966bf024Smrg ;; 1168966bf024Smrg toad1) 1169966bf024Smrg basic_machine=pdp10-xkl 1170966bf024Smrg os=-tops20 1171966bf024Smrg ;; 1172966bf024Smrg tower | tower-32) 1173966bf024Smrg basic_machine=m68k-ncr 1174966bf024Smrg ;; 11759384b2f3Smrg tpf) 11769384b2f3Smrg basic_machine=s390x-ibm 11779384b2f3Smrg os=-tpf 11789384b2f3Smrg ;; 1179966bf024Smrg udi29k) 1180966bf024Smrg basic_machine=a29k-amd 1181966bf024Smrg os=-udi 1182966bf024Smrg ;; 1183966bf024Smrg ultra3) 1184966bf024Smrg basic_machine=a29k-nyu 1185966bf024Smrg os=-sym1 1186966bf024Smrg ;; 1187966bf024Smrg v810 | necv810) 1188966bf024Smrg basic_machine=v810-nec 1189966bf024Smrg os=-none 1190966bf024Smrg ;; 1191966bf024Smrg vaxv) 1192966bf024Smrg basic_machine=vax-dec 1193966bf024Smrg os=-sysv 1194966bf024Smrg ;; 1195966bf024Smrg vms) 1196966bf024Smrg basic_machine=vax-dec 1197966bf024Smrg os=-vms 1198966bf024Smrg ;; 1199966bf024Smrg vpp*|vx|vx-*) 1200966bf024Smrg basic_machine=f301-fujitsu 1201966bf024Smrg ;; 1202966bf024Smrg vxworks960) 1203966bf024Smrg basic_machine=i960-wrs 1204966bf024Smrg os=-vxworks 1205966bf024Smrg ;; 1206966bf024Smrg vxworks68) 1207966bf024Smrg basic_machine=m68k-wrs 1208966bf024Smrg os=-vxworks 1209966bf024Smrg ;; 1210966bf024Smrg vxworks29k) 1211966bf024Smrg basic_machine=a29k-wrs 1212966bf024Smrg os=-vxworks 1213966bf024Smrg ;; 1214966bf024Smrg w65*) 1215966bf024Smrg basic_machine=w65-wdc 1216966bf024Smrg os=-none 1217966bf024Smrg ;; 1218966bf024Smrg w89k-*) 1219966bf024Smrg basic_machine=hppa1.1-winbond 1220966bf024Smrg os=-proelf 1221966bf024Smrg ;; 12229384b2f3Smrg xbox) 12239384b2f3Smrg basic_machine=i686-pc 12249384b2f3Smrg os=-mingw32 12259384b2f3Smrg ;; 1226966bf024Smrg xps | xps100) 1227966bf024Smrg basic_machine=xps100-honeywell 1228966bf024Smrg ;; 12299384b2f3Smrg xscale-* | xscalee[bl]-*) 12309384b2f3Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 12319384b2f3Smrg ;; 1232966bf024Smrg ymp) 1233966bf024Smrg basic_machine=ymp-cray 1234966bf024Smrg os=-unicos 1235966bf024Smrg ;; 1236966bf024Smrg z8k-*-coff) 1237966bf024Smrg basic_machine=z8k-unknown 1238966bf024Smrg os=-sim 1239966bf024Smrg ;; 12409384b2f3Smrg z80-*-coff) 12419384b2f3Smrg basic_machine=z80-unknown 12429384b2f3Smrg os=-sim 12439384b2f3Smrg ;; 1244966bf024Smrg none) 1245966bf024Smrg basic_machine=none-none 1246966bf024Smrg os=-none 1247966bf024Smrg ;; 1248966bf024Smrg 1249966bf024Smrg# Here we handle the default manufacturer of certain CPU types. It is in 1250966bf024Smrg# some cases the only manufacturer, in others, it is the most popular. 1251966bf024Smrg w89k) 1252966bf024Smrg basic_machine=hppa1.1-winbond 1253966bf024Smrg ;; 1254966bf024Smrg op50n) 1255966bf024Smrg basic_machine=hppa1.1-oki 1256966bf024Smrg ;; 1257966bf024Smrg op60c) 1258966bf024Smrg basic_machine=hppa1.1-oki 1259966bf024Smrg ;; 1260966bf024Smrg romp) 1261966bf024Smrg basic_machine=romp-ibm 1262966bf024Smrg ;; 12639384b2f3Smrg mmix) 12649384b2f3Smrg basic_machine=mmix-knuth 12659384b2f3Smrg ;; 1266966bf024Smrg rs6000) 1267966bf024Smrg basic_machine=rs6000-ibm 1268966bf024Smrg ;; 1269966bf024Smrg vax) 1270966bf024Smrg basic_machine=vax-dec 1271966bf024Smrg ;; 1272966bf024Smrg pdp10) 1273966bf024Smrg # there are many clones, so DEC is not a safe bet 1274966bf024Smrg basic_machine=pdp10-unknown 1275966bf024Smrg ;; 1276966bf024Smrg pdp11) 1277966bf024Smrg basic_machine=pdp11-dec 1278966bf024Smrg ;; 1279966bf024Smrg we32k) 1280966bf024Smrg basic_machine=we32k-att 1281966bf024Smrg ;; 12829384b2f3Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1283966bf024Smrg basic_machine=sh-unknown 1284966bf024Smrg ;; 12859384b2f3Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1286966bf024Smrg basic_machine=sparc-sun 1287966bf024Smrg ;; 1288966bf024Smrg cydra) 1289966bf024Smrg basic_machine=cydra-cydrome 1290966bf024Smrg ;; 1291966bf024Smrg orion) 1292966bf024Smrg basic_machine=orion-highlevel 1293966bf024Smrg ;; 1294966bf024Smrg orion105) 1295966bf024Smrg basic_machine=clipper-highlevel 1296966bf024Smrg ;; 1297966bf024Smrg mac | mpw | mac-mpw) 1298966bf024Smrg basic_machine=m68k-apple 1299966bf024Smrg ;; 1300966bf024Smrg pmac | pmac-mpw) 1301966bf024Smrg basic_machine=powerpc-apple 1302966bf024Smrg ;; 1303966bf024Smrg *-unknown) 1304966bf024Smrg # Make sure to match an already-canonicalized machine name. 1305966bf024Smrg ;; 1306966bf024Smrg *) 1307966bf024Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1308966bf024Smrg exit 1 1309966bf024Smrg ;; 1310966bf024Smrgesac 1311966bf024Smrg 1312966bf024Smrg# Here we canonicalize certain aliases for manufacturers. 1313966bf024Smrgcase $basic_machine in 1314966bf024Smrg *-digital*) 1315966bf024Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1316966bf024Smrg ;; 1317966bf024Smrg *-commodore*) 1318966bf024Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1319966bf024Smrg ;; 1320966bf024Smrg *) 1321966bf024Smrg ;; 1322966bf024Smrgesac 1323966bf024Smrg 1324966bf024Smrg# Decode manufacturer-specific aliases for certain operating systems. 1325966bf024Smrg 1326966bf024Smrgif [ x"$os" != x"" ] 1327966bf024Smrgthen 1328966bf024Smrgcase $os in 13299384b2f3Smrg # First match some system type aliases 13309384b2f3Smrg # that might get confused with valid system types. 1331966bf024Smrg # -solaris* is a basic system type, with this one exception. 13329384b2f3Smrg -auroraux) 13339384b2f3Smrg os=-auroraux 13349384b2f3Smrg ;; 1335966bf024Smrg -solaris1 | -solaris1.*) 1336966bf024Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1337966bf024Smrg ;; 1338966bf024Smrg -solaris) 1339966bf024Smrg os=-solaris2 1340966bf024Smrg ;; 1341966bf024Smrg -svr4*) 1342966bf024Smrg os=-sysv4 1343966bf024Smrg ;; 1344966bf024Smrg -unixware*) 1345966bf024Smrg os=-sysv4.2uw 1346966bf024Smrg ;; 1347966bf024Smrg -gnu/linux*) 1348966bf024Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1349966bf024Smrg ;; 1350966bf024Smrg # First accept the basic system types. 1351966bf024Smrg # The portable systems comes first. 1352966bf024Smrg # Each alternative MUST END IN A *, to match a version number. 1353966bf024Smrg # -sysv* is not here because it comes later, after sysvr4. 1354966bf024Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13559384b2f3Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13569384b2f3Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 13579384b2f3Smrg | -sym* | -kopensolaris* \ 1358966bf024Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13599384b2f3Smrg | -aos* | -aros* \ 1360966bf024Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1361966bf024Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13629384b2f3Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 13639384b2f3Smrg | -bitrig* | -openbsd* | -solidbsd* \ 13649384b2f3Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13659384b2f3Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1366966bf024Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1367966bf024Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13689384b2f3Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 13699384b2f3Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13709384b2f3Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 13719384b2f3Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 13729384b2f3Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1373966bf024Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1374966bf024Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1375966bf024Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1376966bf024Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1377966bf024Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13789384b2f3Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13799384b2f3Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1380966bf024Smrg # Remember, each alternative MUST END IN *, to match a version number. 1381966bf024Smrg ;; 1382966bf024Smrg -qnx*) 1383966bf024Smrg case $basic_machine in 1384966bf024Smrg x86-* | i*86-*) 1385966bf024Smrg ;; 1386966bf024Smrg *) 1387966bf024Smrg os=-nto$os 1388966bf024Smrg ;; 1389966bf024Smrg esac 1390966bf024Smrg ;; 1391966bf024Smrg -nto-qnx*) 1392966bf024Smrg ;; 1393966bf024Smrg -nto*) 1394966bf024Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1395966bf024Smrg ;; 1396966bf024Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13979384b2f3Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1398966bf024Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1399966bf024Smrg ;; 1400966bf024Smrg -mac*) 1401966bf024Smrg os=`echo $os | sed -e 's|mac|macos|'` 1402966bf024Smrg ;; 14039384b2f3Smrg -linux-dietlibc) 14049384b2f3Smrg os=-linux-dietlibc 14059384b2f3Smrg ;; 1406966bf024Smrg -linux*) 1407966bf024Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1408966bf024Smrg ;; 1409966bf024Smrg -sunos5*) 1410966bf024Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1411966bf024Smrg ;; 1412966bf024Smrg -sunos6*) 1413966bf024Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1414966bf024Smrg ;; 1415966bf024Smrg -opened*) 1416966bf024Smrg os=-openedition 1417966bf024Smrg ;; 14189384b2f3Smrg -os400*) 14199384b2f3Smrg os=-os400 14209384b2f3Smrg ;; 1421966bf024Smrg -wince*) 1422966bf024Smrg os=-wince 1423966bf024Smrg ;; 1424966bf024Smrg -osfrose*) 1425966bf024Smrg os=-osfrose 1426966bf024Smrg ;; 1427966bf024Smrg -osf*) 1428966bf024Smrg os=-osf 1429966bf024Smrg ;; 1430966bf024Smrg -utek*) 1431966bf024Smrg os=-bsd 1432966bf024Smrg ;; 1433966bf024Smrg -dynix*) 1434966bf024Smrg os=-bsd 1435966bf024Smrg ;; 1436966bf024Smrg -acis*) 1437966bf024Smrg os=-aos 1438966bf024Smrg ;; 1439966bf024Smrg -atheos*) 1440966bf024Smrg os=-atheos 1441966bf024Smrg ;; 14429384b2f3Smrg -syllable*) 14439384b2f3Smrg os=-syllable 14449384b2f3Smrg ;; 1445966bf024Smrg -386bsd) 1446966bf024Smrg os=-bsd 1447966bf024Smrg ;; 1448966bf024Smrg -ctix* | -uts*) 1449966bf024Smrg os=-sysv 1450966bf024Smrg ;; 1451966bf024Smrg -nova*) 1452966bf024Smrg os=-rtmk-nova 1453966bf024Smrg ;; 1454966bf024Smrg -ns2 ) 1455966bf024Smrg os=-nextstep2 1456966bf024Smrg ;; 1457966bf024Smrg -nsk*) 1458966bf024Smrg os=-nsk 1459966bf024Smrg ;; 1460966bf024Smrg # Preserve the version number of sinix5. 1461966bf024Smrg -sinix5.*) 1462966bf024Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 1463966bf024Smrg ;; 1464966bf024Smrg -sinix*) 1465966bf024Smrg os=-sysv4 1466966bf024Smrg ;; 14679384b2f3Smrg -tpf*) 14689384b2f3Smrg os=-tpf 14699384b2f3Smrg ;; 1470966bf024Smrg -triton*) 1471966bf024Smrg os=-sysv3 1472966bf024Smrg ;; 1473966bf024Smrg -oss*) 1474966bf024Smrg os=-sysv3 1475966bf024Smrg ;; 1476966bf024Smrg -svr4) 1477966bf024Smrg os=-sysv4 1478966bf024Smrg ;; 1479966bf024Smrg -svr3) 1480966bf024Smrg os=-sysv3 1481966bf024Smrg ;; 1482966bf024Smrg -sysvr4) 1483966bf024Smrg os=-sysv4 1484966bf024Smrg ;; 1485966bf024Smrg # This must come after -sysvr4. 1486966bf024Smrg -sysv*) 1487966bf024Smrg ;; 1488966bf024Smrg -ose*) 1489966bf024Smrg os=-ose 1490966bf024Smrg ;; 1491966bf024Smrg -es1800*) 1492966bf024Smrg os=-ose 1493966bf024Smrg ;; 1494966bf024Smrg -xenix) 1495966bf024Smrg os=-xenix 1496966bf024Smrg ;; 1497966bf024Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1498966bf024Smrg os=-mint 1499966bf024Smrg ;; 1500966bf024Smrg -aros*) 1501966bf024Smrg os=-aros 1502966bf024Smrg ;; 1503966bf024Smrg -kaos*) 1504966bf024Smrg os=-kaos 1505966bf024Smrg ;; 15069384b2f3Smrg -zvmoe) 15079384b2f3Smrg os=-zvmoe 15089384b2f3Smrg ;; 15099384b2f3Smrg -dicos*) 15109384b2f3Smrg os=-dicos 15119384b2f3Smrg ;; 15129384b2f3Smrg -nacl*) 15139384b2f3Smrg ;; 1514966bf024Smrg -none) 1515966bf024Smrg ;; 1516966bf024Smrg *) 1517966bf024Smrg # Get rid of the `-' at the beginning of $os. 1518966bf024Smrg os=`echo $os | sed 's/[^-]*-//'` 1519966bf024Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1520966bf024Smrg exit 1 1521966bf024Smrg ;; 1522966bf024Smrgesac 1523966bf024Smrgelse 1524966bf024Smrg 1525966bf024Smrg# Here we handle the default operating systems that come with various machines. 1526966bf024Smrg# The value should be what the vendor currently ships out the door with their 1527966bf024Smrg# machine or put another way, the most popular os provided with the machine. 1528966bf024Smrg 1529966bf024Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1530966bf024Smrg# "-sun"), then you have to tell the case statement up towards the top 1531966bf024Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1532966bf024Smrg# will signal an error saying that MANUFACTURER isn't an operating 1533966bf024Smrg# system, and we'll never get to this point. 1534966bf024Smrg 1535966bf024Smrgcase $basic_machine in 15369384b2f3Smrg score-*) 15379384b2f3Smrg os=-elf 15389384b2f3Smrg ;; 15399384b2f3Smrg spu-*) 15409384b2f3Smrg os=-elf 15419384b2f3Smrg ;; 1542966bf024Smrg *-acorn) 1543966bf024Smrg os=-riscix1.2 1544966bf024Smrg ;; 1545966bf024Smrg arm*-rebel) 1546966bf024Smrg os=-linux 1547966bf024Smrg ;; 1548966bf024Smrg arm*-semi) 1549966bf024Smrg os=-aout 1550966bf024Smrg ;; 1551966bf024Smrg c4x-* | tic4x-*) 1552966bf024Smrg os=-coff 1553966bf024Smrg ;; 15549384b2f3Smrg hexagon-*) 15559384b2f3Smrg os=-elf 15569384b2f3Smrg ;; 15579384b2f3Smrg tic54x-*) 15589384b2f3Smrg os=-coff 15599384b2f3Smrg ;; 15609384b2f3Smrg tic55x-*) 15619384b2f3Smrg os=-coff 15629384b2f3Smrg ;; 15639384b2f3Smrg tic6x-*) 15649384b2f3Smrg os=-coff 15659384b2f3Smrg ;; 1566966bf024Smrg # This must come before the *-dec entry. 1567966bf024Smrg pdp10-*) 1568966bf024Smrg os=-tops20 1569966bf024Smrg ;; 1570966bf024Smrg pdp11-*) 1571966bf024Smrg os=-none 1572966bf024Smrg ;; 1573966bf024Smrg *-dec | vax-*) 1574966bf024Smrg os=-ultrix4.2 1575966bf024Smrg ;; 1576966bf024Smrg m68*-apollo) 1577966bf024Smrg os=-domain 1578966bf024Smrg ;; 1579966bf024Smrg i386-sun) 1580966bf024Smrg os=-sunos4.0.2 1581966bf024Smrg ;; 1582966bf024Smrg m68000-sun) 1583966bf024Smrg os=-sunos3 1584966bf024Smrg ;; 1585966bf024Smrg m68*-cisco) 1586966bf024Smrg os=-aout 1587966bf024Smrg ;; 15889384b2f3Smrg mep-*) 15899384b2f3Smrg os=-elf 15909384b2f3Smrg ;; 1591966bf024Smrg mips*-cisco) 1592966bf024Smrg os=-elf 1593966bf024Smrg ;; 1594966bf024Smrg mips*-*) 1595966bf024Smrg os=-elf 1596966bf024Smrg ;; 1597966bf024Smrg or32-*) 1598966bf024Smrg os=-coff 1599966bf024Smrg ;; 1600966bf024Smrg *-tti) # must be before sparc entry or we get the wrong os. 1601966bf024Smrg os=-sysv3 1602966bf024Smrg ;; 1603966bf024Smrg sparc-* | *-sun) 1604966bf024Smrg os=-sunos4.1.1 1605966bf024Smrg ;; 1606966bf024Smrg *-be) 1607966bf024Smrg os=-beos 1608966bf024Smrg ;; 16099384b2f3Smrg *-haiku) 16109384b2f3Smrg os=-haiku 16119384b2f3Smrg ;; 1612966bf024Smrg *-ibm) 1613966bf024Smrg os=-aix 1614966bf024Smrg ;; 16159384b2f3Smrg *-knuth) 16169384b2f3Smrg os=-mmixware 16179384b2f3Smrg ;; 1618966bf024Smrg *-wec) 1619966bf024Smrg os=-proelf 1620966bf024Smrg ;; 1621966bf024Smrg *-winbond) 1622966bf024Smrg os=-proelf 1623966bf024Smrg ;; 1624966bf024Smrg *-oki) 1625966bf024Smrg os=-proelf 1626966bf024Smrg ;; 1627966bf024Smrg *-hp) 1628966bf024Smrg os=-hpux 1629966bf024Smrg ;; 1630966bf024Smrg *-hitachi) 1631966bf024Smrg os=-hiux 1632966bf024Smrg ;; 1633966bf024Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1634966bf024Smrg os=-sysv 1635966bf024Smrg ;; 1636966bf024Smrg *-cbm) 1637966bf024Smrg os=-amigaos 1638966bf024Smrg ;; 1639966bf024Smrg *-dg) 1640966bf024Smrg os=-dgux 1641966bf024Smrg ;; 1642966bf024Smrg *-dolphin) 1643966bf024Smrg os=-sysv3 1644966bf024Smrg ;; 1645966bf024Smrg m68k-ccur) 1646966bf024Smrg os=-rtu 1647966bf024Smrg ;; 1648966bf024Smrg m88k-omron*) 1649966bf024Smrg os=-luna 1650966bf024Smrg ;; 1651966bf024Smrg *-next ) 1652966bf024Smrg os=-nextstep 1653966bf024Smrg ;; 1654966bf024Smrg *-sequent) 1655966bf024Smrg os=-ptx 1656966bf024Smrg ;; 1657966bf024Smrg *-crds) 1658966bf024Smrg os=-unos 1659966bf024Smrg ;; 1660966bf024Smrg *-ns) 1661966bf024Smrg os=-genix 1662966bf024Smrg ;; 1663966bf024Smrg i370-*) 1664966bf024Smrg os=-mvs 1665966bf024Smrg ;; 1666966bf024Smrg *-next) 1667966bf024Smrg os=-nextstep3 1668966bf024Smrg ;; 1669966bf024Smrg *-gould) 1670966bf024Smrg os=-sysv 1671966bf024Smrg ;; 1672966bf024Smrg *-highlevel) 1673966bf024Smrg os=-bsd 1674966bf024Smrg ;; 1675966bf024Smrg *-encore) 1676966bf024Smrg os=-bsd 1677966bf024Smrg ;; 1678966bf024Smrg *-sgi) 1679966bf024Smrg os=-irix 1680966bf024Smrg ;; 1681966bf024Smrg *-siemens) 1682966bf024Smrg os=-sysv4 1683966bf024Smrg ;; 1684966bf024Smrg *-masscomp) 1685966bf024Smrg os=-rtu 1686966bf024Smrg ;; 1687966bf024Smrg f30[01]-fujitsu | f700-fujitsu) 1688966bf024Smrg os=-uxpv 1689966bf024Smrg ;; 1690966bf024Smrg *-rom68k) 1691966bf024Smrg os=-coff 1692966bf024Smrg ;; 1693966bf024Smrg *-*bug) 1694966bf024Smrg os=-coff 1695966bf024Smrg ;; 1696966bf024Smrg *-apple) 1697966bf024Smrg os=-macos 1698966bf024Smrg ;; 1699966bf024Smrg *-atari*) 1700966bf024Smrg os=-mint 1701966bf024Smrg ;; 1702966bf024Smrg *) 1703966bf024Smrg os=-none 1704966bf024Smrg ;; 1705966bf024Smrgesac 1706966bf024Smrgfi 1707966bf024Smrg 1708966bf024Smrg# Here we handle the case where we know the os, and the CPU type, but not the 1709966bf024Smrg# manufacturer. We pick the logical manufacturer. 1710966bf024Smrgvendor=unknown 1711966bf024Smrgcase $basic_machine in 1712966bf024Smrg *-unknown) 1713966bf024Smrg case $os in 1714966bf024Smrg -riscix*) 1715966bf024Smrg vendor=acorn 1716966bf024Smrg ;; 1717966bf024Smrg -sunos*) 1718966bf024Smrg vendor=sun 1719966bf024Smrg ;; 17209384b2f3Smrg -cnk*|-aix*) 1721966bf024Smrg vendor=ibm 1722966bf024Smrg ;; 1723966bf024Smrg -beos*) 1724966bf024Smrg vendor=be 1725966bf024Smrg ;; 1726966bf024Smrg -hpux*) 1727966bf024Smrg vendor=hp 1728966bf024Smrg ;; 1729966bf024Smrg -mpeix*) 1730966bf024Smrg vendor=hp 1731966bf024Smrg ;; 1732966bf024Smrg -hiux*) 1733966bf024Smrg vendor=hitachi 1734966bf024Smrg ;; 1735966bf024Smrg -unos*) 1736966bf024Smrg vendor=crds 1737966bf024Smrg ;; 1738966bf024Smrg -dgux*) 1739966bf024Smrg vendor=dg 1740966bf024Smrg ;; 1741966bf024Smrg -luna*) 1742966bf024Smrg vendor=omron 1743966bf024Smrg ;; 1744966bf024Smrg -genix*) 1745966bf024Smrg vendor=ns 1746966bf024Smrg ;; 1747966bf024Smrg -mvs* | -opened*) 1748966bf024Smrg vendor=ibm 1749966bf024Smrg ;; 17509384b2f3Smrg -os400*) 17519384b2f3Smrg vendor=ibm 17529384b2f3Smrg ;; 1753966bf024Smrg -ptx*) 1754966bf024Smrg vendor=sequent 1755966bf024Smrg ;; 17569384b2f3Smrg -tpf*) 17579384b2f3Smrg vendor=ibm 17589384b2f3Smrg ;; 1759966bf024Smrg -vxsim* | -vxworks* | -windiss*) 1760966bf024Smrg vendor=wrs 1761966bf024Smrg ;; 1762966bf024Smrg -aux*) 1763966bf024Smrg vendor=apple 1764966bf024Smrg ;; 1765966bf024Smrg -hms*) 1766966bf024Smrg vendor=hitachi 1767966bf024Smrg ;; 1768966bf024Smrg -mpw* | -macos*) 1769966bf024Smrg vendor=apple 1770966bf024Smrg ;; 1771966bf024Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1772966bf024Smrg vendor=atari 1773966bf024Smrg ;; 1774966bf024Smrg -vos*) 1775966bf024Smrg vendor=stratus 1776966bf024Smrg ;; 1777966bf024Smrg esac 1778966bf024Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1779966bf024Smrg ;; 1780966bf024Smrgesac 1781966bf024Smrg 1782966bf024Smrgecho $basic_machine$os 17839384b2f3Smrgexit 1784966bf024Smrg 1785966bf024Smrg# Local variables: 1786966bf024Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1787966bf024Smrg# time-stamp-start: "timestamp='" 1788966bf024Smrg# time-stamp-format: "%:y-%02m-%02d" 1789966bf024Smrg# time-stamp-end: "'" 1790966bf024Smrg# End: 1791