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