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