Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: build-aux/config.guess

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

Powered by Google App Engine
This is Rietveld 408576698