From: Alan Cox Date: Fri, 16 Jan 2015 00:57:55 +0000 (+0000) Subject: libc: some more C locale only wrapping and glue X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=62d10b6076fe895a20f704e59b9dabf30157df79;p=FUZIX.git libc: some more C locale only wrapping and glue Just so we can build intl apps without hassle --- diff --git a/Library/libs/Makefile b/Library/libs/Makefile index e59954f3..99f02625 100644 --- a/Library/libs/Makefile +++ b/Library/libs/Makefile @@ -23,6 +23,7 @@ SRC_C += fsetpos.c ftell.c fwrite.c getcwd.c SRC_C += getenv.c __getgrent.c getgrgid.c getgrnam.c getopt.c SRC_C += getpw.c __getpwent.c getpwnam.c getpwuid.c gets.c gettimeofday.c SRC_C += gmtime.c gmtime_r.c grent.c index.c isatty.c itoa.c killpg.c +SRC_C += libintl.c SRC_C += localtim.c localtim_r.c lseek.c lsearch.c lstat.c ltoa.c ltostr.c SRC_C += malloc.c mkfifo.c nanosleep.c opendir.c pause.c perror.c SRC_C += popen.c printf.c putenv.c putgetch.c putpwent.c pwent.c qsort.c diff --git a/Library/libs/Makefile.6502 b/Library/libs/Makefile.6502 index e2690202..4901e278 100644 --- a/Library/libs/Makefile.6502 +++ b/Library/libs/Makefile.6502 @@ -41,6 +41,7 @@ SRC_C += fsetpos.c ftell.c fwrite.c getcwd.c SRC_C += getenv.c __getgrent.c getgrgid.c getgrnam.c getopt.c SRC_C += getpw.c __getpwent.c getpwnam.c getpwuid.c gets.c gettimeofday.c SRC_C += gmtime.c gmtime_r.c grent.c index.c isatty.c itoa.c killpg.c +SRC_C += libintl.c SRC_C += localtim.c localtim_r.c lseek.c lsearch.c lstat.c ltoa.c ltostr.c SRC_C += malloc.c mkfifo.c nanosleep.c opendir.c pause.c perror.c SRC_C += popen.c printf.c putenv.c putgetch.c putpwent.c pwent.c qsort.c diff --git a/Library/libs/libintl.c b/Library/libs/libintl.c new file mode 100644 index 00000000..7f91b74c --- /dev/null +++ b/Library/libs/libintl.c @@ -0,0 +1,50 @@ +#include +#include +#include + +static char *_domain; + +char *textdomain(const char *domainname) +{ + if (domainname) { + if (_domain) + free(_domain); + _domain = strdup(domainname); + } + return _domain; +} + +char *bindtextdomain(const char *domainname, const char *dirname) +{ + return textdomain(domainname); +} + +char *gettext(const char *msgid) +{ + return (char *)msgid; +} + +char *dgettext(const char *domainname, const char *msgid) +{ + return (char *)msgid; +} + +char *dcgettext(const char *domainname, const char *msgid, int category) +{ + return (char *)msgid; +} + +char *ngettext(const char *msgid, const char *msgid_plural, unsigned long n) +{ + return n == 1 ? (char *)msgid : (char *)msgid_plural; +} + +char *dngettext(const char *domain, const char *msgid, const char *msgid_plural, unsigned long n) +{ + return n == 1 ? (char *)msgid : (char *)msgid_plural; +} + +char *dcngettext(const char *domain, const char *msgid, const char *msgid_plural, unsigned long n, int category) +{ + return n == 1 ? (char *)msgid : (char *)msgid_plural; +} diff --git a/Library/libs/setlocale.c b/Library/libs/setlocale.c index 7b23ce5e..59c34106 100644 --- a/Library/libs/setlocale.c +++ b/Library/libs/setlocale.c @@ -60,3 +60,4 @@ struct lconv *localeconv(void) return &C_lc; } +/* FIXME: add nl_langinfo() */