comparison config.guess @ 0:13389e613d67 trunk

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