// -*- 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 #include # 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(msg); } # define _(x) x # define P_(msg,plural,n) (n == 1 ? msg : plural) # define N_(x) x #endif #endif