ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/Unix/config.guess
Revision: 1.4
Committed: 2003-06-27T13:59:16Z (21 years ago) by cebix
Branch: MAIN
CVS Tags: nigel-build-19, nigel-build-16, nigel-build-17, nigel-build-15, HEAD
Changes since 1.3: +329 -291 lines
Log Message:
updated autoconf auxiliary files

File Contents

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