mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 01:51:29 +00:00
Cleanup of str* and mem* functions
Add function checks to configure.ac Use the configure HAVE_ macro rather than OS-dependent tests. I suspect that a lot of the tests hve been obsolete for many years. Add wrappers to FreeBSD. :w
This commit is contained in:
parent
7289e2639c
commit
4fb52a67b5
@ -4790,6 +4790,11 @@ AC_CHECK_FUNCS([ \
|
||||
swapcontext \
|
||||
syscall \
|
||||
utimensat \
|
||||
mempcpy \
|
||||
stpncpy \
|
||||
strchrnul \
|
||||
memrchr \
|
||||
strndup \
|
||||
])
|
||||
|
||||
# AC_CHECK_LIB adds any library found to the variable LIBS, and links these
|
||||
|
||||
@ -43,10 +43,10 @@ void f(char* a, char* b, wchar_t* wa, wchar_t* wb) {
|
||||
memcpy (a, b, 1000); // Redirects to memmove
|
||||
memcpy (a, b, 1000); // Redirects to memmove
|
||||
memmove(a, b, 1000);
|
||||
#if defined(VGO_solaris) || defined(VGO_darwin) || (defined(VGO_freebsd) && defined(__GNUC__))
|
||||
memcpy(a, b, 1000);
|
||||
#else
|
||||
#if defined(HAVE_MEMPCPY)
|
||||
mempcpy(a, b, 1000);
|
||||
#else
|
||||
memcpy(a, b, 1000);
|
||||
#endif
|
||||
bcopy (a, b, 1000); // Redirects to memmove
|
||||
strcpy (a, b);
|
||||
|
||||
@ -33,6 +33,7 @@
|
||||
#include <string.h>
|
||||
#include <strings.h>
|
||||
#include <fcntl.h>
|
||||
#include "../../config.h"
|
||||
|
||||
#ifndef HAVE_GNU_LD
|
||||
#define _sys_nerr sys_nerr
|
||||
@ -264,8 +265,7 @@ test_stpcpy (void)
|
||||
SIMPLE_COPY(stpcpy, 16, "6666666666666666", 59);
|
||||
}
|
||||
|
||||
// DDD: better done by testing for the function.
|
||||
#if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_STPNCPY)
|
||||
static void
|
||||
test_stpncpy (void)
|
||||
{
|
||||
@ -466,8 +466,7 @@ test_strchr (void)
|
||||
}
|
||||
}
|
||||
|
||||
// DDD: better done by testing for the function.
|
||||
#if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_STRCHRNUL)
|
||||
static void
|
||||
test_strchrnul (void)
|
||||
{
|
||||
@ -578,8 +577,7 @@ test_strrchr (void)
|
||||
}
|
||||
}
|
||||
|
||||
// DDD: better done by testing for the function.
|
||||
#if !defined(__APPLE__) && !defined(__sun) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_MEMRCHR)
|
||||
static void
|
||||
test_memrchr (void)
|
||||
{
|
||||
@ -1071,7 +1069,7 @@ test_memcpy (void)
|
||||
}
|
||||
}
|
||||
|
||||
#if !defined(__APPLE__) && !defined(__sun) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_MEMPCPY)
|
||||
static void
|
||||
test_mempcpy (void)
|
||||
{
|
||||
@ -1287,7 +1285,7 @@ test_bzero (void)
|
||||
equal(one, "abcdef", 4); /* Zero-length copy. */
|
||||
}
|
||||
|
||||
#if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_STRNDUP)
|
||||
static void
|
||||
test_strndup (void)
|
||||
{
|
||||
@ -1422,7 +1420,7 @@ main (void)
|
||||
/* A closely related function is stpcpy. */
|
||||
test_stpcpy ();
|
||||
|
||||
#if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_STPNCPY)
|
||||
/* stpncpy. */
|
||||
test_stpncpy ();
|
||||
#endif
|
||||
@ -1445,7 +1443,7 @@ main (void)
|
||||
/* strchr. */
|
||||
test_strchr ();
|
||||
|
||||
# if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
# if defined(HAVE_STRCHRNUL)
|
||||
/* strchrnul. */
|
||||
test_strchrnul ();
|
||||
# endif
|
||||
@ -1461,7 +1459,7 @@ main (void)
|
||||
/* strrchr. */
|
||||
test_strrchr ();
|
||||
|
||||
# if !defined(__APPLE__) && !defined(__sun) && !defined(__FreeBSD__)
|
||||
# if defined(HAVE_MEMRCHR)
|
||||
/* memrchr. */
|
||||
test_memrchr ();
|
||||
# endif
|
||||
@ -1502,7 +1500,7 @@ main (void)
|
||||
/* memmove - must work on overlap. */
|
||||
test_memmove ();
|
||||
|
||||
# if !defined(__APPLE__) && !defined(__sun) && !defined(__FreeBSD__)
|
||||
# if defined(HAVE_MEMPCPY)
|
||||
/* mempcpy */
|
||||
test_mempcpy ();
|
||||
# endif
|
||||
@ -1522,7 +1520,7 @@ main (void)
|
||||
/* bcmp - somewhat like memcmp. */
|
||||
test_bcmp ();
|
||||
|
||||
#if !defined(__APPLE__) && !defined(__FreeBSD__)
|
||||
#if defined(HAVE_STRNDUP)
|
||||
/* strndup. */
|
||||
test_strndup ();
|
||||
#endif
|
||||
|
||||
@ -461,6 +461,10 @@ static inline void my_exit ( int x )
|
||||
STRNLEN(VG_Z_LIBC_SONAME, strnlen)
|
||||
STRNLEN(VG_Z_LIBC_SONAME, __GI_strnlen)
|
||||
|
||||
#elif defined(VGO_freebsd)
|
||||
|
||||
STRNLEN(VG_Z_LIBC_SONAME, srtnlen)
|
||||
|
||||
#elif defined(VGO_darwin)
|
||||
# if DARWIN_VERS == DARWIN_10_9
|
||||
STRNLEN(libsystemZucZddylib, strnlen)
|
||||
@ -853,6 +857,9 @@ static inline void my_exit ( int x )
|
||||
STRCASECMP_L(VG_Z_LIBC_SONAME, __GI_strcasecmp_l)
|
||||
STRCASECMP_L(VG_Z_LIBC_SONAME, __GI___strcasecmp_l)
|
||||
|
||||
#elif defined(VGO_freebsd)
|
||||
STRCASECMP_L(VG_Z_LIBC_SONAME, strcasecmp_l)
|
||||
|
||||
#elif defined(VGO_darwin)
|
||||
//STRCASECMP_L(VG_Z_LIBC_SONAME, strcasecmp_l)
|
||||
|
||||
@ -891,6 +898,9 @@ static inline void my_exit ( int x )
|
||||
STRNCASECMP_L(VG_Z_LIBC_SONAME, __GI_strncasecmp_l)
|
||||
STRNCASECMP_L(VG_Z_LIBC_SONAME, __GI___strncasecmp_l)
|
||||
|
||||
#elif defined(VGO_freebsd)
|
||||
STRNCASECMP_L(VG_Z_LIBC_SONAME, strncasecmp_l)
|
||||
|
||||
#elif defined(VGO_darwin)
|
||||
//STRNCASECMP_L(VG_Z_LIBC_SONAME, strncasecmp_l)
|
||||
//STRNCASECMP_L(VG_Z_DYLD, strncasecmp_l)
|
||||
@ -972,6 +982,9 @@ static inline void my_exit ( int x )
|
||||
MEMCHR(VG_Z_LIBC_SONAME, memchr)
|
||||
MEMCHR(VG_Z_LIBC_SONAME, __GI_memchr)
|
||||
|
||||
#elif defined(VGO_freebsd)
|
||||
MEMCHR(VG_Z_LIBC_SONAME, memchr)
|
||||
|
||||
#elif defined(VGO_darwin)
|
||||
# if DARWIN_VERS == DARWIN_10_9
|
||||
MEMCHR(VG_Z_DYLD, memchr)
|
||||
@ -1673,6 +1686,8 @@ static inline void my_exit ( int x )
|
||||
GLIBC25_MEMPCPY(VG_Z_LD_LINUX_SO_3, mempcpy) /* ld-linux.so.3 */
|
||||
GLIBC25_MEMPCPY(VG_Z_LD_LINUX_X86_64_SO_2, mempcpy) /* ld-linux-x86-64.so.2 */
|
||||
|
||||
#elif defined(VGO_freebsd)
|
||||
GLIBC25_MEMPCPY(VG_Z_LIBC_SONAME, mempcpy)
|
||||
#elif defined(VGO_darwin)
|
||||
//GLIBC25_MEMPCPY(VG_Z_LIBC_SONAME, mempcpy)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user