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