platform.h: enable mempcpy for FreeBSD
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/include/platform.h b/include/platform.h
index 1168a34..0b0fce1 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -451,7 +451,8 @@
#endif
#if defined(__FreeBSD__)
-//# undef HAVE_MEMPCPY - not yet confirmed
+/* users say mempcpy is not present in FreeBSD 9.x */
+# undef HAVE_MEMPCPY
# undef HAVE_CLEARENV
# undef HAVE_FDATASYNC
# undef HAVE_MNTENT_H
@@ -517,6 +518,10 @@
#ifndef HAVE_MEMPCPY
#include <string.h>
+/* In case we are wrong about !HAVE_MEMPCPY, and toolchain _does_ have
+ * mempcpy(), avoid colliding with it:
+ */
+#define mempcpy bb__mempcpy
static ALWAYS_INLINE void *mempcpy(void *dest, const void *src, size_t len)
{
return memcpy(dest, src, len) + len;