8 #include <asm/byteorder.h>
10 /* Linux' asm/byteorder.h defines either __LITTLE_ENDIAN or
11 __BIG_ENDIAN, but the glibc/BSD-ish macros expect both to be
12 defined with __BYTE_ORDER defining which is actually used... */
14 #if defined(__LITTLE_ENDIAN)
15 # undef __LITTLE_ENDIAN
16 # define __LITTLE_ENDIAN 1234
17 # define __BIG_ENDIAN 4321
18 # define __PDP_ENDIAN 3412
19 # define __BYTE_ORDER __LITTLE_ENDIAN
20 #elif defined(__BIG_ENDIAN)
22 # define __LITTLE_ENDIAN 1234
23 # define __BIG_ENDIAN 4321
24 # define __PDP_ENDIAN 3412
25 # define __BYTE_ORDER __BIG_ENDIAN
26 #elif defined(__PDP_ENDIAN)
28 # define __LITTLE_ENDIAN 1234
29 # define __BIG_ENDIAN 4321
30 # define __PDP_ENDIAN 3412
31 # define __BYTE_ORDER __PDP_ENDIAN
33 # error "Unknown byte order!"
36 #define LITTLE_ENDIAN __LITTLE_ENDIAN
37 #define BIG_ENDIAN __BIG_ENDIAN
38 #define PDP_ENDIAN __PDP_ENDIAN
39 #define BYTE_ORDER __BYTE_ORDER
41 #endif /* _ENDIAN_H */