|
74 | 74 | # endif |
75 | 75 | # endif |
76 | 76 |
|
77 | | -#else /* _*/ |
| 77 | +#elif defined(unix) || defined(__unix) || defined(__APPLE__) |
78 | 78 |
|
79 | 79 | #include <arpa/inet.h> /* __BYTE_ORDER */ |
80 | 80 | # if defined(linux) |
|
85 | 85 |
|
86 | 86 | #if MSGPACK_ENDIAN_LITTLE_BYTE |
87 | 87 |
|
88 | | -# ifdef _WIN32 |
89 | | -# if defined(ntohs) |
| 88 | +# if defined(unix) || defined(__unix) || defined(__APPLE__) |
90 | 89 | # define _msgpack_be16(x) ntohs(x) |
91 | | -# elif defined(_byteswap_ushort) || (defined(_MSC_VER) && _MSC_VER >= 1400) |
92 | | -# define _msgpack_be16(x) ((uint16_t)_byteswap_ushort((unsigned short)x)) |
93 | | -# else |
94 | | -# define _msgpack_be16(x) ( \ |
95 | | - ((((uint16_t)x) << 8) ) | \ |
96 | | - ((((uint16_t)x) >> 8) ) ) |
97 | | -# endif |
98 | 90 | # else |
99 | | -# define _msgpack_be16(x) ntohs(x) |
| 91 | +# if defined(ntohs) |
| 92 | +# define _msgpack_be16(x) ntohs(x) |
| 93 | +# elif defined(_byteswap_ushort) || (defined(_MSC_VER) && _MSC_VER >= 1400) |
| 94 | +# define _msgpack_be16(x) ((uint16_t)_byteswap_ushort((unsigned short)x)) |
| 95 | +# else |
| 96 | +# define _msgpack_be16(x) ( \ |
| 97 | + ((((uint16_t)x) << 8) ) | \ |
| 98 | + ((((uint16_t)x) >> 8) ) ) |
| 99 | +# endif |
100 | 100 | # endif |
101 | 101 |
|
102 | | -# ifdef _WIN32 |
103 | | -# if defined(ntohl) |
104 | | -# define _msgpack_be32(x) ntohl(x) |
105 | | -# elif defined(_byteswap_ulong) || (defined(_MSC_VER) && _MSC_VER >= 1400) |
106 | | -# define _msgpack_be32(x) ((uint32_t)_byteswap_ulong((unsigned long)x)) |
107 | | -# else |
108 | | -# define _msgpack_be32(x) \ |
109 | | - ( ((((uint32_t)x) << 24) ) | \ |
110 | | - ((((uint32_t)x) << 8) & 0x00ff0000U ) | \ |
111 | | - ((((uint32_t)x) >> 8) & 0x0000ff00U ) | \ |
112 | | - ((((uint32_t)x) >> 24) ) ) |
113 | | -# endif |
| 102 | +# if defined(unix) || defined(__unix) || defined(__APPLE__) |
| 103 | +# define _msgpack_be32(x) ntohl(x) |
114 | 104 | # else |
115 | | -# define _msgpack_be32(x) ntohl(x) |
| 105 | +# if defined(ntohl) |
| 106 | +# define _msgpack_be32(x) ntohl(x) |
| 107 | +# elif defined(_byteswap_ulong) || (defined(_MSC_VER) && _MSC_VER >= 1400) |
| 108 | +# define _msgpack_be32(x) ((uint32_t)_byteswap_ulong((unsigned long)x)) |
| 109 | +# else |
| 110 | +# define _msgpack_be32(x) \ |
| 111 | + ( ((((uint32_t)x) << 24) ) | \ |
| 112 | + ((((uint32_t)x) << 8) & 0x00ff0000U ) | \ |
| 113 | + ((((uint32_t)x) >> 8) & 0x0000ff00U ) | \ |
| 114 | + ((((uint32_t)x) >> 24) ) ) |
| 115 | +# endif |
116 | 116 | # endif |
117 | 117 |
|
118 | 118 | # if defined(_byteswap_uint64) || (defined(_MSC_VER) && _MSC_VER >= 1400) |
|
0 commit comments