Annotation of src/usr.bin/lex/gettext.h, Revision 1.1
1.1 ! tedu 1: /* $OpenBSD$ */
! 2:
! 3: /* Convenience header for conditional use of GNU <libintl.h>.
! 4: Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
! 5:
! 6: This program is free software; you can redistribute it and/or modify it
! 7: under the terms of the GNU Library General Public License as published
! 8: by the Free Software Foundation; either version 2, or (at your option)
! 9: any later version.
! 10:
! 11: This program is distributed in the hope that it will be useful,
! 12: but WITHOUT ANY WARRANTY; without even the implied warranty of
! 13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! 14: Library General Public License for more details.
! 15:
! 16: You should have received a copy of the GNU Library General Public
! 17: License along with this program; if not, write to the Free Software
! 18: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
! 19: USA. */
! 20:
! 21: #ifndef _LIBGETTEXT_H
! 22: #define _LIBGETTEXT_H 1
! 23:
! 24: /* NLS can be disabled through the configure --disable-nls option. */
! 25: #if ENABLE_NLS
! 26:
! 27: /* Get declarations of GNU message catalog functions. */
! 28: # include <libintl.h>
! 29:
! 30: #else
! 31:
! 32: /* Disabled NLS.
! 33: The casts to 'const char *' serve the purpose of producing warnings
! 34: for invalid uses of the value returned from these functions.
! 35: On pre-ANSI systems without 'const', the config.h file is supposed to
! 36: contain "#define const". */
! 37: # define gettext(Msgid) ((const char *) (Msgid))
! 38: # define dgettext(Domainname, Msgid) ((const char *) (Msgid))
! 39: # define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid))
! 40: # define ngettext(Msgid1, Msgid2, N) \
! 41: ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
! 42: # define dngettext(Domainname, Msgid1, Msgid2, N) \
! 43: ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
! 44: # define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
! 45: ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
! 46: # define textdomain(Domainname) ((const char *) (Domainname))
! 47: # define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname))
! 48: # define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset))
! 49:
! 50: #endif
! 51:
! 52: /* A pseudo function call that serves as a marker for the automated
! 53: extraction of messages, but does not call gettext(). The run-time
! 54: translation is done at a different place in the code.
! 55: The argument, String, should be a literal string. Concatenated strings
! 56: and other string expressions won't work.
! 57: The macro's expansion is not parenthesized, so that it is suitable as
! 58: initializer for static 'char[]' or 'const char[]' variables. */
! 59: #define gettext_noop(String) String
! 60:
! 61: #endif /* _LIBGETTEXT_H */