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