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