tuklib_gettext.h revision 256281
1178825Sdfr///////////////////////////////////////////////////////////////////////////////
2178825Sdfr//
3233294Sstas/// \file       tuklib_gettext.h
4178825Sdfr/// \brief      Wrapper for gettext and friends
5178825Sdfr//
6178825Sdfr//  Author:     Lasse Collin
7178825Sdfr//
8178825Sdfr//  This file has been put into the public domain.
9178825Sdfr//  You can do whatever you want with this file.
10178825Sdfr//
11178825Sdfr///////////////////////////////////////////////////////////////////////////////
12178825Sdfr
13178825Sdfr#ifndef TUKLIB_GETTEXT_H
14178825Sdfr#define TUKLIB_GETTEXT_H
15178825Sdfr
16178825Sdfr#include "tuklib_common.h"
17178825Sdfr#include <locale.h>
18178825Sdfr
19178825Sdfr#ifndef TUKLIB_GETTEXT
20178825Sdfr#	ifdef ENABLE_NLS
21178825Sdfr#		define TUKLIB_GETTEXT 1
22178825Sdfr#	else
23178825Sdfr#		define TUKLIB_GETTEXT 0
24178825Sdfr#	endif
25178825Sdfr#endif
26178825Sdfr
27178825Sdfr#if TUKLIB_GETTEXT
28178825Sdfr#	include <libintl.h>
29178825Sdfr#	define tuklib_gettext_init(package, localedir) \
30178825Sdfr		do { \
31178825Sdfr			setlocale(LC_ALL, ""); \
32178825Sdfr			bindtextdomain(package, localedir); \
33178825Sdfr			textdomain(package); \
34233294Sstas		} while (0)
35178825Sdfr#	define _(msgid) gettext(msgid)
36178825Sdfr#else
37178825Sdfr#	define tuklib_gettext_init(package, localedir) \
38178825Sdfr		setlocale(LC_ALL, "")
39178825Sdfr#	define _(msgid) (msgid)
40178825Sdfr#	define ngettext(msgid1, msgid2, n) ((n) == 1 ? (msgid1) : (msgid2))
41178825Sdfr#endif
42178825Sdfr#define N_(msgid) msgid
43178825Sdfr
44178825Sdfr#endif
45178825Sdfr