more sync with sylpheed 0.5.0pre4
[claws.git] / intl / ngettext.c
1 /* Implementation of ngettext(3) function.
2    Copyright (C) 1995, 1997, 2000, 2001 Free Software Foundation, Inc.
3
4    This program is free software; you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation; either version 2, 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
12    GNU General Public License for more details.
13
14    You should have received a copy of the GNU General Public License
15    along with this program; if not, write to the Free Software Foundation,
16    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
17
18 #ifdef HAVE_CONFIG_H
19 # include <config.h>
20 #endif
21
22 #ifdef _LIBC
23 # define __need_NULL
24 # include <stddef.h>
25 #else
26 # include <stdlib.h>            /* Just for NULL.  */
27 #endif
28
29 #include "gettextP.h"
30 #ifdef _LIBC
31 # include <libintl.h>
32 #else
33 # include "libgnuintl.h"
34 #endif
35
36 #include <locale.h>
37
38 /* @@ end of prolog @@ */
39
40 /* Names for the libintl functions are a problem.  They must not clash
41    with existing names and they should follow ANSI C.  But this source
42    code is also used in GNU C Library where the names have a __
43    prefix.  So we have to make a difference here.  */
44 #ifdef _LIBC
45 # define NGETTEXT __ngettext
46 # define DCNGETTEXT __dcngettext
47 #else
48 # define NGETTEXT ngettext__
49 # define DCNGETTEXT dcngettext__
50 #endif
51
52 /* Look up MSGID in the current default message catalog for the current
53    LC_MESSAGES locale.  If not found, returns MSGID itself (the default
54    text).  */
55 char *
56 NGETTEXT (msgid1, msgid2, n)
57      const char *msgid1;
58      const char *msgid2;
59      unsigned long int n;
60 {
61   return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES);
62 }
63
64 #ifdef _LIBC
65 /* Alias for function name in GNU C Library.  */
66 weak_alias (__ngettext, ngettext);
67 #endif