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