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