config.guess
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:42k
源码类别:

多媒体编程

开发平台:

Visual C++

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