d929f98d68ac0f5d8f11d180f74ab3f134cce145
[tinc] / intl / gettext.c
1 /* Implementation of gettext(3) function.
2    Copyright (C) 1995, 1997 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 # ifdef STDC_HEADERS
27 #  include <stdlib.h>           /* Just for NULL.  */
28 # else
29 #  ifdef HAVE_STRING_H
30 #   include <string.h>
31 #  else
32 #   define NULL ((void *) 0)
33 #  endif
34 # endif
35 #endif
36
37 #ifdef _LIBC
38 # include <libintl.h>
39 #else
40 # include "libgettext.h"
41 #endif
42
43 /* @@ end of prolog @@ */
44
45 /* Names for the libintl functions are a problem.  They must not clash
46    with existing names and they should follow ANSI C.  But this source
47    code is also used in GNU C Library where the names have a __
48    prefix.  So we have to make a difference here.  */
49 #ifdef _LIBC
50 # define GETTEXT __gettext
51 # define DGETTEXT __dgettext
52 #else
53 # define GETTEXT gettext__
54 # define DGETTEXT dgettext__
55 #endif
56
57 /* Look up MSGID in the current default message catalog for the current
58    LC_MESSAGES locale.  If not found, returns MSGID itself (the default
59    text).  */
60 char *
61 GETTEXT (msgid)
62      const char *msgid;
63 {
64   return DGETTEXT (NULL, msgid);
65 }
66
67 #ifdef _LIBC
68 /* Alias for function name in GNU C Library.  */
69 weak_alias (__gettext, gettext);
70 #endif