From 8c2b0dc83d9840da4d993a5dbb15c5974ad5a188 Mon Sep 17 00:00:00 2001 From: Peter Foley Date: Thu, 25 Sep 2014 11:23:32 -0700 Subject: Documentation: support glibc versions without htole macros glibc 2.9 introduced the htole<16/32/64> macros, add them to tools/include to support older versions of glibc. Reported-by: Andrew Morton Signed-off-by: Peter Foley Signed-off-by: Randy Dunlap Signed-off-by: Jiri Kosina --- tools/include/tools/endian.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 tools/include/tools/endian.h (limited to 'tools/include/tools') diff --git a/tools/include/tools/endian.h b/tools/include/tools/endian.h new file mode 100644 index 000000000000..5d42e20ab83d --- /dev/null +++ b/tools/include/tools/endian.h @@ -0,0 +1,32 @@ +#ifndef _TOOLS_ENDIAN_H +#define _TOOLS_ENDIAN_H + +#include + +#if __BYTE_ORDER == __LITTLE_ENDIAN + +#ifndef htole16 +#define htole16(x) (x) +#endif +#ifndef htole32 +#define htole32(x) (x) +#endif +#ifndef htole64 +#define htole64(x) (x) +#endif + +#else /* __BYTE_ORDER */ + +#ifndef htole16 +#define htole16(x) __bswap_16(x) +#endif +#ifndef htole32 +#define htole32(x) __bswap_32(x) +#endif +#ifndef htole64 +#define htole64(x) __bswap_64(x) +#endif + +#endif + +#endif /* _TOOLS_ENDIAN_H */ -- cgit v1.2.3-59-g8ed1b