libosmocore 0.9.6-23.20170220git32ee5af8.fc42
Osmocom core library
Loading...
Searching...
No Matches
endian.h
1#pragma once
2
15#if defined(__FreeBSD__)
16#include <sys/endian.h>
17 #if BYTE_ORDER == LITTLE_ENDIAN
18 #define OSMO_IS_LITTLE_ENDIAN 1
19 #define OSMO_IS_BIG_ENDIAN 0
20 #elif BYTE_ORDER == BIG_ENDIAN
21 #define OSMO_IS_LITTLE_ENDIAN 0
22 #define OSMO_IS_BIG_ENDIAN 1
23 #else
24 #error "Unknown endian"
25 #endif
26#elif defined(__APPLE__)
27#include <machine/endian.h>
28 #if defined(__DARWIN_LITTLE_ENDIAN)
29 #define OSMO_IS_LITTLE_ENDIAN 1
30 #define OSMO_IS_BIG_ENDIAN 0
31 #elif defined(__DARWIN_BIG_ENDIAN)
32 #define OSMO_IS_LITTLE_ENDIAN 0
33 #define OSMO_IS_BIG_ENDIAN 1
34 #else
35 #error "Unknown endian"
36 #endif
37#else
38#include <endian.h>
39 #if __BYTE_ORDER == __LITTLE_ENDIAN
40 #define OSMO_IS_LITTLE_ENDIAN 1
41 #define OSMO_IS_BIG_ENDIAN 0
42 #elif __BYTE_ORDER == __BIG_ENDIAN
43 #define OSMO_IS_LITTLE_ENDIAN 0
44 #define OSMO_IS_BIG_ENDIAN 1
45 #else
46 #error "Unknown endian"
47 #endif
48#endif
49