config.guess
上传用户:quxuerui
上传日期:2018-01-08
资源大小:41811k
文件大小:42k
源码类别:

网格计算

开发平台:

Java

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