20 /* we should actually create <ac/stdlib.h> */
27 # define strrchr rindex
31 # define memcpy(d, s, n) ((void) bcopy ((s), (d), (n)))
32 # define memmove(d, s, n) ((void) bcopy ((s), (d), (n)))
37 /* strdup() is missing, declare our own version */
38 extern char *strdup( const char *s );
40 /* some systems have strdup, but fail to declare it */
41 extern char *strdup();
45 * some systems fail to declare strcasecmp() and strncasecmp()
46 * we need them declared so we can obtain pointers to them
48 extern int strcasecmp(), strncasecmp();
51 # if defined( HAVE_MEMMOVE )
52 # define SAFEMEMCPY( d, s, n ) memmove((d), (s), (n))
53 # elif defined( HAVE_BCOPY )
54 # define SAFEMEMCPY( d, s, n ) bcopy((s), (d), (n))
56 /* nothing left but memcpy() */
57 # define SAFEMEMCPY( d, s, n ) memcpy((d), (s), (n))
62 #endif /* _AC_STRING_H */