skalibs

Mirror/fork of https://skarnet.org/software/skalibs/
git clone https://ccx.te2000.cz/git/skalibs
Log | Files | Refs | README | LICENSE

commit 65ee731b75c4fc24b2a73b32cc081704fc0b6063
parent 370bdd3c5739aa8d94753e841aecf71fa04d9400
Author: Laurent Bercot <ska-skaware@skarnet.org>
Date:   Wed, 13 Dec 2023 08:39:23 +0000

 Better endianness detection for Solaris

Signed-off-by: Laurent Bercot <ska@appnovation.com>

Diffstat:
Mconfigure | 18++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/configure b/configure @@ -196,7 +196,7 @@ trybasic () { tryendianness () { echo "Checking endianness..." if iscached endianness ; then return ; fi - for i in endian.h sys/endian.h machine/endian.h arpa/nameser_compat.h ; do + for i in endian.h sys/endian.h machine/endian.h ; do cat > "$tmpc" <<EOF #undef _POSIX_C_SOURCE #undef _XOPEN_SOURCE @@ -216,7 +216,7 @@ int c = BYTE_ORDER ; EOF trybasic "$tmpc" || continue for j in little big pdp ; do - k=`echo $j | tr a-z A-Z` + k=`echo $j | tr '[:lower:]' '[:upper:]'` cat > "$tmpc" <<EOF #undef _POSIX_C_SOURCE #undef _XOPEN_SOURCE @@ -242,6 +242,20 @@ EOF rm -f "$tmpc" fail "$0: error: unable to determine endianness according to $i" done + + for j in little big ; do + k=`echo $j | tr '[:lower:]' '[:upper:]'` + cat > "$tmpc" <<EOF +#include <sys/isa_defs.h> +int a = _${k}_ENDIAN ; +EOF + if trybasic "$tmpc" ; then + echo "endianness: $j" >> "$sysdeps/sysdeps" + echo " ... $j" + rm -f "$tmpc" + return + fi + done rm -f "$tmpc" fail "$0: error: unable to determine endianness: no suitable endian.h found" }