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