[git commit] platform.h: enable mempcpy for FreeBSD

Denys Vlasenko vda.linux at googlemail.com
Mon Feb 2 02:51:47 UTC 2015


commit: http://git.busybox.net/busybox/commit/?id=5104645cf87f8cf37c42666c90bb259011cfac58
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 include/platform.h |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

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 @@ typedef unsigned smalluint;
 #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 @@ extern char *stpcpy(char *p, const char *to_add) FAST_FUNC;
 
 #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;


More information about the busybox-cvs mailing list