config.sub revision 19d64aee
14d9b34d9Smrg#! /bin/sh 24d9b34d9Smrg# Configuration validation subroutine script. 319d64aeeSmrg# Copyright 1992-2014 Free Software Foundation, Inc. 44d9b34d9Smrg 519d64aeeSmrgtimestamp='2014-12-03' 64d9b34d9Smrg 719d64aeeSmrg# This file is free software; you can redistribute it and/or modify it 819d64aeeSmrg# under the terms of the GNU General Public License as published by 919d64aeeSmrg# the Free Software Foundation; either version 3 of the License, or 104d9b34d9Smrg# (at your option) any later version. 114d9b34d9Smrg# 1219d64aeeSmrg# This program is distributed in the hope that it will be useful, but 1319d64aeeSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1419d64aeeSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1519d64aeeSmrg# General Public License for more details. 164d9b34d9Smrg# 174d9b34d9Smrg# You should have received a copy of the GNU General Public License 1819d64aeeSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 194d9b34d9Smrg# 204d9b34d9Smrg# As a special exception to the GNU General Public License, if you 214d9b34d9Smrg# distribute this file as part of a program that contains a 224d9b34d9Smrg# configuration script generated by Autoconf, you may include it under 2319d64aeeSmrg# the same distribution terms that you use for the rest of that 2419d64aeeSmrg# program. This Exception is an additional permission under section 7 2519d64aeeSmrg# of the GNU General Public License, version 3 ("GPLv3"). 264d9b34d9Smrg 274d9b34d9Smrg 2819d64aeeSmrg# Please send patches to <config-patches@gnu.org>. 294d9b34d9Smrg# 304d9b34d9Smrg# Configuration subroutine to validate and canonicalize a configuration type. 314d9b34d9Smrg# Supply the specified configuration type as an argument. 324d9b34d9Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 334d9b34d9Smrg# Otherwise, we print the canonical config type on stdout and succeed. 344d9b34d9Smrg 358512f934Smrg# You can get the latest version of this script from: 368512f934Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 378512f934Smrg 384d9b34d9Smrg# This file is supposed to be the same for all GNU packages 394d9b34d9Smrg# and recognize all the CPU types, system types and aliases 404d9b34d9Smrg# that are meaningful with *any* GNU software. 414d9b34d9Smrg# Each package is responsible for reporting which valid configurations 424d9b34d9Smrg# it does not support. The user should be able to distinguish 434d9b34d9Smrg# a failure to support a valid configuration from a meaningless 444d9b34d9Smrg# configuration. 454d9b34d9Smrg 464d9b34d9Smrg# The goal of this file is to map all the various variations of a given 474d9b34d9Smrg# machine specification into a single specification in the form: 484d9b34d9Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 494d9b34d9Smrg# or in some cases, the newer four-part form: 504d9b34d9Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 514d9b34d9Smrg# It is wrong to echo any other type of specification. 524d9b34d9Smrg 534d9b34d9Smrgme=`echo "$0" | sed -e 's,.*/,,'` 544d9b34d9Smrg 554d9b34d9Smrgusage="\ 564d9b34d9SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 574d9b34d9Smrg $0 [OPTION] ALIAS 584d9b34d9Smrg 594d9b34d9SmrgCanonicalize a configuration name. 604d9b34d9Smrg 614d9b34d9SmrgOperation modes: 624d9b34d9Smrg -h, --help print this help, then exit 634d9b34d9Smrg -t, --time-stamp print date of last modification, then exit 644d9b34d9Smrg -v, --version print version number, then exit 654d9b34d9Smrg 664d9b34d9SmrgReport bugs and patches to <config-patches@gnu.org>." 674d9b34d9Smrg 684d9b34d9Smrgversion="\ 694d9b34d9SmrgGNU config.sub ($timestamp) 704d9b34d9Smrg 7119d64aeeSmrgCopyright 1992-2014 Free Software Foundation, Inc. 724d9b34d9Smrg 734d9b34d9SmrgThis is free software; see the source for copying conditions. There is NO 744d9b34d9Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 754d9b34d9Smrg 764d9b34d9Smrghelp=" 774d9b34d9SmrgTry \`$me --help' for more information." 784d9b34d9Smrg 794d9b34d9Smrg# Parse command line 804d9b34d9Smrgwhile test $# -gt 0 ; do 814d9b34d9Smrg case $1 in 824d9b34d9Smrg --time-stamp | --time* | -t ) 834d9b34d9Smrg echo "$timestamp" ; exit ;; 844d9b34d9Smrg --version | -v ) 854d9b34d9Smrg echo "$version" ; exit ;; 864d9b34d9Smrg --help | --h* | -h ) 874d9b34d9Smrg echo "$usage"; exit ;; 884d9b34d9Smrg -- ) # Stop option processing 894d9b34d9Smrg shift; break ;; 904d9b34d9Smrg - ) # Use stdin as input. 914d9b34d9Smrg break ;; 924d9b34d9Smrg -* ) 934d9b34d9Smrg echo "$me: invalid option $1$help" 944d9b34d9Smrg exit 1 ;; 954d9b34d9Smrg 964d9b34d9Smrg *local*) 974d9b34d9Smrg # First pass through any local machine types. 984d9b34d9Smrg echo $1 994d9b34d9Smrg exit ;; 1004d9b34d9Smrg 1014d9b34d9Smrg * ) 1024d9b34d9Smrg break ;; 1034d9b34d9Smrg esac 1044d9b34d9Smrgdone 1054d9b34d9Smrg 1064d9b34d9Smrgcase $# in 1074d9b34d9Smrg 0) echo "$me: missing argument$help" >&2 1084d9b34d9Smrg exit 1;; 1094d9b34d9Smrg 1) ;; 1104d9b34d9Smrg *) echo "$me: too many arguments$help" >&2 1114d9b34d9Smrg exit 1;; 1124d9b34d9Smrgesac 1134d9b34d9Smrg 1144d9b34d9Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 1154d9b34d9Smrg# Here we must recognize all the valid KERNEL-OS combinations. 1164d9b34d9Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 1174d9b34d9Smrgcase $maybe_os in 11812e1d9cbSmrg nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 11919d64aeeSmrg linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 12012e1d9cbSmrg knetbsd*-gnu* | netbsd*-gnu* | \ 1218512f934Smrg kopensolaris*-gnu* | \ 1224d9b34d9Smrg storm-chaos* | os2-emx* | rtmk-nova*) 1234d9b34d9Smrg os=-$maybe_os 1244d9b34d9Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 1254d9b34d9Smrg ;; 12619d64aeeSmrg android-linux) 12719d64aeeSmrg os=-linux-android 12819d64aeeSmrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 12919d64aeeSmrg ;; 1304d9b34d9Smrg *) 1314d9b34d9Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 1324d9b34d9Smrg if [ $basic_machine != $1 ] 1334d9b34d9Smrg then os=`echo $1 | sed 's/.*-/-/'` 1344d9b34d9Smrg else os=; fi 1354d9b34d9Smrg ;; 1364d9b34d9Smrgesac 1374d9b34d9Smrg 1384d9b34d9Smrg### Let's recognize common machines as not being operating systems so 1394d9b34d9Smrg### that things like config.sub decstation-3100 work. We also 1404d9b34d9Smrg### recognize some manufacturers as not being operating systems, so we 1414d9b34d9Smrg### can provide default operating systems below. 1424d9b34d9Smrgcase $os in 1434d9b34d9Smrg -sun*os*) 1444d9b34d9Smrg # Prevent following clause from handling this invalid input. 1454d9b34d9Smrg ;; 1464d9b34d9Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 1474d9b34d9Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 1484d9b34d9Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 1494d9b34d9Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 1504d9b34d9Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 1514d9b34d9Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 15219d64aeeSmrg -apple | -axis | -knuth | -cray | -microblaze*) 1534d9b34d9Smrg os= 1544d9b34d9Smrg basic_machine=$1 1554d9b34d9Smrg ;; 156498372abSmrg -bluegene*) 157498372abSmrg os=-cnk 1588512f934Smrg ;; 1594d9b34d9Smrg -sim | -cisco | -oki | -wec | -winbond) 1604d9b34d9Smrg os= 1614d9b34d9Smrg basic_machine=$1 1624d9b34d9Smrg ;; 1634d9b34d9Smrg -scout) 1644d9b34d9Smrg ;; 1654d9b34d9Smrg -wrs) 1664d9b34d9Smrg os=-vxworks 1674d9b34d9Smrg basic_machine=$1 1684d9b34d9Smrg ;; 1694d9b34d9Smrg -chorusos*) 1704d9b34d9Smrg os=-chorusos 1714d9b34d9Smrg basic_machine=$1 1724d9b34d9Smrg ;; 173498372abSmrg -chorusrdb) 174498372abSmrg os=-chorusrdb 1754d9b34d9Smrg basic_machine=$1 176498372abSmrg ;; 1774d9b34d9Smrg -hiux*) 1784d9b34d9Smrg os=-hiuxwe2 1794d9b34d9Smrg ;; 1804d9b34d9Smrg -sco6) 1814d9b34d9Smrg os=-sco5v6 1824d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1834d9b34d9Smrg ;; 1844d9b34d9Smrg -sco5) 1854d9b34d9Smrg os=-sco3.2v5 1864d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1874d9b34d9Smrg ;; 1884d9b34d9Smrg -sco4) 1894d9b34d9Smrg os=-sco3.2v4 1904d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1914d9b34d9Smrg ;; 1924d9b34d9Smrg -sco3.2.[4-9]*) 1934d9b34d9Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 1944d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1954d9b34d9Smrg ;; 1964d9b34d9Smrg -sco3.2v[4-9]*) 1974d9b34d9Smrg # Don't forget version if it is 3.2v4 or newer. 1984d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1994d9b34d9Smrg ;; 2004d9b34d9Smrg -sco5v6*) 2014d9b34d9Smrg # Don't forget version if it is 3.2v4 or newer. 2024d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2034d9b34d9Smrg ;; 2044d9b34d9Smrg -sco*) 2054d9b34d9Smrg os=-sco3.2v2 2064d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2074d9b34d9Smrg ;; 2084d9b34d9Smrg -udk*) 2094d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2104d9b34d9Smrg ;; 2114d9b34d9Smrg -isc) 2124d9b34d9Smrg os=-isc2.2 2134d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2144d9b34d9Smrg ;; 2154d9b34d9Smrg -clix*) 2164d9b34d9Smrg basic_machine=clipper-intergraph 2174d9b34d9Smrg ;; 2184d9b34d9Smrg -isc*) 2194d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2204d9b34d9Smrg ;; 22119d64aeeSmrg -lynx*178) 22219d64aeeSmrg os=-lynxos178 22319d64aeeSmrg ;; 22419d64aeeSmrg -lynx*5) 22519d64aeeSmrg os=-lynxos5 22619d64aeeSmrg ;; 2274d9b34d9Smrg -lynx*) 2284d9b34d9Smrg os=-lynxos 2294d9b34d9Smrg ;; 2304d9b34d9Smrg -ptx*) 2314d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 2324d9b34d9Smrg ;; 2334d9b34d9Smrg -windowsnt*) 2344d9b34d9Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 2354d9b34d9Smrg ;; 2364d9b34d9Smrg -psos*) 2374d9b34d9Smrg os=-psos 2384d9b34d9Smrg ;; 2394d9b34d9Smrg -mint | -mint[0-9]*) 2404d9b34d9Smrg basic_machine=m68k-atari 2414d9b34d9Smrg os=-mint 2424d9b34d9Smrg ;; 2434d9b34d9Smrgesac 2444d9b34d9Smrg 2454d9b34d9Smrg# Decode aliases for certain CPU-COMPANY combinations. 2464d9b34d9Smrgcase $basic_machine in 2474d9b34d9Smrg # Recognize the basic CPU types without company name. 2484d9b34d9Smrg # Some are omitted here because they have special meanings below. 2494d9b34d9Smrg 1750a | 580 \ 2504d9b34d9Smrg | a29k \ 25119d64aeeSmrg | aarch64 | aarch64_be \ 2524d9b34d9Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 2534d9b34d9Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2544d9b34d9Smrg | am33_2.0 \ 25519d64aeeSmrg | arc | arceb \ 25619d64aeeSmrg | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 25719d64aeeSmrg | avr | avr32 \ 25819d64aeeSmrg | be32 | be64 \ 2594d9b34d9Smrg | bfin \ 26019d64aeeSmrg | c4x | c8051 | clipper \ 2614d9b34d9Smrg | d10v | d30v | dlx | dsp16xx \ 262498372abSmrg | epiphany \ 2638512f934Smrg | fido | fr30 | frv \ 2644d9b34d9Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 265498372abSmrg | hexagon \ 2664d9b34d9Smrg | i370 | i860 | i960 | ia64 \ 2674d9b34d9Smrg | ip2k | iq2000 \ 26819d64aeeSmrg | k1om \ 269498372abSmrg | le32 | le64 \ 2708512f934Smrg | lm32 \ 2714d9b34d9Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 27219d64aeeSmrg | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 2734d9b34d9Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 2744d9b34d9Smrg | mips16 \ 2754d9b34d9Smrg | mips64 | mips64el \ 2768512f934Smrg | mips64octeon | mips64octeonel \ 2774d9b34d9Smrg | mips64orion | mips64orionel \ 2788512f934Smrg | mips64r5900 | mips64r5900el \ 2798512f934Smrg | mips64vr | mips64vrel \ 2804d9b34d9Smrg | mips64vr4100 | mips64vr4100el \ 2814d9b34d9Smrg | mips64vr4300 | mips64vr4300el \ 2824d9b34d9Smrg | mips64vr5000 | mips64vr5000el \ 2834d9b34d9Smrg | mips64vr5900 | mips64vr5900el \ 2844d9b34d9Smrg | mipsisa32 | mipsisa32el \ 2854d9b34d9Smrg | mipsisa32r2 | mipsisa32r2el \ 28619d64aeeSmrg | mipsisa32r6 | mipsisa32r6el \ 2874d9b34d9Smrg | mipsisa64 | mipsisa64el \ 2884d9b34d9Smrg | mipsisa64r2 | mipsisa64r2el \ 28919d64aeeSmrg | mipsisa64r6 | mipsisa64r6el \ 2904d9b34d9Smrg | mipsisa64sb1 | mipsisa64sb1el \ 2914d9b34d9Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 29219d64aeeSmrg | mipsr5900 | mipsr5900el \ 2934d9b34d9Smrg | mipstx39 | mipstx39el \ 2944d9b34d9Smrg | mn10200 | mn10300 \ 2958512f934Smrg | moxie \ 2964d9b34d9Smrg | mt \ 2974d9b34d9Smrg | msp430 \ 29812e1d9cbSmrg | nds32 | nds32le | nds32be \ 29919d64aeeSmrg | nios | nios2 | nios2eb | nios2el \ 3004d9b34d9Smrg | ns16k | ns32k \ 30119d64aeeSmrg | open8 | or1k | or1knd | or32 \ 3024d9b34d9Smrg | pdp10 | pdp11 | pj | pjl \ 303498372abSmrg | powerpc | powerpc64 | powerpc64le | powerpcle \ 3044d9b34d9Smrg | pyramid \ 30519d64aeeSmrg | riscv32 | riscv64 \ 306498372abSmrg | rl78 | rx \ 3074d9b34d9Smrg | score \ 3088512f934Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 3094d9b34d9Smrg | sh64 | sh64le \ 3104d9b34d9Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 3114d9b34d9Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 312498372abSmrg | spu \ 313498372abSmrg | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 3148512f934Smrg | ubicom32 \ 315498372abSmrg | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 31619d64aeeSmrg | visium \ 3174d9b34d9Smrg | we32k \ 318498372abSmrg | x86 | xc16x | xstormy16 | xtensa \ 3198512f934Smrg | z8k | z80) 3204d9b34d9Smrg basic_machine=$basic_machine-unknown 3214d9b34d9Smrg ;; 32212e1d9cbSmrg c54x) 32312e1d9cbSmrg basic_machine=tic54x-unknown 32412e1d9cbSmrg ;; 32512e1d9cbSmrg c55x) 32612e1d9cbSmrg basic_machine=tic55x-unknown 32712e1d9cbSmrg ;; 32812e1d9cbSmrg c6x) 32912e1d9cbSmrg basic_machine=tic6x-unknown 33012e1d9cbSmrg ;; 33119d64aeeSmrg leon|leon[3-9]) 33219d64aeeSmrg basic_machine=sparc-$basic_machine 33319d64aeeSmrg ;; 33419d64aeeSmrg m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 3354d9b34d9Smrg basic_machine=$basic_machine-unknown 3364d9b34d9Smrg os=-none 3374d9b34d9Smrg ;; 3384d9b34d9Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 3394d9b34d9Smrg ;; 3404d9b34d9Smrg ms1) 3414d9b34d9Smrg basic_machine=mt-unknown 3424d9b34d9Smrg ;; 3434d9b34d9Smrg 344498372abSmrg strongarm | thumb | xscale) 345498372abSmrg basic_machine=arm-unknown 346498372abSmrg ;; 34719d64aeeSmrg xgate) 34819d64aeeSmrg basic_machine=$basic_machine-unknown 34919d64aeeSmrg os=-none 35019d64aeeSmrg ;; 351498372abSmrg xscaleeb) 352498372abSmrg basic_machine=armeb-unknown 353498372abSmrg ;; 354498372abSmrg 355498372abSmrg xscaleel) 356498372abSmrg basic_machine=armel-unknown 357498372abSmrg ;; 358498372abSmrg 3594d9b34d9Smrg # We use `pc' rather than `unknown' 3604d9b34d9Smrg # because (1) that's what they normally are, and 3614d9b34d9Smrg # (2) the word "unknown" tends to confuse beginning users. 3624d9b34d9Smrg i*86 | x86_64) 3634d9b34d9Smrg basic_machine=$basic_machine-pc 3644d9b34d9Smrg ;; 3654d9b34d9Smrg # Object if more than one company name word. 3664d9b34d9Smrg *-*-*) 3674d9b34d9Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 3684d9b34d9Smrg exit 1 3694d9b34d9Smrg ;; 3704d9b34d9Smrg # Recognize the basic CPU types with company name. 3714d9b34d9Smrg 580-* \ 3724d9b34d9Smrg | a29k-* \ 37319d64aeeSmrg | aarch64-* | aarch64_be-* \ 3744d9b34d9Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 3754d9b34d9Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 37619d64aeeSmrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 3774d9b34d9Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3784d9b34d9Smrg | avr-* | avr32-* \ 379498372abSmrg | be32-* | be64-* \ 3804d9b34d9Smrg | bfin-* | bs2000-* \ 38112e1d9cbSmrg | c[123]* | c30-* | [cjt]90-* | c4x-* \ 38219d64aeeSmrg | c8051-* | clipper-* | craynv-* | cydra-* \ 3834d9b34d9Smrg | d10v-* | d30v-* | dlx-* \ 3844d9b34d9Smrg | elxsi-* \ 3858512f934Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 3864d9b34d9Smrg | h8300-* | h8500-* \ 3874d9b34d9Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 388498372abSmrg | hexagon-* \ 3894d9b34d9Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3904d9b34d9Smrg | ip2k-* | iq2000-* \ 39119d64aeeSmrg | k1om-* \ 392498372abSmrg | le32-* | le64-* \ 3938512f934Smrg | lm32-* \ 3944d9b34d9Smrg | m32c-* | m32r-* | m32rle-* \ 3954d9b34d9Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 39619d64aeeSmrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 39719d64aeeSmrg | microblaze-* | microblazeel-* \ 3984d9b34d9Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 3994d9b34d9Smrg | mips16-* \ 4004d9b34d9Smrg | mips64-* | mips64el-* \ 4018512f934Smrg | mips64octeon-* | mips64octeonel-* \ 4024d9b34d9Smrg | mips64orion-* | mips64orionel-* \ 4038512f934Smrg | mips64r5900-* | mips64r5900el-* \ 4048512f934Smrg | mips64vr-* | mips64vrel-* \ 4054d9b34d9Smrg | mips64vr4100-* | mips64vr4100el-* \ 4064d9b34d9Smrg | mips64vr4300-* | mips64vr4300el-* \ 4074d9b34d9Smrg | mips64vr5000-* | mips64vr5000el-* \ 4084d9b34d9Smrg | mips64vr5900-* | mips64vr5900el-* \ 4094d9b34d9Smrg | mipsisa32-* | mipsisa32el-* \ 4104d9b34d9Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 41119d64aeeSmrg | mipsisa32r6-* | mipsisa32r6el-* \ 4124d9b34d9Smrg | mipsisa64-* | mipsisa64el-* \ 4134d9b34d9Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 41419d64aeeSmrg | mipsisa64r6-* | mipsisa64r6el-* \ 4154d9b34d9Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 4164d9b34d9Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 41719d64aeeSmrg | mipsr5900-* | mipsr5900el-* \ 4184d9b34d9Smrg | mipstx39-* | mipstx39el-* \ 4194d9b34d9Smrg | mmix-* \ 4204d9b34d9Smrg | mt-* \ 4214d9b34d9Smrg | msp430-* \ 42212e1d9cbSmrg | nds32-* | nds32le-* | nds32be-* \ 42319d64aeeSmrg | nios-* | nios2-* | nios2eb-* | nios2el-* \ 4244d9b34d9Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 425498372abSmrg | open8-* \ 42619d64aeeSmrg | or1k*-* \ 4274d9b34d9Smrg | orion-* \ 4284d9b34d9Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 429498372abSmrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 4304d9b34d9Smrg | pyramid-* \ 431498372abSmrg | rl78-* | romp-* | rs6000-* | rx-* \ 4328512f934Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 4334d9b34d9Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 4344d9b34d9Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 4354d9b34d9Smrg | sparclite-* \ 436498372abSmrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 437498372abSmrg | tahoe-* \ 43812e1d9cbSmrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 439498372abSmrg | tile*-* \ 4404d9b34d9Smrg | tron-* \ 4418512f934Smrg | ubicom32-* \ 442498372abSmrg | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 443498372abSmrg | vax-* \ 44419d64aeeSmrg | visium-* \ 4454d9b34d9Smrg | we32k-* \ 446498372abSmrg | x86-* | x86_64-* | xc16x-* | xps100-* \ 4478512f934Smrg | xstormy16-* | xtensa*-* \ 4484d9b34d9Smrg | ymp-* \ 4498512f934Smrg | z8k-* | z80-*) 4508512f934Smrg ;; 4518512f934Smrg # Recognize the basic CPU types without company name, with glob match. 4528512f934Smrg xtensa*) 4538512f934Smrg basic_machine=$basic_machine-unknown 4544d9b34d9Smrg ;; 4554d9b34d9Smrg # Recognize the various machine names and aliases which stand 4564d9b34d9Smrg # for a CPU type and a company and sometimes even an OS. 4574d9b34d9Smrg 386bsd) 4584d9b34d9Smrg basic_machine=i386-unknown 4594d9b34d9Smrg os=-bsd 4604d9b34d9Smrg ;; 4614d9b34d9Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 4624d9b34d9Smrg basic_machine=m68000-att 4634d9b34d9Smrg ;; 4644d9b34d9Smrg 3b*) 4654d9b34d9Smrg basic_machine=we32k-att 4664d9b34d9Smrg ;; 4674d9b34d9Smrg a29khif) 4684d9b34d9Smrg basic_machine=a29k-amd 4694d9b34d9Smrg os=-udi 4704d9b34d9Smrg ;; 471498372abSmrg abacus) 4724d9b34d9Smrg basic_machine=abacus-unknown 4734d9b34d9Smrg ;; 4744d9b34d9Smrg adobe68k) 4754d9b34d9Smrg basic_machine=m68010-adobe 4764d9b34d9Smrg os=-scout 4774d9b34d9Smrg ;; 4784d9b34d9Smrg alliant | fx80) 4794d9b34d9Smrg basic_machine=fx80-alliant 4804d9b34d9Smrg ;; 4814d9b34d9Smrg altos | altos3068) 4824d9b34d9Smrg basic_machine=m68k-altos 4834d9b34d9Smrg ;; 4844d9b34d9Smrg am29k) 4854d9b34d9Smrg basic_machine=a29k-none 4864d9b34d9Smrg os=-bsd 4874d9b34d9Smrg ;; 4884d9b34d9Smrg amd64) 4894d9b34d9Smrg basic_machine=x86_64-pc 4904d9b34d9Smrg ;; 4914d9b34d9Smrg amd64-*) 4924d9b34d9Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4934d9b34d9Smrg ;; 4944d9b34d9Smrg amdahl) 4954d9b34d9Smrg basic_machine=580-amdahl 4964d9b34d9Smrg os=-sysv 4974d9b34d9Smrg ;; 4984d9b34d9Smrg amiga | amiga-*) 4994d9b34d9Smrg basic_machine=m68k-unknown 5004d9b34d9Smrg ;; 5014d9b34d9Smrg amigaos | amigados) 5024d9b34d9Smrg basic_machine=m68k-unknown 5034d9b34d9Smrg os=-amigaos 5044d9b34d9Smrg ;; 5054d9b34d9Smrg amigaunix | amix) 5064d9b34d9Smrg basic_machine=m68k-unknown 5074d9b34d9Smrg os=-sysv4 5084d9b34d9Smrg ;; 5094d9b34d9Smrg apollo68) 5104d9b34d9Smrg basic_machine=m68k-apollo 5114d9b34d9Smrg os=-sysv 5124d9b34d9Smrg ;; 5134d9b34d9Smrg apollo68bsd) 5144d9b34d9Smrg basic_machine=m68k-apollo 5154d9b34d9Smrg os=-bsd 5164d9b34d9Smrg ;; 5178512f934Smrg aros) 5188512f934Smrg basic_machine=i386-pc 5198512f934Smrg os=-aros 5208512f934Smrg ;; 5214d9b34d9Smrg aux) 5224d9b34d9Smrg basic_machine=m68k-apple 5234d9b34d9Smrg os=-aux 5244d9b34d9Smrg ;; 5254d9b34d9Smrg balance) 5264d9b34d9Smrg basic_machine=ns32k-sequent 5274d9b34d9Smrg os=-dynix 5284d9b34d9Smrg ;; 5298512f934Smrg blackfin) 5308512f934Smrg basic_machine=bfin-unknown 5318512f934Smrg os=-linux 5328512f934Smrg ;; 5338512f934Smrg blackfin-*) 5348512f934Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 5358512f934Smrg os=-linux 5368512f934Smrg ;; 5378512f934Smrg bluegene*) 5388512f934Smrg basic_machine=powerpc-ibm 5398512f934Smrg os=-cnk 5408512f934Smrg ;; 54112e1d9cbSmrg c54x-*) 54212e1d9cbSmrg basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 54312e1d9cbSmrg ;; 54412e1d9cbSmrg c55x-*) 54512e1d9cbSmrg basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 54612e1d9cbSmrg ;; 54712e1d9cbSmrg c6x-*) 54812e1d9cbSmrg basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 54912e1d9cbSmrg ;; 5504d9b34d9Smrg c90) 5514d9b34d9Smrg basic_machine=c90-cray 5524d9b34d9Smrg os=-unicos 5534d9b34d9Smrg ;; 554498372abSmrg cegcc) 5558512f934Smrg basic_machine=arm-unknown 5568512f934Smrg os=-cegcc 5578512f934Smrg ;; 5584d9b34d9Smrg convex-c1) 5594d9b34d9Smrg basic_machine=c1-convex 5604d9b34d9Smrg os=-bsd 5614d9b34d9Smrg ;; 5624d9b34d9Smrg convex-c2) 5634d9b34d9Smrg basic_machine=c2-convex 5644d9b34d9Smrg os=-bsd 5654d9b34d9Smrg ;; 5664d9b34d9Smrg convex-c32) 5674d9b34d9Smrg basic_machine=c32-convex 5684d9b34d9Smrg os=-bsd 5694d9b34d9Smrg ;; 5704d9b34d9Smrg convex-c34) 5714d9b34d9Smrg basic_machine=c34-convex 5724d9b34d9Smrg os=-bsd 5734d9b34d9Smrg ;; 5744d9b34d9Smrg convex-c38) 5754d9b34d9Smrg basic_machine=c38-convex 5764d9b34d9Smrg os=-bsd 5774d9b34d9Smrg ;; 5784d9b34d9Smrg cray | j90) 5794d9b34d9Smrg basic_machine=j90-cray 5804d9b34d9Smrg os=-unicos 5814d9b34d9Smrg ;; 5824d9b34d9Smrg craynv) 5834d9b34d9Smrg basic_machine=craynv-cray 5844d9b34d9Smrg os=-unicosmp 5854d9b34d9Smrg ;; 586498372abSmrg cr16 | cr16-*) 5878512f934Smrg basic_machine=cr16-unknown 5884d9b34d9Smrg os=-elf 5894d9b34d9Smrg ;; 5904d9b34d9Smrg crds | unos) 5914d9b34d9Smrg basic_machine=m68k-crds 5924d9b34d9Smrg ;; 5934d9b34d9Smrg crisv32 | crisv32-* | etraxfs*) 5944d9b34d9Smrg basic_machine=crisv32-axis 5954d9b34d9Smrg ;; 5964d9b34d9Smrg cris | cris-* | etrax*) 5974d9b34d9Smrg basic_machine=cris-axis 5984d9b34d9Smrg ;; 5994d9b34d9Smrg crx) 6004d9b34d9Smrg basic_machine=crx-unknown 6014d9b34d9Smrg os=-elf 6024d9b34d9Smrg ;; 6034d9b34d9Smrg da30 | da30-*) 6044d9b34d9Smrg basic_machine=m68k-da30 6054d9b34d9Smrg ;; 6064d9b34d9Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 6074d9b34d9Smrg basic_machine=mips-dec 6084d9b34d9Smrg ;; 6094d9b34d9Smrg decsystem10* | dec10*) 6104d9b34d9Smrg basic_machine=pdp10-dec 6114d9b34d9Smrg os=-tops10 6124d9b34d9Smrg ;; 6134d9b34d9Smrg decsystem20* | dec20*) 6144d9b34d9Smrg basic_machine=pdp10-dec 6154d9b34d9Smrg os=-tops20 6164d9b34d9Smrg ;; 6174d9b34d9Smrg delta | 3300 | motorola-3300 | motorola-delta \ 6184d9b34d9Smrg | 3300-motorola | delta-motorola) 6194d9b34d9Smrg basic_machine=m68k-motorola 6204d9b34d9Smrg ;; 6214d9b34d9Smrg delta88) 6224d9b34d9Smrg basic_machine=m88k-motorola 6234d9b34d9Smrg os=-sysv3 6244d9b34d9Smrg ;; 6258512f934Smrg dicos) 6268512f934Smrg basic_machine=i686-pc 6278512f934Smrg os=-dicos 6288512f934Smrg ;; 6294d9b34d9Smrg djgpp) 6304d9b34d9Smrg basic_machine=i586-pc 6314d9b34d9Smrg os=-msdosdjgpp 6324d9b34d9Smrg ;; 6334d9b34d9Smrg dpx20 | dpx20-*) 6344d9b34d9Smrg basic_machine=rs6000-bull 6354d9b34d9Smrg os=-bosx 6364d9b34d9Smrg ;; 6374d9b34d9Smrg dpx2* | dpx2*-bull) 6384d9b34d9Smrg basic_machine=m68k-bull 6394d9b34d9Smrg os=-sysv3 6404d9b34d9Smrg ;; 6414d9b34d9Smrg ebmon29k) 6424d9b34d9Smrg basic_machine=a29k-amd 6434d9b34d9Smrg os=-ebmon 6444d9b34d9Smrg ;; 6454d9b34d9Smrg elxsi) 6464d9b34d9Smrg basic_machine=elxsi-elxsi 6474d9b34d9Smrg os=-bsd 6484d9b34d9Smrg ;; 6494d9b34d9Smrg encore | umax | mmax) 6504d9b34d9Smrg basic_machine=ns32k-encore 6514d9b34d9Smrg ;; 6524d9b34d9Smrg es1800 | OSE68k | ose68k | ose | OSE) 6534d9b34d9Smrg basic_machine=m68k-ericsson 6544d9b34d9Smrg os=-ose 6554d9b34d9Smrg ;; 6564d9b34d9Smrg fx2800) 6574d9b34d9Smrg basic_machine=i860-alliant 6584d9b34d9Smrg ;; 6594d9b34d9Smrg genix) 6604d9b34d9Smrg basic_machine=ns32k-ns 6614d9b34d9Smrg ;; 6624d9b34d9Smrg gmicro) 6634d9b34d9Smrg basic_machine=tron-gmicro 6644d9b34d9Smrg os=-sysv 6654d9b34d9Smrg ;; 6664d9b34d9Smrg go32) 6674d9b34d9Smrg basic_machine=i386-pc 6684d9b34d9Smrg os=-go32 6694d9b34d9Smrg ;; 6704d9b34d9Smrg h3050r* | hiux*) 6714d9b34d9Smrg basic_machine=hppa1.1-hitachi 6724d9b34d9Smrg os=-hiuxwe2 6734d9b34d9Smrg ;; 6744d9b34d9Smrg h8300hms) 6754d9b34d9Smrg basic_machine=h8300-hitachi 6764d9b34d9Smrg os=-hms 6774d9b34d9Smrg ;; 6784d9b34d9Smrg h8300xray) 6794d9b34d9Smrg basic_machine=h8300-hitachi 6804d9b34d9Smrg os=-xray 6814d9b34d9Smrg ;; 6824d9b34d9Smrg h8500hms) 6834d9b34d9Smrg basic_machine=h8500-hitachi 6844d9b34d9Smrg os=-hms 6854d9b34d9Smrg ;; 6864d9b34d9Smrg harris) 6874d9b34d9Smrg basic_machine=m88k-harris 6884d9b34d9Smrg os=-sysv3 6894d9b34d9Smrg ;; 6904d9b34d9Smrg hp300-*) 6914d9b34d9Smrg basic_machine=m68k-hp 6924d9b34d9Smrg ;; 6934d9b34d9Smrg hp300bsd) 6944d9b34d9Smrg basic_machine=m68k-hp 6954d9b34d9Smrg os=-bsd 6964d9b34d9Smrg ;; 6974d9b34d9Smrg hp300hpux) 6984d9b34d9Smrg basic_machine=m68k-hp 6994d9b34d9Smrg os=-hpux 7004d9b34d9Smrg ;; 7014d9b34d9Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 7024d9b34d9Smrg basic_machine=hppa1.0-hp 7034d9b34d9Smrg ;; 7044d9b34d9Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 7054d9b34d9Smrg basic_machine=m68000-hp 7064d9b34d9Smrg ;; 7074d9b34d9Smrg hp9k3[2-9][0-9]) 7084d9b34d9Smrg basic_machine=m68k-hp 7094d9b34d9Smrg ;; 7104d9b34d9Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 7114d9b34d9Smrg basic_machine=hppa1.0-hp 7124d9b34d9Smrg ;; 7134d9b34d9Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 7144d9b34d9Smrg basic_machine=hppa1.1-hp 7154d9b34d9Smrg ;; 7164d9b34d9Smrg hp9k78[0-9] | hp78[0-9]) 7174d9b34d9Smrg # FIXME: really hppa2.0-hp 7184d9b34d9Smrg basic_machine=hppa1.1-hp 7194d9b34d9Smrg ;; 7204d9b34d9Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 7214d9b34d9Smrg # FIXME: really hppa2.0-hp 7224d9b34d9Smrg basic_machine=hppa1.1-hp 7234d9b34d9Smrg ;; 7244d9b34d9Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 7254d9b34d9Smrg basic_machine=hppa1.1-hp 7264d9b34d9Smrg ;; 7274d9b34d9Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 7284d9b34d9Smrg basic_machine=hppa1.0-hp 7294d9b34d9Smrg ;; 7304d9b34d9Smrg hppa-next) 7314d9b34d9Smrg os=-nextstep3 7324d9b34d9Smrg ;; 7334d9b34d9Smrg hppaosf) 7344d9b34d9Smrg basic_machine=hppa1.1-hp 7354d9b34d9Smrg os=-osf 7364d9b34d9Smrg ;; 7374d9b34d9Smrg hppro) 7384d9b34d9Smrg basic_machine=hppa1.1-hp 7394d9b34d9Smrg os=-proelf 7404d9b34d9Smrg ;; 7414d9b34d9Smrg i370-ibm* | ibm*) 7424d9b34d9Smrg basic_machine=i370-ibm 7434d9b34d9Smrg ;; 7444d9b34d9Smrg i*86v32) 7454d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7464d9b34d9Smrg os=-sysv32 7474d9b34d9Smrg ;; 7484d9b34d9Smrg i*86v4*) 7494d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7504d9b34d9Smrg os=-sysv4 7514d9b34d9Smrg ;; 7524d9b34d9Smrg i*86v) 7534d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7544d9b34d9Smrg os=-sysv 7554d9b34d9Smrg ;; 7564d9b34d9Smrg i*86sol2) 7574d9b34d9Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 7584d9b34d9Smrg os=-solaris2 7594d9b34d9Smrg ;; 7604d9b34d9Smrg i386mach) 7614d9b34d9Smrg basic_machine=i386-mach 7624d9b34d9Smrg os=-mach 7634d9b34d9Smrg ;; 7644d9b34d9Smrg i386-vsta | vsta) 7654d9b34d9Smrg basic_machine=i386-unknown 7664d9b34d9Smrg os=-vsta 7674d9b34d9Smrg ;; 7684d9b34d9Smrg iris | iris4d) 7694d9b34d9Smrg basic_machine=mips-sgi 7704d9b34d9Smrg case $os in 7714d9b34d9Smrg -irix*) 7724d9b34d9Smrg ;; 7734d9b34d9Smrg *) 7744d9b34d9Smrg os=-irix4 7754d9b34d9Smrg ;; 7764d9b34d9Smrg esac 7774d9b34d9Smrg ;; 7784d9b34d9Smrg isi68 | isi) 7794d9b34d9Smrg basic_machine=m68k-isi 7804d9b34d9Smrg os=-sysv 7814d9b34d9Smrg ;; 78219d64aeeSmrg leon-*|leon[3-9]-*) 78319d64aeeSmrg basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 78419d64aeeSmrg ;; 7858512f934Smrg m68knommu) 7868512f934Smrg basic_machine=m68k-unknown 7878512f934Smrg os=-linux 7888512f934Smrg ;; 7898512f934Smrg m68knommu-*) 7908512f934Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7918512f934Smrg os=-linux 7928512f934Smrg ;; 7934d9b34d9Smrg m88k-omron*) 7944d9b34d9Smrg basic_machine=m88k-omron 7954d9b34d9Smrg ;; 7964d9b34d9Smrg magnum | m3230) 7974d9b34d9Smrg basic_machine=mips-mips 7984d9b34d9Smrg os=-sysv 7994d9b34d9Smrg ;; 8004d9b34d9Smrg merlin) 8014d9b34d9Smrg basic_machine=ns32k-utek 8024d9b34d9Smrg os=-sysv 8034d9b34d9Smrg ;; 80419d64aeeSmrg microblaze*) 8058512f934Smrg basic_machine=microblaze-xilinx 8068512f934Smrg ;; 80719d64aeeSmrg mingw64) 80819d64aeeSmrg basic_machine=x86_64-pc 80919d64aeeSmrg os=-mingw64 81019d64aeeSmrg ;; 8114d9b34d9Smrg mingw32) 81219d64aeeSmrg basic_machine=i686-pc 8134d9b34d9Smrg os=-mingw32 8144d9b34d9Smrg ;; 8158512f934Smrg mingw32ce) 8168512f934Smrg basic_machine=arm-unknown 8178512f934Smrg os=-mingw32ce 8188512f934Smrg ;; 8194d9b34d9Smrg miniframe) 8204d9b34d9Smrg basic_machine=m68000-convergent 8214d9b34d9Smrg ;; 8224d9b34d9Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 8234d9b34d9Smrg basic_machine=m68k-atari 8244d9b34d9Smrg os=-mint 8254d9b34d9Smrg ;; 8264d9b34d9Smrg mips3*-*) 8274d9b34d9Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 8284d9b34d9Smrg ;; 8294d9b34d9Smrg mips3*) 8304d9b34d9Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 8314d9b34d9Smrg ;; 8324d9b34d9Smrg monitor) 8334d9b34d9Smrg basic_machine=m68k-rom68k 8344d9b34d9Smrg os=-coff 8354d9b34d9Smrg ;; 8364d9b34d9Smrg morphos) 8374d9b34d9Smrg basic_machine=powerpc-unknown 8384d9b34d9Smrg os=-morphos 8394d9b34d9Smrg ;; 84019d64aeeSmrg moxiebox) 84119d64aeeSmrg basic_machine=moxie-unknown 84219d64aeeSmrg os=-moxiebox 84319d64aeeSmrg ;; 8444d9b34d9Smrg msdos) 8454d9b34d9Smrg basic_machine=i386-pc 8464d9b34d9Smrg os=-msdos 8474d9b34d9Smrg ;; 8484d9b34d9Smrg ms1-*) 8494d9b34d9Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 8504d9b34d9Smrg ;; 851498372abSmrg msys) 85219d64aeeSmrg basic_machine=i686-pc 853498372abSmrg os=-msys 854498372abSmrg ;; 8554d9b34d9Smrg mvs) 8564d9b34d9Smrg basic_machine=i370-ibm 8574d9b34d9Smrg os=-mvs 8584d9b34d9Smrg ;; 859498372abSmrg nacl) 860498372abSmrg basic_machine=le32-unknown 861498372abSmrg os=-nacl 862498372abSmrg ;; 8634d9b34d9Smrg ncr3000) 8644d9b34d9Smrg basic_machine=i486-ncr 8654d9b34d9Smrg os=-sysv4 8664d9b34d9Smrg ;; 8674d9b34d9Smrg netbsd386) 8684d9b34d9Smrg basic_machine=i386-unknown 8694d9b34d9Smrg os=-netbsd 8704d9b34d9Smrg ;; 8714d9b34d9Smrg netwinder) 8724d9b34d9Smrg basic_machine=armv4l-rebel 8734d9b34d9Smrg os=-linux 8744d9b34d9Smrg ;; 8754d9b34d9Smrg news | news700 | news800 | news900) 8764d9b34d9Smrg basic_machine=m68k-sony 8774d9b34d9Smrg os=-newsos 8784d9b34d9Smrg ;; 8794d9b34d9Smrg news1000) 8804d9b34d9Smrg basic_machine=m68030-sony 8814d9b34d9Smrg os=-newsos 8824d9b34d9Smrg ;; 8834d9b34d9Smrg news-3600 | risc-news) 8844d9b34d9Smrg basic_machine=mips-sony 8854d9b34d9Smrg os=-newsos 8864d9b34d9Smrg ;; 8874d9b34d9Smrg necv70) 8884d9b34d9Smrg basic_machine=v70-nec 8894d9b34d9Smrg os=-sysv 8904d9b34d9Smrg ;; 8914d9b34d9Smrg next | m*-next ) 8924d9b34d9Smrg basic_machine=m68k-next 8934d9b34d9Smrg case $os in 8944d9b34d9Smrg -nextstep* ) 8954d9b34d9Smrg ;; 8964d9b34d9Smrg -ns2*) 8974d9b34d9Smrg os=-nextstep2 8984d9b34d9Smrg ;; 8994d9b34d9Smrg *) 9004d9b34d9Smrg os=-nextstep3 9014d9b34d9Smrg ;; 9024d9b34d9Smrg esac 9034d9b34d9Smrg ;; 9044d9b34d9Smrg nh3000) 9054d9b34d9Smrg basic_machine=m68k-harris 9064d9b34d9Smrg os=-cxux 9074d9b34d9Smrg ;; 9084d9b34d9Smrg nh[45]000) 9094d9b34d9Smrg basic_machine=m88k-harris 9104d9b34d9Smrg os=-cxux 9114d9b34d9Smrg ;; 9124d9b34d9Smrg nindy960) 9134d9b34d9Smrg basic_machine=i960-intel 9144d9b34d9Smrg os=-nindy 9154d9b34d9Smrg ;; 9164d9b34d9Smrg mon960) 9174d9b34d9Smrg basic_machine=i960-intel 9184d9b34d9Smrg os=-mon960 9194d9b34d9Smrg ;; 9204d9b34d9Smrg nonstopux) 9214d9b34d9Smrg basic_machine=mips-compaq 9224d9b34d9Smrg os=-nonstopux 9234d9b34d9Smrg ;; 9244d9b34d9Smrg np1) 9254d9b34d9Smrg basic_machine=np1-gould 9264d9b34d9Smrg ;; 927498372abSmrg neo-tandem) 92812e1d9cbSmrg basic_machine=neo-tandem 92912e1d9cbSmrg ;; 930498372abSmrg nse-tandem) 93112e1d9cbSmrg basic_machine=nse-tandem 93212e1d9cbSmrg ;; 9334d9b34d9Smrg nsr-tandem) 9344d9b34d9Smrg basic_machine=nsr-tandem 9354d9b34d9Smrg ;; 9364d9b34d9Smrg op50n-* | op60c-*) 9374d9b34d9Smrg basic_machine=hppa1.1-oki 9384d9b34d9Smrg os=-proelf 9394d9b34d9Smrg ;; 9404d9b34d9Smrg openrisc | openrisc-*) 9414d9b34d9Smrg basic_machine=or32-unknown 9424d9b34d9Smrg ;; 9434d9b34d9Smrg os400) 9444d9b34d9Smrg basic_machine=powerpc-ibm 9454d9b34d9Smrg os=-os400 9464d9b34d9Smrg ;; 9474d9b34d9Smrg OSE68000 | ose68000) 9484d9b34d9Smrg basic_machine=m68000-ericsson 9494d9b34d9Smrg os=-ose 9504d9b34d9Smrg ;; 9514d9b34d9Smrg os68k) 9524d9b34d9Smrg basic_machine=m68k-none 9534d9b34d9Smrg os=-os68k 9544d9b34d9Smrg ;; 9554d9b34d9Smrg pa-hitachi) 9564d9b34d9Smrg basic_machine=hppa1.1-hitachi 9574d9b34d9Smrg os=-hiuxwe2 9584d9b34d9Smrg ;; 9594d9b34d9Smrg paragon) 9604d9b34d9Smrg basic_machine=i860-intel 9614d9b34d9Smrg os=-osf 9624d9b34d9Smrg ;; 9638512f934Smrg parisc) 9648512f934Smrg basic_machine=hppa-unknown 9658512f934Smrg os=-linux 9668512f934Smrg ;; 9678512f934Smrg parisc-*) 9688512f934Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 9698512f934Smrg os=-linux 9708512f934Smrg ;; 9714d9b34d9Smrg pbd) 9724d9b34d9Smrg basic_machine=sparc-tti 9734d9b34d9Smrg ;; 9744d9b34d9Smrg pbb) 9754d9b34d9Smrg basic_machine=m68k-tti 9764d9b34d9Smrg ;; 9774d9b34d9Smrg pc532 | pc532-*) 9784d9b34d9Smrg basic_machine=ns32k-pc532 9794d9b34d9Smrg ;; 9804d9b34d9Smrg pc98) 9814d9b34d9Smrg basic_machine=i386-pc 9824d9b34d9Smrg ;; 9834d9b34d9Smrg pc98-*) 9844d9b34d9Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 9854d9b34d9Smrg ;; 9864d9b34d9Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 9874d9b34d9Smrg basic_machine=i586-pc 9884d9b34d9Smrg ;; 9894d9b34d9Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 9904d9b34d9Smrg basic_machine=i686-pc 9914d9b34d9Smrg ;; 9924d9b34d9Smrg pentiumii | pentium2 | pentiumiii | pentium3) 9934d9b34d9Smrg basic_machine=i686-pc 9944d9b34d9Smrg ;; 9954d9b34d9Smrg pentium4) 9964d9b34d9Smrg basic_machine=i786-pc 9974d9b34d9Smrg ;; 9984d9b34d9Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 9994d9b34d9Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 10004d9b34d9Smrg ;; 10014d9b34d9Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 10024d9b34d9Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10034d9b34d9Smrg ;; 10044d9b34d9Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 10054d9b34d9Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 10064d9b34d9Smrg ;; 10074d9b34d9Smrg pentium4-*) 10084d9b34d9Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 10094d9b34d9Smrg ;; 10104d9b34d9Smrg pn) 10114d9b34d9Smrg basic_machine=pn-gould 10124d9b34d9Smrg ;; 10134d9b34d9Smrg power) basic_machine=power-ibm 10144d9b34d9Smrg ;; 1015498372abSmrg ppc | ppcbe) basic_machine=powerpc-unknown 10164d9b34d9Smrg ;; 1017498372abSmrg ppc-* | ppcbe-*) 1018498372abSmrg basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 10194d9b34d9Smrg ;; 10204d9b34d9Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 10214d9b34d9Smrg basic_machine=powerpcle-unknown 10224d9b34d9Smrg ;; 10234d9b34d9Smrg ppcle-* | powerpclittle-*) 10244d9b34d9Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 10254d9b34d9Smrg ;; 10264d9b34d9Smrg ppc64) basic_machine=powerpc64-unknown 10274d9b34d9Smrg ;; 10284d9b34d9Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 10294d9b34d9Smrg ;; 10304d9b34d9Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 10314d9b34d9Smrg basic_machine=powerpc64le-unknown 10324d9b34d9Smrg ;; 10334d9b34d9Smrg ppc64le-* | powerpc64little-*) 10344d9b34d9Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 10354d9b34d9Smrg ;; 10364d9b34d9Smrg ps2) 10374d9b34d9Smrg basic_machine=i386-ibm 10384d9b34d9Smrg ;; 10394d9b34d9Smrg pw32) 10404d9b34d9Smrg basic_machine=i586-unknown 10414d9b34d9Smrg os=-pw32 10424d9b34d9Smrg ;; 104319d64aeeSmrg rdos | rdos64) 104419d64aeeSmrg basic_machine=x86_64-pc 104519d64aeeSmrg os=-rdos 104619d64aeeSmrg ;; 104719d64aeeSmrg rdos32) 10484d9b34d9Smrg basic_machine=i386-pc 10494d9b34d9Smrg os=-rdos 10504d9b34d9Smrg ;; 10514d9b34d9Smrg rom68k) 10524d9b34d9Smrg basic_machine=m68k-rom68k 10534d9b34d9Smrg os=-coff 10544d9b34d9Smrg ;; 10554d9b34d9Smrg rm[46]00) 10564d9b34d9Smrg basic_machine=mips-siemens 10574d9b34d9Smrg ;; 10584d9b34d9Smrg rtpc | rtpc-*) 10594d9b34d9Smrg basic_machine=romp-ibm 10604d9b34d9Smrg ;; 10614d9b34d9Smrg s390 | s390-*) 10624d9b34d9Smrg basic_machine=s390-ibm 10634d9b34d9Smrg ;; 10644d9b34d9Smrg s390x | s390x-*) 10654d9b34d9Smrg basic_machine=s390x-ibm 10664d9b34d9Smrg ;; 10674d9b34d9Smrg sa29200) 10684d9b34d9Smrg basic_machine=a29k-amd 10694d9b34d9Smrg os=-udi 10704d9b34d9Smrg ;; 10714d9b34d9Smrg sb1) 10724d9b34d9Smrg basic_machine=mipsisa64sb1-unknown 10734d9b34d9Smrg ;; 10744d9b34d9Smrg sb1el) 10754d9b34d9Smrg basic_machine=mipsisa64sb1el-unknown 10764d9b34d9Smrg ;; 10774d9b34d9Smrg sde) 10784d9b34d9Smrg basic_machine=mipsisa32-sde 10794d9b34d9Smrg os=-elf 10804d9b34d9Smrg ;; 10814d9b34d9Smrg sei) 10824d9b34d9Smrg basic_machine=mips-sei 10834d9b34d9Smrg os=-seiux 10844d9b34d9Smrg ;; 10854d9b34d9Smrg sequent) 10864d9b34d9Smrg basic_machine=i386-sequent 10874d9b34d9Smrg ;; 10884d9b34d9Smrg sh) 10894d9b34d9Smrg basic_machine=sh-hitachi 10904d9b34d9Smrg os=-hms 10914d9b34d9Smrg ;; 10928512f934Smrg sh5el) 10938512f934Smrg basic_machine=sh5le-unknown 10948512f934Smrg ;; 10954d9b34d9Smrg sh64) 10964d9b34d9Smrg basic_machine=sh64-unknown 10974d9b34d9Smrg ;; 10984d9b34d9Smrg sparclite-wrs | simso-wrs) 10994d9b34d9Smrg basic_machine=sparclite-wrs 11004d9b34d9Smrg os=-vxworks 11014d9b34d9Smrg ;; 11024d9b34d9Smrg sps7) 11034d9b34d9Smrg basic_machine=m68k-bull 11044d9b34d9Smrg os=-sysv2 11054d9b34d9Smrg ;; 11064d9b34d9Smrg spur) 11074d9b34d9Smrg basic_machine=spur-unknown 11084d9b34d9Smrg ;; 11094d9b34d9Smrg st2000) 11104d9b34d9Smrg basic_machine=m68k-tandem 11114d9b34d9Smrg ;; 11124d9b34d9Smrg stratus) 11134d9b34d9Smrg basic_machine=i860-stratus 11144d9b34d9Smrg os=-sysv4 11154d9b34d9Smrg ;; 1116498372abSmrg strongarm-* | thumb-*) 1117498372abSmrg basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1118498372abSmrg ;; 11194d9b34d9Smrg sun2) 11204d9b34d9Smrg basic_machine=m68000-sun 11214d9b34d9Smrg ;; 11224d9b34d9Smrg sun2os3) 11234d9b34d9Smrg basic_machine=m68000-sun 11244d9b34d9Smrg os=-sunos3 11254d9b34d9Smrg ;; 11264d9b34d9Smrg sun2os4) 11274d9b34d9Smrg basic_machine=m68000-sun 11284d9b34d9Smrg os=-sunos4 11294d9b34d9Smrg ;; 11304d9b34d9Smrg sun3os3) 11314d9b34d9Smrg basic_machine=m68k-sun 11324d9b34d9Smrg os=-sunos3 11334d9b34d9Smrg ;; 11344d9b34d9Smrg sun3os4) 11354d9b34d9Smrg basic_machine=m68k-sun 11364d9b34d9Smrg os=-sunos4 11374d9b34d9Smrg ;; 11384d9b34d9Smrg sun4os3) 11394d9b34d9Smrg basic_machine=sparc-sun 11404d9b34d9Smrg os=-sunos3 11414d9b34d9Smrg ;; 11424d9b34d9Smrg sun4os4) 11434d9b34d9Smrg basic_machine=sparc-sun 11444d9b34d9Smrg os=-sunos4 11454d9b34d9Smrg ;; 11464d9b34d9Smrg sun4sol2) 11474d9b34d9Smrg basic_machine=sparc-sun 11484d9b34d9Smrg os=-solaris2 11494d9b34d9Smrg ;; 11504d9b34d9Smrg sun3 | sun3-*) 11514d9b34d9Smrg basic_machine=m68k-sun 11524d9b34d9Smrg ;; 11534d9b34d9Smrg sun4) 11544d9b34d9Smrg basic_machine=sparc-sun 11554d9b34d9Smrg ;; 11564d9b34d9Smrg sun386 | sun386i | roadrunner) 11574d9b34d9Smrg basic_machine=i386-sun 11584d9b34d9Smrg ;; 11594d9b34d9Smrg sv1) 11604d9b34d9Smrg basic_machine=sv1-cray 11614d9b34d9Smrg os=-unicos 11624d9b34d9Smrg ;; 11634d9b34d9Smrg symmetry) 11644d9b34d9Smrg basic_machine=i386-sequent 11654d9b34d9Smrg os=-dynix 11664d9b34d9Smrg ;; 11674d9b34d9Smrg t3e) 11684d9b34d9Smrg basic_machine=alphaev5-cray 11694d9b34d9Smrg os=-unicos 11704d9b34d9Smrg ;; 11714d9b34d9Smrg t90) 11724d9b34d9Smrg basic_machine=t90-cray 11734d9b34d9Smrg os=-unicos 11744d9b34d9Smrg ;; 11758512f934Smrg tile*) 1176498372abSmrg basic_machine=$basic_machine-unknown 11778512f934Smrg os=-linux-gnu 11788512f934Smrg ;; 11794d9b34d9Smrg tx39) 11804d9b34d9Smrg basic_machine=mipstx39-unknown 11814d9b34d9Smrg ;; 11824d9b34d9Smrg tx39el) 11834d9b34d9Smrg basic_machine=mipstx39el-unknown 11844d9b34d9Smrg ;; 11854d9b34d9Smrg toad1) 11864d9b34d9Smrg basic_machine=pdp10-xkl 11874d9b34d9Smrg os=-tops20 11884d9b34d9Smrg ;; 11894d9b34d9Smrg tower | tower-32) 11904d9b34d9Smrg basic_machine=m68k-ncr 11914d9b34d9Smrg ;; 11924d9b34d9Smrg tpf) 11934d9b34d9Smrg basic_machine=s390x-ibm 11944d9b34d9Smrg os=-tpf 11954d9b34d9Smrg ;; 11964d9b34d9Smrg udi29k) 11974d9b34d9Smrg basic_machine=a29k-amd 11984d9b34d9Smrg os=-udi 11994d9b34d9Smrg ;; 12004d9b34d9Smrg ultra3) 12014d9b34d9Smrg basic_machine=a29k-nyu 12024d9b34d9Smrg os=-sym1 12034d9b34d9Smrg ;; 12044d9b34d9Smrg v810 | necv810) 12054d9b34d9Smrg basic_machine=v810-nec 12064d9b34d9Smrg os=-none 12074d9b34d9Smrg ;; 12084d9b34d9Smrg vaxv) 12094d9b34d9Smrg basic_machine=vax-dec 12104d9b34d9Smrg os=-sysv 12114d9b34d9Smrg ;; 12124d9b34d9Smrg vms) 12134d9b34d9Smrg basic_machine=vax-dec 12144d9b34d9Smrg os=-vms 12154d9b34d9Smrg ;; 12164d9b34d9Smrg vpp*|vx|vx-*) 12174d9b34d9Smrg basic_machine=f301-fujitsu 12184d9b34d9Smrg ;; 12194d9b34d9Smrg vxworks960) 12204d9b34d9Smrg basic_machine=i960-wrs 12214d9b34d9Smrg os=-vxworks 12224d9b34d9Smrg ;; 12234d9b34d9Smrg vxworks68) 12244d9b34d9Smrg basic_machine=m68k-wrs 12254d9b34d9Smrg os=-vxworks 12264d9b34d9Smrg ;; 12274d9b34d9Smrg vxworks29k) 12284d9b34d9Smrg basic_machine=a29k-wrs 12294d9b34d9Smrg os=-vxworks 12304d9b34d9Smrg ;; 12314d9b34d9Smrg w65*) 12324d9b34d9Smrg basic_machine=w65-wdc 12334d9b34d9Smrg os=-none 12344d9b34d9Smrg ;; 12354d9b34d9Smrg w89k-*) 12364d9b34d9Smrg basic_machine=hppa1.1-winbond 12374d9b34d9Smrg os=-proelf 12384d9b34d9Smrg ;; 12394d9b34d9Smrg xbox) 12404d9b34d9Smrg basic_machine=i686-pc 12414d9b34d9Smrg os=-mingw32 12424d9b34d9Smrg ;; 12434d9b34d9Smrg xps | xps100) 12444d9b34d9Smrg basic_machine=xps100-honeywell 12454d9b34d9Smrg ;; 1246498372abSmrg xscale-* | xscalee[bl]-*) 1247498372abSmrg basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1248498372abSmrg ;; 12494d9b34d9Smrg ymp) 12504d9b34d9Smrg basic_machine=ymp-cray 12514d9b34d9Smrg os=-unicos 12524d9b34d9Smrg ;; 12534d9b34d9Smrg z8k-*-coff) 12544d9b34d9Smrg basic_machine=z8k-unknown 12554d9b34d9Smrg os=-sim 12564d9b34d9Smrg ;; 12578512f934Smrg z80-*-coff) 12588512f934Smrg basic_machine=z80-unknown 12598512f934Smrg os=-sim 12608512f934Smrg ;; 12614d9b34d9Smrg none) 12624d9b34d9Smrg basic_machine=none-none 12634d9b34d9Smrg os=-none 12644d9b34d9Smrg ;; 12654d9b34d9Smrg 12664d9b34d9Smrg# Here we handle the default manufacturer of certain CPU types. It is in 12674d9b34d9Smrg# some cases the only manufacturer, in others, it is the most popular. 12684d9b34d9Smrg w89k) 12694d9b34d9Smrg basic_machine=hppa1.1-winbond 12704d9b34d9Smrg ;; 12714d9b34d9Smrg op50n) 12724d9b34d9Smrg basic_machine=hppa1.1-oki 12734d9b34d9Smrg ;; 12744d9b34d9Smrg op60c) 12754d9b34d9Smrg basic_machine=hppa1.1-oki 12764d9b34d9Smrg ;; 12774d9b34d9Smrg romp) 12784d9b34d9Smrg basic_machine=romp-ibm 12794d9b34d9Smrg ;; 12804d9b34d9Smrg mmix) 12814d9b34d9Smrg basic_machine=mmix-knuth 12824d9b34d9Smrg ;; 12834d9b34d9Smrg rs6000) 12844d9b34d9Smrg basic_machine=rs6000-ibm 12854d9b34d9Smrg ;; 12864d9b34d9Smrg vax) 12874d9b34d9Smrg basic_machine=vax-dec 12884d9b34d9Smrg ;; 12894d9b34d9Smrg pdp10) 12904d9b34d9Smrg # there are many clones, so DEC is not a safe bet 12914d9b34d9Smrg basic_machine=pdp10-unknown 12924d9b34d9Smrg ;; 12934d9b34d9Smrg pdp11) 12944d9b34d9Smrg basic_machine=pdp11-dec 12954d9b34d9Smrg ;; 12964d9b34d9Smrg we32k) 12974d9b34d9Smrg basic_machine=we32k-att 12984d9b34d9Smrg ;; 12998512f934Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 13004d9b34d9Smrg basic_machine=sh-unknown 13014d9b34d9Smrg ;; 13024d9b34d9Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 13034d9b34d9Smrg basic_machine=sparc-sun 13044d9b34d9Smrg ;; 13054d9b34d9Smrg cydra) 13064d9b34d9Smrg basic_machine=cydra-cydrome 13074d9b34d9Smrg ;; 13084d9b34d9Smrg orion) 13094d9b34d9Smrg basic_machine=orion-highlevel 13104d9b34d9Smrg ;; 13114d9b34d9Smrg orion105) 13124d9b34d9Smrg basic_machine=clipper-highlevel 13134d9b34d9Smrg ;; 13144d9b34d9Smrg mac | mpw | mac-mpw) 13154d9b34d9Smrg basic_machine=m68k-apple 13164d9b34d9Smrg ;; 13174d9b34d9Smrg pmac | pmac-mpw) 13184d9b34d9Smrg basic_machine=powerpc-apple 13194d9b34d9Smrg ;; 13204d9b34d9Smrg *-unknown) 13214d9b34d9Smrg # Make sure to match an already-canonicalized machine name. 13224d9b34d9Smrg ;; 13234d9b34d9Smrg *) 13244d9b34d9Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 13254d9b34d9Smrg exit 1 13264d9b34d9Smrg ;; 13274d9b34d9Smrgesac 13284d9b34d9Smrg 13294d9b34d9Smrg# Here we canonicalize certain aliases for manufacturers. 13304d9b34d9Smrgcase $basic_machine in 13314d9b34d9Smrg *-digital*) 13324d9b34d9Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 13334d9b34d9Smrg ;; 13344d9b34d9Smrg *-commodore*) 13354d9b34d9Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 13364d9b34d9Smrg ;; 13374d9b34d9Smrg *) 13384d9b34d9Smrg ;; 13394d9b34d9Smrgesac 13404d9b34d9Smrg 13414d9b34d9Smrg# Decode manufacturer-specific aliases for certain operating systems. 13424d9b34d9Smrg 13434d9b34d9Smrgif [ x"$os" != x"" ] 13444d9b34d9Smrgthen 13454d9b34d9Smrgcase $os in 1346498372abSmrg # First match some system type aliases 1347498372abSmrg # that might get confused with valid system types. 13484d9b34d9Smrg # -solaris* is a basic system type, with this one exception. 1349498372abSmrg -auroraux) 1350498372abSmrg os=-auroraux 13518512f934Smrg ;; 13524d9b34d9Smrg -solaris1 | -solaris1.*) 13534d9b34d9Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 13544d9b34d9Smrg ;; 13554d9b34d9Smrg -solaris) 13564d9b34d9Smrg os=-solaris2 13574d9b34d9Smrg ;; 13584d9b34d9Smrg -svr4*) 13594d9b34d9Smrg os=-sysv4 13604d9b34d9Smrg ;; 13614d9b34d9Smrg -unixware*) 13624d9b34d9Smrg os=-sysv4.2uw 13634d9b34d9Smrg ;; 13644d9b34d9Smrg -gnu/linux*) 13654d9b34d9Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 13664d9b34d9Smrg ;; 13674d9b34d9Smrg # First accept the basic system types. 13684d9b34d9Smrg # The portable systems comes first. 13694d9b34d9Smrg # Each alternative MUST END IN A *, to match a version number. 13704d9b34d9Smrg # -sysv* is not here because it comes later, after sysvr4. 13714d9b34d9Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 13728512f934Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 13738512f934Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 137419d64aeeSmrg | -sym* | -kopensolaris* | -plan9* \ 13754d9b34d9Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 13768512f934Smrg | -aos* | -aros* \ 13774d9b34d9Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 13784d9b34d9Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 13794d9b34d9Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 138019d64aeeSmrg | -bitrig* | -openbsd* | -solidbsd* \ 13814d9b34d9Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 13824d9b34d9Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 13834d9b34d9Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 13844d9b34d9Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 13858512f934Smrg | -chorusos* | -chorusrdb* | -cegcc* \ 1386498372abSmrg | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 138719d64aeeSmrg | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 138819d64aeeSmrg | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 138919d64aeeSmrg | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 13904d9b34d9Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 13914d9b34d9Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 13924d9b34d9Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 13934d9b34d9Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 13944d9b34d9Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13954d9b34d9Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 139619d64aeeSmrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) 13974d9b34d9Smrg # Remember, each alternative MUST END IN *, to match a version number. 13984d9b34d9Smrg ;; 13994d9b34d9Smrg -qnx*) 14004d9b34d9Smrg case $basic_machine in 14014d9b34d9Smrg x86-* | i*86-*) 14024d9b34d9Smrg ;; 14034d9b34d9Smrg *) 14044d9b34d9Smrg os=-nto$os 14054d9b34d9Smrg ;; 14064d9b34d9Smrg esac 14074d9b34d9Smrg ;; 14084d9b34d9Smrg -nto-qnx*) 14094d9b34d9Smrg ;; 14104d9b34d9Smrg -nto*) 14114d9b34d9Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 14124d9b34d9Smrg ;; 14134d9b34d9Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 14144d9b34d9Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 14154d9b34d9Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 14164d9b34d9Smrg ;; 14174d9b34d9Smrg -mac*) 14184d9b34d9Smrg os=`echo $os | sed -e 's|mac|macos|'` 14194d9b34d9Smrg ;; 14204d9b34d9Smrg -linux-dietlibc) 14214d9b34d9Smrg os=-linux-dietlibc 14224d9b34d9Smrg ;; 14234d9b34d9Smrg -linux*) 14244d9b34d9Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 14254d9b34d9Smrg ;; 14264d9b34d9Smrg -sunos5*) 14274d9b34d9Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 14284d9b34d9Smrg ;; 14294d9b34d9Smrg -sunos6*) 14304d9b34d9Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 14314d9b34d9Smrg ;; 14324d9b34d9Smrg -opened*) 14334d9b34d9Smrg os=-openedition 14344d9b34d9Smrg ;; 1435498372abSmrg -os400*) 14364d9b34d9Smrg os=-os400 14374d9b34d9Smrg ;; 14384d9b34d9Smrg -wince*) 14394d9b34d9Smrg os=-wince 14404d9b34d9Smrg ;; 14414d9b34d9Smrg -osfrose*) 14424d9b34d9Smrg os=-osfrose 14434d9b34d9Smrg ;; 14444d9b34d9Smrg -osf*) 14454d9b34d9Smrg os=-osf 14464d9b34d9Smrg ;; 14474d9b34d9Smrg -utek*) 14484d9b34d9Smrg os=-bsd 14494d9b34d9Smrg ;; 14504d9b34d9Smrg -dynix*) 14514d9b34d9Smrg os=-bsd 14524d9b34d9Smrg ;; 14534d9b34d9Smrg -acis*) 14544d9b34d9Smrg os=-aos 14554d9b34d9Smrg ;; 14564d9b34d9Smrg -atheos*) 14574d9b34d9Smrg os=-atheos 14584d9b34d9Smrg ;; 14594d9b34d9Smrg -syllable*) 14604d9b34d9Smrg os=-syllable 14614d9b34d9Smrg ;; 14624d9b34d9Smrg -386bsd) 14634d9b34d9Smrg os=-bsd 14644d9b34d9Smrg ;; 14654d9b34d9Smrg -ctix* | -uts*) 14664d9b34d9Smrg os=-sysv 14674d9b34d9Smrg ;; 14684d9b34d9Smrg -nova*) 14694d9b34d9Smrg os=-rtmk-nova 14704d9b34d9Smrg ;; 14714d9b34d9Smrg -ns2 ) 14724d9b34d9Smrg os=-nextstep2 14734d9b34d9Smrg ;; 14744d9b34d9Smrg -nsk*) 14754d9b34d9Smrg os=-nsk 14764d9b34d9Smrg ;; 14774d9b34d9Smrg # Preserve the version number of sinix5. 14784d9b34d9Smrg -sinix5.*) 14794d9b34d9Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 14804d9b34d9Smrg ;; 14814d9b34d9Smrg -sinix*) 14824d9b34d9Smrg os=-sysv4 14834d9b34d9Smrg ;; 1484498372abSmrg -tpf*) 14854d9b34d9Smrg os=-tpf 14864d9b34d9Smrg ;; 14874d9b34d9Smrg -triton*) 14884d9b34d9Smrg os=-sysv3 14894d9b34d9Smrg ;; 14904d9b34d9Smrg -oss*) 14914d9b34d9Smrg os=-sysv3 14924d9b34d9Smrg ;; 14934d9b34d9Smrg -svr4) 14944d9b34d9Smrg os=-sysv4 14954d9b34d9Smrg ;; 14964d9b34d9Smrg -svr3) 14974d9b34d9Smrg os=-sysv3 14984d9b34d9Smrg ;; 14994d9b34d9Smrg -sysvr4) 15004d9b34d9Smrg os=-sysv4 15014d9b34d9Smrg ;; 15024d9b34d9Smrg # This must come after -sysvr4. 15034d9b34d9Smrg -sysv*) 15044d9b34d9Smrg ;; 15054d9b34d9Smrg -ose*) 15064d9b34d9Smrg os=-ose 15074d9b34d9Smrg ;; 15084d9b34d9Smrg -es1800*) 15094d9b34d9Smrg os=-ose 15104d9b34d9Smrg ;; 15114d9b34d9Smrg -xenix) 15124d9b34d9Smrg os=-xenix 15134d9b34d9Smrg ;; 15144d9b34d9Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 15154d9b34d9Smrg os=-mint 15164d9b34d9Smrg ;; 15174d9b34d9Smrg -aros*) 15184d9b34d9Smrg os=-aros 15194d9b34d9Smrg ;; 15204d9b34d9Smrg -zvmoe) 15214d9b34d9Smrg os=-zvmoe 15224d9b34d9Smrg ;; 15238512f934Smrg -dicos*) 15248512f934Smrg os=-dicos 15258512f934Smrg ;; 1526498372abSmrg -nacl*) 1527498372abSmrg ;; 15284d9b34d9Smrg -none) 15294d9b34d9Smrg ;; 15304d9b34d9Smrg *) 15314d9b34d9Smrg # Get rid of the `-' at the beginning of $os. 15324d9b34d9Smrg os=`echo $os | sed 's/[^-]*-//'` 15334d9b34d9Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 15344d9b34d9Smrg exit 1 15354d9b34d9Smrg ;; 15364d9b34d9Smrgesac 15374d9b34d9Smrgelse 15384d9b34d9Smrg 15394d9b34d9Smrg# Here we handle the default operating systems that come with various machines. 15404d9b34d9Smrg# The value should be what the vendor currently ships out the door with their 15414d9b34d9Smrg# machine or put another way, the most popular os provided with the machine. 15424d9b34d9Smrg 15434d9b34d9Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 15444d9b34d9Smrg# "-sun"), then you have to tell the case statement up towards the top 15454d9b34d9Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 15464d9b34d9Smrg# will signal an error saying that MANUFACTURER isn't an operating 15474d9b34d9Smrg# system, and we'll never get to this point. 15484d9b34d9Smrg 15494d9b34d9Smrgcase $basic_machine in 1550498372abSmrg score-*) 15514d9b34d9Smrg os=-elf 15524d9b34d9Smrg ;; 1553498372abSmrg spu-*) 15544d9b34d9Smrg os=-elf 15554d9b34d9Smrg ;; 15564d9b34d9Smrg *-acorn) 15574d9b34d9Smrg os=-riscix1.2 15584d9b34d9Smrg ;; 15594d9b34d9Smrg arm*-rebel) 15604d9b34d9Smrg os=-linux 15614d9b34d9Smrg ;; 15624d9b34d9Smrg arm*-semi) 15634d9b34d9Smrg os=-aout 15644d9b34d9Smrg ;; 1565498372abSmrg c4x-* | tic4x-*) 1566498372abSmrg os=-coff 15674d9b34d9Smrg ;; 156819d64aeeSmrg c8051-*) 156919d64aeeSmrg os=-elf 157019d64aeeSmrg ;; 157119d64aeeSmrg hexagon-*) 157219d64aeeSmrg os=-elf 157319d64aeeSmrg ;; 157412e1d9cbSmrg tic54x-*) 157512e1d9cbSmrg os=-coff 157612e1d9cbSmrg ;; 157712e1d9cbSmrg tic55x-*) 157812e1d9cbSmrg os=-coff 157912e1d9cbSmrg ;; 158012e1d9cbSmrg tic6x-*) 158112e1d9cbSmrg os=-coff 158212e1d9cbSmrg ;; 15834d9b34d9Smrg # This must come before the *-dec entry. 15844d9b34d9Smrg pdp10-*) 15854d9b34d9Smrg os=-tops20 15864d9b34d9Smrg ;; 15874d9b34d9Smrg pdp11-*) 15884d9b34d9Smrg os=-none 15894d9b34d9Smrg ;; 15904d9b34d9Smrg *-dec | vax-*) 15914d9b34d9Smrg os=-ultrix4.2 15924d9b34d9Smrg ;; 15934d9b34d9Smrg m68*-apollo) 15944d9b34d9Smrg os=-domain 15954d9b34d9Smrg ;; 15964d9b34d9Smrg i386-sun) 15974d9b34d9Smrg os=-sunos4.0.2 15984d9b34d9Smrg ;; 15994d9b34d9Smrg m68000-sun) 16004d9b34d9Smrg os=-sunos3 16014d9b34d9Smrg ;; 16024d9b34d9Smrg m68*-cisco) 16034d9b34d9Smrg os=-aout 16044d9b34d9Smrg ;; 1605498372abSmrg mep-*) 16068512f934Smrg os=-elf 16078512f934Smrg ;; 16084d9b34d9Smrg mips*-cisco) 16094d9b34d9Smrg os=-elf 16104d9b34d9Smrg ;; 16114d9b34d9Smrg mips*-*) 16124d9b34d9Smrg os=-elf 16134d9b34d9Smrg ;; 16144d9b34d9Smrg or32-*) 16154d9b34d9Smrg os=-coff 16164d9b34d9Smrg ;; 16174d9b34d9Smrg *-tti) # must be before sparc entry or we get the wrong os. 16184d9b34d9Smrg os=-sysv3 16194d9b34d9Smrg ;; 16204d9b34d9Smrg sparc-* | *-sun) 16214d9b34d9Smrg os=-sunos4.1.1 16224d9b34d9Smrg ;; 16234d9b34d9Smrg *-be) 16244d9b34d9Smrg os=-beos 16254d9b34d9Smrg ;; 16264d9b34d9Smrg *-haiku) 16274d9b34d9Smrg os=-haiku 16284d9b34d9Smrg ;; 16294d9b34d9Smrg *-ibm) 16304d9b34d9Smrg os=-aix 16314d9b34d9Smrg ;; 1632498372abSmrg *-knuth) 16334d9b34d9Smrg os=-mmixware 16344d9b34d9Smrg ;; 16354d9b34d9Smrg *-wec) 16364d9b34d9Smrg os=-proelf 16374d9b34d9Smrg ;; 16384d9b34d9Smrg *-winbond) 16394d9b34d9Smrg os=-proelf 16404d9b34d9Smrg ;; 16414d9b34d9Smrg *-oki) 16424d9b34d9Smrg os=-proelf 16434d9b34d9Smrg ;; 16444d9b34d9Smrg *-hp) 16454d9b34d9Smrg os=-hpux 16464d9b34d9Smrg ;; 16474d9b34d9Smrg *-hitachi) 16484d9b34d9Smrg os=-hiux 16494d9b34d9Smrg ;; 16504d9b34d9Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 16514d9b34d9Smrg os=-sysv 16524d9b34d9Smrg ;; 16534d9b34d9Smrg *-cbm) 16544d9b34d9Smrg os=-amigaos 16554d9b34d9Smrg ;; 16564d9b34d9Smrg *-dg) 16574d9b34d9Smrg os=-dgux 16584d9b34d9Smrg ;; 16594d9b34d9Smrg *-dolphin) 16604d9b34d9Smrg os=-sysv3 16614d9b34d9Smrg ;; 16624d9b34d9Smrg m68k-ccur) 16634d9b34d9Smrg os=-rtu 16644d9b34d9Smrg ;; 16654d9b34d9Smrg m88k-omron*) 16664d9b34d9Smrg os=-luna 16674d9b34d9Smrg ;; 16684d9b34d9Smrg *-next ) 16694d9b34d9Smrg os=-nextstep 16704d9b34d9Smrg ;; 16714d9b34d9Smrg *-sequent) 16724d9b34d9Smrg os=-ptx 16734d9b34d9Smrg ;; 16744d9b34d9Smrg *-crds) 16754d9b34d9Smrg os=-unos 16764d9b34d9Smrg ;; 16774d9b34d9Smrg *-ns) 16784d9b34d9Smrg os=-genix 16794d9b34d9Smrg ;; 16804d9b34d9Smrg i370-*) 16814d9b34d9Smrg os=-mvs 16824d9b34d9Smrg ;; 16834d9b34d9Smrg *-next) 16844d9b34d9Smrg os=-nextstep3 16854d9b34d9Smrg ;; 16864d9b34d9Smrg *-gould) 16874d9b34d9Smrg os=-sysv 16884d9b34d9Smrg ;; 16894d9b34d9Smrg *-highlevel) 16904d9b34d9Smrg os=-bsd 16914d9b34d9Smrg ;; 16924d9b34d9Smrg *-encore) 16934d9b34d9Smrg os=-bsd 16944d9b34d9Smrg ;; 16954d9b34d9Smrg *-sgi) 16964d9b34d9Smrg os=-irix 16974d9b34d9Smrg ;; 16984d9b34d9Smrg *-siemens) 16994d9b34d9Smrg os=-sysv4 17004d9b34d9Smrg ;; 17014d9b34d9Smrg *-masscomp) 17024d9b34d9Smrg os=-rtu 17034d9b34d9Smrg ;; 17044d9b34d9Smrg f30[01]-fujitsu | f700-fujitsu) 17054d9b34d9Smrg os=-uxpv 17064d9b34d9Smrg ;; 17074d9b34d9Smrg *-rom68k) 17084d9b34d9Smrg os=-coff 17094d9b34d9Smrg ;; 17104d9b34d9Smrg *-*bug) 17114d9b34d9Smrg os=-coff 17124d9b34d9Smrg ;; 17134d9b34d9Smrg *-apple) 17144d9b34d9Smrg os=-macos 17154d9b34d9Smrg ;; 17164d9b34d9Smrg *-atari*) 17174d9b34d9Smrg os=-mint 17184d9b34d9Smrg ;; 17194d9b34d9Smrg *) 17204d9b34d9Smrg os=-none 17214d9b34d9Smrg ;; 17224d9b34d9Smrgesac 17234d9b34d9Smrgfi 17244d9b34d9Smrg 17254d9b34d9Smrg# Here we handle the case where we know the os, and the CPU type, but not the 17264d9b34d9Smrg# manufacturer. We pick the logical manufacturer. 17274d9b34d9Smrgvendor=unknown 17284d9b34d9Smrgcase $basic_machine in 17294d9b34d9Smrg *-unknown) 17304d9b34d9Smrg case $os in 17314d9b34d9Smrg -riscix*) 17324d9b34d9Smrg vendor=acorn 17334d9b34d9Smrg ;; 17344d9b34d9Smrg -sunos*) 17354d9b34d9Smrg vendor=sun 17364d9b34d9Smrg ;; 17378512f934Smrg -cnk*|-aix*) 17384d9b34d9Smrg vendor=ibm 17394d9b34d9Smrg ;; 17404d9b34d9Smrg -beos*) 17414d9b34d9Smrg vendor=be 17424d9b34d9Smrg ;; 17434d9b34d9Smrg -hpux*) 17444d9b34d9Smrg vendor=hp 17454d9b34d9Smrg ;; 17464d9b34d9Smrg -mpeix*) 17474d9b34d9Smrg vendor=hp 17484d9b34d9Smrg ;; 17494d9b34d9Smrg -hiux*) 17504d9b34d9Smrg vendor=hitachi 17514d9b34d9Smrg ;; 17524d9b34d9Smrg -unos*) 17534d9b34d9Smrg vendor=crds 17544d9b34d9Smrg ;; 17554d9b34d9Smrg -dgux*) 17564d9b34d9Smrg vendor=dg 17574d9b34d9Smrg ;; 17584d9b34d9Smrg -luna*) 17594d9b34d9Smrg vendor=omron 17604d9b34d9Smrg ;; 17614d9b34d9Smrg -genix*) 17624d9b34d9Smrg vendor=ns 17634d9b34d9Smrg ;; 17644d9b34d9Smrg -mvs* | -opened*) 17654d9b34d9Smrg vendor=ibm 17664d9b34d9Smrg ;; 17674d9b34d9Smrg -os400*) 17684d9b34d9Smrg vendor=ibm 17694d9b34d9Smrg ;; 17704d9b34d9Smrg -ptx*) 17714d9b34d9Smrg vendor=sequent 17724d9b34d9Smrg ;; 17734d9b34d9Smrg -tpf*) 17744d9b34d9Smrg vendor=ibm 17754d9b34d9Smrg ;; 17764d9b34d9Smrg -vxsim* | -vxworks* | -windiss*) 17774d9b34d9Smrg vendor=wrs 17784d9b34d9Smrg ;; 17794d9b34d9Smrg -aux*) 17804d9b34d9Smrg vendor=apple 17814d9b34d9Smrg ;; 17824d9b34d9Smrg -hms*) 17834d9b34d9Smrg vendor=hitachi 17844d9b34d9Smrg ;; 17854d9b34d9Smrg -mpw* | -macos*) 17864d9b34d9Smrg vendor=apple 17874d9b34d9Smrg ;; 17884d9b34d9Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 17894d9b34d9Smrg vendor=atari 17904d9b34d9Smrg ;; 17914d9b34d9Smrg -vos*) 17924d9b34d9Smrg vendor=stratus 17934d9b34d9Smrg ;; 17944d9b34d9Smrg esac 17954d9b34d9Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 17964d9b34d9Smrg ;; 17974d9b34d9Smrgesac 17984d9b34d9Smrg 17994d9b34d9Smrgecho $basic_machine$os 18004d9b34d9Smrgexit 18014d9b34d9Smrg 18024d9b34d9Smrg# Local variables: 18034d9b34d9Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 18044d9b34d9Smrg# time-stamp-start: "timestamp='" 18054d9b34d9Smrg# time-stamp-format: "%:y-%02m-%02d" 18064d9b34d9Smrg# time-stamp-end: "'" 18074d9b34d9Smrg# End: 1808