config.sub revision 117610
1117610Sdes#! /bin/sh 2117610Sdes# Configuration validation subroutine script. 3117610Sdes# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4117610Sdes# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 5117610Sdes 6117610Sdestimestamp='2003-07-04' 7117610Sdes 8117610Sdes# This file is (in principle) common to ALL GNU software. 9117610Sdes# The presence of a machine in this file suggests that SOME GNU software 10117610Sdes# can handle that machine. It does not imply ALL GNU software can. 11117610Sdes# 12117610Sdes# This file is free software; you can redistribute it and/or modify 13117610Sdes# it under the terms of the GNU General Public License as published by 14117610Sdes# the Free Software Foundation; either version 2 of the License, or 15117610Sdes# (at your option) any later version. 16117610Sdes# 17117610Sdes# This program is distributed in the hope that it will be useful, 18117610Sdes# but WITHOUT ANY WARRANTY; without even the implied warranty of 19117610Sdes# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20117610Sdes# GNU General Public License for more details. 21117610Sdes# 22117610Sdes# You should have received a copy of the GNU General Public License 23117610Sdes# along with this program; if not, write to the Free Software 24117610Sdes# Foundation, Inc., 59 Temple Place - Suite 330, 25117610Sdes# Boston, MA 02111-1307, USA. 26117610Sdes 27117610Sdes# As a special exception to the GNU General Public License, if you 28117610Sdes# distribute this file as part of a program that contains a 29117610Sdes# configuration script generated by Autoconf, you may include it under 30117610Sdes# the same distribution terms that you use for the rest of that program. 31117610Sdes 32117610Sdes# Please send patches to <config-patches@gnu.org>. Submit a context 33117610Sdes# diff and a properly formatted ChangeLog entry. 34117610Sdes# 35117610Sdes# Configuration subroutine to validate and canonicalize a configuration type. 36117610Sdes# Supply the specified configuration type as an argument. 37117610Sdes# If it is invalid, we print an error message on stderr and exit with code 1. 38117610Sdes# Otherwise, we print the canonical config type on stdout and succeed. 39117610Sdes 40117610Sdes# This file is supposed to be the same for all GNU packages 41117610Sdes# and recognize all the CPU types, system types and aliases 42117610Sdes# that are meaningful with *any* GNU software. 43117610Sdes# Each package is responsible for reporting which valid configurations 44117610Sdes# it does not support. The user should be able to distinguish 45117610Sdes# a failure to support a valid configuration from a meaningless 46117610Sdes# configuration. 47117610Sdes 48117610Sdes# The goal of this file is to map all the various variations of a given 49117610Sdes# machine specification into a single specification in the form: 50117610Sdes# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM 51117610Sdes# or in some cases, the newer four-part form: 52117610Sdes# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM 53117610Sdes# It is wrong to echo any other type of specification. 54117610Sdes 55117610Sdesme=`echo "$0" | sed -e 's,.*/,,'` 56117610Sdes 57117610Sdesusage="\ 58117610SdesUsage: $0 [OPTION] CPU-MFR-OPSYS 59117610Sdes $0 [OPTION] ALIAS 60117610Sdes 61117610SdesCanonicalize a configuration name. 62117610Sdes 63117610SdesOperation modes: 64117610Sdes -h, --help print this help, then exit 65117610Sdes -t, --time-stamp print date of last modification, then exit 66117610Sdes -v, --version print version number, then exit 67117610Sdes 68117610SdesReport bugs and patches to <config-patches@gnu.org>." 69117610Sdes 70117610Sdesversion="\ 71117610SdesGNU config.sub ($timestamp) 72117610Sdes 73117610SdesCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 74117610SdesFree Software Foundation, Inc. 75117610Sdes 76117610SdesThis is free software; see the source for copying conditions. There is NO 77117610Sdeswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 78117610Sdes 79117610Sdeshelp=" 80117610SdesTry \`$me --help' for more information." 81117610Sdes 82117610Sdes# Parse command line 83117610Sdeswhile test $# -gt 0 ; do 84117610Sdes case $1 in 85117610Sdes --time-stamp | --time* | -t ) 86117610Sdes echo "$timestamp" ; exit 0 ;; 87117610Sdes --version | -v ) 88117610Sdes echo "$version" ; exit 0 ;; 89117610Sdes --help | --h* | -h ) 90117610Sdes echo "$usage"; exit 0 ;; 91117610Sdes -- ) # Stop option processing 92117610Sdes shift; break ;; 93117610Sdes - ) # Use stdin as input. 94117610Sdes break ;; 95117610Sdes -* ) 96117610Sdes echo "$me: invalid option $1$help" 97117610Sdes exit 1 ;; 98117610Sdes 99117610Sdes *local*) 100117610Sdes # First pass through any local machine types. 101117610Sdes echo $1 102117610Sdes exit 0;; 103117610Sdes 104117610Sdes * ) 105117610Sdes break ;; 106117610Sdes esac 107117610Sdesdone 108117610Sdes 109117610Sdescase $# in 110117610Sdes 0) echo "$me: missing argument$help" >&2 111117610Sdes exit 1;; 112117610Sdes 1) ;; 113117610Sdes *) echo "$me: too many arguments$help" >&2 114117610Sdes exit 1;; 115117610Sdesesac 116117610Sdes 117117610Sdes# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 118117610Sdes# Here we must recognize all the valid KERNEL-OS combinations. 119117610Sdesmaybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 120117610Sdescase $maybe_os in 121117610Sdes nto-qnx* | linux-gnu* | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) 122117610Sdes os=-$maybe_os 123117610Sdes basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 124117610Sdes ;; 125117610Sdes *) 126117610Sdes basic_machine=`echo $1 | sed 's/-[^-]*$//'` 127117610Sdes if [ $basic_machine != $1 ] 128117610Sdes then os=`echo $1 | sed 's/.*-/-/'` 129117610Sdes else os=; fi 130117610Sdes ;; 131117610Sdesesac 132117610Sdes 133117610Sdes### Let's recognize common machines as not being operating systems so 134117610Sdes### that things like config.sub decstation-3100 work. We also 135117610Sdes### recognize some manufacturers as not being operating systems, so we 136117610Sdes### can provide default operating systems below. 137117610Sdescase $os in 138117610Sdes -sun*os*) 139117610Sdes # Prevent following clause from handling this invalid input. 140117610Sdes ;; 141117610Sdes -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 142117610Sdes -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 143117610Sdes -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 144117610Sdes -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 145117610Sdes -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 146117610Sdes -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 147117610Sdes -apple | -axis) 148117610Sdes os= 149117610Sdes basic_machine=$1 150117610Sdes ;; 151117610Sdes -sim | -cisco | -oki | -wec | -winbond) 152117610Sdes os= 153117610Sdes basic_machine=$1 154117610Sdes ;; 155117610Sdes -scout) 156117610Sdes ;; 157117610Sdes -wrs) 158117610Sdes os=-vxworks 159117610Sdes basic_machine=$1 160117610Sdes ;; 161117610Sdes -chorusos*) 162117610Sdes os=-chorusos 163117610Sdes basic_machine=$1 164117610Sdes ;; 165117610Sdes -chorusrdb) 166117610Sdes os=-chorusrdb 167117610Sdes basic_machine=$1 168117610Sdes ;; 169117610Sdes -hiux*) 170117610Sdes os=-hiuxwe2 171117610Sdes ;; 172117610Sdes -sco5) 173117610Sdes os=-sco3.2v5 174117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 175117610Sdes ;; 176117610Sdes -sco4) 177117610Sdes os=-sco3.2v4 178117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 179117610Sdes ;; 180117610Sdes -sco3.2.[4-9]*) 181117610Sdes os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 182117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 183117610Sdes ;; 184117610Sdes -sco3.2v[4-9]*) 185117610Sdes # Don't forget version if it is 3.2v4 or newer. 186117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 187117610Sdes ;; 188117610Sdes -sco*) 189117610Sdes os=-sco3.2v2 190117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 191117610Sdes ;; 192117610Sdes -udk*) 193117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 194117610Sdes ;; 195117610Sdes -isc) 196117610Sdes os=-isc2.2 197117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 198117610Sdes ;; 199117610Sdes -clix*) 200117610Sdes basic_machine=clipper-intergraph 201117610Sdes ;; 202117610Sdes -isc*) 203117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 204117610Sdes ;; 205117610Sdes -lynx*) 206117610Sdes os=-lynxos 207117610Sdes ;; 208117610Sdes -ptx*) 209117610Sdes basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 210117610Sdes ;; 211117610Sdes -windowsnt*) 212117610Sdes os=`echo $os | sed -e 's/windowsnt/winnt/'` 213117610Sdes ;; 214117610Sdes -psos*) 215117610Sdes os=-psos 216117610Sdes ;; 217117610Sdes -mint | -mint[0-9]*) 218117610Sdes basic_machine=m68k-atari 219117610Sdes os=-mint 220117610Sdes ;; 221117610Sdesesac 222117610Sdes 223117610Sdes# Decode aliases for certain CPU-COMPANY combinations. 224117610Sdescase $basic_machine in 225117610Sdes # Recognize the basic CPU types without company name. 226117610Sdes # Some are omitted here because they have special meanings below. 227117610Sdes 1750a | 580 \ 228117610Sdes | a29k \ 229117610Sdes | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 230117610Sdes | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 231117610Sdes | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ 232117610Sdes | c4x | clipper \ 233117610Sdes | d10v | d30v | dlx | dsp16xx \ 234117610Sdes | fr30 | frv \ 235117610Sdes | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 236117610Sdes | i370 | i860 | i960 | ia64 \ 237117610Sdes | ip2k \ 238117610Sdes | m32r | m68000 | m68k | m88k | mcore \ 239117610Sdes | mips | mipsbe | mipseb | mipsel | mipsle \ 240117610Sdes | mips16 \ 241117610Sdes | mips64 | mips64el \ 242117610Sdes | mips64vr | mips64vrel \ 243117610Sdes | mips64orion | mips64orionel \ 244117610Sdes | mips64vr4100 | mips64vr4100el \ 245117610Sdes | mips64vr4300 | mips64vr4300el \ 246117610Sdes | mips64vr5000 | mips64vr5000el \ 247117610Sdes | mipsisa32 | mipsisa32el \ 248117610Sdes | mipsisa32r2 | mipsisa32r2el \ 249117610Sdes | mipsisa64 | mipsisa64el \ 250117610Sdes | mipsisa64sb1 | mipsisa64sb1el \ 251117610Sdes | mipsisa64sr71k | mipsisa64sr71kel \ 252117610Sdes | mipstx39 | mipstx39el \ 253117610Sdes | mn10200 | mn10300 \ 254117610Sdes | msp430 \ 255117610Sdes | ns16k | ns32k \ 256117610Sdes | openrisc | or32 \ 257117610Sdes | pdp10 | pdp11 | pj | pjl \ 258117610Sdes | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 259117610Sdes | pyramid \ 260117610Sdes | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ 261117610Sdes | sh64 | sh64le \ 262117610Sdes | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ 263117610Sdes | strongarm \ 264117610Sdes | tahoe | thumb | tic4x | tic80 | tron \ 265117610Sdes | v850 | v850e \ 266117610Sdes | we32k \ 267117610Sdes | x86 | xscale | xstormy16 | xtensa \ 268117610Sdes | z8k) 269117610Sdes basic_machine=$basic_machine-unknown 270117610Sdes ;; 271117610Sdes m6811 | m68hc11 | m6812 | m68hc12) 272117610Sdes # Motorola 68HC11/12. 273117610Sdes basic_machine=$basic_machine-unknown 274117610Sdes os=-none 275117610Sdes ;; 276117610Sdes m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 277117610Sdes ;; 278117610Sdes 279117610Sdes # We use `pc' rather than `unknown' 280117610Sdes # because (1) that's what they normally are, and 281117610Sdes # (2) the word "unknown" tends to confuse beginning users. 282117610Sdes i*86 | x86_64) 283117610Sdes basic_machine=$basic_machine-pc 284117610Sdes ;; 285117610Sdes # Object if more than one company name word. 286117610Sdes *-*-*) 287117610Sdes echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 288117610Sdes exit 1 289117610Sdes ;; 290117610Sdes # Recognize the basic CPU types with company name. 291117610Sdes 580-* \ 292117610Sdes | a29k-* \ 293117610Sdes | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 294117610Sdes | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 295117610Sdes | alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* \ 296117610Sdes | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 297117610Sdes | avr-* \ 298117610Sdes | bs2000-* \ 299117610Sdes | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 300117610Sdes | clipper-* | cydra-* \ 301117610Sdes | d10v-* | d30v-* | dlx-* \ 302117610Sdes | elxsi-* \ 303117610Sdes | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ 304117610Sdes | h8300-* | h8500-* \ 305117610Sdes | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 306117610Sdes | i*86-* | i860-* | i960-* | ia64-* \ 307117610Sdes | ip2k-* \ 308117610Sdes | m32r-* \ 309117610Sdes | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 310117610Sdes | m88110-* | m88k-* | mcore-* \ 311117610Sdes | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 312117610Sdes | mips16-* \ 313117610Sdes | mips64-* | mips64el-* \ 314117610Sdes | mips64vr-* | mips64vrel-* \ 315117610Sdes | mips64orion-* | mips64orionel-* \ 316117610Sdes | mips64vr4100-* | mips64vr4100el-* \ 317117610Sdes | mips64vr4300-* | mips64vr4300el-* \ 318117610Sdes | mips64vr5000-* | mips64vr5000el-* \ 319117610Sdes | mipsisa32-* | mipsisa32el-* \ 320117610Sdes | mipsisa32r2-* | mipsisa32r2el-* \ 321117610Sdes | mipsisa64-* | mipsisa64el-* \ 322117610Sdes | mipsisa64sb1-* | mipsisa64sb1el-* \ 323117610Sdes | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 324117610Sdes | mipstx39-* | mipstx39el-* \ 325117610Sdes | msp430-* \ 326117610Sdes | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ 327117610Sdes | orion-* \ 328117610Sdes | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 329117610Sdes | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ 330117610Sdes | pyramid-* \ 331117610Sdes | romp-* | rs6000-* \ 332117610Sdes | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ 333117610Sdes | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 334117610Sdes | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ 335117610Sdes | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ 336117610Sdes | tahoe-* | thumb-* \ 337117610Sdes | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 338117610Sdes | tron-* \ 339117610Sdes | v850-* | v850e-* | vax-* \ 340117610Sdes | we32k-* \ 341117610Sdes | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ 342117610Sdes | xtensa-* \ 343117610Sdes | ymp-* \ 344117610Sdes | z8k-*) 345117610Sdes ;; 346117610Sdes # Recognize the various machine names and aliases which stand 347117610Sdes # for a CPU type and a company and sometimes even an OS. 348117610Sdes 386bsd) 349117610Sdes basic_machine=i386-unknown 350117610Sdes os=-bsd 351117610Sdes ;; 352117610Sdes 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 353117610Sdes basic_machine=m68000-att 354117610Sdes ;; 355117610Sdes 3b*) 356117610Sdes basic_machine=we32k-att 357117610Sdes ;; 358117610Sdes a29khif) 359117610Sdes basic_machine=a29k-amd 360117610Sdes os=-udi 361117610Sdes ;; 362117610Sdes adobe68k) 363117610Sdes basic_machine=m68010-adobe 364117610Sdes os=-scout 365117610Sdes ;; 366117610Sdes alliant | fx80) 367117610Sdes basic_machine=fx80-alliant 368117610Sdes ;; 369117610Sdes altos | altos3068) 370117610Sdes basic_machine=m68k-altos 371117610Sdes ;; 372117610Sdes am29k) 373117610Sdes basic_machine=a29k-none 374117610Sdes os=-bsd 375117610Sdes ;; 376117610Sdes amd64) 377117610Sdes basic_machine=x86_64-pc 378117610Sdes ;; 379117610Sdes amdahl) 380117610Sdes basic_machine=580-amdahl 381117610Sdes os=-sysv 382117610Sdes ;; 383117610Sdes amiga | amiga-*) 384117610Sdes basic_machine=m68k-unknown 385117610Sdes ;; 386117610Sdes amigaos | amigados) 387117610Sdes basic_machine=m68k-unknown 388117610Sdes os=-amigaos 389117610Sdes ;; 390117610Sdes amigaunix | amix) 391117610Sdes basic_machine=m68k-unknown 392117610Sdes os=-sysv4 393117610Sdes ;; 394117610Sdes apollo68) 395117610Sdes basic_machine=m68k-apollo 396117610Sdes os=-sysv 397117610Sdes ;; 398117610Sdes apollo68bsd) 399117610Sdes basic_machine=m68k-apollo 400117610Sdes os=-bsd 401117610Sdes ;; 402117610Sdes aux) 403117610Sdes basic_machine=m68k-apple 404117610Sdes os=-aux 405117610Sdes ;; 406117610Sdes balance) 407117610Sdes basic_machine=ns32k-sequent 408117610Sdes os=-dynix 409117610Sdes ;; 410117610Sdes c90) 411117610Sdes basic_machine=c90-cray 412117610Sdes os=-unicos 413117610Sdes ;; 414117610Sdes convex-c1) 415117610Sdes basic_machine=c1-convex 416117610Sdes os=-bsd 417117610Sdes ;; 418117610Sdes convex-c2) 419117610Sdes basic_machine=c2-convex 420117610Sdes os=-bsd 421117610Sdes ;; 422117610Sdes convex-c32) 423117610Sdes basic_machine=c32-convex 424117610Sdes os=-bsd 425117610Sdes ;; 426117610Sdes convex-c34) 427117610Sdes basic_machine=c34-convex 428117610Sdes os=-bsd 429117610Sdes ;; 430117610Sdes convex-c38) 431117610Sdes basic_machine=c38-convex 432117610Sdes os=-bsd 433117610Sdes ;; 434117610Sdes cray | j90) 435117610Sdes basic_machine=j90-cray 436117610Sdes os=-unicos 437117610Sdes ;; 438117610Sdes crds | unos) 439117610Sdes basic_machine=m68k-crds 440117610Sdes ;; 441117610Sdes cris | cris-* | etrax*) 442117610Sdes basic_machine=cris-axis 443117610Sdes ;; 444117610Sdes da30 | da30-*) 445117610Sdes basic_machine=m68k-da30 446117610Sdes ;; 447117610Sdes decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 448117610Sdes basic_machine=mips-dec 449117610Sdes ;; 450117610Sdes decsystem10* | dec10*) 451117610Sdes basic_machine=pdp10-dec 452117610Sdes os=-tops10 453117610Sdes ;; 454117610Sdes decsystem20* | dec20*) 455117610Sdes basic_machine=pdp10-dec 456117610Sdes os=-tops20 457117610Sdes ;; 458117610Sdes delta | 3300 | motorola-3300 | motorola-delta \ 459117610Sdes | 3300-motorola | delta-motorola) 460117610Sdes basic_machine=m68k-motorola 461117610Sdes ;; 462117610Sdes delta88) 463117610Sdes basic_machine=m88k-motorola 464117610Sdes os=-sysv3 465117610Sdes ;; 466117610Sdes dpx20 | dpx20-*) 467117610Sdes basic_machine=rs6000-bull 468117610Sdes os=-bosx 469117610Sdes ;; 470117610Sdes dpx2* | dpx2*-bull) 471117610Sdes basic_machine=m68k-bull 472117610Sdes os=-sysv3 473117610Sdes ;; 474117610Sdes ebmon29k) 475117610Sdes basic_machine=a29k-amd 476117610Sdes os=-ebmon 477117610Sdes ;; 478117610Sdes elxsi) 479117610Sdes basic_machine=elxsi-elxsi 480117610Sdes os=-bsd 481117610Sdes ;; 482117610Sdes encore | umax | mmax) 483117610Sdes basic_machine=ns32k-encore 484117610Sdes ;; 485117610Sdes es1800 | OSE68k | ose68k | ose | OSE) 486117610Sdes basic_machine=m68k-ericsson 487117610Sdes os=-ose 488117610Sdes ;; 489117610Sdes fx2800) 490117610Sdes basic_machine=i860-alliant 491117610Sdes ;; 492117610Sdes genix) 493117610Sdes basic_machine=ns32k-ns 494117610Sdes ;; 495117610Sdes gmicro) 496117610Sdes basic_machine=tron-gmicro 497117610Sdes os=-sysv 498117610Sdes ;; 499117610Sdes go32) 500117610Sdes basic_machine=i386-pc 501117610Sdes os=-go32 502117610Sdes ;; 503117610Sdes h3050r* | hiux*) 504117610Sdes basic_machine=hppa1.1-hitachi 505117610Sdes os=-hiuxwe2 506117610Sdes ;; 507117610Sdes h8300hms) 508117610Sdes basic_machine=h8300-hitachi 509117610Sdes os=-hms 510117610Sdes ;; 511117610Sdes h8300xray) 512117610Sdes basic_machine=h8300-hitachi 513117610Sdes os=-xray 514117610Sdes ;; 515117610Sdes h8500hms) 516117610Sdes basic_machine=h8500-hitachi 517117610Sdes os=-hms 518117610Sdes ;; 519117610Sdes harris) 520117610Sdes basic_machine=m88k-harris 521117610Sdes os=-sysv3 522117610Sdes ;; 523117610Sdes hp300-*) 524117610Sdes basic_machine=m68k-hp 525117610Sdes ;; 526117610Sdes hp300bsd) 527117610Sdes basic_machine=m68k-hp 528117610Sdes os=-bsd 529117610Sdes ;; 530117610Sdes hp300hpux) 531117610Sdes basic_machine=m68k-hp 532117610Sdes os=-hpux 533117610Sdes ;; 534117610Sdes hp3k9[0-9][0-9] | hp9[0-9][0-9]) 535117610Sdes basic_machine=hppa1.0-hp 536117610Sdes ;; 537117610Sdes hp9k2[0-9][0-9] | hp9k31[0-9]) 538117610Sdes basic_machine=m68000-hp 539117610Sdes ;; 540117610Sdes hp9k3[2-9][0-9]) 541117610Sdes basic_machine=m68k-hp 542117610Sdes ;; 543117610Sdes hp9k6[0-9][0-9] | hp6[0-9][0-9]) 544117610Sdes basic_machine=hppa1.0-hp 545117610Sdes ;; 546117610Sdes hp9k7[0-79][0-9] | hp7[0-79][0-9]) 547117610Sdes basic_machine=hppa1.1-hp 548117610Sdes ;; 549117610Sdes hp9k78[0-9] | hp78[0-9]) 550117610Sdes # FIXME: really hppa2.0-hp 551117610Sdes basic_machine=hppa1.1-hp 552117610Sdes ;; 553117610Sdes hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 554117610Sdes # FIXME: really hppa2.0-hp 555117610Sdes basic_machine=hppa1.1-hp 556117610Sdes ;; 557117610Sdes hp9k8[0-9][13679] | hp8[0-9][13679]) 558117610Sdes basic_machine=hppa1.1-hp 559117610Sdes ;; 560117610Sdes hp9k8[0-9][0-9] | hp8[0-9][0-9]) 561117610Sdes basic_machine=hppa1.0-hp 562117610Sdes ;; 563117610Sdes hppa-next) 564117610Sdes os=-nextstep3 565117610Sdes ;; 566117610Sdes hppaosf) 567117610Sdes basic_machine=hppa1.1-hp 568117610Sdes os=-osf 569117610Sdes ;; 570117610Sdes hppro) 571117610Sdes basic_machine=hppa1.1-hp 572117610Sdes os=-proelf 573117610Sdes ;; 574117610Sdes i370-ibm* | ibm*) 575117610Sdes basic_machine=i370-ibm 576117610Sdes ;; 577117610Sdes# I'm not sure what "Sysv32" means. Should this be sysv3.2? 578117610Sdes i*86v32) 579117610Sdes basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 580117610Sdes os=-sysv32 581117610Sdes ;; 582117610Sdes i*86v4*) 583117610Sdes basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 584117610Sdes os=-sysv4 585117610Sdes ;; 586117610Sdes i*86v) 587117610Sdes basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 588117610Sdes os=-sysv 589117610Sdes ;; 590117610Sdes i*86sol2) 591117610Sdes basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 592117610Sdes os=-solaris2 593117610Sdes ;; 594117610Sdes i386mach) 595117610Sdes basic_machine=i386-mach 596117610Sdes os=-mach 597117610Sdes ;; 598117610Sdes i386-vsta | vsta) 599117610Sdes basic_machine=i386-unknown 600117610Sdes os=-vsta 601117610Sdes ;; 602117610Sdes iris | iris4d) 603117610Sdes basic_machine=mips-sgi 604117610Sdes case $os in 605117610Sdes -irix*) 606117610Sdes ;; 607117610Sdes *) 608117610Sdes os=-irix4 609117610Sdes ;; 610117610Sdes esac 611117610Sdes ;; 612117610Sdes isi68 | isi) 613117610Sdes basic_machine=m68k-isi 614117610Sdes os=-sysv 615117610Sdes ;; 616117610Sdes m88k-omron*) 617117610Sdes basic_machine=m88k-omron 618117610Sdes ;; 619117610Sdes magnum | m3230) 620117610Sdes basic_machine=mips-mips 621117610Sdes os=-sysv 622117610Sdes ;; 623117610Sdes merlin) 624117610Sdes basic_machine=ns32k-utek 625117610Sdes os=-sysv 626117610Sdes ;; 627117610Sdes mingw32) 628117610Sdes basic_machine=i386-pc 629117610Sdes os=-mingw32 630117610Sdes ;; 631117610Sdes miniframe) 632117610Sdes basic_machine=m68000-convergent 633117610Sdes ;; 634117610Sdes *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 635117610Sdes basic_machine=m68k-atari 636117610Sdes os=-mint 637117610Sdes ;; 638117610Sdes mips3*-*) 639117610Sdes basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 640117610Sdes ;; 641117610Sdes mips3*) 642117610Sdes basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 643117610Sdes ;; 644117610Sdes mmix*) 645117610Sdes basic_machine=mmix-knuth 646117610Sdes os=-mmixware 647117610Sdes ;; 648117610Sdes monitor) 649117610Sdes basic_machine=m68k-rom68k 650117610Sdes os=-coff 651117610Sdes ;; 652117610Sdes morphos) 653117610Sdes basic_machine=powerpc-unknown 654117610Sdes os=-morphos 655117610Sdes ;; 656117610Sdes msdos) 657117610Sdes basic_machine=i386-pc 658117610Sdes os=-msdos 659117610Sdes ;; 660117610Sdes mvs) 661117610Sdes basic_machine=i370-ibm 662117610Sdes os=-mvs 663117610Sdes ;; 664117610Sdes ncr3000) 665117610Sdes basic_machine=i486-ncr 666117610Sdes os=-sysv4 667117610Sdes ;; 668117610Sdes netbsd386) 669117610Sdes basic_machine=i386-unknown 670117610Sdes os=-netbsd 671117610Sdes ;; 672117610Sdes netwinder) 673117610Sdes basic_machine=armv4l-rebel 674117610Sdes os=-linux 675117610Sdes ;; 676117610Sdes news | news700 | news800 | news900) 677117610Sdes basic_machine=m68k-sony 678117610Sdes os=-newsos 679117610Sdes ;; 680117610Sdes news1000) 681117610Sdes basic_machine=m68030-sony 682117610Sdes os=-newsos 683117610Sdes ;; 684117610Sdes news-3600 | risc-news) 685117610Sdes basic_machine=mips-sony 686117610Sdes os=-newsos 687117610Sdes ;; 688117610Sdes necv70) 689117610Sdes basic_machine=v70-nec 690117610Sdes os=-sysv 691117610Sdes ;; 692117610Sdes next | m*-next ) 693117610Sdes basic_machine=m68k-next 694117610Sdes case $os in 695117610Sdes -nextstep* ) 696117610Sdes ;; 697117610Sdes -ns2*) 698117610Sdes os=-nextstep2 699117610Sdes ;; 700117610Sdes *) 701117610Sdes os=-nextstep3 702117610Sdes ;; 703117610Sdes esac 704117610Sdes ;; 705117610Sdes nh3000) 706117610Sdes basic_machine=m68k-harris 707117610Sdes os=-cxux 708117610Sdes ;; 709117610Sdes nh[45]000) 710117610Sdes basic_machine=m88k-harris 711117610Sdes os=-cxux 712117610Sdes ;; 713117610Sdes nindy960) 714117610Sdes basic_machine=i960-intel 715117610Sdes os=-nindy 716117610Sdes ;; 717117610Sdes mon960) 718117610Sdes basic_machine=i960-intel 719117610Sdes os=-mon960 720117610Sdes ;; 721117610Sdes nonstopux) 722117610Sdes basic_machine=mips-compaq 723117610Sdes os=-nonstopux 724117610Sdes ;; 725117610Sdes np1) 726117610Sdes basic_machine=np1-gould 727117610Sdes ;; 728117610Sdes nv1) 729117610Sdes basic_machine=nv1-cray 730117610Sdes os=-unicosmp 731117610Sdes ;; 732117610Sdes nsr-tandem) 733117610Sdes basic_machine=nsr-tandem 734117610Sdes ;; 735117610Sdes op50n-* | op60c-*) 736117610Sdes basic_machine=hppa1.1-oki 737117610Sdes os=-proelf 738117610Sdes ;; 739117610Sdes or32 | or32-*) 740117610Sdes basic_machine=or32-unknown 741117610Sdes os=-coff 742117610Sdes ;; 743117610Sdes OSE68000 | ose68000) 744117610Sdes basic_machine=m68000-ericsson 745117610Sdes os=-ose 746117610Sdes ;; 747117610Sdes os68k) 748117610Sdes basic_machine=m68k-none 749117610Sdes os=-os68k 750117610Sdes ;; 751117610Sdes pa-hitachi) 752117610Sdes basic_machine=hppa1.1-hitachi 753117610Sdes os=-hiuxwe2 754117610Sdes ;; 755117610Sdes paragon) 756117610Sdes basic_machine=i860-intel 757117610Sdes os=-osf 758117610Sdes ;; 759117610Sdes pbd) 760117610Sdes basic_machine=sparc-tti 761117610Sdes ;; 762117610Sdes pbb) 763117610Sdes basic_machine=m68k-tti 764117610Sdes ;; 765117610Sdes pc532 | pc532-*) 766117610Sdes basic_machine=ns32k-pc532 767117610Sdes ;; 768117610Sdes pentium | p5 | k5 | k6 | nexgen | viac3) 769117610Sdes basic_machine=i586-pc 770117610Sdes ;; 771117610Sdes pentiumpro | p6 | 6x86 | athlon | athlon_*) 772117610Sdes basic_machine=i686-pc 773117610Sdes ;; 774117610Sdes pentiumii | pentium2 | pentiumiii | pentium3) 775117610Sdes basic_machine=i686-pc 776117610Sdes ;; 777117610Sdes pentium4) 778117610Sdes basic_machine=i786-pc 779117610Sdes ;; 780117610Sdes pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 781117610Sdes basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 782117610Sdes ;; 783117610Sdes pentiumpro-* | p6-* | 6x86-* | athlon-*) 784117610Sdes basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 785117610Sdes ;; 786117610Sdes pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 787117610Sdes basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 788117610Sdes ;; 789117610Sdes pentium4-*) 790117610Sdes basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 791117610Sdes ;; 792117610Sdes pn) 793117610Sdes basic_machine=pn-gould 794117610Sdes ;; 795117610Sdes power) basic_machine=power-ibm 796117610Sdes ;; 797117610Sdes ppc) basic_machine=powerpc-unknown 798117610Sdes ;; 799117610Sdes ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 800117610Sdes ;; 801117610Sdes ppcle | powerpclittle | ppc-le | powerpc-little) 802117610Sdes basic_machine=powerpcle-unknown 803117610Sdes ;; 804117610Sdes ppcle-* | powerpclittle-*) 805117610Sdes basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 806117610Sdes ;; 807117610Sdes ppc64) basic_machine=powerpc64-unknown 808117610Sdes ;; 809117610Sdes ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 810117610Sdes ;; 811117610Sdes ppc64le | powerpc64little | ppc64-le | powerpc64-little) 812117610Sdes basic_machine=powerpc64le-unknown 813117610Sdes ;; 814117610Sdes ppc64le-* | powerpc64little-*) 815117610Sdes basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 816117610Sdes ;; 817117610Sdes ps2) 818117610Sdes basic_machine=i386-ibm 819117610Sdes ;; 820117610Sdes pw32) 821117610Sdes basic_machine=i586-unknown 822117610Sdes os=-pw32 823117610Sdes ;; 824117610Sdes rom68k) 825117610Sdes basic_machine=m68k-rom68k 826117610Sdes os=-coff 827117610Sdes ;; 828117610Sdes rm[46]00) 829117610Sdes basic_machine=mips-siemens 830117610Sdes ;; 831117610Sdes rtpc | rtpc-*) 832117610Sdes basic_machine=romp-ibm 833117610Sdes ;; 834117610Sdes s390 | s390-*) 835117610Sdes basic_machine=s390-ibm 836117610Sdes ;; 837117610Sdes s390x | s390x-*) 838117610Sdes basic_machine=s390x-ibm 839117610Sdes ;; 840117610Sdes sa29200) 841117610Sdes basic_machine=a29k-amd 842117610Sdes os=-udi 843117610Sdes ;; 844117610Sdes sb1) 845117610Sdes basic_machine=mipsisa64sb1-unknown 846117610Sdes ;; 847117610Sdes sb1el) 848117610Sdes basic_machine=mipsisa64sb1el-unknown 849117610Sdes ;; 850117610Sdes sei) 851117610Sdes basic_machine=mips-sei 852117610Sdes os=-seiux 853117610Sdes ;; 854117610Sdes sequent) 855117610Sdes basic_machine=i386-sequent 856117610Sdes ;; 857117610Sdes sh) 858117610Sdes basic_machine=sh-hitachi 859117610Sdes os=-hms 860117610Sdes ;; 861117610Sdes sh64) 862117610Sdes basic_machine=sh64-unknown 863117610Sdes ;; 864117610Sdes sparclite-wrs | simso-wrs) 865117610Sdes basic_machine=sparclite-wrs 866117610Sdes os=-vxworks 867117610Sdes ;; 868117610Sdes sps7) 869117610Sdes basic_machine=m68k-bull 870117610Sdes os=-sysv2 871117610Sdes ;; 872117610Sdes spur) 873117610Sdes basic_machine=spur-unknown 874117610Sdes ;; 875117610Sdes st2000) 876117610Sdes basic_machine=m68k-tandem 877117610Sdes ;; 878117610Sdes stratus) 879117610Sdes basic_machine=i860-stratus 880117610Sdes os=-sysv4 881117610Sdes ;; 882117610Sdes sun2) 883117610Sdes basic_machine=m68000-sun 884117610Sdes ;; 885117610Sdes sun2os3) 886117610Sdes basic_machine=m68000-sun 887117610Sdes os=-sunos3 888117610Sdes ;; 889117610Sdes sun2os4) 890117610Sdes basic_machine=m68000-sun 891117610Sdes os=-sunos4 892117610Sdes ;; 893117610Sdes sun3os3) 894117610Sdes basic_machine=m68k-sun 895117610Sdes os=-sunos3 896117610Sdes ;; 897117610Sdes sun3os4) 898117610Sdes basic_machine=m68k-sun 899117610Sdes os=-sunos4 900117610Sdes ;; 901117610Sdes sun4os3) 902117610Sdes basic_machine=sparc-sun 903117610Sdes os=-sunos3 904117610Sdes ;; 905117610Sdes sun4os4) 906117610Sdes basic_machine=sparc-sun 907117610Sdes os=-sunos4 908117610Sdes ;; 909117610Sdes sun4sol2) 910117610Sdes basic_machine=sparc-sun 911117610Sdes os=-solaris2 912117610Sdes ;; 913117610Sdes sun3 | sun3-*) 914117610Sdes basic_machine=m68k-sun 915117610Sdes ;; 916117610Sdes sun4) 917117610Sdes basic_machine=sparc-sun 918117610Sdes ;; 919117610Sdes sun386 | sun386i | roadrunner) 920117610Sdes basic_machine=i386-sun 921117610Sdes ;; 922117610Sdes sv1) 923117610Sdes basic_machine=sv1-cray 924117610Sdes os=-unicos 925117610Sdes ;; 926117610Sdes symmetry) 927117610Sdes basic_machine=i386-sequent 928117610Sdes os=-dynix 929117610Sdes ;; 930117610Sdes t3e) 931117610Sdes basic_machine=alphaev5-cray 932117610Sdes os=-unicos 933117610Sdes ;; 934117610Sdes t90) 935117610Sdes basic_machine=t90-cray 936117610Sdes os=-unicos 937117610Sdes ;; 938117610Sdes tic54x | c54x*) 939117610Sdes basic_machine=tic54x-unknown 940117610Sdes os=-coff 941117610Sdes ;; 942117610Sdes tic55x | c55x*) 943117610Sdes basic_machine=tic55x-unknown 944117610Sdes os=-coff 945117610Sdes ;; 946117610Sdes tic6x | c6x*) 947117610Sdes basic_machine=tic6x-unknown 948117610Sdes os=-coff 949117610Sdes ;; 950117610Sdes tx39) 951117610Sdes basic_machine=mipstx39-unknown 952117610Sdes ;; 953117610Sdes tx39el) 954117610Sdes basic_machine=mipstx39el-unknown 955117610Sdes ;; 956117610Sdes toad1) 957117610Sdes basic_machine=pdp10-xkl 958117610Sdes os=-tops20 959117610Sdes ;; 960117610Sdes tower | tower-32) 961117610Sdes basic_machine=m68k-ncr 962117610Sdes ;; 963117610Sdes udi29k) 964117610Sdes basic_machine=a29k-amd 965117610Sdes os=-udi 966117610Sdes ;; 967117610Sdes ultra3) 968117610Sdes basic_machine=a29k-nyu 969117610Sdes os=-sym1 970117610Sdes ;; 971117610Sdes v810 | necv810) 972117610Sdes basic_machine=v810-nec 973117610Sdes os=-none 974117610Sdes ;; 975117610Sdes vaxv) 976117610Sdes basic_machine=vax-dec 977117610Sdes os=-sysv 978117610Sdes ;; 979117610Sdes vms) 980117610Sdes basic_machine=vax-dec 981117610Sdes os=-vms 982117610Sdes ;; 983117610Sdes vpp*|vx|vx-*) 984117610Sdes basic_machine=f301-fujitsu 985117610Sdes ;; 986117610Sdes vxworks960) 987117610Sdes basic_machine=i960-wrs 988117610Sdes os=-vxworks 989117610Sdes ;; 990117610Sdes vxworks68) 991117610Sdes basic_machine=m68k-wrs 992117610Sdes os=-vxworks 993117610Sdes ;; 994117610Sdes vxworks29k) 995117610Sdes basic_machine=a29k-wrs 996117610Sdes os=-vxworks 997117610Sdes ;; 998117610Sdes w65*) 999117610Sdes basic_machine=w65-wdc 1000117610Sdes os=-none 1001117610Sdes ;; 1002117610Sdes w89k-*) 1003117610Sdes basic_machine=hppa1.1-winbond 1004117610Sdes os=-proelf 1005117610Sdes ;; 1006117610Sdes xps | xps100) 1007117610Sdes basic_machine=xps100-honeywell 1008117610Sdes ;; 1009117610Sdes ymp) 1010117610Sdes basic_machine=ymp-cray 1011117610Sdes os=-unicos 1012117610Sdes ;; 1013117610Sdes z8k-*-coff) 1014117610Sdes basic_machine=z8k-unknown 1015117610Sdes os=-sim 1016117610Sdes ;; 1017117610Sdes none) 1018117610Sdes basic_machine=none-none 1019117610Sdes os=-none 1020117610Sdes ;; 1021117610Sdes 1022117610Sdes# Here we handle the default manufacturer of certain CPU types. It is in 1023117610Sdes# some cases the only manufacturer, in others, it is the most popular. 1024117610Sdes w89k) 1025117610Sdes basic_machine=hppa1.1-winbond 1026117610Sdes ;; 1027117610Sdes op50n) 1028117610Sdes basic_machine=hppa1.1-oki 1029117610Sdes ;; 1030117610Sdes op60c) 1031117610Sdes basic_machine=hppa1.1-oki 1032117610Sdes ;; 1033117610Sdes romp) 1034117610Sdes basic_machine=romp-ibm 1035117610Sdes ;; 1036117610Sdes rs6000) 1037117610Sdes basic_machine=rs6000-ibm 1038117610Sdes ;; 1039117610Sdes vax) 1040117610Sdes basic_machine=vax-dec 1041117610Sdes ;; 1042117610Sdes pdp10) 1043117610Sdes # there are many clones, so DEC is not a safe bet 1044117610Sdes basic_machine=pdp10-unknown 1045117610Sdes ;; 1046117610Sdes pdp11) 1047117610Sdes basic_machine=pdp11-dec 1048117610Sdes ;; 1049117610Sdes we32k) 1050117610Sdes basic_machine=we32k-att 1051117610Sdes ;; 1052117610Sdes sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) 1053117610Sdes basic_machine=sh-unknown 1054117610Sdes ;; 1055117610Sdes sh64) 1056117610Sdes basic_machine=sh64-unknown 1057117610Sdes ;; 1058117610Sdes sparc | sparcv9 | sparcv9b) 1059117610Sdes basic_machine=sparc-sun 1060117610Sdes ;; 1061117610Sdes cydra) 1062117610Sdes basic_machine=cydra-cydrome 1063117610Sdes ;; 1064117610Sdes orion) 1065117610Sdes basic_machine=orion-highlevel 1066117610Sdes ;; 1067117610Sdes orion105) 1068117610Sdes basic_machine=clipper-highlevel 1069117610Sdes ;; 1070117610Sdes mac | mpw | mac-mpw) 1071117610Sdes basic_machine=m68k-apple 1072117610Sdes ;; 1073117610Sdes pmac | pmac-mpw) 1074117610Sdes basic_machine=powerpc-apple 1075117610Sdes ;; 1076117610Sdes *-unknown) 1077117610Sdes # Make sure to match an already-canonicalized machine name. 1078117610Sdes ;; 1079117610Sdes *) 1080117610Sdes echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1081117610Sdes exit 1 1082117610Sdes ;; 1083117610Sdesesac 1084117610Sdes 1085117610Sdes# Here we canonicalize certain aliases for manufacturers. 1086117610Sdescase $basic_machine in 1087117610Sdes *-digital*) 1088117610Sdes basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1089117610Sdes ;; 1090117610Sdes *-commodore*) 1091117610Sdes basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1092117610Sdes ;; 1093117610Sdes *) 1094117610Sdes ;; 1095117610Sdesesac 1096117610Sdes 1097117610Sdes# Decode manufacturer-specific aliases for certain operating systems. 1098117610Sdes 1099117610Sdesif [ x"$os" != x"" ] 1100117610Sdesthen 1101117610Sdescase $os in 1102117610Sdes # First match some system type aliases 1103117610Sdes # that might get confused with valid system types. 1104117610Sdes # -solaris* is a basic system type, with this one exception. 1105117610Sdes -solaris1 | -solaris1.*) 1106117610Sdes os=`echo $os | sed -e 's|solaris1|sunos4|'` 1107117610Sdes ;; 1108117610Sdes -solaris) 1109117610Sdes os=-solaris2 1110117610Sdes ;; 1111117610Sdes -svr4*) 1112117610Sdes os=-sysv4 1113117610Sdes ;; 1114117610Sdes -unixware*) 1115117610Sdes os=-sysv4.2uw 1116117610Sdes ;; 1117117610Sdes -gnu/linux*) 1118117610Sdes os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1119117610Sdes ;; 1120117610Sdes # First accept the basic system types. 1121117610Sdes # The portable systems comes first. 1122117610Sdes # Each alternative MUST END IN A *, to match a version number. 1123117610Sdes # -sysv* is not here because it comes later, after sysvr4. 1124117610Sdes -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1125117610Sdes | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ 1126117610Sdes | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ 1127117610Sdes | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1128117610Sdes | -aos* \ 1129117610Sdes | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1130117610Sdes | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1131117610Sdes | -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \ 1132117610Sdes | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1133117610Sdes | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1134117610Sdes | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1135117610Sdes | -chorusos* | -chorusrdb* \ 1136117610Sdes | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1137117610Sdes | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ 1138117610Sdes | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1139117610Sdes | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1140117610Sdes | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1141117610Sdes | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1142117610Sdes | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1143117610Sdes | -powermax* | -dnix* | -nx6 | -nx7 | -sei*) 1144117610Sdes # Remember, each alternative MUST END IN *, to match a version number. 1145117610Sdes ;; 1146117610Sdes -qnx*) 1147117610Sdes case $basic_machine in 1148117610Sdes x86-* | i*86-*) 1149117610Sdes ;; 1150117610Sdes *) 1151117610Sdes os=-nto$os 1152117610Sdes ;; 1153117610Sdes esac 1154117610Sdes ;; 1155117610Sdes -nto-qnx*) 1156117610Sdes ;; 1157117610Sdes -nto*) 1158117610Sdes os=`echo $os | sed -e 's|nto|nto-qnx|'` 1159117610Sdes ;; 1160117610Sdes -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1161117610Sdes | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ 1162117610Sdes | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1163117610Sdes ;; 1164117610Sdes -mac*) 1165117610Sdes os=`echo $os | sed -e 's|mac|macos|'` 1166117610Sdes ;; 1167117610Sdes -linux*) 1168117610Sdes os=`echo $os | sed -e 's|linux|linux-gnu|'` 1169117610Sdes ;; 1170117610Sdes -sunos5*) 1171117610Sdes os=`echo $os | sed -e 's|sunos5|solaris2|'` 1172117610Sdes ;; 1173117610Sdes -sunos6*) 1174117610Sdes os=`echo $os | sed -e 's|sunos6|solaris3|'` 1175117610Sdes ;; 1176117610Sdes -opened*) 1177117610Sdes os=-openedition 1178117610Sdes ;; 1179117610Sdes -wince*) 1180117610Sdes os=-wince 1181117610Sdes ;; 1182117610Sdes -osfrose*) 1183117610Sdes os=-osfrose 1184117610Sdes ;; 1185117610Sdes -osf*) 1186117610Sdes os=-osf 1187117610Sdes ;; 1188117610Sdes -utek*) 1189117610Sdes os=-bsd 1190117610Sdes ;; 1191117610Sdes -dynix*) 1192117610Sdes os=-bsd 1193117610Sdes ;; 1194117610Sdes -acis*) 1195117610Sdes os=-aos 1196117610Sdes ;; 1197117610Sdes -atheos*) 1198117610Sdes os=-atheos 1199117610Sdes ;; 1200117610Sdes -386bsd) 1201117610Sdes os=-bsd 1202117610Sdes ;; 1203117610Sdes -ctix* | -uts*) 1204117610Sdes os=-sysv 1205117610Sdes ;; 1206117610Sdes -nova*) 1207117610Sdes os=-rtmk-nova 1208117610Sdes ;; 1209117610Sdes -ns2 ) 1210117610Sdes os=-nextstep2 1211117610Sdes ;; 1212117610Sdes -nsk*) 1213117610Sdes os=-nsk 1214117610Sdes ;; 1215117610Sdes # Preserve the version number of sinix5. 1216117610Sdes -sinix5.*) 1217117610Sdes os=`echo $os | sed -e 's|sinix|sysv|'` 1218117610Sdes ;; 1219117610Sdes -sinix*) 1220117610Sdes os=-sysv4 1221117610Sdes ;; 1222117610Sdes -triton*) 1223117610Sdes os=-sysv3 1224117610Sdes ;; 1225117610Sdes -oss*) 1226117610Sdes os=-sysv3 1227117610Sdes ;; 1228117610Sdes -svr4) 1229117610Sdes os=-sysv4 1230117610Sdes ;; 1231117610Sdes -svr3) 1232117610Sdes os=-sysv3 1233117610Sdes ;; 1234117610Sdes -sysvr4) 1235117610Sdes os=-sysv4 1236117610Sdes ;; 1237117610Sdes # This must come after -sysvr4. 1238117610Sdes -sysv*) 1239117610Sdes ;; 1240117610Sdes -ose*) 1241117610Sdes os=-ose 1242117610Sdes ;; 1243117610Sdes -es1800*) 1244117610Sdes os=-ose 1245117610Sdes ;; 1246117610Sdes -xenix) 1247117610Sdes os=-xenix 1248117610Sdes ;; 1249117610Sdes -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1250117610Sdes os=-mint 1251117610Sdes ;; 1252117610Sdes -aros*) 1253117610Sdes os=-aros 1254117610Sdes ;; 1255117610Sdes -kaos*) 1256117610Sdes os=-kaos 1257117610Sdes ;; 1258117610Sdes -none) 1259117610Sdes ;; 1260117610Sdes *) 1261117610Sdes # Get rid of the `-' at the beginning of $os. 1262117610Sdes os=`echo $os | sed 's/[^-]*-//'` 1263117610Sdes echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1264117610Sdes exit 1 1265117610Sdes ;; 1266117610Sdesesac 1267117610Sdeselse 1268117610Sdes 1269117610Sdes# Here we handle the default operating systems that come with various machines. 1270117610Sdes# The value should be what the vendor currently ships out the door with their 1271117610Sdes# machine or put another way, the most popular os provided with the machine. 1272117610Sdes 1273117610Sdes# Note that if you're going to try to match "-MANUFACTURER" here (say, 1274117610Sdes# "-sun"), then you have to tell the case statement up towards the top 1275117610Sdes# that MANUFACTURER isn't an operating system. Otherwise, code above 1276117610Sdes# will signal an error saying that MANUFACTURER isn't an operating 1277117610Sdes# system, and we'll never get to this point. 1278117610Sdes 1279117610Sdescase $basic_machine in 1280117610Sdes *-acorn) 1281117610Sdes os=-riscix1.2 1282117610Sdes ;; 1283117610Sdes arm*-rebel) 1284117610Sdes os=-linux 1285117610Sdes ;; 1286117610Sdes arm*-semi) 1287117610Sdes os=-aout 1288117610Sdes ;; 1289117610Sdes c4x-* | tic4x-*) 1290117610Sdes os=-coff 1291117610Sdes ;; 1292117610Sdes # This must come before the *-dec entry. 1293117610Sdes pdp10-*) 1294117610Sdes os=-tops20 1295117610Sdes ;; 1296117610Sdes pdp11-*) 1297117610Sdes os=-none 1298117610Sdes ;; 1299117610Sdes *-dec | vax-*) 1300117610Sdes os=-ultrix4.2 1301117610Sdes ;; 1302117610Sdes m68*-apollo) 1303117610Sdes os=-domain 1304117610Sdes ;; 1305117610Sdes i386-sun) 1306117610Sdes os=-sunos4.0.2 1307117610Sdes ;; 1308117610Sdes m68000-sun) 1309117610Sdes os=-sunos3 1310117610Sdes # This also exists in the configure program, but was not the 1311117610Sdes # default. 1312117610Sdes # os=-sunos4 1313117610Sdes ;; 1314117610Sdes m68*-cisco) 1315117610Sdes os=-aout 1316117610Sdes ;; 1317117610Sdes mips*-cisco) 1318117610Sdes os=-elf 1319117610Sdes ;; 1320117610Sdes mips*-*) 1321117610Sdes os=-elf 1322117610Sdes ;; 1323117610Sdes or32-*) 1324117610Sdes os=-coff 1325117610Sdes ;; 1326117610Sdes *-tti) # must be before sparc entry or we get the wrong os. 1327117610Sdes os=-sysv3 1328117610Sdes ;; 1329117610Sdes sparc-* | *-sun) 1330117610Sdes os=-sunos4.1.1 1331117610Sdes ;; 1332117610Sdes *-be) 1333117610Sdes os=-beos 1334117610Sdes ;; 1335117610Sdes *-ibm) 1336117610Sdes os=-aix 1337117610Sdes ;; 1338117610Sdes *-wec) 1339117610Sdes os=-proelf 1340117610Sdes ;; 1341117610Sdes *-winbond) 1342117610Sdes os=-proelf 1343117610Sdes ;; 1344117610Sdes *-oki) 1345117610Sdes os=-proelf 1346117610Sdes ;; 1347117610Sdes *-hp) 1348117610Sdes os=-hpux 1349117610Sdes ;; 1350117610Sdes *-hitachi) 1351117610Sdes os=-hiux 1352117610Sdes ;; 1353117610Sdes i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1354117610Sdes os=-sysv 1355117610Sdes ;; 1356117610Sdes *-cbm) 1357117610Sdes os=-amigaos 1358117610Sdes ;; 1359117610Sdes *-dg) 1360117610Sdes os=-dgux 1361117610Sdes ;; 1362117610Sdes *-dolphin) 1363117610Sdes os=-sysv3 1364117610Sdes ;; 1365117610Sdes m68k-ccur) 1366117610Sdes os=-rtu 1367117610Sdes ;; 1368117610Sdes m88k-omron*) 1369117610Sdes os=-luna 1370117610Sdes ;; 1371117610Sdes *-next ) 1372117610Sdes os=-nextstep 1373117610Sdes ;; 1374117610Sdes *-sequent) 1375117610Sdes os=-ptx 1376117610Sdes ;; 1377117610Sdes *-crds) 1378117610Sdes os=-unos 1379117610Sdes ;; 1380117610Sdes *-ns) 1381117610Sdes os=-genix 1382117610Sdes ;; 1383117610Sdes i370-*) 1384117610Sdes os=-mvs 1385117610Sdes ;; 1386117610Sdes *-next) 1387117610Sdes os=-nextstep3 1388117610Sdes ;; 1389117610Sdes *-gould) 1390117610Sdes os=-sysv 1391117610Sdes ;; 1392117610Sdes *-highlevel) 1393117610Sdes os=-bsd 1394117610Sdes ;; 1395117610Sdes *-encore) 1396117610Sdes os=-bsd 1397117610Sdes ;; 1398117610Sdes *-sgi) 1399117610Sdes os=-irix 1400117610Sdes ;; 1401117610Sdes *-siemens) 1402117610Sdes os=-sysv4 1403117610Sdes ;; 1404117610Sdes *-masscomp) 1405117610Sdes os=-rtu 1406117610Sdes ;; 1407117610Sdes f30[01]-fujitsu | f700-fujitsu) 1408117610Sdes os=-uxpv 1409117610Sdes ;; 1410117610Sdes *-rom68k) 1411117610Sdes os=-coff 1412117610Sdes ;; 1413117610Sdes *-*bug) 1414117610Sdes os=-coff 1415117610Sdes ;; 1416117610Sdes *-apple) 1417117610Sdes os=-macos 1418117610Sdes ;; 1419117610Sdes *-atari*) 1420117610Sdes os=-mint 1421117610Sdes ;; 1422117610Sdes *) 1423117610Sdes os=-none 1424117610Sdes ;; 1425117610Sdesesac 1426117610Sdesfi 1427117610Sdes 1428117610Sdes# Here we handle the case where we know the os, and the CPU type, but not the 1429117610Sdes# manufacturer. We pick the logical manufacturer. 1430117610Sdesvendor=unknown 1431117610Sdescase $basic_machine in 1432117610Sdes *-unknown) 1433117610Sdes case $os in 1434117610Sdes -riscix*) 1435117610Sdes vendor=acorn 1436117610Sdes ;; 1437117610Sdes -sunos*) 1438117610Sdes vendor=sun 1439117610Sdes ;; 1440117610Sdes -aix*) 1441117610Sdes vendor=ibm 1442117610Sdes ;; 1443117610Sdes -beos*) 1444117610Sdes vendor=be 1445117610Sdes ;; 1446117610Sdes -hpux*) 1447117610Sdes vendor=hp 1448117610Sdes ;; 1449117610Sdes -mpeix*) 1450117610Sdes vendor=hp 1451117610Sdes ;; 1452117610Sdes -hiux*) 1453117610Sdes vendor=hitachi 1454117610Sdes ;; 1455117610Sdes -unos*) 1456117610Sdes vendor=crds 1457117610Sdes ;; 1458117610Sdes -dgux*) 1459117610Sdes vendor=dg 1460117610Sdes ;; 1461117610Sdes -luna*) 1462117610Sdes vendor=omron 1463117610Sdes ;; 1464117610Sdes -genix*) 1465117610Sdes vendor=ns 1466117610Sdes ;; 1467117610Sdes -mvs* | -opened*) 1468117610Sdes vendor=ibm 1469117610Sdes ;; 1470117610Sdes -ptx*) 1471117610Sdes vendor=sequent 1472117610Sdes ;; 1473117610Sdes -vxsim* | -vxworks* | -windiss*) 1474117610Sdes vendor=wrs 1475117610Sdes ;; 1476117610Sdes -aux*) 1477117610Sdes vendor=apple 1478117610Sdes ;; 1479117610Sdes -hms*) 1480117610Sdes vendor=hitachi 1481117610Sdes ;; 1482117610Sdes -mpw* | -macos*) 1483117610Sdes vendor=apple 1484117610Sdes ;; 1485117610Sdes -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1486117610Sdes vendor=atari 1487117610Sdes ;; 1488117610Sdes -vos*) 1489117610Sdes vendor=stratus 1490117610Sdes ;; 1491117610Sdes esac 1492117610Sdes basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1493117610Sdes ;; 1494117610Sdesesac 1495117610Sdes 1496117610Sdesecho $basic_machine$os 1497117610Sdesexit 0 1498117610Sdes 1499117610Sdes# Local variables: 1500117610Sdes# eval: (add-hook 'write-file-hooks 'time-stamp) 1501117610Sdes# time-stamp-start: "timestamp='" 1502117610Sdes# time-stamp-format: "%:y-%02m-%02d" 1503117610Sdes# time-stamp-end: "'" 1504117610Sdes# End: 1505