OSDN Git Service

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