From: Joseph Lynch Date: Wed, 7 Oct 2015 02:43:18 +0000 (-0700) Subject: BUILD: Fix the build on OSX (htonll/ntohll) X-Git-Tag: v1.6.0~37 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ffaf30b6891ecdf782d435e252623586bc05ff8c;p=thirdparty%2Fhaproxy.git BUILD: Fix the build on OSX (htonll/ntohll) htonll and ntohll were defined in 5b4dd683cb but on osx they are already defined in sys/_endian.h. So, we check if they are defined before declaring them. [wt: no backport needed] --- diff --git a/include/common/standard.h b/include/common/standard.h index d28ab79c8f..0fe0fb08b3 100644 --- a/include/common/standard.h +++ b/include/common/standard.h @@ -1004,6 +1004,7 @@ static inline unsigned char utf8_return_length(unsigned char code) * the whole code is optimized out. In little endian, with a decent compiler, * a few bswap and 2 shifts are left, which is the minimum acceptable. */ +#ifndef htonll static inline unsigned long long htonll(unsigned long long a) { union { @@ -1015,12 +1016,15 @@ static inline unsigned long long htonll(unsigned long long a) } w = { .by64 = a }; return ((unsigned long long)htonl(w.by32.w1) << 32) | htonl(w.by32.w2); } +#endif /* Turns 64-bit value from network byte order to host byte order. */ +#ifndef ntohll static inline unsigned long long ntohll(unsigned long long a) { return htonll(a); } +#endif /* returns a 64-bit a timestamp with the finest resolution available. The * unit is intentionally not specified. It's mostly used to compare dates.