mirror of git://git.musl-libc.org/musl
more locale_t interfaces (string stuff) and header updates
this should be everything except for some functions where the non-_l version isn't even implemented yet (mainly some non-ISO-C wcs* functions).
This commit is contained in:
parent
c09b6f8ab6
commit
36bf56940a
|
@ -13,6 +13,11 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
#define __NEED_size_t
|
||||
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
||||
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
|
||||
#define __NEED_locale_t
|
||||
#endif
|
||||
|
||||
#include <bits/alltypes.h>
|
||||
|
||||
void *memcpy (void *, const void *, size_t);
|
||||
|
@ -57,6 +62,9 @@ size_t strnlen (const char *, size_t);
|
|||
char *strdup (const char *);
|
||||
char *strndup (const char *, size_t);
|
||||
char *strsignal(int);
|
||||
char *strerror_l (int, locale_t);
|
||||
int strcoll_l (const char *, const char *, locale_t);
|
||||
size_t strxfrm_l (char *, const char *, size_t, locale_t);
|
||||
#endif
|
||||
|
||||
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
|
||||
|
|
|
@ -7,6 +7,7 @@ extern "C" {
|
|||
|
||||
|
||||
#define __NEED_size_t
|
||||
#define __NEED_locale_t
|
||||
#include <bits/alltypes.h>
|
||||
|
||||
|
||||
|
@ -22,6 +23,9 @@ char *rindex (const char *, int);
|
|||
int strcasecmp (const char *, const char *);
|
||||
int strncasecmp (const char *, const char *, size_t);
|
||||
|
||||
int strcasecmp_l (const char *, const char *, locale_t);
|
||||
int strncasecmp_l (const char *, const char *, size_t, locale_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -23,6 +23,7 @@ extern "C" {
|
|||
#define __NEED_clockid_t
|
||||
#define __NEED_timer_t
|
||||
#define __NEED_pid_t
|
||||
#define __NEED_locale_t
|
||||
#endif
|
||||
|
||||
#include <bits/alltypes.h>
|
||||
|
@ -58,6 +59,8 @@ char *ctime (const time_t *);
|
|||
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
||||
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
|
||||
|
||||
size_t strftime_l (char *, size_t, const char *, const struct tm *, locale_t);
|
||||
|
||||
struct tm *gmtime_r (const time_t *, struct tm *);
|
||||
struct tm *localtime_r (const time_t *, struct tm *);
|
||||
char *asctime_r (const struct tm *, char *);
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#include <locale.h>
|
||||
#include <langinfo.h>
|
||||
|
||||
char *nl_langinfo_l(nl_item item, locale_t l)
|
||||
{
|
||||
return nl_langinfo(item);
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
#include <strings.h>
|
||||
#include <ctype.h>
|
||||
|
||||
int strcasecmp_l(const char *l, const char *r, locale_t loc)
|
||||
{
|
||||
return strcasecmp(l, r);
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
#include <string.h>
|
||||
#include <locale.h>
|
||||
|
||||
int strcoll_l(const char *l, const char *r, locale_t loc)
|
||||
{
|
||||
return strcoll(l, r);
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
#include <string.h>
|
||||
#include <locale.h>
|
||||
|
||||
char *strerror_l(int err, locale_t l)
|
||||
{
|
||||
return strerror(err);
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
#include <locale.h>
|
||||
#include <time.h>
|
||||
|
||||
size_t strftime_l(char *s, size_t n, const char *f, const struct tm *tm, locale_t l)
|
||||
{
|
||||
return strftime(s, n, f, tm);
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
#include <strings.h>
|
||||
#include <locale.h>
|
||||
|
||||
int strncasecmp_l(const char *l, const char *r, size_t n, locale_t loc)
|
||||
{
|
||||
return strncasecmp(l, r, n);
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
#include <string.h>
|
||||
|
||||
size_t strxfrm_l(char *dest, const char *src, size_t n, locale_t l)
|
||||
{
|
||||
return strxfrm(dest, src, n);
|
||||
}
|
Loading…
Reference in New Issue