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