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