summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2019-08-14 21:06:28 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2019-08-14 21:06:28 +0000
commit19b68a66e52bfce110f687ff0eb465363f7912bd (patch)
tree34b8d49c9f437bed4df9491d21dd0a15538dd51b
parent61bffa5fc0f433163efb2efdedf26e4e1eed751f (diff)
parent888c1b9de5c6529e15f18401a55866a7e4a5c50a (diff)
Merge "Fix more endian.h issues"
-rw-r--r--base/include/android-base/endian.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/base/include/android-base/endian.h b/base/include/android-base/endian.h
index 10efaa3a81..2d0f614eaf 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 <sys/endian.h>. */
+/* For __BIONIC__ and __GLIBC__ */
+#include <sys/cdefs.h>
+
#if defined(__BIONIC__)
#include <sys/endian.h>
@@ -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 <sys/_endian.h>
#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 <sys/param.h>
#define htons(x) __builtin_bswap16(x)
#define htonl(x) __builtin_bswap32(x)
#define ntohs(x) __builtin_bswap16(x)