"Fossies" - the Fresh Open Source Software Archive

Member "tin-2.4.2/config.sub" (27 Nov 2017, 36696 Bytes) of package /linux/misc/tin-2.4.2.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "config.sub": 2.4.1_vs_2.4.2.

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