config.sub revision 3699b6c4
1c06b6b69Smrg#! /bin/sh 2c06b6b69Smrg# Configuration validation subroutine script. 3c06b6b69Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 43699b6c4Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 59f4658d1Smrg# Free Software Foundation, Inc. 6c06b6b69Smrg 73699b6c4Smrgtimestamp='2010-01-22' 8c06b6b69Smrg 9c06b6b69Smrg# This file is (in principle) common to ALL GNU software. 10c06b6b69Smrg# The presence of a machine in this file suggests that SOME GNU software 11c06b6b69Smrg# can handle that machine. It does not imply ALL GNU software can. 12c06b6b69Smrg# 13c06b6b69Smrg# This file is free software; you can redistribute it and/or modify 14c06b6b69Smrg# it under the terms of the GNU General Public License as published by 15c06b6b69Smrg# the Free Software Foundation; either version 2 of the License, or 16c06b6b69Smrg# (at your option) any later version. 17c06b6b69Smrg# 18c06b6b69Smrg# This program is distributed in the hope that it will be useful, 19c06b6b69Smrg# but WITHOUT ANY WARRANTY; without even the implied warranty of 20c06b6b69Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21c06b6b69Smrg# GNU General Public License for more details. 22c06b6b69Smrg# 23c06b6b69Smrg# You should have received a copy of the GNU General Public License 24c06b6b69Smrg# along with this program; if not, write to the Free Software 259f4658d1Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 269f4658d1Smrg# 02110-1301, USA. 279f4658d1Smrg# 28c06b6b69Smrg# As a special exception to the GNU General Public License, if you 29c06b6b69Smrg# distribute this file as part of a program that contains a 30c06b6b69Smrg# configuration script generated by Autoconf, you may include it under 31c06b6b69Smrg# the same distribution terms that you use for the rest of that program. 32c06b6b69Smrg 339f4658d1Smrg 34c06b6b69Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 357d17d341Smrg# diff and a properly formatted GNU ChangeLog entry. 36c06b6b69Smrg# 37c06b6b69Smrg# Configuration subroutine to validate and canonicalize a configuration type. 38c06b6b69Smrg# Supply the specified configuration type as an argument. 39c06b6b69Smrg# If it is invalid, we print an error message on stderr and exit with code 1. 40c06b6b69Smrg# Otherwise, we print the canonical config type on stdout and succeed. 41c06b6b69Smrg 427d17d341Smrg# You can get the latest version of this script from: 437d17d341Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 447d17d341Smrg 45c06b6b69Smrg# This file is supposed to be the same for all GNU packages 46c06b6b69Smrg# and recognize all the CPU types, system types and aliases 47c06b6b69Smrg# that are meaningful with *any* GNU software. 48c06b6b69Smrg# Each package is responsible for reporting which valid configurations 49c06b6b69Smrg# it does not support. The user should be able to distinguish 50c06b6b69Smrg# a failure to support a valid configuration from a meaningless 51c06b6b69Smrg# configuration. 52c06b6b69Smrg 53c06b6b69Smrg# The goal of this file is to map all the various variations of a given 54c06b6b69Smrg# machine specification into a single specification in the form: 55c06b6b69Smrg# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 56c06b6b69Smrg# or in some cases, the newer four-part form: 57c06b6b69Smrg# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 58c06b6b69Smrg# It is wrong to echo any other type of specification. 59c06b6b69Smrg 60c06b6b69Smrgme=`echo "$0" | sed -e 's,.*/,,'` 61c06b6b69Smrg 62c06b6b69Smrgusage="\ 63c06b6b69SmrgUsage: $0 [OPTION] CPU-MFR-OPSYS 64c06b6b69Smrg $0 [OPTION] ALIAS 65c06b6b69Smrg 66c06b6b69SmrgCanonicalize a configuration name. 67c06b6b69Smrg 68c06b6b69SmrgOperation modes: 69c06b6b69Smrg -h, --help print this help, then exit 70c06b6b69Smrg -t, --time-stamp print date of last modification, then exit 71c06b6b69Smrg -v, --version print version number, then exit 72c06b6b69Smrg 73c06b6b69SmrgReport bugs and patches to <config-patches@gnu.org>." 74c06b6b69Smrg 75c06b6b69Smrgversion="\ 76c06b6b69SmrgGNU config.sub ($timestamp) 77c06b6b69Smrg 783699b6c4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 793699b6c4Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 803699b6c4SmrgSoftware Foundation, Inc. 81c06b6b69Smrg 82c06b6b69SmrgThis is free software; see the source for copying conditions. There is NO 83c06b6b69Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 84c06b6b69Smrg 85c06b6b69Smrghelp=" 86c06b6b69SmrgTry \`$me --help' for more information." 87c06b6b69Smrg 88c06b6b69Smrg# Parse command line 89c06b6b69Smrgwhile test $# -gt 0 ; do 90c06b6b69Smrg case $1 in 91c06b6b69Smrg --time-stamp | --time* | -t ) 929f4658d1Smrg echo "$timestamp" ; exit ;; 93c06b6b69Smrg --version | -v ) 949f4658d1Smrg echo "$version" ; exit ;; 95c06b6b69Smrg --help | --h* | -h ) 969f4658d1Smrg echo "$usage"; exit ;; 97c06b6b69Smrg -- ) # Stop option processing 98c06b6b69Smrg shift; break ;; 99c06b6b69Smrg - ) # Use stdin as input. 100c06b6b69Smrg break ;; 101c06b6b69Smrg -* ) 102c06b6b69Smrg echo "$me: invalid option $1$help" 103c06b6b69Smrg exit 1 ;; 104c06b6b69Smrg 105c06b6b69Smrg *local*) 106c06b6b69Smrg # First pass through any local machine types. 107c06b6b69Smrg echo $1 1089f4658d1Smrg exit ;; 109c06b6b69Smrg 110c06b6b69Smrg * ) 111c06b6b69Smrg break ;; 112c06b6b69Smrg esac 113c06b6b69Smrgdone 114c06b6b69Smrg 115c06b6b69Smrgcase $# in 116c06b6b69Smrg 0) echo "$me: missing argument$help" >&2 117c06b6b69Smrg exit 1;; 118c06b6b69Smrg 1) ;; 119c06b6b69Smrg *) echo "$me: too many arguments$help" >&2 120c06b6b69Smrg exit 1;; 121c06b6b69Smrgesac 122c06b6b69Smrg 123c06b6b69Smrg# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 124c06b6b69Smrg# Here we must recognize all the valid KERNEL-OS combinations. 125c06b6b69Smrgmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 126c06b6b69Smrgcase $maybe_os in 1279f4658d1Smrg nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 1289f4658d1Smrg uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 1297d17d341Smrg kopensolaris*-gnu* | \ 1309f4658d1Smrg storm-chaos* | os2-emx* | rtmk-nova*) 131c06b6b69Smrg os=-$maybe_os 132c06b6b69Smrg basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 133c06b6b69Smrg ;; 134c06b6b69Smrg *) 135c06b6b69Smrg basic_machine=`echo $1 | sed 's/-[^-]*$//'` 136c06b6b69Smrg if [ $basic_machine != $1 ] 137c06b6b69Smrg then os=`echo $1 | sed 's/.*-/-/'` 138c06b6b69Smrg else os=; fi 139c06b6b69Smrg ;; 140c06b6b69Smrgesac 141c06b6b69Smrg 142c06b6b69Smrg### Let's recognize common machines as not being operating systems so 143c06b6b69Smrg### that things like config.sub decstation-3100 work. We also 144c06b6b69Smrg### recognize some manufacturers as not being operating systems, so we 145c06b6b69Smrg### can provide default operating systems below. 146c06b6b69Smrgcase $os in 147c06b6b69Smrg -sun*os*) 148c06b6b69Smrg # Prevent following clause from handling this invalid input. 149c06b6b69Smrg ;; 150c06b6b69Smrg -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 151c06b6b69Smrg -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 152c06b6b69Smrg -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 153c06b6b69Smrg -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 154c06b6b69Smrg -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 155c06b6b69Smrg -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 1567d17d341Smrg -apple | -axis | -knuth | -cray | -microblaze) 157c06b6b69Smrg os= 158c06b6b69Smrg basic_machine=$1 159c06b6b69Smrg ;; 1607d17d341Smrg -bluegene*) 1617d17d341Smrg os=-cnk 1627d17d341Smrg ;; 163c06b6b69Smrg -sim | -cisco | -oki | -wec | -winbond) 164c06b6b69Smrg os= 165c06b6b69Smrg basic_machine=$1 166c06b6b69Smrg ;; 167c06b6b69Smrg -scout) 168c06b6b69Smrg ;; 169c06b6b69Smrg -wrs) 170c06b6b69Smrg os=-vxworks 171c06b6b69Smrg basic_machine=$1 172c06b6b69Smrg ;; 173c06b6b69Smrg -chorusos*) 174c06b6b69Smrg os=-chorusos 175c06b6b69Smrg basic_machine=$1 176c06b6b69Smrg ;; 177c06b6b69Smrg -chorusrdb) 178c06b6b69Smrg os=-chorusrdb 179c06b6b69Smrg basic_machine=$1 180c06b6b69Smrg ;; 181c06b6b69Smrg -hiux*) 182c06b6b69Smrg os=-hiuxwe2 183c06b6b69Smrg ;; 1849f4658d1Smrg -sco6) 1859f4658d1Smrg os=-sco5v6 1869f4658d1Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 1879f4658d1Smrg ;; 188c06b6b69Smrg -sco5) 189c06b6b69Smrg os=-sco3.2v5 190c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 191c06b6b69Smrg ;; 192c06b6b69Smrg -sco4) 193c06b6b69Smrg os=-sco3.2v4 194c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 195c06b6b69Smrg ;; 196c06b6b69Smrg -sco3.2.[4-9]*) 197c06b6b69Smrg os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 198c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 199c06b6b69Smrg ;; 200c06b6b69Smrg -sco3.2v[4-9]*) 201c06b6b69Smrg # Don't forget version if it is 3.2v4 or newer. 202c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 203c06b6b69Smrg ;; 2049f4658d1Smrg -sco5v6*) 2059f4658d1Smrg # Don't forget version if it is 3.2v4 or newer. 2069f4658d1Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 2079f4658d1Smrg ;; 208c06b6b69Smrg -sco*) 209c06b6b69Smrg os=-sco3.2v2 210c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 211c06b6b69Smrg ;; 212c06b6b69Smrg -udk*) 213c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 214c06b6b69Smrg ;; 215c06b6b69Smrg -isc) 216c06b6b69Smrg os=-isc2.2 217c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 218c06b6b69Smrg ;; 219c06b6b69Smrg -clix*) 220c06b6b69Smrg basic_machine=clipper-intergraph 221c06b6b69Smrg ;; 222c06b6b69Smrg -isc*) 223c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 224c06b6b69Smrg ;; 225c06b6b69Smrg -lynx*) 226c06b6b69Smrg os=-lynxos 227c06b6b69Smrg ;; 228c06b6b69Smrg -ptx*) 229c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 230c06b6b69Smrg ;; 231c06b6b69Smrg -windowsnt*) 232c06b6b69Smrg os=`echo $os | sed -e 's/windowsnt/winnt/'` 233c06b6b69Smrg ;; 234c06b6b69Smrg -psos*) 235c06b6b69Smrg os=-psos 236c06b6b69Smrg ;; 237c06b6b69Smrg -mint | -mint[0-9]*) 238c06b6b69Smrg basic_machine=m68k-atari 239c06b6b69Smrg os=-mint 240c06b6b69Smrg ;; 241c06b6b69Smrgesac 242c06b6b69Smrg 243c06b6b69Smrg# Decode aliases for certain CPU-COMPANY combinations. 244c06b6b69Smrgcase $basic_machine in 245c06b6b69Smrg # Recognize the basic CPU types without company name. 246c06b6b69Smrg # Some are omitted here because they have special meanings below. 247c06b6b69Smrg 1750a | 580 \ 248c06b6b69Smrg | a29k \ 249c06b6b69Smrg | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 250c06b6b69Smrg | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 2519f4658d1Smrg | am33_2.0 \ 2529f4658d1Smrg | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 2539f4658d1Smrg | bfin \ 254c06b6b69Smrg | c4x | clipper \ 255c06b6b69Smrg | d10v | d30v | dlx | dsp16xx \ 2569f4658d1Smrg | fido | fr30 | frv \ 257c06b6b69Smrg | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 258c06b6b69Smrg | i370 | i860 | i960 | ia64 \ 2599f4658d1Smrg | ip2k | iq2000 \ 2607d17d341Smrg | lm32 \ 2619f4658d1Smrg | m32c | m32r | m32rle | m68000 | m68k | m88k \ 262b20b881bSmrg | maxq | mb | microblaze | mcore | mep | metag \ 263c06b6b69Smrg | mips | mipsbe | mipseb | mipsel | mipsle \ 264c06b6b69Smrg | mips16 \ 265c06b6b69Smrg | mips64 | mips64el \ 266b20b881bSmrg | mips64octeon | mips64octeonel \ 267c06b6b69Smrg | mips64orion | mips64orionel \ 268b20b881bSmrg | mips64r5900 | mips64r5900el \ 269b20b881bSmrg | mips64vr | mips64vrel \ 270c06b6b69Smrg | mips64vr4100 | mips64vr4100el \ 271c06b6b69Smrg | mips64vr4300 | mips64vr4300el \ 272c06b6b69Smrg | mips64vr5000 | mips64vr5000el \ 2739f4658d1Smrg | mips64vr5900 | mips64vr5900el \ 274c06b6b69Smrg | mipsisa32 | mipsisa32el \ 275c06b6b69Smrg | mipsisa32r2 | mipsisa32r2el \ 276c06b6b69Smrg | mipsisa64 | mipsisa64el \ 2779f4658d1Smrg | mipsisa64r2 | mipsisa64r2el \ 278c06b6b69Smrg | mipsisa64sb1 | mipsisa64sb1el \ 279c06b6b69Smrg | mipsisa64sr71k | mipsisa64sr71kel \ 280c06b6b69Smrg | mipstx39 | mipstx39el \ 281c06b6b69Smrg | mn10200 | mn10300 \ 2827d17d341Smrg | moxie \ 2839f4658d1Smrg | mt \ 284c06b6b69Smrg | msp430 \ 2859f4658d1Smrg | nios | nios2 \ 286c06b6b69Smrg | ns16k | ns32k \ 2879f4658d1Smrg | or32 \ 288c06b6b69Smrg | pdp10 | pdp11 | pj | pjl \ 289c06b6b69Smrg | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 290c06b6b69Smrg | pyramid \ 2917d17d341Smrg | rx \ 2929f4658d1Smrg | score \ 2937d17d341Smrg | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 294c06b6b69Smrg | sh64 | sh64le \ 2959f4658d1Smrg | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 2969f4658d1Smrg | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 2979f4658d1Smrg | spu | strongarm \ 298c06b6b69Smrg | tahoe | thumb | tic4x | tic80 | tron \ 2997d17d341Smrg | ubicom32 \ 300c06b6b69Smrg | v850 | v850e \ 301c06b6b69Smrg | we32k \ 3029f4658d1Smrg | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ 303b20b881bSmrg | z8k | z80) 304c06b6b69Smrg basic_machine=$basic_machine-unknown 305c06b6b69Smrg ;; 3067d17d341Smrg m6811 | m68hc11 | m6812 | m68hc12 | picochip) 307c06b6b69Smrg # Motorola 68HC11/12. 308c06b6b69Smrg basic_machine=$basic_machine-unknown 309c06b6b69Smrg os=-none 310c06b6b69Smrg ;; 311c06b6b69Smrg m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 312c06b6b69Smrg ;; 3139f4658d1Smrg ms1) 3149f4658d1Smrg basic_machine=mt-unknown 3159f4658d1Smrg ;; 316c06b6b69Smrg 317c06b6b69Smrg # We use `pc' rather than `unknown' 318c06b6b69Smrg # because (1) that's what they normally are, and 319c06b6b69Smrg # (2) the word "unknown" tends to confuse beginning users. 320c06b6b69Smrg i*86 | x86_64) 321c06b6b69Smrg basic_machine=$basic_machine-pc 322c06b6b69Smrg ;; 323c06b6b69Smrg # Object if more than one company name word. 324c06b6b69Smrg *-*-*) 325c06b6b69Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 326c06b6b69Smrg exit 1 327c06b6b69Smrg ;; 328c06b6b69Smrg # Recognize the basic CPU types with company name. 329c06b6b69Smrg 580-* \ 330c06b6b69Smrg | a29k-* \ 331c06b6b69Smrg | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 332c06b6b69Smrg | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 333c06b6b69Smrg | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 334c06b6b69Smrg | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 3359f4658d1Smrg | avr-* | avr32-* \ 3369f4658d1Smrg | bfin-* | bs2000-* \ 337c06b6b69Smrg | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 3389f4658d1Smrg | clipper-* | craynv-* | cydra-* \ 339c06b6b69Smrg | d10v-* | d30v-* | dlx-* \ 340c06b6b69Smrg | elxsi-* \ 3419f4658d1Smrg | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 342c06b6b69Smrg | h8300-* | h8500-* \ 343c06b6b69Smrg | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 344c06b6b69Smrg | i*86-* | i860-* | i960-* | ia64-* \ 3459f4658d1Smrg | ip2k-* | iq2000-* \ 3467d17d341Smrg | lm32-* \ 3479f4658d1Smrg | m32c-* | m32r-* | m32rle-* \ 348c06b6b69Smrg | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 3497d17d341Smrg | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 350c06b6b69Smrg | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 351c06b6b69Smrg | mips16-* \ 352c06b6b69Smrg | mips64-* | mips64el-* \ 353b20b881bSmrg | mips64octeon-* | mips64octeonel-* \ 354c06b6b69Smrg | mips64orion-* | mips64orionel-* \ 355b20b881bSmrg | mips64r5900-* | mips64r5900el-* \ 356b20b881bSmrg | mips64vr-* | mips64vrel-* \ 357c06b6b69Smrg | mips64vr4100-* | mips64vr4100el-* \ 358c06b6b69Smrg | mips64vr4300-* | mips64vr4300el-* \ 359c06b6b69Smrg | mips64vr5000-* | mips64vr5000el-* \ 3609f4658d1Smrg | mips64vr5900-* | mips64vr5900el-* \ 361c06b6b69Smrg | mipsisa32-* | mipsisa32el-* \ 362c06b6b69Smrg | mipsisa32r2-* | mipsisa32r2el-* \ 363c06b6b69Smrg | mipsisa64-* | mipsisa64el-* \ 3649f4658d1Smrg | mipsisa64r2-* | mipsisa64r2el-* \ 365c06b6b69Smrg | mipsisa64sb1-* | mipsisa64sb1el-* \ 366c06b6b69Smrg | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 367c06b6b69Smrg | mipstx39-* | mipstx39el-* \ 3689f4658d1Smrg | mmix-* \ 3699f4658d1Smrg | mt-* \ 370c06b6b69Smrg | msp430-* \ 3719f4658d1Smrg | nios-* | nios2-* \ 3729f4658d1Smrg | none-* | np1-* | ns16k-* | ns32k-* \ 373c06b6b69Smrg | orion-* \ 374c06b6b69Smrg | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 375c06b6b69Smrg | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 376c06b6b69Smrg | pyramid-* \ 3777d17d341Smrg | romp-* | rs6000-* | rx-* \ 3787d17d341Smrg | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 379c06b6b69Smrg | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 3809f4658d1Smrg | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 3819f4658d1Smrg | sparclite-* \ 3829f4658d1Smrg | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 383c06b6b69Smrg | tahoe-* | thumb-* \ 3843699b6c4Smrg | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 3853699b6c4Smrg | tile-* | tilegx-* \ 386c06b6b69Smrg | tron-* \ 3877d17d341Smrg | ubicom32-* \ 388c06b6b69Smrg | v850-* | v850e-* | vax-* \ 389c06b6b69Smrg | we32k-* \ 3909f4658d1Smrg | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ 3919f4658d1Smrg | xstormy16-* | xtensa*-* \ 392c06b6b69Smrg | ymp-* \ 393b20b881bSmrg | z8k-* | z80-*) 394c06b6b69Smrg ;; 3959f4658d1Smrg # Recognize the basic CPU types without company name, with glob match. 3969f4658d1Smrg xtensa*) 3979f4658d1Smrg basic_machine=$basic_machine-unknown 3989f4658d1Smrg ;; 399c06b6b69Smrg # Recognize the various machine names and aliases which stand 400c06b6b69Smrg # for a CPU type and a company and sometimes even an OS. 401c06b6b69Smrg 386bsd) 402c06b6b69Smrg basic_machine=i386-unknown 403c06b6b69Smrg os=-bsd 404c06b6b69Smrg ;; 405c06b6b69Smrg 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 406c06b6b69Smrg basic_machine=m68000-att 407c06b6b69Smrg ;; 408c06b6b69Smrg 3b*) 409c06b6b69Smrg basic_machine=we32k-att 410c06b6b69Smrg ;; 411c06b6b69Smrg a29khif) 412c06b6b69Smrg basic_machine=a29k-amd 413c06b6b69Smrg os=-udi 414c06b6b69Smrg ;; 4159f4658d1Smrg abacus) 4169f4658d1Smrg basic_machine=abacus-unknown 4179f4658d1Smrg ;; 418c06b6b69Smrg adobe68k) 419c06b6b69Smrg basic_machine=m68010-adobe 420c06b6b69Smrg os=-scout 421c06b6b69Smrg ;; 422c06b6b69Smrg alliant | fx80) 423c06b6b69Smrg basic_machine=fx80-alliant 424c06b6b69Smrg ;; 425c06b6b69Smrg altos | altos3068) 426c06b6b69Smrg basic_machine=m68k-altos 427c06b6b69Smrg ;; 428c06b6b69Smrg am29k) 429c06b6b69Smrg basic_machine=a29k-none 430c06b6b69Smrg os=-bsd 431c06b6b69Smrg ;; 432c06b6b69Smrg amd64) 433c06b6b69Smrg basic_machine=x86_64-pc 434c06b6b69Smrg ;; 4359f4658d1Smrg amd64-*) 4369f4658d1Smrg basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 4379f4658d1Smrg ;; 438c06b6b69Smrg amdahl) 439c06b6b69Smrg basic_machine=580-amdahl 440c06b6b69Smrg os=-sysv 441c06b6b69Smrg ;; 442c06b6b69Smrg amiga | amiga-*) 443c06b6b69Smrg basic_machine=m68k-unknown 444c06b6b69Smrg ;; 445c06b6b69Smrg amigaos | amigados) 446c06b6b69Smrg basic_machine=m68k-unknown 447c06b6b69Smrg os=-amigaos 448c06b6b69Smrg ;; 449c06b6b69Smrg amigaunix | amix) 450c06b6b69Smrg basic_machine=m68k-unknown 451c06b6b69Smrg os=-sysv4 452c06b6b69Smrg ;; 453c06b6b69Smrg apollo68) 454c06b6b69Smrg basic_machine=m68k-apollo 455c06b6b69Smrg os=-sysv 456c06b6b69Smrg ;; 457c06b6b69Smrg apollo68bsd) 458c06b6b69Smrg basic_machine=m68k-apollo 459c06b6b69Smrg os=-bsd 460c06b6b69Smrg ;; 4617d17d341Smrg aros) 4627d17d341Smrg basic_machine=i386-pc 4637d17d341Smrg os=-aros 4647d17d341Smrg ;; 465c06b6b69Smrg aux) 466c06b6b69Smrg basic_machine=m68k-apple 467c06b6b69Smrg os=-aux 468c06b6b69Smrg ;; 469c06b6b69Smrg balance) 470c06b6b69Smrg basic_machine=ns32k-sequent 471c06b6b69Smrg os=-dynix 472c06b6b69Smrg ;; 4739f4658d1Smrg blackfin) 4749f4658d1Smrg basic_machine=bfin-unknown 4759f4658d1Smrg os=-linux 4769f4658d1Smrg ;; 4779f4658d1Smrg blackfin-*) 4789f4658d1Smrg basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 4799f4658d1Smrg os=-linux 4809f4658d1Smrg ;; 4817d17d341Smrg bluegene*) 4827d17d341Smrg basic_machine=powerpc-ibm 4837d17d341Smrg os=-cnk 4847d17d341Smrg ;; 485c06b6b69Smrg c90) 486c06b6b69Smrg basic_machine=c90-cray 487c06b6b69Smrg os=-unicos 488c06b6b69Smrg ;; 489b20b881bSmrg cegcc) 490b20b881bSmrg basic_machine=arm-unknown 491b20b881bSmrg os=-cegcc 492b20b881bSmrg ;; 493c06b6b69Smrg convex-c1) 494c06b6b69Smrg basic_machine=c1-convex 495c06b6b69Smrg os=-bsd 496c06b6b69Smrg ;; 497c06b6b69Smrg convex-c2) 498c06b6b69Smrg basic_machine=c2-convex 499c06b6b69Smrg os=-bsd 500c06b6b69Smrg ;; 501c06b6b69Smrg convex-c32) 502c06b6b69Smrg basic_machine=c32-convex 503c06b6b69Smrg os=-bsd 504c06b6b69Smrg ;; 505c06b6b69Smrg convex-c34) 506c06b6b69Smrg basic_machine=c34-convex 507c06b6b69Smrg os=-bsd 508c06b6b69Smrg ;; 509c06b6b69Smrg convex-c38) 510c06b6b69Smrg basic_machine=c38-convex 511c06b6b69Smrg os=-bsd 512c06b6b69Smrg ;; 513c06b6b69Smrg cray | j90) 514c06b6b69Smrg basic_machine=j90-cray 515c06b6b69Smrg os=-unicos 516c06b6b69Smrg ;; 5179f4658d1Smrg craynv) 5189f4658d1Smrg basic_machine=craynv-cray 5199f4658d1Smrg os=-unicosmp 5209f4658d1Smrg ;; 5219f4658d1Smrg cr16) 5229f4658d1Smrg basic_machine=cr16-unknown 5239f4658d1Smrg os=-elf 5249f4658d1Smrg ;; 525c06b6b69Smrg crds | unos) 526c06b6b69Smrg basic_machine=m68k-crds 527c06b6b69Smrg ;; 5289f4658d1Smrg crisv32 | crisv32-* | etraxfs*) 5299f4658d1Smrg basic_machine=crisv32-axis 5309f4658d1Smrg ;; 531c06b6b69Smrg cris | cris-* | etrax*) 532c06b6b69Smrg basic_machine=cris-axis 533c06b6b69Smrg ;; 5349f4658d1Smrg crx) 5359f4658d1Smrg basic_machine=crx-unknown 5369f4658d1Smrg os=-elf 5379f4658d1Smrg ;; 538c06b6b69Smrg da30 | da30-*) 539c06b6b69Smrg basic_machine=m68k-da30 540c06b6b69Smrg ;; 541c06b6b69Smrg decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 542c06b6b69Smrg basic_machine=mips-dec 543c06b6b69Smrg ;; 544c06b6b69Smrg decsystem10* | dec10*) 545c06b6b69Smrg basic_machine=pdp10-dec 546c06b6b69Smrg os=-tops10 547c06b6b69Smrg ;; 548c06b6b69Smrg decsystem20* | dec20*) 549c06b6b69Smrg basic_machine=pdp10-dec 550c06b6b69Smrg os=-tops20 551c06b6b69Smrg ;; 552c06b6b69Smrg delta | 3300 | motorola-3300 | motorola-delta \ 553c06b6b69Smrg | 3300-motorola | delta-motorola) 554c06b6b69Smrg basic_machine=m68k-motorola 555c06b6b69Smrg ;; 556c06b6b69Smrg delta88) 557c06b6b69Smrg basic_machine=m88k-motorola 558c06b6b69Smrg os=-sysv3 559c06b6b69Smrg ;; 560b20b881bSmrg dicos) 561b20b881bSmrg basic_machine=i686-pc 562b20b881bSmrg os=-dicos 563b20b881bSmrg ;; 5649f4658d1Smrg djgpp) 5659f4658d1Smrg basic_machine=i586-pc 5669f4658d1Smrg os=-msdosdjgpp 5679f4658d1Smrg ;; 568c06b6b69Smrg dpx20 | dpx20-*) 569c06b6b69Smrg basic_machine=rs6000-bull 570c06b6b69Smrg os=-bosx 571c06b6b69Smrg ;; 572c06b6b69Smrg dpx2* | dpx2*-bull) 573c06b6b69Smrg basic_machine=m68k-bull 574c06b6b69Smrg os=-sysv3 575c06b6b69Smrg ;; 576c06b6b69Smrg ebmon29k) 577c06b6b69Smrg basic_machine=a29k-amd 578c06b6b69Smrg os=-ebmon 579c06b6b69Smrg ;; 580c06b6b69Smrg elxsi) 581c06b6b69Smrg basic_machine=elxsi-elxsi 582c06b6b69Smrg os=-bsd 583c06b6b69Smrg ;; 584c06b6b69Smrg encore | umax | mmax) 585c06b6b69Smrg basic_machine=ns32k-encore 586c06b6b69Smrg ;; 587c06b6b69Smrg es1800 | OSE68k | ose68k | ose | OSE) 588c06b6b69Smrg basic_machine=m68k-ericsson 589c06b6b69Smrg os=-ose 590c06b6b69Smrg ;; 591c06b6b69Smrg fx2800) 592c06b6b69Smrg basic_machine=i860-alliant 593c06b6b69Smrg ;; 594c06b6b69Smrg genix) 595c06b6b69Smrg basic_machine=ns32k-ns 596c06b6b69Smrg ;; 597c06b6b69Smrg gmicro) 598c06b6b69Smrg basic_machine=tron-gmicro 599c06b6b69Smrg os=-sysv 600c06b6b69Smrg ;; 601c06b6b69Smrg go32) 602c06b6b69Smrg basic_machine=i386-pc 603c06b6b69Smrg os=-go32 604c06b6b69Smrg ;; 605c06b6b69Smrg h3050r* | hiux*) 606c06b6b69Smrg basic_machine=hppa1.1-hitachi 607c06b6b69Smrg os=-hiuxwe2 608c06b6b69Smrg ;; 609c06b6b69Smrg h8300hms) 610c06b6b69Smrg basic_machine=h8300-hitachi 611c06b6b69Smrg os=-hms 612c06b6b69Smrg ;; 613c06b6b69Smrg h8300xray) 614c06b6b69Smrg basic_machine=h8300-hitachi 615c06b6b69Smrg os=-xray 616c06b6b69Smrg ;; 617c06b6b69Smrg h8500hms) 618c06b6b69Smrg basic_machine=h8500-hitachi 619c06b6b69Smrg os=-hms 620c06b6b69Smrg ;; 621c06b6b69Smrg harris) 622c06b6b69Smrg basic_machine=m88k-harris 623c06b6b69Smrg os=-sysv3 624c06b6b69Smrg ;; 625c06b6b69Smrg hp300-*) 626c06b6b69Smrg basic_machine=m68k-hp 627c06b6b69Smrg ;; 628c06b6b69Smrg hp300bsd) 629c06b6b69Smrg basic_machine=m68k-hp 630c06b6b69Smrg os=-bsd 631c06b6b69Smrg ;; 632c06b6b69Smrg hp300hpux) 633c06b6b69Smrg basic_machine=m68k-hp 634c06b6b69Smrg os=-hpux 635c06b6b69Smrg ;; 636c06b6b69Smrg hp3k9[0-9][0-9] | hp9[0-9][0-9]) 637c06b6b69Smrg basic_machine=hppa1.0-hp 638c06b6b69Smrg ;; 639c06b6b69Smrg hp9k2[0-9][0-9] | hp9k31[0-9]) 640c06b6b69Smrg basic_machine=m68000-hp 641c06b6b69Smrg ;; 642c06b6b69Smrg hp9k3[2-9][0-9]) 643c06b6b69Smrg basic_machine=m68k-hp 644c06b6b69Smrg ;; 645c06b6b69Smrg hp9k6[0-9][0-9] | hp6[0-9][0-9]) 646c06b6b69Smrg basic_machine=hppa1.0-hp 647c06b6b69Smrg ;; 648c06b6b69Smrg hp9k7[0-79][0-9] | hp7[0-79][0-9]) 649c06b6b69Smrg basic_machine=hppa1.1-hp 650c06b6b69Smrg ;; 651c06b6b69Smrg hp9k78[0-9] | hp78[0-9]) 652c06b6b69Smrg # FIXME: really hppa2.0-hp 653c06b6b69Smrg basic_machine=hppa1.1-hp 654c06b6b69Smrg ;; 655c06b6b69Smrg hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 656c06b6b69Smrg # FIXME: really hppa2.0-hp 657c06b6b69Smrg basic_machine=hppa1.1-hp 658c06b6b69Smrg ;; 659c06b6b69Smrg hp9k8[0-9][13679] | hp8[0-9][13679]) 660c06b6b69Smrg basic_machine=hppa1.1-hp 661c06b6b69Smrg ;; 662c06b6b69Smrg hp9k8[0-9][0-9] | hp8[0-9][0-9]) 663c06b6b69Smrg basic_machine=hppa1.0-hp 664c06b6b69Smrg ;; 665c06b6b69Smrg hppa-next) 666c06b6b69Smrg os=-nextstep3 667c06b6b69Smrg ;; 668c06b6b69Smrg hppaosf) 669c06b6b69Smrg basic_machine=hppa1.1-hp 670c06b6b69Smrg os=-osf 671c06b6b69Smrg ;; 672c06b6b69Smrg hppro) 673c06b6b69Smrg basic_machine=hppa1.1-hp 674c06b6b69Smrg os=-proelf 675c06b6b69Smrg ;; 676c06b6b69Smrg i370-ibm* | ibm*) 677c06b6b69Smrg basic_machine=i370-ibm 678c06b6b69Smrg ;; 679c06b6b69Smrg# I'm not sure what "Sysv32" means. Should this be sysv3.2? 680c06b6b69Smrg i*86v32) 681c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 682c06b6b69Smrg os=-sysv32 683c06b6b69Smrg ;; 684c06b6b69Smrg i*86v4*) 685c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 686c06b6b69Smrg os=-sysv4 687c06b6b69Smrg ;; 688c06b6b69Smrg i*86v) 689c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 690c06b6b69Smrg os=-sysv 691c06b6b69Smrg ;; 692c06b6b69Smrg i*86sol2) 693c06b6b69Smrg basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 694c06b6b69Smrg os=-solaris2 695c06b6b69Smrg ;; 696c06b6b69Smrg i386mach) 697c06b6b69Smrg basic_machine=i386-mach 698c06b6b69Smrg os=-mach 699c06b6b69Smrg ;; 700c06b6b69Smrg i386-vsta | vsta) 701c06b6b69Smrg basic_machine=i386-unknown 702c06b6b69Smrg os=-vsta 703c06b6b69Smrg ;; 704c06b6b69Smrg iris | iris4d) 705c06b6b69Smrg basic_machine=mips-sgi 706c06b6b69Smrg case $os in 707c06b6b69Smrg -irix*) 708c06b6b69Smrg ;; 709c06b6b69Smrg *) 710c06b6b69Smrg os=-irix4 711c06b6b69Smrg ;; 712c06b6b69Smrg esac 713c06b6b69Smrg ;; 714c06b6b69Smrg isi68 | isi) 715c06b6b69Smrg basic_machine=m68k-isi 716c06b6b69Smrg os=-sysv 717c06b6b69Smrg ;; 7189f4658d1Smrg m68knommu) 7199f4658d1Smrg basic_machine=m68k-unknown 7209f4658d1Smrg os=-linux 7219f4658d1Smrg ;; 7229f4658d1Smrg m68knommu-*) 7239f4658d1Smrg basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 7249f4658d1Smrg os=-linux 7259f4658d1Smrg ;; 726c06b6b69Smrg m88k-omron*) 727c06b6b69Smrg basic_machine=m88k-omron 728c06b6b69Smrg ;; 729c06b6b69Smrg magnum | m3230) 730c06b6b69Smrg basic_machine=mips-mips 731c06b6b69Smrg os=-sysv 732c06b6b69Smrg ;; 733c06b6b69Smrg merlin) 734c06b6b69Smrg basic_machine=ns32k-utek 735c06b6b69Smrg os=-sysv 736c06b6b69Smrg ;; 7377d17d341Smrg microblaze) 7387d17d341Smrg basic_machine=microblaze-xilinx 7397d17d341Smrg ;; 740c06b6b69Smrg mingw32) 741c06b6b69Smrg basic_machine=i386-pc 742c06b6b69Smrg os=-mingw32 743c06b6b69Smrg ;; 7449f4658d1Smrg mingw32ce) 7459f4658d1Smrg basic_machine=arm-unknown 7469f4658d1Smrg os=-mingw32ce 7479f4658d1Smrg ;; 748c06b6b69Smrg miniframe) 749c06b6b69Smrg basic_machine=m68000-convergent 750c06b6b69Smrg ;; 751c06b6b69Smrg *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 752c06b6b69Smrg basic_machine=m68k-atari 753c06b6b69Smrg os=-mint 754c06b6b69Smrg ;; 755c06b6b69Smrg mips3*-*) 756c06b6b69Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 757c06b6b69Smrg ;; 758c06b6b69Smrg mips3*) 759c06b6b69Smrg basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 760c06b6b69Smrg ;; 761c06b6b69Smrg monitor) 762c06b6b69Smrg basic_machine=m68k-rom68k 763c06b6b69Smrg os=-coff 764c06b6b69Smrg ;; 765c06b6b69Smrg morphos) 766c06b6b69Smrg basic_machine=powerpc-unknown 767c06b6b69Smrg os=-morphos 768c06b6b69Smrg ;; 769c06b6b69Smrg msdos) 770c06b6b69Smrg basic_machine=i386-pc 771c06b6b69Smrg os=-msdos 772c06b6b69Smrg ;; 7739f4658d1Smrg ms1-*) 7749f4658d1Smrg basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 7759f4658d1Smrg ;; 776c06b6b69Smrg mvs) 777c06b6b69Smrg basic_machine=i370-ibm 778c06b6b69Smrg os=-mvs 779c06b6b69Smrg ;; 780c06b6b69Smrg ncr3000) 781c06b6b69Smrg basic_machine=i486-ncr 782c06b6b69Smrg os=-sysv4 783c06b6b69Smrg ;; 784c06b6b69Smrg netbsd386) 785c06b6b69Smrg basic_machine=i386-unknown 786c06b6b69Smrg os=-netbsd 787c06b6b69Smrg ;; 788c06b6b69Smrg netwinder) 789c06b6b69Smrg basic_machine=armv4l-rebel 790c06b6b69Smrg os=-linux 791c06b6b69Smrg ;; 792c06b6b69Smrg news | news700 | news800 | news900) 793c06b6b69Smrg basic_machine=m68k-sony 794c06b6b69Smrg os=-newsos 795c06b6b69Smrg ;; 796c06b6b69Smrg news1000) 797c06b6b69Smrg basic_machine=m68030-sony 798c06b6b69Smrg os=-newsos 799c06b6b69Smrg ;; 800c06b6b69Smrg news-3600 | risc-news) 801c06b6b69Smrg basic_machine=mips-sony 802c06b6b69Smrg os=-newsos 803c06b6b69Smrg ;; 804c06b6b69Smrg necv70) 805c06b6b69Smrg basic_machine=v70-nec 806c06b6b69Smrg os=-sysv 807c06b6b69Smrg ;; 808c06b6b69Smrg next | m*-next ) 809c06b6b69Smrg basic_machine=m68k-next 810c06b6b69Smrg case $os in 811c06b6b69Smrg -nextstep* ) 812c06b6b69Smrg ;; 813c06b6b69Smrg -ns2*) 814c06b6b69Smrg os=-nextstep2 815c06b6b69Smrg ;; 816c06b6b69Smrg *) 817c06b6b69Smrg os=-nextstep3 818c06b6b69Smrg ;; 819c06b6b69Smrg esac 820c06b6b69Smrg ;; 821c06b6b69Smrg nh3000) 822c06b6b69Smrg basic_machine=m68k-harris 823c06b6b69Smrg os=-cxux 824c06b6b69Smrg ;; 825c06b6b69Smrg nh[45]000) 826c06b6b69Smrg basic_machine=m88k-harris 827c06b6b69Smrg os=-cxux 828c06b6b69Smrg ;; 829c06b6b69Smrg nindy960) 830c06b6b69Smrg basic_machine=i960-intel 831c06b6b69Smrg os=-nindy 832c06b6b69Smrg ;; 833c06b6b69Smrg mon960) 834c06b6b69Smrg basic_machine=i960-intel 835c06b6b69Smrg os=-mon960 836c06b6b69Smrg ;; 837c06b6b69Smrg nonstopux) 838c06b6b69Smrg basic_machine=mips-compaq 839c06b6b69Smrg os=-nonstopux 840c06b6b69Smrg ;; 841c06b6b69Smrg np1) 842c06b6b69Smrg basic_machine=np1-gould 843c06b6b69Smrg ;; 844c06b6b69Smrg nsr-tandem) 845c06b6b69Smrg basic_machine=nsr-tandem 846c06b6b69Smrg ;; 847c06b6b69Smrg op50n-* | op60c-*) 848c06b6b69Smrg basic_machine=hppa1.1-oki 849c06b6b69Smrg os=-proelf 850c06b6b69Smrg ;; 8519f4658d1Smrg openrisc | openrisc-*) 852c06b6b69Smrg basic_machine=or32-unknown 8539f4658d1Smrg ;; 8549f4658d1Smrg os400) 8559f4658d1Smrg basic_machine=powerpc-ibm 8569f4658d1Smrg os=-os400 857c06b6b69Smrg ;; 858c06b6b69Smrg OSE68000 | ose68000) 859c06b6b69Smrg basic_machine=m68000-ericsson 860c06b6b69Smrg os=-ose 861c06b6b69Smrg ;; 862c06b6b69Smrg os68k) 863c06b6b69Smrg basic_machine=m68k-none 864c06b6b69Smrg os=-os68k 865c06b6b69Smrg ;; 866c06b6b69Smrg pa-hitachi) 867c06b6b69Smrg basic_machine=hppa1.1-hitachi 868c06b6b69Smrg os=-hiuxwe2 869c06b6b69Smrg ;; 870c06b6b69Smrg paragon) 871c06b6b69Smrg basic_machine=i860-intel 872c06b6b69Smrg os=-osf 873c06b6b69Smrg ;; 8749f4658d1Smrg parisc) 8759f4658d1Smrg basic_machine=hppa-unknown 8769f4658d1Smrg os=-linux 8779f4658d1Smrg ;; 8789f4658d1Smrg parisc-*) 8799f4658d1Smrg basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 8809f4658d1Smrg os=-linux 8819f4658d1Smrg ;; 882c06b6b69Smrg pbd) 883c06b6b69Smrg basic_machine=sparc-tti 884c06b6b69Smrg ;; 885c06b6b69Smrg pbb) 886c06b6b69Smrg basic_machine=m68k-tti 887c06b6b69Smrg ;; 888c06b6b69Smrg pc532 | pc532-*) 889c06b6b69Smrg basic_machine=ns32k-pc532 890c06b6b69Smrg ;; 8919f4658d1Smrg pc98) 8929f4658d1Smrg basic_machine=i386-pc 8939f4658d1Smrg ;; 8949f4658d1Smrg pc98-*) 8959f4658d1Smrg basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 8969f4658d1Smrg ;; 897c06b6b69Smrg pentium | p5 | k5 | k6 | nexgen | viac3) 898c06b6b69Smrg basic_machine=i586-pc 899c06b6b69Smrg ;; 900c06b6b69Smrg pentiumpro | p6 | 6x86 | athlon | athlon_*) 901c06b6b69Smrg basic_machine=i686-pc 902c06b6b69Smrg ;; 903c06b6b69Smrg pentiumii | pentium2 | pentiumiii | pentium3) 904c06b6b69Smrg basic_machine=i686-pc 905c06b6b69Smrg ;; 906c06b6b69Smrg pentium4) 907c06b6b69Smrg basic_machine=i786-pc 908c06b6b69Smrg ;; 909c06b6b69Smrg pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 910c06b6b69Smrg basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 911c06b6b69Smrg ;; 912c06b6b69Smrg pentiumpro-* | p6-* | 6x86-* | athlon-*) 913c06b6b69Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 914c06b6b69Smrg ;; 915c06b6b69Smrg pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 916c06b6b69Smrg basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 917c06b6b69Smrg ;; 918c06b6b69Smrg pentium4-*) 919c06b6b69Smrg basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 920c06b6b69Smrg ;; 921c06b6b69Smrg pn) 922c06b6b69Smrg basic_machine=pn-gould 923c06b6b69Smrg ;; 924c06b6b69Smrg power) basic_machine=power-ibm 925c06b6b69Smrg ;; 926c06b6b69Smrg ppc) basic_machine=powerpc-unknown 927c06b6b69Smrg ;; 928c06b6b69Smrg ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 929c06b6b69Smrg ;; 930c06b6b69Smrg ppcle | powerpclittle | ppc-le | powerpc-little) 931c06b6b69Smrg basic_machine=powerpcle-unknown 932c06b6b69Smrg ;; 933c06b6b69Smrg ppcle-* | powerpclittle-*) 934c06b6b69Smrg basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 935c06b6b69Smrg ;; 936c06b6b69Smrg ppc64) basic_machine=powerpc64-unknown 937c06b6b69Smrg ;; 938c06b6b69Smrg ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 939c06b6b69Smrg ;; 940c06b6b69Smrg ppc64le | powerpc64little | ppc64-le | powerpc64-little) 941c06b6b69Smrg basic_machine=powerpc64le-unknown 942c06b6b69Smrg ;; 943c06b6b69Smrg ppc64le-* | powerpc64little-*) 944c06b6b69Smrg basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 945c06b6b69Smrg ;; 946c06b6b69Smrg ps2) 947c06b6b69Smrg basic_machine=i386-ibm 948c06b6b69Smrg ;; 949c06b6b69Smrg pw32) 950c06b6b69Smrg basic_machine=i586-unknown 951c06b6b69Smrg os=-pw32 952c06b6b69Smrg ;; 9539f4658d1Smrg rdos) 9549f4658d1Smrg basic_machine=i386-pc 9559f4658d1Smrg os=-rdos 9569f4658d1Smrg ;; 957c06b6b69Smrg rom68k) 958c06b6b69Smrg basic_machine=m68k-rom68k 959c06b6b69Smrg os=-coff 960c06b6b69Smrg ;; 961c06b6b69Smrg rm[46]00) 962c06b6b69Smrg basic_machine=mips-siemens 963c06b6b69Smrg ;; 964c06b6b69Smrg rtpc | rtpc-*) 965c06b6b69Smrg basic_machine=romp-ibm 966c06b6b69Smrg ;; 9679f4658d1Smrg s390 | s390-*) 9689f4658d1Smrg basic_machine=s390-ibm 9699f4658d1Smrg ;; 9709f4658d1Smrg s390x | s390x-*) 9719f4658d1Smrg basic_machine=s390x-ibm 9729f4658d1Smrg ;; 973c06b6b69Smrg sa29200) 974c06b6b69Smrg basic_machine=a29k-amd 975c06b6b69Smrg os=-udi 976c06b6b69Smrg ;; 977c06b6b69Smrg sb1) 978c06b6b69Smrg basic_machine=mipsisa64sb1-unknown 979c06b6b69Smrg ;; 980c06b6b69Smrg sb1el) 981c06b6b69Smrg basic_machine=mipsisa64sb1el-unknown 982c06b6b69Smrg ;; 9839f4658d1Smrg sde) 9849f4658d1Smrg basic_machine=mipsisa32-sde 9859f4658d1Smrg os=-elf 9869f4658d1Smrg ;; 987c06b6b69Smrg sei) 988c06b6b69Smrg basic_machine=mips-sei 989c06b6b69Smrg os=-seiux 990c06b6b69Smrg ;; 991c06b6b69Smrg sequent) 992c06b6b69Smrg basic_machine=i386-sequent 993c06b6b69Smrg ;; 994c06b6b69Smrg sh) 995c06b6b69Smrg basic_machine=sh-hitachi 996c06b6b69Smrg os=-hms 997c06b6b69Smrg ;; 9989f4658d1Smrg sh5el) 9999f4658d1Smrg basic_machine=sh5le-unknown 10009f4658d1Smrg ;; 1001c06b6b69Smrg sh64) 1002c06b6b69Smrg basic_machine=sh64-unknown 1003c06b6b69Smrg ;; 1004c06b6b69Smrg sparclite-wrs | simso-wrs) 1005c06b6b69Smrg basic_machine=sparclite-wrs 1006c06b6b69Smrg os=-vxworks 1007c06b6b69Smrg ;; 1008c06b6b69Smrg sps7) 1009c06b6b69Smrg basic_machine=m68k-bull 1010c06b6b69Smrg os=-sysv2 1011c06b6b69Smrg ;; 1012c06b6b69Smrg spur) 1013c06b6b69Smrg basic_machine=spur-unknown 1014c06b6b69Smrg ;; 1015c06b6b69Smrg st2000) 1016c06b6b69Smrg basic_machine=m68k-tandem 1017c06b6b69Smrg ;; 1018c06b6b69Smrg stratus) 1019c06b6b69Smrg basic_machine=i860-stratus 1020c06b6b69Smrg os=-sysv4 1021c06b6b69Smrg ;; 1022c06b6b69Smrg sun2) 1023c06b6b69Smrg basic_machine=m68000-sun 1024c06b6b69Smrg ;; 1025c06b6b69Smrg sun2os3) 1026c06b6b69Smrg basic_machine=m68000-sun 1027c06b6b69Smrg os=-sunos3 1028c06b6b69Smrg ;; 1029c06b6b69Smrg sun2os4) 1030c06b6b69Smrg basic_machine=m68000-sun 1031c06b6b69Smrg os=-sunos4 1032c06b6b69Smrg ;; 1033c06b6b69Smrg sun3os3) 1034c06b6b69Smrg basic_machine=m68k-sun 1035c06b6b69Smrg os=-sunos3 1036c06b6b69Smrg ;; 1037c06b6b69Smrg sun3os4) 1038c06b6b69Smrg basic_machine=m68k-sun 1039c06b6b69Smrg os=-sunos4 1040c06b6b69Smrg ;; 1041c06b6b69Smrg sun4os3) 1042c06b6b69Smrg basic_machine=sparc-sun 1043c06b6b69Smrg os=-sunos3 1044c06b6b69Smrg ;; 1045c06b6b69Smrg sun4os4) 1046c06b6b69Smrg basic_machine=sparc-sun 1047c06b6b69Smrg os=-sunos4 1048c06b6b69Smrg ;; 1049c06b6b69Smrg sun4sol2) 1050c06b6b69Smrg basic_machine=sparc-sun 1051c06b6b69Smrg os=-solaris2 1052c06b6b69Smrg ;; 1053c06b6b69Smrg sun3 | sun3-*) 1054c06b6b69Smrg basic_machine=m68k-sun 1055c06b6b69Smrg ;; 1056c06b6b69Smrg sun4) 1057c06b6b69Smrg basic_machine=sparc-sun 1058c06b6b69Smrg ;; 1059c06b6b69Smrg sun386 | sun386i | roadrunner) 1060c06b6b69Smrg basic_machine=i386-sun 1061c06b6b69Smrg ;; 1062c06b6b69Smrg sv1) 1063c06b6b69Smrg basic_machine=sv1-cray 1064c06b6b69Smrg os=-unicos 1065c06b6b69Smrg ;; 1066c06b6b69Smrg symmetry) 1067c06b6b69Smrg basic_machine=i386-sequent 1068c06b6b69Smrg os=-dynix 1069c06b6b69Smrg ;; 1070c06b6b69Smrg t3e) 1071c06b6b69Smrg basic_machine=alphaev5-cray 1072c06b6b69Smrg os=-unicos 1073c06b6b69Smrg ;; 1074c06b6b69Smrg t90) 1075c06b6b69Smrg basic_machine=t90-cray 1076c06b6b69Smrg os=-unicos 1077c06b6b69Smrg ;; 1078c06b6b69Smrg tic54x | c54x*) 1079c06b6b69Smrg basic_machine=tic54x-unknown 1080c06b6b69Smrg os=-coff 1081c06b6b69Smrg ;; 1082c06b6b69Smrg tic55x | c55x*) 1083c06b6b69Smrg basic_machine=tic55x-unknown 1084c06b6b69Smrg os=-coff 1085c06b6b69Smrg ;; 1086c06b6b69Smrg tic6x | c6x*) 1087c06b6b69Smrg basic_machine=tic6x-unknown 1088c06b6b69Smrg os=-coff 1089c06b6b69Smrg ;; 10903699b6c4Smrg # This must be matched before tile*. 10913699b6c4Smrg tilegx*) 10923699b6c4Smrg basic_machine=tilegx-unknown 10933699b6c4Smrg os=-linux-gnu 10943699b6c4Smrg ;; 10959f4658d1Smrg tile*) 10969f4658d1Smrg basic_machine=tile-unknown 10979f4658d1Smrg os=-linux-gnu 10989f4658d1Smrg ;; 1099c06b6b69Smrg tx39) 1100c06b6b69Smrg basic_machine=mipstx39-unknown 1101c06b6b69Smrg ;; 1102c06b6b69Smrg tx39el) 1103c06b6b69Smrg basic_machine=mipstx39el-unknown 1104c06b6b69Smrg ;; 1105c06b6b69Smrg toad1) 1106c06b6b69Smrg basic_machine=pdp10-xkl 1107c06b6b69Smrg os=-tops20 1108c06b6b69Smrg ;; 1109c06b6b69Smrg tower | tower-32) 1110c06b6b69Smrg basic_machine=m68k-ncr 1111c06b6b69Smrg ;; 11129f4658d1Smrg tpf) 11139f4658d1Smrg basic_machine=s390x-ibm 11149f4658d1Smrg os=-tpf 11159f4658d1Smrg ;; 1116c06b6b69Smrg udi29k) 1117c06b6b69Smrg basic_machine=a29k-amd 1118c06b6b69Smrg os=-udi 1119c06b6b69Smrg ;; 1120c06b6b69Smrg ultra3) 1121c06b6b69Smrg basic_machine=a29k-nyu 1122c06b6b69Smrg os=-sym1 1123c06b6b69Smrg ;; 1124c06b6b69Smrg v810 | necv810) 1125c06b6b69Smrg basic_machine=v810-nec 1126c06b6b69Smrg os=-none 1127c06b6b69Smrg ;; 1128c06b6b69Smrg vaxv) 1129c06b6b69Smrg basic_machine=vax-dec 1130c06b6b69Smrg os=-sysv 1131c06b6b69Smrg ;; 1132c06b6b69Smrg vms) 1133c06b6b69Smrg basic_machine=vax-dec 1134c06b6b69Smrg os=-vms 1135c06b6b69Smrg ;; 1136c06b6b69Smrg vpp*|vx|vx-*) 1137c06b6b69Smrg basic_machine=f301-fujitsu 1138c06b6b69Smrg ;; 1139c06b6b69Smrg vxworks960) 1140c06b6b69Smrg basic_machine=i960-wrs 1141c06b6b69Smrg os=-vxworks 1142c06b6b69Smrg ;; 1143c06b6b69Smrg vxworks68) 1144c06b6b69Smrg basic_machine=m68k-wrs 1145c06b6b69Smrg os=-vxworks 1146c06b6b69Smrg ;; 1147c06b6b69Smrg vxworks29k) 1148c06b6b69Smrg basic_machine=a29k-wrs 1149c06b6b69Smrg os=-vxworks 1150c06b6b69Smrg ;; 1151c06b6b69Smrg w65*) 1152c06b6b69Smrg basic_machine=w65-wdc 1153c06b6b69Smrg os=-none 1154c06b6b69Smrg ;; 1155c06b6b69Smrg w89k-*) 1156c06b6b69Smrg basic_machine=hppa1.1-winbond 1157c06b6b69Smrg os=-proelf 1158c06b6b69Smrg ;; 11599f4658d1Smrg xbox) 11609f4658d1Smrg basic_machine=i686-pc 11619f4658d1Smrg os=-mingw32 11629f4658d1Smrg ;; 1163c06b6b69Smrg xps | xps100) 1164c06b6b69Smrg basic_machine=xps100-honeywell 1165c06b6b69Smrg ;; 1166c06b6b69Smrg ymp) 1167c06b6b69Smrg basic_machine=ymp-cray 1168c06b6b69Smrg os=-unicos 1169c06b6b69Smrg ;; 1170c06b6b69Smrg z8k-*-coff) 1171c06b6b69Smrg basic_machine=z8k-unknown 1172c06b6b69Smrg os=-sim 1173c06b6b69Smrg ;; 1174b20b881bSmrg z80-*-coff) 1175b20b881bSmrg basic_machine=z80-unknown 1176b20b881bSmrg os=-sim 1177b20b881bSmrg ;; 1178c06b6b69Smrg none) 1179c06b6b69Smrg basic_machine=none-none 1180c06b6b69Smrg os=-none 1181c06b6b69Smrg ;; 1182c06b6b69Smrg 1183c06b6b69Smrg# Here we handle the default manufacturer of certain CPU types. It is in 1184c06b6b69Smrg# some cases the only manufacturer, in others, it is the most popular. 1185c06b6b69Smrg w89k) 1186c06b6b69Smrg basic_machine=hppa1.1-winbond 1187c06b6b69Smrg ;; 1188c06b6b69Smrg op50n) 1189c06b6b69Smrg basic_machine=hppa1.1-oki 1190c06b6b69Smrg ;; 1191c06b6b69Smrg op60c) 1192c06b6b69Smrg basic_machine=hppa1.1-oki 1193c06b6b69Smrg ;; 1194c06b6b69Smrg romp) 1195c06b6b69Smrg basic_machine=romp-ibm 1196c06b6b69Smrg ;; 11979f4658d1Smrg mmix) 11989f4658d1Smrg basic_machine=mmix-knuth 11999f4658d1Smrg ;; 1200c06b6b69Smrg rs6000) 1201c06b6b69Smrg basic_machine=rs6000-ibm 1202c06b6b69Smrg ;; 1203c06b6b69Smrg vax) 1204c06b6b69Smrg basic_machine=vax-dec 1205c06b6b69Smrg ;; 1206c06b6b69Smrg pdp10) 1207c06b6b69Smrg # there are many clones, so DEC is not a safe bet 1208c06b6b69Smrg basic_machine=pdp10-unknown 1209c06b6b69Smrg ;; 1210c06b6b69Smrg pdp11) 1211c06b6b69Smrg basic_machine=pdp11-dec 1212c06b6b69Smrg ;; 1213c06b6b69Smrg we32k) 1214c06b6b69Smrg basic_machine=we32k-att 1215c06b6b69Smrg ;; 12167d17d341Smrg sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1217c06b6b69Smrg basic_machine=sh-unknown 1218c06b6b69Smrg ;; 12199f4658d1Smrg sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1220c06b6b69Smrg basic_machine=sparc-sun 1221c06b6b69Smrg ;; 1222c06b6b69Smrg cydra) 1223c06b6b69Smrg basic_machine=cydra-cydrome 1224c06b6b69Smrg ;; 1225c06b6b69Smrg orion) 1226c06b6b69Smrg basic_machine=orion-highlevel 1227c06b6b69Smrg ;; 1228c06b6b69Smrg orion105) 1229c06b6b69Smrg basic_machine=clipper-highlevel 1230c06b6b69Smrg ;; 1231c06b6b69Smrg mac | mpw | mac-mpw) 1232c06b6b69Smrg basic_machine=m68k-apple 1233c06b6b69Smrg ;; 1234c06b6b69Smrg pmac | pmac-mpw) 1235c06b6b69Smrg basic_machine=powerpc-apple 1236c06b6b69Smrg ;; 1237c06b6b69Smrg *-unknown) 1238c06b6b69Smrg # Make sure to match an already-canonicalized machine name. 1239c06b6b69Smrg ;; 1240c06b6b69Smrg *) 1241c06b6b69Smrg echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1242c06b6b69Smrg exit 1 1243c06b6b69Smrg ;; 1244c06b6b69Smrgesac 1245c06b6b69Smrg 1246c06b6b69Smrg# Here we canonicalize certain aliases for manufacturers. 1247c06b6b69Smrgcase $basic_machine in 1248c06b6b69Smrg *-digital*) 1249c06b6b69Smrg basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1250c06b6b69Smrg ;; 1251c06b6b69Smrg *-commodore*) 1252c06b6b69Smrg basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1253c06b6b69Smrg ;; 1254c06b6b69Smrg *) 1255c06b6b69Smrg ;; 1256c06b6b69Smrgesac 1257c06b6b69Smrg 1258c06b6b69Smrg# Decode manufacturer-specific aliases for certain operating systems. 1259c06b6b69Smrg 1260c06b6b69Smrgif [ x"$os" != x"" ] 1261c06b6b69Smrgthen 1262c06b6b69Smrgcase $os in 1263c06b6b69Smrg # First match some system type aliases 1264c06b6b69Smrg # that might get confused with valid system types. 1265c06b6b69Smrg # -solaris* is a basic system type, with this one exception. 12667d17d341Smrg -auroraux) 12677d17d341Smrg os=-auroraux 12687d17d341Smrg ;; 1269c06b6b69Smrg -solaris1 | -solaris1.*) 1270c06b6b69Smrg os=`echo $os | sed -e 's|solaris1|sunos4|'` 1271c06b6b69Smrg ;; 1272c06b6b69Smrg -solaris) 1273c06b6b69Smrg os=-solaris2 1274c06b6b69Smrg ;; 1275c06b6b69Smrg -svr4*) 1276c06b6b69Smrg os=-sysv4 1277c06b6b69Smrg ;; 1278c06b6b69Smrg -unixware*) 1279c06b6b69Smrg os=-sysv4.2uw 1280c06b6b69Smrg ;; 1281c06b6b69Smrg -gnu/linux*) 1282c06b6b69Smrg os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1283c06b6b69Smrg ;; 1284c06b6b69Smrg # First accept the basic system types. 1285c06b6b69Smrg # The portable systems comes first. 1286c06b6b69Smrg # Each alternative MUST END IN A *, to match a version number. 1287c06b6b69Smrg # -sysv* is not here because it comes later, after sysvr4. 1288c06b6b69Smrg -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 12897d17d341Smrg | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 12907d17d341Smrg | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 12917d17d341Smrg | -sym* | -kopensolaris* \ 1292c06b6b69Smrg | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 12937d17d341Smrg | -aos* | -aros* \ 1294c06b6b69Smrg | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1295c06b6b69Smrg | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 12969f4658d1Smrg | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 12979f4658d1Smrg | -openbsd* | -solidbsd* \ 12989f4658d1Smrg | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 12999f4658d1Smrg | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1300c06b6b69Smrg | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1301c06b6b69Smrg | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1302b20b881bSmrg | -chorusos* | -chorusrdb* | -cegcc* \ 1303c06b6b69Smrg | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 13049f4658d1Smrg | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 13059f4658d1Smrg | -uxpv* | -beos* | -mpeix* | -udk* \ 1306c06b6b69Smrg | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1307c06b6b69Smrg | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1308c06b6b69Smrg | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1309c06b6b69Smrg | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1310c06b6b69Smrg | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 13119f4658d1Smrg | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 13127d17d341Smrg | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1313c06b6b69Smrg # Remember, each alternative MUST END IN *, to match a version number. 1314c06b6b69Smrg ;; 1315c06b6b69Smrg -qnx*) 1316c06b6b69Smrg case $basic_machine in 1317c06b6b69Smrg x86-* | i*86-*) 1318c06b6b69Smrg ;; 1319c06b6b69Smrg *) 1320c06b6b69Smrg os=-nto$os 1321c06b6b69Smrg ;; 1322c06b6b69Smrg esac 1323c06b6b69Smrg ;; 1324c06b6b69Smrg -nto-qnx*) 1325c06b6b69Smrg ;; 1326c06b6b69Smrg -nto*) 1327c06b6b69Smrg os=`echo $os | sed -e 's|nto|nto-qnx|'` 1328c06b6b69Smrg ;; 1329c06b6b69Smrg -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 13309f4658d1Smrg | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1331c06b6b69Smrg | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1332c06b6b69Smrg ;; 1333c06b6b69Smrg -mac*) 1334c06b6b69Smrg os=`echo $os | sed -e 's|mac|macos|'` 1335c06b6b69Smrg ;; 13369f4658d1Smrg -linux-dietlibc) 13379f4658d1Smrg os=-linux-dietlibc 13389f4658d1Smrg ;; 1339c06b6b69Smrg -linux*) 1340c06b6b69Smrg os=`echo $os | sed -e 's|linux|linux-gnu|'` 1341c06b6b69Smrg ;; 1342c06b6b69Smrg -sunos5*) 1343c06b6b69Smrg os=`echo $os | sed -e 's|sunos5|solaris2|'` 1344c06b6b69Smrg ;; 1345c06b6b69Smrg -sunos6*) 1346c06b6b69Smrg os=`echo $os | sed -e 's|sunos6|solaris3|'` 1347c06b6b69Smrg ;; 1348c06b6b69Smrg -opened*) 1349c06b6b69Smrg os=-openedition 1350c06b6b69Smrg ;; 13519f4658d1Smrg -os400*) 13529f4658d1Smrg os=-os400 13539f4658d1Smrg ;; 1354c06b6b69Smrg -wince*) 1355c06b6b69Smrg os=-wince 1356c06b6b69Smrg ;; 1357c06b6b69Smrg -osfrose*) 1358c06b6b69Smrg os=-osfrose 1359c06b6b69Smrg ;; 1360c06b6b69Smrg -osf*) 1361c06b6b69Smrg os=-osf 1362c06b6b69Smrg ;; 1363c06b6b69Smrg -utek*) 1364c06b6b69Smrg os=-bsd 1365c06b6b69Smrg ;; 1366c06b6b69Smrg -dynix*) 1367c06b6b69Smrg os=-bsd 1368c06b6b69Smrg ;; 1369c06b6b69Smrg -acis*) 1370c06b6b69Smrg os=-aos 1371c06b6b69Smrg ;; 1372c06b6b69Smrg -atheos*) 1373c06b6b69Smrg os=-atheos 1374c06b6b69Smrg ;; 13759f4658d1Smrg -syllable*) 13769f4658d1Smrg os=-syllable 13779f4658d1Smrg ;; 1378c06b6b69Smrg -386bsd) 1379c06b6b69Smrg os=-bsd 1380c06b6b69Smrg ;; 1381c06b6b69Smrg -ctix* | -uts*) 1382c06b6b69Smrg os=-sysv 1383c06b6b69Smrg ;; 1384c06b6b69Smrg -nova*) 1385c06b6b69Smrg os=-rtmk-nova 1386c06b6b69Smrg ;; 1387c06b6b69Smrg -ns2 ) 1388c06b6b69Smrg os=-nextstep2 1389c06b6b69Smrg ;; 1390c06b6b69Smrg -nsk*) 1391c06b6b69Smrg os=-nsk 1392c06b6b69Smrg ;; 1393c06b6b69Smrg # Preserve the version number of sinix5. 1394c06b6b69Smrg -sinix5.*) 1395c06b6b69Smrg os=`echo $os | sed -e 's|sinix|sysv|'` 1396c06b6b69Smrg ;; 1397c06b6b69Smrg -sinix*) 1398c06b6b69Smrg os=-sysv4 1399c06b6b69Smrg ;; 14009f4658d1Smrg -tpf*) 14019f4658d1Smrg os=-tpf 14029f4658d1Smrg ;; 1403c06b6b69Smrg -triton*) 1404c06b6b69Smrg os=-sysv3 1405c06b6b69Smrg ;; 1406c06b6b69Smrg -oss*) 1407c06b6b69Smrg os=-sysv3 1408c06b6b69Smrg ;; 1409c06b6b69Smrg -svr4) 1410c06b6b69Smrg os=-sysv4 1411c06b6b69Smrg ;; 1412c06b6b69Smrg -svr3) 1413c06b6b69Smrg os=-sysv3 1414c06b6b69Smrg ;; 1415c06b6b69Smrg -sysvr4) 1416c06b6b69Smrg os=-sysv4 1417c06b6b69Smrg ;; 1418c06b6b69Smrg # This must come after -sysvr4. 1419c06b6b69Smrg -sysv*) 1420c06b6b69Smrg ;; 1421c06b6b69Smrg -ose*) 1422c06b6b69Smrg os=-ose 1423c06b6b69Smrg ;; 1424c06b6b69Smrg -es1800*) 1425c06b6b69Smrg os=-ose 1426c06b6b69Smrg ;; 1427c06b6b69Smrg -xenix) 1428c06b6b69Smrg os=-xenix 1429c06b6b69Smrg ;; 1430c06b6b69Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1431c06b6b69Smrg os=-mint 1432c06b6b69Smrg ;; 1433c06b6b69Smrg -aros*) 1434c06b6b69Smrg os=-aros 1435c06b6b69Smrg ;; 1436c06b6b69Smrg -kaos*) 1437c06b6b69Smrg os=-kaos 1438c06b6b69Smrg ;; 14399f4658d1Smrg -zvmoe) 14409f4658d1Smrg os=-zvmoe 14419f4658d1Smrg ;; 1442b20b881bSmrg -dicos*) 1443b20b881bSmrg os=-dicos 1444b20b881bSmrg ;; 14453699b6c4Smrg -nacl*) 14463699b6c4Smrg ;; 1447c06b6b69Smrg -none) 1448c06b6b69Smrg ;; 1449c06b6b69Smrg *) 1450c06b6b69Smrg # Get rid of the `-' at the beginning of $os. 1451c06b6b69Smrg os=`echo $os | sed 's/[^-]*-//'` 1452c06b6b69Smrg echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1453c06b6b69Smrg exit 1 1454c06b6b69Smrg ;; 1455c06b6b69Smrgesac 1456c06b6b69Smrgelse 1457c06b6b69Smrg 1458c06b6b69Smrg# Here we handle the default operating systems that come with various machines. 1459c06b6b69Smrg# The value should be what the vendor currently ships out the door with their 1460c06b6b69Smrg# machine or put another way, the most popular os provided with the machine. 1461c06b6b69Smrg 1462c06b6b69Smrg# Note that if you're going to try to match "-MANUFACTURER" here (say, 1463c06b6b69Smrg# "-sun"), then you have to tell the case statement up towards the top 1464c06b6b69Smrg# that MANUFACTURER isn't an operating system. Otherwise, code above 1465c06b6b69Smrg# will signal an error saying that MANUFACTURER isn't an operating 1466c06b6b69Smrg# system, and we'll never get to this point. 1467c06b6b69Smrg 1468c06b6b69Smrgcase $basic_machine in 14699f4658d1Smrg score-*) 14709f4658d1Smrg os=-elf 14719f4658d1Smrg ;; 14729f4658d1Smrg spu-*) 14739f4658d1Smrg os=-elf 14749f4658d1Smrg ;; 1475c06b6b69Smrg *-acorn) 1476c06b6b69Smrg os=-riscix1.2 1477c06b6b69Smrg ;; 1478c06b6b69Smrg arm*-rebel) 1479c06b6b69Smrg os=-linux 1480c06b6b69Smrg ;; 1481c06b6b69Smrg arm*-semi) 1482c06b6b69Smrg os=-aout 1483c06b6b69Smrg ;; 14849f4658d1Smrg c4x-* | tic4x-*) 14859f4658d1Smrg os=-coff 1486c06b6b69Smrg ;; 1487c06b6b69Smrg # This must come before the *-dec entry. 1488c06b6b69Smrg pdp10-*) 1489c06b6b69Smrg os=-tops20 1490c06b6b69Smrg ;; 1491c06b6b69Smrg pdp11-*) 1492c06b6b69Smrg os=-none 1493c06b6b69Smrg ;; 1494c06b6b69Smrg *-dec | vax-*) 1495c06b6b69Smrg os=-ultrix4.2 1496c06b6b69Smrg ;; 1497c06b6b69Smrg m68*-apollo) 1498c06b6b69Smrg os=-domain 1499c06b6b69Smrg ;; 1500c06b6b69Smrg i386-sun) 1501c06b6b69Smrg os=-sunos4.0.2 1502c06b6b69Smrg ;; 1503c06b6b69Smrg m68000-sun) 1504c06b6b69Smrg os=-sunos3 1505c06b6b69Smrg # This also exists in the configure program, but was not the 1506c06b6b69Smrg # default. 1507c06b6b69Smrg # os=-sunos4 1508c06b6b69Smrg ;; 1509c06b6b69Smrg m68*-cisco) 1510c06b6b69Smrg os=-aout 1511c06b6b69Smrg ;; 15129f4658d1Smrg mep-*) 15139f4658d1Smrg os=-elf 15149f4658d1Smrg ;; 1515c06b6b69Smrg mips*-cisco) 1516c06b6b69Smrg os=-elf 1517c06b6b69Smrg ;; 1518c06b6b69Smrg mips*-*) 1519c06b6b69Smrg os=-elf 1520c06b6b69Smrg ;; 1521c06b6b69Smrg or32-*) 1522c06b6b69Smrg os=-coff 1523c06b6b69Smrg ;; 1524c06b6b69Smrg *-tti) # must be before sparc entry or we get the wrong os. 1525c06b6b69Smrg os=-sysv3 1526c06b6b69Smrg ;; 1527c06b6b69Smrg sparc-* | *-sun) 1528c06b6b69Smrg os=-sunos4.1.1 1529c06b6b69Smrg ;; 1530c06b6b69Smrg *-be) 1531c06b6b69Smrg os=-beos 1532c06b6b69Smrg ;; 15339f4658d1Smrg *-haiku) 15349f4658d1Smrg os=-haiku 15359f4658d1Smrg ;; 1536c06b6b69Smrg *-ibm) 1537c06b6b69Smrg os=-aix 1538c06b6b69Smrg ;; 15399f4658d1Smrg *-knuth) 15409f4658d1Smrg os=-mmixware 15419f4658d1Smrg ;; 1542c06b6b69Smrg *-wec) 1543c06b6b69Smrg os=-proelf 1544c06b6b69Smrg ;; 1545c06b6b69Smrg *-winbond) 1546c06b6b69Smrg os=-proelf 1547c06b6b69Smrg ;; 1548c06b6b69Smrg *-oki) 1549c06b6b69Smrg os=-proelf 1550c06b6b69Smrg ;; 1551c06b6b69Smrg *-hp) 1552c06b6b69Smrg os=-hpux 1553c06b6b69Smrg ;; 1554c06b6b69Smrg *-hitachi) 1555c06b6b69Smrg os=-hiux 1556c06b6b69Smrg ;; 1557c06b6b69Smrg i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1558c06b6b69Smrg os=-sysv 1559c06b6b69Smrg ;; 1560c06b6b69Smrg *-cbm) 1561c06b6b69Smrg os=-amigaos 1562c06b6b69Smrg ;; 1563c06b6b69Smrg *-dg) 1564c06b6b69Smrg os=-dgux 1565c06b6b69Smrg ;; 1566c06b6b69Smrg *-dolphin) 1567c06b6b69Smrg os=-sysv3 1568c06b6b69Smrg ;; 1569c06b6b69Smrg m68k-ccur) 1570c06b6b69Smrg os=-rtu 1571c06b6b69Smrg ;; 1572c06b6b69Smrg m88k-omron*) 1573c06b6b69Smrg os=-luna 1574c06b6b69Smrg ;; 1575c06b6b69Smrg *-next ) 1576c06b6b69Smrg os=-nextstep 1577c06b6b69Smrg ;; 1578c06b6b69Smrg *-sequent) 1579c06b6b69Smrg os=-ptx 1580c06b6b69Smrg ;; 1581c06b6b69Smrg *-crds) 1582c06b6b69Smrg os=-unos 1583c06b6b69Smrg ;; 1584c06b6b69Smrg *-ns) 1585c06b6b69Smrg os=-genix 1586c06b6b69Smrg ;; 1587c06b6b69Smrg i370-*) 1588c06b6b69Smrg os=-mvs 1589c06b6b69Smrg ;; 1590c06b6b69Smrg *-next) 1591c06b6b69Smrg os=-nextstep3 1592c06b6b69Smrg ;; 1593c06b6b69Smrg *-gould) 1594c06b6b69Smrg os=-sysv 1595c06b6b69Smrg ;; 1596c06b6b69Smrg *-highlevel) 1597c06b6b69Smrg os=-bsd 1598c06b6b69Smrg ;; 1599c06b6b69Smrg *-encore) 1600c06b6b69Smrg os=-bsd 1601c06b6b69Smrg ;; 1602c06b6b69Smrg *-sgi) 1603c06b6b69Smrg os=-irix 1604c06b6b69Smrg ;; 1605c06b6b69Smrg *-siemens) 1606c06b6b69Smrg os=-sysv4 1607c06b6b69Smrg ;; 1608c06b6b69Smrg *-masscomp) 1609c06b6b69Smrg os=-rtu 1610c06b6b69Smrg ;; 1611c06b6b69Smrg f30[01]-fujitsu | f700-fujitsu) 1612c06b6b69Smrg os=-uxpv 1613c06b6b69Smrg ;; 1614c06b6b69Smrg *-rom68k) 1615c06b6b69Smrg os=-coff 1616c06b6b69Smrg ;; 1617c06b6b69Smrg *-*bug) 1618c06b6b69Smrg os=-coff 1619c06b6b69Smrg ;; 1620c06b6b69Smrg *-apple) 1621c06b6b69Smrg os=-macos 1622c06b6b69Smrg ;; 1623c06b6b69Smrg *-atari*) 1624c06b6b69Smrg os=-mint 1625c06b6b69Smrg ;; 1626c06b6b69Smrg *) 1627c06b6b69Smrg os=-none 1628c06b6b69Smrg ;; 1629c06b6b69Smrgesac 1630c06b6b69Smrgfi 1631c06b6b69Smrg 1632c06b6b69Smrg# Here we handle the case where we know the os, and the CPU type, but not the 1633c06b6b69Smrg# manufacturer. We pick the logical manufacturer. 1634c06b6b69Smrgvendor=unknown 1635c06b6b69Smrgcase $basic_machine in 1636c06b6b69Smrg *-unknown) 1637c06b6b69Smrg case $os in 1638c06b6b69Smrg -riscix*) 1639c06b6b69Smrg vendor=acorn 1640c06b6b69Smrg ;; 1641c06b6b69Smrg -sunos*) 1642c06b6b69Smrg vendor=sun 1643c06b6b69Smrg ;; 16447d17d341Smrg -cnk*|-aix*) 1645c06b6b69Smrg vendor=ibm 1646c06b6b69Smrg ;; 1647c06b6b69Smrg -beos*) 1648c06b6b69Smrg vendor=be 1649c06b6b69Smrg ;; 1650c06b6b69Smrg -hpux*) 1651c06b6b69Smrg vendor=hp 1652c06b6b69Smrg ;; 1653c06b6b69Smrg -mpeix*) 1654c06b6b69Smrg vendor=hp 1655c06b6b69Smrg ;; 1656c06b6b69Smrg -hiux*) 1657c06b6b69Smrg vendor=hitachi 1658c06b6b69Smrg ;; 1659c06b6b69Smrg -unos*) 1660c06b6b69Smrg vendor=crds 1661c06b6b69Smrg ;; 1662c06b6b69Smrg -dgux*) 1663c06b6b69Smrg vendor=dg 1664c06b6b69Smrg ;; 1665c06b6b69Smrg -luna*) 1666c06b6b69Smrg vendor=omron 1667c06b6b69Smrg ;; 1668c06b6b69Smrg -genix*) 1669c06b6b69Smrg vendor=ns 1670c06b6b69Smrg ;; 1671c06b6b69Smrg -mvs* | -opened*) 1672c06b6b69Smrg vendor=ibm 1673c06b6b69Smrg ;; 16749f4658d1Smrg -os400*) 16759f4658d1Smrg vendor=ibm 16769f4658d1Smrg ;; 1677c06b6b69Smrg -ptx*) 1678c06b6b69Smrg vendor=sequent 1679c06b6b69Smrg ;; 16809f4658d1Smrg -tpf*) 16819f4658d1Smrg vendor=ibm 16829f4658d1Smrg ;; 1683c06b6b69Smrg -vxsim* | -vxworks* | -windiss*) 1684c06b6b69Smrg vendor=wrs 1685c06b6b69Smrg ;; 1686c06b6b69Smrg -aux*) 1687c06b6b69Smrg vendor=apple 1688c06b6b69Smrg ;; 1689c06b6b69Smrg -hms*) 1690c06b6b69Smrg vendor=hitachi 1691c06b6b69Smrg ;; 1692c06b6b69Smrg -mpw* | -macos*) 1693c06b6b69Smrg vendor=apple 1694c06b6b69Smrg ;; 1695c06b6b69Smrg -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1696c06b6b69Smrg vendor=atari 1697c06b6b69Smrg ;; 1698c06b6b69Smrg -vos*) 1699c06b6b69Smrg vendor=stratus 1700c06b6b69Smrg ;; 1701c06b6b69Smrg esac 1702c06b6b69Smrg basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1703c06b6b69Smrg ;; 1704c06b6b69Smrgesac 1705c06b6b69Smrg 1706c06b6b69Smrgecho $basic_machine$os 17079f4658d1Smrgexit 1708c06b6b69Smrg 1709c06b6b69Smrg# Local variables: 1710c06b6b69Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1711c06b6b69Smrg# time-stamp-start: "timestamp='" 1712c06b6b69Smrg# time-stamp-format: "%:y-%02m-%02d" 1713c06b6b69Smrg# time-stamp-end: "'" 1714c06b6b69Smrg# End: 1715