home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.lbl.gov / 2014.05.ftp.ee.lbl.gov.tar / ftp.ee.lbl.gov / acld-1.11.tar.gz / acld-1.11.tar / acld-1.11 / config.sub < prev    next >
Text File  |  2008-06-16  |  30KB  |  1,505 lines

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