| #! /bin/sh |
| # Configuration validation subroutine script. |
| # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 |
| # Free Software Foundation, Inc. |
| |
| timestamp='2001-04-20' |
| |
| # 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 <config-patches@gnu.org>. |
| # |
| # 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. |
| # Otherwise, we print the canonical config type on stdout and succeed. |
| |
| # This file is supposed to be the same for all GNU packages |
| # and recognize all the CPU types, system types and aliases |
| # that are meaningful with *any* GNU software. |
| # Each package is responsible for reporting which valid configurations |
| # it does not support. The user should be able to distinguish |
| # a failure to support a valid configuration from a meaningless |
| # configuration. |
| |
| # 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 |
| # 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. |
| |
| 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 |
| -t, --time-stamp print date of last modification, then exit |
| -v, --version print version number, then exit |
| |
| Report bugs and patches to <config-patches@gnu.org>." |
| |
| version="\ |
| GNU config.sub ($timestamp) |
| |
| Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 |
| Free Software Foundation, Inc. |
| |
| This is free software; see the source for copying conditions. There is NO |
| warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
| |
| help=" |
| Try \`$me --help' for more information." |
| |
| # Parse command line |
| while test $# -gt 0 ; do |
| case $1 in |
| --time-stamp | --time* | -t ) |
| echo "$timestamp" ; exit 0 ;; |
| --version | -v ) |
| echo "$version" ; exit 0 ;; |
| --help | --h* | -h ) |
| echo "$usage"; exit 0 ;; |
| -- ) # Stop option processing |
| shift; break ;; |
| - ) # Use stdin as input. |
| break ;; |
| -* ) |
| echo "$me: invalid option $1$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 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* | os2-emx*) |
| 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 |
| |
| ### 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* | -hitachi* |\ |
| -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
| -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 |
| ;; |
| -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=-sco3.2v2 |
| basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| ;; |
| -udk*) |
| basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| ;; |
| -isc) |
| os=-isc2.2 |
| basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| ;; |
| -clix*) |
| basic_machine=clipper-intergraph |
| ;; |
| -isc*) |
| basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| ;; |
| -lynx*) |
| os=-lynxos |
| ;; |
| -ptx*) |
| basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` |
| ;; |
| -windowsnt*) |
| os=`echo $os | sed -e 's/windowsnt/winnt/'` |
| ;; |
| -psos*) |
| os=-psos |
| ;; |
| -mint | -mint[0-9]*) |
| basic_machine=m68k-atari |
| os=-mint |
| ;; |
| esac |
| |
| # Decode aliases for certain CPU-COMPANY combinations. |
| case $basic_machine in |
| # 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 | pdp10 | pdp11 \ |
| | mips16 | mips64 | mipsel | mips64el \ |
| | mips64orion | mips64orionel | mipstx39 | mipstx39el \ |
| | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ |
| | mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \ |
| | sparc | sparclet | sparclite | sparc64 | sparcv9 | sparcv9b \ |
| | v850 | c4x \ |
| | thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \ |
| | pj | pjl | h8500) |
| basic_machine=$basic_machine-unknown |
| ;; |
| m6811 | m68hc11 | m6812 | m68hc12) |
| # Motorola 68HC11/12. |
| basic_machine=$basic_machine-unknown |
| os=-none |
| ;; |
| m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65) |
| ;; |
| |
| # 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*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*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-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ |
| | sparc64-* | sparcv9-* | sparcv9b-* | sparc86x-* \ |
| | mips16-* | mips64-* | mipsel-* \ |
| | mips64el-* | mips64orion-* | mips64orionel-* \ |
| | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ |
| | mipstx39-* | mipstx39el-* | mcore-* \ |
| | f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \ |
| | [cjt]90-* \ |
| | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ |
| | thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \ |
| | bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*) |
| ;; |
| # 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 |
| ;; |
| 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) |
| basic_machine=m68000-att |
| ;; |
| 3b*) |
| basic_machine=we32k-att |
| ;; |
| a29khif) |
| basic_machine=a29k-amd |
| os=-udi |
| ;; |
| adobe68k) |
| basic_machine=m68010-adobe |
| os=-scout |
| ;; |
| alliant | fx80) |
| basic_machine=fx80-alliant |
| ;; |
| altos | altos3068) |
| basic_machine=m68k-altos |
| ;; |
| am29k) |
| basic_machine=a29k-none |
| os=-bsd |
| ;; |
| amdahl) |
| basic_machine=580-amdahl |
| os=-sysv |
| ;; |
| amiga | amiga-*) |
| basic_machine=m68k-unknown |
| ;; |
| amigaos | amigados) |
| basic_machine=m68k-unknown |
| os=-amigaos |
| ;; |
| amigaunix | amix) |
| basic_machine=m68k-unknown |
| os=-sysv4 |
| ;; |
| apollo68) |
| basic_machine=m68k-apollo |
| os=-sysv |
| ;; |
| apollo68bsd) |
| basic_machine=m68k-apollo |
| os=-bsd |
| ;; |
| aux) |
| basic_machine=m68k-apple |
| os=-aux |
| ;; |
| balance) |
| basic_machine=ns32k-sequent |
| os=-dynix |
| ;; |
| convex-c1) |
| basic_machine=c1-convex |
| os=-bsd |
| ;; |
| convex-c2) |
| basic_machine=c2-convex |
| os=-bsd |
| ;; |
| convex-c32) |
| basic_machine=c32-convex |
| os=-bsd |
| ;; |
| convex-c34) |
| basic_machine=c34-convex |
| os=-bsd |
| ;; |
| convex-c38) |
| basic_machine=c38-convex |
| os=-bsd |
| ;; |
| cray | ymp) |
| basic_machine=ymp-cray |
| os=-unicos |
| ;; |
| cray2) |
| basic_machine=cray2-cray |
| os=-unicos |
| ;; |
| [cjt]90) |
| basic_machine=${basic_machine}-cray |
| os=-unicos |
| ;; |
| crds | unos) |
| basic_machine=m68k-crds |
| ;; |
| cris | cris-* | etrax*) |
| basic_machine=cris-axis |
| ;; |
| da30 | da30-*) |
| basic_machine=m68k-da30 |
| ;; |
| 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 |
| ;; |
| delta88) |
| basic_machine=m88k-motorola |
| os=-sysv3 |
| ;; |
| dpx20 | dpx20-*) |
| basic_machine=rs6000-bull |
| os=-bosx |
| ;; |
| dpx2* | dpx2*-bull) |
| basic_machine=m68k-bull |
| os=-sysv3 |
| ;; |
| ebmon29k) |
| basic_machine=a29k-amd |
| os=-ebmon |
| ;; |
| elxsi) |
| basic_machine=elxsi-elxsi |
| os=-bsd |
| ;; |
| encore | umax | mmax) |
| basic_machine=ns32k-encore |
| ;; |
| es1800 | OSE68k | ose68k | ose | OSE) |
| basic_machine=m68k-ericsson |
| os=-ose |
| ;; |
| fx2800) |
| basic_machine=i860-alliant |
| ;; |
| genix) |
| basic_machine=ns32k-ns |
| ;; |
| gmicro) |
| basic_machine=tron-gmicro |
| os=-sysv |
| ;; |
| go32) |
| basic_machine=i386-pc |
| os=-go32 |
| ;; |
| h3050r* | hiux*) |
| basic_machine=hppa1.1-hitachi |
| os=-hiuxwe2 |
| ;; |
| h8300hms) |
| basic_machine=h8300-hitachi |
| os=-hms |
| ;; |
| h8300xray) |
| basic_machine=h8300-hitachi |
| os=-xray |
| ;; |
| h8500hms) |
| basic_machine=h8500-hitachi |
| os=-hms |
| ;; |
| harris) |
| basic_machine=m88k-harris |
| os=-sysv3 |
| ;; |
| hp300-*) |
| basic_machine=m68k-hp |
| ;; |
| hp300bsd) |
| basic_machine=m68k-hp |
| os=-bsd |
| ;; |
| hp300hpux) |
| basic_machine=m68k-hp |
| os=-hpux |
| ;; |
| 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 |
| ;; |
| 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*86v32) |
| basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| os=-sysv32 |
| ;; |
| i*86v4*) |
| basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| os=-sysv4 |
| ;; |
| i*86v) |
| basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| os=-sysv |
| ;; |
| i*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 |
| ;; |
| iris | iris4d) |
| basic_machine=mips-sgi |
| case $os in |
| -irix*) |
| ;; |
| *) |
| os=-irix4 |
| ;; |
| esac |
| ;; |
| isi68 | isi) |
| basic_machine=m68k-isi |
| os=-sysv |
| ;; |
| m88k-omron*) |
| basic_machine=m88k-omron |
| ;; |
| magnum | m3230) |
| basic_machine=mips-mips |
| os=-sysv |
| ;; |
| merlin) |
| basic_machine=ns32k-utek |
| os=-sysv |
| ;; |
| mingw32) |
| basic_machine=i386-pc |
| os=-mingw32 |
| ;; |
| miniframe) |
| basic_machine=m68000-convergent |
| ;; |
| *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-pc |
| 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 |
| ;; |
| necv70) |
| basic_machine=v70-nec |
| os=-sysv |
| ;; |
| next | m*-next ) |
| basic_machine=m68k-next |
| case $os in |
| -nextstep* ) |
| ;; |
| -ns2*) |
| os=-nextstep2 |
| ;; |
| *) |
| os=-nextstep3 |
| ;; |
| esac |
| ;; |
| nh3000) |
| basic_machine=m68k-harris |
| os=-cxux |
| ;; |
| nh[45]000) |
| basic_machine=m88k-harris |
| os=-cxux |
| ;; |
| nindy960) |
| basic_machine=i960-intel |
| os=-nindy |
| ;; |
| mon960) |
| basic_machine=i960-intel |
| os=-mon960 |
| ;; |
| nonstopux) |
| basic_machine=mips-compaq |
| os=-nonstopux |
| ;; |
| 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 | nexgen) |
| basic_machine=i586-pc |
| ;; |
| pentiumpro | p6 | 6x86 | athlon) |
| basic_machine=i686-pc |
| ;; |
| pentiumii | pentium2) |
| basic_machine=i686-pc |
| ;; |
| pentium-* | p5-* | k5-* | k6-* | nexgen-*) |
| basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` |
| ;; |
| pentiumpro-* | p6-* | 6x86-* | athlon-*) |
| basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` |
| ;; |
| pentiumii-* | pentium2-*) |
| basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` |
| ;; |
| pn) |
| basic_machine=pn-gould |
| ;; |
| power) basic_machine=power-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 |
| ;; |
| pw32) |
| basic_machine=i586-unknown |
| os=-pw32 |
| ;; |
| rom68k) |
| basic_machine=m68k-rom68k |
| os=-coff |
| ;; |
| rm[46]00) |
| basic_machine=mips-siemens |
| ;; |
| rtpc | rtpc-*) |
| basic_machine=romp-ibm |
| ;; |
| sa29200) |
| basic_machine=a29k-amd |
| os=-udi |
| ;; |
| sequent) |
| basic_machine=i386-sequent |
| ;; |
| sh) |
| basic_machine=sh-hitachi |
| os=-hms |
| ;; |
| sparclite-wrs) |
| basic_machine=sparclite-wrs |
| os=-vxworks |
| ;; |
| sps7) |
| basic_machine=m68k-bull |
| os=-sysv2 |
| ;; |
| spur) |
| basic_machine=spur-unknown |
| ;; |
| st2000) |
| basic_machine=m68k-tandem |
| ;; |
| stratus) |
| basic_machine=i860-stratus |
| os=-sysv4 |
| ;; |
| sun2) |
| basic_machine=m68000-sun |
| ;; |
| sun2os3) |
| basic_machine=m68000-sun |
| os=-sunos3 |
| ;; |
| sun2os4) |
| basic_machine=m68000-sun |
| os=-sunos4 |
| ;; |
| sun3os3) |
| basic_machine=m68k-sun |
| os=-sunos3 |
| ;; |
| sun3os4) |
| basic_machine=m68k-sun |
| os=-sunos4 |
| ;; |
| sun4os3) |
| basic_machine=sparc-sun |
| os=-sunos3 |
| ;; |
| sun4os4) |
| basic_machine=sparc-sun |
| os=-sunos4 |
| ;; |
| sun4sol2) |
| basic_machine=sparc-sun |
| os=-solaris2 |
| ;; |
| sun3 | sun3-*) |
| basic_machine=m68k-sun |
| ;; |
| sun4) |
| basic_machine=sparc-sun |
| ;; |
| sun386 | sun386i | roadrunner) |
| basic_machine=i386-sun |
| ;; |
| sv1) |
| basic_machine=sv1-cray |
| os=-unicos |
| ;; |
| symmetry) |
| basic_machine=i386-sequent |
| os=-dynix |
| ;; |
| t3e) |
| basic_machine=t3e-cray |
| os=-unicos |
| ;; |
| tic54x | c54x*) |
| basic_machine=tic54x-unknown |
| os=-coff |
| ;; |
| tx39) |
| basic_machine=mipstx39-unknown |
| ;; |
| tx39el) |
| basic_machine=mipstx39el-unknown |
| ;; |
| tower | tower-32) |
| basic_machine=m68k-ncr |
| ;; |
| udi29k) |
| basic_machine=a29k-amd |
| os=-udi |
| ;; |
| ultra3) |
| basic_machine=a29k-nyu |
| os=-sym1 |
| ;; |
| v810 | necv810) |
| basic_machine=v810-nec |
| os=-none |
| ;; |
| vaxv) |
| basic_machine=vax-dec |
| os=-sysv |
| ;; |
| vms) |
| basic_machine=vax-dec |
| os=-vms |
| ;; |
| vpp*|vx|vx-*) |
| basic_machine=f301-fujitsu |
| ;; |
| vxworks960) |
| basic_machine=i960-wrs |
| os=-vxworks |
| ;; |
| vxworks68) |
| basic_machine=m68k-wrs |
| os=-vxworks |
| ;; |
| vxworks29k) |
| basic_machine=a29k-wrs |
| os=-vxworks |
| ;; |
| w65*) |
| basic_machine=w65-wdc |
| os=-none |
| ;; |
| w89k-*) |
| basic_machine=hppa1.1-winbond |
| os=-proelf |
| ;; |
| xmp) |
| basic_machine=xmp-cray |
| os=-unicos |
| ;; |
| xps | xps100) |
| basic_machine=xps100-honeywell |
| ;; |
| z8k-*-coff) |
| basic_machine=z8k-unknown |
| os=-sim |
| ;; |
| none) |
| basic_machine=none-none |
| os=-none |
| ;; |
| |
| # 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) |
| if [ x$os = x-linux-gnu ]; then |
| basic_machine=mips-unknown |
| else |
| basic_machine=mips-mips |
| fi |
| ;; |
| romp) |
| basic_machine=romp-ibm |
| ;; |
| rs6000) |
| basic_machine=rs6000-ibm |
| ;; |
| vax) |
| basic_machine=vax-dec |
| ;; |
| pdp10) |
| # there are many clones, so DEC is not a safe bet |
| basic_machine=pdp10-unknown |
| ;; |
| pdp11) |
| basic_machine=pdp11-dec |
| ;; |
| we32k) |
| basic_machine=we32k-att |
| ;; |
| sh3 | sh4) |
| basic_machine=sh-unknown |
| ;; |
| sparc | sparcv9 | sparcv9b) |
| basic_machine=sparc-sun |
| ;; |
| 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 |
| ;; |
| *-unknown) |
| # Make sure to match an already-canonicalized machine name. |
| ;; |
| *) |
| echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
| exit 1 |
| ;; |
| 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 [ 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. |
| # -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* \ |
| | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
| | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ |
| | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ |
| | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ |
| | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*) |
| # Remember, each alternative MUST END IN *, to match a version number. |
| ;; |
| -qnx*) |
| case $basic_machine in |
| x86-* | i*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=-osfrose |
| ;; |
| -osf*) |
| os=-osf |
| ;; |
| -utek*) |
| os=-bsd |
| ;; |
| -dynix*) |
| os=-bsd |
| ;; |
| -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[0-9]* | -*MiNT | -MiNT[0-9]*) |
| os=-mint |
| ;; |
| -none) |
| ;; |
| *) |
| # Get rid of the `-' at the beginning of $os. |
| os=`echo $os | sed 's/[^-]*-//'` |
| echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 |
| exit 1 |
| ;; |
| esac |
| 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 |
| ;; |
| pdp10-*) |
| os=-tops20 |
| ;; |
| pdp11-*) |
| os=-none |
| ;; |
| *-dec | vax-*) |
| os=-ultrix4.2 |
| ;; |
| m68*-apollo) |
| os=-domain |
| ;; |
| i386-sun) |
| os=-sunos4.0.2 |
| ;; |
| m68000-sun) |
| os=-sunos3 |
| # This also exists in the configure program, but was not the |
| # 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=-sunos4.1.1 |
| ;; |
| *-be) |
| os=-beos |
| ;; |
| *-ibm) |
| os=-aix |
| ;; |
| *-wec) |
| os=-proelf |
| ;; |
| *-winbond) |
| os=-proelf |
| ;; |
| *-oki) |
| os=-proelf |
| ;; |
| *-hp) |
| os=-hpux |
| ;; |
| *-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 |
| ;; |
| i370-*) |
| os=-mvs |
| ;; |
| *-next) |
| os=-nextstep3 |
| ;; |
| *-gould) |
| os=-sysv |
| ;; |
| *-highlevel) |
| os=-bsd |
| ;; |
| *-encore) |
| os=-bsd |
| ;; |
| *-sgi) |
| os=-irix |
| ;; |
| *-siemens) |
| os=-sysv4 |
| ;; |
| *-masscomp) |
| os=-rtu |
| ;; |
| f30[01]-fujitsu | f700-fujitsu) |
| os=-uxpv |
| ;; |
| *-rom68k) |
| os=-coff |
| ;; |
| *-*bug) |
| os=-coff |
| ;; |
| *-apple) |
| os=-macos |
| ;; |
| *-atari*) |
| os=-mint |
| ;; |
| *) |
| os=-none |
| ;; |
| esac |
| fi |
| |
| # Here we handle the case where we know the os, and the CPU type, but not the |
| # manufacturer. We pick the logical manufacturer. |
| 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 |
| ;; |
| -dgux*) |
| vendor=dg |
| ;; |
| -luna*) |
| vendor=omron |
| ;; |
| -genix*) |
| vendor=ns |
| ;; |
| -mvs* | -opened*) |
| vendor=ibm |
| ;; |
| -ptx*) |
| vendor=sequent |
| ;; |
| -vxsim* | -vxworks*) |
| vendor=wrs |
| ;; |
| -aux*) |
| vendor=apple |
| ;; |
| -hms*) |
| vendor=hitachi |
| ;; |
| -mpw* | -macos*) |
| vendor=apple |
| ;; |
| -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) |
| 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: "timestamp='" |
| # time-stamp-format: "%:y-%02m-%02d" |
| # time-stamp-end: "'" |
| # End: |