intl/libgettext.h

Thu, 02 Nov 2000 22:29:51 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Thu, 02 Nov 2000 22:29:51 +0000
changeset 1051
d65ac9e2224f
parent 347
20fdc56f4da4
permissions
-rw-r--r--

[gaim-migrate @ 1061]
user_info only in aim_user (saves 2k per connection); mem leak fixes in dialogs.c and multi.c; and proto_opt in aim_user (so prpls can have their own saved information per user). no way to draw protocol option selection window thingy yet, so prpls will either have to do that on their own or something. i don't know. we'll figure it out.

347
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
1 /* Message catalogs for internationalization.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
3
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
4 This program is free software; you can redistribute it and/or modify
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
5 it under the terms of the GNU General Public License as published by
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
6 the Free Software Foundation; either version 2, or (at your option)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 any later version.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 This program is distributed in the hope that it will be useful,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 GNU General Public License for more details.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 You should have received a copy of the GNU General Public License
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 along with this program; if not, write to the Free Software Foundation,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18 /* Because on some systems (e.g. Solaris) we sometimes have to include
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
19 the systems libintl.h as well as this file we have more complex
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 include protection above. But the systems header might perhaps also
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21 define _LIBINTL_H and therefore we have to protect the definition here. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
22
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
23 #if !defined _LIBINTL_H || !defined _LIBGETTEXT_H
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
24 #ifndef _LIBINTL_H
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
25 # define _LIBINTL_H 1
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
27 #define _LIBGETTEXT_H 1
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
28
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 /* We define an additional symbol to signal that we use the GNU
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30 implementation of gettext. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
31 #define __USE_GNU_GETTEXT 1
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
32
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33 #include <sys/types.h>
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
34
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
35 #if HAVE_LOCALE_H
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
36 # include <locale.h>
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
37 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
39
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
40 #ifdef __cplusplus
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41 extern "C" {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
42 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44 /* @@ end of prolog @@ */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
46 #ifndef PARAMS
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47 # if __STDC__ || defined __cplusplus
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
48 # define PARAMS(args) args
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
49 # else
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
50 # define PARAMS(args) ()
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 # endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54 #ifndef NULL
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 # if !defined __cplusplus || defined __GNUC__
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56 # define NULL ((void *) 0)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57 # else
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
58 # define NULL (0)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59 # endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
61
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
62 #if !HAVE_LC_MESSAGES
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
63 /* This value determines the behaviour of the gettext() and dgettext()
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
64 function. But some system does not have this defined. Define it
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65 to a default value. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
66 # define LC_MESSAGES (-1)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
67 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
68
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
70 /* Declarations for gettext-using-catgets interface. Derived from
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
71 Jim Meyering's libintl.h. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
72 struct _msg_ent
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
73 {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
74 const char *_msg;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
75 int _msg_number;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76 };
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
77
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
78
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
79 #if HAVE_CATGETS
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 /* These two variables are defined in the automatically by po-to-tbl.sed
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
81 generated file `cat-id-tbl.c'. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
82 extern const struct _msg_ent _msg_tbl[];
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83 extern int _msg_tbl_length;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
85
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
86
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87 /* For automatical extraction of messages sometimes no real
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
88 translation is needed. Instead the string itself is the result. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
89 #define gettext_noop(Str) (Str)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
90
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
91 /* Look up MSGID in the current default message catalog for the current
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
92 LC_MESSAGES locale. If not found, returns MSGID itself (the default
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
93 text). */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
94 extern char *gettext PARAMS ((const char *__msgid));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
95 extern char *gettext__ PARAMS ((const char *__msgid));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
96
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
97 /* Look up MSGID in the DOMAINNAME message catalog for the current
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
98 LC_MESSAGES locale. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
99 extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
100 extern char *dgettext__ PARAMS ((const char *__domainname,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
101 const char *__msgid));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
102
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
103 /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
104 locale. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
105 extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
106 int __category));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
107 extern char *dcgettext__ PARAMS ((const char *__domainname,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
108 const char *__msgid, int __category));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
109
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
110
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
111 /* Set the current default message catalog to DOMAINNAME.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
112 If DOMAINNAME is null, return the current default.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
113 If DOMAINNAME is "", reset to the default of "messages". */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
114 extern char *textdomain PARAMS ((const char *__domainname));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
115 extern char *textdomain__ PARAMS ((const char *__domainname));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
116
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
117 /* Specify that the DOMAINNAME message catalog will be found
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
118 in DIRNAME rather than in the system locale data base. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
119 extern char *bindtextdomain PARAMS ((const char *__domainname,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
120 const char *__dirname));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
121 extern char *bindtextdomain__ PARAMS ((const char *__domainname,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
122 const char *__dirname));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
123
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
124 #if ENABLE_NLS
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
125
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
126 /* Solaris 2.3 has the gettext function but dcgettext is missing.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
127 So we omit this optimization for Solaris 2.3. BTW, Solaris 2.4
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
128 has dcgettext. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
129 # if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
130
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
131 # define gettext(Msgid) \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
132 dgettext (NULL, Msgid)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
133
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
134 # define dgettext(Domainname, Msgid) \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
135 dcgettext (Domainname, Msgid, LC_MESSAGES)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
136
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
137 # if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
138 /* This global variable is defined in loadmsgcat.c. We need a sign,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
139 whether a new catalog was loaded, which can be associated with all
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
140 translations. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
141 extern int _nl_msg_cat_cntr;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
142
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
143 # define dcgettext(Domainname, Msgid, Category) \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
144 (__extension__ \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
145 ({ \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
146 char *__result; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
147 if (__builtin_constant_p (Msgid)) \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
148 { \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
149 static char *__translation__; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
150 static int __catalog_counter__; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
151 if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
152 { \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
153 __translation__ = \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
154 dcgettext__ (Domainname, Msgid, Category); \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
155 __catalog_counter__ = _nl_msg_cat_cntr; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
156 } \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
157 __result = __translation__; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
158 } \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
159 else \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
160 __result = dcgettext__ (Domainname, Msgid, Category); \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
161 __result; \
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
162 }))
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
163 # endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
164 # endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
165
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
166 #else
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
167
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
168 # define gettext(Msgid) (Msgid)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
169 # define dgettext(Domainname, Msgid) (Msgid)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
170 # define dcgettext(Domainname, Msgid, Category) (Msgid)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
171 # define textdomain(Domainname) ((char *) Domainname)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
172 # define bindtextdomain(Domainname, Dirname) ((char *) Dirname)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
173
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
174 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
175
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
176 /* @@ begin of epilog @@ */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
177
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
178 #ifdef __cplusplus
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
179 }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
180 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
181
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
182 #endif

mercurial