diff options
Diffstat (limited to 'pcp/intl/intl-compat.c')
| -rw-r--r-- | pcp/intl/intl-compat.c | 131 | 
1 files changed, 131 insertions, 0 deletions
| diff --git a/pcp/intl/intl-compat.c b/pcp/intl/intl-compat.c new file mode 100644 index 0000000..c5aa073 --- /dev/null +++ b/pcp/intl/intl-compat.c @@ -0,0 +1,131 @@ +/* intl-compat.c - Stub functions to call gettext functions from GNU gettext +   Library. +   Copyright (C) 1995, 2000-2003, 2005 Free Software Foundation, Inc. + +   This program is free software: you can redistribute it and/or modify +   it under the terms of the GNU Lesser General Public License as published by +   the Free Software Foundation; either version 2.1 of the License, or +   (at your option) any later version. + +   This program is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +   GNU Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include "gettextP.h" + +/* @@ end of prolog @@ */ + +/* This file redirects the gettext functions (without prefix) to those +   defined in the included GNU libintl library (with "libintl_" prefix). +   It is compiled into libintl in order to make the AM_GNU_GETTEXT test +   of gettext <= 0.11.2 work with the libintl library >= 0.11.3 which +   has the redirections primarily in the <libintl.h> include file. +   It is also compiled into libgnuintl so that libgnuintl.so can be used +   as LD_PRELOADable library on glibc systems, to provide the extra +   features that the functions in the libc don't have (namely, logging).  */ + + +#undef gettext +#undef dgettext +#undef dcgettext +#undef ngettext +#undef dngettext +#undef dcngettext +#undef textdomain +#undef bindtextdomain +#undef bind_textdomain_codeset + + +/* When building a DLL, we must export some functions.  Note that because +   the functions are only defined for binary backward compatibility, we +   don't need to use __declspec(dllimport) in any case.  */ +#if HAVE_VISIBILITY && BUILDING_DLL +# define DLL_EXPORTED __attribute__((__visibility__("default"))) +#elif defined _MSC_VER && BUILDING_DLL +# define DLL_EXPORTED __declspec(dllexport) +#else +# define DLL_EXPORTED +#endif + + +DLL_EXPORTED +char * +gettext (const char *msgid) +{ +  return libintl_gettext (msgid); +} + + +DLL_EXPORTED +char * +dgettext (const char *domainname, const char *msgid) +{ +  return libintl_dgettext (domainname, msgid); +} + + +DLL_EXPORTED +char * +dcgettext (const char *domainname, const char *msgid, int category) +{ +  return libintl_dcgettext (domainname, msgid, category); +} + + +DLL_EXPORTED +char * +ngettext (const char *msgid1, const char *msgid2, unsigned long int n) +{ +  return libintl_ngettext (msgid1, msgid2, n); +} + + +DLL_EXPORTED +char * +dngettext (const char *domainname, +           const char *msgid1, const char *msgid2, unsigned long int n) +{ +  return libintl_dngettext (domainname, msgid1, msgid2, n); +} + + +DLL_EXPORTED +char * +dcngettext (const char *domainname, +            const char *msgid1, const char *msgid2, unsigned long int n, +            int category) +{ +  return libintl_dcngettext (domainname, msgid1, msgid2, n, category); +} + + +DLL_EXPORTED +char * +textdomain (const char *domainname) +{ +  return libintl_textdomain (domainname); +} + + +DLL_EXPORTED +char * +bindtextdomain (const char *domainname, const char *dirname) +{ +  return libintl_bindtextdomain (domainname, dirname); +} + + +DLL_EXPORTED +char * +bind_textdomain_codeset (const char *domainname, const char *codeset) +{ +  return libintl_bind_textdomain_codeset (domainname, codeset); +} | 
