summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-02-14 20:53:15 -0500
committerRich Felker <dalias@aerifal.cx>2011-02-14 20:53:15 -0500
commitca1aa5bae951dfd8ea85341609266688ec776482 (patch)
treeccdaf45bae06c2fa91854cb71d0b862d40d89dbc /include
parent131b5be2f44012ae952f5883e13c1ae72ce3b033 (diff)
downloadmusl-ca1aa5bae951dfd8ea85341609266688ec776482.tar.gz
more header cleanup and conformance fixes - string.h
Diffstat (limited to 'include')
-rw-r--r--include/string.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/include/string.h b/include/string.h
index f189c082..1ca02a4d 100644
--- a/include/string.h
+++ b/include/string.h
@@ -34,8 +34,6 @@ int strncmp (const char *, const char *, size_t);
int strcoll (const char *, const char *);
size_t strxfrm (char *, const char *, size_t);
-char *strdup (const char *);
-
char *strchr (const char *, int);
char *strrchr (const char *, int);
@@ -43,21 +41,28 @@ size_t strcspn (const char *, const char *);
size_t strspn (const char *, const char *);
char *strpbrk (const char *, const char *);
char *strstr (const char *, const char *);
-
char *strtok (char *, const char *);
-char *strtok_r (char *, const char *, char **);
size_t strlen (const char *);
char *strerror (int);
-int strerror_r (int, char *, size_t);
-size_t strlcat (char *, const char *, size_t);
-size_t strlcpy (char *, const char *, size_t);
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+char *strtok_r (char *, const char *, char **);
+int strerror_r (int, char *, size_t);
char *stpcpy(char *, const char *);
char *stpncpy(char *, const char *, size_t);
size_t strnlen (const char *, size_t);
+char *strdup (const char *);
+char *strndup (const char *, size_t);
+#endif
+
+#ifdef _BSD_SOURCE
+size_t strlcat (char *, const char *, size_t);
+size_t strlcpy (char *, const char *, size_t);
+#endif
#ifdef _GNU_SOURCE
int strcasecmp (const char *, const char *);