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