Commit 3ed39e15 authored by moto's avatar moto Committed by Facebook GitHub Bot
Browse files

Update GNU config files to support `arm64-apple` system (#2307)

Summary:
This commit
1. Updates the config.guess and config.sub files and
2. applies them to all the third party libraries that use them.

This resolves the following build failure on M1 mac with newer SDK.

On MacBookPro with M1 chip, with the recent OS update, something
about the development environment has been changed (probably newer
version of XCode) and the build stopeed working with the following
errors from third party dependencies.

```
checking build system type... Invalid configuration ‘arm64-apple-darwin20.0.0': machine ‘arm64-apple' not recognized
```

note: config files are taken from https://www.gnu.org/software/gettext/manual/html_node/config_002eguess.html

Pull Request resolved: https://github.com/pytorch/audio/pull/2307

Reviewed By: nateanl

Differential Revision: D35318273

Pulled By: mthrok

fbshipit-source-id: 746ac51dd1816767aa78b88445f76a29acfd29e8
parent 6a418a89
...@@ -2,6 +2,7 @@ include(ExternalProject) ...@@ -2,6 +2,7 @@ include(ExternalProject)
set(INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../install) set(INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../install)
set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../archives) set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../archives)
set(patch_dir ${PROJECT_SOURCE_DIR}/third_party/patches)
# To pass custom environment variables to ExternalProject_Add command, # To pass custom environment variables to ExternalProject_Add command,
# we need to do `${CMAKE_COMMAND} -E env ${envs} <COMMANAD>`. # we need to do `${CMAKE_COMMAND} -E env ${envs} <COMMANAD>`.
...@@ -24,6 +25,7 @@ ExternalProject_Add(lzma- ...@@ -24,6 +25,7 @@ ExternalProject_Add(lzma-
URL https://tukaani.org/xz/xz-5.2.5.tar.gz URL https://tukaani.org/xz/xz-5.2.5.tar.gz
URL_HASH SHA256=f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10 URL_HASH SHA256=f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10
BUILD_BYPRODUCTS ${LZMA_LIBRARIES} BUILD_BYPRODUCTS ${LZMA_LIBRARIES}
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/lzma-/build-aux/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lzma-/configure --prefix=${INSTALL_DIR} --disable-xz --disable-xzdec --disable-lzmadec --disable-lzmainfo --disable-lzma-links --disable-scripts --disable-doc --enable-static --disable-shared CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lzma-/configure --prefix=${INSTALL_DIR} --disable-xz --disable-xzdec --disable-lzmadec --disable-lzmainfo --disable-lzma-links --disable-scripts --disable-doc --enable-static --disable-shared
BUILD_COMMAND ${CMAKE_COMMAND} -E env ${envs} make VERBOSE=1 BUILD_COMMAND ${CMAKE_COMMAND} -E env ${envs} make VERBOSE=1
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
......
#! /bin/sh #! /bin/sh
# Attempt to guess a canonical system name. # Attempt to guess a canonical system name.
# Copyright 1992-2021 Free Software Foundation, Inc. # Copyright 1992-2022 Free Software Foundation, Inc.
timestamp='2021-05-24' # shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-01-09'
# This file is free software; you can redistribute it and/or modify it # This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by # under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or # the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, but # This program is distributed in the hope that it will be useful, but
...@@ -32,7 +34,15 @@ timestamp='2021-05-24' ...@@ -32,7 +34,15 @@ timestamp='2021-05-24'
# Please send patches to <config-patches@gnu.org>. # Please send patches to <config-patches@gnu.org>.
me=$(echo "$0" | sed -e 's,.*/,,') # The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX. However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\ usage="\
Usage: $0 [OPTION] Usage: $0 [OPTION]
...@@ -50,7 +60,7 @@ version="\ ...@@ -50,7 +60,7 @@ version="\
GNU config.guess ($timestamp) GNU config.guess ($timestamp)
Originally written by Per Bothner. Originally written by Per Bothner.
Copyright 1992-2021 Free Software Foundation, Inc. Copyright 1992-2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
...@@ -84,6 +94,9 @@ if test $# != 0; then ...@@ -84,6 +94,9 @@ if test $# != 0; then
exit 1 exit 1
fi fi
# Just in case it came from the environment.
GUESS=
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires # compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a # temporary files to be created and, as you can see below, it is a
...@@ -102,8 +115,8 @@ set_cc_for_build() { ...@@ -102,8 +115,8 @@ set_cc_for_build() {
# prevent multiple calls if $tmp is already set # prevent multiple calls if $tmp is already set
test "$tmp" && return 0 test "$tmp" && return 0
: "${TMPDIR=/tmp}" : "${TMPDIR=/tmp}"
# shellcheck disable=SC2039 # shellcheck disable=SC2039,SC3028
{ tmp=$( (umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null) && test -n "$tmp" && test -d "$tmp" ; } || { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
...@@ -112,7 +125,7 @@ set_cc_for_build() { ...@@ -112,7 +125,7 @@ set_cc_for_build() {
,,) echo "int x;" > "$dummy.c" ,,) echo "int x;" > "$dummy.c"
for driver in cc gcc c89 c99 ; do for driver in cc gcc c89 c99 ; do
if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
CC_FOR_BUILD="$driver" CC_FOR_BUILD=$driver
break break
fi fi
done done
...@@ -131,10 +144,10 @@ if test -f /.attbin/uname ; then ...@@ -131,10 +144,10 @@ if test -f /.attbin/uname ; then
PATH=$PATH:/.attbin ; export PATH PATH=$PATH:/.attbin ; export PATH
fi fi
UNAME_MACHINE=$( (uname -m) 2>/dev/null) || UNAME_MACHINE=unknown UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=$( (uname -r) 2>/dev/null) || UNAME_RELEASE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=$( (uname -s) 2>/dev/null) || UNAME_SYSTEM=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=$( (uname -v) 2>/dev/null) || UNAME_VERSION=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
case $UNAME_SYSTEM in case $UNAME_SYSTEM in
Linux|GNU|GNU/*) Linux|GNU|GNU/*)
...@@ -157,7 +170,8 @@ Linux|GNU|GNU/*) ...@@ -157,7 +170,8 @@ Linux|GNU|GNU/*)
#endif #endif
#endif #endif
EOF EOF
eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g')" cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
eval "$cc_set_libc"
# Second heuristic to detect musl libc. # Second heuristic to detect musl libc.
if [ "$LIBC" = unknown ] && if [ "$LIBC" = unknown ] &&
...@@ -188,10 +202,10 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -188,10 +202,10 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
# #
# Note: NetBSD doesn't particularly care about the vendor # Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown". # portion of the name. We always set it to "unknown".
UNAME_MACHINE_ARCH=$( (uname -p 2>/dev/null || \ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
/usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
echo unknown)) echo unknown)`
case $UNAME_MACHINE_ARCH in case $UNAME_MACHINE_ARCH in
aarch64eb) machine=aarch64_be-unknown ;; aarch64eb) machine=aarch64_be-unknown ;;
armeb) machine=armeb-unknown ;; armeb) machine=armeb-unknown ;;
...@@ -200,11 +214,11 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -200,11 +214,11 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
sh3eb) machine=sh-unknown ;; sh3eb) machine=sh-unknown ;;
sh5el) machine=sh5le-unknown ;; sh5el) machine=sh5le-unknown ;;
earmv*) earmv*)
arch=$(echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,') arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
endian=$(echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p') endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
machine="${arch}${endian}"-unknown machine=${arch}${endian}-unknown
;; ;;
*) machine="$UNAME_MACHINE_ARCH"-unknown ;; *) machine=$UNAME_MACHINE_ARCH-unknown ;;
esac esac
# The Operating System including object format, if it has switched # The Operating System including object format, if it has switched
# to ELF recently (or will in the future) and ABI. # to ELF recently (or will in the future) and ABI.
...@@ -232,7 +246,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -232,7 +246,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
case $UNAME_MACHINE_ARCH in case $UNAME_MACHINE_ARCH in
earm*) earm*)
expr='s/^earmv[0-9]/-eabi/;s/eb$//' expr='s/^earmv[0-9]/-eabi/;s/eb$//'
abi=$(echo "$UNAME_MACHINE_ARCH" | sed -e "$expr") abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
;; ;;
esac esac
# The OS release # The OS release
...@@ -245,76 +259,76 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -245,76 +259,76 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
release='-gnu' release='-gnu'
;; ;;
*) *)
release=$(echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2) release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
;; ;;
esac esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form: # contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "$machine-${os}${release}${abi-}" GUESS=$machine-${os}${release}${abi-}
exit ;; ;;
*:Bitrig:*:*) *:Bitrig:*:*)
UNAME_MACHINE_ARCH=$(arch | sed 's/Bitrig.//') UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
exit ;; ;;
*:OpenBSD:*:*) *:OpenBSD:*:*)
UNAME_MACHINE_ARCH=$(arch | sed 's/OpenBSD.//') UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
exit ;; ;;
*:SecBSD:*:*) *:SecBSD:*:*)
UNAME_MACHINE_ARCH=$(arch | sed 's/SecBSD.//') UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
echo "$UNAME_MACHINE_ARCH"-unknown-secbsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
exit ;; ;;
*:LibertyBSD:*:*) *:LibertyBSD:*:*)
UNAME_MACHINE_ARCH=$(arch | sed 's/^.*BSD\.//') UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
exit ;; ;;
*:MidnightBSD:*:*) *:MidnightBSD:*:*)
echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
exit ;; ;;
*:ekkoBSD:*:*) *:ekkoBSD:*:*)
echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
exit ;; ;;
*:SolidBSD:*:*) *:SolidBSD:*:*)
echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
exit ;; ;;
*:OS108:*:*) *:OS108:*:*)
echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
exit ;; ;;
macppc:MirBSD:*:*) macppc:MirBSD:*:*)
echo powerpc-unknown-mirbsd"$UNAME_RELEASE" GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
exit ;; ;;
*:MirBSD:*:*) *:MirBSD:*:*)
echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
exit ;; ;;
*:Sortix:*:*) *:Sortix:*:*)
echo "$UNAME_MACHINE"-unknown-sortix GUESS=$UNAME_MACHINE-unknown-sortix
exit ;; ;;
*:Twizzler:*:*) *:Twizzler:*:*)
echo "$UNAME_MACHINE"-unknown-twizzler GUESS=$UNAME_MACHINE-unknown-twizzler
exit ;; ;;
*:Redox:*:*) *:Redox:*:*)
echo "$UNAME_MACHINE"-unknown-redox GUESS=$UNAME_MACHINE-unknown-redox
exit ;; ;;
mips:OSF1:*.*) mips:OSF1:*.*)
echo mips-dec-osf1 GUESS=mips-dec-osf1
exit ;; ;;
alpha:OSF1:*:*) alpha:OSF1:*:*)
# Reset EXIT trap before exiting to avoid spurious non-zero exit code. # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
trap '' 0 trap '' 0
case $UNAME_RELEASE in case $UNAME_RELEASE in
*4.0) *4.0)
UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $3}') UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
;; ;;
*5.*) *5.*)
UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $4}') UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
;; ;;
esac esac
# According to Compaq, /usr/sbin/psrinfo has been available on # According to Compaq, /usr/sbin/psrinfo has been available on
# OSF/1 and Tru64 systems produced since 1995. I hope that # OSF/1 and Tru64 systems produced since 1995. I hope that
# covers most systems running today. This code pipes the CPU # covers most systems running today. This code pipes the CPU
# types through head -n 1, so we only detect the type of CPU 0. # types through head -n 1, so we only detect the type of CPU 0.
ALPHA_CPU_TYPE=$(/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1) ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
case $ALPHA_CPU_TYPE in case $ALPHA_CPU_TYPE in
"EV4 (21064)") "EV4 (21064)")
UNAME_MACHINE=alpha ;; UNAME_MACHINE=alpha ;;
...@@ -352,65 +366,69 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -352,65 +366,69 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
# A Tn.n version is a released field test version. # A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel. # A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r. # 1.2 uses "1.2" for uname -r.
echo "$UNAME_MACHINE"-dec-osf"$(echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)" OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
exit ;; GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
;;
Amiga*:UNIX_System_V:4.0:*) Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4 GUESS=m68k-unknown-sysv4
exit ;; ;;
*:[Aa]miga[Oo][Ss]:*:*) *:[Aa]miga[Oo][Ss]:*:*)
echo "$UNAME_MACHINE"-unknown-amigaos GUESS=$UNAME_MACHINE-unknown-amigaos
exit ;; ;;
*:[Mm]orph[Oo][Ss]:*:*) *:[Mm]orph[Oo][Ss]:*:*)
echo "$UNAME_MACHINE"-unknown-morphos GUESS=$UNAME_MACHINE-unknown-morphos
exit ;; ;;
*:OS/390:*:*) *:OS/390:*:*)
echo i370-ibm-openedition GUESS=i370-ibm-openedition
exit ;; ;;
*:z/VM:*:*) *:z/VM:*:*)
echo s390-ibm-zvmoe GUESS=s390-ibm-zvmoe
exit ;; ;;
*:OS400:*:*) *:OS400:*:*)
echo powerpc-ibm-os400 GUESS=powerpc-ibm-os400
exit ;; ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix"$UNAME_RELEASE" GUESS=arm-acorn-riscix$UNAME_RELEASE
exit ;; ;;
arm*:riscos:*:*|arm*:RISCOS:*:*) arm*:riscos:*:*|arm*:RISCOS:*:*)
echo arm-unknown-riscos GUESS=arm-unknown-riscos
exit ;; ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp GUESS=hppa1.1-hitachi-hiuxmpp
exit ;; ;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "$( (/bin/universe) 2>/dev/null)" = att ; then case `(/bin/universe) 2>/dev/null` in
echo pyramid-pyramid-sysv3 att) GUESS=pyramid-pyramid-sysv3 ;;
else *) GUESS=pyramid-pyramid-bsd ;;
echo pyramid-pyramid-bsd esac
fi ;;
exit ;;
NILE*:*:*:dcosx) NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4 GUESS=pyramid-pyramid-svr4
exit ;; ;;
DRS?6000:unix:4.0:6*) DRS?6000:unix:4.0:6*)
echo sparc-icl-nx6 GUESS=sparc-icl-nx6
exit ;; ;;
DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
case $(/usr/bin/uname -p) in case `/usr/bin/uname -p` in
sparc) echo sparc-icl-nx7; exit ;; sparc) GUESS=sparc-icl-nx7 ;;
esac ;; esac
;;
s390x:SunOS:*:*) s390x:SunOS:*:*)
echo "$UNAME_MACHINE"-ibm-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL
;;
sun4H:SunOS:5.*:*) sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=sparc-hal-solaris2$SUN_REL
;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=sparc-sun-solaris2$SUN_REL
;;
i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
echo i386-pc-auroraux"$UNAME_RELEASE" GUESS=i386-pc-auroraux$UNAME_RELEASE
exit ;; ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
set_cc_for_build set_cc_for_build
SUN_ARCH=i386 SUN_ARCH=i386
...@@ -419,47 +437,50 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -419,47 +437,50 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
# This test works for both compilers. # This test works for both compilers.
if test "$CC_FOR_BUILD" != no_compiler_found; then if test "$CC_FOR_BUILD" != no_compiler_found; then
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null grep IS_64BIT_ARCH >/dev/null
then then
SUN_ARCH=x86_64 SUN_ARCH=x86_64
fi fi
fi fi
echo "$SUN_ARCH"-pc-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=$SUN_ARCH-pc-solaris2$SUN_REL
;;
sun4*:SunOS:6*:*) sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize # According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but # SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4. # it's likely to be more like Solaris than SunOS4.
echo sparc-sun-solaris3"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=sparc-sun-solaris3$SUN_REL
;;
sun4*:SunOS:*:*) sun4*:SunOS:*:*)
case $(/usr/bin/arch -k) in case `/usr/bin/arch -k` in
Series*|S4*) Series*|S4*)
UNAME_RELEASE=$(uname -v) UNAME_RELEASE=`uname -v`
;; ;;
esac esac
# Japanese Language versions have a version number like `4.1.3-JL'. # Japanese Language versions have a version number like `4.1.3-JL'.
echo sparc-sun-sunos"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'`
exit ;; GUESS=sparc-sun-sunos$SUN_REL
;;
sun3*:SunOS:*:*) sun3*:SunOS:*:*)
echo m68k-sun-sunos"$UNAME_RELEASE" GUESS=m68k-sun-sunos$UNAME_RELEASE
exit ;; ;;
sun*:*:4.2BSD:*) sun*:*:4.2BSD:*)
UNAME_RELEASE=$( (sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
case $(/bin/arch) in case `/bin/arch` in
sun3) sun3)
echo m68k-sun-sunos"$UNAME_RELEASE" GUESS=m68k-sun-sunos$UNAME_RELEASE
;; ;;
sun4) sun4)
echo sparc-sun-sunos"$UNAME_RELEASE" GUESS=sparc-sun-sunos$UNAME_RELEASE
;; ;;
esac esac
exit ;; ;;
aushp:SunOS:*:*) aushp:SunOS:*:*)
echo sparc-auspex-sunos"$UNAME_RELEASE" GUESS=sparc-auspex-sunos$UNAME_RELEASE
exit ;; ;;
# The situation for MiNT is a little confusing. The machine name # The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not # can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor # "atarist" or "atariste" at least should have a processor
...@@ -469,41 +490,41 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -469,41 +490,41 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
# MiNT. But MiNT is downward compatible to TOS, so this should # MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem. # be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint"$UNAME_RELEASE" GUESS=m68k-atari-mint$UNAME_RELEASE
exit ;; ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint"$UNAME_RELEASE" GUESS=m68k-atari-mint$UNAME_RELEASE
exit ;; ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint"$UNAME_RELEASE" GUESS=m68k-atari-mint$UNAME_RELEASE
exit ;; ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint"$UNAME_RELEASE" GUESS=m68k-milan-mint$UNAME_RELEASE
exit ;; ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint"$UNAME_RELEASE" GUESS=m68k-hades-mint$UNAME_RELEASE
exit ;; ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint"$UNAME_RELEASE" GUESS=m68k-unknown-mint$UNAME_RELEASE
exit ;; ;;
m68k:machten:*:*) m68k:machten:*:*)
echo m68k-apple-machten"$UNAME_RELEASE" GUESS=m68k-apple-machten$UNAME_RELEASE
exit ;; ;;
powerpc:machten:*:*) powerpc:machten:*:*)
echo powerpc-apple-machten"$UNAME_RELEASE" GUESS=powerpc-apple-machten$UNAME_RELEASE
exit ;; ;;
RISC*:Mach:*:*) RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3 GUESS=mips-dec-mach_bsd4.3
exit ;; ;;
RISC*:ULTRIX:*:*) RISC*:ULTRIX:*:*)
echo mips-dec-ultrix"$UNAME_RELEASE" GUESS=mips-dec-ultrix$UNAME_RELEASE
exit ;; ;;
VAX*:ULTRIX*:*:*) VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix"$UNAME_RELEASE" GUESS=vax-dec-ultrix$UNAME_RELEASE
exit ;; ;;
2020:CLIX:*:* | 2430:CLIX:*:*) 2020:CLIX:*:* | 2430:CLIX:*:*)
echo clipper-intergraph-clix"$UNAME_RELEASE" GUESS=clipper-intergraph-clix$UNAME_RELEASE
exit ;; ;;
mips:*:*:UMIPS | mips:*:*:RISCos) mips:*:*:UMIPS | mips:*:*:RISCos)
set_cc_for_build set_cc_for_build
sed 's/^ //' << EOF > "$dummy.c" sed 's/^ //' << EOF > "$dummy.c"
...@@ -528,78 +549,79 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in ...@@ -528,78 +549,79 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
} }
EOF EOF
$CC_FOR_BUILD -o "$dummy" "$dummy.c" && $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
dummyarg=$(echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p') && dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
SYSTEM_NAME=$("$dummy" "$dummyarg") && SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
{ echo "$SYSTEM_NAME"; exit; } { echo "$SYSTEM_NAME"; exit; }
echo mips-mips-riscos"$UNAME_RELEASE" GUESS=mips-mips-riscos$UNAME_RELEASE
exit ;; ;;
Motorola:PowerMAX_OS:*:*) Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax GUESS=powerpc-motorola-powermax
exit ;; ;;
Motorola:*:4.3:PL8-*) Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax GUESS=powerpc-harris-powermax
exit ;; ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
echo powerpc-harris-powermax GUESS=powerpc-harris-powermax
exit ;; ;;
Night_Hawk:Power_UNIX:*:*) Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix GUESS=powerpc-harris-powerunix
exit ;; ;;
m88k:CX/UX:7*:*) m88k:CX/UX:7*:*)
echo m88k-harris-cxux7 GUESS=m88k-harris-cxux7
exit ;; ;;
m88k:*:4*:R4*) m88k:*:4*:R4*)
echo m88k-motorola-sysv4 GUESS=m88k-motorola-sysv4
exit ;; ;;
m88k:*:3*:R3*) m88k:*:3*:R3*)
echo m88k-motorola-sysv3 GUESS=m88k-motorola-sysv3
exit ;; ;;
AViiON:dgux:*:*) AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures # DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=$(/usr/bin/uname -p) UNAME_PROCESSOR=`/usr/bin/uname -p`
if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
then then
if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
test "$TARGET_BINARY_INTERFACE"x = x test "$TARGET_BINARY_INTERFACE"x = x
then then
echo m88k-dg-dgux"$UNAME_RELEASE" GUESS=m88k-dg-dgux$UNAME_RELEASE
else else
echo m88k-dg-dguxbcs"$UNAME_RELEASE" GUESS=m88k-dg-dguxbcs$UNAME_RELEASE
fi fi
else else
echo i586-dg-dgux"$UNAME_RELEASE" GUESS=i586-dg-dgux$UNAME_RELEASE
fi fi
exit ;; ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3) M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3 GUESS=m88k-dolphin-sysv3
exit ;; ;;
M88*:*:R3*:*) M88*:*:R3*:*)
# Delta 88k system running SVR3 # Delta 88k system running SVR3
echo m88k-motorola-sysv3 GUESS=m88k-motorola-sysv3
exit ;; ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3 GUESS=m88k-tektronix-sysv3
exit ;; ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd GUESS=m68k-tektronix-bsd
exit ;; ;;
*:IRIX*:*:*) *:IRIX*:*:*)
echo mips-sgi-irix"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/g')" IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'`
exit ;; GUESS=mips-sgi-irix$IRIX_REL
;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit ;; # Note that: echo "'$(uname -s)'" gives 'AIX ' ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*) i*86:AIX:*:*)
echo i386-ibm-aix GUESS=i386-ibm-aix
exit ;; ;;
ia64:AIX:*:*) ia64:AIX:*:*)
if test -x /usr/bin/oslevel ; then if test -x /usr/bin/oslevel ; then
IBM_REV=$(/usr/bin/oslevel) IBM_REV=`/usr/bin/oslevel`
else else
IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
fi fi
echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV
exit ;; ;;
*:AIX:2:3) *:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
set_cc_for_build set_cc_for_build
...@@ -614,63 +636,63 @@ EOF ...@@ -614,63 +636,63 @@ EOF
exit(0); exit(0);
} }
EOF EOF
if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
then then
echo "$SYSTEM_NAME" GUESS=$SYSTEM_NAME
else else
echo rs6000-ibm-aix3.2.5 GUESS=rs6000-ibm-aix3.2.5
fi fi
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4 GUESS=rs6000-ibm-aix3.2.4
else else
echo rs6000-ibm-aix3.2 GUESS=rs6000-ibm-aix3.2
fi fi
exit ;; ;;
*:AIX:*:[4567]) *:AIX:*:[4567])
IBM_CPU_ID=$(/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }') IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000 IBM_ARCH=rs6000
else else
IBM_ARCH=powerpc IBM_ARCH=powerpc
fi fi
if test -x /usr/bin/lslpp ; then if test -x /usr/bin/lslpp ; then
IBM_REV=$(/usr/bin/lslpp -Lqc bos.rte.libc | IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \
awk -F: '{ print $3 }' | sed s/[0-9]*$/0/) awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else else
IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
fi fi
echo "$IBM_ARCH"-ibm-aix"$IBM_REV" GUESS=$IBM_ARCH-ibm-aix$IBM_REV
exit ;; ;;
*:AIX:*:*) *:AIX:*:*)
echo rs6000-ibm-aix GUESS=rs6000-ibm-aix
exit ;; ;;
ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
echo romp-ibm-bsd4.4 GUESS=romp-ibm-bsd4.4
exit ;; ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to
exit ;; # report: romp-ibm BSD 4.3 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*) *:BOSX:*:*)
echo rs6000-bull-bosx GUESS=rs6000-bull-bosx
exit ;; ;;
DPX/2?00:B.O.S.:*:*) DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3 GUESS=m68k-bull-sysv3
exit ;; ;;
9000/[34]??:4.3bsd:1.*:*) 9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd GUESS=m68k-hp-bsd
exit ;; ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4 GUESS=m68k-hp-bsd4.4
exit ;; ;;
9000/[34678]??:HP-UX:*:*) 9000/[34678]??:HP-UX:*:*)
HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//') HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
case $UNAME_MACHINE in case $UNAME_MACHINE in
9000/31?) HP_ARCH=m68000 ;; 9000/31?) HP_ARCH=m68000 ;;
9000/[34]??) HP_ARCH=m68k ;; 9000/[34]??) HP_ARCH=m68k ;;
9000/[678][0-9][0-9]) 9000/[678][0-9][0-9])
if test -x /usr/bin/getconf; then if test -x /usr/bin/getconf; then
sc_cpu_version=$(/usr/bin/getconf SC_CPU_VERSION 2>/dev/null) sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=$(/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null) sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case $sc_cpu_version in case $sc_cpu_version in
523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
...@@ -717,7 +739,7 @@ EOF ...@@ -717,7 +739,7 @@ EOF
exit (0); exit (0);
} }
EOF EOF
(CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=$("$dummy") (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
test -z "$HP_ARCH" && HP_ARCH=hppa test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;; fi ;;
esac esac
...@@ -742,12 +764,12 @@ EOF ...@@ -742,12 +764,12 @@ EOF
HP_ARCH=hppa64 HP_ARCH=hppa64
fi fi
fi fi
echo "$HP_ARCH"-hp-hpux"$HPUX_REV" GUESS=$HP_ARCH-hp-hpux$HPUX_REV
exit ;; ;;
ia64:HP-UX:*:*) ia64:HP-UX:*:*)
HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//') HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
echo ia64-hp-hpux"$HPUX_REV" GUESS=ia64-hp-hpux$HPUX_REV
exit ;; ;;
3050*:HI-UX:*:*) 3050*:HI-UX:*:*)
set_cc_for_build set_cc_for_build
sed 's/^ //' << EOF > "$dummy.c" sed 's/^ //' << EOF > "$dummy.c"
...@@ -775,38 +797,38 @@ EOF ...@@ -775,38 +797,38 @@ EOF
exit (0); exit (0);
} }
EOF EOF
$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") && $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
{ echo "$SYSTEM_NAME"; exit; } { echo "$SYSTEM_NAME"; exit; }
echo unknown-hitachi-hiuxwe2 GUESS=unknown-hitachi-hiuxwe2
exit ;; ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
echo hppa1.1-hp-bsd GUESS=hppa1.1-hp-bsd
exit ;; ;;
9000/8??:4.3bsd:*:*) 9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd GUESS=hppa1.0-hp-bsd
exit ;; ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix GUESS=hppa1.0-hp-mpeix
exit ;; ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
echo hppa1.1-hp-osf GUESS=hppa1.1-hp-osf
exit ;; ;;
hp8??:OSF1:*:*) hp8??:OSF1:*:*)
echo hppa1.0-hp-osf GUESS=hppa1.0-hp-osf
exit ;; ;;
i*86:OSF1:*:*) i*86:OSF1:*:*)
if test -x /usr/sbin/sysversion ; then if test -x /usr/sbin/sysversion ; then
echo "$UNAME_MACHINE"-unknown-osf1mk GUESS=$UNAME_MACHINE-unknown-osf1mk
else else
echo "$UNAME_MACHINE"-unknown-osf1 GUESS=$UNAME_MACHINE-unknown-osf1
fi fi
exit ;; ;;
parisc*:Lites*:*:*) parisc*:Lites*:*:*)
echo hppa1.1-hp-lites GUESS=hppa1.1-hp-lites
exit ;; ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd GUESS=c1-convex-bsd
exit ;; ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc if getsysinfo -f scalar_acc
then echo c32-convex-bsd then echo c32-convex-bsd
...@@ -814,17 +836,18 @@ EOF ...@@ -814,17 +836,18 @@ EOF
fi fi
exit ;; exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd GUESS=c34-convex-bsd
exit ;; ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd GUESS=c38-convex-bsd
exit ;; ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd GUESS=c4-convex-bsd
exit ;; ;;
CRAY*Y-MP:*:*:*) CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
exit ;; GUESS=ymp-cray-unicos$CRAY_REL
;;
CRAY*[A-Z]90:*:*:*) CRAY*[A-Z]90:*:*:*)
echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
...@@ -832,114 +855,129 @@ EOF ...@@ -832,114 +855,129 @@ EOF
-e 's/\.[^.]*$/.X/' -e 's/\.[^.]*$/.X/'
exit ;; exit ;;
CRAY*TS:*:*:*) CRAY*TS:*:*:*)
echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
exit ;; GUESS=t90-cray-unicos$CRAY_REL
;;
CRAY*T3E:*:*:*) CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
exit ;; GUESS=alphaev5-cray-unicosmk$CRAY_REL
;;
CRAY*SV1:*:*:*) CRAY*SV1:*:*:*)
echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
exit ;; GUESS=sv1-cray-unicos$CRAY_REL
;;
*:UNICOS/mp:*:*) *:UNICOS/mp:*:*)
echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
exit ;; GUESS=craynv-cray-unicosmp$CRAY_REL
;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=$(uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///') FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=$(echo "$UNAME_RELEASE" | sed -e 's/ /_/') FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
exit ;; ;;
5000:UNIX_System_V:4.*:*) 5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///') FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=$(echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/') FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
exit ;; ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
exit ;; ;;
sparc*:BSD/OS:*:*) sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi"$UNAME_RELEASE" GUESS=sparc-unknown-bsdi$UNAME_RELEASE
exit ;; ;;
*:BSD/OS:*:*) *:BSD/OS:*:*)
echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
exit ;; ;;
arm:FreeBSD:*:*) arm:FreeBSD:*:*)
UNAME_PROCESSOR=$(uname -p) UNAME_PROCESSOR=`uname -p`
set_cc_for_build set_cc_for_build
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP | grep -q __ARM_PCS_VFP
then then
echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabi FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
else else
echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabihf FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
fi fi
exit ;; ;;
*:FreeBSD:*:*) *:FreeBSD:*:*)
UNAME_PROCESSOR=$(/usr/bin/uname -p) UNAME_PROCESSOR=`/usr/bin/uname -p`
case $UNAME_PROCESSOR in case $UNAME_PROCESSOR in
amd64) amd64)
UNAME_PROCESSOR=x86_64 ;; UNAME_PROCESSOR=x86_64 ;;
i386) i386)
UNAME_PROCESSOR=i586 ;; UNAME_PROCESSOR=i586 ;;
esac esac
echo "$UNAME_PROCESSOR"-unknown-freebsd"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')" FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
exit ;; GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
;;
i*:CYGWIN*:*) i*:CYGWIN*:*)
echo "$UNAME_MACHINE"-pc-cygwin GUESS=$UNAME_MACHINE-pc-cygwin
exit ;; ;;
*:MINGW64*:*) *:MINGW64*:*)
echo "$UNAME_MACHINE"-pc-mingw64 GUESS=$UNAME_MACHINE-pc-mingw64
exit ;; ;;
*:MINGW*:*) *:MINGW*:*)
echo "$UNAME_MACHINE"-pc-mingw32 GUESS=$UNAME_MACHINE-pc-mingw32
exit ;; ;;
*:MSYS*:*) *:MSYS*:*)
echo "$UNAME_MACHINE"-pc-msys GUESS=$UNAME_MACHINE-pc-msys
exit ;; ;;
i*:PW*:*) i*:PW*:*)
echo "$UNAME_MACHINE"-pc-pw32 GUESS=$UNAME_MACHINE-pc-pw32
exit ;; ;;
*:SerenityOS:*:*)
GUESS=$UNAME_MACHINE-pc-serenity
;;
*:Interix*:*) *:Interix*:*)
case $UNAME_MACHINE in case $UNAME_MACHINE in
x86) x86)
echo i586-pc-interix"$UNAME_RELEASE" GUESS=i586-pc-interix$UNAME_RELEASE
exit ;; ;;
authenticamd | genuineintel | EM64T) authenticamd | genuineintel | EM64T)
echo x86_64-unknown-interix"$UNAME_RELEASE" GUESS=x86_64-unknown-interix$UNAME_RELEASE
exit ;; ;;
IA64) IA64)
echo ia64-unknown-interix"$UNAME_RELEASE" GUESS=ia64-unknown-interix$UNAME_RELEASE
exit ;; ;;
esac ;; esac ;;
i*:UWIN*:*) i*:UWIN*:*)
echo "$UNAME_MACHINE"-pc-uwin GUESS=$UNAME_MACHINE-pc-uwin
exit ;; ;;
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
echo x86_64-pc-cygwin GUESS=x86_64-pc-cygwin
exit ;; ;;
prep*:SunOS:5.*:*) prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')" SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
exit ;; GUESS=powerpcle-unknown-solaris2$SUN_REL
;;
*:GNU:*:*) *:GNU:*:*)
# the GNU system # the GNU system
echo "$(echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,')-unknown-$LIBC$(echo "$UNAME_RELEASE"|sed -e 's,/.*$,,')" GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
exit ;; GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
;;
*:GNU/*:*:*) *:GNU/*:*:*)
# other systems with GNU libc and userland # other systems with GNU libc and userland
echo "$UNAME_MACHINE-unknown-$(echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]")$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')-$LIBC" GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
exit ;; GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
;;
*:Minix:*:*) *:Minix:*:*)
echo "$UNAME_MACHINE"-unknown-minix GUESS=$UNAME_MACHINE-unknown-minix
exit ;; ;;
aarch64:Linux:*:*) aarch64:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
aarch64_be:Linux:*:*) aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be UNAME_MACHINE=aarch64_be
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
alpha:Linux:*:*) alpha:Linux:*:*)
case $(sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null) in case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
EV5) UNAME_MACHINE=alphaev5 ;; EV5) UNAME_MACHINE=alphaev5 ;;
EV56) UNAME_MACHINE=alphaev56 ;; EV56) UNAME_MACHINE=alphaev56 ;;
PCA56) UNAME_MACHINE=alphapca56 ;; PCA56) UNAME_MACHINE=alphapca56 ;;
...@@ -950,63 +988,63 @@ EOF ...@@ -950,63 +988,63 @@ EOF
esac esac
objdump --private-headers /bin/sh | grep -q ld.so.1 objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC=gnulibc1 ; fi if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
arc:Linux:*:* | arceb:Linux:*:* | arc64:Linux:*:*) arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
arm*:Linux:*:*) arm*:Linux:*:*)
set_cc_for_build set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__ | grep -q __ARM_EABI__
then then
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
else else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP | grep -q __ARM_PCS_VFP
then then
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
else else
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
fi fi
fi fi
exit ;; ;;
avr32*:Linux:*:*) avr32*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
cris:Linux:*:*) cris:Linux:*:*)
echo "$UNAME_MACHINE"-axis-linux-"$LIBC" GUESS=$UNAME_MACHINE-axis-linux-$LIBC
exit ;; ;;
crisv32:Linux:*:*) crisv32:Linux:*:*)
echo "$UNAME_MACHINE"-axis-linux-"$LIBC" GUESS=$UNAME_MACHINE-axis-linux-$LIBC
exit ;; ;;
e2k:Linux:*:*) e2k:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
frv:Linux:*:*) frv:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
hexagon:Linux:*:*) hexagon:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
i*86:Linux:*:*) i*86:Linux:*:*)
echo "$UNAME_MACHINE"-pc-linux-"$LIBC" GUESS=$UNAME_MACHINE-pc-linux-$LIBC
exit ;; ;;
ia64:Linux:*:*) ia64:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
k1om:Linux:*:*) k1om:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
m32r*:Linux:*:*) m32r*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
m68*:Linux:*:*) m68*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
mips:Linux:*:* | mips64:Linux:*:*) mips:Linux:*:* | mips64:Linux:*:*)
set_cc_for_build set_cc_for_build
IS_GLIBC=0 IS_GLIBC=0
...@@ -1051,65 +1089,66 @@ EOF ...@@ -1051,65 +1089,66 @@ EOF
#endif #endif
#endif #endif
EOF EOF
eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI')" cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
eval "$cc_set_vars"
test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
;; ;;
mips64el:Linux:*:*) mips64el:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
openrisc*:Linux:*:*) openrisc*:Linux:*:*)
echo or1k-unknown-linux-"$LIBC" GUESS=or1k-unknown-linux-$LIBC
exit ;; ;;
or32:Linux:*:* | or1k*:Linux:*:*) or32:Linux:*:* | or1k*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
padre:Linux:*:*) padre:Linux:*:*)
echo sparc-unknown-linux-"$LIBC" GUESS=sparc-unknown-linux-$LIBC
exit ;; ;;
parisc64:Linux:*:* | hppa64:Linux:*:*) parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-"$LIBC" GUESS=hppa64-unknown-linux-$LIBC
exit ;; ;;
parisc:Linux:*:* | hppa:Linux:*:*) parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level # Look for CPU level
case $(grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2) in case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
*) echo hppa-unknown-linux-"$LIBC" ;; *) GUESS=hppa-unknown-linux-$LIBC ;;
esac esac
exit ;; ;;
ppc64:Linux:*:*) ppc64:Linux:*:*)
echo powerpc64-unknown-linux-"$LIBC" GUESS=powerpc64-unknown-linux-$LIBC
exit ;; ;;
ppc:Linux:*:*) ppc:Linux:*:*)
echo powerpc-unknown-linux-"$LIBC" GUESS=powerpc-unknown-linux-$LIBC
exit ;; ;;
ppc64le:Linux:*:*) ppc64le:Linux:*:*)
echo powerpc64le-unknown-linux-"$LIBC" GUESS=powerpc64le-unknown-linux-$LIBC
exit ;; ;;
ppcle:Linux:*:*) ppcle:Linux:*:*)
echo powerpcle-unknown-linux-"$LIBC" GUESS=powerpcle-unknown-linux-$LIBC
exit ;; ;;
riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
s390:Linux:*:* | s390x:Linux:*:*) s390:Linux:*:* | s390x:Linux:*:*)
echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
exit ;; ;;
sh64*:Linux:*:*) sh64*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
sh*:Linux:*:*) sh*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
sparc:Linux:*:* | sparc64:Linux:*:*) sparc:Linux:*:* | sparc64:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
tile*:Linux:*:*) tile*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
vax:Linux:*:*) vax:Linux:*:*)
echo "$UNAME_MACHINE"-dec-linux-"$LIBC" GUESS=$UNAME_MACHINE-dec-linux-$LIBC
exit ;; ;;
x86_64:Linux:*:*) x86_64:Linux:*:*)
set_cc_for_build set_cc_for_build
LIBCABI=$LIBC LIBCABI=$LIBC
...@@ -1118,71 +1157,71 @@ EOF ...@@ -1118,71 +1157,71 @@ EOF
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_X32 >/dev/null grep IS_X32 >/dev/null
then then
LIBCABI="$LIBC"x32 LIBCABI=${LIBC}x32
fi fi
fi fi
echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI" GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
exit ;; ;;
xtensa*:Linux:*:*) xtensa*:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
exit ;; ;;
i*86:DYNIX/ptx:4*:*) i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both # earlier versions are messed up and put the nodename in both
# sysname and nodename. # sysname and nodename.
echo i386-sequent-sysv4 GUESS=i386-sequent-sysv4
exit ;; ;;
i*86:UNIX_SV:4.2MP:2.*) i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version # Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2... # number series starting with 2...
# I am not positive that other SVR4 systems won't match this, # I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms. # I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it. # Use sysv4.2uw... so that sysv4* matches it.
echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION
exit ;; ;;
i*86:OS/2:*:*) i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility # If we were able to find `uname', then EMX Unix compatibility
# is probably installed. # is probably installed.
echo "$UNAME_MACHINE"-pc-os2-emx GUESS=$UNAME_MACHINE-pc-os2-emx
exit ;; ;;
i*86:XTS-300:*:STOP) i*86:XTS-300:*:STOP)
echo "$UNAME_MACHINE"-unknown-stop GUESS=$UNAME_MACHINE-unknown-stop
exit ;; ;;
i*86:atheos:*:*) i*86:atheos:*:*)
echo "$UNAME_MACHINE"-unknown-atheos GUESS=$UNAME_MACHINE-unknown-atheos
exit ;; ;;
i*86:syllable:*:*) i*86:syllable:*:*)
echo "$UNAME_MACHINE"-pc-syllable GUESS=$UNAME_MACHINE-pc-syllable
exit ;; ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
echo i386-unknown-lynxos"$UNAME_RELEASE" GUESS=i386-unknown-lynxos$UNAME_RELEASE
exit ;; ;;
i*86:*DOS:*:*) i*86:*DOS:*:*)
echo "$UNAME_MACHINE"-pc-msdosdjgpp GUESS=$UNAME_MACHINE-pc-msdosdjgpp
exit ;; ;;
i*86:*:4.*:*) i*86:*:4.*:*)
UNAME_REL=$(echo "$UNAME_RELEASE" | sed 's/\/MP$//') UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL
else else
echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL
fi fi
exit ;; ;;
i*86:*:5:[678]*) i*86:*:5:[678]*)
# UnixWare 7.x, OpenUNIX and OpenServer 6. # UnixWare 7.x, OpenUNIX and OpenServer 6.
case $(/bin/uname -X | grep "^Machine") in case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;; *486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;; *Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac esac
echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}" GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
exit ;; ;;
i*86:*:3.2:*) i*86:*:3.2:*)
if test -f /usr/options/cb.name; then if test -f /usr/options/cb.name; then
UNAME_REL=$(sed -n 's/.*Version //p' </usr/options/cb.name) UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL" GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=$( (/bin/uname -X|grep Release|sed -e 's/.*= //')) UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586 && UNAME_MACHINE=i586
...@@ -1190,11 +1229,11 @@ EOF ...@@ -1190,11 +1229,11 @@ EOF
&& UNAME_MACHINE=i686 && UNAME_MACHINE=i686
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686 && UNAME_MACHINE=i686
echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL
else else
echo "$UNAME_MACHINE"-pc-sysv32 GUESS=$UNAME_MACHINE-pc-sysv32
fi fi
exit ;; ;;
pc:*:*:*) pc:*:*:*)
# Left here for compatibility: # Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about # uname -m prints for DJGPP always 'pc', but it prints nothing about
...@@ -1202,37 +1241,37 @@ EOF ...@@ -1202,37 +1241,37 @@ EOF
# Note: whatever this is, it MUST be the same as what config.sub # Note: whatever this is, it MUST be the same as what config.sub
# prints for the "djgpp" host, or else GDB configure will decide that # prints for the "djgpp" host, or else GDB configure will decide that
# this is a cross-build. # this is a cross-build.
echo i586-pc-msdosdjgpp GUESS=i586-pc-msdosdjgpp
exit ;; ;;
Intel:Mach:3*:*) Intel:Mach:3*:*)
echo i386-pc-mach3 GUESS=i386-pc-mach3
exit ;; ;;
paragon:*:*:*) paragon:*:*:*)
echo i860-intel-osf1 GUESS=i860-intel-osf1
exit ;; ;;
i860:*:4.*:*) # i860-SVR4 i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered. else # Add other i860-SVR4 vendors below as they are discovered.
echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4
fi fi
exit ;; ;;
mini*:CTIX:SYS*5:*) mini*:CTIX:SYS*5:*)
# "miniframe" # "miniframe"
echo m68010-convergent-sysv GUESS=m68010-convergent-sysv
exit ;; ;;
mc68k:UNIX:SYSTEM5:3.51m) mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv GUESS=m68k-convergent-sysv
exit ;; ;;
M680?0:D-NIX:5.3:*) M680?0:D-NIX:5.3:*)
echo m68k-diab-dnix GUESS=m68k-diab-dnix
exit ;; ;;
M68*:*:R3V[5678]*:*) M68*:*:R3V[5678]*:*)
test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
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) 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)
OS_REL='' OS_REL=''
test -r /etc/.relid \ test -r /etc/.relid \
&& OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid) && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4.3"$OS_REL"; exit; } && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
...@@ -1243,7 +1282,7 @@ EOF ...@@ -1243,7 +1282,7 @@ EOF
NCR*:*:4.2:* | MPRAS*:*:4.2:*) NCR*:*:4.2:* | MPRAS*:*:4.2:*)
OS_REL='.3' OS_REL='.3'
test -r /etc/.relid \ test -r /etc/.relid \
&& OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid) && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4.3"$OS_REL"; exit; } && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
...@@ -1251,118 +1290,118 @@ EOF ...@@ -1251,118 +1290,118 @@ EOF
/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
&& { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos"$UNAME_RELEASE" GUESS=m68k-unknown-lynxos$UNAME_RELEASE
exit ;; ;;
mc68030:UNIX_System_V:4.*:*) mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4 GUESS=m68k-atari-sysv4
exit ;; ;;
TSUNAMI:LynxOS:2.*:*) TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos"$UNAME_RELEASE" GUESS=sparc-unknown-lynxos$UNAME_RELEASE
exit ;; ;;
rs6000:LynxOS:2.*:*) rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos"$UNAME_RELEASE" GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
exit ;; ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
echo powerpc-unknown-lynxos"$UNAME_RELEASE" GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
exit ;; ;;
SM[BE]S:UNIX_SV:*:*) SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv"$UNAME_RELEASE" GUESS=mips-dde-sysv$UNAME_RELEASE
exit ;; ;;
RM*:ReliantUNIX-*:*:*) RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4 GUESS=mips-sni-sysv4
exit ;; ;;
RM*:SINIX-*:*:*) RM*:SINIX-*:*:*)
echo mips-sni-sysv4 GUESS=mips-sni-sysv4
exit ;; ;;
*:SINIX-*:*:*) *:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=$( (uname -p) 2>/dev/null) UNAME_MACHINE=`(uname -p) 2>/dev/null`
echo "$UNAME_MACHINE"-sni-sysv4 GUESS=$UNAME_MACHINE-sni-sysv4
else else
echo ns32k-sni-sysv GUESS=ns32k-sni-sysv
fi fi
exit ;; ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV> # says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4 GUESS=i586-unisys-sysv4
exit ;; ;;
*:UNIX_System_V:4*:FTX*) *:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>. # From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm # How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4 GUESS=hppa1.1-stratus-sysv4
exit ;; ;;
*:*:*:FTX*) *:*:*:FTX*)
# From seanf@swdc.stratus.com. # From seanf@swdc.stratus.com.
echo i860-stratus-sysv4 GUESS=i860-stratus-sysv4
exit ;; ;;
i*86:VOS:*:*) i*86:VOS:*:*)
# From Paul.Green@stratus.com. # From Paul.Green@stratus.com.
echo "$UNAME_MACHINE"-stratus-vos GUESS=$UNAME_MACHINE-stratus-vos
exit ;; ;;
*:VOS:*:*) *:VOS:*:*)
# From Paul.Green@stratus.com. # From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos GUESS=hppa1.1-stratus-vos
exit ;; ;;
mc68*:A/UX:*:*) mc68*:A/UX:*:*)
echo m68k-apple-aux"$UNAME_RELEASE" GUESS=m68k-apple-aux$UNAME_RELEASE
exit ;; ;;
news*:NEWS-OS:6*:*) news*:NEWS-OS:6*:*)
echo mips-sony-newsos6 GUESS=mips-sony-newsos6
exit ;; ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if test -d /usr/nec; then if test -d /usr/nec; then
echo mips-nec-sysv"$UNAME_RELEASE" GUESS=mips-nec-sysv$UNAME_RELEASE
else else
echo mips-unknown-sysv"$UNAME_RELEASE" GUESS=mips-unknown-sysv$UNAME_RELEASE
fi fi
exit ;; ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos GUESS=powerpc-be-beos
exit ;; ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos GUESS=powerpc-apple-beos
exit ;; ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible. BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos GUESS=i586-pc-beos
exit ;; ;;
BePC:Haiku:*:*) # Haiku running on Intel PC compatible. BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
echo i586-pc-haiku GUESS=i586-pc-haiku
exit ;; ;;
x86_64:Haiku:*:*) x86_64:Haiku:*:*)
echo x86_64-unknown-haiku GUESS=x86_64-unknown-haiku
exit ;; ;;
SX-4:SUPER-UX:*:*) SX-4:SUPER-UX:*:*)
echo sx4-nec-superux"$UNAME_RELEASE" GUESS=sx4-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-5:SUPER-UX:*:*) SX-5:SUPER-UX:*:*)
echo sx5-nec-superux"$UNAME_RELEASE" GUESS=sx5-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-6:SUPER-UX:*:*) SX-6:SUPER-UX:*:*)
echo sx6-nec-superux"$UNAME_RELEASE" GUESS=sx6-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-7:SUPER-UX:*:*) SX-7:SUPER-UX:*:*)
echo sx7-nec-superux"$UNAME_RELEASE" GUESS=sx7-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-8:SUPER-UX:*:*) SX-8:SUPER-UX:*:*)
echo sx8-nec-superux"$UNAME_RELEASE" GUESS=sx8-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-8R:SUPER-UX:*:*) SX-8R:SUPER-UX:*:*)
echo sx8r-nec-superux"$UNAME_RELEASE" GUESS=sx8r-nec-superux$UNAME_RELEASE
exit ;; ;;
SX-ACE:SUPER-UX:*:*) SX-ACE:SUPER-UX:*:*)
echo sxace-nec-superux"$UNAME_RELEASE" GUESS=sxace-nec-superux$UNAME_RELEASE
exit ;; ;;
Power*:Rhapsody:*:*) Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody"$UNAME_RELEASE" GUESS=powerpc-apple-rhapsody$UNAME_RELEASE
exit ;; ;;
*:Rhapsody:*:*) *:Rhapsody:*:*)
echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE
exit ;; ;;
arm64:Darwin:*:*) arm64:Darwin:*:*)
echo aarch64-apple-darwin"$UNAME_RELEASE" GUESS=aarch64-apple-darwin$UNAME_RELEASE
exit ;; ;;
*:Darwin:*:*) *:Darwin:*:*)
UNAME_PROCESSOR=$(uname -p) UNAME_PROCESSOR=`uname -p`
case $UNAME_PROCESSOR in case $UNAME_PROCESSOR in
unknown) UNAME_PROCESSOR=powerpc ;; unknown) UNAME_PROCESSOR=powerpc ;;
esac esac
...@@ -1396,43 +1435,43 @@ EOF ...@@ -1396,43 +1435,43 @@ EOF
# uname -m returns i386 or x86_64 # uname -m returns i386 or x86_64
UNAME_PROCESSOR=$UNAME_MACHINE UNAME_PROCESSOR=$UNAME_MACHINE
fi fi
echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE
exit ;; ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*) *:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=$(uname -p) UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = x86; then if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386 UNAME_PROCESSOR=i386
UNAME_MACHINE=pc UNAME_MACHINE=pc
fi fi
echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE
exit ;; ;;
*:QNX:*:4*) *:QNX:*:4*)
echo i386-pc-qnx GUESS=i386-pc-qnx
exit ;; ;;
NEO-*:NONSTOP_KERNEL:*:*) NEO-*:NONSTOP_KERNEL:*:*)
echo neo-tandem-nsk"$UNAME_RELEASE" GUESS=neo-tandem-nsk$UNAME_RELEASE
exit ;; ;;
NSE-*:NONSTOP_KERNEL:*:*) NSE-*:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk"$UNAME_RELEASE" GUESS=nse-tandem-nsk$UNAME_RELEASE
exit ;; ;;
NSR-*:NONSTOP_KERNEL:*:*) NSR-*:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk"$UNAME_RELEASE" GUESS=nsr-tandem-nsk$UNAME_RELEASE
exit ;; ;;
NSV-*:NONSTOP_KERNEL:*:*) NSV-*:NONSTOP_KERNEL:*:*)
echo nsv-tandem-nsk"$UNAME_RELEASE" GUESS=nsv-tandem-nsk$UNAME_RELEASE
exit ;; ;;
NSX-*:NONSTOP_KERNEL:*:*) NSX-*:NONSTOP_KERNEL:*:*)
echo nsx-tandem-nsk"$UNAME_RELEASE" GUESS=nsx-tandem-nsk$UNAME_RELEASE
exit ;; ;;
*:NonStop-UX:*:*) *:NonStop-UX:*:*)
echo mips-compaq-nonstopux GUESS=mips-compaq-nonstopux
exit ;; ;;
BS2000:POSIX*:*:*) BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv GUESS=bs2000-siemens-sysv
exit ;; ;;
DS/*:UNIX_System_V:*:*) DS/*:UNIX_System_V:*:*)
echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE
exit ;; ;;
*:Plan9:*:*) *:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386 # "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86 # is converted to i386 for consistency with other x86
...@@ -1440,64 +1479,75 @@ EOF ...@@ -1440,64 +1479,75 @@ EOF
if test "${cputype-}" = 386; then if test "${cputype-}" = 386; then
UNAME_MACHINE=i386 UNAME_MACHINE=i386
elif test "x${cputype-}" != x; then elif test "x${cputype-}" != x; then
UNAME_MACHINE="$cputype" UNAME_MACHINE=$cputype
fi fi
echo "$UNAME_MACHINE"-unknown-plan9 GUESS=$UNAME_MACHINE-unknown-plan9
exit ;; ;;
*:TOPS-10:*:*) *:TOPS-10:*:*)
echo pdp10-unknown-tops10 GUESS=pdp10-unknown-tops10
exit ;; ;;
*:TENEX:*:*) *:TENEX:*:*)
echo pdp10-unknown-tenex GUESS=pdp10-unknown-tenex
exit ;; ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20 GUESS=pdp10-dec-tops20
exit ;; ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
echo pdp10-xkl-tops20 GUESS=pdp10-xkl-tops20
exit ;; ;;
*:TOPS-20:*:*) *:TOPS-20:*:*)
echo pdp10-unknown-tops20 GUESS=pdp10-unknown-tops20
exit ;; ;;
*:ITS:*:*) *:ITS:*:*)
echo pdp10-unknown-its GUESS=pdp10-unknown-its
exit ;; ;;
SEI:*:*:SEIUX) SEI:*:*:SEIUX)
echo mips-sei-seiux"$UNAME_RELEASE" GUESS=mips-sei-seiux$UNAME_RELEASE
exit ;; ;;
*:DragonFly:*:*) *:DragonFly:*:*)
echo "$UNAME_MACHINE"-unknown-dragonfly"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')" DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
exit ;; GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
;;
*:*VMS:*:*) *:*VMS:*:*)
UNAME_MACHINE=$( (uname -p) 2>/dev/null) UNAME_MACHINE=`(uname -p) 2>/dev/null`
case $UNAME_MACHINE in case $UNAME_MACHINE in
A*) echo alpha-dec-vms ; exit ;; A*) GUESS=alpha-dec-vms ;;
I*) echo ia64-dec-vms ; exit ;; I*) GUESS=ia64-dec-vms ;;
V*) echo vax-dec-vms ; exit ;; V*) GUESS=vax-dec-vms ;;
esac ;; esac ;;
*:XENIX:*:SysV) *:XENIX:*:SysV)
echo i386-pc-xenix GUESS=i386-pc-xenix
exit ;; ;;
i*86:skyos:*:*) i*86:skyos:*:*)
echo "$UNAME_MACHINE"-pc-skyos"$(echo "$UNAME_RELEASE" | sed -e 's/ .*$//')" SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`
exit ;; GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL
;;
i*86:rdos:*:*) i*86:rdos:*:*)
echo "$UNAME_MACHINE"-pc-rdos GUESS=$UNAME_MACHINE-pc-rdos
exit ;; ;;
i*86:Fiwix:*:*)
GUESS=$UNAME_MACHINE-pc-fiwix
;;
*:AROS:*:*) *:AROS:*:*)
echo "$UNAME_MACHINE"-unknown-aros GUESS=$UNAME_MACHINE-unknown-aros
exit ;; ;;
x86_64:VMkernel:*:*) x86_64:VMkernel:*:*)
echo "$UNAME_MACHINE"-unknown-esx GUESS=$UNAME_MACHINE-unknown-esx
exit ;; ;;
amd64:Isilon\ OneFS:*:*) amd64:Isilon\ OneFS:*:*)
echo x86_64-unknown-onefs GUESS=x86_64-unknown-onefs
exit ;; ;;
*:Unleashed:*:*) *:Unleashed:*:*)
echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE" GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
exit ;; ;;
esac esac
# Do we have a guess based on uname results?
if test "x$GUESS" != x; then
echo "$GUESS"
exit
fi
# No uname command or uname output not recognized. # No uname command or uname output not recognized.
set_cc_for_build set_cc_for_build
cat > "$dummy.c" <<EOF cat > "$dummy.c" <<EOF
...@@ -1537,7 +1587,7 @@ main () ...@@ -1537,7 +1587,7 @@ main ()
#define __ARCHITECTURE__ "m68k" #define __ARCHITECTURE__ "m68k"
#endif #endif
int version; int version;
version=$( (hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null); version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
if (version < 4) if (version < 4)
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
else else
...@@ -1629,7 +1679,7 @@ main () ...@@ -1629,7 +1679,7 @@ main ()
} }
EOF EOF
$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=$($dummy) && $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
{ echo "$SYSTEM_NAME"; exit; } { echo "$SYSTEM_NAME"; exit; }
# Apollos put the system type in the environment. # Apollos put the system type in the environment.
...@@ -1659,9 +1709,11 @@ and ...@@ -1659,9 +1709,11 @@ and
https://git.savannah.gnu.org/cgit/config.git/plain/config.sub https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
EOF EOF
year=$(echo $timestamp | sed 's,-.*,,') our_year=`echo $timestamp | sed 's,-.*,,'`
thisyear=`date +%Y`
# shellcheck disable=SC2003 # shellcheck disable=SC2003
if test "$(expr "$(date +%Y)" - "$year")" -lt 3 ; then script_age=`expr "$thisyear" - "$our_year"`
if test "$script_age" -lt 3 ; then
cat >&2 <<EOF cat >&2 <<EOF
If $0 has already been updated, send the following data and any If $0 has already been updated, send the following data and any
...@@ -1670,20 +1722,20 @@ provide the necessary information to handle your system. ...@@ -1670,20 +1722,20 @@ provide the necessary information to handle your system.
config.guess timestamp = $timestamp config.guess timestamp = $timestamp
uname -m = $( (uname -m) 2>/dev/null || echo unknown) uname -m = `(uname -m) 2>/dev/null || echo unknown`
uname -r = $( (uname -r) 2>/dev/null || echo unknown) uname -r = `(uname -r) 2>/dev/null || echo unknown`
uname -s = $( (uname -s) 2>/dev/null || echo unknown) uname -s = `(uname -s) 2>/dev/null || echo unknown`
uname -v = $( (uname -v) 2>/dev/null || echo unknown) uname -v = `(uname -v) 2>/dev/null || echo unknown`
/usr/bin/uname -p = $( (/usr/bin/uname -p) 2>/dev/null) /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
/bin/uname -X = $( (/bin/uname -X) 2>/dev/null) /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
hostinfo = $( (hostinfo) 2>/dev/null) hostinfo = `(hostinfo) 2>/dev/null`
/bin/universe = $( (/bin/universe) 2>/dev/null) /bin/universe = `(/bin/universe) 2>/dev/null`
/usr/bin/arch -k = $( (/usr/bin/arch -k) 2>/dev/null) /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
/bin/arch = $( (/bin/arch) 2>/dev/null) /bin/arch = `(/bin/arch) 2>/dev/null`
/usr/bin/oslevel = $( (/usr/bin/oslevel) 2>/dev/null) /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
/usr/convex/getsysinfo = $( (/usr/convex/getsysinfo) 2>/dev/null) /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
UNAME_MACHINE = "$UNAME_MACHINE" UNAME_MACHINE = "$UNAME_MACHINE"
UNAME_RELEASE = "$UNAME_RELEASE" UNAME_RELEASE = "$UNAME_RELEASE"
......
#! /bin/sh #! /bin/sh
# Configuration validation subroutine script. # Configuration validation subroutine script.
# Copyright 1992-2021 Free Software Foundation, Inc. # Copyright 1992-2022 Free Software Foundation, Inc.
timestamp='2021-04-30' # shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-01-03'
# This file is free software; you can redistribute it and/or modify it # This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by # under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or # the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, but # This program is distributed in the hope that it will be useful, but
...@@ -50,7 +52,14 @@ timestamp='2021-04-30' ...@@ -50,7 +52,14 @@ timestamp='2021-04-30'
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification. # It is wrong to echo any other type of specification.
me=$(echo "$0" | sed -e 's,.*/,,') # The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX. However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\ usage="\
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
...@@ -67,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>." ...@@ -67,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\ version="\
GNU config.sub ($timestamp) GNU config.sub ($timestamp)
Copyright 1992-2021 Free Software Foundation, Inc. Copyright 1992-2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
...@@ -112,9 +121,11 @@ esac ...@@ -112,9 +121,11 @@ esac
# Split fields of configuration type # Split fields of configuration type
# shellcheck disable=SC2162 # shellcheck disable=SC2162
saved_IFS=$IFS
IFS="-" read field1 field2 field3 field4 <<EOF IFS="-" read field1 field2 field3 field4 <<EOF
$1 $1
EOF EOF
IFS=$saved_IFS
# Separate into logical components for further validation # Separate into logical components for further validation
case $1 in case $1 in
...@@ -163,6 +174,10 @@ case $1 in ...@@ -163,6 +174,10 @@ case $1 in
basic_machine=$field1 basic_machine=$field1
basic_os=$field2 basic_os=$field2
;; ;;
zephyr*)
basic_machine=$field1-unknown
basic_os=$field2
;;
# Manufacturers # Manufacturers
dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
| att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
...@@ -769,22 +784,22 @@ case $basic_machine in ...@@ -769,22 +784,22 @@ case $basic_machine in
vendor=hp vendor=hp
;; ;;
i*86v32) i*86v32)
cpu=$(echo "$1" | sed -e 's/86.*/86/') cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc vendor=pc
basic_os=sysv32 basic_os=sysv32
;; ;;
i*86v4*) i*86v4*)
cpu=$(echo "$1" | sed -e 's/86.*/86/') cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc vendor=pc
basic_os=sysv4 basic_os=sysv4
;; ;;
i*86v) i*86v)
cpu=$(echo "$1" | sed -e 's/86.*/86/') cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc vendor=pc
basic_os=sysv basic_os=sysv
;; ;;
i*86sol2) i*86sol2)
cpu=$(echo "$1" | sed -e 's/86.*/86/') cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc vendor=pc
basic_os=solaris2 basic_os=solaris2
;; ;;
...@@ -917,14 +932,16 @@ case $basic_machine in ...@@ -917,14 +932,16 @@ case $basic_machine in
;; ;;
leon-*|leon[3-9]-*) leon-*|leon[3-9]-*)
cpu=sparc cpu=sparc
vendor=$(echo "$basic_machine" | sed 's/-.*//') vendor=`echo "$basic_machine" | sed 's/-.*//'`
;; ;;
*-*) *-*)
# shellcheck disable=SC2162 # shellcheck disable=SC2162
saved_IFS=$IFS
IFS="-" read cpu vendor <<EOF IFS="-" read cpu vendor <<EOF
$basic_machine $basic_machine
EOF EOF
IFS=$saved_IFS
;; ;;
# We use `pc' rather than `unknown' # We use `pc' rather than `unknown'
# because (1) that's what they normally are, and # because (1) that's what they normally are, and
...@@ -1003,6 +1020,11 @@ case $cpu-$vendor in ...@@ -1003,6 +1020,11 @@ case $cpu-$vendor in
;; ;;
# Here we normalize CPU types with a missing or matching vendor # Here we normalize CPU types with a missing or matching vendor
armh-unknown | armh-alt)
cpu=armv7l
vendor=alt
basic_os=${basic_os:-linux-gnueabihf}
;;
dpx20-unknown | dpx20-bull) dpx20-unknown | dpx20-bull)
cpu=rs6000 cpu=rs6000
vendor=bull vendor=bull
...@@ -1084,7 +1106,7 @@ case $cpu-$vendor in ...@@ -1084,7 +1106,7 @@ case $cpu-$vendor in
cpu=mipsisa64sb1el cpu=mipsisa64sb1el
;; ;;
sh5e[lb]-*) sh5e[lb]-*)
cpu=$(echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/') cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
;; ;;
spur-*) spur-*)
cpu=spur cpu=spur
...@@ -1102,9 +1124,9 @@ case $cpu-$vendor in ...@@ -1102,9 +1124,9 @@ case $cpu-$vendor in
cpu=x86_64 cpu=x86_64
;; ;;
xscale-* | xscalee[bl]-*) xscale-* | xscalee[bl]-*)
cpu=$(echo "$cpu" | sed 's/^xscale/arm/') cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
;; ;;
arm64-*) arm64-* | aarch64le-*)
cpu=aarch64 cpu=aarch64
;; ;;
...@@ -1165,7 +1187,7 @@ case $cpu-$vendor in ...@@ -1165,7 +1187,7 @@ case $cpu-$vendor in
| alphapca5[67] | alpha64pca5[67] \ | alphapca5[67] | alpha64pca5[67] \
| am33_2.0 \ | am33_2.0 \
| amdgcn \ | amdgcn \
| arc | arceb | arc64 \ | arc | arceb | arc32 | arc64 \
| arm | arm[lb]e | arme[lb] | armv* \ | arm | arm[lb]e | arme[lb] | armv* \
| avr | avr32 \ | avr | avr32 \
| asmjs \ | asmjs \
...@@ -1287,35 +1309,37 @@ esac ...@@ -1287,35 +1309,37 @@ esac
if test x$basic_os != x if test x$basic_os != x
then then
# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just # First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
# set os. # set os.
case $basic_os in case $basic_os in
gnu/linux*) gnu/linux*)
kernel=linux kernel=linux
os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|') os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
;; ;;
os2-emx) os2-emx)
kernel=os2 kernel=os2
os=$(echo $basic_os | sed -e 's|os2-emx|emx|') os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
;; ;;
nto-qnx*) nto-qnx*)
kernel=nto kernel=nto
os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|') os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
;; ;;
*-*) *-*)
# shellcheck disable=SC2162 # shellcheck disable=SC2162
saved_IFS=$IFS
IFS="-" read kernel os <<EOF IFS="-" read kernel os <<EOF
$basic_os $basic_os
EOF EOF
IFS=$saved_IFS
;; ;;
# Default OS when just kernel was specified # Default OS when just kernel was specified
nto*) nto*)
kernel=nto kernel=nto
os=$(echo $basic_os | sed -e 's|nto|qnx|') os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
;; ;;
linux*) linux*)
kernel=linux kernel=linux
os=$(echo $basic_os | sed -e 's|linux|gnu|') os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
;; ;;
*) *)
kernel= kernel=
...@@ -1336,7 +1360,7 @@ case $os in ...@@ -1336,7 +1360,7 @@ case $os in
os=cnk os=cnk
;; ;;
solaris1 | solaris1.*) solaris1 | solaris1.*)
os=$(echo $os | sed -e 's|solaris1|sunos4|') os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
;; ;;
solaris) solaris)
os=solaris2 os=solaris2
...@@ -1365,7 +1389,7 @@ case $os in ...@@ -1365,7 +1389,7 @@ case $os in
os=sco3.2v4 os=sco3.2v4
;; ;;
sco3.2.[4-9]*) sco3.2.[4-9]*)
os=$(echo $os | sed -e 's/sco3.2./sco3.2v/') os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
;; ;;
sco*v* | scout) sco*v* | scout)
# Don't match below # Don't match below
...@@ -1395,7 +1419,7 @@ case $os in ...@@ -1395,7 +1419,7 @@ case $os in
os=lynxos os=lynxos
;; ;;
mac[0-9]*) mac[0-9]*)
os=$(echo "$os" | sed -e 's|mac|macos|') os=`echo "$os" | sed -e 's|mac|macos|'`
;; ;;
opened*) opened*)
os=openedition os=openedition
...@@ -1404,10 +1428,10 @@ case $os in ...@@ -1404,10 +1428,10 @@ case $os in
os=os400 os=os400
;; ;;
sunos5*) sunos5*)
os=$(echo "$os" | sed -e 's|sunos5|solaris2|') os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
;; ;;
sunos6*) sunos6*)
os=$(echo "$os" | sed -e 's|sunos6|solaris3|') os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
;; ;;
wince*) wince*)
os=wince os=wince
...@@ -1441,7 +1465,7 @@ case $os in ...@@ -1441,7 +1465,7 @@ case $os in
;; ;;
# Preserve the version number of sinix5. # Preserve the version number of sinix5.
sinix5.*) sinix5.*)
os=$(echo $os | sed -e 's|sinix|sysv|') os=`echo "$os" | sed -e 's|sinix|sysv|'`
;; ;;
sinix*) sinix*)
os=sysv4 os=sysv4
...@@ -1688,7 +1712,7 @@ fi ...@@ -1688,7 +1712,7 @@ fi
# Now, validate our (potentially fixed-up) OS. # Now, validate our (potentially fixed-up) OS.
case $os in case $os in
# Sometimes we do "kernel-libc", so those need to count as OSes. # Sometimes we do "kernel-libc", so those need to count as OSes.
musl* | newlib* | uclibc*) musl* | newlib* | relibc* | uclibc*)
;; ;;
# Likewise for "kernel-abi" # Likewise for "kernel-abi"
eabi* | gnueabi*) eabi* | gnueabi*)
...@@ -1729,7 +1753,8 @@ case $os in ...@@ -1729,7 +1753,8 @@ case $os in
| skyos* | haiku* | rdos* | toppers* | drops* | es* \ | skyos* | haiku* | rdos* | toppers* | drops* | es* \
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*) | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
| fiwix* )
;; ;;
# This one is extra strict with allowed versions # This one is extra strict with allowed versions
sco3.2v2 | sco3.2v[4-9]* | sco5v6*) sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
...@@ -1746,11 +1771,12 @@ esac ...@@ -1746,11 +1771,12 @@ esac
# As a final step for OS-related things, validate the OS-kernel combination # As a final step for OS-related things, validate the OS-kernel combination
# (given a valid OS), if there is a kernel. # (given a valid OS), if there is a kernel.
case $kernel-$os in case $kernel-$os in
linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* ) linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \
| linux-musl* | linux-relibc* | linux-uclibc* )
;; ;;
uclinux-uclibc* ) uclinux-uclibc* )
;; ;;
-dietlibc* | -newlib* | -musl* | -uclibc* ) -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* )
# These are just libc implementations, not actual OSes, and thus # These are just libc implementations, not actual OSes, and thus
# require a kernel. # require a kernel.
echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
......
...@@ -4,6 +4,7 @@ include(ExternalProject) ...@@ -4,6 +4,7 @@ include(ExternalProject)
set(INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../install) set(INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../install)
set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../archives) set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../archives)
set(patch_dir ${PROJECT_SOURCE_DIR}/third_party/patches)
set(COMMON_ARGS --quiet --disable-shared --enable-static --prefix=${INSTALL_DIR} --with-pic --disable-dependency-tracking --disable-debug --disable-examples --disable-doc) set(COMMON_ARGS --quiet --disable-shared --enable-static --prefix=${INSTALL_DIR} --with-pic --disable-dependency-tracking --disable-debug --disable-examples --disable-doc)
# To pass custom environment variables to ExternalProject_Add command, # To pass custom environment variables to ExternalProject_Add command,
...@@ -21,7 +22,7 @@ ExternalProject_Add(mad ...@@ -21,7 +22,7 @@ ExternalProject_Add(mad
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://downloads.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz URL https://downloads.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz
URL_HASH SHA256=bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690 URL_HASH SHA256=bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690
PATCH_COMMAND patch < ${CMAKE_CURRENT_SOURCE_DIR}/patch/libmad.patch && cp ${CMAKE_CURRENT_SOURCE_DIR}/patch/config.guess ${CMAKE_CURRENT_BINARY_DIR}/src/mad/config.guess && cp ${CMAKE_CURRENT_SOURCE_DIR}/patch/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/mad/config.sub PATCH_COMMAND patch < ${patch_dir}/libmad.patch && cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/mad/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/mad/configure ${COMMON_ARGS} CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/mad/configure ${COMMON_ARGS}
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -38,6 +39,7 @@ ExternalProject_Add(amr ...@@ -38,6 +39,7 @@ ExternalProject_Add(amr
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-0.1.5.tar.gz URL https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-0.1.5.tar.gz
URL_HASH SHA256=2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341 URL_HASH SHA256=2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/amr/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/amr/configure ${COMMON_ARGS} CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/amr/configure ${COMMON_ARGS}
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -54,8 +56,8 @@ ExternalProject_Add(lame ...@@ -54,8 +56,8 @@ ExternalProject_Add(lame
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz URL https://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
URL_HASH SHA256=24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff URL_HASH SHA256=24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/lame/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lame/configure ${COMMON_ARGS} --enable-nasm CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lame/configure ${COMMON_ARGS} --enable-nasm
PATCH_COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/patch/config.guess ${CMAKE_CURRENT_BINARY_DIR}/src/lame/config.guess && cp ${CMAKE_CURRENT_SOURCE_DIR}/patch/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/lame/config.sub
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
LOG_UPDATE ON LOG_UPDATE ON
...@@ -71,6 +73,7 @@ ExternalProject_Add(ogg ...@@ -71,6 +73,7 @@ ExternalProject_Add(ogg
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz URL https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz
URL_HASH SHA256=c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985 URL_HASH SHA256=c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/configure ${COMMON_ARGS} CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/configure ${COMMON_ARGS}
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -88,6 +91,7 @@ ExternalProject_Add(flac ...@@ -88,6 +91,7 @@ ExternalProject_Add(flac
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.3.2.tar.xz URL https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.3.2.tar.xz
URL_HASH SHA256=91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f URL_HASH SHA256=91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/flac/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/flac/configure ${COMMON_ARGS} --with-ogg --disable-cpplibs CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/flac/configure ${COMMON_ARGS} --with-ogg --disable-cpplibs
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -105,6 +109,7 @@ ExternalProject_Add(vorbis ...@@ -105,6 +109,7 @@ ExternalProject_Add(vorbis
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz URL https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz
URL_HASH SHA256=6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb URL_HASH SHA256=6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/configure ${COMMON_ARGS} --with-ogg CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/configure ${COMMON_ARGS} --with-ogg
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -122,6 +127,7 @@ ExternalProject_Add(opus ...@@ -122,6 +127,7 @@ ExternalProject_Add(opus
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opus-1.3.1.tar.gz URL https://ftp.osuosl.org/pub/xiph/releases/opus/opus-1.3.1.tar.gz
URL_HASH SHA256=65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d URL_HASH SHA256=65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/opus/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opus/configure ${COMMON_ARGS} --with-ogg CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opus/configure ${COMMON_ARGS} --with-ogg
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -139,6 +145,7 @@ ExternalProject_Add(opusfile ...@@ -139,6 +145,7 @@ ExternalProject_Add(opusfile
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opusfile-0.12.tar.gz URL https://ftp.osuosl.org/pub/xiph/releases/opus/opusfile-0.12.tar.gz
URL_HASH SHA256=118d8601c12dd6a44f52423e68ca9083cc9f2bfe72da7a8c1acb22a80ae3550b URL_HASH SHA256=118d8601c12dd6a44f52423e68ca9083cc9f2bfe72da7a8c1acb22a80ae3550b
PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/configure ${COMMON_ARGS} --disable-http CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/configure ${COMMON_ARGS} --disable-http
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
...@@ -200,8 +207,8 @@ ExternalProject_Add(sox ...@@ -200,8 +207,8 @@ ExternalProject_Add(sox
DOWNLOAD_DIR ${ARCHIVE_DIR} DOWNLOAD_DIR ${ARCHIVE_DIR}
URL https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2 URL https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2
URL_HASH SHA256=81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c URL_HASH SHA256=81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c
PATCH_COMMAND patch -p1 < ${patch_dir}/sox.patch && cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/sox/
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/sox/configure ${COMMON_ARGS} ${SOX_OPTIONS} CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/sox/configure ${COMMON_ARGS} ${SOX_OPTIONS}
PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/patch/sox.patch
BUILD_BYPRODUCTS ${SOX_LIBRARIES} BUILD_BYPRODUCTS ${SOX_LIBRARIES}
DOWNLOAD_NO_PROGRESS ON DOWNLOAD_NO_PROGRESS ON
LOG_DOWNLOAD ON LOG_DOWNLOAD ON
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment