Don't you also need to add the alias __duplocale?

On Sat, Aug 15, 2020, 07:27 Waldemar Kozaczuk <[email protected]> wrote:

> Signed-off-by: Waldemar Kozaczuk <[email protected]>
> ---
>  Makefile                |  4 ++--
>  libc/aliases.ld         |  1 +
>  libc/locale/duplocale.c | 15 ---------------
>  libc/locale/setlocale.c | 13 -------------
>  4 files changed, 3 insertions(+), 30 deletions(-)
>  delete mode 100644 libc/locale/duplocale.c
>  delete mode 100644 libc/locale/setlocale.c
>
> diff --git a/Makefile b/Makefile
> index a4cdcf55..0abbd196 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1009,7 +1009,7 @@ libc += errno/strerror.o
>  musl += locale/catclose.o
>  musl += locale/catgets.o
>  musl += locale/catopen.o
> -libc += locale/duplocale.o
> +musl += locale/duplocale.o
>  libc += locale/freelocale.o
>  musl += locale/iconv.o
>  musl += locale/intl.o
> @@ -1041,7 +1041,7 @@ musl += locale/isxdigit_l.o
>  libc += locale/langinfo.o
>  musl += locale/localeconv.o
>  libc += locale/nl_langinfo_l.o
> -libc += locale/setlocale.o
> +musl += locale/setlocale.o
>  musl += locale/strcasecmp_l.o
>  libc += locale/strcoll.o
>  libc += locale/strcoll_l.o
> diff --git a/libc/aliases.ld b/libc/aliases.ld
> index 23f208b1..c1ad406a 100644
> --- a/libc/aliases.ld
> +++ b/libc/aliases.ld
> @@ -26,6 +26,7 @@ __finitel = finitel;
>
>  /* locale */
>  __toupper_l = toupper_l;
> +__setlocale = setlocale;
>
>  /* multibyte */
>  __mbrlen = mbrlen;
> diff --git a/libc/locale/duplocale.c b/libc/locale/duplocale.c
> deleted file mode 100644
> index 695a06f1..00000000
> --- a/libc/locale/duplocale.c
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -#include <stdlib.h>
> -#include <string.h>
> -#include "locale_impl.h"
> -#include "libc.h"
> -
> -locale_t __duplocale(locale_t old)
> -{
> -       locale_t new;
> -       new = calloc(1, sizeof *new);
> -       if (new && old != LC_GLOBAL_LOCALE) memcpy(new, old, sizeof *new);
> -       return new;
> -}
> -
> -/* OSv local: a libstdc++ build against glibc wants the __ version */
> -weak_alias(__duplocale, duplocale);
> diff --git a/libc/locale/setlocale.c b/libc/locale/setlocale.c
> deleted file mode 100644
> index b311f28b..00000000
> --- a/libc/locale/setlocale.c
> +++ /dev/null
> @@ -1,13 +0,0 @@
> -#include <locale.h>
> -#include "libc.h"
> -
> -char *__setlocale(int category, const char *locale)
> -{
> -       /* Note: plain "C" would be better, but puts some broken
> -        * software into legacy 8-bit-codepage mode, ignoring
> -        * the standard library's multibyte encoding */
> -       return "C.UTF-8";
> -}
> -
> -/* OSv local: a libstdc++ build against glibc wants the __ version */
> -weak_alias(__setlocale, setlocale);
> --
> 2.26.2
>
> --
> You received this message because you are subscribed to the Google Groups
> "OSv Development" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/osv-dev/20200815042719.51117-4-jwkozaczuk%40gmail.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/osv-dev/CANEVyjtPAZ%3DePmdRZ6SCrvHDP8mpGYxnQxiCJjDtgOnX8J5Z1w%40mail.gmail.com.

Reply via email to