1234949Sbapt#! /bin/sh 2234949Sbapt# Configuration validation subroutine script. 3268899Sbapt# Copyright 1992-2014 Free Software Foundation, Inc. 4234949Sbapt 5268899Sbapttimestamp='2014-04-03' 6234949Sbapt 7251143Sbapt# This file is free software; you can redistribute it and/or modify it 8251143Sbapt# under the terms of the GNU General Public License as published by 9251143Sbapt# the Free Software Foundation; either version 3 of the License, or 10234949Sbapt# (at your option) any later version. 11234949Sbapt# 12251143Sbapt# This program is distributed in the hope that it will be useful, but 13251143Sbapt# WITHOUT ANY WARRANTY; without even the implied warranty of 14251143Sbapt# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15251143Sbapt# General Public License for more details. 16234949Sbapt# 17234949Sbapt# You should have received a copy of the GNU General Public License 18251143Sbapt# along with this program; if not, see <http://www.gnu.org/licenses/>. 19234949Sbapt# 20234949Sbapt# As a special exception to the GNU General Public License, if you 21234949Sbapt# distribute this file as part of a program that contains a 22234949Sbapt# configuration script generated by Autoconf, you may include it under 23251143Sbapt# the same distribution terms that you use for the rest of that 24251143Sbapt# program. This Exception is an additional permission under section 7 25251143Sbapt# of the GNU General Public License, version 3 ("GPLv3"). 26234949Sbapt 27234949Sbapt 28251143Sbapt# Please send patches with a ChangeLog entry to config-patches@gnu.org. 29234949Sbapt# 30234949Sbapt# Configuration subroutine to validate and canonicalize a configuration type. 31234949Sbapt# Supply the specified configuration type as an argument. 32234949Sbapt# If it is invalid, we print an error message on stderr and exit with code 1. 33234949Sbapt# Otherwise, we print the canonical config type on stdout and succeed. 34234949Sbapt 35234949Sbapt# You can get the latest version of this script from: 36234949Sbapt# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 37234949Sbapt 38234949Sbapt# This file is supposed to be the same for all GNU packages 39234949Sbapt# and recognize all the CPU types, system types and aliases 40234949Sbapt# that are meaningful with *any* GNU software. 41234949Sbapt# Each package is responsible for reporting which valid configurations 42234949Sbapt# it does not support. The user should be able to distinguish 43234949Sbapt# a failure to support a valid configuration from a meaningless 44234949Sbapt# configuration. 45234949Sbapt 46234949Sbapt# The goal of this file is to map all the various variations of a given 47234949Sbapt# machine specification into a single specification in the form: 48234949Sbapt# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 49234949Sbapt# or in some cases, the newer four-part form: 50234949Sbapt# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 51234949Sbapt# It is wrong to echo any other type of specification. 52234949Sbapt 53234949Sbaptme=`echo "$0" | sed -e 's,.*/,,'` 54234949Sbapt 55234949Sbaptusage="\ 56234949SbaptUsage: $0 [OPTION] CPU-MFR-OPSYS 57234949Sbapt $0 [OPTION] ALIAS 58234949Sbapt 59234949SbaptCanonicalize a configuration name. 60234949Sbapt 61234949SbaptOperation modes: 62234949Sbapt -h, --help print this help, then exit 63234949Sbapt -t, --time-stamp print date of last modification, then exit 64234949Sbapt -v, --version print version number, then exit 65234949Sbapt 66234949SbaptReport bugs and patches to <config-patches@gnu.org>." 67234949Sbapt 68234949Sbaptversion="\ 69234949SbaptGNU config.sub ($timestamp) 70234949Sbapt 71268899SbaptCopyright 1992-2014 Free Software Foundation, Inc. 72234949Sbapt 73234949SbaptThis is free software; see the source for copying conditions. There is NO 74234949Sbaptwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 75234949Sbapt 76234949Sbapthelp=" 77234949SbaptTry \`$me --help' for more information." 78234949Sbapt 79234949Sbapt# Parse command line 80234949Sbaptwhile test $# -gt 0 ; do 81234949Sbapt case $1 in 82234949Sbapt --time-stamp | --time* | -t ) 83234949Sbapt echo "$timestamp" ; exit ;; 84234949Sbapt --version | -v ) 85234949Sbapt echo "$version" ; exit ;; 86234949Sbapt --help | --h* | -h ) 87234949Sbapt echo "$usage"; exit ;; 88234949Sbapt -- ) # Stop option processing 89234949Sbapt shift; break ;; 90234949Sbapt - ) # Use stdin as input. 91234949Sbapt break ;; 92234949Sbapt -* ) 93234949Sbapt echo "$me: invalid option $1$help" 94234949Sbapt exit 1 ;; 95234949Sbapt 96234949Sbapt *local*) 97234949Sbapt # First pass through any local machine types. 98234949Sbapt echo $1 99234949Sbapt exit ;; 100234949Sbapt 101234949Sbapt * ) 102234949Sbapt break ;; 103234949Sbapt esac 104234949Sbaptdone 105234949Sbapt 106234949Sbaptcase $# in 107234949Sbapt 0) echo "$me: missing argument$help" >&2 108234949Sbapt exit 1;; 109234949Sbapt 1) ;; 110234949Sbapt *) echo "$me: too many arguments$help" >&2 111234949Sbapt exit 1;; 112234949Sbaptesac 113234949Sbapt 114234949Sbapt# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 115234949Sbapt# Here we must recognize all the valid KERNEL-OS combinations. 116234949Sbaptmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 117234949Sbaptcase $maybe_os in 118234949Sbapt nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 119251143Sbapt linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 120234949Sbapt knetbsd*-gnu* | netbsd*-gnu* | \ 121234949Sbapt kopensolaris*-gnu* | \ 122234949Sbapt storm-chaos* | os2-emx* | rtmk-nova*) 123234949Sbapt os=-$maybe_os 124234949Sbapt basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 125234949Sbapt ;; 126251143Sbapt android-linux) 127251143Sbapt os=-linux-android 128251143Sbapt basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 129251143Sbapt ;; 130234949Sbapt *) 131234949Sbapt basic_machine=`echo $1 | sed 's/-[^-]*$//'` 132234949Sbapt if [ $basic_machine != $1 ] 133234949Sbapt then os=`echo $1 | sed 's/.*-/-/'` 134234949Sbapt else os=; fi 135234949Sbapt ;; 136234949Sbaptesac 137234949Sbapt 138234949Sbapt### Let's recognize common machines as not being operating systems so 139234949Sbapt### that things like config.sub decstation-3100 work. We also 140234949Sbapt### recognize some manufacturers as not being operating systems, so we 141234949Sbapt### can provide default operating systems below. 142234949Sbaptcase $os in 143234949Sbapt -sun*os*) 144234949Sbapt # Prevent following clause from handling this invalid input. 145234949Sbapt ;; 146234949Sbapt -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 147234949Sbapt -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 148234949Sbapt -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 149234949Sbapt -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 150234949Sbapt -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 151234949Sbapt -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 152251143Sbapt -apple | -axis | -knuth | -cray | -microblaze*) 153234949Sbapt os= 154234949Sbapt basic_machine=$1 155234949Sbapt ;; 156234949Sbapt -bluegene*) 157234949Sbapt os=-cnk 158234949Sbapt ;; 159234949Sbapt -sim | -cisco | -oki | -wec | -winbond) 160234949Sbapt os= 161234949Sbapt basic_machine=$1 162234949Sbapt ;; 163234949Sbapt -scout) 164234949Sbapt ;; 165234949Sbapt -wrs) 166234949Sbapt os=-vxworks 167234949Sbapt basic_machine=$1 168234949Sbapt ;; 169234949Sbapt -chorusos*) 170234949Sbapt os=-chorusos 171234949Sbapt basic_machine=$1 172234949Sbapt ;; 173234949Sbapt -chorusrdb) 174234949Sbapt os=-chorusrdb 175234949Sbapt basic_machine=$1 176234949Sbapt ;; 177234949Sbapt -hiux*) 178234949Sbapt os=-hiuxwe2 179234949Sbapt ;; 180234949Sbapt -sco6) 181234949Sbapt os=-sco5v6 182234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 183234949Sbapt ;; 184234949Sbapt -sco5) 185234949Sbapt os=-sco3.2v5 186234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 187234949Sbapt ;; 188234949Sbapt -sco4) 189234949Sbapt os=-sco3.2v4 190234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 191234949Sbapt ;; 192234949Sbapt -sco3.2.[4-9]*) 193234949Sbapt os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 194234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 195234949Sbapt ;; 196234949Sbapt -sco3.2v[4-9]*) 197234949Sbapt # Don't forget version if it is 3.2v4 or newer. 198234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 199234949Sbapt ;; 200234949Sbapt -sco5v6*) 201234949Sbapt # Don't forget version if it is 3.2v4 or newer. 202234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 203234949Sbapt ;; 204234949Sbapt -sco*) 205234949Sbapt os=-sco3.2v2 206234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 207234949Sbapt ;; 208234949Sbapt -udk*) 209234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 210234949Sbapt ;; 211234949Sbapt -isc) 212234949Sbapt os=-isc2.2 213234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 214234949Sbapt ;; 215234949Sbapt -clix*) 216234949Sbapt basic_machine=clipper-intergraph 217234949Sbapt ;; 218234949Sbapt -isc*) 219234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 220234949Sbapt ;; 221251143Sbapt -lynx*178) 222251143Sbapt os=-lynxos178 223251143Sbapt ;; 224251143Sbapt -lynx*5) 225251143Sbapt os=-lynxos5 226251143Sbapt ;; 227234949Sbapt -lynx*) 228234949Sbapt os=-lynxos 229234949Sbapt ;; 230234949Sbapt -ptx*) 231234949Sbapt basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 232234949Sbapt ;; 233234949Sbapt -windowsnt*) 234234949Sbapt os=`echo $os | sed -e 's/windowsnt/winnt/'` 235234949Sbapt ;; 236234949Sbapt -psos*) 237234949Sbapt os=-psos 238234949Sbapt ;; 239234949Sbapt -mint | -mint[0-9]*) 240234949Sbapt basic_machine=m68k-atari 241234949Sbapt os=-mint 242234949Sbapt ;; 243234949Sbaptesac 244234949Sbapt 245234949Sbapt# Decode aliases for certain CPU-COMPANY combinations. 246234949Sbaptcase $basic_machine in 247234949Sbapt # Recognize the basic CPU types without company name. 248234949Sbapt # Some are omitted here because they have special meanings below. 249234949Sbapt 1750a | 580 \ 250234949Sbapt | a29k \ 251251143Sbapt | aarch64 | aarch64_be \ 252234949Sbapt | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 253234949Sbapt | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 254234949Sbapt | am33_2.0 \ 255268899Sbapt | arc | arceb \ 256251143Sbapt | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 257251143Sbapt | avr | avr32 \ 258251143Sbapt | be32 | be64 \ 259234949Sbapt | bfin \ 260268899Sbapt | c4x | c8051 | clipper \ 261234949Sbapt | d10v | d30v | dlx | dsp16xx \ 262251143Sbapt | epiphany \ 263234949Sbapt | fido | fr30 | frv \ 264234949Sbapt | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 265251143Sbapt | hexagon \ 266234949Sbapt | i370 | i860 | i960 | ia64 \ 267234949Sbapt | ip2k | iq2000 \ 268268899Sbapt | k1om \ 269251143Sbapt | le32 | le64 \ 270234949Sbapt | lm32 \ 271234949Sbapt | m32c | m32r | m32rle | m68000 | m68k | m88k \ 272251143Sbapt | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 273234949Sbapt | mips | mipsbe | mipseb | mipsel | mipsle \ 274234949Sbapt | mips16 \ 275234949Sbapt | mips64 | mips64el \ 276234949Sbapt | mips64octeon | mips64octeonel \ 277234949Sbapt | mips64orion | mips64orionel \ 278234949Sbapt | mips64r5900 | mips64r5900el \ 279234949Sbapt | mips64vr | mips64vrel \ 280234949Sbapt | mips64vr4100 | mips64vr4100el \ 281234949Sbapt | mips64vr4300 | mips64vr4300el \ 282234949Sbapt | mips64vr5000 | mips64vr5000el \ 283234949Sbapt | mips64vr5900 | mips64vr5900el \ 284234949Sbapt | mipsisa32 | mipsisa32el \ 285234949Sbapt | mipsisa32r2 | mipsisa32r2el \ 286234949Sbapt | mipsisa64 | mipsisa64el \ 287234949Sbapt | mipsisa64r2 | mipsisa64r2el \ 288234949Sbapt | mipsisa64sb1 | mipsisa64sb1el \ 289234949Sbapt | mipsisa64sr71k | mipsisa64sr71kel \ 290251143Sbapt | mipsr5900 | mipsr5900el \ 291234949Sbapt | mipstx39 | mipstx39el \ 292234949Sbapt | mn10200 | mn10300 \ 293234949Sbapt | moxie \ 294234949Sbapt | mt \ 295234949Sbapt | msp430 \ 296234949Sbapt | nds32 | nds32le | nds32be \ 297251143Sbapt | nios | nios2 | nios2eb | nios2el \ 298234949Sbapt | ns16k | ns32k \ 299268899Sbapt | open8 | or1k | or1knd | or32 \ 300234949Sbapt | pdp10 | pdp11 | pj | pjl \ 301234949Sbapt | powerpc | powerpc64 | powerpc64le | powerpcle \ 302234949Sbapt | pyramid \ 303251143Sbapt | rl78 | rx \ 304234949Sbapt | score \ 305234949Sbapt | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 306234949Sbapt | sh64 | sh64le \ 307234949Sbapt | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 308234949Sbapt | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 309234949Sbapt | spu \ 310234949Sbapt | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 311234949Sbapt | ubicom32 \ 312251143Sbapt | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 313234949Sbapt | we32k \ 314234949Sbapt | x86 | xc16x | xstormy16 | xtensa \ 315234949Sbapt | z8k | z80) 316234949Sbapt basic_machine=$basic_machine-unknown 317234949Sbapt ;; 318234949Sbapt c54x) 319234949Sbapt basic_machine=tic54x-unknown 320234949Sbapt ;; 321234949Sbapt c55x) 322234949Sbapt basic_machine=tic55x-unknown 323234949Sbapt ;; 324234949Sbapt c6x) 325234949Sbapt basic_machine=tic6x-unknown 326234949Sbapt ;; 327268899Sbapt m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 328234949Sbapt basic_machine=$basic_machine-unknown 329234949Sbapt os=-none 330234949Sbapt ;; 331234949Sbapt m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 332234949Sbapt ;; 333234949Sbapt ms1) 334234949Sbapt basic_machine=mt-unknown 335234949Sbapt ;; 336251143Sbapt 337234949Sbapt strongarm | thumb | xscale) 338234949Sbapt basic_machine=arm-unknown 339234949Sbapt ;; 340251143Sbapt xgate) 341251143Sbapt basic_machine=$basic_machine-unknown 342251143Sbapt os=-none 343251143Sbapt ;; 344234949Sbapt xscaleeb) 345234949Sbapt basic_machine=armeb-unknown 346234949Sbapt ;; 347251143Sbapt 348234949Sbapt xscaleel) 349234949Sbapt basic_machine=armel-unknown 350234949Sbapt ;; 351251143Sbapt 352234949Sbapt # We use `pc' rather than `unknown' 353234949Sbapt # because (1) that's what they normally are, and 354234949Sbapt # (2) the word "unknown" tends to confuse beginning users. 355234949Sbapt i*86 | x86_64) 356251143Sbapt basic_machine=$basic_machine-pc 357251143Sbapt ;; 358234949Sbapt # Object if more than one company name word. 359234949Sbapt *-*-*) 360234949Sbapt echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 361234949Sbapt exit 1 362234949Sbapt ;; 363234949Sbapt # Recognize the basic CPU types with company name. 364234949Sbapt 580-* \ 365234949Sbapt | a29k-* \ 366251143Sbapt | aarch64-* | aarch64_be-* \ 367234949Sbapt | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 368234949Sbapt | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 369268899Sbapt | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 370234949Sbapt | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 371234949Sbapt | avr-* | avr32-* \ 372251143Sbapt | be32-* | be64-* \ 373234949Sbapt | bfin-* | bs2000-* \ 374234949Sbapt | c[123]* | c30-* | [cjt]90-* | c4x-* \ 375268899Sbapt | c8051-* | clipper-* | craynv-* | cydra-* \ 376234949Sbapt | d10v-* | d30v-* | dlx-* \ 377234949Sbapt | elxsi-* \ 378234949Sbapt | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 379234949Sbapt | h8300-* | h8500-* \ 380234949Sbapt | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 381251143Sbapt | hexagon-* \ 382234949Sbapt | i*86-* | i860-* | i960-* | ia64-* \ 383234949Sbapt | ip2k-* | iq2000-* \ 384268899Sbapt | k1om-* \ 385251143Sbapt | le32-* | le64-* \ 386234949Sbapt | lm32-* \ 387234949Sbapt | m32c-* | m32r-* | m32rle-* \ 388234949Sbapt | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 389251143Sbapt | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 390251143Sbapt | microblaze-* | microblazeel-* \ 391234949Sbapt | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 392234949Sbapt | mips16-* \ 393234949Sbapt | mips64-* | mips64el-* \ 394234949Sbapt | mips64octeon-* | mips64octeonel-* \ 395234949Sbapt | mips64orion-* | mips64orionel-* \ 396234949Sbapt | mips64r5900-* | mips64r5900el-* \ 397234949Sbapt | mips64vr-* | mips64vrel-* \ 398234949Sbapt | mips64vr4100-* | mips64vr4100el-* \ 399234949Sbapt | mips64vr4300-* | mips64vr4300el-* \ 400234949Sbapt | mips64vr5000-* | mips64vr5000el-* \ 401234949Sbapt | mips64vr5900-* | mips64vr5900el-* \ 402234949Sbapt | mipsisa32-* | mipsisa32el-* \ 403234949Sbapt | mipsisa32r2-* | mipsisa32r2el-* \ 404234949Sbapt | mipsisa64-* | mipsisa64el-* \ 405234949Sbapt | mipsisa64r2-* | mipsisa64r2el-* \ 406234949Sbapt | mipsisa64sb1-* | mipsisa64sb1el-* \ 407234949Sbapt | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 408251143Sbapt | mipsr5900-* | mipsr5900el-* \ 409234949Sbapt | mipstx39-* | mipstx39el-* \ 410234949Sbapt | mmix-* \ 411234949Sbapt | mt-* \ 412234949Sbapt | msp430-* \ 413234949Sbapt | nds32-* | nds32le-* | nds32be-* \ 414251143Sbapt | nios-* | nios2-* | nios2eb-* | nios2el-* \ 415234949Sbapt | none-* | np1-* | ns16k-* | ns32k-* \ 416234949Sbapt | open8-* \ 417268899Sbapt | or1k*-* \ 418234949Sbapt | orion-* \ 419234949Sbapt | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 420234949Sbapt | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 421234949Sbapt | pyramid-* \ 422251143Sbapt | rl78-* | romp-* | rs6000-* | rx-* \ 423234949Sbapt | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 424234949Sbapt | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 425234949Sbapt | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 426234949Sbapt | sparclite-* \ 427234949Sbapt | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 428234949Sbapt | tahoe-* \ 429234949Sbapt | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 430251143Sbapt | tile*-* \ 431234949Sbapt | tron-* \ 432234949Sbapt | ubicom32-* \ 433251143Sbapt | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 434251143Sbapt | vax-* \ 435234949Sbapt | we32k-* \ 436234949Sbapt | x86-* | x86_64-* | xc16x-* | xps100-* \ 437234949Sbapt | xstormy16-* | xtensa*-* \ 438234949Sbapt | ymp-* \ 439234949Sbapt | z8k-* | z80-*) 440234949Sbapt ;; 441234949Sbapt # Recognize the basic CPU types without company name, with glob match. 442234949Sbapt xtensa*) 443234949Sbapt basic_machine=$basic_machine-unknown 444234949Sbapt ;; 445234949Sbapt # Recognize the various machine names and aliases which stand 446234949Sbapt # for a CPU type and a company and sometimes even an OS. 447234949Sbapt 386bsd) 448234949Sbapt basic_machine=i386-unknown 449234949Sbapt os=-bsd 450234949Sbapt ;; 451234949Sbapt 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 452234949Sbapt basic_machine=m68000-att 453234949Sbapt ;; 454234949Sbapt 3b*) 455234949Sbapt basic_machine=we32k-att 456234949Sbapt ;; 457234949Sbapt a29khif) 458234949Sbapt basic_machine=a29k-amd 459234949Sbapt os=-udi 460234949Sbapt ;; 461234949Sbapt abacus) 462234949Sbapt basic_machine=abacus-unknown 463234949Sbapt ;; 464234949Sbapt adobe68k) 465234949Sbapt basic_machine=m68010-adobe 466234949Sbapt os=-scout 467234949Sbapt ;; 468234949Sbapt alliant | fx80) 469234949Sbapt basic_machine=fx80-alliant 470234949Sbapt ;; 471234949Sbapt altos | altos3068) 472234949Sbapt basic_machine=m68k-altos 473234949Sbapt ;; 474234949Sbapt am29k) 475234949Sbapt basic_machine=a29k-none 476234949Sbapt os=-bsd 477234949Sbapt ;; 478234949Sbapt amd64) 479234949Sbapt basic_machine=x86_64-pc 480234949Sbapt ;; 481234949Sbapt amd64-*) 482234949Sbapt basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 483234949Sbapt ;; 484234949Sbapt amdahl) 485234949Sbapt basic_machine=580-amdahl 486234949Sbapt os=-sysv 487234949Sbapt ;; 488234949Sbapt amiga | amiga-*) 489234949Sbapt basic_machine=m68k-unknown 490234949Sbapt ;; 491234949Sbapt amigaos | amigados) 492234949Sbapt basic_machine=m68k-unknown 493234949Sbapt os=-amigaos 494234949Sbapt ;; 495234949Sbapt amigaunix | amix) 496234949Sbapt basic_machine=m68k-unknown 497234949Sbapt os=-sysv4 498234949Sbapt ;; 499234949Sbapt apollo68) 500234949Sbapt basic_machine=m68k-apollo 501234949Sbapt os=-sysv 502234949Sbapt ;; 503234949Sbapt apollo68bsd) 504234949Sbapt basic_machine=m68k-apollo 505234949Sbapt os=-bsd 506234949Sbapt ;; 507234949Sbapt aros) 508234949Sbapt basic_machine=i386-pc 509234949Sbapt os=-aros 510234949Sbapt ;; 511234949Sbapt aux) 512234949Sbapt basic_machine=m68k-apple 513234949Sbapt os=-aux 514234949Sbapt ;; 515234949Sbapt balance) 516234949Sbapt basic_machine=ns32k-sequent 517234949Sbapt os=-dynix 518234949Sbapt ;; 519234949Sbapt blackfin) 520234949Sbapt basic_machine=bfin-unknown 521234949Sbapt os=-linux 522234949Sbapt ;; 523234949Sbapt blackfin-*) 524234949Sbapt basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 525234949Sbapt os=-linux 526234949Sbapt ;; 527234949Sbapt bluegene*) 528234949Sbapt basic_machine=powerpc-ibm 529234949Sbapt os=-cnk 530234949Sbapt ;; 531234949Sbapt c54x-*) 532234949Sbapt basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 533234949Sbapt ;; 534234949Sbapt c55x-*) 535234949Sbapt basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 536234949Sbapt ;; 537234949Sbapt c6x-*) 538234949Sbapt basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 539234949Sbapt ;; 540234949Sbapt c90) 541234949Sbapt basic_machine=c90-cray 542234949Sbapt os=-unicos 543234949Sbapt ;; 544234949Sbapt cegcc) 545234949Sbapt basic_machine=arm-unknown 546234949Sbapt os=-cegcc 547234949Sbapt ;; 548234949Sbapt convex-c1) 549234949Sbapt basic_machine=c1-convex 550234949Sbapt os=-bsd 551234949Sbapt ;; 552234949Sbapt convex-c2) 553234949Sbapt basic_machine=c2-convex 554234949Sbapt os=-bsd 555234949Sbapt ;; 556234949Sbapt convex-c32) 557234949Sbapt basic_machine=c32-convex 558234949Sbapt os=-bsd 559234949Sbapt ;; 560234949Sbapt convex-c34) 561234949Sbapt basic_machine=c34-convex 562234949Sbapt os=-bsd 563234949Sbapt ;; 564234949Sbapt convex-c38) 565234949Sbapt basic_machine=c38-convex 566234949Sbapt os=-bsd 567234949Sbapt ;; 568234949Sbapt cray | j90) 569234949Sbapt basic_machine=j90-cray 570234949Sbapt os=-unicos 571234949Sbapt ;; 572234949Sbapt craynv) 573234949Sbapt basic_machine=craynv-cray 574234949Sbapt os=-unicosmp 575234949Sbapt ;; 576234949Sbapt cr16 | cr16-*) 577234949Sbapt basic_machine=cr16-unknown 578234949Sbapt os=-elf 579234949Sbapt ;; 580234949Sbapt crds | unos) 581234949Sbapt basic_machine=m68k-crds 582234949Sbapt ;; 583234949Sbapt crisv32 | crisv32-* | etraxfs*) 584234949Sbapt basic_machine=crisv32-axis 585234949Sbapt ;; 586234949Sbapt cris | cris-* | etrax*) 587234949Sbapt basic_machine=cris-axis 588234949Sbapt ;; 589234949Sbapt crx) 590234949Sbapt basic_machine=crx-unknown 591234949Sbapt os=-elf 592234949Sbapt ;; 593234949Sbapt da30 | da30-*) 594234949Sbapt basic_machine=m68k-da30 595234949Sbapt ;; 596234949Sbapt decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 597234949Sbapt basic_machine=mips-dec 598234949Sbapt ;; 599234949Sbapt decsystem10* | dec10*) 600234949Sbapt basic_machine=pdp10-dec 601234949Sbapt os=-tops10 602234949Sbapt ;; 603234949Sbapt decsystem20* | dec20*) 604234949Sbapt basic_machine=pdp10-dec 605234949Sbapt os=-tops20 606234949Sbapt ;; 607234949Sbapt delta | 3300 | motorola-3300 | motorola-delta \ 608234949Sbapt | 3300-motorola | delta-motorola) 609234949Sbapt basic_machine=m68k-motorola 610234949Sbapt ;; 611234949Sbapt delta88) 612234949Sbapt basic_machine=m88k-motorola 613234949Sbapt os=-sysv3 614234949Sbapt ;; 615234949Sbapt dicos) 616234949Sbapt basic_machine=i686-pc 617234949Sbapt os=-dicos 618234949Sbapt ;; 619234949Sbapt djgpp) 620234949Sbapt basic_machine=i586-pc 621234949Sbapt os=-msdosdjgpp 622234949Sbapt ;; 623234949Sbapt dpx20 | dpx20-*) 624234949Sbapt basic_machine=rs6000-bull 625234949Sbapt os=-bosx 626234949Sbapt ;; 627234949Sbapt dpx2* | dpx2*-bull) 628234949Sbapt basic_machine=m68k-bull 629234949Sbapt os=-sysv3 630234949Sbapt ;; 631234949Sbapt ebmon29k) 632234949Sbapt basic_machine=a29k-amd 633234949Sbapt os=-ebmon 634234949Sbapt ;; 635234949Sbapt elxsi) 636234949Sbapt basic_machine=elxsi-elxsi 637234949Sbapt os=-bsd 638234949Sbapt ;; 639234949Sbapt encore | umax | mmax) 640234949Sbapt basic_machine=ns32k-encore 641234949Sbapt ;; 642234949Sbapt es1800 | OSE68k | ose68k | ose | OSE) 643234949Sbapt basic_machine=m68k-ericsson 644234949Sbapt os=-ose 645234949Sbapt ;; 646234949Sbapt fx2800) 647234949Sbapt basic_machine=i860-alliant 648234949Sbapt ;; 649234949Sbapt genix) 650234949Sbapt basic_machine=ns32k-ns 651234949Sbapt ;; 652234949Sbapt gmicro) 653234949Sbapt basic_machine=tron-gmicro 654234949Sbapt os=-sysv 655234949Sbapt ;; 656234949Sbapt go32) 657234949Sbapt basic_machine=i386-pc 658234949Sbapt os=-go32 659234949Sbapt ;; 660234949Sbapt h3050r* | hiux*) 661234949Sbapt basic_machine=hppa1.1-hitachi 662234949Sbapt os=-hiuxwe2 663234949Sbapt ;; 664234949Sbapt h8300hms) 665234949Sbapt basic_machine=h8300-hitachi 666234949Sbapt os=-hms 667234949Sbapt ;; 668234949Sbapt h8300xray) 669234949Sbapt basic_machine=h8300-hitachi 670234949Sbapt os=-xray 671234949Sbapt ;; 672234949Sbapt h8500hms) 673234949Sbapt basic_machine=h8500-hitachi 674234949Sbapt os=-hms 675234949Sbapt ;; 676234949Sbapt harris) 677234949Sbapt basic_machine=m88k-harris 678234949Sbapt os=-sysv3 679234949Sbapt ;; 680234949Sbapt hp300-*) 681234949Sbapt basic_machine=m68k-hp 682234949Sbapt ;; 683234949Sbapt hp300bsd) 684234949Sbapt basic_machine=m68k-hp 685234949Sbapt os=-bsd 686234949Sbapt ;; 687234949Sbapt hp300hpux) 688234949Sbapt basic_machine=m68k-hp 689234949Sbapt os=-hpux 690234949Sbapt ;; 691234949Sbapt hp3k9[0-9][0-9] | hp9[0-9][0-9]) 692234949Sbapt basic_machine=hppa1.0-hp 693234949Sbapt ;; 694234949Sbapt hp9k2[0-9][0-9] | hp9k31[0-9]) 695234949Sbapt basic_machine=m68000-hp 696234949Sbapt ;; 697234949Sbapt hp9k3[2-9][0-9]) 698234949Sbapt basic_machine=m68k-hp 699234949Sbapt ;; 700234949Sbapt hp9k6[0-9][0-9] | hp6[0-9][0-9]) 701234949Sbapt basic_machine=hppa1.0-hp 702234949Sbapt ;; 703234949Sbapt hp9k7[0-79][0-9] | hp7[0-79][0-9]) 704234949Sbapt basic_machine=hppa1.1-hp 705234949Sbapt ;; 706234949Sbapt hp9k78[0-9] | hp78[0-9]) 707234949Sbapt # FIXME: really hppa2.0-hp 708234949Sbapt basic_machine=hppa1.1-hp 709234949Sbapt ;; 710234949Sbapt hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 711234949Sbapt # FIXME: really hppa2.0-hp 712234949Sbapt basic_machine=hppa1.1-hp 713234949Sbapt ;; 714234949Sbapt hp9k8[0-9][13679] | hp8[0-9][13679]) 715234949Sbapt basic_machine=hppa1.1-hp 716234949Sbapt ;; 717234949Sbapt hp9k8[0-9][0-9] | hp8[0-9][0-9]) 718234949Sbapt basic_machine=hppa1.0-hp 719234949Sbapt ;; 720234949Sbapt hppa-next) 721234949Sbapt os=-nextstep3 722234949Sbapt ;; 723234949Sbapt hppaosf) 724234949Sbapt basic_machine=hppa1.1-hp 725234949Sbapt os=-osf 726234949Sbapt ;; 727234949Sbapt hppro) 728234949Sbapt basic_machine=hppa1.1-hp 729234949Sbapt os=-proelf 730234949Sbapt ;; 731234949Sbapt i370-ibm* | ibm*) 732234949Sbapt basic_machine=i370-ibm 733234949Sbapt ;; 734234949Sbapt i*86v32) 735234949Sbapt basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 736234949Sbapt os=-sysv32 737234949Sbapt ;; 738234949Sbapt i*86v4*) 739234949Sbapt basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 740234949Sbapt os=-sysv4 741234949Sbapt ;; 742234949Sbapt i*86v) 743234949Sbapt basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 744234949Sbapt os=-sysv 745234949Sbapt ;; 746234949Sbapt i*86sol2) 747234949Sbapt basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 748234949Sbapt os=-solaris2 749234949Sbapt ;; 750234949Sbapt i386mach) 751234949Sbapt basic_machine=i386-mach 752234949Sbapt os=-mach 753234949Sbapt ;; 754234949Sbapt i386-vsta | vsta) 755234949Sbapt basic_machine=i386-unknown 756234949Sbapt os=-vsta 757234949Sbapt ;; 758234949Sbapt iris | iris4d) 759234949Sbapt basic_machine=mips-sgi 760234949Sbapt case $os in 761234949Sbapt -irix*) 762234949Sbapt ;; 763234949Sbapt *) 764234949Sbapt os=-irix4 765234949Sbapt ;; 766234949Sbapt esac 767234949Sbapt ;; 768234949Sbapt isi68 | isi) 769234949Sbapt basic_machine=m68k-isi 770234949Sbapt os=-sysv 771234949Sbapt ;; 772234949Sbapt m68knommu) 773234949Sbapt basic_machine=m68k-unknown 774234949Sbapt os=-linux 775234949Sbapt ;; 776234949Sbapt m68knommu-*) 777234949Sbapt basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 778234949Sbapt os=-linux 779234949Sbapt ;; 780234949Sbapt m88k-omron*) 781234949Sbapt basic_machine=m88k-omron 782234949Sbapt ;; 783234949Sbapt magnum | m3230) 784234949Sbapt basic_machine=mips-mips 785234949Sbapt os=-sysv 786234949Sbapt ;; 787234949Sbapt merlin) 788234949Sbapt basic_machine=ns32k-utek 789234949Sbapt os=-sysv 790234949Sbapt ;; 791251143Sbapt microblaze*) 792234949Sbapt basic_machine=microblaze-xilinx 793234949Sbapt ;; 794251143Sbapt mingw64) 795251143Sbapt basic_machine=x86_64-pc 796251143Sbapt os=-mingw64 797251143Sbapt ;; 798234949Sbapt mingw32) 799268899Sbapt basic_machine=i686-pc 800234949Sbapt os=-mingw32 801234949Sbapt ;; 802234949Sbapt mingw32ce) 803234949Sbapt basic_machine=arm-unknown 804234949Sbapt os=-mingw32ce 805234949Sbapt ;; 806234949Sbapt miniframe) 807234949Sbapt basic_machine=m68000-convergent 808234949Sbapt ;; 809234949Sbapt *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 810234949Sbapt basic_machine=m68k-atari 811234949Sbapt os=-mint 812234949Sbapt ;; 813234949Sbapt mips3*-*) 814234949Sbapt basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 815234949Sbapt ;; 816234949Sbapt mips3*) 817234949Sbapt basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 818234949Sbapt ;; 819234949Sbapt monitor) 820234949Sbapt basic_machine=m68k-rom68k 821234949Sbapt os=-coff 822234949Sbapt ;; 823234949Sbapt morphos) 824234949Sbapt basic_machine=powerpc-unknown 825234949Sbapt os=-morphos 826234949Sbapt ;; 827234949Sbapt msdos) 828234949Sbapt basic_machine=i386-pc 829234949Sbapt os=-msdos 830234949Sbapt ;; 831234949Sbapt ms1-*) 832234949Sbapt basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 833234949Sbapt ;; 834251143Sbapt msys) 835268899Sbapt basic_machine=i686-pc 836251143Sbapt os=-msys 837251143Sbapt ;; 838234949Sbapt mvs) 839234949Sbapt basic_machine=i370-ibm 840234949Sbapt os=-mvs 841234949Sbapt ;; 842251143Sbapt nacl) 843251143Sbapt basic_machine=le32-unknown 844251143Sbapt os=-nacl 845251143Sbapt ;; 846234949Sbapt ncr3000) 847234949Sbapt basic_machine=i486-ncr 848234949Sbapt os=-sysv4 849234949Sbapt ;; 850234949Sbapt netbsd386) 851234949Sbapt basic_machine=i386-unknown 852234949Sbapt os=-netbsd 853234949Sbapt ;; 854234949Sbapt netwinder) 855234949Sbapt basic_machine=armv4l-rebel 856234949Sbapt os=-linux 857234949Sbapt ;; 858234949Sbapt news | news700 | news800 | news900) 859234949Sbapt basic_machine=m68k-sony 860234949Sbapt os=-newsos 861234949Sbapt ;; 862234949Sbapt news1000) 863234949Sbapt basic_machine=m68030-sony 864234949Sbapt os=-newsos 865234949Sbapt ;; 866234949Sbapt news-3600 | risc-news) 867234949Sbapt basic_machine=mips-sony 868234949Sbapt os=-newsos 869234949Sbapt ;; 870234949Sbapt necv70) 871234949Sbapt basic_machine=v70-nec 872234949Sbapt os=-sysv 873234949Sbapt ;; 874251143Sbapt next | m*-next ) 875234949Sbapt basic_machine=m68k-next 876234949Sbapt case $os in 877251143Sbapt -nextstep* ) 878234949Sbapt ;; 879234949Sbapt -ns2*) 880234949Sbapt os=-nextstep2 881234949Sbapt ;; 882234949Sbapt *) 883234949Sbapt os=-nextstep3 884234949Sbapt ;; 885234949Sbapt esac 886234949Sbapt ;; 887234949Sbapt nh3000) 888234949Sbapt basic_machine=m68k-harris 889234949Sbapt os=-cxux 890234949Sbapt ;; 891234949Sbapt nh[45]000) 892234949Sbapt basic_machine=m88k-harris 893234949Sbapt os=-cxux 894234949Sbapt ;; 895234949Sbapt nindy960) 896234949Sbapt basic_machine=i960-intel 897234949Sbapt os=-nindy 898234949Sbapt ;; 899234949Sbapt mon960) 900234949Sbapt basic_machine=i960-intel 901234949Sbapt os=-mon960 902234949Sbapt ;; 903234949Sbapt nonstopux) 904234949Sbapt basic_machine=mips-compaq 905234949Sbapt os=-nonstopux 906234949Sbapt ;; 907234949Sbapt np1) 908234949Sbapt basic_machine=np1-gould 909234949Sbapt ;; 910234949Sbapt neo-tandem) 911234949Sbapt basic_machine=neo-tandem 912234949Sbapt ;; 913234949Sbapt nse-tandem) 914234949Sbapt basic_machine=nse-tandem 915234949Sbapt ;; 916234949Sbapt nsr-tandem) 917234949Sbapt basic_machine=nsr-tandem 918234949Sbapt ;; 919234949Sbapt op50n-* | op60c-*) 920234949Sbapt basic_machine=hppa1.1-oki 921234949Sbapt os=-proelf 922234949Sbapt ;; 923234949Sbapt openrisc | openrisc-*) 924234949Sbapt basic_machine=or32-unknown 925234949Sbapt ;; 926234949Sbapt os400) 927234949Sbapt basic_machine=powerpc-ibm 928234949Sbapt os=-os400 929234949Sbapt ;; 930234949Sbapt OSE68000 | ose68000) 931234949Sbapt basic_machine=m68000-ericsson 932234949Sbapt os=-ose 933234949Sbapt ;; 934234949Sbapt os68k) 935234949Sbapt basic_machine=m68k-none 936234949Sbapt os=-os68k 937234949Sbapt ;; 938234949Sbapt pa-hitachi) 939234949Sbapt basic_machine=hppa1.1-hitachi 940234949Sbapt os=-hiuxwe2 941234949Sbapt ;; 942234949Sbapt paragon) 943234949Sbapt basic_machine=i860-intel 944234949Sbapt os=-osf 945234949Sbapt ;; 946234949Sbapt parisc) 947234949Sbapt basic_machine=hppa-unknown 948234949Sbapt os=-linux 949234949Sbapt ;; 950234949Sbapt parisc-*) 951234949Sbapt basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 952234949Sbapt os=-linux 953234949Sbapt ;; 954234949Sbapt pbd) 955234949Sbapt basic_machine=sparc-tti 956234949Sbapt ;; 957234949Sbapt pbb) 958234949Sbapt basic_machine=m68k-tti 959234949Sbapt ;; 960234949Sbapt pc532 | pc532-*) 961234949Sbapt basic_machine=ns32k-pc532 962234949Sbapt ;; 963234949Sbapt pc98) 964234949Sbapt basic_machine=i386-pc 965234949Sbapt ;; 966234949Sbapt pc98-*) 967234949Sbapt basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 968234949Sbapt ;; 969234949Sbapt pentium | p5 | k5 | k6 | nexgen | viac3) 970234949Sbapt basic_machine=i586-pc 971234949Sbapt ;; 972234949Sbapt pentiumpro | p6 | 6x86 | athlon | athlon_*) 973234949Sbapt basic_machine=i686-pc 974234949Sbapt ;; 975234949Sbapt pentiumii | pentium2 | pentiumiii | pentium3) 976234949Sbapt basic_machine=i686-pc 977234949Sbapt ;; 978234949Sbapt pentium4) 979234949Sbapt basic_machine=i786-pc 980234949Sbapt ;; 981234949Sbapt pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 982234949Sbapt basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 983234949Sbapt ;; 984234949Sbapt pentiumpro-* | p6-* | 6x86-* | athlon-*) 985234949Sbapt basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 986234949Sbapt ;; 987234949Sbapt pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 988234949Sbapt basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 989234949Sbapt ;; 990234949Sbapt pentium4-*) 991234949Sbapt basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 992234949Sbapt ;; 993234949Sbapt pn) 994234949Sbapt basic_machine=pn-gould 995234949Sbapt ;; 996251143Sbapt power) basic_machine=power-ibm 997234949Sbapt ;; 998251143Sbapt ppc | ppcbe) basic_machine=powerpc-unknown 999234949Sbapt ;; 1000234949Sbapt ppc-* | ppcbe-*) 1001234949Sbapt basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 1002234949Sbapt ;; 1003234949Sbapt ppcle | powerpclittle | ppc-le | powerpc-little) 1004234949Sbapt basic_machine=powerpcle-unknown 1005234949Sbapt ;; 1006234949Sbapt ppcle-* | powerpclittle-*) 1007234949Sbapt basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 1008234949Sbapt ;; 1009251143Sbapt ppc64) basic_machine=powerpc64-unknown 1010234949Sbapt ;; 1011251143Sbapt ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 1012234949Sbapt ;; 1013234949Sbapt ppc64le | powerpc64little | ppc64-le | powerpc64-little) 1014234949Sbapt basic_machine=powerpc64le-unknown 1015234949Sbapt ;; 1016234949Sbapt ppc64le-* | powerpc64little-*) 1017234949Sbapt basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1018234949Sbapt ;; 1019234949Sbapt ps2) 1020234949Sbapt basic_machine=i386-ibm 1021234949Sbapt ;; 1022234949Sbapt pw32) 1023234949Sbapt basic_machine=i586-unknown 1024234949Sbapt os=-pw32 1025234949Sbapt ;; 1026251143Sbapt rdos | rdos64) 1027251143Sbapt basic_machine=x86_64-pc 1028251143Sbapt os=-rdos 1029251143Sbapt ;; 1030251143Sbapt rdos32) 1031234949Sbapt basic_machine=i386-pc 1032234949Sbapt os=-rdos 1033234949Sbapt ;; 1034234949Sbapt rom68k) 1035234949Sbapt basic_machine=m68k-rom68k 1036234949Sbapt os=-coff 1037234949Sbapt ;; 1038234949Sbapt rm[46]00) 1039234949Sbapt basic_machine=mips-siemens 1040234949Sbapt ;; 1041234949Sbapt rtpc | rtpc-*) 1042234949Sbapt basic_machine=romp-ibm 1043234949Sbapt ;; 1044234949Sbapt s390 | s390-*) 1045234949Sbapt basic_machine=s390-ibm 1046234949Sbapt ;; 1047234949Sbapt s390x | s390x-*) 1048234949Sbapt basic_machine=s390x-ibm 1049234949Sbapt ;; 1050234949Sbapt sa29200) 1051234949Sbapt basic_machine=a29k-amd 1052234949Sbapt os=-udi 1053234949Sbapt ;; 1054234949Sbapt sb1) 1055234949Sbapt basic_machine=mipsisa64sb1-unknown 1056234949Sbapt ;; 1057234949Sbapt sb1el) 1058234949Sbapt basic_machine=mipsisa64sb1el-unknown 1059234949Sbapt ;; 1060234949Sbapt sde) 1061234949Sbapt basic_machine=mipsisa32-sde 1062234949Sbapt os=-elf 1063234949Sbapt ;; 1064234949Sbapt sei) 1065234949Sbapt basic_machine=mips-sei 1066234949Sbapt os=-seiux 1067234949Sbapt ;; 1068234949Sbapt sequent) 1069234949Sbapt basic_machine=i386-sequent 1070234949Sbapt ;; 1071234949Sbapt sh) 1072234949Sbapt basic_machine=sh-hitachi 1073234949Sbapt os=-hms 1074234949Sbapt ;; 1075234949Sbapt sh5el) 1076234949Sbapt basic_machine=sh5le-unknown 1077234949Sbapt ;; 1078234949Sbapt sh64) 1079234949Sbapt basic_machine=sh64-unknown 1080234949Sbapt ;; 1081234949Sbapt sparclite-wrs | simso-wrs) 1082234949Sbapt basic_machine=sparclite-wrs 1083234949Sbapt os=-vxworks 1084234949Sbapt ;; 1085234949Sbapt sps7) 1086234949Sbapt basic_machine=m68k-bull 1087234949Sbapt os=-sysv2 1088234949Sbapt ;; 1089234949Sbapt spur) 1090234949Sbapt basic_machine=spur-unknown 1091234949Sbapt ;; 1092234949Sbapt st2000) 1093234949Sbapt basic_machine=m68k-tandem 1094234949Sbapt ;; 1095234949Sbapt stratus) 1096234949Sbapt basic_machine=i860-stratus 1097234949Sbapt os=-sysv4 1098234949Sbapt ;; 1099234949Sbapt strongarm-* | thumb-*) 1100234949Sbapt basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1101234949Sbapt ;; 1102234949Sbapt sun2) 1103234949Sbapt basic_machine=m68000-sun 1104234949Sbapt ;; 1105234949Sbapt sun2os3) 1106234949Sbapt basic_machine=m68000-sun 1107234949Sbapt os=-sunos3 1108234949Sbapt ;; 1109234949Sbapt sun2os4) 1110234949Sbapt basic_machine=m68000-sun 1111234949Sbapt os=-sunos4 1112234949Sbapt ;; 1113234949Sbapt sun3os3) 1114234949Sbapt basic_machine=m68k-sun 1115234949Sbapt os=-sunos3 1116234949Sbapt ;; 1117234949Sbapt sun3os4) 1118234949Sbapt basic_machine=m68k-sun 1119234949Sbapt os=-sunos4 1120234949Sbapt ;; 1121234949Sbapt sun4os3) 1122234949Sbapt basic_machine=sparc-sun 1123234949Sbapt os=-sunos3 1124234949Sbapt ;; 1125234949Sbapt sun4os4) 1126234949Sbapt basic_machine=sparc-sun 1127234949Sbapt os=-sunos4 1128234949Sbapt ;; 1129234949Sbapt sun4sol2) 1130234949Sbapt basic_machine=sparc-sun 1131234949Sbapt os=-solaris2 1132234949Sbapt ;; 1133234949Sbapt sun3 | sun3-*) 1134234949Sbapt basic_machine=m68k-sun 1135234949Sbapt ;; 1136234949Sbapt sun4) 1137234949Sbapt basic_machine=sparc-sun 1138234949Sbapt ;; 1139234949Sbapt sun386 | sun386i | roadrunner) 1140234949Sbapt basic_machine=i386-sun 1141234949Sbapt ;; 1142234949Sbapt sv1) 1143234949Sbapt basic_machine=sv1-cray 1144234949Sbapt os=-unicos 1145234949Sbapt ;; 1146234949Sbapt symmetry) 1147234949Sbapt basic_machine=i386-sequent 1148234949Sbapt os=-dynix 1149234949Sbapt ;; 1150234949Sbapt t3e) 1151234949Sbapt basic_machine=alphaev5-cray 1152234949Sbapt os=-unicos 1153234949Sbapt ;; 1154234949Sbapt t90) 1155234949Sbapt basic_machine=t90-cray 1156234949Sbapt os=-unicos 1157234949Sbapt ;; 1158234949Sbapt tile*) 1159251143Sbapt basic_machine=$basic_machine-unknown 1160234949Sbapt os=-linux-gnu 1161234949Sbapt ;; 1162234949Sbapt tx39) 1163234949Sbapt basic_machine=mipstx39-unknown 1164234949Sbapt ;; 1165234949Sbapt tx39el) 1166234949Sbapt basic_machine=mipstx39el-unknown 1167234949Sbapt ;; 1168234949Sbapt toad1) 1169234949Sbapt basic_machine=pdp10-xkl 1170234949Sbapt os=-tops20 1171234949Sbapt ;; 1172234949Sbapt tower | tower-32) 1173234949Sbapt basic_machine=m68k-ncr 1174234949Sbapt ;; 1175234949Sbapt tpf) 1176234949Sbapt basic_machine=s390x-ibm 1177234949Sbapt os=-tpf 1178234949Sbapt ;; 1179234949Sbapt udi29k) 1180234949Sbapt basic_machine=a29k-amd 1181234949Sbapt os=-udi 1182234949Sbapt ;; 1183234949Sbapt ultra3) 1184234949Sbapt basic_machine=a29k-nyu 1185234949Sbapt os=-sym1 1186234949Sbapt ;; 1187234949Sbapt v810 | necv810) 1188234949Sbapt basic_machine=v810-nec 1189234949Sbapt os=-none 1190234949Sbapt ;; 1191234949Sbapt vaxv) 1192234949Sbapt basic_machine=vax-dec 1193234949Sbapt os=-sysv 1194234949Sbapt ;; 1195234949Sbapt vms) 1196234949Sbapt basic_machine=vax-dec 1197234949Sbapt os=-vms 1198234949Sbapt ;; 1199234949Sbapt vpp*|vx|vx-*) 1200234949Sbapt basic_machine=f301-fujitsu 1201234949Sbapt ;; 1202234949Sbapt vxworks960) 1203234949Sbapt basic_machine=i960-wrs 1204234949Sbapt os=-vxworks 1205234949Sbapt ;; 1206234949Sbapt vxworks68) 1207234949Sbapt basic_machine=m68k-wrs 1208234949Sbapt os=-vxworks 1209234949Sbapt ;; 1210234949Sbapt vxworks29k) 1211234949Sbapt basic_machine=a29k-wrs 1212234949Sbapt os=-vxworks 1213234949Sbapt ;; 1214234949Sbapt w65*) 1215234949Sbapt basic_machine=w65-wdc 1216234949Sbapt os=-none 1217234949Sbapt ;; 1218234949Sbapt w89k-*) 1219234949Sbapt basic_machine=hppa1.1-winbond 1220234949Sbapt os=-proelf 1221234949Sbapt ;; 1222234949Sbapt xbox) 1223234949Sbapt basic_machine=i686-pc 1224234949Sbapt os=-mingw32 1225234949Sbapt ;; 1226234949Sbapt xps | xps100) 1227234949Sbapt basic_machine=xps100-honeywell 1228234949Sbapt ;; 1229234949Sbapt xscale-* | xscalee[bl]-*) 1230234949Sbapt basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1231234949Sbapt ;; 1232234949Sbapt ymp) 1233234949Sbapt basic_machine=ymp-cray 1234234949Sbapt os=-unicos 1235234949Sbapt ;; 1236234949Sbapt z8k-*-coff) 1237234949Sbapt basic_machine=z8k-unknown 1238234949Sbapt os=-sim 1239234949Sbapt ;; 1240234949Sbapt z80-*-coff) 1241234949Sbapt basic_machine=z80-unknown 1242234949Sbapt os=-sim 1243234949Sbapt ;; 1244234949Sbapt none) 1245234949Sbapt basic_machine=none-none 1246234949Sbapt os=-none 1247234949Sbapt ;; 1248234949Sbapt 1249234949Sbapt# Here we handle the default manufacturer of certain CPU types. It is in 1250234949Sbapt# some cases the only manufacturer, in others, it is the most popular. 1251234949Sbapt w89k) 1252234949Sbapt basic_machine=hppa1.1-winbond 1253234949Sbapt ;; 1254234949Sbapt op50n) 1255234949Sbapt basic_machine=hppa1.1-oki 1256234949Sbapt ;; 1257234949Sbapt op60c) 1258234949Sbapt basic_machine=hppa1.1-oki 1259234949Sbapt ;; 1260234949Sbapt romp) 1261234949Sbapt basic_machine=romp-ibm 1262234949Sbapt ;; 1263234949Sbapt mmix) 1264234949Sbapt basic_machine=mmix-knuth 1265234949Sbapt ;; 1266234949Sbapt rs6000) 1267234949Sbapt basic_machine=rs6000-ibm 1268234949Sbapt ;; 1269234949Sbapt vax) 1270234949Sbapt basic_machine=vax-dec 1271234949Sbapt ;; 1272234949Sbapt pdp10) 1273234949Sbapt # there are many clones, so DEC is not a safe bet 1274234949Sbapt basic_machine=pdp10-unknown 1275234949Sbapt ;; 1276234949Sbapt pdp11) 1277234949Sbapt basic_machine=pdp11-dec 1278234949Sbapt ;; 1279234949Sbapt we32k) 1280234949Sbapt basic_machine=we32k-att 1281234949Sbapt ;; 1282234949Sbapt sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1283234949Sbapt basic_machine=sh-unknown 1284234949Sbapt ;; 1285234949Sbapt sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1286234949Sbapt basic_machine=sparc-sun 1287234949Sbapt ;; 1288234949Sbapt cydra) 1289234949Sbapt basic_machine=cydra-cydrome 1290234949Sbapt ;; 1291234949Sbapt orion) 1292234949Sbapt basic_machine=orion-highlevel 1293234949Sbapt ;; 1294234949Sbapt orion105) 1295234949Sbapt basic_machine=clipper-highlevel 1296234949Sbapt ;; 1297234949Sbapt mac | mpw | mac-mpw) 1298234949Sbapt basic_machine=m68k-apple 1299234949Sbapt ;; 1300234949Sbapt pmac | pmac-mpw) 1301234949Sbapt basic_machine=powerpc-apple 1302234949Sbapt ;; 1303234949Sbapt *-unknown) 1304234949Sbapt # Make sure to match an already-canonicalized machine name. 1305234949Sbapt ;; 1306234949Sbapt *) 1307234949Sbapt echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1308234949Sbapt exit 1 1309234949Sbapt ;; 1310234949Sbaptesac 1311234949Sbapt 1312234949Sbapt# Here we canonicalize certain aliases for manufacturers. 1313234949Sbaptcase $basic_machine in 1314234949Sbapt *-digital*) 1315234949Sbapt basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1316234949Sbapt ;; 1317234949Sbapt *-commodore*) 1318234949Sbapt basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1319234949Sbapt ;; 1320234949Sbapt *) 1321234949Sbapt ;; 1322234949Sbaptesac 1323234949Sbapt 1324234949Sbapt# Decode manufacturer-specific aliases for certain operating systems. 1325234949Sbapt 1326234949Sbaptif [ x"$os" != x"" ] 1327234949Sbaptthen 1328234949Sbaptcase $os in 1329234949Sbapt # First match some system type aliases 1330234949Sbapt # that might get confused with valid system types. 1331234949Sbapt # -solaris* is a basic system type, with this one exception. 1332234949Sbapt -auroraux) 1333234949Sbapt os=-auroraux 1334234949Sbapt ;; 1335234949Sbapt -solaris1 | -solaris1.*) 1336234949Sbapt os=`echo $os | sed -e 's|solaris1|sunos4|'` 1337234949Sbapt ;; 1338234949Sbapt -solaris) 1339234949Sbapt os=-solaris2 1340234949Sbapt ;; 1341234949Sbapt -svr4*) 1342234949Sbapt os=-sysv4 1343234949Sbapt ;; 1344234949Sbapt -unixware*) 1345234949Sbapt os=-sysv4.2uw 1346234949Sbapt ;; 1347234949Sbapt -gnu/linux*) 1348234949Sbapt os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1349234949Sbapt ;; 1350234949Sbapt # First accept the basic system types. 1351234949Sbapt # The portable systems comes first. 1352234949Sbapt # Each alternative MUST END IN A *, to match a version number. 1353234949Sbapt # -sysv* is not here because it comes later, after sysvr4. 1354234949Sbapt -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1355234949Sbapt | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1356234949Sbapt | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1357251143Sbapt | -sym* | -kopensolaris* | -plan9* \ 1358234949Sbapt | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1359234949Sbapt | -aos* | -aros* \ 1360234949Sbapt | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1361234949Sbapt | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1362234949Sbapt | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1363251143Sbapt | -bitrig* | -openbsd* | -solidbsd* \ 1364234949Sbapt | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1365234949Sbapt | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1366234949Sbapt | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1367234949Sbapt | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1368234949Sbapt | -chorusos* | -chorusrdb* | -cegcc* \ 1369251143Sbapt | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1370251143Sbapt | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1371251143Sbapt | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 1372234949Sbapt | -uxpv* | -beos* | -mpeix* | -udk* \ 1373234949Sbapt | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1374234949Sbapt | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1375234949Sbapt | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1376234949Sbapt | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1377234949Sbapt | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1378234949Sbapt | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1379268899Sbapt | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) 1380234949Sbapt # Remember, each alternative MUST END IN *, to match a version number. 1381234949Sbapt ;; 1382234949Sbapt -qnx*) 1383234949Sbapt case $basic_machine in 1384234949Sbapt x86-* | i*86-*) 1385234949Sbapt ;; 1386234949Sbapt *) 1387234949Sbapt os=-nto$os 1388234949Sbapt ;; 1389234949Sbapt esac 1390234949Sbapt ;; 1391234949Sbapt -nto-qnx*) 1392234949Sbapt ;; 1393234949Sbapt -nto*) 1394234949Sbapt os=`echo $os | sed -e 's|nto|nto-qnx|'` 1395234949Sbapt ;; 1396234949Sbapt -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1397234949Sbapt | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1398234949Sbapt | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1399234949Sbapt ;; 1400234949Sbapt -mac*) 1401234949Sbapt os=`echo $os | sed -e 's|mac|macos|'` 1402234949Sbapt ;; 1403234949Sbapt -linux-dietlibc) 1404234949Sbapt os=-linux-dietlibc 1405234949Sbapt ;; 1406234949Sbapt -linux*) 1407234949Sbapt os=`echo $os | sed -e 's|linux|linux-gnu|'` 1408234949Sbapt ;; 1409234949Sbapt -sunos5*) 1410234949Sbapt os=`echo $os | sed -e 's|sunos5|solaris2|'` 1411234949Sbapt ;; 1412234949Sbapt -sunos6*) 1413234949Sbapt os=`echo $os | sed -e 's|sunos6|solaris3|'` 1414234949Sbapt ;; 1415234949Sbapt -opened*) 1416234949Sbapt os=-openedition 1417234949Sbapt ;; 1418234949Sbapt -os400*) 1419234949Sbapt os=-os400 1420234949Sbapt ;; 1421234949Sbapt -wince*) 1422234949Sbapt os=-wince 1423234949Sbapt ;; 1424234949Sbapt -osfrose*) 1425234949Sbapt os=-osfrose 1426234949Sbapt ;; 1427234949Sbapt -osf*) 1428234949Sbapt os=-osf 1429234949Sbapt ;; 1430234949Sbapt -utek*) 1431234949Sbapt os=-bsd 1432234949Sbapt ;; 1433234949Sbapt -dynix*) 1434234949Sbapt os=-bsd 1435234949Sbapt ;; 1436234949Sbapt -acis*) 1437234949Sbapt os=-aos 1438234949Sbapt ;; 1439234949Sbapt -atheos*) 1440234949Sbapt os=-atheos 1441234949Sbapt ;; 1442234949Sbapt -syllable*) 1443234949Sbapt os=-syllable 1444234949Sbapt ;; 1445234949Sbapt -386bsd) 1446234949Sbapt os=-bsd 1447234949Sbapt ;; 1448234949Sbapt -ctix* | -uts*) 1449234949Sbapt os=-sysv 1450234949Sbapt ;; 1451234949Sbapt -nova*) 1452234949Sbapt os=-rtmk-nova 1453234949Sbapt ;; 1454251143Sbapt -ns2 ) 1455234949Sbapt os=-nextstep2 1456234949Sbapt ;; 1457234949Sbapt -nsk*) 1458234949Sbapt os=-nsk 1459234949Sbapt ;; 1460234949Sbapt # Preserve the version number of sinix5. 1461234949Sbapt -sinix5.*) 1462234949Sbapt os=`echo $os | sed -e 's|sinix|sysv|'` 1463234949Sbapt ;; 1464234949Sbapt -sinix*) 1465234949Sbapt os=-sysv4 1466234949Sbapt ;; 1467234949Sbapt -tpf*) 1468234949Sbapt os=-tpf 1469234949Sbapt ;; 1470234949Sbapt -triton*) 1471234949Sbapt os=-sysv3 1472234949Sbapt ;; 1473234949Sbapt -oss*) 1474234949Sbapt os=-sysv3 1475234949Sbapt ;; 1476234949Sbapt -svr4) 1477234949Sbapt os=-sysv4 1478234949Sbapt ;; 1479234949Sbapt -svr3) 1480234949Sbapt os=-sysv3 1481234949Sbapt ;; 1482234949Sbapt -sysvr4) 1483234949Sbapt os=-sysv4 1484234949Sbapt ;; 1485234949Sbapt # This must come after -sysvr4. 1486234949Sbapt -sysv*) 1487234949Sbapt ;; 1488234949Sbapt -ose*) 1489234949Sbapt os=-ose 1490234949Sbapt ;; 1491234949Sbapt -es1800*) 1492234949Sbapt os=-ose 1493234949Sbapt ;; 1494234949Sbapt -xenix) 1495234949Sbapt os=-xenix 1496234949Sbapt ;; 1497234949Sbapt -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1498234949Sbapt os=-mint 1499234949Sbapt ;; 1500234949Sbapt -aros*) 1501234949Sbapt os=-aros 1502234949Sbapt ;; 1503234949Sbapt -zvmoe) 1504234949Sbapt os=-zvmoe 1505234949Sbapt ;; 1506234949Sbapt -dicos*) 1507234949Sbapt os=-dicos 1508234949Sbapt ;; 1509234949Sbapt -nacl*) 1510234949Sbapt ;; 1511234949Sbapt -none) 1512234949Sbapt ;; 1513234949Sbapt *) 1514234949Sbapt # Get rid of the `-' at the beginning of $os. 1515234949Sbapt os=`echo $os | sed 's/[^-]*-//'` 1516234949Sbapt echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1517234949Sbapt exit 1 1518234949Sbapt ;; 1519234949Sbaptesac 1520234949Sbaptelse 1521234949Sbapt 1522234949Sbapt# Here we handle the default operating systems that come with various machines. 1523234949Sbapt# The value should be what the vendor currently ships out the door with their 1524234949Sbapt# machine or put another way, the most popular os provided with the machine. 1525234949Sbapt 1526234949Sbapt# Note that if you're going to try to match "-MANUFACTURER" here (say, 1527234949Sbapt# "-sun"), then you have to tell the case statement up towards the top 1528234949Sbapt# that MANUFACTURER isn't an operating system. Otherwise, code above 1529234949Sbapt# will signal an error saying that MANUFACTURER isn't an operating 1530234949Sbapt# system, and we'll never get to this point. 1531234949Sbapt 1532234949Sbaptcase $basic_machine in 1533234949Sbapt score-*) 1534234949Sbapt os=-elf 1535234949Sbapt ;; 1536234949Sbapt spu-*) 1537234949Sbapt os=-elf 1538234949Sbapt ;; 1539234949Sbapt *-acorn) 1540234949Sbapt os=-riscix1.2 1541234949Sbapt ;; 1542234949Sbapt arm*-rebel) 1543234949Sbapt os=-linux 1544234949Sbapt ;; 1545234949Sbapt arm*-semi) 1546234949Sbapt os=-aout 1547234949Sbapt ;; 1548234949Sbapt c4x-* | tic4x-*) 1549234949Sbapt os=-coff 1550234949Sbapt ;; 1551268899Sbapt c8051-*) 1552268899Sbapt os=-elf 1553268899Sbapt ;; 1554251143Sbapt hexagon-*) 1555251143Sbapt os=-elf 1556251143Sbapt ;; 1557234949Sbapt tic54x-*) 1558234949Sbapt os=-coff 1559234949Sbapt ;; 1560234949Sbapt tic55x-*) 1561234949Sbapt os=-coff 1562234949Sbapt ;; 1563234949Sbapt tic6x-*) 1564234949Sbapt os=-coff 1565234949Sbapt ;; 1566234949Sbapt # This must come before the *-dec entry. 1567234949Sbapt pdp10-*) 1568234949Sbapt os=-tops20 1569234949Sbapt ;; 1570234949Sbapt pdp11-*) 1571234949Sbapt os=-none 1572234949Sbapt ;; 1573234949Sbapt *-dec | vax-*) 1574234949Sbapt os=-ultrix4.2 1575234949Sbapt ;; 1576234949Sbapt m68*-apollo) 1577234949Sbapt os=-domain 1578234949Sbapt ;; 1579234949Sbapt i386-sun) 1580234949Sbapt os=-sunos4.0.2 1581234949Sbapt ;; 1582234949Sbapt m68000-sun) 1583234949Sbapt os=-sunos3 1584234949Sbapt ;; 1585234949Sbapt m68*-cisco) 1586234949Sbapt os=-aout 1587234949Sbapt ;; 1588234949Sbapt mep-*) 1589234949Sbapt os=-elf 1590234949Sbapt ;; 1591234949Sbapt mips*-cisco) 1592234949Sbapt os=-elf 1593234949Sbapt ;; 1594234949Sbapt mips*-*) 1595234949Sbapt os=-elf 1596234949Sbapt ;; 1597234949Sbapt or32-*) 1598234949Sbapt os=-coff 1599234949Sbapt ;; 1600234949Sbapt *-tti) # must be before sparc entry or we get the wrong os. 1601234949Sbapt os=-sysv3 1602234949Sbapt ;; 1603234949Sbapt sparc-* | *-sun) 1604234949Sbapt os=-sunos4.1.1 1605234949Sbapt ;; 1606234949Sbapt *-be) 1607234949Sbapt os=-beos 1608234949Sbapt ;; 1609234949Sbapt *-haiku) 1610234949Sbapt os=-haiku 1611234949Sbapt ;; 1612234949Sbapt *-ibm) 1613234949Sbapt os=-aix 1614234949Sbapt ;; 1615234949Sbapt *-knuth) 1616234949Sbapt os=-mmixware 1617234949Sbapt ;; 1618234949Sbapt *-wec) 1619234949Sbapt os=-proelf 1620234949Sbapt ;; 1621234949Sbapt *-winbond) 1622234949Sbapt os=-proelf 1623234949Sbapt ;; 1624234949Sbapt *-oki) 1625234949Sbapt os=-proelf 1626234949Sbapt ;; 1627234949Sbapt *-hp) 1628234949Sbapt os=-hpux 1629234949Sbapt ;; 1630234949Sbapt *-hitachi) 1631234949Sbapt os=-hiux 1632234949Sbapt ;; 1633234949Sbapt i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1634234949Sbapt os=-sysv 1635234949Sbapt ;; 1636234949Sbapt *-cbm) 1637234949Sbapt os=-amigaos 1638234949Sbapt ;; 1639234949Sbapt *-dg) 1640234949Sbapt os=-dgux 1641234949Sbapt ;; 1642234949Sbapt *-dolphin) 1643234949Sbapt os=-sysv3 1644234949Sbapt ;; 1645234949Sbapt m68k-ccur) 1646234949Sbapt os=-rtu 1647234949Sbapt ;; 1648234949Sbapt m88k-omron*) 1649234949Sbapt os=-luna 1650234949Sbapt ;; 1651251143Sbapt *-next ) 1652234949Sbapt os=-nextstep 1653234949Sbapt ;; 1654234949Sbapt *-sequent) 1655234949Sbapt os=-ptx 1656234949Sbapt ;; 1657234949Sbapt *-crds) 1658234949Sbapt os=-unos 1659234949Sbapt ;; 1660234949Sbapt *-ns) 1661234949Sbapt os=-genix 1662234949Sbapt ;; 1663234949Sbapt i370-*) 1664234949Sbapt os=-mvs 1665234949Sbapt ;; 1666234949Sbapt *-next) 1667234949Sbapt os=-nextstep3 1668234949Sbapt ;; 1669234949Sbapt *-gould) 1670234949Sbapt os=-sysv 1671234949Sbapt ;; 1672234949Sbapt *-highlevel) 1673234949Sbapt os=-bsd 1674234949Sbapt ;; 1675234949Sbapt *-encore) 1676234949Sbapt os=-bsd 1677234949Sbapt ;; 1678234949Sbapt *-sgi) 1679234949Sbapt os=-irix 1680234949Sbapt ;; 1681234949Sbapt *-siemens) 1682234949Sbapt os=-sysv4 1683234949Sbapt ;; 1684234949Sbapt *-masscomp) 1685234949Sbapt os=-rtu 1686234949Sbapt ;; 1687234949Sbapt f30[01]-fujitsu | f700-fujitsu) 1688234949Sbapt os=-uxpv 1689234949Sbapt ;; 1690234949Sbapt *-rom68k) 1691234949Sbapt os=-coff 1692234949Sbapt ;; 1693234949Sbapt *-*bug) 1694234949Sbapt os=-coff 1695234949Sbapt ;; 1696234949Sbapt *-apple) 1697234949Sbapt os=-macos 1698234949Sbapt ;; 1699234949Sbapt *-atari*) 1700234949Sbapt os=-mint 1701234949Sbapt ;; 1702234949Sbapt *) 1703234949Sbapt os=-none 1704234949Sbapt ;; 1705234949Sbaptesac 1706234949Sbaptfi 1707234949Sbapt 1708234949Sbapt# Here we handle the case where we know the os, and the CPU type, but not the 1709234949Sbapt# manufacturer. We pick the logical manufacturer. 1710234949Sbaptvendor=unknown 1711234949Sbaptcase $basic_machine in 1712234949Sbapt *-unknown) 1713234949Sbapt case $os in 1714234949Sbapt -riscix*) 1715234949Sbapt vendor=acorn 1716234949Sbapt ;; 1717234949Sbapt -sunos*) 1718234949Sbapt vendor=sun 1719234949Sbapt ;; 1720234949Sbapt -cnk*|-aix*) 1721234949Sbapt vendor=ibm 1722234949Sbapt ;; 1723234949Sbapt -beos*) 1724234949Sbapt vendor=be 1725234949Sbapt ;; 1726234949Sbapt -hpux*) 1727234949Sbapt vendor=hp 1728234949Sbapt ;; 1729234949Sbapt -mpeix*) 1730234949Sbapt vendor=hp 1731234949Sbapt ;; 1732234949Sbapt -hiux*) 1733234949Sbapt vendor=hitachi 1734234949Sbapt ;; 1735234949Sbapt -unos*) 1736234949Sbapt vendor=crds 1737234949Sbapt ;; 1738234949Sbapt -dgux*) 1739234949Sbapt vendor=dg 1740234949Sbapt ;; 1741234949Sbapt -luna*) 1742234949Sbapt vendor=omron 1743234949Sbapt ;; 1744234949Sbapt -genix*) 1745234949Sbapt vendor=ns 1746234949Sbapt ;; 1747234949Sbapt -mvs* | -opened*) 1748234949Sbapt vendor=ibm 1749234949Sbapt ;; 1750234949Sbapt -os400*) 1751234949Sbapt vendor=ibm 1752234949Sbapt ;; 1753234949Sbapt -ptx*) 1754234949Sbapt vendor=sequent 1755234949Sbapt ;; 1756234949Sbapt -tpf*) 1757234949Sbapt vendor=ibm 1758234949Sbapt ;; 1759234949Sbapt -vxsim* | -vxworks* | -windiss*) 1760234949Sbapt vendor=wrs 1761234949Sbapt ;; 1762234949Sbapt -aux*) 1763234949Sbapt vendor=apple 1764234949Sbapt ;; 1765234949Sbapt -hms*) 1766234949Sbapt vendor=hitachi 1767234949Sbapt ;; 1768234949Sbapt -mpw* | -macos*) 1769234949Sbapt vendor=apple 1770234949Sbapt ;; 1771234949Sbapt -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1772234949Sbapt vendor=atari 1773234949Sbapt ;; 1774234949Sbapt -vos*) 1775234949Sbapt vendor=stratus 1776234949Sbapt ;; 1777234949Sbapt esac 1778234949Sbapt basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1779234949Sbapt ;; 1780234949Sbaptesac 1781234949Sbapt 1782234949Sbaptecho $basic_machine$os 1783234949Sbaptexit 1784234949Sbapt 1785234949Sbapt# Local variables: 1786234949Sbapt# eval: (add-hook 'write-file-hooks 'time-stamp) 1787234949Sbapt# time-stamp-start: "timestamp='" 1788234949Sbapt# time-stamp-format: "%:y-%02m-%02d" 1789234949Sbapt# time-stamp-end: "'" 1790234949Sbapt# End: 1791