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