GNUnet
0.24.1-15-gab6ed22f1
gettext.h
Go to the documentation of this file.
1
/* Convenience header for conditional use of GNU <libintl.h>.
2
Copyright Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
3
4
This program is free software; you can redistribute it and/or modify it
5
under the terms of the GNU Library General Public License as published
6
by the Free Software Foundation; either version 3, or (at your option)
7
any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
Library General Public License for more details.
13
14
You should have received a copy of the GNU Library General Public
15
License along with this program; if not, write to the Free Software
16
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
17
USA. */
18
19
#ifndef _LIBGETTEXT_H
20
#define _LIBGETTEXT_H 1
21
22
/* NLS can be disabled through the configure --disable-nls option. */
23
#ifndef ENABLE_NLS
24
#define ENABLE_NLS 0
25
#endif
26
27
#if ENABLE_NLS
28
29
/* Get declarations of GNU message catalog functions. */
30
31
#include <libintl.h>
32
33
#else
34
35
/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which
36
chokes if dcgettext is defined as a macro. So include it now, to make
37
later inclusions of <locale.h> a NOP. We don't include <libintl.h>
38
as well because people using "gettext.h" will not include <libintl.h>,
39
and also including <libintl.h> would fail on SunOS 4, whereas <locale.h>
40
is GNUNET_OK. */
41
#if defined(__sun)
42
#include <locale.h>
43
#endif
44
45
/* Disabled NLS.
46
The casts to 'const char *' serve the purpose of producing warnings
47
for invalid uses of the value returned from these functions.
48
On pre-ANSI systems without 'const', the config.h file is supposed to
49
contain "#define const". */
50
#define gettext(Msgid) ((const char *) (Msgid))
51
#define dgettext(Domainname, Msgid) ((const char *) (Msgid))
52
#define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid))
53
#define ngettext(Msgid1, Msgid2, N) \
54
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
55
#define dngettext(Domainname, Msgid1, Msgid2, N) \
56
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
57
#define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
58
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
59
/* slight modification here to avoid warnings: generate GNUNET_NO code,
60
not even the cast... */
61
#define textdomain(Domainname)
62
#define bindtextdomain(Domainname, Dirname)
63
#define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset))
64
65
#endif
66
67
/* A pseudo function call that serves as a marker for the automated
68
extraction of messages, but does not call gettext(). The run-time
69
translation is done at a different place in the code.
70
The argument, String, should be a literal string. Concatenated strings
71
and other string expressions won't work.
72
The macro's expansion is not parenthesized, so that it is suitable as
73
initializer for static 'char[]' or 'const char[]' variables. */
74
#define gettext_noop(String) String
75
76
#endif
/* _LIBGETTEXT_H */
src
include
gettext.h
Generated by
1.9.4