Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

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