root/tags/gdal_1_2_3/config.guess

Revision 5755, 41.9 kB (checked in by dron, 5 years ago)

Updated to the latest upstream.

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
Line 
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
6 timestamp='2004-01-05'
7
8 # This file is free software; you can redistribute it and/or modify it
9 # under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2 of the License, or
11 # (at your option) any later version.
12 #
13 # This program is distributed in the hope that it will be useful, but
14 # WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 # General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 #
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
26
27 # Originally written by Per Bothner <per@bothner.com>.
28 # Please send patches to <config-patches@gnu.org>.  Submit a context
29 # diff and a properly formatted ChangeLog entry.
30 #
31 # This script attempts to guess a canonical system name similar to
32 # config.sub.  If it succeeds, it prints the system name on stdout, and
33 # exits with 0.  Otherwise, it exits with 1.
34 #
35 # The plan is that this can be called by configure scripts if you
36 # don't specify an explicit build system type.
37
38 me=`echo "$0" | sed -e 's,.*/,,'`
39
40 usage="\
41 Usage: $0 [OPTION]
42
43 Output the configuration name of the system \`$me' is run on.
44
45 Operation modes:
46   -h, --help         print this help, then exit
47   -t, --time-stamp   print date of last modification, then exit
48   -v, --version      print version number, then exit
49
50 Report bugs and patches to <config-patches@gnu.org>."
51
52 version="\
53 GNU config.guess ($timestamp)
54
55 Originally written by Per Bothner.
56 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
57 Free Software Foundation, Inc.
58
59 This is free software; see the source for copying conditions.  There is NO
60 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
61
62 help="
63 Try \`$me --help' for more information."
64
65 # Parse command line
66 while test $# -gt 0 ; do
67   case $1 in
68     --time-stamp | --time* | -t )
69        echo "$timestamp" ; exit 0 ;;
70     --version | -v )
71        echo "$version" ; exit 0 ;;
72     --help | --h* | -h )
73        echo "$usage"; exit 0 ;;
74     -- )     # Stop option processing
75        shift; break ;;
76     - ) # Use stdin as input.
77        break ;;
78     -* )
79        echo "$me: invalid option $1$help" >&2
80        exit 1 ;;
81     * )
82        break ;;
83   esac
84 done
85
86 if test $# != 0; then
87   echo "$me: too many arguments$help" >&2
88   exit 1
89 fi
90
91 trap 'exit 1' 1 2 15
92
93 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
94 # compiler to aid in system detection is discouraged as it requires
95 # temporary files to be created and, as you can see below, it is a
96 # headache to deal with in a portable fashion.
97
98 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
99 # use `HOST_CC' if defined, but it is deprecated.
100
101 # Portable tmp directory creation inspired by the Autoconf team.
102
103 set_cc_for_build='
104 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
105 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
106 : ${TMPDIR=/tmp} ;
107  { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
108  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
109  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
110  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
111 dummy=$tmp/dummy ;
112 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
113 case $CC_FOR_BUILD,$HOST_CC,$CC in
114  ,,)    echo "int x;" > $dummy.c ;
115         for c in cc gcc c89 c99 ; do
116           if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
117              CC_FOR_BUILD="$c"; break ;
118           fi ;
119         done ;
120         if test x"$CC_FOR_BUILD" = x ; then
121           CC_FOR_BUILD=no_compiler_found ;
122         fi
123         ;;
124  ,,*)   CC_FOR_BUILD=$CC ;;
125  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
126 esac ;'
127
128 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
129 # (ghazi@noc.rutgers.edu 1994-08-24)
130 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
131         PATH=$PATH:/.attbin ; export PATH
132 fi
133
134 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
135 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
136 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
137 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
138
139 # Note: order is significant - the case branches are not exclusive.
140
141 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
142     *:NetBSD:*:*)
143         # NetBSD (nbsd) targets should (where applicable) match one or
144         # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
145         # *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
146         # switched to ELF, *-*-netbsd* would select the old
147         # object file format.  This provides both forward
148         # compatibility and a consistent mechanism for selecting the
149         # object file format.
150         #
151         # Note: NetBSD doesn't particularly care about the vendor
152         # portion of the name.  We always set it to "unknown".
153         sysctl="sysctl -n hw.machine_arch"
154         UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
155             /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
156         case "${UNAME_MACHINE_ARCH}" in
157             armeb) machine=armeb-unknown ;;
158             arm*) machine=arm-unknown ;;
159             sh3el) machine=shl-unknown ;;
160             sh3eb) machine=sh-unknown ;;
161             *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
162         esac
163         # The Operating System including object format, if it has switched
164         # to ELF recently, or will in the future.
165         case "${UNAME_MACHINE_ARCH}" in
166             arm*|i386|m68k|ns32k|sh3*|sparc|vax)
167                 eval $set_cc_for_build
168                 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
169                         | grep __ELF__ >/dev/null
170                 then
171                     # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
172                     # Return netbsd for either.  FIX?
173                     os=netbsd
174                 else
175                     os=netbsdelf
176                 fi
177                 ;;
178             *)
179                 os=netbsd
180                 ;;
181         esac
182         # The OS release
183         # Debian GNU/NetBSD machines have a different userland, and
184         # thus, need a distinct triplet. However, they do not need
185         # kernel version information, so it can be replaced with a
186         # suitable tag, in the style of linux-gnu.
187         case "${UNAME_VERSION}" in
188             Debian*)
189                 release='-gnu'
190                 ;;
191             *)
192                 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
193                 ;;
194         esac
195         # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
196         # contains redundant information, the shorter form:
197         # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
198         echo "${machine}-${os}${release}"
199         exit 0 ;;
200     amiga:OpenBSD:*:*)
201         echo m68k-unknown-openbsd${UNAME_RELEASE}
202         exit 0 ;;
203     arc:OpenBSD:*:*)
204         echo mipsel-unknown-openbsd${UNAME_RELEASE}
205         exit 0 ;;
206     hp300:OpenBSD:*:*)
207         echo m68k-unknown-openbsd${UNAME_RELEASE}
208         exit 0 ;;
209     mac68k:OpenBSD:*:*)
210         echo m68k-unknown-openbsd${UNAME_RELEASE}
211         exit 0 ;;
212     macppc:OpenBSD:*:*)
213         echo powerpc-unknown-openbsd${UNAME_RELEASE}
214         exit 0 ;;
215     mvme68k:OpenBSD:*:*)
216         echo m68k-unknown-openbsd${UNAME_RELEASE}
217         exit 0 ;;
218     mvme88k:OpenBSD:*:*)
219         echo m88k-unknown-openbsd${UNAME_RELEASE}
220         exit 0 ;;
221     mvmeppc:OpenBSD:*:*)
222         echo powerpc-unknown-openbsd${UNAME_RELEASE}
223         exit 0 ;;
224     pegasos:OpenBSD:*:*)
225         echo powerpc-unknown-openbsd${UNAME_RELEASE}
226         exit 0 ;;
227     pmax:OpenBSD:*:*)
228         echo mipsel-unknown-openbsd${UNAME_RELEASE}
229         exit 0 ;;
230     sgi:OpenBSD:*:*)
231         echo mipseb-unknown-openbsd${UNAME_RELEASE}
232         exit 0 ;;
233     sun3:OpenBSD:*:*)
234         echo m68k-unknown-openbsd${UNAME_RELEASE}
235         exit 0 ;;
236     wgrisc:OpenBSD:*:*)
237         echo mipsel-unknown-openbsd${UNAME_RELEASE}
238         exit 0 ;;
239     *:OpenBSD:*:*)
240         echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
241         exit 0 ;;
242     alpha:OSF1:*:*)
243         if test $UNAME_RELEASE = "V4.0"; then
244                 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
245         fi
246         # According to Compaq, /usr/sbin/psrinfo has been available on
247         # OSF/1 and Tru64 systems produced since 1995.  I hope that
248         # covers most systems running today.  This code pipes the CPU
249         # types through head -n 1, so we only detect the type of CPU 0.
250         ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
251         case "$ALPHA_CPU_TYPE" in
252             "EV4 (21064)")
253                 UNAME_MACHINE="alpha" ;;
254             "EV4.5 (21064)")
255                 UNAME_MACHINE="alpha" ;;
256             "LCA4 (21066/21068)")
257                 UNAME_MACHINE="alpha" ;;
258             "EV5 (21164)")
259                 UNAME_MACHINE="alphaev5" ;;
260             "EV5.6 (21164A)")
261                 UNAME_MACHINE="alphaev56" ;;
262             "EV5.6 (21164PC)")
263                 UNAME_MACHINE="alphapca56" ;;
264             "EV5.7 (21164PC)")
265                 UNAME_MACHINE="alphapca57" ;;
266             "EV6 (21264)")
267                 UNAME_MACHINE="alphaev6" ;;
268             "EV6.7 (21264A)")
269                 UNAME_MACHINE="alphaev67" ;;
270             "EV6.8CB (21264C)")
271                 UNAME_MACHINE="alphaev68" ;;
272             "EV6.8AL (21264B)")
273                 UNAME_MACHINE="alphaev68" ;;
274             "EV6.8CX (21264D)")
275                 UNAME_MACHINE="alphaev68" ;;
276             "EV6.9A (21264/EV69A)")
277                 UNAME_MACHINE="alphaev69" ;;
278             "EV7 (21364)")
279                 UNAME_MACHINE="alphaev7" ;;
280             "EV7.9 (21364A)")
281                 UNAME_MACHINE="alphaev79" ;;
282         esac
283         # A Vn.n version is a released version.
284         # A Tn.n version is a released field test version.
285         # A Xn.n version is an unreleased experimental baselevel.
286         # 1.2 uses "1.2" for uname -r.
287         echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
288         exit 0 ;;
289     Alpha*:OpenVMS:*:*)
290         echo alpha-hp-vms
291         exit 0 ;;
292     Alpha\ *:Windows_NT*:*)
293         # How do we know it's Interix rather than the generic POSIX subsystem?
294         # Should we change UNAME_MACHINE based on the output of uname instead
295         # of the specific Alpha model?
296         echo alpha-pc-interix
297         exit 0 ;;
298     21064:Windows_NT:50:3)
299         echo alpha-dec-winnt3.5
300         exit 0 ;;
301     Amiga*:UNIX_System_V:4.0:*)
302         echo m68k-unknown-sysv4
303         exit 0;;
304     *:[Aa]miga[Oo][Ss]:*:*)
305         echo ${UNAME_MACHINE}-unknown-amigaos
306         exit 0 ;;
307     *:[Mm]orph[Oo][Ss]:*:*)
308         echo ${UNAME_MACHINE}-unknown-morphos
309         exit 0 ;;
310     *:OS/390:*:*)
311         echo i370-ibm-openedition
312         exit 0 ;;
313     *:OS400:*:*)
314         echo powerpc-ibm-os400
315         exit 0 ;;
316     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
317         echo arm-acorn-riscix${UNAME_RELEASE}
318         exit 0;;
319     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
320         echo hppa1.1-hitachi-hiuxmpp
321         exit 0;;
322     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
323         # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
324         if test "`(/bin/universe) 2>/dev/null`" = att ; then
325                 echo pyramid-pyramid-sysv3
326         else
327                 echo pyramid-pyramid-bsd
328         fi
329         exit 0 ;;
330     NILE*:*:*:dcosx)
331         echo pyramid-pyramid-svr4
332         exit 0 ;;
333     DRS?6000:unix:4.0:6*)
334         echo sparc-icl-nx6
335         exit 0 ;;
336     DRS?6000:UNIX_SV:4.2*:7*)
337         case `/usr/bin/uname -p` in
338             sparc) echo sparc-icl-nx7 && exit 0 ;;
339         esac ;;
340     sun4H:SunOS:5.*:*)
341         echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
342         exit 0 ;;
343     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
344         echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
345         exit 0 ;;
346     i86pc:SunOS:5.*:*)
347         echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
348         exit 0 ;;
349     sun4*:SunOS:6*:*)
350         # According to config.sub, this is the proper way to canonicalize
351         # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
352         # it's likely to be more like Solaris than SunOS4.
353         echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
354         exit 0 ;;
355     sun4*:SunOS:*:*)
356         case "`/usr/bin/arch -k`" in
357             Series*|S4*)
358                 UNAME_RELEASE=`uname -v`
359                 ;;
360         esac
361         # Japanese Language versions have a version number like `4.1.3-JL'.
362         echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
363         exit 0 ;;
364     sun3*:SunOS:*:*)
365         echo m68k-sun-sunos${UNAME_RELEASE}
366         exit 0 ;;
367     sun*:*:4.2BSD:*)
368         UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
369         test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
370         case "`/bin/arch`" in
371             sun3)
372                 echo m68k-sun-sunos${UNAME_RELEASE}
373                 ;;
374             sun4)
375                 echo sparc-sun-sunos${UNAME_RELEASE}
376                 ;;
377         esac
378         exit 0 ;;
379     aushp:SunOS:*:*)
380         echo sparc-auspex-sunos${UNAME_RELEASE}
381         exit 0 ;;
382     # The situation for MiNT is a little confusing.  The machine name
383     # can be virtually everything (everything which is not
384     # "atarist" or "atariste" at least should have a processor
385     # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
386     # to the lowercase version "mint" (or "freemint").  Finally
387     # the system name "TOS" denotes a system which is actually not
388     # MiNT.  But MiNT is downward compatible to TOS, so this should
389     # be no problem.
390     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
391         echo m68k-atari-mint${UNAME_RELEASE}
392         exit 0 ;;
393     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
394         echo m68k-atari-mint${UNAME_RELEASE}
395         exit 0 ;;
396     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
397         echo m68k-atari-mint${UNAME_RELEASE}
398         exit 0 ;;
399     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
400         echo m68k-milan-mint${UNAME_RELEASE}
401         exit 0 ;;
402     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
403         echo m68k-hades-mint${UNAME_RELEASE}
404         exit 0 ;;
405     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
406         echo m68k-unknown-mint${UNAME_RELEASE}
407         exit 0 ;;
408     powerpc:machten:*:*)
409         echo powerpc-apple-machten${UNAME_RELEASE}
410         exit 0 ;;
411     RISC*:Mach:*:*)
412         echo mips-dec-mach_bsd4.3
413         exit 0 ;;
414     RISC*:ULTRIX:*:*)
415         echo mips-dec-ultrix${UNAME_RELEASE}
416         exit 0 ;;
417     VAX*:ULTRIX*:*:*)
418         echo vax-dec-ultrix${UNAME_RELEASE}
419         exit 0 ;;
420     2020:CLIX:*:* | 2430:CLIX:*:*)
421         echo clipper-intergraph-clix${UNAME_RELEASE}
422         exit 0 ;;
423     mips:*:*:UMIPS | mips:*:*:RISCos)
424         eval $set_cc_for_build
425         sed 's/^        //' << EOF >$dummy.c
426 #ifdef __cplusplus
427 #include <stdio.h>  /* for printf() prototype */
428         int main (int argc, char *argv[]) {
429 #else
430         int main (argc, argv) int argc; char *argv[]; {
431 #endif
432         #if defined (host_mips) && defined (MIPSEB)
433         #if defined (SYSTYPE_SYSV)
434           printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
435         #endif
436         #if defined (SYSTYPE_SVR4)
437           printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
438         #endif
439         #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
440           printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
441         #endif
442         #endif
443           exit (-1);
444         }
445 EOF
446         $CC_FOR_BUILD -o $dummy $dummy.c \
447           && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
448           && exit 0
449         echo mips-mips-riscos${UNAME_RELEASE}
450         exit 0 ;;
451     Motorola:PowerMAX_OS:*:*)
452         echo powerpc-motorola-powermax
453         exit 0 ;;
454     Motorola:*:4.3:PL8-*)
455         echo powerpc-harris-powermax
456         exit 0 ;;
457     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
458         echo powerpc-harris-powermax
459         exit 0 ;;
460     Night_Hawk:Power_UNIX:*:*)
461         echo powerpc-harris-powerunix
462         exit 0 ;;
463     m88k:CX/UX:7*:*)
464         echo m88k-harris-cxux7
465         exit 0 ;;
466     m88k:*:4*:R4*)
467         echo m88k-motorola-sysv4
468         exit 0 ;;
469     m88k:*:3*:R3*)
470         echo m88k-motorola-sysv3
471         exit 0 ;;
472     AViiON:dgux:*:*)
473         # DG/UX returns AViiON for all architectures
474         UNAME_PROCESSOR=`/usr/bin/uname -p`
475         if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
476         then
477             if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
478                [ ${TARGET_BINARY_INTERFACE}x = x ]
479             then
480                 echo m88k-dg-dgux${UNAME_RELEASE}
481             else
482                 echo m88k-dg-dguxbcs${UNAME_RELEASE}
483             fi
484         else
485             echo i586-dg-dgux${UNAME_RELEASE}
486         fi
487         exit 0 ;;
488     M88*:DolphinOS:*:*) # DolphinOS (SVR3)
489         echo m88k-dolphin-sysv3
490         exit 0 ;;
491     M88*:*:R3*:*)
492         # Delta 88k system running SVR3
493         echo m88k-motorola-sysv3
494         exit 0 ;;
495     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
496         echo m88k-tektronix-sysv3
497         exit 0 ;;
498     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
499         echo m68k-tektronix-bsd
500         exit 0 ;;
501     *:IRIX*:*:*)
502         echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
503         exit 0 ;;
504     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
505         echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
506         exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
507     i*86:AIX:*:*)
508         echo i386-ibm-aix
509         exit 0 ;;
510     ia64:AIX:*:*)
511         if [ -x /usr/bin/oslevel ] ; then
512                 IBM_REV=`/usr/bin/oslevel`
513         else
514                 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
515         fi
516         echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
517         exit 0 ;;
518     *:AIX:2:3)
519         if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
520                 eval $set_cc_for_build
521                 sed 's/^                //' << EOF >$dummy.c
522                 #include <sys/systemcfg.h>
523
524                 main()
525                         {
526                         if (!__power_pc())
527                                 exit(1);
528                         puts("powerpc-ibm-aix3.2.5");
529                         exit(0);
530                         }
531 EOF
532                 $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
533                 echo rs6000-ibm-aix3.2.5
534         elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
535                 echo rs6000-ibm-aix3.2.4
536         else
537                 echo rs6000-ibm-aix3.2
538         fi
539         exit 0 ;;
540     *:AIX:*:[45])
541         IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
542         if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
543                 IBM_ARCH=rs6000
544         else
545                 IBM_ARCH=powerpc
546         fi
547         if [ -x /usr/bin/oslevel ] ; then
548                 IBM_REV=`/usr/bin/oslevel`
549         else
550                 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
551         fi
552         echo ${IBM_ARCH}-ibm-aix${IBM_REV}
553         exit 0 ;;
554     *:AIX:*:*)
555         echo rs6000-ibm-aix
556         exit 0 ;;
557     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
558         echo romp-ibm-bsd4.4
559         exit 0 ;;
560     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
561         echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
562         exit 0 ;;                           # report: romp-ibm BSD 4.3
563     *:BOSX:*:*)
564         echo rs6000-bull-bosx
565         exit 0 ;;
566     DPX/2?00:B.O.S.:*:*)
567         echo m68k-bull-sysv3
568         exit 0 ;;
569     9000/[34]??:4.3bsd:1.*:*)
570         echo m68k-hp-bsd
571         exit 0 ;;
572     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
573         echo m68k-hp-bsd4.4
574         exit 0 ;;
575     9000/[34678]??:HP-UX:*:*)
576         HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
577         case "${UNAME_MACHINE}" in
578             9000/31? )            HP_ARCH=m68000 ;;
579             9000/[34]?? )         HP_ARCH=m68k ;;
580             9000/[678][0-9][0-9])
581                 if [ -x /usr/bin/getconf ]; then
582                     sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
583                     sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
584                     case "${sc_cpu_version}" in
585                       523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
586                       528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
587                       532)                      # CPU_PA_RISC2_0
588                         case "${sc_kernel_bits}" in
589                           32) HP_ARCH="hppa2.0n" ;;
590                           64) HP_ARCH="hppa2.0w" ;;
591                           '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
592                         esac ;;
593                     esac
594                 fi
595                 if [ "${HP_ARCH}" = "" ]; then
596                     eval $set_cc_for_build
597                     sed 's/^              //' << EOF >$dummy.c
598
599               #define _HPUX_SOURCE
600               #include <stdlib.h>
601               #include <unistd.h>
602
603               int main ()
604               {
605               #if defined(_SC_KERNEL_BITS)
606                   long bits = sysconf(_SC_KERNEL_BITS);
607               #endif
608                   long cpu  = sysconf (_SC_CPU_VERSION);
609
610                   switch (cpu)
611                 {
612                 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
613                 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
614                 case CPU_PA_RISC2_0:
615               #if defined(_SC_KERNEL_BITS)
616                     switch (bits)
617                         {
618                         case 64: puts ("hppa2.0w"); break;
619                         case 32: puts ("hppa2.0n"); break;
620                         default: puts ("hppa2.0"); break;
621                         } break;
622               #else  /* !defined(_SC_KERNEL_BITS) */
623                     puts ("hppa2.0"); break;
624               #endif
625                 default: puts ("hppa1.0"); break;
626                 }
627                   exit (0);
628               }
629 EOF
630                     (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
631                     test -z "$HP_ARCH" && HP_ARCH=hppa
632                 fi ;;
633         esac
634         if [ ${HP_ARCH} = "hppa2.0w" ]
635         then
636             # avoid double evaluation of $set_cc_for_build
637             test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
638             if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
639             then
640                 HP_ARCH="hppa2.0w"
641             else
642                 HP_ARCH="hppa64"
643             fi
644         fi
645         echo ${HP_ARCH}-hp-hpux${HPUX_REV}
646         exit 0 ;;
647     ia64:HP-UX:*:*)
648         HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
649         echo ia64-hp-hpux${HPUX_REV}
650         exit 0 ;;
651     3050*:HI-UX:*:*)
652         eval $set_cc_for_build
653         sed 's/^        //' << EOF >$dummy.c
654         #include <unistd.h>
655         int
656         main ()
657         {
658           long cpu = sysconf (_SC_CPU_VERSION);
659           /* The order matters, because CPU_IS_HP_MC68K erroneously returns
660              true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
661              results, however.  */
662           if (CPU_IS_PA_RISC (cpu))
663             {
664               switch (cpu)
665                 {
666                   case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
667                   case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
668                   case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
669                   default: puts ("hppa-hitachi-hiuxwe2"); break;
670                 }
671             }
672           else if (CPU_IS_HP_MC68K (cpu))
673             puts ("m68k-hitachi-hiuxwe2");
674           else puts ("unknown-hitachi-hiuxwe2");
675           exit (0);
676         }
677 EOF
678         $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
679         echo unknown-hitachi-hiuxwe2
680         exit 0 ;;
681     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
682         echo hppa1.1-hp-bsd
683         exit 0 ;;
684     9000/8??:4.3bsd:*:*)
685         echo hppa1.0-hp-bsd
686         exit 0 ;;
687     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
688         echo hppa1.0-hp-mpeix
689         exit 0 ;;
690     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
691         echo hppa1.1-hp-osf
692         exit 0 ;;
693     hp8??:OSF1:*:*)
694         echo hppa1.0-hp-osf
695         exit 0 ;;
696     i*86:OSF1:*:*)
697         if [ -x /usr/sbin/sysversion ] ; then
698             echo ${UNAME_MACHINE}-unknown-osf1mk
699         else
700             echo ${UNAME_MACHINE}-unknown-osf1
701         fi
702         exit 0 ;;
703     parisc*:Lites*:*:*)
704         echo hppa1.1-hp-lites
705         exit 0 ;;
706     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
707         echo c1-convex-bsd
708         exit 0 ;;
709     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
710         if getsysinfo -f scalar_acc
711         then echo c32-convex-bsd
712         else echo c2-convex-bsd
713         fi
714         exit 0 ;;
715     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
716         echo c34-convex-bsd
717         exit 0 ;;
718     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
719         echo c38-convex-bsd
720         exit 0 ;;
721     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
722         echo c4-convex-bsd
723         exit 0 ;;
724     CRAY*Y-MP:*:*:*)
725         echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
726         exit 0 ;;
727     CRAY*[A-Z]90:*:*:*)
728         echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
729         | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
730               -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
731               -e 's/\.[^.]*$/.X/'
732         exit 0 ;;
733     CRAY*TS:*:*:*)
734         echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
735         exit 0 ;;
736     CRAY*T3E:*:*:*)
737         echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
738         exit 0 ;;
739     CRAY*SV1:*:*:*)
740         echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
741         exit 0 ;;
742     *:UNICOS/mp:*:*)
743         echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
744         exit 0 ;;
745     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
746         FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
747         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
748         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
749         echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
750         exit 0 ;;
751     5000:UNIX_System_V:4.*:*)
752         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
753         FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
754         echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
755         exit 0 ;;
756     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
757         echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
758         exit 0 ;;
759     sparc*:BSD/OS:*:*)
760         echo sparc-unknown-bsdi${UNAME_RELEASE}
761         exit 0 ;;
762     *:BSD/OS:*:*)
763         echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
764         exit 0 ;;
765     *:FreeBSD:*:*)
766         # Determine whether the default compiler uses glibc.
767         eval $set_cc_for_build
768         sed 's/^        //' << EOF >$dummy.c
769         #include <features.h>
770         #if __GLIBC__ >= 2
771         LIBC=gnu
772         #else
773         LIBC=
774         #endif
775 EOF
776         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
777         # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
778         # FreeBSD's kernel, but not the complete OS.
779         case ${LIBC} in gnu) kernel_only='k' ;; esac
780         echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
781         exit 0 ;;
782     i*:CYGWIN*:*)
783         echo ${UNAME_MACHINE}-pc-cygwin
784         exit 0 ;;
785     i*:MINGW*:*)
786         echo ${UNAME_MACHINE}-pc-mingw32
787         exit 0 ;;
788     i*:PW*:*)
789         echo ${UNAME_MACHINE}-pc-pw32
790         exit 0 ;;
791     x86:Interix*:[34]*)
792         echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
793         exit 0 ;;
794     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
795         echo i${UNAME_MACHINE}-pc-mks
796         exit 0 ;;
797     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
798         # How do we know it's Interix rather than the generic POSIX subsystem?
799         # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
800         # UNAME_MACHINE based on the output of uname instead of i386?
801         echo i586-pc-interix
802         exit 0 ;;
803     i*:UWIN*:*)
804         echo ${UNAME_MACHINE}-pc-uwin
805         exit 0 ;;
806     p*:CYGWIN*:*)
807         echo powerpcle-unknown-cygwin
808         exit 0 ;;
809     prep*:SunOS:5.*:*)
810         echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
811         exit 0 ;;
812     *:GNU:*:*)
813         # the GNU system
814         echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
815         exit 0 ;;
816     *:GNU/*:*:*)
817         # other systems with GNU libc and userland
818         echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
819         exit 0 ;;
820     i*86:Minix:*:*)
821         echo ${UNAME_MACHINE}-pc-minix
822         exit 0 ;;
823     arm*:Linux:*:*)
824         echo ${UNAME_MACHINE}-unknown-linux-gnu
825         exit 0 ;;
826     cris:Linux:*:*)
827         echo cris-axis-linux-gnu
828         exit 0 ;;
829     ia64:Linux:*:*)
830         echo ${UNAME_MACHINE}-unknown-linux-gnu
831         exit 0 ;;
832     m68*:Linux:*:*)
833         echo ${UNAME_MACHINE}-unknown-linux-gnu
834         exit 0 ;;
835     mips:Linux:*:*)
836         eval $set_cc_for_build
837         sed 's/^        //' << EOF >$dummy.c
838         #undef CPU
839         #undef mips
840         #undef mipsel
841         #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
842         CPU=mipsel
843         #else
844         #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
845         CPU=mips
846         #else
847         CPU=
848         #endif
849         #endif
850 EOF
851         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
852         test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
853         ;;
854     mips64:Linux:*:*)
855         eval $set_cc_for_build
856         sed 's/^        //' << EOF >$dummy.c
857         #undef CPU
858         #undef mips64
859         #undef mips64el
860         #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
861         CPU=mips64el
862         #else
863         #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
864         CPU=mips64
865         #else
866         CPU=
867         #endif
868         #endif
869 EOF
870         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
871         test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
872         ;;
873     ppc:Linux:*:*)
874         echo powerpc-unknown-linux-gnu
875         exit 0 ;;
876     ppc64:Linux:*:*)
877         echo powerpc64-unknown-linux-gnu
878         exit 0 ;;
879     alpha:Linux:*:*)
880         case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
881           EV5)   UNAME_MACHINE=alphaev5 ;;
882           EV56)  UNAME_MACHINE=alphaev56 ;;
883           PCA56) UNAME_MACHINE=alphapca56 ;;
884           PCA57) UNAME_MACHINE=alphapca56 ;;
885           EV6)   UNAME_MACHINE=alphaev6 ;;
886           EV67)  UNAME_MACHINE=alphaev67 ;;
887           EV68*) UNAME_MACHINE=alphaev68 ;;
888         esac
889         objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
890         if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
891         echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
892         exit 0 ;;
893     parisc:Linux:*:* | hppa:Linux:*:*)
894         # Look for CPU level
895         case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
896           PA7*) echo hppa1.1-unknown-linux-gnu ;;
897           PA8*) echo hppa2.0-unknown-linux-gnu ;;
898           *)    echo hppa-unknown-linux-gnu ;;
899         esac
900         exit 0 ;;
901     parisc64:Linux:*:* | hppa64:Linux:*:*)
902         echo hppa64-unknown-linux-gnu
903         exit 0 ;;
904     s390:Linux:*:* | s390x:Linux:*:*)
905         echo ${UNAME_MACHINE}-ibm-linux
906         exit 0 ;;
907     sh64*:Linux:*:*)
908         echo ${UNAME_MACHINE}-unknown-linux-gnu
909         exit 0 ;;
910     sh*:Linux:*:*)
911         echo ${UNAME_MACHINE}-unknown-linux-gnu
912         exit 0 ;;
913     sparc:Linux:*:* | sparc64:Linux:*:*)
914         echo ${UNAME_MACHINE}-unknown-linux-gnu
915         exit 0 ;;
916     x86_64:Linux:*:*)
917         echo x86_64-unknown-linux-gnu
918         exit 0 ;;
919     i*86:Linux:*:*)
920         # The BFD linker knows what the default object file format is, so
921         # first see if it will tell us. cd to the root directory to prevent
922         # problems with other programs or directories called `ld' in the path.
923         # Set LC_ALL=C to ensure ld outputs messages in English.
924         ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
925                          | sed -ne '/supported targets:/!d
926                                     s/[         ][      ]*/ /g
927                                     s/.*supported targets: *//
928                                     s/ .*//
929                                     p'`
930         case "$ld_supported_targets" in
931           elf32-i386)
932                 TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
933                 ;;
934           a.out-i386-linux)
935                 echo "${UNAME_MACHINE}-pc-linux-gnuaout"
936                 exit 0 ;;
937           coff-i386)
938                 echo "${UNAME_MACHINE}-pc-linux-gnucoff"
939                 exit 0 ;;
940           "")
941                 # Either a pre-BFD a.out linker (linux-gnuoldld) or
942                 # one that does not give us useful --help.
943                 echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
944                 exit 0 ;;
945         esac
946         # Determine whether the default compiler is a.out or elf
947         eval $set_cc_for_build
948         sed 's/^        //' << EOF >$dummy.c
949         #include <features.h>
950         #ifdef __ELF__
951         # ifdef __GLIBC__
952         #  if __GLIBC__ >= 2
953         LIBC=gnu
954         #  else
955         LIBC=gnulibc1
956         #  endif
957         # else
958         LIBC=gnulibc1
959         # endif
960         #else
961         #ifdef __INTEL_COMPILER
962         LIBC=gnu
963         #else
964         LIBC=gnuaout
965         #endif
966         #endif
967         #ifdef __dietlibc__
968         LIBC=dietlibc
969         #endif
970 EOF
971         eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
972         test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
973         test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
974         ;;
975     i*86:DYNIX/ptx:4*:*)
976         # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
977         # earlier versions are messed up and put the nodename in both
978         # sysname and nodename.
979         echo i386-sequent-sysv4
980         exit 0 ;;
981     i*86:UNIX_SV:4.2MP:2.*)
982         # Unixware is an offshoot of SVR4, but it has its own version
983         # number series starting with 2...
984         # I am not positive that other SVR4 systems won't match this,
985         # I just have to hope.  -- rms.
986         # Use sysv4.2uw... so that sysv4* matches it.
987         echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
988         exit 0 ;;
989     i*86:OS/2:*:*)
990         # If we were able to find `uname', then EMX Unix compatibility
991         # is probably installed.
992         echo ${UNAME_MACHINE}-pc-os2-emx
993         exit 0 ;;
994     i*86:XTS-300:*:STOP)
995         echo ${UNAME_MACHINE}-unknown-stop
996         exit 0 ;;
997     i*86:atheos:*:*)
998         echo ${UNAME_MACHINE}-unknown-atheos
999         exit 0 ;;
1000         i*86:syllable:*:*)
1001         echo ${UNAME_MACHINE}-pc-syllable
1002         exit 0 ;;
1003     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1004         echo i386-unknown-lynxos${UNAME_RELEASE}
1005         exit 0 ;;
1006     i*86:*DOS:*:*)
1007         echo ${UNAME_MACHINE}-pc-msdosdjgpp
1008         exit 0 ;;
1009     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1010         UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1011         if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1012                 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1013         else
1014                 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1015         fi
1016         exit 0 ;;
1017     i*86:*:5:[78]*)
1018         case `/bin/uname -X | grep "^Machine"` in
1019             *486*)           UNAME_MACHINE=i486 ;;
1020             *Pentium)        UNAME_MACHINE=i586 ;;
1021             *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1022         esac
1023         echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1024         exit 0 ;;
1025     i*86:*:3.2:*)
1026         if test -f /usr/options/cb.name; then
1027                 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1028                 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1029         elif /bin/uname -X 2>/dev/null >/dev/null ; then
1030                 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1031                 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1032                 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1033                         && UNAME_MACHINE=i586
1034                 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1035                         && UNAME_MACHINE=i686
1036                 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1037                         && UNAME_MACHINE=i686
1038                 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1039         else
1040                 echo ${UNAME_MACHINE}-pc-sysv32
1041         fi
1042         exit 0 ;;
1043     pc:*:*:*)
1044         # Left here for compatibility:
1045         # uname -m prints for DJGPP always 'pc', but it prints nothing about
1046         # the processor, so we play safe by assuming i386.
1047         echo i386-pc-msdosdjgpp
1048         exit 0 ;;
1049     Intel:Mach:3*:*)
1050         echo i386-pc-mach3
1051         exit 0 ;;
1052     paragon:*:*:*)
1053         echo i860-intel-osf1
1054         exit 0 ;;