Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. #! /bin/sh
  2. # Attempt to guess a canonical system name.
  3. #   Copyright 1992-2013 Free Software Foundation, Inc.
  4.  
  5. timestamp='2013-06-10'
  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 <http://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. # Originally written by Per Bothner.
  28. #
  29. # You can get the latest version of this script from:
  30. # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
  31. #
  32. # Please send patches with a ChangeLog entry to config-patches@gnu.org.
  33.  
  34.  
  35. me=`echo "$0" | sed -e 's,.*/,,'`
  36.  
  37. usage="\
  38. Usage: $0 [OPTION]
  39.  
  40. Output the configuration name of the system \`$me' is run on.
  41.  
  42. Operation modes:
  43.   -h, --help         print this help, then exit
  44.   -t, --time-stamp   print date of last modification, then exit
  45.   -v, --version      print version number, then exit
  46.  
  47. Report bugs and patches to <config-patches@gnu.org>."
  48.  
  49. version="\
  50. GNU config.guess ($timestamp)
  51.  
  52. Originally written by Per Bothner.
  53. Copyright 1992-2013 Free Software Foundation, Inc.
  54.  
  55. This is free software; see the source for copying conditions.  There is NO
  56. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
  57.  
  58. help="
  59. Try \`$me --help' for more information."
  60.  
  61. # Parse command line
  62. while test $# -gt 0 ; do
  63.   case $1 in
  64.     --time-stamp | --time* | -t )
  65.        echo "$timestamp" ; exit ;;
  66.     --version | -v )
  67.        echo "$version" ; exit ;;
  68.     --help | --h* | -h )
  69.        echo "$usage"; exit ;;
  70.     -- )     # Stop option processing
  71.        shift; break ;;
  72.     - ) # Use stdin as input.
  73.        break ;;
  74.     -* )
  75.        echo "$me: invalid option $1$help" >&2
  76.        exit 1 ;;
  77.     * )
  78.        break ;;
  79.   esac
  80. done
  81.  
  82. if test $# != 0; then
  83.   echo "$me: too many arguments$help" >&2
  84.   exit 1
  85. fi
  86.  
  87. trap 'exit 1' 1 2 15
  88.  
  89. # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
  90. # compiler to aid in system detection is discouraged as it requires
  91. # temporary files to be created and, as you can see below, it is a
  92. # headache to deal with in a portable fashion.
  93.  
  94. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
  95. # use `HOST_CC' if defined, but it is deprecated.
  96.  
  97. # Portable tmp directory creation inspired by the Autoconf team.
  98.  
  99. set_cc_for_build='
  100. trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
  101. trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
  102. : ${TMPDIR=/tmp} ;
  103.  { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
  104.  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
  105.  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
  106.  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
  107. dummy=$tmp/dummy ;
  108. tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
  109. case $CC_FOR_BUILD,$HOST_CC,$CC in
  110.  ,,)    echo "int x;" > $dummy.c ;
  111.         for c in cc gcc c89 c99 ; do
  112.           if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
  113.              CC_FOR_BUILD="$c"; break ;
  114.           fi ;
  115.         done ;
  116.         if test x"$CC_FOR_BUILD" = x ; then
  117.           CC_FOR_BUILD=no_compiler_found ;
  118.         fi
  119.         ;;
  120.  ,,*)   CC_FOR_BUILD=$CC ;;
  121.  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
  122. esac ; set_cc_for_build= ;'
  123.  
  124. # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
  125. # (ghazi@noc.rutgers.edu 1994-08-24)
  126. if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
  127.         PATH=$PATH:/.attbin ; export PATH
  128. fi
  129.  
  130. UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
  131. UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
  132. UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
  133. UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
  134.  
  135. case "${UNAME_SYSTEM}" in
  136. Linux|GNU|GNU/*)
  137.         # If the system lacks a compiler, then just pick glibc.
  138.         # We could probably try harder.
  139.         LIBC=gnu
  140.  
  141.         eval $set_cc_for_build
  142.         cat <<-EOF > $dummy.c
  143.         #include <features.h>
  144.         #if defined(__UCLIBC__)
  145.         LIBC=uclibc
  146.         #elif defined(__dietlibc__)
  147.         LIBC=dietlibc
  148.         #else
  149.         LIBC=gnu
  150.         #endif
  151.         EOF
  152.         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
  153.         ;;
  154. esac
  155.  
  156. # Note: order is significant - the case branches are not exclusive.
  157.  
  158. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
  159.     *:NetBSD:*:*)
  160.         # NetBSD (nbsd) targets should (where applicable) match one or
  161.         # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
  162.         # *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
  163.         # switched to ELF, *-*-netbsd* would select the old
  164.         # object file format.  This provides both forward
  165.         # compatibility and a consistent mechanism for selecting the
  166.         # object file format.
  167.         #
  168.         # Note: NetBSD doesn't particularly care about the vendor
  169.         # portion of the name.  We always set it to "unknown".
  170.         sysctl="sysctl -n hw.machine_arch"
  171.         UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
  172.             /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
  173.         case "${UNAME_MACHINE_ARCH}" in
  174.             armeb) machine=armeb-unknown ;;
  175.             arm*) machine=arm-unknown ;;
  176.             sh3el) machine=shl-unknown ;;
  177.             sh3eb) machine=sh-unknown ;;
  178.             sh5el) machine=sh5le-unknown ;;
  179.             *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
  180.         esac
  181.         # The Operating System including object format, if it has switched
  182.         # to ELF recently, or will in the future.
  183.         case "${UNAME_MACHINE_ARCH}" in
  184.             arm*|i386|m68k|ns32k|sh3*|sparc|vax)
  185.                 eval $set_cc_for_build
  186.                 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
  187.                         | grep -q __ELF__
  188.                 then
  189.                     # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
  190.                     # Return netbsd for either.  FIX?
  191.                     os=netbsd
  192.                 else
  193.                     os=netbsdelf
  194.                 fi
  195.                 ;;
  196.             *)
  197.                 os=netbsd
  198.                 ;;
  199.         esac
  200.         # The OS release
  201.         # Debian GNU/NetBSD machines have a different userland, and
  202.         # thus, need a distinct triplet. However, they do not need
  203.         # kernel version information, so it can be replaced with a
  204.         # suitable tag, in the style of linux-gnu.
  205.         case "${UNAME_VERSION}" in
  206.             Debian*)
  207.                 release='-gnu'
  208.                 ;;
  209.             *)
  210.                 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  211.                 ;;
  212.         esac
  213.         # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
  214.         # contains redundant information, the shorter form:
  215.         # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
  216.         echo "${machine}-${os}${release}"
  217.         exit ;;
  218.     *:Bitrig:*:*)
  219.         UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
  220.         echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
  221.         exit ;;
  222.     *:OpenBSD:*:*)
  223.         UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
  224.         echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
  225.         exit ;;
  226.     *:ekkoBSD:*:*)
  227.         echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
  228.         exit ;;
  229.     *:SolidBSD:*:*)
  230.         echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
  231.         exit ;;
  232.     macppc:MirBSD:*:*)
  233.         echo powerpc-unknown-mirbsd${UNAME_RELEASE}
  234.         exit ;;
  235.     *:MirBSD:*:*)
  236.         echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
  237.         exit ;;
  238.     alpha:OSF1:*:*)
  239.         case $UNAME_RELEASE in
  240.         *4.0)
  241.                 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
  242.                 ;;
  243.         *5.*)
  244.                 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
  245.                 ;;
  246.         esac
  247.         # According to Compaq, /usr/sbin/psrinfo has been available on
  248.         # OSF/1 and Tru64 systems produced since 1995.  I hope that
  249.         # covers most systems running today.  This code pipes the CPU
  250.         # types through head -n 1, so we only detect the type of CPU 0.
  251.         ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
  252.         case "$ALPHA_CPU_TYPE" in
  253.             "EV4 (21064)")
  254.                 UNAME_MACHINE="alpha" ;;
  255.             "EV4.5 (21064)")
  256.                 UNAME_MACHINE="alpha" ;;
  257.             "LCA4 (21066/21068)")
  258.                 UNAME_MACHINE="alpha" ;;
  259.             "EV5 (21164)")
  260.                 UNAME_MACHINE="alphaev5" ;;
  261.             "EV5.6 (21164A)")
  262.                 UNAME_MACHINE="alphaev56" ;;
  263.             "EV5.6 (21164PC)")
  264.                 UNAME_MACHINE="alphapca56" ;;
  265.             "EV5.7 (21164PC)")
  266.                 UNAME_MACHINE="alphapca57" ;;
  267.             "EV6 (21264)")
  268.                 UNAME_MACHINE="alphaev6" ;;
  269.             "EV6.7 (21264A)")
  270.                 UNAME_MACHINE="alphaev67" ;;
  271.             "EV6.8CB (21264C)")
  272.                 UNAME_MACHINE="alphaev68" ;;
  273.             "EV6.8AL (21264B)")
  274.                 UNAME_MACHINE="alphaev68" ;;
  275.             "EV6.8CX (21264D)")
  276.                 UNAME_MACHINE="alphaev68" ;;
  277.             "EV6.9A (21264/EV69A)")
  278.                 UNAME_MACHINE="alphaev69" ;;
  279.             "EV7 (21364)")
  280.                 UNAME_MACHINE="alphaev7" ;;
  281.             "EV7.9 (21364A)")
  282.                 UNAME_MACHINE="alphaev79" ;;
  283.         esac
  284.         # A Pn.n version is a patched version.
  285.         # A Vn.n version is a released version.
  286.         # A Tn.n version is a released field test version.
  287.         # A Xn.n version is an unreleased experimental baselevel.
  288.         # 1.2 uses "1.2" for uname -r.
  289.         echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  290.         # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
  291.         exitcode=$?
  292.         trap '' 0
  293.         exit $exitcode ;;
  294.     Alpha\ *:Windows_NT*:*)
  295.         # How do we know it's Interix rather than the generic POSIX subsystem?
  296.         # Should we change UNAME_MACHINE based on the output of uname instead
  297.         # of the specific Alpha model?
  298.         echo alpha-pc-interix
  299.         exit ;;
  300.     21064:Windows_NT:50:3)
  301.         echo alpha-dec-winnt3.5
  302.         exit ;;
  303.     Amiga*:UNIX_System_V:4.0:*)
  304.         echo m68k-unknown-sysv4
  305.         exit ;;
  306.     *:[Aa]miga[Oo][Ss]:*:*)
  307.         echo ${UNAME_MACHINE}-unknown-amigaos
  308.         exit ;;
  309.     *:[Mm]orph[Oo][Ss]:*:*)
  310.         echo ${UNAME_MACHINE}-unknown-morphos
  311.         exit ;;
  312.     *:OS/390:*:*)
  313.         echo i370-ibm-openedition
  314.         exit ;;
  315.     *:z/VM:*:*)
  316.         echo s390-ibm-zvmoe
  317.         exit ;;
  318.     *:OS400:*:*)
  319.         echo powerpc-ibm-os400
  320.         exit ;;
  321.     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
  322.         echo arm-acorn-riscix${UNAME_RELEASE}
  323.         exit ;;
  324.     arm*:riscos:*:*|arm*:RISCOS:*:*)
  325.         echo arm-unknown-riscos
  326.         exit ;;
  327.     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
  328.         echo hppa1.1-hitachi-hiuxmpp
  329.         exit ;;
  330.     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
  331.         # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
  332.         if test "`(/bin/universe) 2>/dev/null`" = att ; then
  333.                 echo pyramid-pyramid-sysv3
  334.         else
  335.                 echo pyramid-pyramid-bsd
  336.         fi
  337.         exit ;;
  338.     NILE*:*:*:dcosx)
  339.         echo pyramid-pyramid-svr4
  340.         exit ;;
  341.     DRS?6000:unix:4.0:6*)
  342.         echo sparc-icl-nx6
  343.         exit ;;
  344.     DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
  345.         case `/usr/bin/uname -p` in
  346.             sparc) echo sparc-icl-nx7; exit ;;
  347.         esac ;;
  348.     s390x:SunOS:*:*)
  349.         echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  350.         exit ;;
  351.     sun4H:SunOS:5.*:*)
  352.         echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  353.         exit ;;
  354.     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
  355.         echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  356.         exit ;;
  357.     i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
  358.         echo i386-pc-auroraux${UNAME_RELEASE}
  359.         exit ;;
  360.     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
  361.         eval $set_cc_for_build
  362.         SUN_ARCH="i386"
  363.         # If there is a compiler, see if it is configured for 64-bit objects.
  364.         # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
  365.         # This test works for both compilers.
  366.         if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
  367.             if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
  368.                 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
  369.                 grep IS_64BIT_ARCH >/dev/null
  370.             then
  371.                 SUN_ARCH="x86_64"
  372.             fi
  373.         fi
  374.         echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  375.         exit ;;
  376.     sun4*:SunOS:6*:*)
  377.         # According to config.sub, this is the proper way to canonicalize
  378.         # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
  379.         # it's likely to be more like Solaris than SunOS4.
  380.         echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  381.         exit ;;
  382.     sun4*:SunOS:*:*)
  383.         case "`/usr/bin/arch -k`" in
  384.             Series*|S4*)
  385.                 UNAME_RELEASE=`uname -v`
  386.                 ;;
  387.         esac
  388.         # Japanese Language versions have a version number like `4.1.3-JL'.
  389.         echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
  390.         exit ;;
  391.     sun3*:SunOS:*:*)
  392.         echo m68k-sun-sunos${UNAME_RELEASE}
  393.         exit ;;
  394.     sun*:*:4.2BSD:*)
  395.         UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
  396.         test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
  397.         case "`/bin/arch`" in
  398.             sun3)
  399.                 echo m68k-sun-sunos${UNAME_RELEASE}
  400.                 ;;
  401.             sun4)
  402.                 echo sparc-sun-sunos${UNAME_RELEASE}
  403.                 ;;
  404.         esac
  405.         exit ;;
  406.     aushp:SunOS:*:*)
  407.         echo sparc-auspex-sunos${UNAME_RELEASE}
  408.         exit ;;
  409.     # The situation for MiNT is a little confusing.  The machine name
  410.     # can be virtually everything (everything which is not
  411.     # "atarist" or "atariste" at least should have a processor
  412.     # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
  413.     # to the lowercase version "mint" (or "freemint").  Finally
  414.     # the system name "TOS" denotes a system which is actually not
  415.     # MiNT.  But MiNT is downward compatible to TOS, so this should
  416.     # be no problem.
  417.     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
  418.         echo m68k-atari-mint${UNAME_RELEASE}
  419.         exit ;;
  420.     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
  421.         echo m68k-atari-mint${UNAME_RELEASE}
  422.         exit ;;
  423.     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
  424.         echo m68k-atari-mint${UNAME_RELEASE}
  425.         exit ;;
  426.     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
  427.         echo m68k-milan-mint${UNAME_RELEASE}
  428.         exit ;;
  429.     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
  430.         echo m68k-hades-mint${UNAME_RELEASE}
  431.         exit ;;
  432.     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
  433.         echo m68k-unknown-mint${UNAME_RELEASE}
  434.         exit ;;
  435.     m68k:machten:*:*)
  436.         echo m68k-apple-machten${UNAME_RELEASE}
  437.         exit ;;
  438.     powerpc:machten:*:*)
  439.         echo powerpc-apple-machten${UNAME_RELEASE}
  440.         exit ;;
  441.     RISC*:Mach:*:*)
  442.         echo mips-dec-mach_bsd4.3
  443.         exit ;;
  444.     RISC*:ULTRIX:*:*)
  445.         echo mips-dec-ultrix${UNAME_RELEASE}
  446.         exit ;;
  447.     VAX*:ULTRIX*:*:*)
  448.         echo vax-dec-ultrix${UNAME_RELEASE}
  449.         exit ;;
  450.     2020:CLIX:*:* | 2430:CLIX:*:*)
  451.         echo clipper-intergraph-clix${UNAME_RELEASE}
  452.         exit ;;
  453.     mips:*:*:UMIPS | mips:*:*:RISCos)
  454.         eval $set_cc_for_build
  455.         sed 's/^        //' << EOF >$dummy.c
  456. #ifdef __cplusplus
  457. #include <stdio.h>  /* for printf() prototype */
  458.         int main (int argc, char *argv[]) {
  459. #else
  460.         int main (argc, argv) int argc; char *argv[]; {
  461. #endif
  462.         #if defined (host_mips) && defined (MIPSEB)
  463.         #if defined (SYSTYPE_SYSV)
  464.           printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
  465.         #endif
  466.         #if defined (SYSTYPE_SVR4)
  467.           printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
  468.         #endif
  469.         #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
  470.           printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
  471.         #endif
  472.         #endif
  473.           exit (-1);
  474.         }
  475. EOF
  476.         $CC_FOR_BUILD -o $dummy $dummy.c &&
  477.           dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
  478.           SYSTEM_NAME=`$dummy $dummyarg` &&
  479.             { echo "$SYSTEM_NAME"; exit; }
  480.         echo mips-mips-riscos${UNAME_RELEASE}
  481.         exit ;;
  482.     Motorola:PowerMAX_OS:*:*)
  483.         echo powerpc-motorola-powermax
  484.         exit ;;
  485.     Motorola:*:4.3:PL8-*)
  486.         echo powerpc-harris-powermax
  487.         exit ;;
  488.     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
  489.         echo powerpc-harris-powermax
  490.         exit ;;
  491.     Night_Hawk:Power_UNIX:*:*)
  492.         echo powerpc-harris-powerunix
  493.         exit ;;
  494.     m88k:CX/UX:7*:*)
  495.         echo m88k-harris-cxux7
  496.         exit ;;
  497.     m88k:*:4*:R4*)
  498.         echo m88k-motorola-sysv4
  499.         exit ;;
  500.     m88k:*:3*:R3*)
  501.         echo m88k-motorola-sysv3
  502.         exit ;;
  503.     AViiON:dgux:*:*)
  504.         # DG/UX returns AViiON for all architectures
  505.         UNAME_PROCESSOR=`/usr/bin/uname -p`
  506.         if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
  507.         then
  508.             if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
  509.                [ ${TARGET_BINARY_INTERFACE}x = x ]
  510.             then
  511.                 echo m88k-dg-dgux${UNAME_RELEASE}
  512.             else
  513.                 echo m88k-dg-dguxbcs${UNAME_RELEASE}
  514.             fi
  515.         else
  516.             echo i586-dg-dgux${UNAME_RELEASE}
  517.         fi
  518.         exit ;;
  519.     M88*:DolphinOS:*:*) # DolphinOS (SVR3)
  520.         echo m88k-dolphin-sysv3
  521.         exit ;;
  522.     M88*:*:R3*:*)
  523.         # Delta 88k system running SVR3
  524.         echo m88k-motorola-sysv3
  525.         exit ;;
  526.     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
  527.         echo m88k-tektronix-sysv3
  528.         exit ;;
  529.     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
  530.         echo m68k-tektronix-bsd
  531.         exit ;;
  532.     *:IRIX*:*:*)
  533.         echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
  534.         exit ;;
  535.     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
  536.         echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
  537.         exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
  538.     i*86:AIX:*:*)
  539.         echo i386-ibm-aix
  540.         exit ;;
  541.     ia64:AIX:*:*)
  542.         if [ -x /usr/bin/oslevel ] ; then
  543.                 IBM_REV=`/usr/bin/oslevel`
  544.         else
  545.                 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  546.         fi
  547.         echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
  548.         exit ;;
  549.     *:AIX:2:3)
  550.         if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
  551.                 eval $set_cc_for_build
  552.                 sed 's/^                //' << EOF >$dummy.c
  553.                 #include <sys/systemcfg.h>
  554.  
  555.                 main()
  556.                         {
  557.                         if (!__power_pc())
  558.                                 exit(1);
  559.                         puts("powerpc-ibm-aix3.2.5");
  560.                         exit(0);
  561.                         }
  562. EOF
  563.                 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
  564.                 then
  565.                         echo "$SYSTEM_NAME"
  566.                 else
  567.                         echo rs6000-ibm-aix3.2.5
  568.                 fi
  569.         elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
  570.                 echo rs6000-ibm-aix3.2.4
  571.         else
  572.                 echo rs6000-ibm-aix3.2
  573.         fi
  574.         exit ;;
  575.     *:AIX:*:[4567])
  576.         IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
  577.         if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
  578.                 IBM_ARCH=rs6000
  579.         else
  580.                 IBM_ARCH=powerpc
  581.         fi
  582.         if [ -x /usr/bin/oslevel ] ; then
  583.                 IBM_REV=`/usr/bin/oslevel`
  584.         else
  585.                 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  586.         fi
  587.         echo ${IBM_ARCH}-ibm-aix${IBM_REV}
  588.         exit ;;
  589.     *:AIX:*:*)
  590.         echo rs6000-ibm-aix
  591.         exit ;;
  592.     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
  593.         echo romp-ibm-bsd4.4
  594.         exit ;;
  595.     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
  596.         echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
  597.         exit ;;                             # report: romp-ibm BSD 4.3
  598.     *:BOSX:*:*)
  599.         echo rs6000-bull-bosx
  600.         exit ;;
  601.     DPX/2?00:B.O.S.:*:*)
  602.         echo m68k-bull-sysv3
  603.         exit ;;
  604.     9000/[34]??:4.3bsd:1.*:*)
  605.         echo m68k-hp-bsd
  606.         exit ;;
  607.     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
  608.         echo m68k-hp-bsd4.4
  609.         exit ;;
  610.     9000/[34678]??:HP-UX:*:*)
  611.         HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  612.         case "${UNAME_MACHINE}" in
  613.             9000/31? )            HP_ARCH=m68000 ;;
  614.             9000/[34]?? )         HP_ARCH=m68k ;;
  615.             9000/[678][0-9][0-9])
  616.                 if [ -x /usr/bin/getconf ]; then
  617.                     sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
  618.                     sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
  619.                     case "${sc_cpu_version}" in
  620.                       523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
  621.                       528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
  622.                       532)                      # CPU_PA_RISC2_0
  623.                         case "${sc_kernel_bits}" in
  624.                           32) HP_ARCH="hppa2.0n" ;;
  625.                           64) HP_ARCH="hppa2.0w" ;;
  626.                           '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
  627.                         esac ;;
  628.                     esac
  629.                 fi
  630.                 if [ "${HP_ARCH}" = "" ]; then
  631.                     eval $set_cc_for_build
  632.                     sed 's/^            //' << EOF >$dummy.c
  633.  
  634.                 #define _HPUX_SOURCE
  635.                 #include <stdlib.h>
  636.                 #include <unistd.h>
  637.  
  638.                 int main ()
  639.                 {
  640.                 #if defined(_SC_KERNEL_BITS)
  641.                     long bits = sysconf(_SC_KERNEL_BITS);
  642.                 #endif
  643.                     long cpu  = sysconf (_SC_CPU_VERSION);
  644.  
  645.                     switch (cpu)
  646.                         {
  647.                         case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
  648.                         case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
  649.                         case CPU_PA_RISC2_0:
  650.                 #if defined(_SC_KERNEL_BITS)
  651.                             switch (bits)
  652.                                 {
  653.                                 case 64: puts ("hppa2.0w"); break;
  654.                                 case 32: puts ("hppa2.0n"); break;
  655.                                 default: puts ("hppa2.0"); break;
  656.                                 } break;
  657.                 #else  /* !defined(_SC_KERNEL_BITS) */
  658.                             puts ("hppa2.0"); break;
  659.                 #endif
  660.                         default: puts ("hppa1.0"); break;
  661.                         }
  662.                     exit (0);
  663.                 }
  664. EOF
  665.                     (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
  666.                     test -z "$HP_ARCH" && HP_ARCH=hppa
  667.                 fi ;;
  668.         esac
  669.         if [ ${HP_ARCH} = "hppa2.0w" ]
  670.         then
  671.             eval $set_cc_for_build
  672.  
  673.             # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
  674.             # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
  675.             # generating 64-bit code.  GNU and HP use different nomenclature:
  676.             #
  677.             # $ CC_FOR_BUILD=cc ./config.guess
  678.             # => hppa2.0w-hp-hpux11.23
  679.             # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
  680.             # => hppa64-hp-hpux11.23
  681.  
  682.             if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
  683.                 grep -q __LP64__
  684.             then
  685.                 HP_ARCH="hppa2.0w"
  686.             else
  687.                 HP_ARCH="hppa64"
  688.             fi
  689.         fi
  690.         echo ${HP_ARCH}-hp-hpux${HPUX_REV}
  691.         exit ;;
  692.     ia64:HP-UX:*:*)
  693.         HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  694.         echo ia64-hp-hpux${HPUX_REV}
  695.         exit ;;
  696.     3050*:HI-UX:*:*)
  697.         eval $set_cc_for_build
  698.         sed 's/^        //' << EOF >$dummy.c
  699.         #include <unistd.h>
  700.         int
  701.         main ()
  702.         {
  703.           long cpu = sysconf (_SC_CPU_VERSION);
  704.           /* The order matters, because CPU_IS_HP_MC68K erroneously returns
  705.              true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
  706.              results, however.  */
  707.           if (CPU_IS_PA_RISC (cpu))
  708.             {
  709.               switch (cpu)
  710.                 {
  711.                   case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
  712.                   case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
  713.                   case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
  714.                   default: puts ("hppa-hitachi-hiuxwe2"); break;
  715.                 }
  716.             }
  717.           else if (CPU_IS_HP_MC68K (cpu))
  718.             puts ("m68k-hitachi-hiuxwe2");
  719.           else puts ("unknown-hitachi-hiuxwe2");
  720.           exit (0);
  721.         }
  722. EOF
  723.         $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
  724.                 { echo "$SYSTEM_NAME"; exit; }
  725.         echo unknown-hitachi-hiuxwe2
  726.         exit ;;
  727.     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
  728.         echo hppa1.1-hp-bsd
  729.         exit ;;
  730.     9000/8??:4.3bsd:*:*)
  731.         echo hppa1.0-hp-bsd
  732.         exit ;;
  733.     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
  734.         echo hppa1.0-hp-mpeix
  735.         exit ;;
  736.     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
  737.         echo hppa1.1-hp-osf
  738.         exit ;;
  739.     hp8??:OSF1:*:*)
  740.         echo hppa1.0-hp-osf
  741.         exit ;;
  742.     i*86:OSF1:*:*)
  743.         if [ -x /usr/sbin/sysversion ] ; then
  744.             echo ${UNAME_MACHINE}-unknown-osf1mk
  745.         else
  746.             echo ${UNAME_MACHINE}-unknown-osf1
  747.         fi
  748.         exit ;;
  749.     parisc*:Lites*:*:*)
  750.         echo hppa1.1-hp-lites
  751.         exit ;;
  752.     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
  753.         echo c1-convex-bsd
  754.         exit ;;
  755.     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
  756.         if getsysinfo -f scalar_acc
  757.         then echo c32-convex-bsd
  758.         else echo c2-convex-bsd
  759.         fi
  760.         exit ;;
  761.     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
  762.         echo c34-convex-bsd
  763.         exit ;;
  764.     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
  765.         echo c38-convex-bsd
  766.         exit ;;
  767.     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
  768.         echo c4-convex-bsd
  769.         exit ;;
  770.     CRAY*Y-MP:*:*:*)
  771.         echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  772.         exit ;;
  773.     CRAY*[A-Z]90:*:*:*)
  774.         echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
  775.         | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
  776.               -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
  777.               -e 's/\.[^.]*$/.X/'
  778.         exit ;;
  779.     CRAY*TS:*:*:*)
  780.         echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  781.         exit ;;
  782.     CRAY*T3E:*:*:*)
  783.         echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  784.         exit ;;
  785.     CRAY*SV1:*:*:*)
  786.         echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  787.         exit ;;
  788.     *:UNICOS/mp:*:*)
  789.         echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  790.         exit ;;
  791.     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
  792.         FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  793.         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
  794.         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
  795.         echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
  796.         exit ;;
  797.     5000:UNIX_System_V:4.*:*)
  798.         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
  799.         FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
  800.         echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
  801.         exit ;;
  802.     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
  803.         echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
  804.         exit ;;
  805.     sparc*:BSD/OS:*:*)
  806.         echo sparc-unknown-bsdi${UNAME_RELEASE}
  807.         exit ;;
  808.     *:BSD/OS:*:*)
  809.         echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
  810.         exit ;;
  811.     *:FreeBSD:*:*)
  812.         UNAME_PROCESSOR=`/usr/bin/uname -p`
  813.         case ${UNAME_PROCESSOR} in
  814.             amd64)
  815.                 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
  816.             *)
  817.                 echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
  818.         esac
  819.         exit ;;
  820.     i*:CYGWIN*:*)
  821.         echo ${UNAME_MACHINE}-pc-cygwin
  822.         exit ;;
  823.     *:MINGW64*:*)
  824.         echo ${UNAME_MACHINE}-pc-mingw64
  825.         exit ;;
  826.     *:MINGW*:*)
  827.         echo ${UNAME_MACHINE}-pc-mingw32
  828.         exit ;;
  829.     i*:MSYS*:*)
  830.         echo ${UNAME_MACHINE}-pc-msys
  831.         exit ;;
  832.     i*:windows32*:*)
  833.         # uname -m includes "-pc" on this system.
  834.         echo ${UNAME_MACHINE}-mingw32
  835.         exit ;;
  836.     i*:PW*:*)
  837.         echo ${UNAME_MACHINE}-pc-pw32
  838.         exit ;;
  839.     *:Interix*:*)
  840.         case ${UNAME_MACHINE} in
  841.             x86)
  842.                 echo i586-pc-interix${UNAME_RELEASE}
  843.                 exit ;;
  844.             authenticamd | genuineintel | EM64T)
  845.                 echo x86_64-unknown-interix${UNAME_RELEASE}
  846.                 exit ;;
  847.             IA64)
  848.                 echo ia64-unknown-interix${UNAME_RELEASE}
  849.                 exit ;;
  850.         esac ;;
  851.     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
  852.         echo i${UNAME_MACHINE}-pc-mks
  853.         exit ;;
  854.     8664:Windows_NT:*)
  855.         echo x86_64-pc-mks
  856.         exit ;;
  857.     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
  858.         # How do we know it's Interix rather than the generic POSIX subsystem?
  859.         # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
  860.         # UNAME_MACHINE based on the output of uname instead of i386?
  861.         echo i586-pc-interix
  862.         exit ;;
  863.     i*:UWIN*:*)
  864.         echo ${UNAME_MACHINE}-pc-uwin
  865.         exit ;;
  866.     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
  867.         echo x86_64-unknown-cygwin
  868.         exit ;;
  869.     p*:CYGWIN*:*)
  870.         echo powerpcle-unknown-cygwin
  871.         exit ;;
  872.     prep*:SunOS:5.*:*)
  873.         echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  874.         exit ;;
  875.     *:GNU:*:*)
  876.         # the GNU system
  877.         echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
  878.         exit ;;
  879.     *:GNU/*:*:*)
  880.         # other systems with GNU libc and userland
  881.         echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
  882.         exit ;;
  883.     i*86:Minix:*:*)
  884.         echo ${UNAME_MACHINE}-pc-minix
  885.         exit ;;
  886.     aarch64:Linux:*:*)
  887.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  888.         exit ;;
  889.     aarch64_be:Linux:*:*)
  890.         UNAME_MACHINE=aarch64_be
  891.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  892.         exit ;;
  893.     alpha:Linux:*:*)
  894.         case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
  895.           EV5)   UNAME_MACHINE=alphaev5 ;;
  896.           EV56)  UNAME_MACHINE=alphaev56 ;;
  897.           PCA56) UNAME_MACHINE=alphapca56 ;;
  898.           PCA57) UNAME_MACHINE=alphapca56 ;;
  899.           EV6)   UNAME_MACHINE=alphaev6 ;;
  900.           EV67)  UNAME_MACHINE=alphaev67 ;;
  901.           EV68*) UNAME_MACHINE=alphaev68 ;;
  902.         esac
  903.         objdump --private-headers /bin/sh | grep -q ld.so.1
  904.         if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
  905.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  906.         exit ;;
  907.     arc:Linux:*:* | arceb:Linux:*:*)
  908.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  909.         exit ;;
  910.     arm*:Linux:*:*)
  911.         eval $set_cc_for_build
  912.         if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
  913.             | grep -q __ARM_EABI__
  914.         then
  915.             echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  916.         else
  917.             if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
  918.                 | grep -q __ARM_PCS_VFP
  919.             then
  920.                 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
  921.             else
  922.                 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
  923.             fi
  924.         fi
  925.         exit ;;
  926.     avr32*:Linux:*:*)
  927.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  928.         exit ;;
  929.     cris:Linux:*:*)
  930.         echo ${UNAME_MACHINE}-axis-linux-${LIBC}
  931.         exit ;;
  932.     crisv32:Linux:*:*)
  933.         echo ${UNAME_MACHINE}-axis-linux-${LIBC}
  934.         exit ;;
  935.     frv:Linux:*:*)
  936.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  937.         exit ;;
  938.     hexagon:Linux:*:*)
  939.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  940.         exit ;;
  941.     i*86:Linux:*:*)
  942.         echo ${UNAME_MACHINE}-pc-linux-${LIBC}
  943.         exit ;;
  944.     ia64:Linux:*:*)
  945.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  946.         exit ;;
  947.     m32r*:Linux:*:*)
  948.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  949.         exit ;;
  950.     m68*:Linux:*:*)
  951.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  952.         exit ;;
  953.     mips:Linux:*:* | mips64:Linux:*:*)
  954.         eval $set_cc_for_build
  955.         sed 's/^        //' << EOF >$dummy.c
  956.         #undef CPU
  957.         #undef ${UNAME_MACHINE}
  958.         #undef ${UNAME_MACHINE}el
  959.         #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
  960.         CPU=${UNAME_MACHINE}el
  961.         #else
  962.         #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
  963.         CPU=${UNAME_MACHINE}
  964.         #else
  965.         CPU=
  966.         #endif
  967.         #endif
  968. EOF
  969.         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
  970.         test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
  971.         ;;
  972.     or1k:Linux:*:*)
  973.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  974.         exit ;;
  975.     or32:Linux:*:*)
  976.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  977.         exit ;;
  978.     padre:Linux:*:*)
  979.         echo sparc-unknown-linux-${LIBC}
  980.         exit ;;
  981.     parisc64:Linux:*:* | hppa64:Linux:*:*)
  982.         echo hppa64-unknown-linux-${LIBC}
  983.         exit ;;
  984.     parisc:Linux:*:* | hppa:Linux:*:*)
  985.         # Look for CPU level
  986.         case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
  987.           PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
  988.           PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
  989.           *)    echo hppa-unknown-linux-${LIBC} ;;
  990.         esac
  991.         exit ;;
  992.     ppc64:Linux:*:*)
  993.         echo powerpc64-unknown-linux-${LIBC}
  994.         exit ;;
  995.     ppc:Linux:*:*)
  996.         echo powerpc-unknown-linux-${LIBC}
  997.         exit ;;
  998.     ppc64le:Linux:*:*)
  999.         echo powerpc64le-unknown-linux-${LIBC}
  1000.         exit ;;
  1001.     ppcle:Linux:*:*)
  1002.         echo powerpcle-unknown-linux-${LIBC}
  1003.         exit ;;
  1004.     s390:Linux:*:* | s390x:Linux:*:*)
  1005.         echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
  1006.         exit ;;
  1007.     sh64*:Linux:*:*)
  1008.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1009.         exit ;;
  1010.     sh*:Linux:*:*)
  1011.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1012.         exit ;;
  1013.     sparc:Linux:*:* | sparc64:Linux:*:*)
  1014.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1015.         exit ;;
  1016.     tile*:Linux:*:*)
  1017.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1018.         exit ;;
  1019.     vax:Linux:*:*)
  1020.         echo ${UNAME_MACHINE}-dec-linux-${LIBC}
  1021.         exit ;;
  1022.     x86_64:Linux:*:*)
  1023.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1024.         exit ;;
  1025.     xtensa*:Linux:*:*)
  1026.         echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  1027.         exit ;;
  1028.     i*86:DYNIX/ptx:4*:*)
  1029.         # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
  1030.         # earlier versions are messed up and put the nodename in both
  1031.         # sysname and nodename.
  1032.         echo i386-sequent-sysv4
  1033.         exit ;;
  1034.     i*86:UNIX_SV:4.2MP:2.*)
  1035.         # Unixware is an offshoot of SVR4, but it has its own version
  1036.         # number series starting with 2...
  1037.         # I am not positive that other SVR4 systems won't match this,
  1038.         # I just have to hope.  -- rms.
  1039.         # Use sysv4.2uw... so that sysv4* matches it.
  1040.         echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
  1041.         exit ;;
  1042.     i*86:OS/2:*:*)
  1043.         # If we were able to find `uname', then EMX Unix compatibility
  1044.         # is probably installed.
  1045.         echo ${UNAME_MACHINE}-pc-os2-emx
  1046.         exit ;;
  1047.     i*86:XTS-300:*:STOP)
  1048.         echo ${UNAME_MACHINE}-unknown-stop
  1049.         exit ;;
  1050.     i*86:atheos:*:*)
  1051.         echo ${UNAME_MACHINE}-unknown-atheos
  1052.         exit ;;
  1053.     i*86:syllable:*:*)
  1054.         echo ${UNAME_MACHINE}-pc-syllable
  1055.         exit ;;
  1056.     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
  1057.         echo i386-unknown-lynxos${UNAME_RELEASE}
  1058.         exit ;;
  1059.     i*86:*DOS:*:*)
  1060.         echo ${UNAME_MACHINE}-pc-msdosdjgpp
  1061.         exit ;;
  1062.     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
  1063.         UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
  1064.         if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
  1065.                 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
  1066.         else
  1067.                 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
  1068.         fi
  1069.         exit ;;
  1070.     i*86:*:5:[678]*)
  1071.         # UnixWare 7.x, OpenUNIX and OpenServer 6.
  1072.         case `/bin/uname -X | grep "^Machine"` in
  1073.             *486*)           UNAME_MACHINE=i486 ;;
  1074.             *Pentium)        UNAME_MACHINE=i586 ;;
  1075.             *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
  1076.         esac
  1077.         echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
  1078.         exit ;;
  1079.     i*86:*:3.2:*)
  1080.         if test -f /usr/options/cb.name; then
  1081.                 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
  1082.                 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
  1083.         elif /bin/uname -X 2>/dev/null >/dev/null ; then
  1084.                 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
  1085.                 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
  1086.                 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
  1087.                         && UNAME_MACHINE=i586
  1088.                 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
  1089.                         && UNAME_MACHINE=i686
  1090.                 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
  1091.                         && UNAME_MACHINE=i686
  1092.                 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
  1093.         else
  1094.                 echo ${UNAME_MACHINE}-pc-sysv32
  1095.         fi
  1096.         exit ;;
  1097.     pc:*:*:*)
  1098.         # Left here for compatibility:
  1099.         # uname -m prints for DJGPP always 'pc', but it prints nothing about
  1100.         # the processor, so we play safe by assuming i586.
  1101.         # Note: whatever this is, it MUST be the same as what config.sub
  1102.         # prints for the "djgpp" host, or else GDB configury will decide that
  1103.         # this is a cross-build.
  1104.         echo i586-pc-msdosdjgpp
  1105.         exit ;;
  1106.     Intel:Mach:3*:*)
  1107.         echo i386-pc-mach3
  1108.         exit ;;
  1109.     paragon:*:*:*)
  1110.         echo i860-intel-osf1
  1111.         exit ;;
  1112.     i860:*:4.*:*) # i860-SVR4
  1113.         if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
  1114.           echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
  1115.         else # Add other i860-SVR4 vendors below as they are discovered.
  1116.           echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
  1117.         fi
  1118.         exit ;;
  1119.     mini*:CTIX:SYS*5:*)
  1120.         # "miniframe"
  1121.         echo m68010-convergent-sysv
  1122.         exit ;;
  1123.     mc68k:UNIX:SYSTEM5:3.51m)
  1124.         echo m68k-convergent-sysv
  1125.         exit ;;
  1126.     M680?0:D-NIX:5.3:*)
  1127.         echo m68k-diab-dnix
  1128.         exit ;;
  1129.     M68*:*:R3V[5678]*:*)
  1130.         test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
  1131.     3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
  1132.         OS_REL=''
  1133.         test -r /etc/.relid \
  1134.         && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  1135.         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1136.           && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
  1137.         /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  1138.           && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
  1139.     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
  1140.         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1141.           && { echo i486-ncr-sysv4; exit; } ;;
  1142.     NCR*:*:4.2:* | MPRAS*:*:4.2:*)
  1143.         OS_REL='.3'
  1144.         test -r /etc/.relid \
  1145.             && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  1146.         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1147.             && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
  1148.         /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  1149.             && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
  1150.         /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
  1151.             && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
  1152.     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
  1153.         echo m68k-unknown-lynxos${UNAME_RELEASE}
  1154.         exit ;;
  1155.     mc68030:UNIX_System_V:4.*:*)
  1156.         echo m68k-atari-sysv4
  1157.         exit ;;
  1158.     TSUNAMI:LynxOS:2.*:*)
  1159.         echo sparc-unknown-lynxos${UNAME_RELEASE}
  1160.         exit ;;
  1161.     rs6000:LynxOS:2.*:*)
  1162.         echo rs6000-unknown-lynxos${UNAME_RELEASE}
  1163.         exit ;;
  1164.     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
  1165.         echo powerpc-unknown-lynxos${UNAME_RELEASE}
  1166.         exit ;;
  1167.     SM[BE]S:UNIX_SV:*:*)
  1168.         echo mips-dde-sysv${UNAME_RELEASE}
  1169.         exit ;;
  1170.     RM*:ReliantUNIX-*:*:*)
  1171.         echo mips-sni-sysv4
  1172.         exit ;;
  1173.     RM*:SINIX-*:*:*)
  1174.         echo mips-sni-sysv4
  1175.         exit ;;
  1176.     *:SINIX-*:*:*)
  1177.         if uname -p 2>/dev/null >/dev/null ; then
  1178.                 UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1179.                 echo ${UNAME_MACHINE}-sni-sysv4
  1180.         else
  1181.                 echo ns32k-sni-sysv
  1182.         fi
  1183.         exit ;;
  1184.     PENTIUM:*:4.0*:*)   # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
  1185.                         # says <Richard.M.Bartel@ccMail.Census.GOV>
  1186.         echo i586-unisys-sysv4
  1187.         exit ;;
  1188.     *:UNIX_System_V:4*:FTX*)
  1189.         # From Gerald Hewes <hewes@openmarket.com>.
  1190.         # How about differentiating between stratus architectures? -djm
  1191.         echo hppa1.1-stratus-sysv4
  1192.         exit ;;
  1193.     *:*:*:FTX*)
  1194.         # From seanf@swdc.stratus.com.
  1195.         echo i860-stratus-sysv4
  1196.         exit ;;
  1197.     i*86:VOS:*:*)
  1198.         # From Paul.Green@stratus.com.
  1199.         echo ${UNAME_MACHINE}-stratus-vos
  1200.         exit ;;
  1201.     *:VOS:*:*)
  1202.         # From Paul.Green@stratus.com.
  1203.         echo hppa1.1-stratus-vos
  1204.         exit ;;
  1205.     mc68*:A/UX:*:*)
  1206.         echo m68k-apple-aux${UNAME_RELEASE}
  1207.         exit ;;
  1208.     news*:NEWS-OS:6*:*)
  1209.         echo mips-sony-newsos6
  1210.         exit ;;
  1211.     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
  1212.         if [ -d /usr/nec ]; then
  1213.                 echo mips-nec-sysv${UNAME_RELEASE}
  1214.         else
  1215.                 echo mips-unknown-sysv${UNAME_RELEASE}
  1216.         fi
  1217.         exit ;;
  1218.     BeBox:BeOS:*:*)     # BeOS running on hardware made by Be, PPC only.
  1219.         echo powerpc-be-beos
  1220.         exit ;;
  1221.     BeMac:BeOS:*:*)     # BeOS running on Mac or Mac clone, PPC only.
  1222.         echo powerpc-apple-beos
  1223.         exit ;;
  1224.     BePC:BeOS:*:*)      # BeOS running on Intel PC compatible.
  1225.         echo i586-pc-beos
  1226.         exit ;;
  1227.     BePC:Haiku:*:*)     # Haiku running on Intel PC compatible.
  1228.         echo i586-pc-haiku
  1229.         exit ;;
  1230.     x86_64:Haiku:*:*)
  1231.         echo x86_64-unknown-haiku
  1232.         exit ;;
  1233.     SX-4:SUPER-UX:*:*)
  1234.         echo sx4-nec-superux${UNAME_RELEASE}
  1235.         exit ;;
  1236.     SX-5:SUPER-UX:*:*)
  1237.         echo sx5-nec-superux${UNAME_RELEASE}
  1238.         exit ;;
  1239.     SX-6:SUPER-UX:*:*)
  1240.         echo sx6-nec-superux${UNAME_RELEASE}
  1241.         exit ;;
  1242.     SX-7:SUPER-UX:*:*)
  1243.         echo sx7-nec-superux${UNAME_RELEASE}
  1244.         exit ;;
  1245.     SX-8:SUPER-UX:*:*)
  1246.         echo sx8-nec-superux${UNAME_RELEASE}
  1247.         exit ;;
  1248.     SX-8R:SUPER-UX:*:*)
  1249.         echo sx8r-nec-superux${UNAME_RELEASE}
  1250.         exit ;;
  1251.     Power*:Rhapsody:*:*)
  1252.         echo powerpc-apple-rhapsody${UNAME_RELEASE}
  1253.         exit ;;
  1254.     *:Rhapsody:*:*)
  1255.         echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
  1256.         exit ;;
  1257.     *:Darwin:*:*)
  1258.         UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
  1259.         eval $set_cc_for_build
  1260.         if test "$UNAME_PROCESSOR" = unknown ; then
  1261.             UNAME_PROCESSOR=powerpc
  1262.         fi
  1263.         if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
  1264.             if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
  1265.                 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
  1266.                 grep IS_64BIT_ARCH >/dev/null
  1267.             then
  1268.                 case $UNAME_PROCESSOR in
  1269.                     i386) UNAME_PROCESSOR=x86_64 ;;
  1270.                     powerpc) UNAME_PROCESSOR=powerpc64 ;;
  1271.                 esac
  1272.             fi
  1273.         fi
  1274.         echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
  1275.         exit ;;
  1276.     *:procnto*:*:* | *:QNX:[0123456789]*:*)
  1277.         UNAME_PROCESSOR=`uname -p`
  1278.         if test "$UNAME_PROCESSOR" = "x86"; then
  1279.                 UNAME_PROCESSOR=i386
  1280.                 UNAME_MACHINE=pc
  1281.         fi
  1282.         echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
  1283.         exit ;;
  1284.     *:QNX:*:4*)
  1285.         echo i386-pc-qnx
  1286.         exit ;;
  1287.     NEO-?:NONSTOP_KERNEL:*:*)
  1288.         echo neo-tandem-nsk${UNAME_RELEASE}
  1289.         exit ;;
  1290.     NSE-*:NONSTOP_KERNEL:*:*)
  1291.         echo nse-tandem-nsk${UNAME_RELEASE}
  1292.         exit ;;
  1293.     NSR-?:NONSTOP_KERNEL:*:*)
  1294.         echo nsr-tandem-nsk${UNAME_RELEASE}
  1295.         exit ;;
  1296.     *:NonStop-UX:*:*)
  1297.         echo mips-compaq-nonstopux
  1298.         exit ;;
  1299.     BS2000:POSIX*:*:*)
  1300.         echo bs2000-siemens-sysv
  1301.         exit ;;
  1302.     DS/*:UNIX_System_V:*:*)
  1303.         echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
  1304.         exit ;;
  1305.     *:Plan9:*:*)
  1306.         # "uname -m" is not consistent, so use $cputype instead. 386
  1307.         # is converted to i386 for consistency with other x86
  1308.         # operating systems.
  1309.         if test "$cputype" = "386"; then
  1310.             UNAME_MACHINE=i386
  1311.         else
  1312.             UNAME_MACHINE="$cputype"
  1313.         fi
  1314.         echo ${UNAME_MACHINE}-unknown-plan9
  1315.         exit ;;
  1316.     *:TOPS-10:*:*)
  1317.         echo pdp10-unknown-tops10
  1318.         exit ;;
  1319.     *:TENEX:*:*)
  1320.         echo pdp10-unknown-tenex
  1321.         exit ;;
  1322.     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
  1323.         echo pdp10-dec-tops20
  1324.         exit ;;
  1325.     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
  1326.         echo pdp10-xkl-tops20
  1327.         exit ;;
  1328.     *:TOPS-20:*:*)
  1329.         echo pdp10-unknown-tops20
  1330.         exit ;;
  1331.     *:ITS:*:*)
  1332.         echo pdp10-unknown-its
  1333.         exit ;;
  1334.     SEI:*:*:SEIUX)
  1335.         echo mips-sei-seiux${UNAME_RELEASE}
  1336.         exit ;;
  1337.     *:DragonFly:*:*)
  1338.         echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
  1339.         exit ;;
  1340.     *:*VMS:*:*)
  1341.         UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1342.         case "${UNAME_MACHINE}" in
  1343.             A*) echo alpha-dec-vms ; exit ;;
  1344.             I*) echo ia64-dec-vms ; exit ;;
  1345.             V*) echo vax-dec-vms ; exit ;;
  1346.         esac ;;
  1347.     *:XENIX:*:SysV)
  1348.         echo i386-pc-xenix
  1349.         exit ;;
  1350.     i*86:skyos:*:*)
  1351.         echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
  1352.         exit ;;
  1353.     i*86:rdos:*:*)
  1354.         echo ${UNAME_MACHINE}-pc-rdos
  1355.         exit ;;
  1356.     i*86:AROS:*:*)
  1357.         echo ${UNAME_MACHINE}-pc-aros
  1358.         exit ;;
  1359.     x86_64:VMkernel:*:*)
  1360.         echo ${UNAME_MACHINE}-unknown-esx
  1361.         exit ;;
  1362. esac
  1363.  
  1364. eval $set_cc_for_build
  1365. cat >$dummy.c <<EOF
  1366. #ifdef _SEQUENT_
  1367. # include <sys/types.h>
  1368. # include <sys/utsname.h>
  1369. #endif
  1370. main ()
  1371. {
  1372. #if defined (sony)
  1373. #if defined (MIPSEB)
  1374.   /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
  1375.      I don't know....  */
  1376.   printf ("mips-sony-bsd\n"); exit (0);
  1377. #else
  1378. #include <sys/param.h>
  1379.   printf ("m68k-sony-newsos%s\n",
  1380. #ifdef NEWSOS4
  1381.         "4"
  1382. #else
  1383.         ""
  1384. #endif
  1385.         ); exit (0);
  1386. #endif
  1387. #endif
  1388.  
  1389. #if defined (__arm) && defined (__acorn) && defined (__unix)
  1390.   printf ("arm-acorn-riscix\n"); exit (0);
  1391. #endif
  1392.  
  1393. #if defined (hp300) && !defined (hpux)
  1394.   printf ("m68k-hp-bsd\n"); exit (0);
  1395. #endif
  1396.  
  1397. #if defined (NeXT)
  1398. #if !defined (__ARCHITECTURE__)
  1399. #define __ARCHITECTURE__ "m68k"
  1400. #endif
  1401.   int version;
  1402.   version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
  1403.   if (version < 4)
  1404.     printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
  1405.   else
  1406.     printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
  1407.   exit (0);
  1408. #endif
  1409.  
  1410. #if defined (MULTIMAX) || defined (n16)
  1411. #if defined (UMAXV)
  1412.   printf ("ns32k-encore-sysv\n"); exit (0);
  1413. #else
  1414. #if defined (CMU)
  1415.   printf ("ns32k-encore-mach\n"); exit (0);
  1416. #else
  1417.   printf ("ns32k-encore-bsd\n"); exit (0);
  1418. #endif
  1419. #endif
  1420. #endif
  1421.  
  1422. #if defined (__386BSD__)
  1423.   printf ("i386-pc-bsd\n"); exit (0);
  1424. #endif
  1425.  
  1426. #if defined (sequent)
  1427. #if defined (i386)
  1428.   printf ("i386-sequent-dynix\n"); exit (0);
  1429. #endif
  1430. #if defined (ns32000)
  1431.   printf ("ns32k-sequent-dynix\n"); exit (0);
  1432. #endif
  1433. #endif
  1434.  
  1435. #if defined (_SEQUENT_)
  1436.     struct utsname un;
  1437.  
  1438.     uname(&un);
  1439.  
  1440.     if (strncmp(un.version, "V2", 2) == 0) {
  1441.         printf ("i386-sequent-ptx2\n"); exit (0);
  1442.     }
  1443.     if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
  1444.         printf ("i386-sequent-ptx1\n"); exit (0);
  1445.     }
  1446.     printf ("i386-sequent-ptx\n"); exit (0);
  1447.  
  1448. #endif
  1449.  
  1450. #if defined (vax)
  1451. # if !defined (ultrix)
  1452. #  include <sys/param.h>
  1453. #  if defined (BSD)
  1454. #   if BSD == 43
  1455.       printf ("vax-dec-bsd4.3\n"); exit (0);
  1456. #   else
  1457. #    if BSD == 199006
  1458.       printf ("vax-dec-bsd4.3reno\n"); exit (0);
  1459. #    else
  1460.       printf ("vax-dec-bsd\n"); exit (0);
  1461. #    endif
  1462. #   endif
  1463. #  else
  1464.     printf ("vax-dec-bsd\n"); exit (0);
  1465. #  endif
  1466. # else
  1467.     printf ("vax-dec-ultrix\n"); exit (0);
  1468. # endif
  1469. #endif
  1470.  
  1471. #if defined (alliant) && defined (i860)
  1472.   printf ("i860-alliant-bsd\n"); exit (0);
  1473. #endif
  1474.  
  1475.   exit (1);
  1476. }
  1477. EOF
  1478.  
  1479. $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
  1480.         { echo "$SYSTEM_NAME"; exit; }
  1481.  
  1482. # Apollos put the system type in the environment.
  1483.  
  1484. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
  1485.  
  1486. # Convex versions that predate uname can use getsysinfo(1)
  1487.  
  1488. if [ -x /usr/convex/getsysinfo ]
  1489. then
  1490.     case `getsysinfo -f cpu_type` in
  1491.     c1*)
  1492.         echo c1-convex-bsd
  1493.         exit ;;
  1494.     c2*)
  1495.         if getsysinfo -f scalar_acc
  1496.         then echo c32-convex-bsd
  1497.         else echo c2-convex-bsd
  1498.         fi
  1499.         exit ;;
  1500.     c34*)
  1501.         echo c34-convex-bsd
  1502.         exit ;;
  1503.     c38*)
  1504.         echo c38-convex-bsd
  1505.         exit ;;
  1506.     c4*)
  1507.         echo c4-convex-bsd
  1508.         exit ;;
  1509.     esac
  1510. fi
  1511.  
  1512. cat >&2 <<EOF
  1513. $0: unable to guess system type
  1514.  
  1515. This script, last modified $timestamp, has failed to recognize
  1516. the operating system you are using. It is advised that you
  1517. download the most up to date version of the config scripts from
  1518.  
  1519.   http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
  1520. and
  1521.   http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
  1522.  
  1523. If the version you run ($0) is already up to date, please
  1524. send the following data and any information you think might be
  1525. pertinent to <config-patches@gnu.org> in order to provide the needed
  1526. information to handle your system.
  1527.  
  1528. config.guess timestamp = $timestamp
  1529.  
  1530. uname -m = `(uname -m) 2>/dev/null || echo unknown`
  1531. uname -r = `(uname -r) 2>/dev/null || echo unknown`
  1532. uname -s = `(uname -s) 2>/dev/null || echo unknown`
  1533. uname -v = `(uname -v) 2>/dev/null || echo unknown`
  1534.  
  1535. /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
  1536. /bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
  1537.  
  1538. hostinfo               = `(hostinfo) 2>/dev/null`
  1539. /bin/universe          = `(/bin/universe) 2>/dev/null`
  1540. /usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
  1541. /bin/arch              = `(/bin/arch) 2>/dev/null`
  1542. /usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
  1543. /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
  1544.  
  1545. UNAME_MACHINE = ${UNAME_MACHINE}
  1546. UNAME_RELEASE = ${UNAME_RELEASE}
  1547. UNAME_SYSTEM  = ${UNAME_SYSTEM}
  1548. UNAME_VERSION = ${UNAME_VERSION}
  1549. EOF
  1550.  
  1551. exit 1
  1552.  
  1553. # Local variables:
  1554. # eval: (add-hook 'write-file-hooks 'time-stamp)
  1555. # time-stamp-start: "timestamp='"
  1556. # time-stamp-format: "%:y-%02m-%02d"
  1557. # time-stamp-end: "'"
  1558. # End:
  1559.