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