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