X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=config.sub;h=f8d46e4efcae9398d221d6b9904a74243666865d;hb=558e161f24558ec8b8e78d135e4d9db182885a3e;hp=e123bfa7b773375a5d0f6748884ae8604da42293;hpb=afba2b22860d527eaff590cb70a0dfc5d3765241;p=deliverable%2Fbinutils-gdb.git diff --git a/config.sub b/config.sub index e123bfa7b7..f8d46e4efc 100755 --- a/config.sub +++ b/config.sub @@ -1,22 +1,36 @@ -#!/bin/sh -# Configuration validation subroutine script, version 1.0. -# Copyright (C) 1991, 1992 Free Software Foundation, Inc. +#! /bin/sh +# Configuration validation subroutine script, version 1.1. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 +# Free Software Foundation, Inc. -#This file is free software; you can redistribute it and/or modify -#it under the terms of the GNU General Public License as published by -#the Free Software Foundation; either version 2 of the License, or -#(at your option) any later version. +version='2000-11-02' -#This program is distributed in the hope that it will be useful, -#but WITHOUT ANY WARRANTY; without even the implied warranty of -#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#GNU General Public License for more details. - -#You should have received a copy of the GNU General Public License -#along with this program; if not, write to the Free Software -#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. +# Please send patches to . +# # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. @@ -33,457 +47,807 @@ # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# it is wrong to echo any other type of specification +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. -# First pass through any local machine types. -case $1 in - *local*) - echo $1 - exit 0 - ;; - *) - ;; +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -V, --version print version number, then exit" + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case "$1" in + --version | --vers* | -V ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + exec >&2 + echo "$me: invalid option $1" + echo "$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit 0;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS (if any). -basic_machine=`echo $1 | sed 's/-[^-][^-]*$//'` -if [ $basic_machine != $1 ] -then os=`echo $1 | sed 's/.*-/-/'` -else os=; fi +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | storm-chaos*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac -# Lets recognize common machines as not being OS so that things like -# config.subr decstation-3100 as legal. +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next* | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -osf* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris) + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; -sco*) - os=-scosysv322 - basic_machine=i386-unknown + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; - -OSE68k | -ose68k | -OSE | -ose | -es1800) - os=-ose - basic_machine=m68k-ericsson + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; - -OSE68000 | -ose68000) - os=-ose - basic_machine=m68000-ericsson + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph ;; -isc*) - os=-iscsysv - basic_machine=i386-unknown + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos ;; -# start-sanitize-v9 - -32) - basic_machine=sparc64-hal - os=-hal32 + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; - -64) - basic_machine=sparc64-hal - os=-hal64 + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; - -v7) - basic_machine=sparc64-sun - os=-v7 + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint ;; -# end-sanitize-v9 esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in - # Recognize the basic CPU types with without company name. - tahoe | i386 | i486 | i860 | m68k | m680[01234]0 | m683?2 \ - | m88k | ns32k | arm | pyramid \ - | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 | we32k\ - | v70) + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \ + | arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \ + | pyramid | mn10200 | mn10300 | tron | a29k \ + | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ + | hppa64 \ + | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ + | alphaev6[78] \ + | we32k | ns16k | clipper | i370 | sh | sh[34] \ + | powerpc | powerpcle \ + | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ + | mips64orion | mips64orionel | mipstx39 | mipstx39el \ + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el | mcore \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v | d30v | fr30 | avr) basic_machine=$basic_machine-unknown ;; - # Recognize the basic CPU types with with company name. - vax-* | tahoe-* | i386-* | i860-* | m68k-* \ - | m680[01234]0-* | m683?2-* | m88k-* \ - | sparc-* | ns32k-* | alliant-* | arm-* | c[123]* \ - | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ - | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \ - | hppa1.0-* | hppa1.1-* | we32k-*) - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. -# start-sanitize-life - life-*) ;; - life) - basic_machine=life-philips + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown os=-none ;; -# end-sanitize-life + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) + ;; -# start-sanitize-v9 - sparc64-*) ;; - hal-32 | hal32) - basic_machine=sparc64-hal - os=-hal32 + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i[234567]86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ + | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \ + | arm-* | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \ + | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ + | xmp-* | ymp-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa2.0n-* | hppa64-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ + | alphaev6[78]-* \ + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ + | clipper-* | orion-* \ + | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f301-* | s390-* | sv1-* | t3e-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \ + | bs2000-* | tic54x-* | c54x-* | x86_64-*) ;; - hal-64 | hal64) - basic_machine=sparc64-hal - os=-hal64 + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd ;; - sparc64) - basic_machine=sparc64-sun - os=-v9 + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att ;; - sparc64-v7 | sparc64v7) - basic_machine=sparc64-sun - os=-v7 + 3b*) + basic_machine=we32k-att ;; -# end-sanitize-v9 - - vaxv) - basic_machine=vax-dec - os=-sysv + a29khif) + basic_machine=a29k-amd + os=-udi ;; - vms) - basic_machine=vax-dec - os=-vms + adobe68k) + basic_machine=m68010-adobe + os=-scout ;; - i386mach) - basic_machine=i386-mach - os=-mach + alliant | fx80) + basic_machine=fx80-alliant ;; - i386v32) - basic_machine=i386-unknown - os=-sysv32 + altos | altos3068) + basic_machine=m68k-altos ;; - i386-sco* | i386sco | sco) - basic_machine=i386-unknown - os=-scosysv322 + am29k) + basic_machine=a29k-none + os=-bsd ;; - go32 | i386-go32) - basic_machine=i386-unknown - os=-go32 + amdahl) + basic_machine=580-amdahl + os=-sysv ;; - i386-isc* | isc) - basic_machine=i386-unknown - os=-iscsysv + amiga | amiga-*) + basic_machine=m68k-unknown ;; - i386-linux* | linux) - basic_machine=i386-unknown - os=-linux + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos ;; - i386v4*) - basic_machine=i386-unknown + amigaunix | amix) + basic_machine=m68k-unknown os=-sysv4 ;; - i386v) - basic_machine=i386-unknown + apollo68) + basic_machine=m68k-apollo os=-sysv ;; - spur) - basic_machine=spur-unknown + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd ;; - alliant) - basic_machine=alliant-alliant + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix ;; convex-c1) basic_machine=c1-convex - os=-sysv + os=-bsd ;; convex-c2) basic_machine=c2-convex - os=-sysv + os=-bsd ;; convex-c32) basic_machine=c32-convex - os=-sysv + os=-bsd ;; convex-c34) basic_machine=c34-convex - os=-sysv + os=-bsd ;; convex-c38) basic_machine=c38-convex - os=-sysv + os=-bsd ;; - m88k-omron*) - basic_machine=m88k-omron + cray | ymp) + basic_machine=ymp-cray + os=-unicos ;; - merlin) - basic_machine=ns32k-utek - os=-sysv + cray2) + basic_machine=cray2-cray + os=-unicos + ;; + [ctj]90-cray) + basic_machine=c90-cray + os=-unicos ;; crds | unos) basic_machine=m68k-crds ;; - encore | umax | mmax) - basic_machine=ns32k-encore - os=-sysv - ;; - genix) - basic_machine=ns32k-ns + cris | cris-* | etrax*) + basic_machine=cris-axis ;; - iris | iris3 | iris4d) - basic_machine=mips-sgi - os=-irix3 - ;; - iris4) - basic_machine=mips-sgi - os=-irix4 + da30 | da30-*) + basic_machine=m68k-da30 ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68k-att + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; - balance) - basic_machine=ns32k-sequent - os=-dynix + delta88) + basic_machine=m88k-motorola + os=-sysv3 ;; - pc532) - basic_machine=ns32k-pc532 + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - sun2) - basic_machine=m68000-sun + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 + ebmon29k) + basic_machine=a29k-amd + os=-ebmon ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 + elxsi) + basic_machine=elxsi-elxsi + os=-bsd ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 + encore | umax | mmax) + basic_machine=ns32k-encore ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 + fx2800) + basic_machine=i860-alliant ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 + genix) + basic_machine=ns32k-ns ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 + gmicro) + basic_machine=tron-gmicro + os=-sysv ;; - sun3) - basic_machine=m68k-sun + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 ;; - sun4) - basic_machine=sparc-sun + h8300hms) + basic_machine=h8300-hitachi + os=-hms ;; - msdos) - basic_machine=i386-unknown - os=-msdos + h8300xray) + basic_machine=h8300-hitachi + os=-xray ;; - pbd) - basic_machine=sparc-unicom + h8500hms) + basic_machine=h8500-hitachi + os=-hms ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun + harris) + basic_machine=m88k-harris + os=-sysv3 ;; - ps2) - basic_machine=i386-ibm + hp300-*) + basic_machine=m68k-hp ;; - next) - basic_machine=m68k-next + hp300bsd) + basic_machine=m68k-hp os=-bsd ;; - hp9k3[2-9][0-9]) + hp300hpux) basic_machine=m68k-hp + os=-hpux ;; - hp9k31[0-9] | hp9k2[0-9][0-9]) + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; - hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i[34567]86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i[34567]86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i[34567]86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i[34567]86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + i386-go32 | go32) + basic_machine=i386-unknown + os=-go32 + ;; + i386-mingw32 | mingw32) + basic_machine=i386-unknown + os=-mingw32 + ;; + i[34567]86-pw32 | pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv + m88k-omron*) + basic_machine=m88k-omron ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd + magnum | m3230) + basic_machine=mips-mips + os=-sysv ;; - altos | altos3068) - basic_machine=m68k-altos + merlin) + basic_machine=ns32k-utek + os=-sysv ;; miniframe) basic_machine=m68000-convergent ;; - tower | tower-32) - basic_machine=m68k-ncr + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mipsel*-linux*) + basic_machine=mipsel-unknown + os=-linux-gnu + ;; + mips*-linux*) + basic_machine=mips-unknown + os=-linux-gnu + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-unknown + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; - st2000) - basic_machine=m68kmote-tandem + necv70) + basic_machine=v70-nec + os=-sysv ;; - decstation-dec | decstation | decstation-3100 | pmax | pmin | dec3100 | decstatn) - basic_machine=mips-dec + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv + nh3000) + basic_machine=m68k-harris + os=-cxux ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium | p5 | k5 | k6 | nexen) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon) + basic_machine=i686-pc + ;; + pentiumii | pentium2) + basic_machine=i786-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexen-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-*) + basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=rs6000-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; - am29k) - basic_machine=a29k-none - os=-bsd + sa29200) + basic_machine=a29k-amd + os=-udi ;; - amdahl) - basic_machine=580-amdahl - os=-sysv + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks ;; - amigados) - basic_machine=m68k-cbm - os=-amigados + sps7) + basic_machine=m68k-bull + os=-sysv2 ;; - amigaunix | amix) - basic_machine=m68k-cbm - os=-sysv4 + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; - cray | ymp) - basic_machine=ymp-cray - os=-unicos - ;; - cray2) - basic_machine=cray2-cray - os=-unicos - ;; - xmp) - basic_machine=xmp-cray - os=-unicos + sun2) + basic_machine=m68000-sun ;; - delta88) - basic_machine=m88k-motorola - os=-m88kbcs + sun2os3) + basic_machine=m68000-sun + os=-sunos3 ;; - dpx2) - basic_machine=m68k-bull - os=-sysv + sun2os4) + basic_machine=m68000-sun + os=-sunos4 ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon + sun3os3) + basic_machine=m68k-sun + os=-sunos3 ;; - - h8300hms) - basic_machine=h8300-hitachi - os=-hms + sun3os4) + basic_machine=m68k-sun + os=-sunos4 ;; - udi29k) - basic_machine=a29k-amd - os=-udi + sun4os3) + basic_machine=sparc-sun + os=-sunos3 ;; - a29khif) - basic_machine=a29k-amd - os=-udi + sun4os4) + basic_machine=sparc-sun + os=-sunos4 ;; - sa29200) - basic_machine=a29k-amd - os=-udi + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray + sun3 | sun3-*) + basic_machine=m68k-sun ;; - harris) - basic_machine=m88k-harris - os=-m88kbcs + sun4) + basic_machine=sparc-sun ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd + sun386 | sun386i | roadrunner) + basic_machine=i386-sun ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux + sv1) + basic_machine=sv1-cray + os=-unicos ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - os=-hpux + symmetry) + basic_machine=i386-sequent + os=-dynix ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - os=-hpux + t3e) + basic_machine=t3e-cray + os=-unicos ;; - hppabsd) - basic_machine=hppa-hp - os=-bsd + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff ;; - hppahpux) - basic_machine=hppa-hp - os=-hpux + tx39) + basic_machine=mipstx39-unknown ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 + tx39el) + basic_machine=mipstx39el-unknown ;; - necv70) - basic_machine=v70-nec - os=-sysv + tower | tower-32) + basic_machine=m68k-ncr ;; - news1000) - basic_machine=m68030-sony - os=-newsos + udi29k) + basic_machine=a29k-amd + os=-udi ;; - nindy960) - basic_machine=i960-intel - os=-nindy + ultra3) + basic_machine=a29k-nyu + os=-sym1 ;; - pn) - basic_machine=pn-gould - os=-sysv + v810 | necv810) + basic_machine=v810-nec + os=-none ;; - np1) - basic_machine=np1-gould + vaxv) + basic_machine=vax-dec os=-sysv ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 + vms) + basic_machine=vax-dec + os=-vms ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; vxworks960) basic_machine=i960-wrs os=-vxworks @@ -492,39 +856,29 @@ case $basic_machine in basic_machine=m68k-wrs os=-vxworks ;; - es1800 | OSE68k | ose68k) - basic_machine=m68k-ericsson - os=-ose - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks ;; - sparclite) - basic_machine=sparclite-fujitsu + w65*) + basic_machine=w65-wdc os=-none ;; - sparcfrw) - basic_machine=sparcfrw-sun - os=-sunos4 + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf ;; - sparcfrwcompat) - basic_machine=sparcfrwcompat-sun - os=-sunos4 + xmp) + basic_machine=xmp-cray + os=-unicos ;; - sparclitefrw) - basic_machine=sparclitefrw-fujitsu - os=-none + xps | xps100) + basic_machine=xps100-honeywell ;; - sparclitefrwcompat) - basic_machine=sparclitefrwcompat-fujitsu - os=-none + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim ;; - none) basic_machine=none-none os=-none @@ -532,8 +886,21 @@ case $basic_machine in # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; mips) - basic_machine=mips-mips + if [ x$os = x-linux-gnu ]; then + basic_machine=mips-unknown + else + basic_machine=mips-mips + fi ;; romp) basic_machine=romp-ibm @@ -544,11 +911,36 @@ case $basic_machine in vax) basic_machine=vax-dec ;; - sparc) + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh3 | sh4) + base_machine=sh-unknown + ;; + sparc | sparcv9) basic_machine=sparc-sun ;; - fx2800) - basic_machine=i860-alliant + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 @@ -556,59 +948,166 @@ case $basic_machine in ;; esac +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + # Decode manufacturer-specific aliases for certain operating systems. -if [ "$os" ] +if [ x"$os" != x"" ] then case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; # First accept the basic system types. # The portable systems comes first. - # Each alternative must end in a *, to match a version number. - -bsd* | -sysv* | -mach* | -minix* | -genix* | -ultrix* | -aout | -coff \ - | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos* | -hpux* \ - | -unos* | -osf* | -v88r* | -luna* | -dgux* | -solaris* | -sym* \ - | -newsos | -amigados* | -msdos* | -none* | -os68k* | -irix* \ - | -nindy* | -vxworks* | -ebmon* | -udi | -hms* | -xray \ - | -m88kbcs* | -go32 | -linux* ) - ;; -# start-sanitize-v9 - -v7 | -v9 | -hal32 | -hal64) ;; -# end-sanitize-v9 - -# Note that readline checks for newsos -# -newsos*) -# os=-bsd -# ;; + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -storm-chaos*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; -osfrose*) - os=-osf + os=-osfrose ;; -osf*) + os=-osf + ;; + -utek*) os=-bsd ;; -dynix*) os=-bsd ;; - -aos*) + -acis*) + os=-aos + ;; + -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; + -xenix) + os=-xenix + ;; + -*mint | -*MiNT) + os=-mint + ;; + -none) + ;; *) # Get rid of the `-' at the beginning of $os. - os=`echo $1 | sed 's/[^-]*-//'` + os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; @@ -618,12 +1117,34 @@ else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + pdp11-*) + os=-none + ;; *-dec | vax-*) - os=-ultrix42 + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain ;; i386-sun) - os=-sunos402 + os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 @@ -631,35 +1152,110 @@ case $basic_machine in # default. # os=-sunos4 ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; sparc-* | *-sun) - os=-sunos411 + os=-sunos4.1.1 ;; - romp-*) - os=-bsd + *-be) + os=-beos ;; *-ibm) os=-aix ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; *-hp) os=-hpux ;; - *-sgi | i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; + *-cbm) + os=-amigaos + ;; *-dg) os=-dgux ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; m88k-omron*) os=-luna ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; *-crds) os=-unos ;; *-ns) os=-genix ;; - i386-*) - os=-scosysv322 + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f301-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint ;; *) os=-none @@ -673,15 +1269,27 @@ vendor=unknown case $basic_machine in *-unknown) case $os in + -riscix*) + vendor=acorn + ;; -sunos*) vendor=sun ;; -aix*) vendor=ibm ;; + -beos*) + vendor=be + ;; -hpux*) vendor=hp ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; -unos*) vendor=crds ;; @@ -694,12 +1302,38 @@ case $basic_machine in -genix*) vendor=ns ;; - -vxworks*) + -mvs* | -opened*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxsim* | -vxworks*) vendor=wrs ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -*MiNT) + vendor=atari + ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "version='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: