34 lines
1 KiB
C
34 lines
1 KiB
C
// -*- mode: cpp; mode: fold -*-
|
|
/* Internationalization macros for apt. This header should be included last
|
|
in each C file. */
|
|
|
|
#ifndef APT_I18N_H
|
|
#define APT_I18N_H
|
|
|
|
// Set by autoconf
|
|
#cmakedefine USE_NLS
|
|
|
|
#ifdef USE_NLS
|
|
// apt will use the gettext implementation of the C library
|
|
#include <libintl.h>
|
|
#include <locale.h>
|
|
# ifdef APT_DOMAIN
|
|
# define _(x) dgettext(APT_DOMAIN,x)
|
|
# define P_(msg,plural,n) dngettext(APT_DOMAIN,msg,plural,n)
|
|
# else
|
|
# define _(x) gettext(x)
|
|
# define P_(msg,plural,n) ngettext(msg,plural,n)
|
|
# endif
|
|
# define N_(x) x
|
|
#else
|
|
// apt will not use any gettext
|
|
extern "C" inline char* setlocale(int, const char*) throw() { return nullptr; }
|
|
extern "C" inline char* textdomain(const char*) throw() { return nullptr; }
|
|
extern "C" inline char* bindtextdomain(const char*, const char*) throw() { return nullptr; }
|
|
extern "C" inline char* dgettext(const char*, const char* msg) throw() { return const_cast<char*>(msg); }
|
|
# define _(x) x
|
|
# define P_(msg,plural,n) (n == 1 ? msg : plural)
|
|
# define N_(x) x
|
|
#endif
|
|
|
|
#endif
|