[PATCH] pr_fnmatch.c: use mempcpy, not __mempcpy to fix linker issue with uClibc

The standard name (as checked for by configure) for the function is mempcpy,
not __mempcpy, so use that instead.

The existing code happens to work on glibc, as that provides an __mempcpy
alias, but other C libraries (E.G.  uClibc) don't:

./host/usr/bin/arm-linux-nm -D ./staging/lib/libuClibc-0.9.33.2.so | grep mempcpy
00035d2c W mempcpy
00036cf8 W wmempcpy

vs

./host/usr/bin/arm-none-linux-gnueabi-nm -D staging/lib/libc-2.18.so | grep mempcpy
0007d140 T mempcpy
0007d140 T __mempcpy
000e15f0 T __mempcpy_chk
00081828 T __mempcpy_small
00083148 W wmempcpy
000e4e3c T __wmempcpy_chk

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
 lib/pr_fnmatch.c      |    2 +-
 lib/pr_fnmatch_loop.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Index: proftpd-1.3.4d/lib/pr_fnmatch.c
===================================================================
--- proftpd-1.3.4d.orig/lib/pr_fnmatch.c
+++ proftpd-1.3.4d/lib/pr_fnmatch.c
@@ -250,7 +250,7 @@
 # endif
 # define STRLEN(S) strlen (S)
 # define STRCAT(D, S) strcat (D, S)
-# define MEMPCPY(D, S, N) __mempcpy (D, S, N)
+# define MEMPCPY(D, S, N) mempcpy (D, S, N)
 # define MEMCHR(S, C, N) memchr (S, C, N)
 # define STRCOLL(S1, S2) strcoll (S1, S2)
 # include "pr_fnmatch_loop.c"
Index: proftpd-1.3.4d/lib/pr_fnmatch_loop.c
===================================================================
--- proftpd-1.3.4d.orig/lib/pr_fnmatch_loop.c
+++ proftpd-1.3.4d/lib/pr_fnmatch_loop.c
@@ -54,7 +54,7 @@
 /* Copy N bytes of SRC to DEST, return pointer to bytes after the
    last written byte.  */
 static void *
-__mempcpy (void *dest, const void *src, size_t n)
+mempcpy (void *dest, const void *src, size_t n)
 {
   return (char *) memcpy (dest, src, n) + n;
 }
