[uClibc-cvs] uClibc/libc/misc/intl Makefile,1.2,1.3 intl.c,1.2,1.3
Manuel Novoa III
mjn3 at uclibc.org
Mon Sep 1 09:47:11 UTC 2003
Update of /var/cvs/uClibc/libc/misc/intl
In directory winder:/tmp/cvs-serv5558/libc/misc/intl
Modified Files:
Makefile intl.c
Log Message:
Rework a few things.
Index: Makefile
===================================================================
RCS file: /var/cvs/uClibc/libc/misc/intl/Makefile,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Makefile 24 Aug 2003 03:49:07 -0000 1.2
+++ Makefile 1 Sep 2003 09:47:08 -0000 1.3
@@ -25,7 +25,8 @@
include $(TOPDIR)Rules.mak
MSRC= intl.c
-MOBJ= __uClibc_dgettext.o __uClibc_dcgettext.o
+MOBJ= __uClibc_dgettext.o __uClibc_dcgettext.o \
+ __uClibc_textdomain.o __uClibc_bindtextdomain.o # for libstd++
OBJS=$(MOBJ)
Index: intl.c
===================================================================
RCS file: /var/cvs/uClibc/libc/misc/intl/intl.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- intl.c 24 Aug 2003 03:49:07 -0000 1.2
+++ intl.c 1 Sep 2003 09:47:08 -0000 1.3
@@ -17,6 +17,9 @@
/*
* Supply some weaks for use by strerror*(), etc.
+ *
+ * Aug 30, 2003
+ * Add some hidden names to support locale-enabled libstd++.
*/
#include <stdlib.h>
@@ -35,19 +38,62 @@
return (char *) msgid;
}
-weak_alias (__uClibc_dgettext, __dgettext)
+weak_alias(__uClibc_dgettext, __dgettext)
#endif
/**********************************************************************/
#ifdef L___uClibc_dcgettext
-char * __uClibc_dcgettext(const char *domainname,
- const char *msgid, int category)
+char *__uClibc_dcgettext(const char *domainname,
+ const char *msgid, int category)
{
return (char *) msgid;
}
-weak_alias (__uClibc_dcgettext, __dcgettext)
+weak_alias(__uClibc_dcgettext, __dcgettext)
+
+#endif
+/**********************************************************************/
+#ifdef L___uClibc_textdomain
+
+char *__uClibc_textdomain(const char *domainname)
+{
+ static const char default_str[] = "messages";
+
+ if (domainname && *domainname && strcmp(domainname, default_str)) {
+ __set_errno(EINVAL);
+ return NULL;
+ }
+ return (char *) default_str;
+}
+
+weak_alias(__uClibc_textdomain, __textdomain)
+
+#endif
+/**********************************************************************/
+#ifdef L___uClibc_bindtextdomain
+
+char *__uClibc_bindtextdomain(const char *domainname, const char *dirname)
+{
+ static const char dir[] = "/";
+
+ if (!domainname || !*domainname
+ || (dirname
+#if 1
+ && ((dirname[0] != '/') || dirname[1])
+#else
+ && strcmp(dirname, dir)
+#endif
+ )
+ ) {
+ __set_errno(EINVAL);
+ return NULL;
+ }
+
+ return (char *) dir;
+}
+
+weak_alias(__uClibc_bindtextdomain, __bindtextdomain)
#endif
/**********************************************************************/
More information about the uClibc-cvs
mailing list