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