1 /* Copyright (C) 2003 Manuel Novoa III
2 * Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
3 *
4 * Trivial Stubs, Public Domain.
5 */
6
7 #include <stdlib.h>
8 #include <string.h>
9 #include <errno.h>
10
gettext(const char * msgid)11 char *gettext(const char *msgid)
12 {
13 return (char *) msgid;
14 }
15
dgettext(const char * domainname,const char * msgid)16 char *dgettext(const char *domainname, const char *msgid)
17 {
18 (void) domainname;
19 return (char *) msgid;
20 }
21
dcgettext(const char * domainname,const char * msgid,int category)22 char *dcgettext(const char *domainname, const char *msgid, int category)
23 {
24 (void) domainname;
25 (void) category;
26 return (char *) msgid;
27 }
28
ngettext(const char * msgid1,const char * msgid2,unsigned long n)29 char *ngettext(const char *msgid1, const char *msgid2, unsigned long n)
30 {
31 return (char *) ((n == 1) ? msgid1 : msgid2);
32 }
33
dngettext(const char * domainname,const char * msgid1,const char * msgid2,unsigned long n)34 char *dngettext(const char *domainname, const char *msgid1, const char *msgid2, unsigned long n)
35 {
36 (void) domainname;
37 return (char *) ((n == 1) ? msgid1 : msgid2);
38 }
39
dcngettext(const char * domainname,const char * msgid1,const char * msgid2,unsigned long n,int category)40 char *dcngettext(const char *domainname, const char *msgid1, const char *msgid2, unsigned long n, int category)
41 {
42 (void) domainname;
43 (void) category;
44 return (char *) ((n == 1) ? msgid1 : msgid2);
45 }
46
textdomain(const char * domainname)47 char *textdomain(const char *domainname)
48 {
49 static const char default_str[] = "messages";
50
51 if (domainname && *domainname && strcmp(domainname, default_str)) {
52 errno = EINVAL;
53 return NULL;
54 }
55 return (char *) default_str;
56 }
57
bindtextdomain(const char * domainname,const char * dirname)58 char *bindtextdomain(const char *domainname, const char *dirname)
59 {
60 static const char dir[] = "/";
61
62 if (!domainname || !*domainname
63 || (dirname && ((dirname[0] != '/') || dirname[1]))
64 ) {
65 errno = EINVAL;
66 return NULL;
67 }
68
69 return (char *) dir;
70 }
71
bind_textdomain_codeset(const char * domainname,const char * codeset)72 char *bind_textdomain_codeset(const char *domainname, const char *codeset)
73 {
74 if (!domainname || !*domainname || (codeset && strcasecmp(codeset, "UTF-8"))) {
75 errno = EINVAL;
76 }
77 return NULL;
78 }
79
80 /* trick configure tests checking for gnu libintl, as in the copy included in gdb */
_nl_expand_alias(void)81 const char *_nl_expand_alias (void) { return NULL; }
82 int _nl_msg_cat_cntr = 0;
83