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