Update.
[platform/upstream/glibc.git] / include / libintl.h
1 #ifndef _LIBINTL_H
2 #include <intl/libintl.h>
3
4 /* Now define the internal interfaces.  */
5 extern char *__gettext __P ((__const char *__msgid));
6 extern char *__dgettext __P ((__const char *__domainname,
7                               __const char *__msgid));
8 extern char *__dcgettext __P ((__const char *__domainname,
9                                __const char *__msgid, int __category));
10 extern char *__textdomain __P ((__const char *__domainname));
11 extern char *__bindtextdomain __P ((__const char *__domainname,
12                                     __const char *__dirname));
13 extern const char _libc_intl_domainname[];
14
15 /* Define the macros `_' and `N_' for conveniently marking translatable
16    strings in the libc source code.  We have to make sure we get the
17    correct definitions so we undefine the macros first.  */
18
19 # undef N_
20 # define N_(msgid)      msgid
21
22 # undef _
23 # ifdef dgettext
24 /* This is defined as an optimizing macro, so use it.  */
25 #  define _(msgid)      dgettext (_libc_intl_domainname, (msgid))
26 # else
27 /* Be sure to use only the __ name when `dgettext' is a plain function
28    instead of an optimizing macro.  */
29 #  define _(msgid)      __dgettext (_libc_intl_domainname, (msgid))
30 # endif
31
32 #endif