171eb93eaSdrh#! /bin/sh 271eb93eaSdrh# Attempt to guess a canonical system name. 3*9cc867d0Sdan# Copyright 1992-2019 Free Software Foundation, Inc. 471eb93eaSdrh 5*9cc867d0Sdantimestamp='2019-05-28' 671eb93eaSdrh 771eb93eaSdrh# This file is free software; you can redistribute it and/or modify it 871eb93eaSdrh# under the terms of the GNU General Public License as published by 9*9cc867d0Sdan# the Free Software Foundation; either version 3 of the License, or 1071eb93eaSdrh# (at your option) any later version. 1171eb93eaSdrh# 1271eb93eaSdrh# This program is distributed in the hope that it will be useful, but 1371eb93eaSdrh# WITHOUT ANY WARRANTY; without even the implied warranty of 1471eb93eaSdrh# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1571eb93eaSdrh# General Public License for more details. 1671eb93eaSdrh# 1771eb93eaSdrh# You should have received a copy of the GNU General Public License 18*9cc867d0Sdan# along with this program; if not, see <https://www.gnu.org/licenses/>. 1971eb93eaSdrh# 2071eb93eaSdrh# As a special exception to the GNU General Public License, if you 2171eb93eaSdrh# distribute this file as part of a program that contains a 2271eb93eaSdrh# configuration script generated by Autoconf, you may include it under 23*9cc867d0Sdan# the same distribution terms that you use for the rest of that 24*9cc867d0Sdan# program. This Exception is an additional permission under section 7 25*9cc867d0Sdan# of the GNU General Public License, version 3 ("GPLv3"). 2671eb93eaSdrh# 27*9cc867d0Sdan# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. 2871eb93eaSdrh# 29*9cc867d0Sdan# You can get the latest version of this script from: 30*9cc867d0Sdan# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 31*9cc867d0Sdan# 32*9cc867d0Sdan# Please send patches to <[email protected]>. 33*9cc867d0Sdan 3471eb93eaSdrh 3571eb93eaSdrhme=`echo "$0" | sed -e 's,.*/,,'` 3671eb93eaSdrh 3771eb93eaSdrhusage="\ 3871eb93eaSdrhUsage: $0 [OPTION] 3971eb93eaSdrh 4071eb93eaSdrhOutput the configuration name of the system \`$me' is run on. 4171eb93eaSdrh 42*9cc867d0SdanOptions: 4371eb93eaSdrh -h, --help print this help, then exit 4471eb93eaSdrh -t, --time-stamp print date of last modification, then exit 4571eb93eaSdrh -v, --version print version number, then exit 4671eb93eaSdrh 4771eb93eaSdrhReport bugs and patches to <[email protected]>." 4871eb93eaSdrh 4971eb93eaSdrhversion="\ 5071eb93eaSdrhGNU config.guess ($timestamp) 5171eb93eaSdrh 5271eb93eaSdrhOriginally written by Per Bothner. 53*9cc867d0SdanCopyright 1992-2019 Free Software Foundation, Inc. 5471eb93eaSdrh 5571eb93eaSdrhThis is free software; see the source for copying conditions. There is NO 5671eb93eaSdrhwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 5771eb93eaSdrh 5871eb93eaSdrhhelp=" 5971eb93eaSdrhTry \`$me --help' for more information." 6071eb93eaSdrh 6171eb93eaSdrh# Parse command line 6271eb93eaSdrhwhile test $# -gt 0 ; do 6371eb93eaSdrh case $1 in 6471eb93eaSdrh --time-stamp | --time* | -t ) 657f19c02fSvapier echo "$timestamp" ; exit ;; 6671eb93eaSdrh --version | -v ) 677f19c02fSvapier echo "$version" ; exit ;; 6871eb93eaSdrh --help | --h* | -h ) 697f19c02fSvapier echo "$usage"; exit ;; 7071eb93eaSdrh -- ) # Stop option processing 7171eb93eaSdrh shift; break ;; 7271eb93eaSdrh - ) # Use stdin as input. 7371eb93eaSdrh break ;; 7471eb93eaSdrh -* ) 7571eb93eaSdrh echo "$me: invalid option $1$help" >&2 7671eb93eaSdrh exit 1 ;; 7771eb93eaSdrh * ) 7871eb93eaSdrh break ;; 7971eb93eaSdrh esac 8071eb93eaSdrhdone 8171eb93eaSdrh 8271eb93eaSdrhif test $# != 0; then 8371eb93eaSdrh echo "$me: too many arguments$help" >&2 8471eb93eaSdrh exit 1 8571eb93eaSdrhfi 8671eb93eaSdrh 8762507b65Sa.rottmann# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 8862507b65Sa.rottmann# compiler to aid in system detection is discouraged as it requires 8962507b65Sa.rottmann# temporary files to be created and, as you can see below, it is a 9062507b65Sa.rottmann# headache to deal with in a portable fashion. 9171eb93eaSdrh 9271eb93eaSdrh# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 9371eb93eaSdrh# use `HOST_CC' if defined, but it is deprecated. 9471eb93eaSdrh 9562507b65Sa.rottmann# Portable tmp directory creation inspired by the Autoconf team. 9662507b65Sa.rottmann 97*9cc867d0Sdantmp= 98*9cc867d0Sdan# shellcheck disable=SC2172 99*9cc867d0Sdantrap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 100*9cc867d0Sdan 101*9cc867d0Sdanset_cc_for_build() { 102*9cc867d0Sdan : "${TMPDIR=/tmp}" 103*9cc867d0Sdan # shellcheck disable=SC2039 1047f19c02fSvapier { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 105*9cc867d0Sdan { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || 106*9cc867d0Sdan { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || 107*9cc867d0Sdan { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } 108*9cc867d0Sdan dummy=$tmp/dummy 109*9cc867d0Sdan case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in 110*9cc867d0Sdan ,,) echo "int x;" > "$dummy.c" 111*9cc867d0Sdan for driver in cc gcc c89 c99 ; do 112*9cc867d0Sdan if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then 113*9cc867d0Sdan CC_FOR_BUILD="$driver" 114*9cc867d0Sdan break 115*9cc867d0Sdan fi 116*9cc867d0Sdan done 11771eb93eaSdrh if test x"$CC_FOR_BUILD" = x ; then 118*9cc867d0Sdan CC_FOR_BUILD=no_compiler_found 11971eb93eaSdrh fi 12071eb93eaSdrh ;; 12171eb93eaSdrh ,,*) CC_FOR_BUILD=$CC ;; 12271eb93eaSdrh ,*,*) CC_FOR_BUILD=$HOST_CC ;; 123*9cc867d0Sdan esac 124*9cc867d0Sdan} 12571eb93eaSdrh 12671eb93eaSdrh# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 12771eb93eaSdrh# ([email protected] 1994-08-24) 128*9cc867d0Sdanif test -f /.attbin/uname ; then 12971eb93eaSdrh PATH=$PATH:/.attbin ; export PATH 13071eb93eaSdrhfi 13171eb93eaSdrh 13271eb93eaSdrhUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13371eb93eaSdrhUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 13471eb93eaSdrhUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 13571eb93eaSdrhUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 13671eb93eaSdrh 137*9cc867d0Sdancase "$UNAME_SYSTEM" in 138*9cc867d0SdanLinux|GNU|GNU/*) 139*9cc867d0Sdan # If the system lacks a compiler, then just pick glibc. 140*9cc867d0Sdan # We could probably try harder. 141*9cc867d0Sdan LIBC=gnu 142*9cc867d0Sdan 143*9cc867d0Sdan set_cc_for_build 144*9cc867d0Sdan cat <<-EOF > "$dummy.c" 1457f19c02fSvapier #include <features.h> 146*9cc867d0Sdan #if defined(__UCLIBC__) 1477f19c02fSvapier LIBC=uclibc 148*9cc867d0Sdan #elif defined(__dietlibc__) 149*9cc867d0Sdan LIBC=dietlibc 1507f19c02fSvapier #else 1517f19c02fSvapier LIBC=gnu 1527f19c02fSvapier #endif 1537f19c02fSvapier EOF 154*9cc867d0Sdan eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" 155*9cc867d0Sdan 156*9cc867d0Sdan # If ldd exists, use it to detect musl libc. 157*9cc867d0Sdan if command -v ldd >/dev/null && \ 158*9cc867d0Sdan ldd --version 2>&1 | grep -q ^musl 159*9cc867d0Sdan then 160*9cc867d0Sdan LIBC=musl 1617f19c02fSvapier fi 162*9cc867d0Sdan ;; 163*9cc867d0Sdanesac 1647f19c02fSvapier 16571eb93eaSdrh# Note: order is significant - the case branches are not exclusive. 16671eb93eaSdrh 167*9cc867d0Sdancase "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in 16871eb93eaSdrh *:NetBSD:*:*) 16962507b65Sa.rottmann # NetBSD (nbsd) targets should (where applicable) match one or 170*9cc867d0Sdan # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 17171eb93eaSdrh # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 17271eb93eaSdrh # switched to ELF, *-*-netbsd* would select the old 17371eb93eaSdrh # object file format. This provides both forward 17471eb93eaSdrh # compatibility and a consistent mechanism for selecting the 17571eb93eaSdrh # object file format. 17662507b65Sa.rottmann # 17762507b65Sa.rottmann # Note: NetBSD doesn't particularly care about the vendor 17862507b65Sa.rottmann # portion of the name. We always set it to "unknown". 17962507b65Sa.rottmann sysctl="sysctl -n hw.machine_arch" 180*9cc867d0Sdan UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ 181*9cc867d0Sdan "/sbin/$sysctl" 2>/dev/null || \ 182*9cc867d0Sdan "/usr/sbin/$sysctl" 2>/dev/null || \ 183*9cc867d0Sdan echo unknown)` 184*9cc867d0Sdan case "$UNAME_MACHINE_ARCH" in 18562507b65Sa.rottmann armeb) machine=armeb-unknown ;; 18662507b65Sa.rottmann arm*) machine=arm-unknown ;; 18762507b65Sa.rottmann sh3el) machine=shl-unknown ;; 18862507b65Sa.rottmann sh3eb) machine=sh-unknown ;; 1897f19c02fSvapier sh5el) machine=sh5le-unknown ;; 190*9cc867d0Sdan earmv*) 191*9cc867d0Sdan arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` 192*9cc867d0Sdan endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` 193*9cc867d0Sdan machine="${arch}${endian}"-unknown 194*9cc867d0Sdan ;; 195*9cc867d0Sdan *) machine="$UNAME_MACHINE_ARCH"-unknown ;; 19671eb93eaSdrh esac 19771eb93eaSdrh # The Operating System including object format, if it has switched 198*9cc867d0Sdan # to ELF recently (or will in the future) and ABI. 199*9cc867d0Sdan case "$UNAME_MACHINE_ARCH" in 200*9cc867d0Sdan earm*) 201*9cc867d0Sdan os=netbsdelf 202*9cc867d0Sdan ;; 20362507b65Sa.rottmann arm*|i386|m68k|ns32k|sh3*|sparc|vax) 204*9cc867d0Sdan set_cc_for_build 20571eb93eaSdrh if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 206*9cc867d0Sdan | grep -q __ELF__ 20771eb93eaSdrh then 20871eb93eaSdrh # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 20971eb93eaSdrh # Return netbsd for either. FIX? 21071eb93eaSdrh os=netbsd 21171eb93eaSdrh else 21271eb93eaSdrh os=netbsdelf 21371eb93eaSdrh fi 21471eb93eaSdrh ;; 21571eb93eaSdrh *) 21671eb93eaSdrh os=netbsd 21771eb93eaSdrh ;; 21871eb93eaSdrh esac 219*9cc867d0Sdan # Determine ABI tags. 220*9cc867d0Sdan case "$UNAME_MACHINE_ARCH" in 221*9cc867d0Sdan earm*) 222*9cc867d0Sdan expr='s/^earmv[0-9]/-eabi/;s/eb$//' 223*9cc867d0Sdan abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` 224*9cc867d0Sdan ;; 225*9cc867d0Sdan esac 22671eb93eaSdrh # The OS release 22762507b65Sa.rottmann # Debian GNU/NetBSD machines have a different userland, and 22862507b65Sa.rottmann # thus, need a distinct triplet. However, they do not need 22962507b65Sa.rottmann # kernel version information, so it can be replaced with a 23062507b65Sa.rottmann # suitable tag, in the style of linux-gnu. 231*9cc867d0Sdan case "$UNAME_VERSION" in 23262507b65Sa.rottmann Debian*) 23362507b65Sa.rottmann release='-gnu' 23462507b65Sa.rottmann ;; 23562507b65Sa.rottmann *) 236*9cc867d0Sdan release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` 23762507b65Sa.rottmann ;; 23862507b65Sa.rottmann esac 23971eb93eaSdrh # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 24071eb93eaSdrh # contains redundant information, the shorter form: 24171eb93eaSdrh # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 242*9cc867d0Sdan echo "$machine-${os}${release}${abi-}" 243*9cc867d0Sdan exit ;; 244*9cc867d0Sdan *:Bitrig:*:*) 245*9cc867d0Sdan UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 246*9cc867d0Sdan echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" 2477f19c02fSvapier exit ;; 24862507b65Sa.rottmann *:OpenBSD:*:*) 2497f19c02fSvapier UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 250*9cc867d0Sdan echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" 251*9cc867d0Sdan exit ;; 252*9cc867d0Sdan *:LibertyBSD:*:*) 253*9cc867d0Sdan UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` 254*9cc867d0Sdan echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" 255*9cc867d0Sdan exit ;; 256*9cc867d0Sdan *:MidnightBSD:*:*) 257*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" 2587f19c02fSvapier exit ;; 2597f19c02fSvapier *:ekkoBSD:*:*) 260*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" 2617f19c02fSvapier exit ;; 2627f19c02fSvapier *:SolidBSD:*:*) 263*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" 2647f19c02fSvapier exit ;; 2657f19c02fSvapier macppc:MirBSD:*:*) 266*9cc867d0Sdan echo powerpc-unknown-mirbsd"$UNAME_RELEASE" 2677f19c02fSvapier exit ;; 2687f19c02fSvapier *:MirBSD:*:*) 269*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" 270*9cc867d0Sdan exit ;; 271*9cc867d0Sdan *:Sortix:*:*) 272*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-sortix 273*9cc867d0Sdan exit ;; 274*9cc867d0Sdan *:Redox:*:*) 275*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-redox 276*9cc867d0Sdan exit ;; 277*9cc867d0Sdan mips:OSF1:*.*) 278*9cc867d0Sdan echo mips-dec-osf1 2797f19c02fSvapier exit ;; 28071eb93eaSdrh alpha:OSF1:*:*) 2817f19c02fSvapier case $UNAME_RELEASE in 2827f19c02fSvapier *4.0) 28371eb93eaSdrh UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2847f19c02fSvapier ;; 2857f19c02fSvapier *5.*) 2867f19c02fSvapier UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2877f19c02fSvapier ;; 2887f19c02fSvapier esac 289964dbb1eSa.rottmann # According to Compaq, /usr/sbin/psrinfo has been available on 290964dbb1eSa.rottmann # OSF/1 and Tru64 systems produced since 1995. I hope that 291964dbb1eSa.rottmann # covers most systems running today. This code pipes the CPU 292964dbb1eSa.rottmann # types through head -n 1, so we only detect the type of CPU 0. 293964dbb1eSa.rottmann ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 294964dbb1eSa.rottmann case "$ALPHA_CPU_TYPE" in 295964dbb1eSa.rottmann "EV4 (21064)") 296*9cc867d0Sdan UNAME_MACHINE=alpha ;; 297964dbb1eSa.rottmann "EV4.5 (21064)") 298*9cc867d0Sdan UNAME_MACHINE=alpha ;; 299964dbb1eSa.rottmann "LCA4 (21066/21068)") 300*9cc867d0Sdan UNAME_MACHINE=alpha ;; 301964dbb1eSa.rottmann "EV5 (21164)") 302*9cc867d0Sdan UNAME_MACHINE=alphaev5 ;; 303964dbb1eSa.rottmann "EV5.6 (21164A)") 304*9cc867d0Sdan UNAME_MACHINE=alphaev56 ;; 305964dbb1eSa.rottmann "EV5.6 (21164PC)") 306*9cc867d0Sdan UNAME_MACHINE=alphapca56 ;; 307964dbb1eSa.rottmann "EV5.7 (21164PC)") 308*9cc867d0Sdan UNAME_MACHINE=alphapca57 ;; 309964dbb1eSa.rottmann "EV6 (21264)") 310*9cc867d0Sdan UNAME_MACHINE=alphaev6 ;; 311964dbb1eSa.rottmann "EV6.7 (21264A)") 312*9cc867d0Sdan UNAME_MACHINE=alphaev67 ;; 313964dbb1eSa.rottmann "EV6.8CB (21264C)") 314*9cc867d0Sdan UNAME_MACHINE=alphaev68 ;; 315964dbb1eSa.rottmann "EV6.8AL (21264B)") 316*9cc867d0Sdan UNAME_MACHINE=alphaev68 ;; 317964dbb1eSa.rottmann "EV6.8CX (21264D)") 318*9cc867d0Sdan UNAME_MACHINE=alphaev68 ;; 319964dbb1eSa.rottmann "EV6.9A (21264/EV69A)") 320*9cc867d0Sdan UNAME_MACHINE=alphaev69 ;; 321964dbb1eSa.rottmann "EV7 (21364)") 322*9cc867d0Sdan UNAME_MACHINE=alphaev7 ;; 323964dbb1eSa.rottmann "EV7.9 (21364A)") 324*9cc867d0Sdan UNAME_MACHINE=alphaev79 ;; 325964dbb1eSa.rottmann esac 3267f19c02fSvapier # A Pn.n version is a patched version. 32771eb93eaSdrh # A Vn.n version is a released version. 32871eb93eaSdrh # A Tn.n version is a released field test version. 32971eb93eaSdrh # A Xn.n version is an unreleased experimental baselevel. 33071eb93eaSdrh # 1.2 uses "1.2" for uname -r. 331*9cc867d0Sdan echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" 332*9cc867d0Sdan # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 333*9cc867d0Sdan exitcode=$? 334*9cc867d0Sdan trap '' 0 335*9cc867d0Sdan exit $exitcode ;; 33671eb93eaSdrh Amiga*:UNIX_System_V:4.0:*) 33771eb93eaSdrh echo m68k-unknown-sysv4 3387f19c02fSvapier exit ;; 33971eb93eaSdrh *:[Aa]miga[Oo][Ss]:*:*) 340*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-amigaos 3417f19c02fSvapier exit ;; 34262507b65Sa.rottmann *:[Mm]orph[Oo][Ss]:*:*) 343*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-morphos 3447f19c02fSvapier exit ;; 34571eb93eaSdrh *:OS/390:*:*) 34671eb93eaSdrh echo i370-ibm-openedition 3477f19c02fSvapier exit ;; 3487f19c02fSvapier *:z/VM:*:*) 3497f19c02fSvapier echo s390-ibm-zvmoe 3507f19c02fSvapier exit ;; 351964dbb1eSa.rottmann *:OS400:*:*) 352964dbb1eSa.rottmann echo powerpc-ibm-os400 3537f19c02fSvapier exit ;; 35471eb93eaSdrh arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 355*9cc867d0Sdan echo arm-acorn-riscix"$UNAME_RELEASE" 3567f19c02fSvapier exit ;; 357*9cc867d0Sdan arm*:riscos:*:*|arm*:RISCOS:*:*) 3587f19c02fSvapier echo arm-unknown-riscos 3597f19c02fSvapier exit ;; 36071eb93eaSdrh SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 36171eb93eaSdrh echo hppa1.1-hitachi-hiuxmpp 3627f19c02fSvapier exit ;; 36371eb93eaSdrh Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 36471eb93eaSdrh # [email protected] (Earle F. Ake) contributed MIS and NILE. 36571eb93eaSdrh if test "`(/bin/universe) 2>/dev/null`" = att ; then 36671eb93eaSdrh echo pyramid-pyramid-sysv3 36771eb93eaSdrh else 36871eb93eaSdrh echo pyramid-pyramid-bsd 36971eb93eaSdrh fi 3707f19c02fSvapier exit ;; 37171eb93eaSdrh NILE*:*:*:dcosx) 37271eb93eaSdrh echo pyramid-pyramid-svr4 3737f19c02fSvapier exit ;; 374964dbb1eSa.rottmann DRS?6000:unix:4.0:6*) 375964dbb1eSa.rottmann echo sparc-icl-nx6 3767f19c02fSvapier exit ;; 3777f19c02fSvapier DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 37862507b65Sa.rottmann case `/usr/bin/uname -p` in 3797f19c02fSvapier sparc) echo sparc-icl-nx7; exit ;; 38062507b65Sa.rottmann esac ;; 381*9cc867d0Sdan s390x:SunOS:*:*) 382*9cc867d0Sdan echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" 383*9cc867d0Sdan exit ;; 38471eb93eaSdrh sun4H:SunOS:5.*:*) 385*9cc867d0Sdan echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 3867f19c02fSvapier exit ;; 38771eb93eaSdrh sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 388*9cc867d0Sdan echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" 389*9cc867d0Sdan exit ;; 390*9cc867d0Sdan i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 391*9cc867d0Sdan echo i386-pc-auroraux"$UNAME_RELEASE" 3927f19c02fSvapier exit ;; 393636a995dSmlcreech i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 394*9cc867d0Sdan set_cc_for_build 395*9cc867d0Sdan SUN_ARCH=i386 396*9cc867d0Sdan # If there is a compiler, see if it is configured for 64-bit objects. 397*9cc867d0Sdan # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 398*9cc867d0Sdan # This test works for both compilers. 399*9cc867d0Sdan if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 400*9cc867d0Sdan if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 401*9cc867d0Sdan (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 402*9cc867d0Sdan grep IS_64BIT_ARCH >/dev/null 403*9cc867d0Sdan then 404*9cc867d0Sdan SUN_ARCH=x86_64 405*9cc867d0Sdan fi 406*9cc867d0Sdan fi 407*9cc867d0Sdan echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 4087f19c02fSvapier exit ;; 40971eb93eaSdrh sun4*:SunOS:6*:*) 41071eb93eaSdrh # According to config.sub, this is the proper way to canonicalize 41171eb93eaSdrh # SunOS6. Hard to guess exactly what SunOS6 will be like, but 41271eb93eaSdrh # it's likely to be more like Solaris than SunOS4. 413*9cc867d0Sdan echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 4147f19c02fSvapier exit ;; 41571eb93eaSdrh sun4*:SunOS:*:*) 41671eb93eaSdrh case "`/usr/bin/arch -k`" in 41771eb93eaSdrh Series*|S4*) 41871eb93eaSdrh UNAME_RELEASE=`uname -v` 41971eb93eaSdrh ;; 42071eb93eaSdrh esac 42171eb93eaSdrh # Japanese Language versions have a version number like `4.1.3-JL'. 422*9cc867d0Sdan echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" 4237f19c02fSvapier exit ;; 42471eb93eaSdrh sun3*:SunOS:*:*) 425*9cc867d0Sdan echo m68k-sun-sunos"$UNAME_RELEASE" 4267f19c02fSvapier exit ;; 42771eb93eaSdrh sun*:*:4.2BSD:*) 42862507b65Sa.rottmann UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 429*9cc867d0Sdan test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 43071eb93eaSdrh case "`/bin/arch`" in 43171eb93eaSdrh sun3) 432*9cc867d0Sdan echo m68k-sun-sunos"$UNAME_RELEASE" 43371eb93eaSdrh ;; 43471eb93eaSdrh sun4) 435*9cc867d0Sdan echo sparc-sun-sunos"$UNAME_RELEASE" 43671eb93eaSdrh ;; 43771eb93eaSdrh esac 4387f19c02fSvapier exit ;; 43971eb93eaSdrh aushp:SunOS:*:*) 440*9cc867d0Sdan echo sparc-auspex-sunos"$UNAME_RELEASE" 4417f19c02fSvapier exit ;; 44271eb93eaSdrh # The situation for MiNT is a little confusing. The machine name 44371eb93eaSdrh # can be virtually everything (everything which is not 44471eb93eaSdrh # "atarist" or "atariste" at least should have a processor 44571eb93eaSdrh # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 44671eb93eaSdrh # to the lowercase version "mint" (or "freemint"). Finally 44771eb93eaSdrh # the system name "TOS" denotes a system which is actually not 44871eb93eaSdrh # MiNT. But MiNT is downward compatible to TOS, so this should 44971eb93eaSdrh # be no problem. 45071eb93eaSdrh atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 451*9cc867d0Sdan echo m68k-atari-mint"$UNAME_RELEASE" 4527f19c02fSvapier exit ;; 45371eb93eaSdrh atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 454*9cc867d0Sdan echo m68k-atari-mint"$UNAME_RELEASE" 4557f19c02fSvapier exit ;; 45671eb93eaSdrh *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 457*9cc867d0Sdan echo m68k-atari-mint"$UNAME_RELEASE" 4587f19c02fSvapier exit ;; 45971eb93eaSdrh milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 460*9cc867d0Sdan echo m68k-milan-mint"$UNAME_RELEASE" 4617f19c02fSvapier exit ;; 46271eb93eaSdrh hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 463*9cc867d0Sdan echo m68k-hades-mint"$UNAME_RELEASE" 4647f19c02fSvapier exit ;; 46571eb93eaSdrh *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 466*9cc867d0Sdan echo m68k-unknown-mint"$UNAME_RELEASE" 4677f19c02fSvapier exit ;; 4687f19c02fSvapier m68k:machten:*:*) 469*9cc867d0Sdan echo m68k-apple-machten"$UNAME_RELEASE" 4707f19c02fSvapier exit ;; 47171eb93eaSdrh powerpc:machten:*:*) 472*9cc867d0Sdan echo powerpc-apple-machten"$UNAME_RELEASE" 4737f19c02fSvapier exit ;; 47471eb93eaSdrh RISC*:Mach:*:*) 47571eb93eaSdrh echo mips-dec-mach_bsd4.3 4767f19c02fSvapier exit ;; 47771eb93eaSdrh RISC*:ULTRIX:*:*) 478*9cc867d0Sdan echo mips-dec-ultrix"$UNAME_RELEASE" 4797f19c02fSvapier exit ;; 48071eb93eaSdrh VAX*:ULTRIX*:*:*) 481*9cc867d0Sdan echo vax-dec-ultrix"$UNAME_RELEASE" 4827f19c02fSvapier exit ;; 48371eb93eaSdrh 2020:CLIX:*:* | 2430:CLIX:*:*) 484*9cc867d0Sdan echo clipper-intergraph-clix"$UNAME_RELEASE" 4857f19c02fSvapier exit ;; 48671eb93eaSdrh mips:*:*:UMIPS | mips:*:*:RISCos) 487*9cc867d0Sdan set_cc_for_build 488*9cc867d0Sdan sed 's/^ //' << EOF > "$dummy.c" 48971eb93eaSdrh#ifdef __cplusplus 49071eb93eaSdrh#include <stdio.h> /* for printf() prototype */ 49171eb93eaSdrh int main (int argc, char *argv[]) { 49271eb93eaSdrh#else 49371eb93eaSdrh int main (argc, argv) int argc; char *argv[]; { 49471eb93eaSdrh#endif 49571eb93eaSdrh #if defined (host_mips) && defined (MIPSEB) 49671eb93eaSdrh #if defined (SYSTYPE_SYSV) 497*9cc867d0Sdan printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); 49871eb93eaSdrh #endif 49971eb93eaSdrh #if defined (SYSTYPE_SVR4) 500*9cc867d0Sdan printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); 50171eb93eaSdrh #endif 50271eb93eaSdrh #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 503*9cc867d0Sdan printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); 50471eb93eaSdrh #endif 50571eb93eaSdrh #endif 50671eb93eaSdrh exit (-1); 50771eb93eaSdrh } 50871eb93eaSdrhEOF 509*9cc867d0Sdan $CC_FOR_BUILD -o "$dummy" "$dummy.c" && 510*9cc867d0Sdan dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && 511*9cc867d0Sdan SYSTEM_NAME=`"$dummy" "$dummyarg"` && 5127f19c02fSvapier { echo "$SYSTEM_NAME"; exit; } 513*9cc867d0Sdan echo mips-mips-riscos"$UNAME_RELEASE" 5147f19c02fSvapier exit ;; 51571eb93eaSdrh Motorola:PowerMAX_OS:*:*) 51671eb93eaSdrh echo powerpc-motorola-powermax 5177f19c02fSvapier exit ;; 51862507b65Sa.rottmann Motorola:*:4.3:PL8-*) 51962507b65Sa.rottmann echo powerpc-harris-powermax 5207f19c02fSvapier exit ;; 52162507b65Sa.rottmann Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 52262507b65Sa.rottmann echo powerpc-harris-powermax 5237f19c02fSvapier exit ;; 52471eb93eaSdrh Night_Hawk:Power_UNIX:*:*) 52571eb93eaSdrh echo powerpc-harris-powerunix 5267f19c02fSvapier exit ;; 52771eb93eaSdrh m88k:CX/UX:7*:*) 52871eb93eaSdrh echo m88k-harris-cxux7 5297f19c02fSvapier exit ;; 53071eb93eaSdrh m88k:*:4*:R4*) 53171eb93eaSdrh echo m88k-motorola-sysv4 5327f19c02fSvapier exit ;; 53371eb93eaSdrh m88k:*:3*:R3*) 53471eb93eaSdrh echo m88k-motorola-sysv3 5357f19c02fSvapier exit ;; 53671eb93eaSdrh AViiON:dgux:*:*) 53771eb93eaSdrh # DG/UX returns AViiON for all architectures 53871eb93eaSdrh UNAME_PROCESSOR=`/usr/bin/uname -p` 539*9cc867d0Sdan if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] 54071eb93eaSdrh then 541*9cc867d0Sdan if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ 542*9cc867d0Sdan [ "$TARGET_BINARY_INTERFACE"x = x ] 54371eb93eaSdrh then 544*9cc867d0Sdan echo m88k-dg-dgux"$UNAME_RELEASE" 54571eb93eaSdrh else 546*9cc867d0Sdan echo m88k-dg-dguxbcs"$UNAME_RELEASE" 54771eb93eaSdrh fi 54871eb93eaSdrh else 549*9cc867d0Sdan echo i586-dg-dgux"$UNAME_RELEASE" 55071eb93eaSdrh fi 5517f19c02fSvapier exit ;; 55271eb93eaSdrh M88*:DolphinOS:*:*) # DolphinOS (SVR3) 55371eb93eaSdrh echo m88k-dolphin-sysv3 5547f19c02fSvapier exit ;; 55571eb93eaSdrh M88*:*:R3*:*) 55671eb93eaSdrh # Delta 88k system running SVR3 55771eb93eaSdrh echo m88k-motorola-sysv3 5587f19c02fSvapier exit ;; 55971eb93eaSdrh XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 56071eb93eaSdrh echo m88k-tektronix-sysv3 5617f19c02fSvapier exit ;; 56271eb93eaSdrh Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 56371eb93eaSdrh echo m68k-tektronix-bsd 5647f19c02fSvapier exit ;; 56571eb93eaSdrh *:IRIX*:*:*) 566*9cc867d0Sdan echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" 5677f19c02fSvapier exit ;; 56871eb93eaSdrh ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 56971eb93eaSdrh echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 5707f19c02fSvapier exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 57171eb93eaSdrh i*86:AIX:*:*) 57271eb93eaSdrh echo i386-ibm-aix 5737f19c02fSvapier exit ;; 57471eb93eaSdrh ia64:AIX:*:*) 57571eb93eaSdrh if [ -x /usr/bin/oslevel ] ; then 57671eb93eaSdrh IBM_REV=`/usr/bin/oslevel` 57771eb93eaSdrh else 578*9cc867d0Sdan IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" 57971eb93eaSdrh fi 580*9cc867d0Sdan echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" 5817f19c02fSvapier exit ;; 58271eb93eaSdrh *:AIX:2:3) 58371eb93eaSdrh if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 584*9cc867d0Sdan set_cc_for_build 585*9cc867d0Sdan sed 's/^ //' << EOF > "$dummy.c" 58671eb93eaSdrh #include <sys/systemcfg.h> 58771eb93eaSdrh 58871eb93eaSdrh main() 58971eb93eaSdrh { 59071eb93eaSdrh if (!__power_pc()) 59171eb93eaSdrh exit(1); 59271eb93eaSdrh puts("powerpc-ibm-aix3.2.5"); 59371eb93eaSdrh exit(0); 59471eb93eaSdrh } 59571eb93eaSdrhEOF 596*9cc867d0Sdan if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` 5977f19c02fSvapier then 5987f19c02fSvapier echo "$SYSTEM_NAME" 5997f19c02fSvapier else 60071eb93eaSdrh echo rs6000-ibm-aix3.2.5 6017f19c02fSvapier fi 60271eb93eaSdrh elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 60371eb93eaSdrh echo rs6000-ibm-aix3.2.4 60471eb93eaSdrh else 60571eb93eaSdrh echo rs6000-ibm-aix3.2 60671eb93eaSdrh fi 6077f19c02fSvapier exit ;; 608*9cc867d0Sdan *:AIX:*:[4567]) 60962507b65Sa.rottmann IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 610*9cc867d0Sdan if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then 61171eb93eaSdrh IBM_ARCH=rs6000 61271eb93eaSdrh else 61371eb93eaSdrh IBM_ARCH=powerpc 61471eb93eaSdrh fi 615*9cc867d0Sdan if [ -x /usr/bin/lslpp ] ; then 616*9cc867d0Sdan IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | 617*9cc867d0Sdan awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` 61871eb93eaSdrh else 619*9cc867d0Sdan IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" 62071eb93eaSdrh fi 621*9cc867d0Sdan echo "$IBM_ARCH"-ibm-aix"$IBM_REV" 6227f19c02fSvapier exit ;; 62371eb93eaSdrh *:AIX:*:*) 62471eb93eaSdrh echo rs6000-ibm-aix 6257f19c02fSvapier exit ;; 626*9cc867d0Sdan ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) 62771eb93eaSdrh echo romp-ibm-bsd4.4 6287f19c02fSvapier exit ;; 62971eb93eaSdrh ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 630*9cc867d0Sdan echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to 6317f19c02fSvapier exit ;; # report: romp-ibm BSD 4.3 63271eb93eaSdrh *:BOSX:*:*) 63371eb93eaSdrh echo rs6000-bull-bosx 6347f19c02fSvapier exit ;; 63571eb93eaSdrh DPX/2?00:B.O.S.:*:*) 63671eb93eaSdrh echo m68k-bull-sysv3 6377f19c02fSvapier exit ;; 63871eb93eaSdrh 9000/[34]??:4.3bsd:1.*:*) 63971eb93eaSdrh echo m68k-hp-bsd 6407f19c02fSvapier exit ;; 64171eb93eaSdrh hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 64271eb93eaSdrh echo m68k-hp-bsd4.4 6437f19c02fSvapier exit ;; 64471eb93eaSdrh 9000/[34678]??:HP-UX:*:*) 645*9cc867d0Sdan HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` 646*9cc867d0Sdan case "$UNAME_MACHINE" in 64771eb93eaSdrh 9000/31?) HP_ARCH=m68000 ;; 64871eb93eaSdrh 9000/[34]??) HP_ARCH=m68k ;; 64971eb93eaSdrh 9000/[678][0-9][0-9]) 65071eb93eaSdrh if [ -x /usr/bin/getconf ]; then 65171eb93eaSdrh sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 65271eb93eaSdrh sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 653*9cc867d0Sdan case "$sc_cpu_version" in 654*9cc867d0Sdan 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 655*9cc867d0Sdan 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 65671eb93eaSdrh 532) # CPU_PA_RISC2_0 657*9cc867d0Sdan case "$sc_kernel_bits" in 658*9cc867d0Sdan 32) HP_ARCH=hppa2.0n ;; 659*9cc867d0Sdan 64) HP_ARCH=hppa2.0w ;; 660*9cc867d0Sdan '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 66171eb93eaSdrh esac ;; 66271eb93eaSdrh esac 66362507b65Sa.rottmann fi 664*9cc867d0Sdan if [ "$HP_ARCH" = "" ]; then 665*9cc867d0Sdan set_cc_for_build 666*9cc867d0Sdan sed 's/^ //' << EOF > "$dummy.c" 66771eb93eaSdrh 66871eb93eaSdrh #define _HPUX_SOURCE 66971eb93eaSdrh #include <stdlib.h> 67071eb93eaSdrh #include <unistd.h> 67171eb93eaSdrh 67271eb93eaSdrh int main () 67371eb93eaSdrh { 67471eb93eaSdrh #if defined(_SC_KERNEL_BITS) 67571eb93eaSdrh long bits = sysconf(_SC_KERNEL_BITS); 67671eb93eaSdrh #endif 67771eb93eaSdrh long cpu = sysconf (_SC_CPU_VERSION); 67871eb93eaSdrh 67971eb93eaSdrh switch (cpu) 68071eb93eaSdrh { 68171eb93eaSdrh case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 68271eb93eaSdrh case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 68371eb93eaSdrh case CPU_PA_RISC2_0: 68471eb93eaSdrh #if defined(_SC_KERNEL_BITS) 68571eb93eaSdrh switch (bits) 68671eb93eaSdrh { 68771eb93eaSdrh case 64: puts ("hppa2.0w"); break; 68871eb93eaSdrh case 32: puts ("hppa2.0n"); break; 68971eb93eaSdrh default: puts ("hppa2.0"); break; 69071eb93eaSdrh } break; 69171eb93eaSdrh #else /* !defined(_SC_KERNEL_BITS) */ 69271eb93eaSdrh puts ("hppa2.0"); break; 69371eb93eaSdrh #endif 69471eb93eaSdrh default: puts ("hppa1.0"); break; 69571eb93eaSdrh } 69671eb93eaSdrh exit (0); 69771eb93eaSdrh } 69871eb93eaSdrhEOF 699*9cc867d0Sdan (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` 70062507b65Sa.rottmann test -z "$HP_ARCH" && HP_ARCH=hppa 70171eb93eaSdrh fi ;; 70271eb93eaSdrh esac 703*9cc867d0Sdan if [ "$HP_ARCH" = hppa2.0w ] 70462507b65Sa.rottmann then 705*9cc867d0Sdan set_cc_for_build 7067f19c02fSvapier 7077f19c02fSvapier # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 7087f19c02fSvapier # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 7097f19c02fSvapier # generating 64-bit code. GNU and HP use different nomenclature: 7107f19c02fSvapier # 7117f19c02fSvapier # $ CC_FOR_BUILD=cc ./config.guess 7127f19c02fSvapier # => hppa2.0w-hp-hpux11.23 7137f19c02fSvapier # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 7147f19c02fSvapier # => hppa64-hp-hpux11.23 7157f19c02fSvapier 716*9cc867d0Sdan if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | 717*9cc867d0Sdan grep -q __LP64__ 71862507b65Sa.rottmann then 719*9cc867d0Sdan HP_ARCH=hppa2.0w 72062507b65Sa.rottmann else 721*9cc867d0Sdan HP_ARCH=hppa64 72262507b65Sa.rottmann fi 72362507b65Sa.rottmann fi 724*9cc867d0Sdan echo "$HP_ARCH"-hp-hpux"$HPUX_REV" 7257f19c02fSvapier exit ;; 72671eb93eaSdrh ia64:HP-UX:*:*) 727*9cc867d0Sdan HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` 728*9cc867d0Sdan echo ia64-hp-hpux"$HPUX_REV" 7297f19c02fSvapier exit ;; 73071eb93eaSdrh 3050*:HI-UX:*:*) 731*9cc867d0Sdan set_cc_for_build 732*9cc867d0Sdan sed 's/^ //' << EOF > "$dummy.c" 73371eb93eaSdrh #include <unistd.h> 73471eb93eaSdrh int 73571eb93eaSdrh main () 73671eb93eaSdrh { 73771eb93eaSdrh long cpu = sysconf (_SC_CPU_VERSION); 73871eb93eaSdrh /* The order matters, because CPU_IS_HP_MC68K erroneously returns 73971eb93eaSdrh true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 74071eb93eaSdrh results, however. */ 74171eb93eaSdrh if (CPU_IS_PA_RISC (cpu)) 74271eb93eaSdrh { 74371eb93eaSdrh switch (cpu) 74471eb93eaSdrh { 74571eb93eaSdrh case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 74671eb93eaSdrh case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 74771eb93eaSdrh case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 74871eb93eaSdrh default: puts ("hppa-hitachi-hiuxwe2"); break; 74971eb93eaSdrh } 75071eb93eaSdrh } 75171eb93eaSdrh else if (CPU_IS_HP_MC68K (cpu)) 75271eb93eaSdrh puts ("m68k-hitachi-hiuxwe2"); 75371eb93eaSdrh else puts ("unknown-hitachi-hiuxwe2"); 75471eb93eaSdrh exit (0); 75571eb93eaSdrh } 75671eb93eaSdrhEOF 757*9cc867d0Sdan $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && 7587f19c02fSvapier { echo "$SYSTEM_NAME"; exit; } 75971eb93eaSdrh echo unknown-hitachi-hiuxwe2 7607f19c02fSvapier exit ;; 76171eb93eaSdrh 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) 76271eb93eaSdrh echo hppa1.1-hp-bsd 7637f19c02fSvapier exit ;; 76471eb93eaSdrh 9000/8??:4.3bsd:*:*) 76571eb93eaSdrh echo hppa1.0-hp-bsd 7667f19c02fSvapier exit ;; 76771eb93eaSdrh *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 76871eb93eaSdrh echo hppa1.0-hp-mpeix 7697f19c02fSvapier exit ;; 77071eb93eaSdrh hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) 77171eb93eaSdrh echo hppa1.1-hp-osf 7727f19c02fSvapier exit ;; 77371eb93eaSdrh hp8??:OSF1:*:*) 77471eb93eaSdrh echo hppa1.0-hp-osf 7757f19c02fSvapier exit ;; 77671eb93eaSdrh i*86:OSF1:*:*) 77771eb93eaSdrh if [ -x /usr/sbin/sysversion ] ; then 778*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-osf1mk 77971eb93eaSdrh else 780*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-osf1 78171eb93eaSdrh fi 7827f19c02fSvapier exit ;; 78371eb93eaSdrh parisc*:Lites*:*:*) 78471eb93eaSdrh echo hppa1.1-hp-lites 7857f19c02fSvapier exit ;; 78671eb93eaSdrh C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 78771eb93eaSdrh echo c1-convex-bsd 7887f19c02fSvapier exit ;; 78971eb93eaSdrh C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 79071eb93eaSdrh if getsysinfo -f scalar_acc 79171eb93eaSdrh then echo c32-convex-bsd 79271eb93eaSdrh else echo c2-convex-bsd 79371eb93eaSdrh fi 7947f19c02fSvapier exit ;; 79571eb93eaSdrh C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 79671eb93eaSdrh echo c34-convex-bsd 7977f19c02fSvapier exit ;; 79871eb93eaSdrh C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 79971eb93eaSdrh echo c38-convex-bsd 8007f19c02fSvapier exit ;; 80171eb93eaSdrh C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 80271eb93eaSdrh echo c4-convex-bsd 8037f19c02fSvapier exit ;; 80471eb93eaSdrh CRAY*Y-MP:*:*:*) 805*9cc867d0Sdan echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 8067f19c02fSvapier exit ;; 80771eb93eaSdrh CRAY*[A-Z]90:*:*:*) 808*9cc867d0Sdan echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ 80971eb93eaSdrh | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 81071eb93eaSdrh -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 81171eb93eaSdrh -e 's/\.[^.]*$/.X/' 8127f19c02fSvapier exit ;; 81371eb93eaSdrh CRAY*TS:*:*:*) 814*9cc867d0Sdan echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 8157f19c02fSvapier exit ;; 81671eb93eaSdrh CRAY*T3E:*:*:*) 817*9cc867d0Sdan echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 8187f19c02fSvapier exit ;; 81971eb93eaSdrh CRAY*SV1:*:*:*) 820*9cc867d0Sdan echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 8217f19c02fSvapier exit ;; 82262507b65Sa.rottmann *:UNICOS/mp:*:*) 823*9cc867d0Sdan echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 8247f19c02fSvapier exit ;; 82571eb93eaSdrh F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 826*9cc867d0Sdan FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 827*9cc867d0Sdan FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 828*9cc867d0Sdan FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` 82971eb93eaSdrh echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 8307f19c02fSvapier exit ;; 831964dbb1eSa.rottmann 5000:UNIX_System_V:4.*:*) 832*9cc867d0Sdan FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 833*9cc867d0Sdan FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` 834964dbb1eSa.rottmann echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 8357f19c02fSvapier exit ;; 83671eb93eaSdrh i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 837*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" 8387f19c02fSvapier exit ;; 83971eb93eaSdrh sparc*:BSD/OS:*:*) 840*9cc867d0Sdan echo sparc-unknown-bsdi"$UNAME_RELEASE" 8417f19c02fSvapier exit ;; 84271eb93eaSdrh *:BSD/OS:*:*) 843*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" 844*9cc867d0Sdan exit ;; 845*9cc867d0Sdan arm:FreeBSD:*:*) 846*9cc867d0Sdan UNAME_PROCESSOR=`uname -p` 847*9cc867d0Sdan set_cc_for_build 848*9cc867d0Sdan if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 849*9cc867d0Sdan | grep -q __ARM_PCS_VFP 850*9cc867d0Sdan then 851*9cc867d0Sdan echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi 852*9cc867d0Sdan else 853*9cc867d0Sdan echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf 854*9cc867d0Sdan fi 8557f19c02fSvapier exit ;; 85671eb93eaSdrh *:FreeBSD:*:*) 857*9cc867d0Sdan UNAME_PROCESSOR=`/usr/bin/uname -p` 858*9cc867d0Sdan case "$UNAME_PROCESSOR" in 8597f19c02fSvapier amd64) 860*9cc867d0Sdan UNAME_PROCESSOR=x86_64 ;; 861*9cc867d0Sdan i386) 862*9cc867d0Sdan UNAME_PROCESSOR=i586 ;; 8637f19c02fSvapier esac 864*9cc867d0Sdan echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" 8657f19c02fSvapier exit ;; 86671eb93eaSdrh i*:CYGWIN*:*) 867*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-cygwin 868*9cc867d0Sdan exit ;; 869*9cc867d0Sdan *:MINGW64*:*) 870*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-mingw64 8717f19c02fSvapier exit ;; 8727f19c02fSvapier *:MINGW*:*) 873*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-mingw32 8747f19c02fSvapier exit ;; 875*9cc867d0Sdan *:MSYS*:*) 876*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-msys 8777f19c02fSvapier exit ;; 87871eb93eaSdrh i*:PW*:*) 879*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-pw32 8807f19c02fSvapier exit ;; 881*9cc867d0Sdan *:Interix*:*) 882*9cc867d0Sdan case "$UNAME_MACHINE" in 883636a995dSmlcreech x86) 884*9cc867d0Sdan echo i586-pc-interix"$UNAME_RELEASE" 8857f19c02fSvapier exit ;; 886*9cc867d0Sdan authenticamd | genuineintel | EM64T) 887*9cc867d0Sdan echo x86_64-unknown-interix"$UNAME_RELEASE" 888*9cc867d0Sdan exit ;; 889*9cc867d0Sdan IA64) 890*9cc867d0Sdan echo ia64-unknown-interix"$UNAME_RELEASE" 8917f19c02fSvapier exit ;; 892636a995dSmlcreech esac ;; 89371eb93eaSdrh i*:UWIN*:*) 894*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-uwin 8957f19c02fSvapier exit ;; 8967f19c02fSvapier amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 897*9cc867d0Sdan echo x86_64-pc-cygwin 8987f19c02fSvapier exit ;; 89971eb93eaSdrh prep*:SunOS:5.*:*) 900*9cc867d0Sdan echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 9017f19c02fSvapier exit ;; 90271eb93eaSdrh *:GNU:*:*) 903964dbb1eSa.rottmann # the GNU system 904*9cc867d0Sdan echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" 9057f19c02fSvapier exit ;; 906964dbb1eSa.rottmann *:GNU/*:*:*) 907964dbb1eSa.rottmann # other systems with GNU libc and userland 908*9cc867d0Sdan echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" 9097f19c02fSvapier exit ;; 910*9cc867d0Sdan *:Minix:*:*) 911*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-minix 9127f19c02fSvapier exit ;; 913*9cc867d0Sdan aarch64:Linux:*:*) 914*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 9157f19c02fSvapier exit ;; 916*9cc867d0Sdan aarch64_be:Linux:*:*) 917*9cc867d0Sdan UNAME_MACHINE=aarch64_be 918*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 9197f19c02fSvapier exit ;; 92071eb93eaSdrh alpha:Linux:*:*) 92171eb93eaSdrh case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 92271eb93eaSdrh EV5) UNAME_MACHINE=alphaev5 ;; 92371eb93eaSdrh EV56) UNAME_MACHINE=alphaev56 ;; 92471eb93eaSdrh PCA56) UNAME_MACHINE=alphapca56 ;; 92571eb93eaSdrh PCA57) UNAME_MACHINE=alphapca56 ;; 92671eb93eaSdrh EV6) UNAME_MACHINE=alphaev6 ;; 92771eb93eaSdrh EV67) UNAME_MACHINE=alphaev67 ;; 92871eb93eaSdrh EV68*) UNAME_MACHINE=alphaev68 ;; 92971eb93eaSdrh esac 930*9cc867d0Sdan objdump --private-headers /bin/sh | grep -q ld.so.1 931*9cc867d0Sdan if test "$?" = 0 ; then LIBC=gnulibc1 ; fi 932*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 933*9cc867d0Sdan exit ;; 934*9cc867d0Sdan arc:Linux:*:* | arceb:Linux:*:*) 935*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 936*9cc867d0Sdan exit ;; 937*9cc867d0Sdan arm*:Linux:*:*) 938*9cc867d0Sdan set_cc_for_build 939*9cc867d0Sdan if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 940*9cc867d0Sdan | grep -q __ARM_EABI__ 941*9cc867d0Sdan then 942*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 943*9cc867d0Sdan else 944*9cc867d0Sdan if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 945*9cc867d0Sdan | grep -q __ARM_PCS_VFP 946*9cc867d0Sdan then 947*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi 948*9cc867d0Sdan else 949*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf 950*9cc867d0Sdan fi 951*9cc867d0Sdan fi 952*9cc867d0Sdan exit ;; 953*9cc867d0Sdan avr32*:Linux:*:*) 954*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 955*9cc867d0Sdan exit ;; 956*9cc867d0Sdan cris:Linux:*:*) 957*9cc867d0Sdan echo "$UNAME_MACHINE"-axis-linux-"$LIBC" 958*9cc867d0Sdan exit ;; 959*9cc867d0Sdan crisv32:Linux:*:*) 960*9cc867d0Sdan echo "$UNAME_MACHINE"-axis-linux-"$LIBC" 961*9cc867d0Sdan exit ;; 962*9cc867d0Sdan e2k:Linux:*:*) 963*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 964*9cc867d0Sdan exit ;; 965*9cc867d0Sdan frv:Linux:*:*) 966*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 967*9cc867d0Sdan exit ;; 968*9cc867d0Sdan hexagon:Linux:*:*) 969*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 970*9cc867d0Sdan exit ;; 971*9cc867d0Sdan i*86:Linux:*:*) 972*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-linux-"$LIBC" 973*9cc867d0Sdan exit ;; 974*9cc867d0Sdan ia64:Linux:*:*) 975*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 976*9cc867d0Sdan exit ;; 977*9cc867d0Sdan k1om:Linux:*:*) 978*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 979*9cc867d0Sdan exit ;; 980*9cc867d0Sdan m32r*:Linux:*:*) 981*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 982*9cc867d0Sdan exit ;; 983*9cc867d0Sdan m68*:Linux:*:*) 984*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 985*9cc867d0Sdan exit ;; 986*9cc867d0Sdan mips:Linux:*:* | mips64:Linux:*:*) 987*9cc867d0Sdan set_cc_for_build 988*9cc867d0Sdan IS_GLIBC=0 989*9cc867d0Sdan test x"${LIBC}" = xgnu && IS_GLIBC=1 990*9cc867d0Sdan sed 's/^ //' << EOF > "$dummy.c" 991*9cc867d0Sdan #undef CPU 992*9cc867d0Sdan #undef mips 993*9cc867d0Sdan #undef mipsel 994*9cc867d0Sdan #undef mips64 995*9cc867d0Sdan #undef mips64el 996*9cc867d0Sdan #if ${IS_GLIBC} && defined(_ABI64) 997*9cc867d0Sdan LIBCABI=gnuabi64 998*9cc867d0Sdan #else 999*9cc867d0Sdan #if ${IS_GLIBC} && defined(_ABIN32) 1000*9cc867d0Sdan LIBCABI=gnuabin32 1001*9cc867d0Sdan #else 1002*9cc867d0Sdan LIBCABI=${LIBC} 1003*9cc867d0Sdan #endif 1004*9cc867d0Sdan #endif 1005*9cc867d0Sdan 1006*9cc867d0Sdan #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 1007*9cc867d0Sdan CPU=mipsisa64r6 1008*9cc867d0Sdan #else 1009*9cc867d0Sdan #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 1010*9cc867d0Sdan CPU=mipsisa32r6 1011*9cc867d0Sdan #else 1012*9cc867d0Sdan #if defined(__mips64) 1013*9cc867d0Sdan CPU=mips64 1014*9cc867d0Sdan #else 1015*9cc867d0Sdan CPU=mips 1016*9cc867d0Sdan #endif 1017*9cc867d0Sdan #endif 1018*9cc867d0Sdan #endif 1019*9cc867d0Sdan 1020*9cc867d0Sdan #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 1021*9cc867d0Sdan MIPS_ENDIAN=el 1022*9cc867d0Sdan #else 1023*9cc867d0Sdan #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 1024*9cc867d0Sdan MIPS_ENDIAN= 1025*9cc867d0Sdan #else 1026*9cc867d0Sdan MIPS_ENDIAN= 1027*9cc867d0Sdan #endif 1028*9cc867d0Sdan #endif 1029*9cc867d0SdanEOF 1030*9cc867d0Sdan eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`" 1031*9cc867d0Sdan test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } 1032*9cc867d0Sdan ;; 1033*9cc867d0Sdan mips64el:Linux:*:*) 1034*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1035*9cc867d0Sdan exit ;; 1036*9cc867d0Sdan openrisc*:Linux:*:*) 1037*9cc867d0Sdan echo or1k-unknown-linux-"$LIBC" 1038*9cc867d0Sdan exit ;; 1039*9cc867d0Sdan or32:Linux:*:* | or1k*:Linux:*:*) 1040*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1041*9cc867d0Sdan exit ;; 1042*9cc867d0Sdan padre:Linux:*:*) 1043*9cc867d0Sdan echo sparc-unknown-linux-"$LIBC" 1044*9cc867d0Sdan exit ;; 1045*9cc867d0Sdan parisc64:Linux:*:* | hppa64:Linux:*:*) 1046*9cc867d0Sdan echo hppa64-unknown-linux-"$LIBC" 10477f19c02fSvapier exit ;; 104871eb93eaSdrh parisc:Linux:*:* | hppa:Linux:*:*) 104971eb93eaSdrh # Look for CPU level 105071eb93eaSdrh case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 1051*9cc867d0Sdan PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; 1052*9cc867d0Sdan PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; 1053*9cc867d0Sdan *) echo hppa-unknown-linux-"$LIBC" ;; 105471eb93eaSdrh esac 10557f19c02fSvapier exit ;; 1056*9cc867d0Sdan ppc64:Linux:*:*) 1057*9cc867d0Sdan echo powerpc64-unknown-linux-"$LIBC" 1058*9cc867d0Sdan exit ;; 1059*9cc867d0Sdan ppc:Linux:*:*) 1060*9cc867d0Sdan echo powerpc-unknown-linux-"$LIBC" 1061*9cc867d0Sdan exit ;; 1062*9cc867d0Sdan ppc64le:Linux:*:*) 1063*9cc867d0Sdan echo powerpc64le-unknown-linux-"$LIBC" 1064*9cc867d0Sdan exit ;; 1065*9cc867d0Sdan ppcle:Linux:*:*) 1066*9cc867d0Sdan echo powerpcle-unknown-linux-"$LIBC" 1067*9cc867d0Sdan exit ;; 1068*9cc867d0Sdan riscv32:Linux:*:* | riscv64:Linux:*:*) 1069*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10707f19c02fSvapier exit ;; 107171eb93eaSdrh s390:Linux:*:* | s390x:Linux:*:*) 1072*9cc867d0Sdan echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" 10737f19c02fSvapier exit ;; 1074964dbb1eSa.rottmann sh64*:Linux:*:*) 1075*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10767f19c02fSvapier exit ;; 107771eb93eaSdrh sh*:Linux:*:*) 1078*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10797f19c02fSvapier exit ;; 108071eb93eaSdrh sparc:Linux:*:* | sparc64:Linux:*:*) 1081*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1082*9cc867d0Sdan exit ;; 1083*9cc867d0Sdan tile*:Linux:*:*) 1084*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10857f19c02fSvapier exit ;; 10867f19c02fSvapier vax:Linux:*:*) 1087*9cc867d0Sdan echo "$UNAME_MACHINE"-dec-linux-"$LIBC" 10887f19c02fSvapier exit ;; 108971eb93eaSdrh x86_64:Linux:*:*) 1090*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-linux-"$LIBC" 10917f19c02fSvapier exit ;; 1092*9cc867d0Sdan xtensa*:Linux:*:*) 1093*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10947f19c02fSvapier exit ;; 109571eb93eaSdrh i*86:DYNIX/ptx:4*:*) 109671eb93eaSdrh # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 109771eb93eaSdrh # earlier versions are messed up and put the nodename in both 109871eb93eaSdrh # sysname and nodename. 109971eb93eaSdrh echo i386-sequent-sysv4 11007f19c02fSvapier exit ;; 110171eb93eaSdrh i*86:UNIX_SV:4.2MP:2.*) 110271eb93eaSdrh # Unixware is an offshoot of SVR4, but it has its own version 110371eb93eaSdrh # number series starting with 2... 110471eb93eaSdrh # I am not positive that other SVR4 systems won't match this, 110571eb93eaSdrh # I just have to hope. -- rms. 110671eb93eaSdrh # Use sysv4.2uw... so that sysv4* matches it. 1107*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" 11087f19c02fSvapier exit ;; 110962507b65Sa.rottmann i*86:OS/2:*:*) 111062507b65Sa.rottmann # If we were able to find `uname', then EMX Unix compatibility 111162507b65Sa.rottmann # is probably installed. 1112*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-os2-emx 11137f19c02fSvapier exit ;; 111462507b65Sa.rottmann i*86:XTS-300:*:STOP) 1115*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-stop 11167f19c02fSvapier exit ;; 111762507b65Sa.rottmann i*86:atheos:*:*) 1118*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-atheos 11197f19c02fSvapier exit ;; 1120964dbb1eSa.rottmann i*86:syllable:*:*) 1121*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-syllable 11227f19c02fSvapier exit ;; 1123*9cc867d0Sdan i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1124*9cc867d0Sdan echo i386-unknown-lynxos"$UNAME_RELEASE" 11257f19c02fSvapier exit ;; 112662507b65Sa.rottmann i*86:*DOS:*:*) 1127*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-msdosdjgpp 11287f19c02fSvapier exit ;; 1129*9cc867d0Sdan i*86:*:4.*:*) 1130*9cc867d0Sdan UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` 113171eb93eaSdrh if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1132*9cc867d0Sdan echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" 113371eb93eaSdrh else 1134*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" 113571eb93eaSdrh fi 11367f19c02fSvapier exit ;; 11377f19c02fSvapier i*86:*:5:[678]*) 11387f19c02fSvapier # UnixWare 7.x, OpenUNIX and OpenServer 6. 113971eb93eaSdrh case `/bin/uname -X | grep "^Machine"` in 114071eb93eaSdrh *486*) UNAME_MACHINE=i486 ;; 114171eb93eaSdrh *Pentium) UNAME_MACHINE=i586 ;; 114271eb93eaSdrh *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 114371eb93eaSdrh esac 1144*9cc867d0Sdan echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}" 11457f19c02fSvapier exit ;; 114671eb93eaSdrh i*86:*:3.2:*) 114771eb93eaSdrh if test -f /usr/options/cb.name; then 114871eb93eaSdrh UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1149*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL" 115071eb93eaSdrh elif /bin/uname -X 2>/dev/null >/dev/null ; then 115162507b65Sa.rottmann UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 115262507b65Sa.rottmann (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 115362507b65Sa.rottmann (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 115471eb93eaSdrh && UNAME_MACHINE=i586 115562507b65Sa.rottmann (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 115671eb93eaSdrh && UNAME_MACHINE=i686 115762507b65Sa.rottmann (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 115871eb93eaSdrh && UNAME_MACHINE=i686 1159*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" 116071eb93eaSdrh else 1161*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-sysv32 116271eb93eaSdrh fi 11637f19c02fSvapier exit ;; 116471eb93eaSdrh pc:*:*:*) 116571eb93eaSdrh # Left here for compatibility: 116671eb93eaSdrh # uname -m prints for DJGPP always 'pc', but it prints nothing about 1167*9cc867d0Sdan # the processor, so we play safe by assuming i586. 1168*9cc867d0Sdan # Note: whatever this is, it MUST be the same as what config.sub 1169*9cc867d0Sdan # prints for the "djgpp" host, or else GDB configure will decide that 1170*9cc867d0Sdan # this is a cross-build. 1171*9cc867d0Sdan echo i586-pc-msdosdjgpp 11727f19c02fSvapier exit ;; 117371eb93eaSdrh Intel:Mach:3*:*) 117471eb93eaSdrh echo i386-pc-mach3 11757f19c02fSvapier exit ;; 117671eb93eaSdrh paragon:*:*:*) 117771eb93eaSdrh echo i860-intel-osf1 11787f19c02fSvapier exit ;; 117971eb93eaSdrh i860:*:4.*:*) # i860-SVR4 118071eb93eaSdrh if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1181*9cc867d0Sdan echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 118271eb93eaSdrh else # Add other i860-SVR4 vendors below as they are discovered. 1183*9cc867d0Sdan echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 118471eb93eaSdrh fi 11857f19c02fSvapier exit ;; 118671eb93eaSdrh mini*:CTIX:SYS*5:*) 118771eb93eaSdrh # "miniframe" 118871eb93eaSdrh echo m68010-convergent-sysv 11897f19c02fSvapier exit ;; 119062507b65Sa.rottmann mc68k:UNIX:SYSTEM5:3.51m) 119162507b65Sa.rottmann echo m68k-convergent-sysv 11927f19c02fSvapier exit ;; 119362507b65Sa.rottmann M680?0:D-NIX:5.3:*) 119462507b65Sa.rottmann echo m68k-diab-dnix 11957f19c02fSvapier exit ;; 11967f19c02fSvapier M68*:*:R3V[5678]*:*) 11977f19c02fSvapier test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 11987f19c02fSvapier 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) 119971eb93eaSdrh OS_REL='' 120071eb93eaSdrh test -r /etc/.relid \ 120171eb93eaSdrh && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 120271eb93eaSdrh /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1203*9cc867d0Sdan && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } 120471eb93eaSdrh /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1205*9cc867d0Sdan && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 120671eb93eaSdrh 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 120771eb93eaSdrh /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 12087f19c02fSvapier && { echo i486-ncr-sysv4; exit; } ;; 1209*9cc867d0Sdan NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1210*9cc867d0Sdan OS_REL='.3' 1211*9cc867d0Sdan test -r /etc/.relid \ 1212*9cc867d0Sdan && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1213*9cc867d0Sdan /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1214*9cc867d0Sdan && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } 1215*9cc867d0Sdan /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1216*9cc867d0Sdan && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } 1217*9cc867d0Sdan /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1218*9cc867d0Sdan && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 121971eb93eaSdrh m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1220*9cc867d0Sdan echo m68k-unknown-lynxos"$UNAME_RELEASE" 12217f19c02fSvapier exit ;; 122271eb93eaSdrh mc68030:UNIX_System_V:4.*:*) 122371eb93eaSdrh echo m68k-atari-sysv4 12247f19c02fSvapier exit ;; 122571eb93eaSdrh TSUNAMI:LynxOS:2.*:*) 1226*9cc867d0Sdan echo sparc-unknown-lynxos"$UNAME_RELEASE" 12277f19c02fSvapier exit ;; 122871eb93eaSdrh rs6000:LynxOS:2.*:*) 1229*9cc867d0Sdan echo rs6000-unknown-lynxos"$UNAME_RELEASE" 12307f19c02fSvapier exit ;; 1231*9cc867d0Sdan PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1232*9cc867d0Sdan echo powerpc-unknown-lynxos"$UNAME_RELEASE" 12337f19c02fSvapier exit ;; 123471eb93eaSdrh SM[BE]S:UNIX_SV:*:*) 1235*9cc867d0Sdan echo mips-dde-sysv"$UNAME_RELEASE" 12367f19c02fSvapier exit ;; 123771eb93eaSdrh RM*:ReliantUNIX-*:*:*) 123871eb93eaSdrh echo mips-sni-sysv4 12397f19c02fSvapier exit ;; 124071eb93eaSdrh RM*:SINIX-*:*:*) 124171eb93eaSdrh echo mips-sni-sysv4 12427f19c02fSvapier exit ;; 124371eb93eaSdrh *:SINIX-*:*:*) 124471eb93eaSdrh if uname -p 2>/dev/null >/dev/null ; then 124571eb93eaSdrh UNAME_MACHINE=`(uname -p) 2>/dev/null` 1246*9cc867d0Sdan echo "$UNAME_MACHINE"-sni-sysv4 124771eb93eaSdrh else 124871eb93eaSdrh echo ns32k-sni-sysv 124971eb93eaSdrh fi 12507f19c02fSvapier exit ;; 125171eb93eaSdrh PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 125271eb93eaSdrh # says <[email protected]> 125371eb93eaSdrh echo i586-unisys-sysv4 12547f19c02fSvapier exit ;; 125571eb93eaSdrh *:UNIX_System_V:4*:FTX*) 125671eb93eaSdrh # From Gerald Hewes <[email protected]>. 125771eb93eaSdrh # How about differentiating between stratus architectures? -djm 125871eb93eaSdrh echo hppa1.1-stratus-sysv4 12597f19c02fSvapier exit ;; 126071eb93eaSdrh *:*:*:FTX*) 126171eb93eaSdrh # From [email protected]. 126271eb93eaSdrh echo i860-stratus-sysv4 12637f19c02fSvapier exit ;; 12647f19c02fSvapier i*86:VOS:*:*) 12657f19c02fSvapier # From [email protected]. 1266*9cc867d0Sdan echo "$UNAME_MACHINE"-stratus-vos 12677f19c02fSvapier exit ;; 126871eb93eaSdrh *:VOS:*:*) 126971eb93eaSdrh # From [email protected]. 127071eb93eaSdrh echo hppa1.1-stratus-vos 12717f19c02fSvapier exit ;; 127271eb93eaSdrh mc68*:A/UX:*:*) 1273*9cc867d0Sdan echo m68k-apple-aux"$UNAME_RELEASE" 12747f19c02fSvapier exit ;; 127571eb93eaSdrh news*:NEWS-OS:6*:*) 127671eb93eaSdrh echo mips-sony-newsos6 12777f19c02fSvapier exit ;; 127871eb93eaSdrh R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 127971eb93eaSdrh if [ -d /usr/nec ]; then 1280*9cc867d0Sdan echo mips-nec-sysv"$UNAME_RELEASE" 128171eb93eaSdrh else 1282*9cc867d0Sdan echo mips-unknown-sysv"$UNAME_RELEASE" 128371eb93eaSdrh fi 12847f19c02fSvapier exit ;; 128571eb93eaSdrh BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 128671eb93eaSdrh echo powerpc-be-beos 12877f19c02fSvapier exit ;; 128871eb93eaSdrh BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 128971eb93eaSdrh echo powerpc-apple-beos 12907f19c02fSvapier exit ;; 129171eb93eaSdrh BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 129271eb93eaSdrh echo i586-pc-beos 12937f19c02fSvapier exit ;; 1294*9cc867d0Sdan BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1295*9cc867d0Sdan echo i586-pc-haiku 1296*9cc867d0Sdan exit ;; 1297*9cc867d0Sdan x86_64:Haiku:*:*) 1298*9cc867d0Sdan echo x86_64-unknown-haiku 1299*9cc867d0Sdan exit ;; 130071eb93eaSdrh SX-4:SUPER-UX:*:*) 1301*9cc867d0Sdan echo sx4-nec-superux"$UNAME_RELEASE" 13027f19c02fSvapier exit ;; 130371eb93eaSdrh SX-5:SUPER-UX:*:*) 1304*9cc867d0Sdan echo sx5-nec-superux"$UNAME_RELEASE" 13057f19c02fSvapier exit ;; 130662507b65Sa.rottmann SX-6:SUPER-UX:*:*) 1307*9cc867d0Sdan echo sx6-nec-superux"$UNAME_RELEASE" 13087f19c02fSvapier exit ;; 13097f19c02fSvapier SX-7:SUPER-UX:*:*) 1310*9cc867d0Sdan echo sx7-nec-superux"$UNAME_RELEASE" 13117f19c02fSvapier exit ;; 13127f19c02fSvapier SX-8:SUPER-UX:*:*) 1313*9cc867d0Sdan echo sx8-nec-superux"$UNAME_RELEASE" 13147f19c02fSvapier exit ;; 13157f19c02fSvapier SX-8R:SUPER-UX:*:*) 1316*9cc867d0Sdan echo sx8r-nec-superux"$UNAME_RELEASE" 1317*9cc867d0Sdan exit ;; 1318*9cc867d0Sdan SX-ACE:SUPER-UX:*:*) 1319*9cc867d0Sdan echo sxace-nec-superux"$UNAME_RELEASE" 13207f19c02fSvapier exit ;; 132171eb93eaSdrh Power*:Rhapsody:*:*) 1322*9cc867d0Sdan echo powerpc-apple-rhapsody"$UNAME_RELEASE" 13237f19c02fSvapier exit ;; 132471eb93eaSdrh *:Rhapsody:*:*) 1325*9cc867d0Sdan echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" 13267f19c02fSvapier exit ;; 132771eb93eaSdrh *:Darwin:*:*) 1328*9cc867d0Sdan UNAME_PROCESSOR=`uname -p` 13297f19c02fSvapier case $UNAME_PROCESSOR in 13307f19c02fSvapier unknown) UNAME_PROCESSOR=powerpc ;; 133162507b65Sa.rottmann esac 1332*9cc867d0Sdan if command -v xcode-select > /dev/null 2> /dev/null && \ 1333*9cc867d0Sdan ! xcode-select --print-path > /dev/null 2> /dev/null ; then 1334*9cc867d0Sdan # Avoid executing cc if there is no toolchain installed as 1335*9cc867d0Sdan # cc will be a stub that puts up a graphical alert 1336*9cc867d0Sdan # prompting the user to install developer tools. 1337*9cc867d0Sdan CC_FOR_BUILD=no_compiler_found 1338*9cc867d0Sdan else 1339*9cc867d0Sdan set_cc_for_build 1340*9cc867d0Sdan fi 1341*9cc867d0Sdan if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 1342*9cc867d0Sdan if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1343*9cc867d0Sdan (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1344*9cc867d0Sdan grep IS_64BIT_ARCH >/dev/null 1345*9cc867d0Sdan then 1346*9cc867d0Sdan case $UNAME_PROCESSOR in 1347*9cc867d0Sdan i386) UNAME_PROCESSOR=x86_64 ;; 1348*9cc867d0Sdan powerpc) UNAME_PROCESSOR=powerpc64 ;; 1349*9cc867d0Sdan esac 1350*9cc867d0Sdan fi 1351*9cc867d0Sdan # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc 1352*9cc867d0Sdan if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ 1353*9cc867d0Sdan (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1354*9cc867d0Sdan grep IS_PPC >/dev/null 1355*9cc867d0Sdan then 1356*9cc867d0Sdan UNAME_PROCESSOR=powerpc 1357*9cc867d0Sdan fi 1358*9cc867d0Sdan elif test "$UNAME_PROCESSOR" = i386 ; then 1359*9cc867d0Sdan # uname -m returns i386 or x86_64 1360*9cc867d0Sdan UNAME_PROCESSOR=$UNAME_MACHINE 1361*9cc867d0Sdan fi 1362*9cc867d0Sdan echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" 13637f19c02fSvapier exit ;; 136471eb93eaSdrh *:procnto*:*:* | *:QNX:[0123456789]*:*) 136562507b65Sa.rottmann UNAME_PROCESSOR=`uname -p` 1366*9cc867d0Sdan if test "$UNAME_PROCESSOR" = x86; then 136762507b65Sa.rottmann UNAME_PROCESSOR=i386 136871eb93eaSdrh UNAME_MACHINE=pc 136971eb93eaSdrh fi 1370*9cc867d0Sdan echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" 13717f19c02fSvapier exit ;; 137271eb93eaSdrh *:QNX:*:4*) 137371eb93eaSdrh echo i386-pc-qnx 13747f19c02fSvapier exit ;; 1375*9cc867d0Sdan NEO-*:NONSTOP_KERNEL:*:*) 1376*9cc867d0Sdan echo neo-tandem-nsk"$UNAME_RELEASE" 13777f19c02fSvapier exit ;; 1378*9cc867d0Sdan NSE-*:NONSTOP_KERNEL:*:*) 1379*9cc867d0Sdan echo nse-tandem-nsk"$UNAME_RELEASE" 1380*9cc867d0Sdan exit ;; 1381*9cc867d0Sdan NSR-*:NONSTOP_KERNEL:*:*) 1382*9cc867d0Sdan echo nsr-tandem-nsk"$UNAME_RELEASE" 1383*9cc867d0Sdan exit ;; 1384*9cc867d0Sdan NSV-*:NONSTOP_KERNEL:*:*) 1385*9cc867d0Sdan echo nsv-tandem-nsk"$UNAME_RELEASE" 1386*9cc867d0Sdan exit ;; 1387*9cc867d0Sdan NSX-*:NONSTOP_KERNEL:*:*) 1388*9cc867d0Sdan echo nsx-tandem-nsk"$UNAME_RELEASE" 13897f19c02fSvapier exit ;; 139071eb93eaSdrh *:NonStop-UX:*:*) 139171eb93eaSdrh echo mips-compaq-nonstopux 13927f19c02fSvapier exit ;; 139371eb93eaSdrh BS2000:POSIX*:*:*) 139471eb93eaSdrh echo bs2000-siemens-sysv 13957f19c02fSvapier exit ;; 139671eb93eaSdrh DS/*:UNIX_System_V:*:*) 1397*9cc867d0Sdan echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" 13987f19c02fSvapier exit ;; 139971eb93eaSdrh *:Plan9:*:*) 140071eb93eaSdrh # "uname -m" is not consistent, so use $cputype instead. 386 140171eb93eaSdrh # is converted to i386 for consistency with other x86 140271eb93eaSdrh # operating systems. 1403*9cc867d0Sdan # shellcheck disable=SC2154 1404*9cc867d0Sdan if test "$cputype" = 386; then 140571eb93eaSdrh UNAME_MACHINE=i386 140671eb93eaSdrh else 140771eb93eaSdrh UNAME_MACHINE="$cputype" 140871eb93eaSdrh fi 1409*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-plan9 14107f19c02fSvapier exit ;; 141171eb93eaSdrh *:TOPS-10:*:*) 141271eb93eaSdrh echo pdp10-unknown-tops10 14137f19c02fSvapier exit ;; 141471eb93eaSdrh *:TENEX:*:*) 141571eb93eaSdrh echo pdp10-unknown-tenex 14167f19c02fSvapier exit ;; 141771eb93eaSdrh KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 141871eb93eaSdrh echo pdp10-dec-tops20 14197f19c02fSvapier exit ;; 142071eb93eaSdrh XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 142171eb93eaSdrh echo pdp10-xkl-tops20 14227f19c02fSvapier exit ;; 142371eb93eaSdrh *:TOPS-20:*:*) 142471eb93eaSdrh echo pdp10-unknown-tops20 14257f19c02fSvapier exit ;; 142671eb93eaSdrh *:ITS:*:*) 142771eb93eaSdrh echo pdp10-unknown-its 14287f19c02fSvapier exit ;; 1429964dbb1eSa.rottmann SEI:*:*:SEIUX) 1430*9cc867d0Sdan echo mips-sei-seiux"$UNAME_RELEASE" 14317f19c02fSvapier exit ;; 14327f19c02fSvapier *:DragonFly:*:*) 1433*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" 14347f19c02fSvapier exit ;; 14357f19c02fSvapier *:*VMS:*:*) 14367f19c02fSvapier UNAME_MACHINE=`(uname -p) 2>/dev/null` 1437*9cc867d0Sdan case "$UNAME_MACHINE" in 14387f19c02fSvapier A*) echo alpha-dec-vms ; exit ;; 14397f19c02fSvapier I*) echo ia64-dec-vms ; exit ;; 14407f19c02fSvapier V*) echo vax-dec-vms ; exit ;; 14417f19c02fSvapier esac ;; 14427f19c02fSvapier *:XENIX:*:SysV) 14437f19c02fSvapier echo i386-pc-xenix 14447f19c02fSvapier exit ;; 14457f19c02fSvapier i*86:skyos:*:*) 1446*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" 14477f19c02fSvapier exit ;; 14487f19c02fSvapier i*86:rdos:*:*) 1449*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-rdos 1450*9cc867d0Sdan exit ;; 1451*9cc867d0Sdan i*86:AROS:*:*) 1452*9cc867d0Sdan echo "$UNAME_MACHINE"-pc-aros 1453*9cc867d0Sdan exit ;; 1454*9cc867d0Sdan x86_64:VMkernel:*:*) 1455*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-esx 1456*9cc867d0Sdan exit ;; 1457*9cc867d0Sdan amd64:Isilon\ OneFS:*:*) 1458*9cc867d0Sdan echo x86_64-unknown-onefs 1459*9cc867d0Sdan exit ;; 1460*9cc867d0Sdan *:Unleashed:*:*) 1461*9cc867d0Sdan echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE" 14627f19c02fSvapier exit ;; 146371eb93eaSdrhesac 146471eb93eaSdrh 1465*9cc867d0Sdan# No uname command or uname output not recognized. 1466*9cc867d0Sdanset_cc_for_build 1467*9cc867d0Sdancat > "$dummy.c" <<EOF 146871eb93eaSdrh#ifdef _SEQUENT_ 146971eb93eaSdrh#include <sys/types.h> 147071eb93eaSdrh#include <sys/utsname.h> 147171eb93eaSdrh#endif 1472*9cc867d0Sdan#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) 1473*9cc867d0Sdan#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) 1474*9cc867d0Sdan#include <signal.h> 1475*9cc867d0Sdan#if defined(_SIZE_T_) || defined(SIGLOST) 1476*9cc867d0Sdan#include <sys/utsname.h> 1477*9cc867d0Sdan#endif 1478*9cc867d0Sdan#endif 1479*9cc867d0Sdan#endif 148071eb93eaSdrhmain () 148171eb93eaSdrh{ 148271eb93eaSdrh#if defined (sony) 148371eb93eaSdrh#if defined (MIPSEB) 148471eb93eaSdrh /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 148571eb93eaSdrh I don't know.... */ 148671eb93eaSdrh printf ("mips-sony-bsd\n"); exit (0); 148771eb93eaSdrh#else 148871eb93eaSdrh#include <sys/param.h> 148971eb93eaSdrh printf ("m68k-sony-newsos%s\n", 149071eb93eaSdrh#ifdef NEWSOS4 149171eb93eaSdrh "4" 149271eb93eaSdrh#else 149371eb93eaSdrh "" 149471eb93eaSdrh#endif 149571eb93eaSdrh ); exit (0); 149671eb93eaSdrh#endif 149771eb93eaSdrh#endif 149871eb93eaSdrh 149971eb93eaSdrh#if defined (NeXT) 150071eb93eaSdrh#if !defined (__ARCHITECTURE__) 150171eb93eaSdrh#define __ARCHITECTURE__ "m68k" 150271eb93eaSdrh#endif 150371eb93eaSdrh int version; 150471eb93eaSdrh version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 150571eb93eaSdrh if (version < 4) 150671eb93eaSdrh printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 150771eb93eaSdrh else 150871eb93eaSdrh printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 150971eb93eaSdrh exit (0); 151071eb93eaSdrh#endif 151171eb93eaSdrh 151271eb93eaSdrh#if defined (MULTIMAX) || defined (n16) 151371eb93eaSdrh#if defined (UMAXV) 151471eb93eaSdrh printf ("ns32k-encore-sysv\n"); exit (0); 151571eb93eaSdrh#else 151671eb93eaSdrh#if defined (CMU) 151771eb93eaSdrh printf ("ns32k-encore-mach\n"); exit (0); 151871eb93eaSdrh#else 151971eb93eaSdrh printf ("ns32k-encore-bsd\n"); exit (0); 152071eb93eaSdrh#endif 152171eb93eaSdrh#endif 152271eb93eaSdrh#endif 152371eb93eaSdrh 152471eb93eaSdrh#if defined (__386BSD__) 152571eb93eaSdrh printf ("i386-pc-bsd\n"); exit (0); 152671eb93eaSdrh#endif 152771eb93eaSdrh 152871eb93eaSdrh#if defined (sequent) 152971eb93eaSdrh#if defined (i386) 153071eb93eaSdrh printf ("i386-sequent-dynix\n"); exit (0); 153171eb93eaSdrh#endif 153271eb93eaSdrh#if defined (ns32000) 153371eb93eaSdrh printf ("ns32k-sequent-dynix\n"); exit (0); 153471eb93eaSdrh#endif 153571eb93eaSdrh#endif 153671eb93eaSdrh 153771eb93eaSdrh#if defined (_SEQUENT_) 153871eb93eaSdrh struct utsname un; 153971eb93eaSdrh 154071eb93eaSdrh uname(&un); 154171eb93eaSdrh if (strncmp(un.version, "V2", 2) == 0) { 154271eb93eaSdrh printf ("i386-sequent-ptx2\n"); exit (0); 154371eb93eaSdrh } 154471eb93eaSdrh if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 154571eb93eaSdrh printf ("i386-sequent-ptx1\n"); exit (0); 154671eb93eaSdrh } 154771eb93eaSdrh printf ("i386-sequent-ptx\n"); exit (0); 154871eb93eaSdrh#endif 154971eb93eaSdrh 155071eb93eaSdrh#if defined (vax) 155171eb93eaSdrh#if !defined (ultrix) 155271eb93eaSdrh#include <sys/param.h> 155371eb93eaSdrh#if defined (BSD) 155471eb93eaSdrh#if BSD == 43 155571eb93eaSdrh printf ("vax-dec-bsd4.3\n"); exit (0); 155671eb93eaSdrh#else 155771eb93eaSdrh#if BSD == 199006 155871eb93eaSdrh printf ("vax-dec-bsd4.3reno\n"); exit (0); 155971eb93eaSdrh#else 156071eb93eaSdrh printf ("vax-dec-bsd\n"); exit (0); 156171eb93eaSdrh#endif 156271eb93eaSdrh#endif 156371eb93eaSdrh#else 156471eb93eaSdrh printf ("vax-dec-bsd\n"); exit (0); 156571eb93eaSdrh#endif 156671eb93eaSdrh#else 1567*9cc867d0Sdan#if defined(_SIZE_T_) || defined(SIGLOST) 1568*9cc867d0Sdan struct utsname un; 1569*9cc867d0Sdan uname (&un); 1570*9cc867d0Sdan printf ("vax-dec-ultrix%s\n", un.release); exit (0); 1571*9cc867d0Sdan#else 157271eb93eaSdrh printf ("vax-dec-ultrix\n"); exit (0); 157371eb93eaSdrh#endif 157471eb93eaSdrh#endif 1575*9cc867d0Sdan#endif 1576*9cc867d0Sdan#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) 1577*9cc867d0Sdan#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) 1578*9cc867d0Sdan#if defined(_SIZE_T_) || defined(SIGLOST) 1579*9cc867d0Sdan struct utsname *un; 1580*9cc867d0Sdan uname (&un); 1581*9cc867d0Sdan printf ("mips-dec-ultrix%s\n", un.release); exit (0); 1582*9cc867d0Sdan#else 1583*9cc867d0Sdan printf ("mips-dec-ultrix\n"); exit (0); 1584*9cc867d0Sdan#endif 1585*9cc867d0Sdan#endif 1586*9cc867d0Sdan#endif 158771eb93eaSdrh 158871eb93eaSdrh#if defined (alliant) && defined (i860) 158971eb93eaSdrh printf ("i860-alliant-bsd\n"); exit (0); 159071eb93eaSdrh#endif 159171eb93eaSdrh 159271eb93eaSdrh exit (1); 159371eb93eaSdrh} 159471eb93eaSdrhEOF 159571eb93eaSdrh 1596*9cc867d0Sdan$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` && 15977f19c02fSvapier { echo "$SYSTEM_NAME"; exit; } 159871eb93eaSdrh 159971eb93eaSdrh# Apollos put the system type in the environment. 1600*9cc867d0Sdantest -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } 160171eb93eaSdrh 1602*9cc867d0Sdanecho "$0: unable to guess system type" >&2 160371eb93eaSdrh 1604*9cc867d0Sdancase "$UNAME_MACHINE:$UNAME_SYSTEM" in 1605*9cc867d0Sdan mips:Linux | mips64:Linux) 1606*9cc867d0Sdan # If we got here on MIPS GNU/Linux, output extra information. 1607*9cc867d0Sdan cat >&2 <<EOF 160871eb93eaSdrh 1609*9cc867d0SdanNOTE: MIPS GNU/Linux systems require a C compiler to fully recognize 1610*9cc867d0Sdanthe system type. Please install a C compiler and try again. 1611*9cc867d0SdanEOF 1612*9cc867d0Sdan ;; 161371eb93eaSdrhesac 161471eb93eaSdrh 161571eb93eaSdrhcat >&2 <<EOF 161671eb93eaSdrh 1617*9cc867d0SdanThis script (version $timestamp), has failed to recognize the 1618*9cc867d0Sdanoperating system you are using. If your script is old, overwrite *all* 1619*9cc867d0Sdancopies of config.guess and config.sub with the latest versions from: 162071eb93eaSdrh 1621*9cc867d0Sdan https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 16227f19c02fSvapierand 1623*9cc867d0Sdan https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 162471eb93eaSdrh 1625*9cc867d0SdanIf $0 has already been updated, send the following data and any 1626*9cc867d0Sdaninformation you think might be pertinent to [email protected] to 1627*9cc867d0Sdanprovide the necessary information to handle your system. 162871eb93eaSdrh 162971eb93eaSdrhconfig.guess timestamp = $timestamp 163071eb93eaSdrh 163171eb93eaSdrhuname -m = `(uname -m) 2>/dev/null || echo unknown` 163271eb93eaSdrhuname -r = `(uname -r) 2>/dev/null || echo unknown` 163371eb93eaSdrhuname -s = `(uname -s) 2>/dev/null || echo unknown` 163471eb93eaSdrhuname -v = `(uname -v) 2>/dev/null || echo unknown` 163571eb93eaSdrh 163671eb93eaSdrh/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 163771eb93eaSdrh/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 163871eb93eaSdrh 163971eb93eaSdrhhostinfo = `(hostinfo) 2>/dev/null` 164071eb93eaSdrh/bin/universe = `(/bin/universe) 2>/dev/null` 164171eb93eaSdrh/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 164271eb93eaSdrh/bin/arch = `(/bin/arch) 2>/dev/null` 164371eb93eaSdrh/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 164471eb93eaSdrh/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 164571eb93eaSdrh 1646*9cc867d0SdanUNAME_MACHINE = "$UNAME_MACHINE" 1647*9cc867d0SdanUNAME_RELEASE = "$UNAME_RELEASE" 1648*9cc867d0SdanUNAME_SYSTEM = "$UNAME_SYSTEM" 1649*9cc867d0SdanUNAME_VERSION = "$UNAME_VERSION" 165071eb93eaSdrhEOF 165171eb93eaSdrh 165271eb93eaSdrhexit 1 165371eb93eaSdrh 165471eb93eaSdrh# Local variables: 1655*9cc867d0Sdan# eval: (add-hook 'before-save-hook 'time-stamp) 165671eb93eaSdrh# time-stamp-start: "timestamp='" 165771eb93eaSdrh# time-stamp-format: "%:y-%02m-%02d" 165871eb93eaSdrh# time-stamp-end: "'" 165971eb93eaSdrh# End: 1660