diff --git a/base/include/android-base/endian.h b/base/include/android-base/endian.h index 10efaa3a8..2d0f614ea 100644 --- a/base/include/android-base/endian.h +++ b/base/include/android-base/endian.h @@ -18,6 +18,9 @@ /* A cross-platform equivalent of bionic's . */ +/* For __BIONIC__ and __GLIBC__ */ +#include + #if defined(__BIONIC__) #include @@ -38,6 +41,9 @@ #define betoh16(x) be16toh(x) #define betoh32(x) be32toh(x) #define betoh64(x) be64toh(x) +#define letoh16(x) le16toh(x) +#define letoh32(x) le32toh(x) +#define letoh64(x) le64toh(x) #else @@ -45,10 +51,8 @@ /* macOS has some of the basics. */ #include #else -/* Windows really has nothing. */ -#define LITTLE_ENDIAN __LITTLE_ENDIAN -#define BIG_ENDIAN __BIG_ENDIAN -#define BYTE_ORDER __BYTE_ORDER +/* Windows has even less. */ +#include #define htons(x) __builtin_bswap16(x) #define htonl(x) __builtin_bswap32(x) #define ntohs(x) __builtin_bswap16(x)