config.sub revision fe2ac8d7
19027f4a0Smrg#! /bin/sh 29027f4a0Smrg# Configuration validation subroutine script. 3fe2ac8d7Smrg# Copyright 1992-2013 Free Software Foundation, Inc. 49027f4a0Smrg 5fe2ac8d7Smrgtimestamp='2013-04-24' 69027f4a0Smrg 7fe2ac8d7Smrg# This file is free software; you can redistribute it and/or modify it 8fe2ac8d7Smrg# under the terms of the GNU General Public License as published by 9fe2ac8d7Smrg# the Free Software Foundation; either version 3 of the License, or 109027f4a0Smrg# (at your option) any later version. 119027f4a0Smrg# 12fe2ac8d7Smrg# This program is distributed in the hope that it will be useful, but 13fe2ac8d7Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 14fe2ac8d7Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15fe2ac8d7Smrg# General Public License for more details. 169027f4a0Smrg# 179027f4a0Smrg# You should have received a copy of the GNU General Public License 18fe2ac8d7Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 199027f4a0Smrg# 209027f4a0Smrg# As a special exception to the GNU General Public License, if you 219027f4a0Smrg# distribute this file as part of a program that contains a 229027f4a0Smrg# configuration script generated by Autoconf, you may include it under 23fe2ac8d7Smrg# the same distribution terms that you use for the rest of that 24fe2ac8d7Smrg# program. This Exception is an additional permission under section 7 25fe2ac8d7Smrg# of the GNU General Public License, version 3 ("GPLv3"). 269027f4a0Smrg 279027f4a0Smrg 28fe2ac8d7Smrg# Please send patches with a ChangeLog entry to config-patches@gnu.org. 299027f4a0Smrg# 309027f4a0Smrg# Configuration subroutine to validate and canonicalize a configuration type. 319027f4a0Smrg# Supply the specified configuration type as an argument. 329027f4a0Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 339027f4a0Smrg# Otherwise, we print the canonical config type on stdout and succeed. 349027f4a0Smrg 353a72f200Smrg# You can get the latest version of this script from: 363a72f200Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 373a72f200Smrg 389027f4a0Smrg# This file is supposed to be the same for all GNU packages 399027f4a0Smrg# and recognize all the CPU types, system types and aliases 409027f4a0Smrg# that are meaningful with *any* GNU software. 419027f4a0Smrg# Each package is responsible for reporting which valid configurations 429027f4a0Smrg# it does not support. The user should be able to distinguish 439027f4a0Smrg# a failure to support a valid configuration from a meaningless 449027f4a0Smrg# configuration. 459027f4a0Smrg 469027f4a0Smrg# The goal of this file is to map all the various variations of a given 479027f4a0Smrg# machine specification into a single specification in the form: 489027f4a0Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 499027f4a0Smrg# or in some cases, the newer four-part form: 509027f4a0Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 519027f4a0Smrg# It is wrong to echo any other type of specification. 529027f4a0Smrg 539027f4a0Smrgme=`echo "$0" | sed -e 's,.*/,,'` 549027f4a0Smrg 559027f4a0Smrgusage="\ 569027f4a0SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 579027f4a0Smrg $0 [OPTION] ALIAS 589027f4a0Smrg 599027f4a0SmrgCanonicalize a configuration name. 609027f4a0Smrg 619027f4a0SmrgOperation modes: 629027f4a0Smrg -h, --help print this help, then exit 639027f4a0Smrg -t, --time-stamp print date of last modification, then exit 649027f4a0Smrg -v, --version print version number, then exit 659027f4a0Smrg 669027f4a0SmrgReport bugs and patches to <config-patches@gnu.org>." 679027f4a0Smrg 689027f4a0Smrgversion="\ 699027f4a0SmrgGNU config.sub ($timestamp) 709027f4a0Smrg 71fe2ac8d7SmrgCopyright 1992-2013 Free Software Foundation, Inc. 729027f4a0Smrg 739027f4a0SmrgThis is free software; see the source for copying conditions. There is NO 749027f4a0Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 759027f4a0Smrg 769027f4a0Smrghelp=" 779027f4a0SmrgTry \`$me --help' for more information." 789027f4a0Smrg 799027f4a0Smrg# Parse command line 809027f4a0Smrgwhile test $# -gt 0 ; do 819027f4a0Smrg case $1 in 829027f4a0Smrg --time-stamp | --time* | -t ) 839027f4a0Smrg echo "$timestamp" ; exit ;; 849027f4a0Smrg --version | -v ) 859027f4a0Smrg echo "$version" ; exit ;; 869027f4a0Smrg --help | --h* | -h ) 879027f4a0Smrg echo "$usage"; exit ;; 889027f4a0Smrg -- ) # Stop option processing 899027f4a0Smrg shift; break ;; 909027f4a0Smrg - ) # Use stdin as input. 919027f4a0Smrg break ;; 929027f4a0Smrg -* ) 939027f4a0Smrg echo "$me: invalid option $1$help" 949027f4a0Smrg exit 1 ;; 959027f4a0Smrg 969027f4a0Smrg *local*) 979027f4a0Smrg # First pass through any local machine types. 989027f4a0Smrg echo $1 999027f4a0Smrg exit ;; 1009027f4a0Smrg 1019027f4a0Smrg * ) 1029027f4a0Smrg break ;; 1039027f4a0Smrg esac 1049027f4a0Smrgdone 1059027f4a0Smrg 1069027f4a0Smrgcase $# in 1079027f4a0Smrg 0) echo "$me: missing argument$help" >&2 1089027f4a0Smrg exit 1;; 1099027f4a0Smrg 1) ;; 1109027f4a0Smrg *) echo "$me: too many arguments$help" >&2 1119027f4a0Smrg exit 1;; 1129027f4a0Smrgesac 1139027f4a0Smrg 1149027f4a0Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1159027f4a0Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1169027f4a0Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1179027f4a0Smrgcase $maybe_os in 1183a72f200Smrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 119fe2ac8d7Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 1203a72f200Smrg knetbsd*-gnu* | netbsd*-gnu* | \ 1213a72f200Smrg kopensolaris*-gnu* | \ 1229027f4a0Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1239027f4a0Smrg os=-$maybe_os 1249027f4a0Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1259027f4a0Smrg ;; 126fe2ac8d7Smrg android-linux) 127fe2ac8d7Smrg os=-linux-android 128fe2ac8d7Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 129fe2ac8d7Smrg ;; 1309027f4a0Smrg *) 1319027f4a0Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1329027f4a0Smrg if [ $basic_machine != $1 ] 1339027f4a0Smrg then os=`echo $1 | sed 's/.*-/-/'` 1349027f4a0Smrg else os=; fi 1359027f4a0Smrg ;; 1369027f4a0Smrgesac 1379027f4a0Smrg 1389027f4a0Smrg### Let's recognize common machines as not being operating systems so 1399027f4a0Smrg### that things like config.sub decstation-3100 work. We also 1409027f4a0Smrg### recognize some manufacturers as not being operating systems, so we 1419027f4a0Smrg### can provide default operating systems below. 1429027f4a0Smrgcase $os in 1439027f4a0Smrg -sun*os*) 1449027f4a0Smrg # Prevent following clause from handling this invalid input. 1459027f4a0Smrg ;; 1469027f4a0Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1479027f4a0Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1489027f4a0Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1499027f4a0Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1509027f4a0Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1519027f4a0Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 152fe2ac8d7Smrg -apple | -axis | -knuth | -cray | -microblaze*) 1539027f4a0Smrg os= 1549027f4a0Smrg basic_machine=$1 1559027f4a0Smrg ;; 156fe2ac8d7Smrg -bluegene*) 157fe2ac8d7Smrg os=-cnk 1583a72f200Smrg ;; 1599027f4a0Smrg -sim | -cisco | -oki | -wec | -winbond) 1609027f4a0Smrg os= 1619027f4a0Smrg basic_machine=$1 1629027f4a0Smrg ;; 1639027f4a0Smrg -scout) 1649027f4a0Smrg ;; 1659027f4a0Smrg -wrs) 1669027f4a0Smrg os=-vxworks 1679027f4a0Smrg basic_machine=$1 1689027f4a0Smrg ;; 1699027f4a0Smrg -chorusos*) 1709027f4a0Smrg os=-chorusos 1719027f4a0Smrg basic_machine=$1 1729027f4a0Smrg ;; 173fe2ac8d7Smrg -chorusrdb) 174fe2ac8d7Smrg os=-chorusrdb 1759027f4a0Smrg basic_machine=$1 176fe2ac8d7Smrg ;; 1779027f4a0Smrg -hiux*) 1789027f4a0Smrg os=-hiuxwe2 1799027f4a0Smrg ;; 1809027f4a0Smrg -sco6) 1819027f4a0Smrg os=-sco5v6 1829027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1839027f4a0Smrg ;; 1849027f4a0Smrg -sco5) 1859027f4a0Smrg os=-sco3.2v5 1869027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1879027f4a0Smrg ;; 1889027f4a0Smrg -sco4) 1899027f4a0Smrg os=-sco3.2v4 1909027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1919027f4a0Smrg ;; 1929027f4a0Smrg -sco3.2.[4-9]*) 1939027f4a0Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1949027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1959027f4a0Smrg ;; 1969027f4a0Smrg -sco3.2v[4-9]*) 1979027f4a0Smrg # Don't forget version if it is 3.2v4 or newer. 1989027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1999027f4a0Smrg ;; 2009027f4a0Smrg -sco5v6*) 2019027f4a0Smrg # Don't forget version if it is 3.2v4 or newer. 2029027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2039027f4a0Smrg ;; 2049027f4a0Smrg -sco*) 2059027f4a0Smrg os=-sco3.2v2 2069027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2079027f4a0Smrg ;; 2089027f4a0Smrg -udk*) 2099027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2109027f4a0Smrg ;; 2119027f4a0Smrg -isc) 2129027f4a0Smrg os=-isc2.2 2139027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2149027f4a0Smrg ;; 2159027f4a0Smrg -clix*) 2169027f4a0Smrg basic_machine=clipper-intergraph 2179027f4a0Smrg ;; 2189027f4a0Smrg -isc*) 2199027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2209027f4a0Smrg ;; 221fe2ac8d7Smrg -lynx*178) 222fe2ac8d7Smrg os=-lynxos178 223fe2ac8d7Smrg ;; 224fe2ac8d7Smrg -lynx*5) 225fe2ac8d7Smrg os=-lynxos5 226fe2ac8d7Smrg ;; 2279027f4a0Smrg -lynx*) 2289027f4a0Smrg os=-lynxos 2299027f4a0Smrg ;; 2309027f4a0Smrg -ptx*) 2319027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2329027f4a0Smrg ;; 2339027f4a0Smrg -windowsnt*) 2349027f4a0Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2359027f4a0Smrg ;; 2369027f4a0Smrg -psos*) 2379027f4a0Smrg os=-psos 2389027f4a0Smrg ;; 2399027f4a0Smrg -mint | -mint[0-9]*) 2409027f4a0Smrg basic_machine=m68k-atari 2419027f4a0Smrg os=-mint 2429027f4a0Smrg ;; 2439027f4a0Smrgesac 2449027f4a0Smrg 2459027f4a0Smrg# Decode aliases for certain CPU-COMPANY combinations. 2469027f4a0Smrgcase $basic_machine in 2479027f4a0Smrg # Recognize the basic CPU types without company name. 2489027f4a0Smrg # Some are omitted here because they have special meanings below. 2499027f4a0Smrg 1750a | 580 \ 2509027f4a0Smrg | a29k \ 251fe2ac8d7Smrg | aarch64 | aarch64_be \ 2529027f4a0Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2539027f4a0Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2549027f4a0Smrg | am33_2.0 \ 255fe2ac8d7Smrg | arc | arceb \ 256fe2ac8d7Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 257fe2ac8d7Smrg | avr | avr32 \ 258fe2ac8d7Smrg | be32 | be64 \ 2599027f4a0Smrg | bfin \ 2609027f4a0Smrg | c4x | clipper \ 2619027f4a0Smrg | d10v | d30v | dlx | dsp16xx \ 262fe2ac8d7Smrg | epiphany \ 2639027f4a0Smrg | fido | fr30 | frv \ 2649027f4a0Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 265fe2ac8d7Smrg | hexagon \ 2669027f4a0Smrg | i370 | i860 | i960 | ia64 \ 2679027f4a0Smrg | ip2k | iq2000 \ 268fe2ac8d7Smrg | le32 | le64 \ 2693a72f200Smrg | lm32 \ 2709027f4a0Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 271fe2ac8d7Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 2729027f4a0Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2739027f4a0Smrg | mips16 \ 2749027f4a0Smrg | mips64 | mips64el \ 2753a72f200Smrg | mips64octeon | mips64octeonel \ 2769027f4a0Smrg | mips64orion | mips64orionel \ 2773a72f200Smrg | mips64r5900 | mips64r5900el \ 2783a72f200Smrg | mips64vr | mips64vrel \ 2799027f4a0Smrg | mips64vr4100 | mips64vr4100el \ 2809027f4a0Smrg | mips64vr4300 | mips64vr4300el \ 2819027f4a0Smrg | mips64vr5000 | mips64vr5000el \ 2829027f4a0Smrg | mips64vr5900 | mips64vr5900el \ 2839027f4a0Smrg | mipsisa32 | mipsisa32el \ 2849027f4a0Smrg | mipsisa32r2 | mipsisa32r2el \ 2859027f4a0Smrg | mipsisa64 | mipsisa64el \ 2869027f4a0Smrg | mipsisa64r2 | mipsisa64r2el \ 2879027f4a0Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2889027f4a0Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 289fe2ac8d7Smrg | mipsr5900 | mipsr5900el \ 2909027f4a0Smrg | mipstx39 | mipstx39el \ 2919027f4a0Smrg | mn10200 | mn10300 \ 2923a72f200Smrg | moxie \ 2939027f4a0Smrg | mt \ 2949027f4a0Smrg | msp430 \ 2953a72f200Smrg | nds32 | nds32le | nds32be \ 296fe2ac8d7Smrg | nios | nios2 | nios2eb | nios2el \ 2979027f4a0Smrg | ns16k | ns32k \ 298fe2ac8d7Smrg | open8 \ 299fe2ac8d7Smrg | or1k | or32 \ 3009027f4a0Smrg | pdp10 | pdp11 | pj | pjl \ 301fe2ac8d7Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3029027f4a0Smrg | pyramid \ 303fe2ac8d7Smrg | rl78 | rx \ 3049027f4a0Smrg | score \ 3053a72f200Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3069027f4a0Smrg | sh64 | sh64le \ 3079027f4a0Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3089027f4a0Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 309fe2ac8d7Smrg | spu \ 310fe2ac8d7Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3113a72f200Smrg | ubicom32 \ 312fe2ac8d7Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 3139027f4a0Smrg | we32k \ 314fe2ac8d7Smrg | x86 | xc16x | xstormy16 | xtensa \ 3153a72f200Smrg | z8k | z80) 3169027f4a0Smrg basic_machine=$basic_machine-unknown 3179027f4a0Smrg ;; 3183a72f200Smrg c54x) 3193a72f200Smrg basic_machine=tic54x-unknown 3203a72f200Smrg ;; 3213a72f200Smrg c55x) 3223a72f200Smrg basic_machine=tic55x-unknown 3233a72f200Smrg ;; 3243a72f200Smrg c6x) 3253a72f200Smrg basic_machine=tic6x-unknown 3263a72f200Smrg ;; 327fe2ac8d7Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) 3289027f4a0Smrg basic_machine=$basic_machine-unknown 3299027f4a0Smrg os=-none 3309027f4a0Smrg ;; 3319027f4a0Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3329027f4a0Smrg ;; 3339027f4a0Smrg ms1) 3349027f4a0Smrg basic_machine=mt-unknown 3359027f4a0Smrg ;; 3369027f4a0Smrg 337fe2ac8d7Smrg strongarm | thumb | xscale) 338fe2ac8d7Smrg basic_machine=arm-unknown 339fe2ac8d7Smrg ;; 340fe2ac8d7Smrg xgate) 341fe2ac8d7Smrg basic_machine=$basic_machine-unknown 342fe2ac8d7Smrg os=-none 343fe2ac8d7Smrg ;; 344fe2ac8d7Smrg xscaleeb) 345fe2ac8d7Smrg basic_machine=armeb-unknown 346fe2ac8d7Smrg ;; 347fe2ac8d7Smrg 348fe2ac8d7Smrg xscaleel) 349fe2ac8d7Smrg basic_machine=armel-unknown 350fe2ac8d7Smrg ;; 351fe2ac8d7Smrg 3529027f4a0Smrg # We use `pc' rather than `unknown' 3539027f4a0Smrg # because (1) that's what they normally are, and 3549027f4a0Smrg # (2) the word "unknown" tends to confuse beginning users. 3559027f4a0Smrg i*86 | x86_64) 3569027f4a0Smrg basic_machine=$basic_machine-pc 3579027f4a0Smrg ;; 3589027f4a0Smrg # Object if more than one company name word. 3599027f4a0Smrg *-*-*) 3609027f4a0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3619027f4a0Smrg exit 1 3629027f4a0Smrg ;; 3639027f4a0Smrg # Recognize the basic CPU types with company name. 3649027f4a0Smrg 580-* \ 3659027f4a0Smrg | a29k-* \ 366fe2ac8d7Smrg | aarch64-* | aarch64_be-* \ 3679027f4a0Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3689027f4a0Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 369fe2ac8d7Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 3709027f4a0Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3719027f4a0Smrg | avr-* | avr32-* \ 372fe2ac8d7Smrg | be32-* | be64-* \ 3739027f4a0Smrg | bfin-* | bs2000-* \ 3743a72f200Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 3759027f4a0Smrg | clipper-* | craynv-* | cydra-* \ 3769027f4a0Smrg | d10v-* | d30v-* | dlx-* \ 3779027f4a0Smrg | elxsi-* \ 3789027f4a0Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3799027f4a0Smrg | h8300-* | h8500-* \ 3809027f4a0Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 381fe2ac8d7Smrg | hexagon-* \ 3829027f4a0Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3839027f4a0Smrg | ip2k-* | iq2000-* \ 384fe2ac8d7Smrg | le32-* | le64-* \ 3853a72f200Smrg | lm32-* \ 3869027f4a0Smrg | m32c-* | m32r-* | m32rle-* \ 3879027f4a0Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 388fe2ac8d7Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 389fe2ac8d7Smrg | microblaze-* | microblazeel-* \ 3909027f4a0Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3919027f4a0Smrg | mips16-* \ 3929027f4a0Smrg | mips64-* | mips64el-* \ 3933a72f200Smrg | mips64octeon-* | mips64octeonel-* \ 3949027f4a0Smrg | mips64orion-* | mips64orionel-* \ 3953a72f200Smrg | mips64r5900-* | mips64r5900el-* \ 3963a72f200Smrg | mips64vr-* | mips64vrel-* \ 3979027f4a0Smrg | mips64vr4100-* | mips64vr4100el-* \ 3989027f4a0Smrg | mips64vr4300-* | mips64vr4300el-* \ 3999027f4a0Smrg | mips64vr5000-* | mips64vr5000el-* \ 4009027f4a0Smrg | mips64vr5900-* | mips64vr5900el-* \ 4019027f4a0Smrg | mipsisa32-* | mipsisa32el-* \ 4029027f4a0Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 4039027f4a0Smrg | mipsisa64-* | mipsisa64el-* \ 4049027f4a0Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 4059027f4a0Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 4069027f4a0Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 407fe2ac8d7Smrg | mipsr5900-* | mipsr5900el-* \ 4089027f4a0Smrg | mipstx39-* | mipstx39el-* \ 4099027f4a0Smrg | mmix-* \ 4109027f4a0Smrg | mt-* \ 4119027f4a0Smrg | msp430-* \ 4123a72f200Smrg | nds32-* | nds32le-* | nds32be-* \ 413fe2ac8d7Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 4149027f4a0Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 415fe2ac8d7Smrg | open8-* \ 4169027f4a0Smrg | orion-* \ 4179027f4a0Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 418fe2ac8d7Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4199027f4a0Smrg | pyramid-* \ 420fe2ac8d7Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 4213a72f200Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4229027f4a0Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4239027f4a0Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4249027f4a0Smrg | sparclite-* \ 425fe2ac8d7Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 426fe2ac8d7Smrg | tahoe-* \ 4279027f4a0Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 428fe2ac8d7Smrg | tile*-* \ 4299027f4a0Smrg | tron-* \ 4303a72f200Smrg | ubicom32-* \ 431fe2ac8d7Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 432fe2ac8d7Smrg | vax-* \ 4339027f4a0Smrg | we32k-* \ 434fe2ac8d7Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4353a72f200Smrg | xstormy16-* | xtensa*-* \ 4369027f4a0Smrg | ymp-* \ 4373a72f200Smrg | z8k-* | z80-*) 4383a72f200Smrg ;; 4393a72f200Smrg # Recognize the basic CPU types without company name, with glob match. 4403a72f200Smrg xtensa*) 4413a72f200Smrg basic_machine=$basic_machine-unknown 4429027f4a0Smrg ;; 4439027f4a0Smrg # Recognize the various machine names and aliases which stand 4449027f4a0Smrg # for a CPU type and a company and sometimes even an OS. 4459027f4a0Smrg 386bsd) 4469027f4a0Smrg basic_machine=i386-unknown 4479027f4a0Smrg os=-bsd 4489027f4a0Smrg ;; 4499027f4a0Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4509027f4a0Smrg basic_machine=m68000-att 4519027f4a0Smrg ;; 4529027f4a0Smrg 3b*) 4539027f4a0Smrg basic_machine=we32k-att 4549027f4a0Smrg ;; 4559027f4a0Smrg a29khif) 4569027f4a0Smrg basic_machine=a29k-amd 4579027f4a0Smrg os=-udi 4589027f4a0Smrg ;; 459fe2ac8d7Smrg abacus) 4609027f4a0Smrg basic_machine=abacus-unknown 4619027f4a0Smrg ;; 4629027f4a0Smrg adobe68k) 4639027f4a0Smrg basic_machine=m68010-adobe 4649027f4a0Smrg os=-scout 4659027f4a0Smrg ;; 4669027f4a0Smrg alliant | fx80) 4679027f4a0Smrg basic_machine=fx80-alliant 4689027f4a0Smrg ;; 4699027f4a0Smrg altos | altos3068) 4709027f4a0Smrg basic_machine=m68k-altos 4719027f4a0Smrg ;; 4729027f4a0Smrg am29k) 4739027f4a0Smrg basic_machine=a29k-none 4749027f4a0Smrg os=-bsd 4759027f4a0Smrg ;; 4769027f4a0Smrg amd64) 4779027f4a0Smrg basic_machine=x86_64-pc 4789027f4a0Smrg ;; 4799027f4a0Smrg amd64-*) 4809027f4a0Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4819027f4a0Smrg ;; 4829027f4a0Smrg amdahl) 4839027f4a0Smrg basic_machine=580-amdahl 4849027f4a0Smrg os=-sysv 4859027f4a0Smrg ;; 4869027f4a0Smrg amiga | amiga-*) 4879027f4a0Smrg basic_machine=m68k-unknown 4889027f4a0Smrg ;; 4899027f4a0Smrg amigaos | amigados) 4909027f4a0Smrg basic_machine=m68k-unknown 4919027f4a0Smrg os=-amigaos 4929027f4a0Smrg ;; 4939027f4a0Smrg amigaunix | amix) 4949027f4a0Smrg basic_machine=m68k-unknown 4959027f4a0Smrg os=-sysv4 4969027f4a0Smrg ;; 4979027f4a0Smrg apollo68) 4989027f4a0Smrg basic_machine=m68k-apollo 4999027f4a0Smrg os=-sysv 5009027f4a0Smrg ;; 5019027f4a0Smrg apollo68bsd) 5029027f4a0Smrg basic_machine=m68k-apollo 5039027f4a0Smrg os=-bsd 5049027f4a0Smrg ;; 5053a72f200Smrg aros) 5063a72f200Smrg basic_machine=i386-pc 5073a72f200Smrg os=-aros 5083a72f200Smrg ;; 5099027f4a0Smrg aux) 5109027f4a0Smrg basic_machine=m68k-apple 5119027f4a0Smrg os=-aux 5129027f4a0Smrg ;; 5139027f4a0Smrg balance) 5149027f4a0Smrg basic_machine=ns32k-sequent 5159027f4a0Smrg os=-dynix 5169027f4a0Smrg ;; 5173a72f200Smrg blackfin) 5183a72f200Smrg basic_machine=bfin-unknown 5193a72f200Smrg os=-linux 5203a72f200Smrg ;; 5213a72f200Smrg blackfin-*) 5223a72f200Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5233a72f200Smrg os=-linux 5243a72f200Smrg ;; 5253a72f200Smrg bluegene*) 5263a72f200Smrg basic_machine=powerpc-ibm 5273a72f200Smrg os=-cnk 5283a72f200Smrg ;; 5293a72f200Smrg c54x-*) 5303a72f200Smrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 5313a72f200Smrg ;; 5323a72f200Smrg c55x-*) 5333a72f200Smrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 5343a72f200Smrg ;; 5353a72f200Smrg c6x-*) 5363a72f200Smrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 5373a72f200Smrg ;; 5389027f4a0Smrg c90) 5399027f4a0Smrg basic_machine=c90-cray 5409027f4a0Smrg os=-unicos 5419027f4a0Smrg ;; 542fe2ac8d7Smrg cegcc) 5433a72f200Smrg basic_machine=arm-unknown 5443a72f200Smrg os=-cegcc 5453a72f200Smrg ;; 5469027f4a0Smrg convex-c1) 5479027f4a0Smrg basic_machine=c1-convex 5489027f4a0Smrg os=-bsd 5499027f4a0Smrg ;; 5509027f4a0Smrg convex-c2) 5519027f4a0Smrg basic_machine=c2-convex 5529027f4a0Smrg os=-bsd 5539027f4a0Smrg ;; 5549027f4a0Smrg convex-c32) 5559027f4a0Smrg basic_machine=c32-convex 5569027f4a0Smrg os=-bsd 5579027f4a0Smrg ;; 5589027f4a0Smrg convex-c34) 5599027f4a0Smrg basic_machine=c34-convex 5609027f4a0Smrg os=-bsd 5619027f4a0Smrg ;; 5629027f4a0Smrg convex-c38) 5639027f4a0Smrg basic_machine=c38-convex 5649027f4a0Smrg os=-bsd 5659027f4a0Smrg ;; 5669027f4a0Smrg cray | j90) 5679027f4a0Smrg basic_machine=j90-cray 5689027f4a0Smrg os=-unicos 5699027f4a0Smrg ;; 5709027f4a0Smrg craynv) 5719027f4a0Smrg basic_machine=craynv-cray 5729027f4a0Smrg os=-unicosmp 5739027f4a0Smrg ;; 574fe2ac8d7Smrg cr16 | cr16-*) 5753a72f200Smrg basic_machine=cr16-unknown 5769027f4a0Smrg os=-elf 5779027f4a0Smrg ;; 5789027f4a0Smrg crds | unos) 5799027f4a0Smrg basic_machine=m68k-crds 5809027f4a0Smrg ;; 5819027f4a0Smrg crisv32 | crisv32-* | etraxfs*) 5829027f4a0Smrg basic_machine=crisv32-axis 5839027f4a0Smrg ;; 5849027f4a0Smrg cris | cris-* | etrax*) 5859027f4a0Smrg basic_machine=cris-axis 5869027f4a0Smrg ;; 5879027f4a0Smrg crx) 5889027f4a0Smrg basic_machine=crx-unknown 5899027f4a0Smrg os=-elf 5909027f4a0Smrg ;; 5919027f4a0Smrg da30 | da30-*) 5929027f4a0Smrg basic_machine=m68k-da30 5939027f4a0Smrg ;; 5949027f4a0Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 5959027f4a0Smrg basic_machine=mips-dec 5969027f4a0Smrg ;; 5979027f4a0Smrg decsystem10* | dec10*) 5989027f4a0Smrg basic_machine=pdp10-dec 5999027f4a0Smrg os=-tops10 6009027f4a0Smrg ;; 6019027f4a0Smrg decsystem20* | dec20*) 6029027f4a0Smrg basic_machine=pdp10-dec 6039027f4a0Smrg os=-tops20 6049027f4a0Smrg ;; 6059027f4a0Smrg delta | 3300 | motorola-3300 | motorola-delta \ 6069027f4a0Smrg | 3300-motorola | delta-motorola) 6079027f4a0Smrg basic_machine=m68k-motorola 6089027f4a0Smrg ;; 6099027f4a0Smrg delta88) 6109027f4a0Smrg basic_machine=m88k-motorola 6119027f4a0Smrg os=-sysv3 6129027f4a0Smrg ;; 6133a72f200Smrg dicos) 6143a72f200Smrg basic_machine=i686-pc 6153a72f200Smrg os=-dicos 6163a72f200Smrg ;; 6179027f4a0Smrg djgpp) 6189027f4a0Smrg basic_machine=i586-pc 6199027f4a0Smrg os=-msdosdjgpp 6209027f4a0Smrg ;; 6219027f4a0Smrg dpx20 | dpx20-*) 6229027f4a0Smrg basic_machine=rs6000-bull 6239027f4a0Smrg os=-bosx 6249027f4a0Smrg ;; 6259027f4a0Smrg dpx2* | dpx2*-bull) 6269027f4a0Smrg basic_machine=m68k-bull 6279027f4a0Smrg os=-sysv3 6289027f4a0Smrg ;; 6299027f4a0Smrg ebmon29k) 6309027f4a0Smrg basic_machine=a29k-amd 6319027f4a0Smrg os=-ebmon 6329027f4a0Smrg ;; 6339027f4a0Smrg elxsi) 6349027f4a0Smrg basic_machine=elxsi-elxsi 6359027f4a0Smrg os=-bsd 6369027f4a0Smrg ;; 6379027f4a0Smrg encore | umax | mmax) 6389027f4a0Smrg basic_machine=ns32k-encore 6399027f4a0Smrg ;; 6409027f4a0Smrg es1800 | OSE68k | ose68k | ose | OSE) 6419027f4a0Smrg basic_machine=m68k-ericsson 6429027f4a0Smrg os=-ose 6439027f4a0Smrg ;; 6449027f4a0Smrg fx2800) 6459027f4a0Smrg basic_machine=i860-alliant 6469027f4a0Smrg ;; 6479027f4a0Smrg genix) 6489027f4a0Smrg basic_machine=ns32k-ns 6499027f4a0Smrg ;; 6509027f4a0Smrg gmicro) 6519027f4a0Smrg basic_machine=tron-gmicro 6529027f4a0Smrg os=-sysv 6539027f4a0Smrg ;; 6549027f4a0Smrg go32) 6559027f4a0Smrg basic_machine=i386-pc 6569027f4a0Smrg os=-go32 6579027f4a0Smrg ;; 6589027f4a0Smrg h3050r* | hiux*) 6599027f4a0Smrg basic_machine=hppa1.1-hitachi 6609027f4a0Smrg os=-hiuxwe2 6619027f4a0Smrg ;; 6629027f4a0Smrg h8300hms) 6639027f4a0Smrg basic_machine=h8300-hitachi 6649027f4a0Smrg os=-hms 6659027f4a0Smrg ;; 6669027f4a0Smrg h8300xray) 6679027f4a0Smrg basic_machine=h8300-hitachi 6689027f4a0Smrg os=-xray 6699027f4a0Smrg ;; 6709027f4a0Smrg h8500hms) 6719027f4a0Smrg basic_machine=h8500-hitachi 6729027f4a0Smrg os=-hms 6739027f4a0Smrg ;; 6749027f4a0Smrg harris) 6759027f4a0Smrg basic_machine=m88k-harris 6769027f4a0Smrg os=-sysv3 6779027f4a0Smrg ;; 6789027f4a0Smrg hp300-*) 6799027f4a0Smrg basic_machine=m68k-hp 6809027f4a0Smrg ;; 6819027f4a0Smrg hp300bsd) 6829027f4a0Smrg basic_machine=m68k-hp 6839027f4a0Smrg os=-bsd 6849027f4a0Smrg ;; 6859027f4a0Smrg hp300hpux) 6869027f4a0Smrg basic_machine=m68k-hp 6879027f4a0Smrg os=-hpux 6889027f4a0Smrg ;; 6899027f4a0Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 6909027f4a0Smrg basic_machine=hppa1.0-hp 6919027f4a0Smrg ;; 6929027f4a0Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 6939027f4a0Smrg basic_machine=m68000-hp 6949027f4a0Smrg ;; 6959027f4a0Smrg hp9k3[2-9][0-9]) 6969027f4a0Smrg basic_machine=m68k-hp 6979027f4a0Smrg ;; 6989027f4a0Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 6999027f4a0Smrg basic_machine=hppa1.0-hp 7009027f4a0Smrg ;; 7019027f4a0Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 7029027f4a0Smrg basic_machine=hppa1.1-hp 7039027f4a0Smrg ;; 7049027f4a0Smrg hp9k78[0-9] | hp78[0-9]) 7059027f4a0Smrg # FIXME: really hppa2.0-hp 7069027f4a0Smrg basic_machine=hppa1.1-hp 7079027f4a0Smrg ;; 7089027f4a0Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7099027f4a0Smrg # FIXME: really hppa2.0-hp 7109027f4a0Smrg basic_machine=hppa1.1-hp 7119027f4a0Smrg ;; 7129027f4a0Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7139027f4a0Smrg basic_machine=hppa1.1-hp 7149027f4a0Smrg ;; 7159027f4a0Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7169027f4a0Smrg basic_machine=hppa1.0-hp 7179027f4a0Smrg ;; 7189027f4a0Smrg hppa-next) 7199027f4a0Smrg os=-nextstep3 7209027f4a0Smrg ;; 7219027f4a0Smrg hppaosf) 7229027f4a0Smrg basic_machine=hppa1.1-hp 7239027f4a0Smrg os=-osf 7249027f4a0Smrg ;; 7259027f4a0Smrg hppro) 7269027f4a0Smrg basic_machine=hppa1.1-hp 7279027f4a0Smrg os=-proelf 7289027f4a0Smrg ;; 7299027f4a0Smrg i370-ibm* | ibm*) 7309027f4a0Smrg basic_machine=i370-ibm 7319027f4a0Smrg ;; 7329027f4a0Smrg i*86v32) 7339027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7349027f4a0Smrg os=-sysv32 7359027f4a0Smrg ;; 7369027f4a0Smrg i*86v4*) 7379027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7389027f4a0Smrg os=-sysv4 7399027f4a0Smrg ;; 7409027f4a0Smrg i*86v) 7419027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7429027f4a0Smrg os=-sysv 7439027f4a0Smrg ;; 7449027f4a0Smrg i*86sol2) 7459027f4a0Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7469027f4a0Smrg os=-solaris2 7479027f4a0Smrg ;; 7489027f4a0Smrg i386mach) 7499027f4a0Smrg basic_machine=i386-mach 7509027f4a0Smrg os=-mach 7519027f4a0Smrg ;; 7529027f4a0Smrg i386-vsta | vsta) 7539027f4a0Smrg basic_machine=i386-unknown 7549027f4a0Smrg os=-vsta 7559027f4a0Smrg ;; 7569027f4a0Smrg iris | iris4d) 7579027f4a0Smrg basic_machine=mips-sgi 7589027f4a0Smrg case $os in 7599027f4a0Smrg -irix*) 7609027f4a0Smrg ;; 7619027f4a0Smrg *) 7629027f4a0Smrg os=-irix4 7639027f4a0Smrg ;; 7649027f4a0Smrg esac 7659027f4a0Smrg ;; 7669027f4a0Smrg isi68 | isi) 7679027f4a0Smrg basic_machine=m68k-isi 7689027f4a0Smrg os=-sysv 7699027f4a0Smrg ;; 7703a72f200Smrg m68knommu) 7713a72f200Smrg basic_machine=m68k-unknown 7723a72f200Smrg os=-linux 7733a72f200Smrg ;; 7743a72f200Smrg m68knommu-*) 7753a72f200Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7763a72f200Smrg os=-linux 7773a72f200Smrg ;; 7789027f4a0Smrg m88k-omron*) 7799027f4a0Smrg basic_machine=m88k-omron 7809027f4a0Smrg ;; 7819027f4a0Smrg magnum | m3230) 7829027f4a0Smrg basic_machine=mips-mips 7839027f4a0Smrg os=-sysv 7849027f4a0Smrg ;; 7859027f4a0Smrg merlin) 7869027f4a0Smrg basic_machine=ns32k-utek 7879027f4a0Smrg os=-sysv 7889027f4a0Smrg ;; 789fe2ac8d7Smrg microblaze*) 7903a72f200Smrg basic_machine=microblaze-xilinx 7913a72f200Smrg ;; 792fe2ac8d7Smrg mingw64) 793fe2ac8d7Smrg basic_machine=x86_64-pc 794fe2ac8d7Smrg os=-mingw64 795fe2ac8d7Smrg ;; 7969027f4a0Smrg mingw32) 7979027f4a0Smrg basic_machine=i386-pc 7989027f4a0Smrg os=-mingw32 7999027f4a0Smrg ;; 8003a72f200Smrg mingw32ce) 8013a72f200Smrg basic_machine=arm-unknown 8023a72f200Smrg os=-mingw32ce 8033a72f200Smrg ;; 8049027f4a0Smrg miniframe) 8059027f4a0Smrg basic_machine=m68000-convergent 8069027f4a0Smrg ;; 8079027f4a0Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8089027f4a0Smrg basic_machine=m68k-atari 8099027f4a0Smrg os=-mint 8109027f4a0Smrg ;; 8119027f4a0Smrg mips3*-*) 8129027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8139027f4a0Smrg ;; 8149027f4a0Smrg mips3*) 8159027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8169027f4a0Smrg ;; 8179027f4a0Smrg monitor) 8189027f4a0Smrg basic_machine=m68k-rom68k 8199027f4a0Smrg os=-coff 8209027f4a0Smrg ;; 8219027f4a0Smrg morphos) 8229027f4a0Smrg basic_machine=powerpc-unknown 8239027f4a0Smrg os=-morphos 8249027f4a0Smrg ;; 8259027f4a0Smrg msdos) 8269027f4a0Smrg basic_machine=i386-pc 8279027f4a0Smrg os=-msdos 8289027f4a0Smrg ;; 8299027f4a0Smrg ms1-*) 8309027f4a0Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8319027f4a0Smrg ;; 832fe2ac8d7Smrg msys) 833fe2ac8d7Smrg basic_machine=i386-pc 834fe2ac8d7Smrg os=-msys 835fe2ac8d7Smrg ;; 8369027f4a0Smrg mvs) 8379027f4a0Smrg basic_machine=i370-ibm 8389027f4a0Smrg os=-mvs 8399027f4a0Smrg ;; 840fe2ac8d7Smrg nacl) 841fe2ac8d7Smrg basic_machine=le32-unknown 842fe2ac8d7Smrg os=-nacl 843fe2ac8d7Smrg ;; 8449027f4a0Smrg ncr3000) 8459027f4a0Smrg basic_machine=i486-ncr 8469027f4a0Smrg os=-sysv4 8479027f4a0Smrg ;; 8489027f4a0Smrg netbsd386) 8499027f4a0Smrg basic_machine=i386-unknown 8509027f4a0Smrg os=-netbsd 8519027f4a0Smrg ;; 8529027f4a0Smrg netwinder) 8539027f4a0Smrg basic_machine=armv4l-rebel 8549027f4a0Smrg os=-linux 8559027f4a0Smrg ;; 8569027f4a0Smrg news | news700 | news800 | news900) 8579027f4a0Smrg basic_machine=m68k-sony 8589027f4a0Smrg os=-newsos 8599027f4a0Smrg ;; 8609027f4a0Smrg news1000) 8619027f4a0Smrg basic_machine=m68030-sony 8629027f4a0Smrg os=-newsos 8639027f4a0Smrg ;; 8649027f4a0Smrg news-3600 | risc-news) 8659027f4a0Smrg basic_machine=mips-sony 8669027f4a0Smrg os=-newsos 8679027f4a0Smrg ;; 8689027f4a0Smrg necv70) 8699027f4a0Smrg basic_machine=v70-nec 8709027f4a0Smrg os=-sysv 8719027f4a0Smrg ;; 8729027f4a0Smrg next | m*-next ) 8739027f4a0Smrg basic_machine=m68k-next 8749027f4a0Smrg case $os in 8759027f4a0Smrg -nextstep* ) 8769027f4a0Smrg ;; 8779027f4a0Smrg -ns2*) 8789027f4a0Smrg os=-nextstep2 8799027f4a0Smrg ;; 8809027f4a0Smrg *) 8819027f4a0Smrg os=-nextstep3 8829027f4a0Smrg ;; 8839027f4a0Smrg esac 8849027f4a0Smrg ;; 8859027f4a0Smrg nh3000) 8869027f4a0Smrg basic_machine=m68k-harris 8879027f4a0Smrg os=-cxux 8889027f4a0Smrg ;; 8899027f4a0Smrg nh[45]000) 8909027f4a0Smrg basic_machine=m88k-harris 8919027f4a0Smrg os=-cxux 8929027f4a0Smrg ;; 8939027f4a0Smrg nindy960) 8949027f4a0Smrg basic_machine=i960-intel 8959027f4a0Smrg os=-nindy 8969027f4a0Smrg ;; 8979027f4a0Smrg mon960) 8989027f4a0Smrg basic_machine=i960-intel 8999027f4a0Smrg os=-mon960 9009027f4a0Smrg ;; 9019027f4a0Smrg nonstopux) 9029027f4a0Smrg basic_machine=mips-compaq 9039027f4a0Smrg os=-nonstopux 9049027f4a0Smrg ;; 9059027f4a0Smrg np1) 9069027f4a0Smrg basic_machine=np1-gould 9079027f4a0Smrg ;; 908fe2ac8d7Smrg neo-tandem) 9093a72f200Smrg basic_machine=neo-tandem 9103a72f200Smrg ;; 911fe2ac8d7Smrg nse-tandem) 9123a72f200Smrg basic_machine=nse-tandem 9133a72f200Smrg ;; 9149027f4a0Smrg nsr-tandem) 9159027f4a0Smrg basic_machine=nsr-tandem 9169027f4a0Smrg ;; 9179027f4a0Smrg op50n-* | op60c-*) 9189027f4a0Smrg basic_machine=hppa1.1-oki 9199027f4a0Smrg os=-proelf 9209027f4a0Smrg ;; 9219027f4a0Smrg openrisc | openrisc-*) 9229027f4a0Smrg basic_machine=or32-unknown 9239027f4a0Smrg ;; 9249027f4a0Smrg os400) 9259027f4a0Smrg basic_machine=powerpc-ibm 9269027f4a0Smrg os=-os400 9279027f4a0Smrg ;; 9289027f4a0Smrg OSE68000 | ose68000) 9299027f4a0Smrg basic_machine=m68000-ericsson 9309027f4a0Smrg os=-ose 9319027f4a0Smrg ;; 9329027f4a0Smrg os68k) 9339027f4a0Smrg basic_machine=m68k-none 9349027f4a0Smrg os=-os68k 9359027f4a0Smrg ;; 9369027f4a0Smrg pa-hitachi) 9379027f4a0Smrg basic_machine=hppa1.1-hitachi 9389027f4a0Smrg os=-hiuxwe2 9399027f4a0Smrg ;; 9409027f4a0Smrg paragon) 9419027f4a0Smrg basic_machine=i860-intel 9429027f4a0Smrg os=-osf 9439027f4a0Smrg ;; 9443a72f200Smrg parisc) 9453a72f200Smrg basic_machine=hppa-unknown 9463a72f200Smrg os=-linux 9473a72f200Smrg ;; 9483a72f200Smrg parisc-*) 9493a72f200Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9503a72f200Smrg os=-linux 9513a72f200Smrg ;; 9529027f4a0Smrg pbd) 9539027f4a0Smrg basic_machine=sparc-tti 9549027f4a0Smrg ;; 9559027f4a0Smrg pbb) 9569027f4a0Smrg basic_machine=m68k-tti 9579027f4a0Smrg ;; 9589027f4a0Smrg pc532 | pc532-*) 9599027f4a0Smrg basic_machine=ns32k-pc532 9609027f4a0Smrg ;; 9619027f4a0Smrg pc98) 9629027f4a0Smrg basic_machine=i386-pc 9639027f4a0Smrg ;; 9649027f4a0Smrg pc98-*) 9659027f4a0Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9669027f4a0Smrg ;; 9679027f4a0Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9689027f4a0Smrg basic_machine=i586-pc 9699027f4a0Smrg ;; 9709027f4a0Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9719027f4a0Smrg basic_machine=i686-pc 9729027f4a0Smrg ;; 9739027f4a0Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9749027f4a0Smrg basic_machine=i686-pc 9759027f4a0Smrg ;; 9769027f4a0Smrg pentium4) 9779027f4a0Smrg basic_machine=i786-pc 9789027f4a0Smrg ;; 9799027f4a0Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9809027f4a0Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 9819027f4a0Smrg ;; 9829027f4a0Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 9839027f4a0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9849027f4a0Smrg ;; 9859027f4a0Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 9869027f4a0Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 9879027f4a0Smrg ;; 9889027f4a0Smrg pentium4-*) 9899027f4a0Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 9909027f4a0Smrg ;; 9919027f4a0Smrg pn) 9929027f4a0Smrg basic_machine=pn-gould 9939027f4a0Smrg ;; 9949027f4a0Smrg power) basic_machine=power-ibm 9959027f4a0Smrg ;; 996fe2ac8d7Smrg ppc | ppcbe) basic_machine=powerpc-unknown 9979027f4a0Smrg ;; 998fe2ac8d7Smrg ppc-* | ppcbe-*) 999fe2ac8d7Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 10009027f4a0Smrg ;; 10019027f4a0Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 10029027f4a0Smrg basic_machine=powerpcle-unknown 10039027f4a0Smrg ;; 10049027f4a0Smrg ppcle-* | powerpclittle-*) 10059027f4a0Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 10069027f4a0Smrg ;; 10079027f4a0Smrg ppc64) basic_machine=powerpc64-unknown 10089027f4a0Smrg ;; 10099027f4a0Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10109027f4a0Smrg ;; 10119027f4a0Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10129027f4a0Smrg basic_machine=powerpc64le-unknown 10139027f4a0Smrg ;; 10149027f4a0Smrg ppc64le-* | powerpc64little-*) 10159027f4a0Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10169027f4a0Smrg ;; 10179027f4a0Smrg ps2) 10189027f4a0Smrg basic_machine=i386-ibm 10199027f4a0Smrg ;; 10209027f4a0Smrg pw32) 10219027f4a0Smrg basic_machine=i586-unknown 10229027f4a0Smrg os=-pw32 10239027f4a0Smrg ;; 1024fe2ac8d7Smrg rdos | rdos64) 1025fe2ac8d7Smrg basic_machine=x86_64-pc 1026fe2ac8d7Smrg os=-rdos 1027fe2ac8d7Smrg ;; 1028fe2ac8d7Smrg rdos32) 10299027f4a0Smrg basic_machine=i386-pc 10309027f4a0Smrg os=-rdos 10319027f4a0Smrg ;; 10329027f4a0Smrg rom68k) 10339027f4a0Smrg basic_machine=m68k-rom68k 10349027f4a0Smrg os=-coff 10359027f4a0Smrg ;; 10369027f4a0Smrg rm[46]00) 10379027f4a0Smrg basic_machine=mips-siemens 10389027f4a0Smrg ;; 10399027f4a0Smrg rtpc | rtpc-*) 10409027f4a0Smrg basic_machine=romp-ibm 10419027f4a0Smrg ;; 10429027f4a0Smrg s390 | s390-*) 10439027f4a0Smrg basic_machine=s390-ibm 10449027f4a0Smrg ;; 10459027f4a0Smrg s390x | s390x-*) 10469027f4a0Smrg basic_machine=s390x-ibm 10479027f4a0Smrg ;; 10489027f4a0Smrg sa29200) 10499027f4a0Smrg basic_machine=a29k-amd 10509027f4a0Smrg os=-udi 10519027f4a0Smrg ;; 10529027f4a0Smrg sb1) 10539027f4a0Smrg basic_machine=mipsisa64sb1-unknown 10549027f4a0Smrg ;; 10559027f4a0Smrg sb1el) 10569027f4a0Smrg basic_machine=mipsisa64sb1el-unknown 10579027f4a0Smrg ;; 10589027f4a0Smrg sde) 10599027f4a0Smrg basic_machine=mipsisa32-sde 10609027f4a0Smrg os=-elf 10619027f4a0Smrg ;; 10629027f4a0Smrg sei) 10639027f4a0Smrg basic_machine=mips-sei 10649027f4a0Smrg os=-seiux 10659027f4a0Smrg ;; 10669027f4a0Smrg sequent) 10679027f4a0Smrg basic_machine=i386-sequent 10689027f4a0Smrg ;; 10699027f4a0Smrg sh) 10709027f4a0Smrg basic_machine=sh-hitachi 10719027f4a0Smrg os=-hms 10729027f4a0Smrg ;; 10739027f4a0Smrg sh5el) 10749027f4a0Smrg basic_machine=sh5le-unknown 10759027f4a0Smrg ;; 10769027f4a0Smrg sh64) 10779027f4a0Smrg basic_machine=sh64-unknown 10789027f4a0Smrg ;; 10799027f4a0Smrg sparclite-wrs | simso-wrs) 10809027f4a0Smrg basic_machine=sparclite-wrs 10819027f4a0Smrg os=-vxworks 10829027f4a0Smrg ;; 10839027f4a0Smrg sps7) 10849027f4a0Smrg basic_machine=m68k-bull 10859027f4a0Smrg os=-sysv2 10869027f4a0Smrg ;; 10879027f4a0Smrg spur) 10889027f4a0Smrg basic_machine=spur-unknown 10899027f4a0Smrg ;; 10909027f4a0Smrg st2000) 10919027f4a0Smrg basic_machine=m68k-tandem 10929027f4a0Smrg ;; 10939027f4a0Smrg stratus) 10949027f4a0Smrg basic_machine=i860-stratus 10959027f4a0Smrg os=-sysv4 10969027f4a0Smrg ;; 1097fe2ac8d7Smrg strongarm-* | thumb-*) 1098fe2ac8d7Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1099fe2ac8d7Smrg ;; 11009027f4a0Smrg sun2) 11019027f4a0Smrg basic_machine=m68000-sun 11029027f4a0Smrg ;; 11039027f4a0Smrg sun2os3) 11049027f4a0Smrg basic_machine=m68000-sun 11059027f4a0Smrg os=-sunos3 11069027f4a0Smrg ;; 11079027f4a0Smrg sun2os4) 11089027f4a0Smrg basic_machine=m68000-sun 11099027f4a0Smrg os=-sunos4 11109027f4a0Smrg ;; 11119027f4a0Smrg sun3os3) 11129027f4a0Smrg basic_machine=m68k-sun 11139027f4a0Smrg os=-sunos3 11149027f4a0Smrg ;; 11159027f4a0Smrg sun3os4) 11169027f4a0Smrg basic_machine=m68k-sun 11179027f4a0Smrg os=-sunos4 11189027f4a0Smrg ;; 11199027f4a0Smrg sun4os3) 11209027f4a0Smrg basic_machine=sparc-sun 11219027f4a0Smrg os=-sunos3 11229027f4a0Smrg ;; 11239027f4a0Smrg sun4os4) 11249027f4a0Smrg basic_machine=sparc-sun 11259027f4a0Smrg os=-sunos4 11269027f4a0Smrg ;; 11279027f4a0Smrg sun4sol2) 11289027f4a0Smrg basic_machine=sparc-sun 11299027f4a0Smrg os=-solaris2 11309027f4a0Smrg ;; 11319027f4a0Smrg sun3 | sun3-*) 11329027f4a0Smrg basic_machine=m68k-sun 11339027f4a0Smrg ;; 11349027f4a0Smrg sun4) 11359027f4a0Smrg basic_machine=sparc-sun 11369027f4a0Smrg ;; 11379027f4a0Smrg sun386 | sun386i | roadrunner) 11389027f4a0Smrg basic_machine=i386-sun 11399027f4a0Smrg ;; 11409027f4a0Smrg sv1) 11419027f4a0Smrg basic_machine=sv1-cray 11429027f4a0Smrg os=-unicos 11439027f4a0Smrg ;; 11449027f4a0Smrg symmetry) 11459027f4a0Smrg basic_machine=i386-sequent 11469027f4a0Smrg os=-dynix 11479027f4a0Smrg ;; 11489027f4a0Smrg t3e) 11499027f4a0Smrg basic_machine=alphaev5-cray 11509027f4a0Smrg os=-unicos 11519027f4a0Smrg ;; 11529027f4a0Smrg t90) 11539027f4a0Smrg basic_machine=t90-cray 11549027f4a0Smrg os=-unicos 11559027f4a0Smrg ;; 11563a72f200Smrg tile*) 1157fe2ac8d7Smrg basic_machine=$basic_machine-unknown 11583a72f200Smrg os=-linux-gnu 11599027f4a0Smrg ;; 11609027f4a0Smrg tx39) 11619027f4a0Smrg basic_machine=mipstx39-unknown 11629027f4a0Smrg ;; 11639027f4a0Smrg tx39el) 11649027f4a0Smrg basic_machine=mipstx39el-unknown 11659027f4a0Smrg ;; 11669027f4a0Smrg toad1) 11679027f4a0Smrg basic_machine=pdp10-xkl 11689027f4a0Smrg os=-tops20 11699027f4a0Smrg ;; 11709027f4a0Smrg tower | tower-32) 11719027f4a0Smrg basic_machine=m68k-ncr 11729027f4a0Smrg ;; 11739027f4a0Smrg tpf) 11749027f4a0Smrg basic_machine=s390x-ibm 11759027f4a0Smrg os=-tpf 11769027f4a0Smrg ;; 11779027f4a0Smrg udi29k) 11789027f4a0Smrg basic_machine=a29k-amd 11799027f4a0Smrg os=-udi 11809027f4a0Smrg ;; 11819027f4a0Smrg ultra3) 11829027f4a0Smrg basic_machine=a29k-nyu 11839027f4a0Smrg os=-sym1 11849027f4a0Smrg ;; 11859027f4a0Smrg v810 | necv810) 11869027f4a0Smrg basic_machine=v810-nec 11879027f4a0Smrg os=-none 11889027f4a0Smrg ;; 11899027f4a0Smrg vaxv) 11909027f4a0Smrg basic_machine=vax-dec 11919027f4a0Smrg os=-sysv 11929027f4a0Smrg ;; 11939027f4a0Smrg vms) 11949027f4a0Smrg basic_machine=vax-dec 11959027f4a0Smrg os=-vms 11969027f4a0Smrg ;; 11979027f4a0Smrg vpp*|vx|vx-*) 11989027f4a0Smrg basic_machine=f301-fujitsu 11999027f4a0Smrg ;; 12009027f4a0Smrg vxworks960) 12019027f4a0Smrg basic_machine=i960-wrs 12029027f4a0Smrg os=-vxworks 12039027f4a0Smrg ;; 12049027f4a0Smrg vxworks68) 12059027f4a0Smrg basic_machine=m68k-wrs 12069027f4a0Smrg os=-vxworks 12079027f4a0Smrg ;; 12089027f4a0Smrg vxworks29k) 12099027f4a0Smrg basic_machine=a29k-wrs 12109027f4a0Smrg os=-vxworks 12119027f4a0Smrg ;; 12129027f4a0Smrg w65*) 12139027f4a0Smrg basic_machine=w65-wdc 12149027f4a0Smrg os=-none 12159027f4a0Smrg ;; 12169027f4a0Smrg w89k-*) 12179027f4a0Smrg basic_machine=hppa1.1-winbond 12189027f4a0Smrg os=-proelf 12199027f4a0Smrg ;; 12209027f4a0Smrg xbox) 12219027f4a0Smrg basic_machine=i686-pc 12229027f4a0Smrg os=-mingw32 12239027f4a0Smrg ;; 12249027f4a0Smrg xps | xps100) 12259027f4a0Smrg basic_machine=xps100-honeywell 12269027f4a0Smrg ;; 1227fe2ac8d7Smrg xscale-* | xscalee[bl]-*) 1228fe2ac8d7Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1229fe2ac8d7Smrg ;; 12309027f4a0Smrg ymp) 12319027f4a0Smrg basic_machine=ymp-cray 12329027f4a0Smrg os=-unicos 12339027f4a0Smrg ;; 12349027f4a0Smrg z8k-*-coff) 12359027f4a0Smrg basic_machine=z8k-unknown 12369027f4a0Smrg os=-sim 12379027f4a0Smrg ;; 12383a72f200Smrg z80-*-coff) 12393a72f200Smrg basic_machine=z80-unknown 12403a72f200Smrg os=-sim 12413a72f200Smrg ;; 12429027f4a0Smrg none) 12439027f4a0Smrg basic_machine=none-none 12449027f4a0Smrg os=-none 12459027f4a0Smrg ;; 12469027f4a0Smrg 12479027f4a0Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12489027f4a0Smrg# some cases the only manufacturer, in others, it is the most popular. 12499027f4a0Smrg w89k) 12509027f4a0Smrg basic_machine=hppa1.1-winbond 12519027f4a0Smrg ;; 12529027f4a0Smrg op50n) 12539027f4a0Smrg basic_machine=hppa1.1-oki 12549027f4a0Smrg ;; 12559027f4a0Smrg op60c) 12569027f4a0Smrg basic_machine=hppa1.1-oki 12579027f4a0Smrg ;; 12589027f4a0Smrg romp) 12599027f4a0Smrg basic_machine=romp-ibm 12609027f4a0Smrg ;; 12619027f4a0Smrg mmix) 12629027f4a0Smrg basic_machine=mmix-knuth 12639027f4a0Smrg ;; 12649027f4a0Smrg rs6000) 12659027f4a0Smrg basic_machine=rs6000-ibm 12669027f4a0Smrg ;; 12679027f4a0Smrg vax) 12689027f4a0Smrg basic_machine=vax-dec 12699027f4a0Smrg ;; 12709027f4a0Smrg pdp10) 12719027f4a0Smrg # there are many clones, so DEC is not a safe bet 12729027f4a0Smrg basic_machine=pdp10-unknown 12739027f4a0Smrg ;; 12749027f4a0Smrg pdp11) 12759027f4a0Smrg basic_machine=pdp11-dec 12769027f4a0Smrg ;; 12779027f4a0Smrg we32k) 12789027f4a0Smrg basic_machine=we32k-att 12799027f4a0Smrg ;; 12803a72f200Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 12819027f4a0Smrg basic_machine=sh-unknown 12829027f4a0Smrg ;; 12839027f4a0Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 12849027f4a0Smrg basic_machine=sparc-sun 12859027f4a0Smrg ;; 12869027f4a0Smrg cydra) 12879027f4a0Smrg basic_machine=cydra-cydrome 12889027f4a0Smrg ;; 12899027f4a0Smrg orion) 12909027f4a0Smrg basic_machine=orion-highlevel 12919027f4a0Smrg ;; 12929027f4a0Smrg orion105) 12939027f4a0Smrg basic_machine=clipper-highlevel 12949027f4a0Smrg ;; 12959027f4a0Smrg mac | mpw | mac-mpw) 12969027f4a0Smrg basic_machine=m68k-apple 12979027f4a0Smrg ;; 12989027f4a0Smrg pmac | pmac-mpw) 12999027f4a0Smrg basic_machine=powerpc-apple 13009027f4a0Smrg ;; 13019027f4a0Smrg *-unknown) 13029027f4a0Smrg # Make sure to match an already-canonicalized machine name. 13039027f4a0Smrg ;; 13049027f4a0Smrg *) 13059027f4a0Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 13069027f4a0Smrg exit 1 13079027f4a0Smrg ;; 13089027f4a0Smrgesac 13099027f4a0Smrg 13109027f4a0Smrg# Here we canonicalize certain aliases for manufacturers. 13119027f4a0Smrgcase $basic_machine in 13129027f4a0Smrg *-digital*) 13139027f4a0Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13149027f4a0Smrg ;; 13159027f4a0Smrg *-commodore*) 13169027f4a0Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13179027f4a0Smrg ;; 13189027f4a0Smrg *) 13199027f4a0Smrg ;; 13209027f4a0Smrgesac 13219027f4a0Smrg 13229027f4a0Smrg# Decode manufacturer-specific aliases for certain operating systems. 13239027f4a0Smrg 13249027f4a0Smrgif [ x"$os" != x"" ] 13259027f4a0Smrgthen 13269027f4a0Smrgcase $os in 1327fe2ac8d7Smrg # First match some system type aliases 1328fe2ac8d7Smrg # that might get confused with valid system types. 13299027f4a0Smrg # -solaris* is a basic system type, with this one exception. 1330fe2ac8d7Smrg -auroraux) 1331fe2ac8d7Smrg os=-auroraux 13323a72f200Smrg ;; 13339027f4a0Smrg -solaris1 | -solaris1.*) 13349027f4a0Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13359027f4a0Smrg ;; 13369027f4a0Smrg -solaris) 13379027f4a0Smrg os=-solaris2 13389027f4a0Smrg ;; 13399027f4a0Smrg -svr4*) 13409027f4a0Smrg os=-sysv4 13419027f4a0Smrg ;; 13429027f4a0Smrg -unixware*) 13439027f4a0Smrg os=-sysv4.2uw 13449027f4a0Smrg ;; 13459027f4a0Smrg -gnu/linux*) 13469027f4a0Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13479027f4a0Smrg ;; 13489027f4a0Smrg # First accept the basic system types. 13499027f4a0Smrg # The portable systems comes first. 13509027f4a0Smrg # Each alternative MUST END IN A *, to match a version number. 13519027f4a0Smrg # -sysv* is not here because it comes later, after sysvr4. 13529027f4a0Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13533a72f200Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13543a72f200Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1355fe2ac8d7Smrg | -sym* | -kopensolaris* | -plan9* \ 13569027f4a0Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13573a72f200Smrg | -aos* | -aros* \ 13589027f4a0Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13599027f4a0Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13609027f4a0Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1361fe2ac8d7Smrg | -bitrig* | -openbsd* | -solidbsd* \ 13629027f4a0Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13639027f4a0Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13649027f4a0Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13659027f4a0Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13663a72f200Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1367fe2ac8d7Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1368fe2ac8d7Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1369fe2ac8d7Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 13709027f4a0Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 13719027f4a0Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13729027f4a0Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13739027f4a0Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13749027f4a0Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13759027f4a0Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13769027f4a0Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13773a72f200Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 13789027f4a0Smrg # Remember, each alternative MUST END IN *, to match a version number. 13799027f4a0Smrg ;; 13809027f4a0Smrg -qnx*) 13819027f4a0Smrg case $basic_machine in 13829027f4a0Smrg x86-* | i*86-*) 13839027f4a0Smrg ;; 13849027f4a0Smrg *) 13859027f4a0Smrg os=-nto$os 13869027f4a0Smrg ;; 13879027f4a0Smrg esac 13889027f4a0Smrg ;; 13899027f4a0Smrg -nto-qnx*) 13909027f4a0Smrg ;; 13919027f4a0Smrg -nto*) 13929027f4a0Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 13939027f4a0Smrg ;; 13949027f4a0Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13959027f4a0Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 13969027f4a0Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 13979027f4a0Smrg ;; 13989027f4a0Smrg -mac*) 13999027f4a0Smrg os=`echo $os | sed -e 's|mac|macos|'` 14009027f4a0Smrg ;; 14019027f4a0Smrg -linux-dietlibc) 14029027f4a0Smrg os=-linux-dietlibc 14039027f4a0Smrg ;; 14049027f4a0Smrg -linux*) 14059027f4a0Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 14069027f4a0Smrg ;; 14079027f4a0Smrg -sunos5*) 14089027f4a0Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 14099027f4a0Smrg ;; 14109027f4a0Smrg -sunos6*) 14119027f4a0Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 14129027f4a0Smrg ;; 14139027f4a0Smrg -opened*) 14149027f4a0Smrg os=-openedition 14159027f4a0Smrg ;; 1416fe2ac8d7Smrg -os400*) 14179027f4a0Smrg os=-os400 14189027f4a0Smrg ;; 14199027f4a0Smrg -wince*) 14209027f4a0Smrg os=-wince 14219027f4a0Smrg ;; 14229027f4a0Smrg -osfrose*) 14239027f4a0Smrg os=-osfrose 14249027f4a0Smrg ;; 14259027f4a0Smrg -osf*) 14269027f4a0Smrg os=-osf 14279027f4a0Smrg ;; 14289027f4a0Smrg -utek*) 14299027f4a0Smrg os=-bsd 14309027f4a0Smrg ;; 14319027f4a0Smrg -dynix*) 14329027f4a0Smrg os=-bsd 14339027f4a0Smrg ;; 14349027f4a0Smrg -acis*) 14359027f4a0Smrg os=-aos 14369027f4a0Smrg ;; 14379027f4a0Smrg -atheos*) 14389027f4a0Smrg os=-atheos 14399027f4a0Smrg ;; 14409027f4a0Smrg -syllable*) 14419027f4a0Smrg os=-syllable 14429027f4a0Smrg ;; 14439027f4a0Smrg -386bsd) 14449027f4a0Smrg os=-bsd 14459027f4a0Smrg ;; 14469027f4a0Smrg -ctix* | -uts*) 14479027f4a0Smrg os=-sysv 14489027f4a0Smrg ;; 14499027f4a0Smrg -nova*) 14509027f4a0Smrg os=-rtmk-nova 14519027f4a0Smrg ;; 14529027f4a0Smrg -ns2 ) 14539027f4a0Smrg os=-nextstep2 14549027f4a0Smrg ;; 14559027f4a0Smrg -nsk*) 14569027f4a0Smrg os=-nsk 14579027f4a0Smrg ;; 14589027f4a0Smrg # Preserve the version number of sinix5. 14599027f4a0Smrg -sinix5.*) 14609027f4a0Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14619027f4a0Smrg ;; 14629027f4a0Smrg -sinix*) 14639027f4a0Smrg os=-sysv4 14649027f4a0Smrg ;; 1465fe2ac8d7Smrg -tpf*) 14669027f4a0Smrg os=-tpf 14679027f4a0Smrg ;; 14689027f4a0Smrg -triton*) 14699027f4a0Smrg os=-sysv3 14709027f4a0Smrg ;; 14719027f4a0Smrg -oss*) 14729027f4a0Smrg os=-sysv3 14739027f4a0Smrg ;; 14749027f4a0Smrg -svr4) 14759027f4a0Smrg os=-sysv4 14769027f4a0Smrg ;; 14779027f4a0Smrg -svr3) 14789027f4a0Smrg os=-sysv3 14799027f4a0Smrg ;; 14809027f4a0Smrg -sysvr4) 14819027f4a0Smrg os=-sysv4 14829027f4a0Smrg ;; 14839027f4a0Smrg # This must come after -sysvr4. 14849027f4a0Smrg -sysv*) 14859027f4a0Smrg ;; 14869027f4a0Smrg -ose*) 14879027f4a0Smrg os=-ose 14889027f4a0Smrg ;; 14899027f4a0Smrg -es1800*) 14909027f4a0Smrg os=-ose 14919027f4a0Smrg ;; 14929027f4a0Smrg -xenix) 14939027f4a0Smrg os=-xenix 14949027f4a0Smrg ;; 14959027f4a0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 14969027f4a0Smrg os=-mint 14979027f4a0Smrg ;; 14989027f4a0Smrg -aros*) 14999027f4a0Smrg os=-aros 15009027f4a0Smrg ;; 15019027f4a0Smrg -zvmoe) 15029027f4a0Smrg os=-zvmoe 15039027f4a0Smrg ;; 15043a72f200Smrg -dicos*) 15053a72f200Smrg os=-dicos 15063a72f200Smrg ;; 1507fe2ac8d7Smrg -nacl*) 1508fe2ac8d7Smrg ;; 15099027f4a0Smrg -none) 15109027f4a0Smrg ;; 15119027f4a0Smrg *) 15129027f4a0Smrg # Get rid of the `-' at the beginning of $os. 15139027f4a0Smrg os=`echo $os | sed 's/[^-]*-//'` 15149027f4a0Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15159027f4a0Smrg exit 1 15169027f4a0Smrg ;; 15179027f4a0Smrgesac 15189027f4a0Smrgelse 15199027f4a0Smrg 15209027f4a0Smrg# Here we handle the default operating systems that come with various machines. 15219027f4a0Smrg# The value should be what the vendor currently ships out the door with their 15229027f4a0Smrg# machine or put another way, the most popular os provided with the machine. 15239027f4a0Smrg 15249027f4a0Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15259027f4a0Smrg# "-sun"), then you have to tell the case statement up towards the top 15269027f4a0Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15279027f4a0Smrg# will signal an error saying that MANUFACTURER isn't an operating 15289027f4a0Smrg# system, and we'll never get to this point. 15299027f4a0Smrg 15309027f4a0Smrgcase $basic_machine in 1531fe2ac8d7Smrg score-*) 15329027f4a0Smrg os=-elf 15339027f4a0Smrg ;; 1534fe2ac8d7Smrg spu-*) 15359027f4a0Smrg os=-elf 15369027f4a0Smrg ;; 15379027f4a0Smrg *-acorn) 15389027f4a0Smrg os=-riscix1.2 15399027f4a0Smrg ;; 15409027f4a0Smrg arm*-rebel) 15419027f4a0Smrg os=-linux 15429027f4a0Smrg ;; 15439027f4a0Smrg arm*-semi) 15449027f4a0Smrg os=-aout 15459027f4a0Smrg ;; 1546fe2ac8d7Smrg c4x-* | tic4x-*) 1547fe2ac8d7Smrg os=-coff 1548fe2ac8d7Smrg ;; 1549fe2ac8d7Smrg hexagon-*) 1550fe2ac8d7Smrg os=-elf 15519027f4a0Smrg ;; 15523a72f200Smrg tic54x-*) 15533a72f200Smrg os=-coff 15543a72f200Smrg ;; 15553a72f200Smrg tic55x-*) 15563a72f200Smrg os=-coff 15573a72f200Smrg ;; 15583a72f200Smrg tic6x-*) 15593a72f200Smrg os=-coff 15603a72f200Smrg ;; 15619027f4a0Smrg # This must come before the *-dec entry. 15629027f4a0Smrg pdp10-*) 15639027f4a0Smrg os=-tops20 15649027f4a0Smrg ;; 15659027f4a0Smrg pdp11-*) 15669027f4a0Smrg os=-none 15679027f4a0Smrg ;; 15689027f4a0Smrg *-dec | vax-*) 15699027f4a0Smrg os=-ultrix4.2 15709027f4a0Smrg ;; 15719027f4a0Smrg m68*-apollo) 15729027f4a0Smrg os=-domain 15739027f4a0Smrg ;; 15749027f4a0Smrg i386-sun) 15759027f4a0Smrg os=-sunos4.0.2 15769027f4a0Smrg ;; 15779027f4a0Smrg m68000-sun) 15789027f4a0Smrg os=-sunos3 15799027f4a0Smrg ;; 15809027f4a0Smrg m68*-cisco) 15819027f4a0Smrg os=-aout 15829027f4a0Smrg ;; 1583fe2ac8d7Smrg mep-*) 15843a72f200Smrg os=-elf 15853a72f200Smrg ;; 15869027f4a0Smrg mips*-cisco) 15879027f4a0Smrg os=-elf 15889027f4a0Smrg ;; 15899027f4a0Smrg mips*-*) 15909027f4a0Smrg os=-elf 15919027f4a0Smrg ;; 1592fe2ac8d7Smrg or1k-*) 1593fe2ac8d7Smrg os=-elf 1594fe2ac8d7Smrg ;; 15959027f4a0Smrg or32-*) 15969027f4a0Smrg os=-coff 15979027f4a0Smrg ;; 15989027f4a0Smrg *-tti) # must be before sparc entry or we get the wrong os. 15999027f4a0Smrg os=-sysv3 16009027f4a0Smrg ;; 16019027f4a0Smrg sparc-* | *-sun) 16029027f4a0Smrg os=-sunos4.1.1 16039027f4a0Smrg ;; 16049027f4a0Smrg *-be) 16059027f4a0Smrg os=-beos 16069027f4a0Smrg ;; 16079027f4a0Smrg *-haiku) 16089027f4a0Smrg os=-haiku 16099027f4a0Smrg ;; 16109027f4a0Smrg *-ibm) 16119027f4a0Smrg os=-aix 16129027f4a0Smrg ;; 1613fe2ac8d7Smrg *-knuth) 16149027f4a0Smrg os=-mmixware 16159027f4a0Smrg ;; 16169027f4a0Smrg *-wec) 16179027f4a0Smrg os=-proelf 16189027f4a0Smrg ;; 16199027f4a0Smrg *-winbond) 16209027f4a0Smrg os=-proelf 16219027f4a0Smrg ;; 16229027f4a0Smrg *-oki) 16239027f4a0Smrg os=-proelf 16249027f4a0Smrg ;; 16259027f4a0Smrg *-hp) 16269027f4a0Smrg os=-hpux 16279027f4a0Smrg ;; 16289027f4a0Smrg *-hitachi) 16299027f4a0Smrg os=-hiux 16309027f4a0Smrg ;; 16319027f4a0Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16329027f4a0Smrg os=-sysv 16339027f4a0Smrg ;; 16349027f4a0Smrg *-cbm) 16359027f4a0Smrg os=-amigaos 16369027f4a0Smrg ;; 16379027f4a0Smrg *-dg) 16389027f4a0Smrg os=-dgux 16399027f4a0Smrg ;; 16409027f4a0Smrg *-dolphin) 16419027f4a0Smrg os=-sysv3 16429027f4a0Smrg ;; 16439027f4a0Smrg m68k-ccur) 16449027f4a0Smrg os=-rtu 16459027f4a0Smrg ;; 16469027f4a0Smrg m88k-omron*) 16479027f4a0Smrg os=-luna 16489027f4a0Smrg ;; 16499027f4a0Smrg *-next ) 16509027f4a0Smrg os=-nextstep 16519027f4a0Smrg ;; 16529027f4a0Smrg *-sequent) 16539027f4a0Smrg os=-ptx 16549027f4a0Smrg ;; 16559027f4a0Smrg *-crds) 16569027f4a0Smrg os=-unos 16579027f4a0Smrg ;; 16589027f4a0Smrg *-ns) 16599027f4a0Smrg os=-genix 16609027f4a0Smrg ;; 16619027f4a0Smrg i370-*) 16629027f4a0Smrg os=-mvs 16639027f4a0Smrg ;; 16649027f4a0Smrg *-next) 16659027f4a0Smrg os=-nextstep3 16669027f4a0Smrg ;; 16679027f4a0Smrg *-gould) 16689027f4a0Smrg os=-sysv 16699027f4a0Smrg ;; 16709027f4a0Smrg *-highlevel) 16719027f4a0Smrg os=-bsd 16729027f4a0Smrg ;; 16739027f4a0Smrg *-encore) 16749027f4a0Smrg os=-bsd 16759027f4a0Smrg ;; 16769027f4a0Smrg *-sgi) 16779027f4a0Smrg os=-irix 16789027f4a0Smrg ;; 16799027f4a0Smrg *-siemens) 16809027f4a0Smrg os=-sysv4 16819027f4a0Smrg ;; 16829027f4a0Smrg *-masscomp) 16839027f4a0Smrg os=-rtu 16849027f4a0Smrg ;; 16859027f4a0Smrg f30[01]-fujitsu | f700-fujitsu) 16869027f4a0Smrg os=-uxpv 16879027f4a0Smrg ;; 16889027f4a0Smrg *-rom68k) 16899027f4a0Smrg os=-coff 16909027f4a0Smrg ;; 16919027f4a0Smrg *-*bug) 16929027f4a0Smrg os=-coff 16939027f4a0Smrg ;; 16949027f4a0Smrg *-apple) 16959027f4a0Smrg os=-macos 16969027f4a0Smrg ;; 16979027f4a0Smrg *-atari*) 16989027f4a0Smrg os=-mint 16999027f4a0Smrg ;; 17009027f4a0Smrg *) 17019027f4a0Smrg os=-none 17029027f4a0Smrg ;; 17039027f4a0Smrgesac 17049027f4a0Smrgfi 17059027f4a0Smrg 17069027f4a0Smrg# Here we handle the case where we know the os, and the CPU type, but not the 17079027f4a0Smrg# manufacturer. We pick the logical manufacturer. 17089027f4a0Smrgvendor=unknown 17099027f4a0Smrgcase $basic_machine in 17109027f4a0Smrg *-unknown) 17119027f4a0Smrg case $os in 17129027f4a0Smrg -riscix*) 17139027f4a0Smrg vendor=acorn 17149027f4a0Smrg ;; 17159027f4a0Smrg -sunos*) 17169027f4a0Smrg vendor=sun 17179027f4a0Smrg ;; 17183a72f200Smrg -cnk*|-aix*) 17199027f4a0Smrg vendor=ibm 17209027f4a0Smrg ;; 17219027f4a0Smrg -beos*) 17229027f4a0Smrg vendor=be 17239027f4a0Smrg ;; 17249027f4a0Smrg -hpux*) 17259027f4a0Smrg vendor=hp 17269027f4a0Smrg ;; 17279027f4a0Smrg -mpeix*) 17289027f4a0Smrg vendor=hp 17299027f4a0Smrg ;; 17309027f4a0Smrg -hiux*) 17319027f4a0Smrg vendor=hitachi 17329027f4a0Smrg ;; 17339027f4a0Smrg -unos*) 17349027f4a0Smrg vendor=crds 17359027f4a0Smrg ;; 17369027f4a0Smrg -dgux*) 17379027f4a0Smrg vendor=dg 17389027f4a0Smrg ;; 17399027f4a0Smrg -luna*) 17409027f4a0Smrg vendor=omron 17419027f4a0Smrg ;; 17429027f4a0Smrg -genix*) 17439027f4a0Smrg vendor=ns 17449027f4a0Smrg ;; 17459027f4a0Smrg -mvs* | -opened*) 17469027f4a0Smrg vendor=ibm 17479027f4a0Smrg ;; 17489027f4a0Smrg -os400*) 17499027f4a0Smrg vendor=ibm 17509027f4a0Smrg ;; 17519027f4a0Smrg -ptx*) 17529027f4a0Smrg vendor=sequent 17539027f4a0Smrg ;; 17549027f4a0Smrg -tpf*) 17559027f4a0Smrg vendor=ibm 17569027f4a0Smrg ;; 17579027f4a0Smrg -vxsim* | -vxworks* | -windiss*) 17589027f4a0Smrg vendor=wrs 17599027f4a0Smrg ;; 17609027f4a0Smrg -aux*) 17619027f4a0Smrg vendor=apple 17629027f4a0Smrg ;; 17639027f4a0Smrg -hms*) 17649027f4a0Smrg vendor=hitachi 17659027f4a0Smrg ;; 17669027f4a0Smrg -mpw* | -macos*) 17679027f4a0Smrg vendor=apple 17689027f4a0Smrg ;; 17699027f4a0Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17709027f4a0Smrg vendor=atari 17719027f4a0Smrg ;; 17729027f4a0Smrg -vos*) 17739027f4a0Smrg vendor=stratus 17749027f4a0Smrg ;; 17759027f4a0Smrg esac 17769027f4a0Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17779027f4a0Smrg ;; 17789027f4a0Smrgesac 17799027f4a0Smrg 17809027f4a0Smrgecho $basic_machine$os 17819027f4a0Smrgexit 17829027f4a0Smrg 17839027f4a0Smrg# Local variables: 17849027f4a0Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 17859027f4a0Smrg# time-stamp-start: "timestamp='" 17869027f4a0Smrg# time-stamp-format: "%:y-%02m-%02d" 17879027f4a0Smrg# time-stamp-end: "'" 17889027f4a0Smrg# End: 1789