/[GiNaC]/config.guess
ViewVC logotype

Annotation of /config.guess

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.18 - (hide annotations)
Thu Aug 16 20:20:02 2001 UTC (12 years, 8 months ago) by kreckel
Branch: MAIN
CVS Tags: release_0-9-3
Changes since 1.17: +11 -4 lines
- config.{guess,sub} updated from FSF.
- NEWS: finalization.

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

Christian Bauer">Christian Bauer
ViewVC Help
Powered by ViewVC 1.1.17