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