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