ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-3.0/ac-tools/config.guess
Revision: 2753
Committed: Tue May 16 20:38:23 2006 UTC (18 years, 4 months ago) by gezelter
File size: 42081 byte(s)
Log Message:
Autoconf fixes for FFTW.  Multiple FFTW version support.

File Contents

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

Properties

Name Value
svn:executable *