15c10afb9Smrg#! /bin/sh 25c10afb9Smrg# Configuration validation subroutine script. 3cf2f63c2Smrg# Copyright 1992-2014 Free Software Foundation, Inc. 45c10afb9Smrg 5cf2f63c2Smrgtimestamp='2014-12-03' 65c10afb9Smrg 7cf2f63c2Smrg# This file is free software; you can redistribute it and/or modify it 8cf2f63c2Smrg# under the terms of the GNU General Public License as published by 9cf2f63c2Smrg# the Free Software Foundation; either version 3 of the License, or 105c10afb9Smrg# (at your option) any later version. 115c10afb9Smrg# 12cf2f63c2Smrg# This program is distributed in the hope that it will be useful, but 13cf2f63c2Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 14cf2f63c2Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15cf2f63c2Smrg# General Public License for more details. 165c10afb9Smrg# 175c10afb9Smrg# You should have received a copy of the GNU General Public License 18cf2f63c2Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 19b3078addSmrg# 205c10afb9Smrg# As a special exception to the GNU General Public License, if you 215c10afb9Smrg# distribute this file as part of a program that contains a 225c10afb9Smrg# configuration script generated by Autoconf, you may include it under 23cf2f63c2Smrg# the same distribution terms that you use for the rest of that 24cf2f63c2Smrg# program. This Exception is an additional permission under section 7 25cf2f63c2Smrg# of the GNU General Public License, version 3 ("GPLv3"). 265c10afb9Smrg 27b3078addSmrg 28cf2f63c2Smrg# Please send patches to <config-patches@gnu.org>. 295c10afb9Smrg# 305c10afb9Smrg# Configuration subroutine to validate and canonicalize a configuration type. 315c10afb9Smrg# Supply the specified configuration type as an argument. 325c10afb9Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 335c10afb9Smrg# Otherwise, we print the canonical config type on stdout and succeed. 345c10afb9Smrg 35b3078addSmrg# You can get the latest version of this script from: 36b3078addSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 37b3078addSmrg 385c10afb9Smrg# This file is supposed to be the same for all GNU packages 395c10afb9Smrg# and recognize all the CPU types, system types and aliases 405c10afb9Smrg# that are meaningful with *any* GNU software. 415c10afb9Smrg# Each package is responsible for reporting which valid configurations 425c10afb9Smrg# it does not support. The user should be able to distinguish 435c10afb9Smrg# a failure to support a valid configuration from a meaningless 445c10afb9Smrg# configuration. 455c10afb9Smrg 465c10afb9Smrg# The goal of this file is to map all the various variations of a given 475c10afb9Smrg# machine specification into a single specification in the form: 485c10afb9Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 495c10afb9Smrg# or in some cases, the newer four-part form: 505c10afb9Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 515c10afb9Smrg# It is wrong to echo any other type of specification. 525c10afb9Smrg 535c10afb9Smrgme=`echo "$0" | sed -e 's,.*/,,'` 545c10afb9Smrg 555c10afb9Smrgusage="\ 565c10afb9SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 575c10afb9Smrg $0 [OPTION] ALIAS 585c10afb9Smrg 595c10afb9SmrgCanonicalize a configuration name. 605c10afb9Smrg 615c10afb9SmrgOperation modes: 625c10afb9Smrg -h, --help print this help, then exit 635c10afb9Smrg -t, --time-stamp print date of last modification, then exit 645c10afb9Smrg -v, --version print version number, then exit 655c10afb9Smrg 665c10afb9SmrgReport bugs and patches to <config-patches@gnu.org>." 675c10afb9Smrg 685c10afb9Smrgversion="\ 695c10afb9SmrgGNU config.sub ($timestamp) 705c10afb9Smrg 71cf2f63c2SmrgCopyright 1992-2014 Free Software Foundation, Inc. 725c10afb9Smrg 735c10afb9SmrgThis is free software; see the source for copying conditions. There is NO 745c10afb9Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 755c10afb9Smrg 765c10afb9Smrghelp=" 775c10afb9SmrgTry \`$me --help' for more information." 785c10afb9Smrg 795c10afb9Smrg# Parse command line 805c10afb9Smrgwhile test $# -gt 0 ; do 815c10afb9Smrg case $1 in 825c10afb9Smrg --time-stamp | --time* | -t ) 83b3078addSmrg echo "$timestamp" ; exit ;; 845c10afb9Smrg --version | -v ) 85b3078addSmrg echo "$version" ; exit ;; 865c10afb9Smrg --help | --h* | -h ) 87b3078addSmrg echo "$usage"; exit ;; 885c10afb9Smrg -- ) # Stop option processing 895c10afb9Smrg shift; break ;; 905c10afb9Smrg - ) # Use stdin as input. 915c10afb9Smrg break ;; 925c10afb9Smrg -* ) 935c10afb9Smrg echo "$me: invalid option $1$help" 945c10afb9Smrg exit 1 ;; 955c10afb9Smrg 965c10afb9Smrg *local*) 975c10afb9Smrg # First pass through any local machine types. 985c10afb9Smrg echo $1 99b3078addSmrg exit ;; 1005c10afb9Smrg 1015c10afb9Smrg * ) 1025c10afb9Smrg break ;; 1035c10afb9Smrg esac 1045c10afb9Smrgdone 1055c10afb9Smrg 1065c10afb9Smrgcase $# in 1075c10afb9Smrg 0) echo "$me: missing argument$help" >&2 1085c10afb9Smrg exit 1;; 1095c10afb9Smrg 1) ;; 1105c10afb9Smrg *) echo "$me: too many arguments$help" >&2 1115c10afb9Smrg exit 1;; 1125c10afb9Smrgesac 1135c10afb9Smrg 1145c10afb9Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1155c10afb9Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1165c10afb9Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1175c10afb9Smrgcase $maybe_os in 118b3078addSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 119cf2f63c2Smrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 120b3078addSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 121b3078addSmrg kopensolaris*-gnu* | \ 122b3078addSmrg storm-chaos* | os2-emx* | rtmk-nova*) 1235c10afb9Smrg os=-$maybe_os 1245c10afb9Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1255c10afb9Smrg ;; 126cf2f63c2Smrg android-linux) 127cf2f63c2Smrg os=-linux-android 128cf2f63c2Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 129cf2f63c2Smrg ;; 1305c10afb9Smrg *) 1315c10afb9Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1325c10afb9Smrg if [ $basic_machine != $1 ] 1335c10afb9Smrg then os=`echo $1 | sed 's/.*-/-/'` 1345c10afb9Smrg else os=; fi 1355c10afb9Smrg ;; 1365c10afb9Smrgesac 1375c10afb9Smrg 1385c10afb9Smrg### Let's recognize common machines as not being operating systems so 1395c10afb9Smrg### that things like config.sub decstation-3100 work. We also 1405c10afb9Smrg### recognize some manufacturers as not being operating systems, so we 1415c10afb9Smrg### can provide default operating systems below. 1425c10afb9Smrgcase $os in 1435c10afb9Smrg -sun*os*) 1445c10afb9Smrg # Prevent following clause from handling this invalid input. 1455c10afb9Smrg ;; 1465c10afb9Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1475c10afb9Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1485c10afb9Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1495c10afb9Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1505c10afb9Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1515c10afb9Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 152cf2f63c2Smrg -apple | -axis | -knuth | -cray | -microblaze*) 1535c10afb9Smrg os= 1545c10afb9Smrg basic_machine=$1 1555c10afb9Smrg ;; 156cf2f63c2Smrg -bluegene*) 157cf2f63c2Smrg os=-cnk 158b3078addSmrg ;; 1595c10afb9Smrg -sim | -cisco | -oki | -wec | -winbond) 1605c10afb9Smrg os= 1615c10afb9Smrg basic_machine=$1 1625c10afb9Smrg ;; 1635c10afb9Smrg -scout) 1645c10afb9Smrg ;; 1655c10afb9Smrg -wrs) 1665c10afb9Smrg os=-vxworks 1675c10afb9Smrg basic_machine=$1 1685c10afb9Smrg ;; 1695c10afb9Smrg -chorusos*) 1705c10afb9Smrg os=-chorusos 1715c10afb9Smrg basic_machine=$1 1725c10afb9Smrg ;; 173cf2f63c2Smrg -chorusrdb) 174cf2f63c2Smrg os=-chorusrdb 1755c10afb9Smrg basic_machine=$1 176cf2f63c2Smrg ;; 1775c10afb9Smrg -hiux*) 1785c10afb9Smrg os=-hiuxwe2 1795c10afb9Smrg ;; 180b3078addSmrg -sco6) 181b3078addSmrg os=-sco5v6 182b3078addSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 183b3078addSmrg ;; 1845c10afb9Smrg -sco5) 1855c10afb9Smrg os=-sco3.2v5 1865c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1875c10afb9Smrg ;; 1885c10afb9Smrg -sco4) 1895c10afb9Smrg os=-sco3.2v4 1905c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1915c10afb9Smrg ;; 1925c10afb9Smrg -sco3.2.[4-9]*) 1935c10afb9Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1945c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1955c10afb9Smrg ;; 1965c10afb9Smrg -sco3.2v[4-9]*) 1975c10afb9Smrg # Don't forget version if it is 3.2v4 or newer. 1985c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1995c10afb9Smrg ;; 200b3078addSmrg -sco5v6*) 201b3078addSmrg # Don't forget version if it is 3.2v4 or newer. 202b3078addSmrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 203b3078addSmrg ;; 2045c10afb9Smrg -sco*) 2055c10afb9Smrg os=-sco3.2v2 2065c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2075c10afb9Smrg ;; 2085c10afb9Smrg -udk*) 2095c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2105c10afb9Smrg ;; 2115c10afb9Smrg -isc) 2125c10afb9Smrg os=-isc2.2 2135c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2145c10afb9Smrg ;; 2155c10afb9Smrg -clix*) 2165c10afb9Smrg basic_machine=clipper-intergraph 2175c10afb9Smrg ;; 2185c10afb9Smrg -isc*) 2195c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2205c10afb9Smrg ;; 221cf2f63c2Smrg -lynx*178) 222cf2f63c2Smrg os=-lynxos178 223cf2f63c2Smrg ;; 224cf2f63c2Smrg -lynx*5) 225cf2f63c2Smrg os=-lynxos5 226cf2f63c2Smrg ;; 2275c10afb9Smrg -lynx*) 2285c10afb9Smrg os=-lynxos 2295c10afb9Smrg ;; 2305c10afb9Smrg -ptx*) 2315c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2325c10afb9Smrg ;; 2335c10afb9Smrg -windowsnt*) 2345c10afb9Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2355c10afb9Smrg ;; 2365c10afb9Smrg -psos*) 2375c10afb9Smrg os=-psos 2385c10afb9Smrg ;; 2395c10afb9Smrg -mint | -mint[0-9]*) 2405c10afb9Smrg basic_machine=m68k-atari 2415c10afb9Smrg os=-mint 2425c10afb9Smrg ;; 2435c10afb9Smrgesac 2445c10afb9Smrg 2455c10afb9Smrg# Decode aliases for certain CPU-COMPANY combinations. 2465c10afb9Smrgcase $basic_machine in 2475c10afb9Smrg # Recognize the basic CPU types without company name. 2485c10afb9Smrg # Some are omitted here because they have special meanings below. 2495c10afb9Smrg 1750a | 580 \ 2505c10afb9Smrg | a29k \ 251cf2f63c2Smrg | aarch64 | aarch64_be \ 2525c10afb9Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2535c10afb9Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 254b3078addSmrg | am33_2.0 \ 255cf2f63c2Smrg | arc | arceb \ 256cf2f63c2Smrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 257cf2f63c2Smrg | avr | avr32 \ 258cf2f63c2Smrg | be32 | be64 \ 259b3078addSmrg | bfin \ 260cf2f63c2Smrg | c4x | c8051 | clipper \ 2615c10afb9Smrg | d10v | d30v | dlx | dsp16xx \ 262cf2f63c2Smrg | epiphany \ 263b3078addSmrg | fido | fr30 | frv \ 2645c10afb9Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 265cf2f63c2Smrg | hexagon \ 2665c10afb9Smrg | i370 | i860 | i960 | ia64 \ 267b3078addSmrg | ip2k | iq2000 \ 268cf2f63c2Smrg | k1om \ 269cf2f63c2Smrg | le32 | le64 \ 270b3078addSmrg | lm32 \ 271b3078addSmrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 272cf2f63c2Smrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 2735c10afb9Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2745c10afb9Smrg | mips16 \ 2755c10afb9Smrg | mips64 | mips64el \ 276b3078addSmrg | mips64octeon | mips64octeonel \ 2775c10afb9Smrg | mips64orion | mips64orionel \ 278b3078addSmrg | mips64r5900 | mips64r5900el \ 279b3078addSmrg | mips64vr | mips64vrel \ 2805c10afb9Smrg | mips64vr4100 | mips64vr4100el \ 2815c10afb9Smrg | mips64vr4300 | mips64vr4300el \ 2825c10afb9Smrg | mips64vr5000 | mips64vr5000el \ 283b3078addSmrg | mips64vr5900 | mips64vr5900el \ 2845c10afb9Smrg | mipsisa32 | mipsisa32el \ 2855c10afb9Smrg | mipsisa32r2 | mipsisa32r2el \ 286cf2f63c2Smrg | mipsisa32r6 | mipsisa32r6el \ 2875c10afb9Smrg | mipsisa64 | mipsisa64el \ 288b3078addSmrg | mipsisa64r2 | mipsisa64r2el \ 289cf2f63c2Smrg | mipsisa64r6 | mipsisa64r6el \ 2905c10afb9Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2915c10afb9Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 292cf2f63c2Smrg | mipsr5900 | mipsr5900el \ 2935c10afb9Smrg | mipstx39 | mipstx39el \ 2945c10afb9Smrg | mn10200 | mn10300 \ 295b3078addSmrg | moxie \ 296b3078addSmrg | mt \ 2975c10afb9Smrg | msp430 \ 298b3078addSmrg | nds32 | nds32le | nds32be \ 299cf2f63c2Smrg | nios | nios2 | nios2eb | nios2el \ 3005c10afb9Smrg | ns16k | ns32k \ 301cf2f63c2Smrg | open8 | or1k | or1knd | or32 \ 3025c10afb9Smrg | pdp10 | pdp11 | pj | pjl \ 303cf2f63c2Smrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3045c10afb9Smrg | pyramid \ 305cf2f63c2Smrg | riscv32 | riscv64 \ 306cf2f63c2Smrg | rl78 | rx \ 307b3078addSmrg | score \ 308b3078addSmrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3095c10afb9Smrg | sh64 | sh64le \ 310b3078addSmrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 311b3078addSmrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 312cf2f63c2Smrg | spu \ 313cf2f63c2Smrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 314b3078addSmrg | ubicom32 \ 315cf2f63c2Smrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 316cf2f63c2Smrg | visium \ 3175c10afb9Smrg | we32k \ 318cf2f63c2Smrg | x86 | xc16x | xstormy16 | xtensa \ 319b3078addSmrg | z8k | z80) 3205c10afb9Smrg basic_machine=$basic_machine-unknown 3215c10afb9Smrg ;; 322b3078addSmrg c54x) 323b3078addSmrg basic_machine=tic54x-unknown 324b3078addSmrg ;; 325b3078addSmrg c55x) 326b3078addSmrg basic_machine=tic55x-unknown 327b3078addSmrg ;; 328b3078addSmrg c6x) 329b3078addSmrg basic_machine=tic6x-unknown 330b3078addSmrg ;; 331cf2f63c2Smrg leon|leon[3-9]) 332cf2f63c2Smrg basic_machine=sparc-$basic_machine 333cf2f63c2Smrg ;; 334cf2f63c2Smrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 3355c10afb9Smrg basic_machine=$basic_machine-unknown 3365c10afb9Smrg os=-none 3375c10afb9Smrg ;; 3385c10afb9Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3395c10afb9Smrg ;; 340b3078addSmrg ms1) 341b3078addSmrg basic_machine=mt-unknown 342b3078addSmrg ;; 3435c10afb9Smrg 344cf2f63c2Smrg strongarm | thumb | xscale) 345cf2f63c2Smrg basic_machine=arm-unknown 346cf2f63c2Smrg ;; 347cf2f63c2Smrg xgate) 348cf2f63c2Smrg basic_machine=$basic_machine-unknown 349cf2f63c2Smrg os=-none 350cf2f63c2Smrg ;; 351cf2f63c2Smrg xscaleeb) 352cf2f63c2Smrg basic_machine=armeb-unknown 353cf2f63c2Smrg ;; 354cf2f63c2Smrg 355cf2f63c2Smrg xscaleel) 356cf2f63c2Smrg basic_machine=armel-unknown 357cf2f63c2Smrg ;; 358cf2f63c2Smrg 3595c10afb9Smrg # We use `pc' rather than `unknown' 3605c10afb9Smrg # because (1) that's what they normally are, and 3615c10afb9Smrg # (2) the word "unknown" tends to confuse beginning users. 3625c10afb9Smrg i*86 | x86_64) 3635c10afb9Smrg basic_machine=$basic_machine-pc 3645c10afb9Smrg ;; 3655c10afb9Smrg # Object if more than one company name word. 3665c10afb9Smrg *-*-*) 3675c10afb9Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3685c10afb9Smrg exit 1 3695c10afb9Smrg ;; 3705c10afb9Smrg # Recognize the basic CPU types with company name. 3715c10afb9Smrg 580-* \ 3725c10afb9Smrg | a29k-* \ 373cf2f63c2Smrg | aarch64-* | aarch64_be-* \ 3745c10afb9Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3755c10afb9Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 376cf2f63c2Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 3775c10afb9Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 378b3078addSmrg | avr-* | avr32-* \ 379cf2f63c2Smrg | be32-* | be64-* \ 380b3078addSmrg | bfin-* | bs2000-* \ 381b3078addSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 382cf2f63c2Smrg | c8051-* | clipper-* | craynv-* | cydra-* \ 3835c10afb9Smrg | d10v-* | d30v-* | dlx-* \ 3845c10afb9Smrg | elxsi-* \ 385b3078addSmrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3865c10afb9Smrg | h8300-* | h8500-* \ 3875c10afb9Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 388cf2f63c2Smrg | hexagon-* \ 3895c10afb9Smrg | i*86-* | i860-* | i960-* | ia64-* \ 390b3078addSmrg | ip2k-* | iq2000-* \ 391cf2f63c2Smrg | k1om-* \ 392cf2f63c2Smrg | le32-* | le64-* \ 393b3078addSmrg | lm32-* \ 394b3078addSmrg | m32c-* | m32r-* | m32rle-* \ 3955c10afb9Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 396cf2f63c2Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 397cf2f63c2Smrg | microblaze-* | microblazeel-* \ 3985c10afb9Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3995c10afb9Smrg | mips16-* \ 4005c10afb9Smrg | mips64-* | mips64el-* \ 401b3078addSmrg | mips64octeon-* | mips64octeonel-* \ 4025c10afb9Smrg | mips64orion-* | mips64orionel-* \ 403b3078addSmrg | mips64r5900-* | mips64r5900el-* \ 404b3078addSmrg | mips64vr-* | mips64vrel-* \ 4055c10afb9Smrg | mips64vr4100-* | mips64vr4100el-* \ 4065c10afb9Smrg | mips64vr4300-* | mips64vr4300el-* \ 4075c10afb9Smrg | mips64vr5000-* | mips64vr5000el-* \ 408b3078addSmrg | mips64vr5900-* | mips64vr5900el-* \ 4095c10afb9Smrg | mipsisa32-* | mipsisa32el-* \ 4105c10afb9Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 411cf2f63c2Smrg | mipsisa32r6-* | mipsisa32r6el-* \ 4125c10afb9Smrg | mipsisa64-* | mipsisa64el-* \ 413b3078addSmrg | mipsisa64r2-* | mipsisa64r2el-* \ 414cf2f63c2Smrg | mipsisa64r6-* | mipsisa64r6el-* \ 4155c10afb9Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 4165c10afb9Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 417cf2f63c2Smrg | mipsr5900-* | mipsr5900el-* \ 4185c10afb9Smrg | mipstx39-* | mipstx39el-* \ 419b3078addSmrg | mmix-* \ 420b3078addSmrg | mt-* \ 4215c10afb9Smrg | msp430-* \ 422b3078addSmrg | nds32-* | nds32le-* | nds32be-* \ 423cf2f63c2Smrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 424b3078addSmrg | none-* | np1-* | ns16k-* | ns32k-* \ 425cf2f63c2Smrg | open8-* \ 426cf2f63c2Smrg | or1k*-* \ 4275c10afb9Smrg | orion-* \ 4285c10afb9Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 429cf2f63c2Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4305c10afb9Smrg | pyramid-* \ 431cf2f63c2Smrg | rl78-* | romp-* | rs6000-* | rx-* \ 432b3078addSmrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4335c10afb9Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 434b3078addSmrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 435b3078addSmrg | sparclite-* \ 436cf2f63c2Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 437cf2f63c2Smrg | tahoe-* \ 4385c10afb9Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 439cf2f63c2Smrg | tile*-* \ 4405c10afb9Smrg | tron-* \ 441b3078addSmrg | ubicom32-* \ 442cf2f63c2Smrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 443cf2f63c2Smrg | vax-* \ 444cf2f63c2Smrg | visium-* \ 4455c10afb9Smrg | we32k-* \ 446cf2f63c2Smrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 447b3078addSmrg | xstormy16-* | xtensa*-* \ 4485c10afb9Smrg | ymp-* \ 449b3078addSmrg | z8k-* | z80-*) 450b3078addSmrg ;; 451b3078addSmrg # Recognize the basic CPU types without company name, with glob match. 452b3078addSmrg xtensa*) 453b3078addSmrg basic_machine=$basic_machine-unknown 4545c10afb9Smrg ;; 4555c10afb9Smrg # Recognize the various machine names and aliases which stand 4565c10afb9Smrg # for a CPU type and a company and sometimes even an OS. 4575c10afb9Smrg 386bsd) 4585c10afb9Smrg basic_machine=i386-unknown 4595c10afb9Smrg os=-bsd 4605c10afb9Smrg ;; 4615c10afb9Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4625c10afb9Smrg basic_machine=m68000-att 4635c10afb9Smrg ;; 4645c10afb9Smrg 3b*) 4655c10afb9Smrg basic_machine=we32k-att 4665c10afb9Smrg ;; 4675c10afb9Smrg a29khif) 4685c10afb9Smrg basic_machine=a29k-amd 4695c10afb9Smrg os=-udi 4705c10afb9Smrg ;; 471cf2f63c2Smrg abacus) 472b3078addSmrg basic_machine=abacus-unknown 473b3078addSmrg ;; 4745c10afb9Smrg adobe68k) 4755c10afb9Smrg basic_machine=m68010-adobe 4765c10afb9Smrg os=-scout 4775c10afb9Smrg ;; 4785c10afb9Smrg alliant | fx80) 4795c10afb9Smrg basic_machine=fx80-alliant 4805c10afb9Smrg ;; 4815c10afb9Smrg altos | altos3068) 4825c10afb9Smrg basic_machine=m68k-altos 4835c10afb9Smrg ;; 4845c10afb9Smrg am29k) 4855c10afb9Smrg basic_machine=a29k-none 4865c10afb9Smrg os=-bsd 4875c10afb9Smrg ;; 4885c10afb9Smrg amd64) 4895c10afb9Smrg basic_machine=x86_64-pc 4905c10afb9Smrg ;; 491b3078addSmrg amd64-*) 492b3078addSmrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 493b3078addSmrg ;; 4945c10afb9Smrg amdahl) 4955c10afb9Smrg basic_machine=580-amdahl 4965c10afb9Smrg os=-sysv 4975c10afb9Smrg ;; 4985c10afb9Smrg amiga | amiga-*) 4995c10afb9Smrg basic_machine=m68k-unknown 5005c10afb9Smrg ;; 5015c10afb9Smrg amigaos | amigados) 5025c10afb9Smrg basic_machine=m68k-unknown 5035c10afb9Smrg os=-amigaos 5045c10afb9Smrg ;; 5055c10afb9Smrg amigaunix | amix) 5065c10afb9Smrg basic_machine=m68k-unknown 5075c10afb9Smrg os=-sysv4 5085c10afb9Smrg ;; 5095c10afb9Smrg apollo68) 5105c10afb9Smrg basic_machine=m68k-apollo 5115c10afb9Smrg os=-sysv 5125c10afb9Smrg ;; 5135c10afb9Smrg apollo68bsd) 5145c10afb9Smrg basic_machine=m68k-apollo 5155c10afb9Smrg os=-bsd 5165c10afb9Smrg ;; 517b3078addSmrg aros) 518b3078addSmrg basic_machine=i386-pc 519b3078addSmrg os=-aros 520b3078addSmrg ;; 5215c10afb9Smrg aux) 5225c10afb9Smrg basic_machine=m68k-apple 5235c10afb9Smrg os=-aux 5245c10afb9Smrg ;; 5255c10afb9Smrg balance) 5265c10afb9Smrg basic_machine=ns32k-sequent 5275c10afb9Smrg os=-dynix 5285c10afb9Smrg ;; 529b3078addSmrg blackfin) 530b3078addSmrg basic_machine=bfin-unknown 531b3078addSmrg os=-linux 532b3078addSmrg ;; 533b3078addSmrg blackfin-*) 534b3078addSmrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 535b3078addSmrg os=-linux 536b3078addSmrg ;; 537b3078addSmrg bluegene*) 538b3078addSmrg basic_machine=powerpc-ibm 539b3078addSmrg os=-cnk 540b3078addSmrg ;; 541b3078addSmrg c54x-*) 542b3078addSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 543b3078addSmrg ;; 544b3078addSmrg c55x-*) 545b3078addSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 546b3078addSmrg ;; 547b3078addSmrg c6x-*) 548b3078addSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 549b3078addSmrg ;; 5505c10afb9Smrg c90) 5515c10afb9Smrg basic_machine=c90-cray 5525c10afb9Smrg os=-unicos 5535c10afb9Smrg ;; 554cf2f63c2Smrg cegcc) 555b3078addSmrg basic_machine=arm-unknown 556b3078addSmrg os=-cegcc 557b3078addSmrg ;; 5585c10afb9Smrg convex-c1) 5595c10afb9Smrg basic_machine=c1-convex 5605c10afb9Smrg os=-bsd 5615c10afb9Smrg ;; 5625c10afb9Smrg convex-c2) 5635c10afb9Smrg basic_machine=c2-convex 5645c10afb9Smrg os=-bsd 5655c10afb9Smrg ;; 5665c10afb9Smrg convex-c32) 5675c10afb9Smrg basic_machine=c32-convex 5685c10afb9Smrg os=-bsd 5695c10afb9Smrg ;; 5705c10afb9Smrg convex-c34) 5715c10afb9Smrg basic_machine=c34-convex 5725c10afb9Smrg os=-bsd 5735c10afb9Smrg ;; 5745c10afb9Smrg convex-c38) 5755c10afb9Smrg basic_machine=c38-convex 5765c10afb9Smrg os=-bsd 5775c10afb9Smrg ;; 5785c10afb9Smrg cray | j90) 5795c10afb9Smrg basic_machine=j90-cray 5805c10afb9Smrg os=-unicos 5815c10afb9Smrg ;; 582b3078addSmrg craynv) 583b3078addSmrg basic_machine=craynv-cray 584b3078addSmrg os=-unicosmp 585b3078addSmrg ;; 586cf2f63c2Smrg cr16 | cr16-*) 587b3078addSmrg basic_machine=cr16-unknown 588b3078addSmrg os=-elf 589b3078addSmrg ;; 5905c10afb9Smrg crds | unos) 5915c10afb9Smrg basic_machine=m68k-crds 5925c10afb9Smrg ;; 593b3078addSmrg crisv32 | crisv32-* | etraxfs*) 594b3078addSmrg basic_machine=crisv32-axis 595b3078addSmrg ;; 5965c10afb9Smrg cris | cris-* | etrax*) 5975c10afb9Smrg basic_machine=cris-axis 5985c10afb9Smrg ;; 599b3078addSmrg crx) 600b3078addSmrg basic_machine=crx-unknown 601b3078addSmrg os=-elf 602b3078addSmrg ;; 6035c10afb9Smrg da30 | da30-*) 6045c10afb9Smrg basic_machine=m68k-da30 6055c10afb9Smrg ;; 6065c10afb9Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 6075c10afb9Smrg basic_machine=mips-dec 6085c10afb9Smrg ;; 6095c10afb9Smrg decsystem10* | dec10*) 6105c10afb9Smrg basic_machine=pdp10-dec 6115c10afb9Smrg os=-tops10 6125c10afb9Smrg ;; 6135c10afb9Smrg decsystem20* | dec20*) 6145c10afb9Smrg basic_machine=pdp10-dec 6155c10afb9Smrg os=-tops20 6165c10afb9Smrg ;; 6175c10afb9Smrg delta | 3300 | motorola-3300 | motorola-delta \ 6185c10afb9Smrg | 3300-motorola | delta-motorola) 6195c10afb9Smrg basic_machine=m68k-motorola 6205c10afb9Smrg ;; 6215c10afb9Smrg delta88) 6225c10afb9Smrg basic_machine=m88k-motorola 6235c10afb9Smrg os=-sysv3 6245c10afb9Smrg ;; 625b3078addSmrg dicos) 626b3078addSmrg basic_machine=i686-pc 627b3078addSmrg os=-dicos 628b3078addSmrg ;; 629b3078addSmrg djgpp) 630b3078addSmrg basic_machine=i586-pc 631b3078addSmrg os=-msdosdjgpp 632b3078addSmrg ;; 6335c10afb9Smrg dpx20 | dpx20-*) 6345c10afb9Smrg basic_machine=rs6000-bull 6355c10afb9Smrg os=-bosx 6365c10afb9Smrg ;; 6375c10afb9Smrg dpx2* | dpx2*-bull) 6385c10afb9Smrg basic_machine=m68k-bull 6395c10afb9Smrg os=-sysv3 6405c10afb9Smrg ;; 6415c10afb9Smrg ebmon29k) 6425c10afb9Smrg basic_machine=a29k-amd 6435c10afb9Smrg os=-ebmon 6445c10afb9Smrg ;; 6455c10afb9Smrg elxsi) 6465c10afb9Smrg basic_machine=elxsi-elxsi 6475c10afb9Smrg os=-bsd 6485c10afb9Smrg ;; 6495c10afb9Smrg encore | umax | mmax) 6505c10afb9Smrg basic_machine=ns32k-encore 6515c10afb9Smrg ;; 6525c10afb9Smrg es1800 | OSE68k | ose68k | ose | OSE) 6535c10afb9Smrg basic_machine=m68k-ericsson 6545c10afb9Smrg os=-ose 6555c10afb9Smrg ;; 6565c10afb9Smrg fx2800) 6575c10afb9Smrg basic_machine=i860-alliant 6585c10afb9Smrg ;; 6595c10afb9Smrg genix) 6605c10afb9Smrg basic_machine=ns32k-ns 6615c10afb9Smrg ;; 6625c10afb9Smrg gmicro) 6635c10afb9Smrg basic_machine=tron-gmicro 6645c10afb9Smrg os=-sysv 6655c10afb9Smrg ;; 6665c10afb9Smrg go32) 6675c10afb9Smrg basic_machine=i386-pc 6685c10afb9Smrg os=-go32 6695c10afb9Smrg ;; 6705c10afb9Smrg h3050r* | hiux*) 6715c10afb9Smrg basic_machine=hppa1.1-hitachi 6725c10afb9Smrg os=-hiuxwe2 6735c10afb9Smrg ;; 6745c10afb9Smrg h8300hms) 6755c10afb9Smrg basic_machine=h8300-hitachi 6765c10afb9Smrg os=-hms 6775c10afb9Smrg ;; 6785c10afb9Smrg h8300xray) 6795c10afb9Smrg basic_machine=h8300-hitachi 6805c10afb9Smrg os=-xray 6815c10afb9Smrg ;; 6825c10afb9Smrg h8500hms) 6835c10afb9Smrg basic_machine=h8500-hitachi 6845c10afb9Smrg os=-hms 6855c10afb9Smrg ;; 6865c10afb9Smrg harris) 6875c10afb9Smrg basic_machine=m88k-harris 6885c10afb9Smrg os=-sysv3 6895c10afb9Smrg ;; 6905c10afb9Smrg hp300-*) 6915c10afb9Smrg basic_machine=m68k-hp 6925c10afb9Smrg ;; 6935c10afb9Smrg hp300bsd) 6945c10afb9Smrg basic_machine=m68k-hp 6955c10afb9Smrg os=-bsd 6965c10afb9Smrg ;; 6975c10afb9Smrg hp300hpux) 6985c10afb9Smrg basic_machine=m68k-hp 6995c10afb9Smrg os=-hpux 7005c10afb9Smrg ;; 7015c10afb9Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 7025c10afb9Smrg basic_machine=hppa1.0-hp 7035c10afb9Smrg ;; 7045c10afb9Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 7055c10afb9Smrg basic_machine=m68000-hp 7065c10afb9Smrg ;; 7075c10afb9Smrg hp9k3[2-9][0-9]) 7085c10afb9Smrg basic_machine=m68k-hp 7095c10afb9Smrg ;; 7105c10afb9Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 7115c10afb9Smrg basic_machine=hppa1.0-hp 7125c10afb9Smrg ;; 7135c10afb9Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 7145c10afb9Smrg basic_machine=hppa1.1-hp 7155c10afb9Smrg ;; 7165c10afb9Smrg hp9k78[0-9] | hp78[0-9]) 7175c10afb9Smrg # FIXME: really hppa2.0-hp 7185c10afb9Smrg basic_machine=hppa1.1-hp 7195c10afb9Smrg ;; 7205c10afb9Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7215c10afb9Smrg # FIXME: really hppa2.0-hp 7225c10afb9Smrg basic_machine=hppa1.1-hp 7235c10afb9Smrg ;; 7245c10afb9Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7255c10afb9Smrg basic_machine=hppa1.1-hp 7265c10afb9Smrg ;; 7275c10afb9Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7285c10afb9Smrg basic_machine=hppa1.0-hp 7295c10afb9Smrg ;; 7305c10afb9Smrg hppa-next) 7315c10afb9Smrg os=-nextstep3 7325c10afb9Smrg ;; 7335c10afb9Smrg hppaosf) 7345c10afb9Smrg basic_machine=hppa1.1-hp 7355c10afb9Smrg os=-osf 7365c10afb9Smrg ;; 7375c10afb9Smrg hppro) 7385c10afb9Smrg basic_machine=hppa1.1-hp 7395c10afb9Smrg os=-proelf 7405c10afb9Smrg ;; 7415c10afb9Smrg i370-ibm* | ibm*) 7425c10afb9Smrg basic_machine=i370-ibm 7435c10afb9Smrg ;; 7445c10afb9Smrg i*86v32) 7455c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7465c10afb9Smrg os=-sysv32 7475c10afb9Smrg ;; 7485c10afb9Smrg i*86v4*) 7495c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7505c10afb9Smrg os=-sysv4 7515c10afb9Smrg ;; 7525c10afb9Smrg i*86v) 7535c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7545c10afb9Smrg os=-sysv 7555c10afb9Smrg ;; 7565c10afb9Smrg i*86sol2) 7575c10afb9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7585c10afb9Smrg os=-solaris2 7595c10afb9Smrg ;; 7605c10afb9Smrg i386mach) 7615c10afb9Smrg basic_machine=i386-mach 7625c10afb9Smrg os=-mach 7635c10afb9Smrg ;; 7645c10afb9Smrg i386-vsta | vsta) 7655c10afb9Smrg basic_machine=i386-unknown 7665c10afb9Smrg os=-vsta 7675c10afb9Smrg ;; 7685c10afb9Smrg iris | iris4d) 7695c10afb9Smrg basic_machine=mips-sgi 7705c10afb9Smrg case $os in 7715c10afb9Smrg -irix*) 7725c10afb9Smrg ;; 7735c10afb9Smrg *) 7745c10afb9Smrg os=-irix4 7755c10afb9Smrg ;; 7765c10afb9Smrg esac 7775c10afb9Smrg ;; 7785c10afb9Smrg isi68 | isi) 7795c10afb9Smrg basic_machine=m68k-isi 7805c10afb9Smrg os=-sysv 7815c10afb9Smrg ;; 782cf2f63c2Smrg leon-*|leon[3-9]-*) 783cf2f63c2Smrg basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 784cf2f63c2Smrg ;; 785b3078addSmrg m68knommu) 786b3078addSmrg basic_machine=m68k-unknown 787b3078addSmrg os=-linux 788b3078addSmrg ;; 789b3078addSmrg m68knommu-*) 790b3078addSmrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 791b3078addSmrg os=-linux 792b3078addSmrg ;; 7935c10afb9Smrg m88k-omron*) 7945c10afb9Smrg basic_machine=m88k-omron 7955c10afb9Smrg ;; 7965c10afb9Smrg magnum | m3230) 7975c10afb9Smrg basic_machine=mips-mips 7985c10afb9Smrg os=-sysv 7995c10afb9Smrg ;; 8005c10afb9Smrg merlin) 8015c10afb9Smrg basic_machine=ns32k-utek 8025c10afb9Smrg os=-sysv 8035c10afb9Smrg ;; 804cf2f63c2Smrg microblaze*) 805b3078addSmrg basic_machine=microblaze-xilinx 806b3078addSmrg ;; 807cf2f63c2Smrg mingw64) 808cf2f63c2Smrg basic_machine=x86_64-pc 809cf2f63c2Smrg os=-mingw64 810cf2f63c2Smrg ;; 8115c10afb9Smrg mingw32) 812cf2f63c2Smrg basic_machine=i686-pc 8135c10afb9Smrg os=-mingw32 8145c10afb9Smrg ;; 815b3078addSmrg mingw32ce) 816b3078addSmrg basic_machine=arm-unknown 817b3078addSmrg os=-mingw32ce 818b3078addSmrg ;; 8195c10afb9Smrg miniframe) 8205c10afb9Smrg basic_machine=m68000-convergent 8215c10afb9Smrg ;; 8225c10afb9Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8235c10afb9Smrg basic_machine=m68k-atari 8245c10afb9Smrg os=-mint 8255c10afb9Smrg ;; 8265c10afb9Smrg mips3*-*) 8275c10afb9Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8285c10afb9Smrg ;; 8295c10afb9Smrg mips3*) 8305c10afb9Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8315c10afb9Smrg ;; 8325c10afb9Smrg monitor) 8335c10afb9Smrg basic_machine=m68k-rom68k 8345c10afb9Smrg os=-coff 8355c10afb9Smrg ;; 8365c10afb9Smrg morphos) 8375c10afb9Smrg basic_machine=powerpc-unknown 8385c10afb9Smrg os=-morphos 8395c10afb9Smrg ;; 840cf2f63c2Smrg moxiebox) 841cf2f63c2Smrg basic_machine=moxie-unknown 842cf2f63c2Smrg os=-moxiebox 843cf2f63c2Smrg ;; 8445c10afb9Smrg msdos) 8455c10afb9Smrg basic_machine=i386-pc 8465c10afb9Smrg os=-msdos 8475c10afb9Smrg ;; 848b3078addSmrg ms1-*) 849b3078addSmrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 850b3078addSmrg ;; 851cf2f63c2Smrg msys) 852cf2f63c2Smrg basic_machine=i686-pc 853cf2f63c2Smrg os=-msys 854cf2f63c2Smrg ;; 8555c10afb9Smrg mvs) 8565c10afb9Smrg basic_machine=i370-ibm 8575c10afb9Smrg os=-mvs 8585c10afb9Smrg ;; 859cf2f63c2Smrg nacl) 860cf2f63c2Smrg basic_machine=le32-unknown 861cf2f63c2Smrg os=-nacl 862cf2f63c2Smrg ;; 8635c10afb9Smrg ncr3000) 8645c10afb9Smrg basic_machine=i486-ncr 8655c10afb9Smrg os=-sysv4 8665c10afb9Smrg ;; 8675c10afb9Smrg netbsd386) 8685c10afb9Smrg basic_machine=i386-unknown 8695c10afb9Smrg os=-netbsd 8705c10afb9Smrg ;; 8715c10afb9Smrg netwinder) 8725c10afb9Smrg basic_machine=armv4l-rebel 8735c10afb9Smrg os=-linux 8745c10afb9Smrg ;; 8755c10afb9Smrg news | news700 | news800 | news900) 8765c10afb9Smrg basic_machine=m68k-sony 8775c10afb9Smrg os=-newsos 8785c10afb9Smrg ;; 8795c10afb9Smrg news1000) 8805c10afb9Smrg basic_machine=m68030-sony 8815c10afb9Smrg os=-newsos 8825c10afb9Smrg ;; 8835c10afb9Smrg news-3600 | risc-news) 8845c10afb9Smrg basic_machine=mips-sony 8855c10afb9Smrg os=-newsos 8865c10afb9Smrg ;; 8875c10afb9Smrg necv70) 8885c10afb9Smrg basic_machine=v70-nec 8895c10afb9Smrg os=-sysv 8905c10afb9Smrg ;; 8915c10afb9Smrg next | m*-next ) 8925c10afb9Smrg basic_machine=m68k-next 8935c10afb9Smrg case $os in 8945c10afb9Smrg -nextstep* ) 8955c10afb9Smrg ;; 8965c10afb9Smrg -ns2*) 8975c10afb9Smrg os=-nextstep2 8985c10afb9Smrg ;; 8995c10afb9Smrg *) 9005c10afb9Smrg os=-nextstep3 9015c10afb9Smrg ;; 9025c10afb9Smrg esac 9035c10afb9Smrg ;; 9045c10afb9Smrg nh3000) 9055c10afb9Smrg basic_machine=m68k-harris 9065c10afb9Smrg os=-cxux 9075c10afb9Smrg ;; 9085c10afb9Smrg nh[45]000) 9095c10afb9Smrg basic_machine=m88k-harris 9105c10afb9Smrg os=-cxux 9115c10afb9Smrg ;; 9125c10afb9Smrg nindy960) 9135c10afb9Smrg basic_machine=i960-intel 9145c10afb9Smrg os=-nindy 9155c10afb9Smrg ;; 9165c10afb9Smrg mon960) 9175c10afb9Smrg basic_machine=i960-intel 9185c10afb9Smrg os=-mon960 9195c10afb9Smrg ;; 9205c10afb9Smrg nonstopux) 9215c10afb9Smrg basic_machine=mips-compaq 9225c10afb9Smrg os=-nonstopux 9235c10afb9Smrg ;; 9245c10afb9Smrg np1) 9255c10afb9Smrg basic_machine=np1-gould 9265c10afb9Smrg ;; 927cf2f63c2Smrg neo-tandem) 928b3078addSmrg basic_machine=neo-tandem 929b3078addSmrg ;; 930cf2f63c2Smrg nse-tandem) 931b3078addSmrg basic_machine=nse-tandem 9325c10afb9Smrg ;; 9335c10afb9Smrg nsr-tandem) 9345c10afb9Smrg basic_machine=nsr-tandem 9355c10afb9Smrg ;; 9365c10afb9Smrg op50n-* | op60c-*) 9375c10afb9Smrg basic_machine=hppa1.1-oki 9385c10afb9Smrg os=-proelf 9395c10afb9Smrg ;; 940b3078addSmrg openrisc | openrisc-*) 9415c10afb9Smrg basic_machine=or32-unknown 942b3078addSmrg ;; 943b3078addSmrg os400) 944b3078addSmrg basic_machine=powerpc-ibm 945b3078addSmrg os=-os400 9465c10afb9Smrg ;; 9475c10afb9Smrg OSE68000 | ose68000) 9485c10afb9Smrg basic_machine=m68000-ericsson 9495c10afb9Smrg os=-ose 9505c10afb9Smrg ;; 9515c10afb9Smrg os68k) 9525c10afb9Smrg basic_machine=m68k-none 9535c10afb9Smrg os=-os68k 9545c10afb9Smrg ;; 9555c10afb9Smrg pa-hitachi) 9565c10afb9Smrg basic_machine=hppa1.1-hitachi 9575c10afb9Smrg os=-hiuxwe2 9585c10afb9Smrg ;; 9595c10afb9Smrg paragon) 9605c10afb9Smrg basic_machine=i860-intel 9615c10afb9Smrg os=-osf 9625c10afb9Smrg ;; 963b3078addSmrg parisc) 964b3078addSmrg basic_machine=hppa-unknown 965b3078addSmrg os=-linux 966b3078addSmrg ;; 967b3078addSmrg parisc-*) 968b3078addSmrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 969b3078addSmrg os=-linux 970b3078addSmrg ;; 9715c10afb9Smrg pbd) 9725c10afb9Smrg basic_machine=sparc-tti 9735c10afb9Smrg ;; 9745c10afb9Smrg pbb) 9755c10afb9Smrg basic_machine=m68k-tti 9765c10afb9Smrg ;; 9775c10afb9Smrg pc532 | pc532-*) 9785c10afb9Smrg basic_machine=ns32k-pc532 9795c10afb9Smrg ;; 980b3078addSmrg pc98) 981b3078addSmrg basic_machine=i386-pc 982b3078addSmrg ;; 983b3078addSmrg pc98-*) 984b3078addSmrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 985b3078addSmrg ;; 9865c10afb9Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9875c10afb9Smrg basic_machine=i586-pc 9885c10afb9Smrg ;; 9895c10afb9Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9905c10afb9Smrg basic_machine=i686-pc 9915c10afb9Smrg ;; 9925c10afb9Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9935c10afb9Smrg basic_machine=i686-pc 9945c10afb9Smrg ;; 9955c10afb9Smrg pentium4) 9965c10afb9Smrg basic_machine=i786-pc 9975c10afb9Smrg ;; 9985c10afb9Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9995c10afb9Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 10005c10afb9Smrg ;; 10015c10afb9Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 10025c10afb9Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10035c10afb9Smrg ;; 10045c10afb9Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 10055c10afb9Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10065c10afb9Smrg ;; 10075c10afb9Smrg pentium4-*) 10085c10afb9Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 10095c10afb9Smrg ;; 10105c10afb9Smrg pn) 10115c10afb9Smrg basic_machine=pn-gould 10125c10afb9Smrg ;; 10135c10afb9Smrg power) basic_machine=power-ibm 10145c10afb9Smrg ;; 1015cf2f63c2Smrg ppc | ppcbe) basic_machine=powerpc-unknown 10165c10afb9Smrg ;; 1017cf2f63c2Smrg ppc-* | ppcbe-*) 1018cf2f63c2Smrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 10195c10afb9Smrg ;; 10205c10afb9Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 10215c10afb9Smrg basic_machine=powerpcle-unknown 10225c10afb9Smrg ;; 10235c10afb9Smrg ppcle-* | powerpclittle-*) 10245c10afb9Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 10255c10afb9Smrg ;; 10265c10afb9Smrg ppc64) basic_machine=powerpc64-unknown 10275c10afb9Smrg ;; 10285c10afb9Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10295c10afb9Smrg ;; 10305c10afb9Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10315c10afb9Smrg basic_machine=powerpc64le-unknown 10325c10afb9Smrg ;; 10335c10afb9Smrg ppc64le-* | powerpc64little-*) 10345c10afb9Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10355c10afb9Smrg ;; 10365c10afb9Smrg ps2) 10375c10afb9Smrg basic_machine=i386-ibm 10385c10afb9Smrg ;; 10395c10afb9Smrg pw32) 10405c10afb9Smrg basic_machine=i586-unknown 10415c10afb9Smrg os=-pw32 10425c10afb9Smrg ;; 1043cf2f63c2Smrg rdos | rdos64) 1044cf2f63c2Smrg basic_machine=x86_64-pc 1045cf2f63c2Smrg os=-rdos 1046cf2f63c2Smrg ;; 1047cf2f63c2Smrg rdos32) 1048b3078addSmrg basic_machine=i386-pc 1049b3078addSmrg os=-rdos 1050b3078addSmrg ;; 10515c10afb9Smrg rom68k) 10525c10afb9Smrg basic_machine=m68k-rom68k 10535c10afb9Smrg os=-coff 10545c10afb9Smrg ;; 10555c10afb9Smrg rm[46]00) 10565c10afb9Smrg basic_machine=mips-siemens 10575c10afb9Smrg ;; 10585c10afb9Smrg rtpc | rtpc-*) 10595c10afb9Smrg basic_machine=romp-ibm 10605c10afb9Smrg ;; 1061b3078addSmrg s390 | s390-*) 1062b3078addSmrg basic_machine=s390-ibm 1063b3078addSmrg ;; 1064b3078addSmrg s390x | s390x-*) 1065b3078addSmrg basic_machine=s390x-ibm 1066b3078addSmrg ;; 10675c10afb9Smrg sa29200) 10685c10afb9Smrg basic_machine=a29k-amd 10695c10afb9Smrg os=-udi 10705c10afb9Smrg ;; 10715c10afb9Smrg sb1) 10725c10afb9Smrg basic_machine=mipsisa64sb1-unknown 10735c10afb9Smrg ;; 10745c10afb9Smrg sb1el) 10755c10afb9Smrg basic_machine=mipsisa64sb1el-unknown 10765c10afb9Smrg ;; 1077b3078addSmrg sde) 1078b3078addSmrg basic_machine=mipsisa32-sde 1079b3078addSmrg os=-elf 1080b3078addSmrg ;; 10815c10afb9Smrg sei) 10825c10afb9Smrg basic_machine=mips-sei 10835c10afb9Smrg os=-seiux 10845c10afb9Smrg ;; 10855c10afb9Smrg sequent) 10865c10afb9Smrg basic_machine=i386-sequent 10875c10afb9Smrg ;; 10885c10afb9Smrg sh) 10895c10afb9Smrg basic_machine=sh-hitachi 10905c10afb9Smrg os=-hms 10915c10afb9Smrg ;; 1092b3078addSmrg sh5el) 1093b3078addSmrg basic_machine=sh5le-unknown 1094b3078addSmrg ;; 10955c10afb9Smrg sh64) 10965c10afb9Smrg basic_machine=sh64-unknown 10975c10afb9Smrg ;; 10985c10afb9Smrg sparclite-wrs | simso-wrs) 10995c10afb9Smrg basic_machine=sparclite-wrs 11005c10afb9Smrg os=-vxworks 11015c10afb9Smrg ;; 11025c10afb9Smrg sps7) 11035c10afb9Smrg basic_machine=m68k-bull 11045c10afb9Smrg os=-sysv2 11055c10afb9Smrg ;; 11065c10afb9Smrg spur) 11075c10afb9Smrg basic_machine=spur-unknown 11085c10afb9Smrg ;; 11095c10afb9Smrg st2000) 11105c10afb9Smrg basic_machine=m68k-tandem 11115c10afb9Smrg ;; 11125c10afb9Smrg stratus) 11135c10afb9Smrg basic_machine=i860-stratus 11145c10afb9Smrg os=-sysv4 11155c10afb9Smrg ;; 1116cf2f63c2Smrg strongarm-* | thumb-*) 1117cf2f63c2Smrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1118cf2f63c2Smrg ;; 11195c10afb9Smrg sun2) 11205c10afb9Smrg basic_machine=m68000-sun 11215c10afb9Smrg ;; 11225c10afb9Smrg sun2os3) 11235c10afb9Smrg basic_machine=m68000-sun 11245c10afb9Smrg os=-sunos3 11255c10afb9Smrg ;; 11265c10afb9Smrg sun2os4) 11275c10afb9Smrg basic_machine=m68000-sun 11285c10afb9Smrg os=-sunos4 11295c10afb9Smrg ;; 11305c10afb9Smrg sun3os3) 11315c10afb9Smrg basic_machine=m68k-sun 11325c10afb9Smrg os=-sunos3 11335c10afb9Smrg ;; 11345c10afb9Smrg sun3os4) 11355c10afb9Smrg basic_machine=m68k-sun 11365c10afb9Smrg os=-sunos4 11375c10afb9Smrg ;; 11385c10afb9Smrg sun4os3) 11395c10afb9Smrg basic_machine=sparc-sun 11405c10afb9Smrg os=-sunos3 11415c10afb9Smrg ;; 11425c10afb9Smrg sun4os4) 11435c10afb9Smrg basic_machine=sparc-sun 11445c10afb9Smrg os=-sunos4 11455c10afb9Smrg ;; 11465c10afb9Smrg sun4sol2) 11475c10afb9Smrg basic_machine=sparc-sun 11485c10afb9Smrg os=-solaris2 11495c10afb9Smrg ;; 11505c10afb9Smrg sun3 | sun3-*) 11515c10afb9Smrg basic_machine=m68k-sun 11525c10afb9Smrg ;; 11535c10afb9Smrg sun4) 11545c10afb9Smrg basic_machine=sparc-sun 11555c10afb9Smrg ;; 11565c10afb9Smrg sun386 | sun386i | roadrunner) 11575c10afb9Smrg basic_machine=i386-sun 11585c10afb9Smrg ;; 11595c10afb9Smrg sv1) 11605c10afb9Smrg basic_machine=sv1-cray 11615c10afb9Smrg os=-unicos 11625c10afb9Smrg ;; 11635c10afb9Smrg symmetry) 11645c10afb9Smrg basic_machine=i386-sequent 11655c10afb9Smrg os=-dynix 11665c10afb9Smrg ;; 11675c10afb9Smrg t3e) 11685c10afb9Smrg basic_machine=alphaev5-cray 11695c10afb9Smrg os=-unicos 11705c10afb9Smrg ;; 11715c10afb9Smrg t90) 11725c10afb9Smrg basic_machine=t90-cray 11735c10afb9Smrg os=-unicos 11745c10afb9Smrg ;; 1175b3078addSmrg tile*) 1176cf2f63c2Smrg basic_machine=$basic_machine-unknown 1177b3078addSmrg os=-linux-gnu 11785c10afb9Smrg ;; 11795c10afb9Smrg tx39) 11805c10afb9Smrg basic_machine=mipstx39-unknown 11815c10afb9Smrg ;; 11825c10afb9Smrg tx39el) 11835c10afb9Smrg basic_machine=mipstx39el-unknown 11845c10afb9Smrg ;; 11855c10afb9Smrg toad1) 11865c10afb9Smrg basic_machine=pdp10-xkl 11875c10afb9Smrg os=-tops20 11885c10afb9Smrg ;; 11895c10afb9Smrg tower | tower-32) 11905c10afb9Smrg basic_machine=m68k-ncr 11915c10afb9Smrg ;; 1192b3078addSmrg tpf) 1193b3078addSmrg basic_machine=s390x-ibm 1194b3078addSmrg os=-tpf 1195b3078addSmrg ;; 11965c10afb9Smrg udi29k) 11975c10afb9Smrg basic_machine=a29k-amd 11985c10afb9Smrg os=-udi 11995c10afb9Smrg ;; 12005c10afb9Smrg ultra3) 12015c10afb9Smrg basic_machine=a29k-nyu 12025c10afb9Smrg os=-sym1 12035c10afb9Smrg ;; 12045c10afb9Smrg v810 | necv810) 12055c10afb9Smrg basic_machine=v810-nec 12065c10afb9Smrg os=-none 12075c10afb9Smrg ;; 12085c10afb9Smrg vaxv) 12095c10afb9Smrg basic_machine=vax-dec 12105c10afb9Smrg os=-sysv 12115c10afb9Smrg ;; 12125c10afb9Smrg vms) 12135c10afb9Smrg basic_machine=vax-dec 12145c10afb9Smrg os=-vms 12155c10afb9Smrg ;; 12165c10afb9Smrg vpp*|vx|vx-*) 12175c10afb9Smrg basic_machine=f301-fujitsu 12185c10afb9Smrg ;; 12195c10afb9Smrg vxworks960) 12205c10afb9Smrg basic_machine=i960-wrs 12215c10afb9Smrg os=-vxworks 12225c10afb9Smrg ;; 12235c10afb9Smrg vxworks68) 12245c10afb9Smrg basic_machine=m68k-wrs 12255c10afb9Smrg os=-vxworks 12265c10afb9Smrg ;; 12275c10afb9Smrg vxworks29k) 12285c10afb9Smrg basic_machine=a29k-wrs 12295c10afb9Smrg os=-vxworks 12305c10afb9Smrg ;; 12315c10afb9Smrg w65*) 12325c10afb9Smrg basic_machine=w65-wdc 12335c10afb9Smrg os=-none 12345c10afb9Smrg ;; 12355c10afb9Smrg w89k-*) 12365c10afb9Smrg basic_machine=hppa1.1-winbond 12375c10afb9Smrg os=-proelf 12385c10afb9Smrg ;; 1239b3078addSmrg xbox) 1240b3078addSmrg basic_machine=i686-pc 1241b3078addSmrg os=-mingw32 1242b3078addSmrg ;; 12435c10afb9Smrg xps | xps100) 12445c10afb9Smrg basic_machine=xps100-honeywell 12455c10afb9Smrg ;; 1246cf2f63c2Smrg xscale-* | xscalee[bl]-*) 1247cf2f63c2Smrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1248cf2f63c2Smrg ;; 12495c10afb9Smrg ymp) 12505c10afb9Smrg basic_machine=ymp-cray 12515c10afb9Smrg os=-unicos 12525c10afb9Smrg ;; 12535c10afb9Smrg z8k-*-coff) 12545c10afb9Smrg basic_machine=z8k-unknown 12555c10afb9Smrg os=-sim 12565c10afb9Smrg ;; 1257b3078addSmrg z80-*-coff) 1258b3078addSmrg basic_machine=z80-unknown 1259b3078addSmrg os=-sim 1260b3078addSmrg ;; 12615c10afb9Smrg none) 12625c10afb9Smrg basic_machine=none-none 12635c10afb9Smrg os=-none 12645c10afb9Smrg ;; 12655c10afb9Smrg 12665c10afb9Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12675c10afb9Smrg# some cases the only manufacturer, in others, it is the most popular. 12685c10afb9Smrg w89k) 12695c10afb9Smrg basic_machine=hppa1.1-winbond 12705c10afb9Smrg ;; 12715c10afb9Smrg op50n) 12725c10afb9Smrg basic_machine=hppa1.1-oki 12735c10afb9Smrg ;; 12745c10afb9Smrg op60c) 12755c10afb9Smrg basic_machine=hppa1.1-oki 12765c10afb9Smrg ;; 12775c10afb9Smrg romp) 12785c10afb9Smrg basic_machine=romp-ibm 12795c10afb9Smrg ;; 1280b3078addSmrg mmix) 1281b3078addSmrg basic_machine=mmix-knuth 1282b3078addSmrg ;; 12835c10afb9Smrg rs6000) 12845c10afb9Smrg basic_machine=rs6000-ibm 12855c10afb9Smrg ;; 12865c10afb9Smrg vax) 12875c10afb9Smrg basic_machine=vax-dec 12885c10afb9Smrg ;; 12895c10afb9Smrg pdp10) 12905c10afb9Smrg # there are many clones, so DEC is not a safe bet 12915c10afb9Smrg basic_machine=pdp10-unknown 12925c10afb9Smrg ;; 12935c10afb9Smrg pdp11) 12945c10afb9Smrg basic_machine=pdp11-dec 12955c10afb9Smrg ;; 12965c10afb9Smrg we32k) 12975c10afb9Smrg basic_machine=we32k-att 12985c10afb9Smrg ;; 1299b3078addSmrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 13005c10afb9Smrg basic_machine=sh-unknown 13015c10afb9Smrg ;; 1302b3078addSmrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 13035c10afb9Smrg basic_machine=sparc-sun 13045c10afb9Smrg ;; 13055c10afb9Smrg cydra) 13065c10afb9Smrg basic_machine=cydra-cydrome 13075c10afb9Smrg ;; 13085c10afb9Smrg orion) 13095c10afb9Smrg basic_machine=orion-highlevel 13105c10afb9Smrg ;; 13115c10afb9Smrg orion105) 13125c10afb9Smrg basic_machine=clipper-highlevel 13135c10afb9Smrg ;; 13145c10afb9Smrg mac | mpw | mac-mpw) 13155c10afb9Smrg basic_machine=m68k-apple 13165c10afb9Smrg ;; 13175c10afb9Smrg pmac | pmac-mpw) 13185c10afb9Smrg basic_machine=powerpc-apple 13195c10afb9Smrg ;; 13205c10afb9Smrg *-unknown) 13215c10afb9Smrg # Make sure to match an already-canonicalized machine name. 13225c10afb9Smrg ;; 13235c10afb9Smrg *) 13245c10afb9Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 13255c10afb9Smrg exit 1 13265c10afb9Smrg ;; 13275c10afb9Smrgesac 13285c10afb9Smrg 13295c10afb9Smrg# Here we canonicalize certain aliases for manufacturers. 13305c10afb9Smrgcase $basic_machine in 13315c10afb9Smrg *-digital*) 13325c10afb9Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13335c10afb9Smrg ;; 13345c10afb9Smrg *-commodore*) 13355c10afb9Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13365c10afb9Smrg ;; 13375c10afb9Smrg *) 13385c10afb9Smrg ;; 13395c10afb9Smrgesac 13405c10afb9Smrg 13415c10afb9Smrg# Decode manufacturer-specific aliases for certain operating systems. 13425c10afb9Smrg 13435c10afb9Smrgif [ x"$os" != x"" ] 13445c10afb9Smrgthen 13455c10afb9Smrgcase $os in 1346cf2f63c2Smrg # First match some system type aliases 1347cf2f63c2Smrg # that might get confused with valid system types. 13485c10afb9Smrg # -solaris* is a basic system type, with this one exception. 1349cf2f63c2Smrg -auroraux) 1350cf2f63c2Smrg os=-auroraux 1351b3078addSmrg ;; 13525c10afb9Smrg -solaris1 | -solaris1.*) 13535c10afb9Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13545c10afb9Smrg ;; 13555c10afb9Smrg -solaris) 13565c10afb9Smrg os=-solaris2 13575c10afb9Smrg ;; 13585c10afb9Smrg -svr4*) 13595c10afb9Smrg os=-sysv4 13605c10afb9Smrg ;; 13615c10afb9Smrg -unixware*) 13625c10afb9Smrg os=-sysv4.2uw 13635c10afb9Smrg ;; 13645c10afb9Smrg -gnu/linux*) 13655c10afb9Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13665c10afb9Smrg ;; 13675c10afb9Smrg # First accept the basic system types. 13685c10afb9Smrg # The portable systems comes first. 13695c10afb9Smrg # Each alternative MUST END IN A *, to match a version number. 13705c10afb9Smrg # -sysv* is not here because it comes later, after sysvr4. 13715c10afb9Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1372b3078addSmrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1373b3078addSmrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1374cf2f63c2Smrg | -sym* | -kopensolaris* | -plan9* \ 13755c10afb9Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1376b3078addSmrg | -aos* | -aros* \ 13775c10afb9Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13785c10afb9Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1379b3078addSmrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1380cf2f63c2Smrg | -bitrig* | -openbsd* | -solidbsd* \ 1381b3078addSmrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1382b3078addSmrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13835c10afb9Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13845c10afb9Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1385b3078addSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 1386cf2f63c2Smrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1387cf2f63c2Smrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 1388cf2f63c2Smrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 1389cf2f63c2Smrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 13905c10afb9Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13915c10afb9Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13925c10afb9Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13935c10afb9Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13945c10afb9Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1395b3078addSmrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1396cf2f63c2Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) 13975c10afb9Smrg # Remember, each alternative MUST END IN *, to match a version number. 13985c10afb9Smrg ;; 13995c10afb9Smrg -qnx*) 14005c10afb9Smrg case $basic_machine in 14015c10afb9Smrg x86-* | i*86-*) 14025c10afb9Smrg ;; 14035c10afb9Smrg *) 14045c10afb9Smrg os=-nto$os 14055c10afb9Smrg ;; 14065c10afb9Smrg esac 14075c10afb9Smrg ;; 14085c10afb9Smrg -nto-qnx*) 14095c10afb9Smrg ;; 14105c10afb9Smrg -nto*) 14115c10afb9Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 14125c10afb9Smrg ;; 14135c10afb9Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1414b3078addSmrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 14155c10afb9Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 14165c10afb9Smrg ;; 14175c10afb9Smrg -mac*) 14185c10afb9Smrg os=`echo $os | sed -e 's|mac|macos|'` 14195c10afb9Smrg ;; 1420b3078addSmrg -linux-dietlibc) 1421b3078addSmrg os=-linux-dietlibc 1422b3078addSmrg ;; 14235c10afb9Smrg -linux*) 14245c10afb9Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 14255c10afb9Smrg ;; 14265c10afb9Smrg -sunos5*) 14275c10afb9Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 14285c10afb9Smrg ;; 14295c10afb9Smrg -sunos6*) 14305c10afb9Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 14315c10afb9Smrg ;; 14325c10afb9Smrg -opened*) 14335c10afb9Smrg os=-openedition 14345c10afb9Smrg ;; 1435cf2f63c2Smrg -os400*) 1436b3078addSmrg os=-os400 1437b3078addSmrg ;; 14385c10afb9Smrg -wince*) 14395c10afb9Smrg os=-wince 14405c10afb9Smrg ;; 14415c10afb9Smrg -osfrose*) 14425c10afb9Smrg os=-osfrose 14435c10afb9Smrg ;; 14445c10afb9Smrg -osf*) 14455c10afb9Smrg os=-osf 14465c10afb9Smrg ;; 14475c10afb9Smrg -utek*) 14485c10afb9Smrg os=-bsd 14495c10afb9Smrg ;; 14505c10afb9Smrg -dynix*) 14515c10afb9Smrg os=-bsd 14525c10afb9Smrg ;; 14535c10afb9Smrg -acis*) 14545c10afb9Smrg os=-aos 14555c10afb9Smrg ;; 14565c10afb9Smrg -atheos*) 14575c10afb9Smrg os=-atheos 14585c10afb9Smrg ;; 1459b3078addSmrg -syllable*) 1460b3078addSmrg os=-syllable 1461b3078addSmrg ;; 14625c10afb9Smrg -386bsd) 14635c10afb9Smrg os=-bsd 14645c10afb9Smrg ;; 14655c10afb9Smrg -ctix* | -uts*) 14665c10afb9Smrg os=-sysv 14675c10afb9Smrg ;; 14685c10afb9Smrg -nova*) 14695c10afb9Smrg os=-rtmk-nova 14705c10afb9Smrg ;; 14715c10afb9Smrg -ns2 ) 14725c10afb9Smrg os=-nextstep2 14735c10afb9Smrg ;; 14745c10afb9Smrg -nsk*) 14755c10afb9Smrg os=-nsk 14765c10afb9Smrg ;; 14775c10afb9Smrg # Preserve the version number of sinix5. 14785c10afb9Smrg -sinix5.*) 14795c10afb9Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14805c10afb9Smrg ;; 14815c10afb9Smrg -sinix*) 14825c10afb9Smrg os=-sysv4 14835c10afb9Smrg ;; 1484cf2f63c2Smrg -tpf*) 1485b3078addSmrg os=-tpf 1486b3078addSmrg ;; 14875c10afb9Smrg -triton*) 14885c10afb9Smrg os=-sysv3 14895c10afb9Smrg ;; 14905c10afb9Smrg -oss*) 14915c10afb9Smrg os=-sysv3 14925c10afb9Smrg ;; 14935c10afb9Smrg -svr4) 14945c10afb9Smrg os=-sysv4 14955c10afb9Smrg ;; 14965c10afb9Smrg -svr3) 14975c10afb9Smrg os=-sysv3 14985c10afb9Smrg ;; 14995c10afb9Smrg -sysvr4) 15005c10afb9Smrg os=-sysv4 15015c10afb9Smrg ;; 15025c10afb9Smrg # This must come after -sysvr4. 15035c10afb9Smrg -sysv*) 15045c10afb9Smrg ;; 15055c10afb9Smrg -ose*) 15065c10afb9Smrg os=-ose 15075c10afb9Smrg ;; 15085c10afb9Smrg -es1800*) 15095c10afb9Smrg os=-ose 15105c10afb9Smrg ;; 15115c10afb9Smrg -xenix) 15125c10afb9Smrg os=-xenix 15135c10afb9Smrg ;; 15145c10afb9Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 15155c10afb9Smrg os=-mint 15165c10afb9Smrg ;; 15175c10afb9Smrg -aros*) 15185c10afb9Smrg os=-aros 15195c10afb9Smrg ;; 1520b3078addSmrg -zvmoe) 1521b3078addSmrg os=-zvmoe 1522b3078addSmrg ;; 1523b3078addSmrg -dicos*) 1524b3078addSmrg os=-dicos 1525b3078addSmrg ;; 1526cf2f63c2Smrg -nacl*) 1527cf2f63c2Smrg ;; 15285c10afb9Smrg -none) 15295c10afb9Smrg ;; 15305c10afb9Smrg *) 15315c10afb9Smrg # Get rid of the `-' at the beginning of $os. 15325c10afb9Smrg os=`echo $os | sed 's/[^-]*-//'` 15335c10afb9Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15345c10afb9Smrg exit 1 15355c10afb9Smrg ;; 15365c10afb9Smrgesac 15375c10afb9Smrgelse 15385c10afb9Smrg 15395c10afb9Smrg# Here we handle the default operating systems that come with various machines. 15405c10afb9Smrg# The value should be what the vendor currently ships out the door with their 15415c10afb9Smrg# machine or put another way, the most popular os provided with the machine. 15425c10afb9Smrg 15435c10afb9Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15445c10afb9Smrg# "-sun"), then you have to tell the case statement up towards the top 15455c10afb9Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15465c10afb9Smrg# will signal an error saying that MANUFACTURER isn't an operating 15475c10afb9Smrg# system, and we'll never get to this point. 15485c10afb9Smrg 15495c10afb9Smrgcase $basic_machine in 1550cf2f63c2Smrg score-*) 1551b3078addSmrg os=-elf 1552b3078addSmrg ;; 1553cf2f63c2Smrg spu-*) 1554b3078addSmrg os=-elf 1555b3078addSmrg ;; 15565c10afb9Smrg *-acorn) 15575c10afb9Smrg os=-riscix1.2 15585c10afb9Smrg ;; 15595c10afb9Smrg arm*-rebel) 15605c10afb9Smrg os=-linux 15615c10afb9Smrg ;; 15625c10afb9Smrg arm*-semi) 15635c10afb9Smrg os=-aout 15645c10afb9Smrg ;; 1565cf2f63c2Smrg c4x-* | tic4x-*) 1566cf2f63c2Smrg os=-coff 1567cf2f63c2Smrg ;; 1568cf2f63c2Smrg c8051-*) 1569cf2f63c2Smrg os=-elf 1570cf2f63c2Smrg ;; 1571cf2f63c2Smrg hexagon-*) 1572cf2f63c2Smrg os=-elf 1573b3078addSmrg ;; 1574b3078addSmrg tic54x-*) 1575b3078addSmrg os=-coff 1576b3078addSmrg ;; 1577b3078addSmrg tic55x-*) 1578b3078addSmrg os=-coff 1579b3078addSmrg ;; 1580b3078addSmrg tic6x-*) 15815c10afb9Smrg os=-coff 15825c10afb9Smrg ;; 15835c10afb9Smrg # This must come before the *-dec entry. 15845c10afb9Smrg pdp10-*) 15855c10afb9Smrg os=-tops20 15865c10afb9Smrg ;; 15875c10afb9Smrg pdp11-*) 15885c10afb9Smrg os=-none 15895c10afb9Smrg ;; 15905c10afb9Smrg *-dec | vax-*) 15915c10afb9Smrg os=-ultrix4.2 15925c10afb9Smrg ;; 15935c10afb9Smrg m68*-apollo) 15945c10afb9Smrg os=-domain 15955c10afb9Smrg ;; 15965c10afb9Smrg i386-sun) 15975c10afb9Smrg os=-sunos4.0.2 15985c10afb9Smrg ;; 15995c10afb9Smrg m68000-sun) 16005c10afb9Smrg os=-sunos3 16015c10afb9Smrg ;; 16025c10afb9Smrg m68*-cisco) 16035c10afb9Smrg os=-aout 16045c10afb9Smrg ;; 1605cf2f63c2Smrg mep-*) 1606b3078addSmrg os=-elf 1607b3078addSmrg ;; 16085c10afb9Smrg mips*-cisco) 16095c10afb9Smrg os=-elf 16105c10afb9Smrg ;; 16115c10afb9Smrg mips*-*) 16125c10afb9Smrg os=-elf 16135c10afb9Smrg ;; 16145c10afb9Smrg or32-*) 16155c10afb9Smrg os=-coff 16165c10afb9Smrg ;; 16175c10afb9Smrg *-tti) # must be before sparc entry or we get the wrong os. 16185c10afb9Smrg os=-sysv3 16195c10afb9Smrg ;; 16205c10afb9Smrg sparc-* | *-sun) 16215c10afb9Smrg os=-sunos4.1.1 16225c10afb9Smrg ;; 16235c10afb9Smrg *-be) 16245c10afb9Smrg os=-beos 16255c10afb9Smrg ;; 1626b3078addSmrg *-haiku) 1627b3078addSmrg os=-haiku 1628b3078addSmrg ;; 16295c10afb9Smrg *-ibm) 16305c10afb9Smrg os=-aix 16315c10afb9Smrg ;; 1632cf2f63c2Smrg *-knuth) 1633b3078addSmrg os=-mmixware 1634b3078addSmrg ;; 16355c10afb9Smrg *-wec) 16365c10afb9Smrg os=-proelf 16375c10afb9Smrg ;; 16385c10afb9Smrg *-winbond) 16395c10afb9Smrg os=-proelf 16405c10afb9Smrg ;; 16415c10afb9Smrg *-oki) 16425c10afb9Smrg os=-proelf 16435c10afb9Smrg ;; 16445c10afb9Smrg *-hp) 16455c10afb9Smrg os=-hpux 16465c10afb9Smrg ;; 16475c10afb9Smrg *-hitachi) 16485c10afb9Smrg os=-hiux 16495c10afb9Smrg ;; 16505c10afb9Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16515c10afb9Smrg os=-sysv 16525c10afb9Smrg ;; 16535c10afb9Smrg *-cbm) 16545c10afb9Smrg os=-amigaos 16555c10afb9Smrg ;; 16565c10afb9Smrg *-dg) 16575c10afb9Smrg os=-dgux 16585c10afb9Smrg ;; 16595c10afb9Smrg *-dolphin) 16605c10afb9Smrg os=-sysv3 16615c10afb9Smrg ;; 16625c10afb9Smrg m68k-ccur) 16635c10afb9Smrg os=-rtu 16645c10afb9Smrg ;; 16655c10afb9Smrg m88k-omron*) 16665c10afb9Smrg os=-luna 16675c10afb9Smrg ;; 16685c10afb9Smrg *-next ) 16695c10afb9Smrg os=-nextstep 16705c10afb9Smrg ;; 16715c10afb9Smrg *-sequent) 16725c10afb9Smrg os=-ptx 16735c10afb9Smrg ;; 16745c10afb9Smrg *-crds) 16755c10afb9Smrg os=-unos 16765c10afb9Smrg ;; 16775c10afb9Smrg *-ns) 16785c10afb9Smrg os=-genix 16795c10afb9Smrg ;; 16805c10afb9Smrg i370-*) 16815c10afb9Smrg os=-mvs 16825c10afb9Smrg ;; 16835c10afb9Smrg *-next) 16845c10afb9Smrg os=-nextstep3 16855c10afb9Smrg ;; 16865c10afb9Smrg *-gould) 16875c10afb9Smrg os=-sysv 16885c10afb9Smrg ;; 16895c10afb9Smrg *-highlevel) 16905c10afb9Smrg os=-bsd 16915c10afb9Smrg ;; 16925c10afb9Smrg *-encore) 16935c10afb9Smrg os=-bsd 16945c10afb9Smrg ;; 16955c10afb9Smrg *-sgi) 16965c10afb9Smrg os=-irix 16975c10afb9Smrg ;; 16985c10afb9Smrg *-siemens) 16995c10afb9Smrg os=-sysv4 17005c10afb9Smrg ;; 17015c10afb9Smrg *-masscomp) 17025c10afb9Smrg os=-rtu 17035c10afb9Smrg ;; 17045c10afb9Smrg f30[01]-fujitsu | f700-fujitsu) 17055c10afb9Smrg os=-uxpv 17065c10afb9Smrg ;; 17075c10afb9Smrg *-rom68k) 17085c10afb9Smrg os=-coff 17095c10afb9Smrg ;; 17105c10afb9Smrg *-*bug) 17115c10afb9Smrg os=-coff 17125c10afb9Smrg ;; 17135c10afb9Smrg *-apple) 17145c10afb9Smrg os=-macos 17155c10afb9Smrg ;; 17165c10afb9Smrg *-atari*) 17175c10afb9Smrg os=-mint 17185c10afb9Smrg ;; 17195c10afb9Smrg *) 17205c10afb9Smrg os=-none 17215c10afb9Smrg ;; 17225c10afb9Smrgesac 17235c10afb9Smrgfi 17245c10afb9Smrg 17255c10afb9Smrg# Here we handle the case where we know the os, and the CPU type, but not the 17265c10afb9Smrg# manufacturer. We pick the logical manufacturer. 17275c10afb9Smrgvendor=unknown 17285c10afb9Smrgcase $basic_machine in 17295c10afb9Smrg *-unknown) 17305c10afb9Smrg case $os in 17315c10afb9Smrg -riscix*) 17325c10afb9Smrg vendor=acorn 17335c10afb9Smrg ;; 17345c10afb9Smrg -sunos*) 17355c10afb9Smrg vendor=sun 17365c10afb9Smrg ;; 1737b3078addSmrg -cnk*|-aix*) 17385c10afb9Smrg vendor=ibm 17395c10afb9Smrg ;; 17405c10afb9Smrg -beos*) 17415c10afb9Smrg vendor=be 17425c10afb9Smrg ;; 17435c10afb9Smrg -hpux*) 17445c10afb9Smrg vendor=hp 17455c10afb9Smrg ;; 17465c10afb9Smrg -mpeix*) 17475c10afb9Smrg vendor=hp 17485c10afb9Smrg ;; 17495c10afb9Smrg -hiux*) 17505c10afb9Smrg vendor=hitachi 17515c10afb9Smrg ;; 17525c10afb9Smrg -unos*) 17535c10afb9Smrg vendor=crds 17545c10afb9Smrg ;; 17555c10afb9Smrg -dgux*) 17565c10afb9Smrg vendor=dg 17575c10afb9Smrg ;; 17585c10afb9Smrg -luna*) 17595c10afb9Smrg vendor=omron 17605c10afb9Smrg ;; 17615c10afb9Smrg -genix*) 17625c10afb9Smrg vendor=ns 17635c10afb9Smrg ;; 17645c10afb9Smrg -mvs* | -opened*) 17655c10afb9Smrg vendor=ibm 17665c10afb9Smrg ;; 1767b3078addSmrg -os400*) 1768b3078addSmrg vendor=ibm 1769b3078addSmrg ;; 17705c10afb9Smrg -ptx*) 17715c10afb9Smrg vendor=sequent 17725c10afb9Smrg ;; 1773b3078addSmrg -tpf*) 1774b3078addSmrg vendor=ibm 1775b3078addSmrg ;; 17765c10afb9Smrg -vxsim* | -vxworks* | -windiss*) 17775c10afb9Smrg vendor=wrs 17785c10afb9Smrg ;; 17795c10afb9Smrg -aux*) 17805c10afb9Smrg vendor=apple 17815c10afb9Smrg ;; 17825c10afb9Smrg -hms*) 17835c10afb9Smrg vendor=hitachi 17845c10afb9Smrg ;; 17855c10afb9Smrg -mpw* | -macos*) 17865c10afb9Smrg vendor=apple 17875c10afb9Smrg ;; 17885c10afb9Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17895c10afb9Smrg vendor=atari 17905c10afb9Smrg ;; 17915c10afb9Smrg -vos*) 17925c10afb9Smrg vendor=stratus 17935c10afb9Smrg ;; 17945c10afb9Smrg esac 17955c10afb9Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17965c10afb9Smrg ;; 17975c10afb9Smrgesac 17985c10afb9Smrg 17995c10afb9Smrgecho $basic_machine$os 1800b3078addSmrgexit 18015c10afb9Smrg 18025c10afb9Smrg# Local variables: 18035c10afb9Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 18045c10afb9Smrg# time-stamp-start: "timestamp='" 18055c10afb9Smrg# time-stamp-format: "%:y-%02m-%02d" 18065c10afb9Smrg# time-stamp-end: "'" 18075c10afb9Smrg# End: 1808