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