init version.
[bush.git] / lib / intl / gettext.c
blob27d1506a5cea7b7d8789f8e981bb2e2d4e49bac3
1 /* gettext.c - Implementation of gettext(3) function. */
3 /* Copyright (C) 1995, 1997, 2000, 2001, 2002, 2005-2009 Free Software Foundation, Inc.
5 This file is part of GNU Bush.
7 Bush is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 Bush is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with Bush. If not, see <http://www.gnu.org/licenses/>.
21 #ifdef HAVE_CONFIG_H
22 # include <config.h>
23 #endif
25 #ifdef _LIBC
26 # define __need_NULL
27 # include <stddef.h>
28 #else
29 # include <stdlib.h> /* Just for NULL. */
30 #endif
32 #include "gettextP.h"
33 #ifdef _LIBC
34 # include <libintl.h>
35 #else
36 # include "libgnuintl.h"
37 #endif
39 /* @@ end of prolog @@ */
41 /* Names for the libintl functions are a problem. They must not clash
42 with existing names and they should follow ANSI C. But this source
43 code is also used in GNU C Library where the names have a __
44 prefix. So we have to make a difference here. */
45 #ifdef _LIBC
46 # define GETTEXT __gettext
47 # define DCGETTEXT INTUSE(__dcgettext)
48 #else
49 # define GETTEXT libintl_gettext
50 # define DCGETTEXT libintl_dcgettext
51 #endif
53 /* Look up MSGID in the current default message catalog for the current
54 LC_MESSAGES locale. If not found, returns MSGID itself (the default
55 text). */
56 char *
57 GETTEXT (msgid)
58 const char *msgid;
60 return DCGETTEXT (NULL, msgid, LC_MESSAGES);
63 #ifdef _LIBC
64 /* Alias for function name in GNU C Library. */
65 weak_alias (__gettext, gettext);
66 #endif