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