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