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