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