From bfe42ca422757876c0ce38d2d4dd106584334fa3 Mon Sep 17 00:00:00 2001 From: Steven Dake Date: Fri, 15 Apr 2005 21:15:41 +0000 Subject: [PATCH] autodetect endian and wordsize with gnuisms (Logical change 1.179) git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@601 fd59a12c-fef9-0310-b244-a6a79926bd2f --- exec/crypto.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/exec/crypto.c b/exec/crypto.c index 2ba50524..9769c694 100644 --- a/exec/crypto.c +++ b/exec/crypto.c @@ -26,21 +26,18 @@ typedef unsigned long ulong32; typedef unsigned long long ulong64; -/* - * Tested on arm2401, i386, x86_64 - */ -#if defined(__arm__) +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define ENDIAN_LITTLE +#endif +#if __BYTE_ORDER == __BIG_ENDIAN #define ENDIAN_BIG -#define ENDIAN_32BITWORD #endif -#if defined(__i386__) -#define ENDIAN_LITTLE -#define ENDIAN_32BITWORD -#endif -#if defined(__x86_64__) -#define ENDIAN_LITTLE +#if __WORDIZE == 64 #define ENDIAN_64BITWORD #endif +#if __WORDIZE == 32 +#define ENDIAN_32BITWORD +#endif /* ---- HELPER MACROS ---- */ #ifdef ENDIAN_NEUTRAL