summaryrefslogtreecommitdiff
path: root/math/cado-nfs/files/patch-utils_cado-endian.h
blob: b29617f00ec260bf92e751d5e212db080de2ed38 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
--- utils/cado-endian.h.orig	2021-09-16 01:25:08 UTC
+++ utils/cado-endian.h
@@ -27,20 +27,16 @@
 
 // pragma no prototypes
 
-#ifdef HAVE_GLIBC
-// GNU libc offers the helpful header <endian.h> which defines
-// __BYTE_ORDER
-# include <endian.h>
-# if (__BYTE_ORDER == __LITTLE_ENDIAN)
+# if (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
 #  define CADO_LITTLE_ENDIAN
-# elif (__BYTE_ORDER == __BIG_ENDIAN)
+# elif (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
 #  define CADO_BIG_ENDIAN
-# elif (__BYTE_ORDER == __PDP_ENDIAN)
+# elif (__BYTE_ORDER__ == __PDP_ENDIAN)
 #  define CADO_PDP_ENDIAN
 # else
 #  error Unknown machine endianness detected.
 # endif
-# define CADO_BYTE_ORDER __BYTE_ORDER
+# define CADO_BYTE_ORDER __BYTE_ORDER__
 /* There is no serious reason to think that _BIG_ENDIAN or _LITTLE_ENDIAN
  * being defined actually means that the machine is big (resp, little)
  * endian. Systems may like to unconditionally define these as constants
@@ -54,25 +50,4 @@
 # define CADO_LITTLE_ENDIAN
 # define CADO_BYTE_ORDER 1234
  */
-#elif defined(__sparc) || defined(__sparc__) \
-   || defined(_POWER) || defined(__powerpc__) \
-   || defined(__ppc__) || defined(__hpux) \
-   || defined(_MIPSEB) || defined(_POWER) \
-   || defined(__AARCH64EB__) \
-   || defined(__s390__)
-# define CADO_BIG_ENDIAN
-# define CADO_BYTE_ORDER 4321
-#elif defined(__i386__) || defined(__alpha__) \
-   || defined(__ia64) || defined(__ia64__) \
-   || defined(_M_IX86) || defined(_M_IA64) \
-   || defined(_M_ALPHA) || defined(__amd64) \
-   || defined(__amd64__) || defined(_M_AMD64) \
-   || defined(__x86_64) || defined(__x86_64__) \
-   || defined(__AARCH64EL__) \
-   || defined(_M_X64)
-# define CADO_LITTLE_ENDIAN
-# define CADO_BYTE_ORDER 1234
-#else
-# error The file cado-endian.h needs to be set up for your CPU type.
-#endif
 #endif