X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;ds=sidebyside;f=opcodes%2Fopintl.h;h=856064835bddbaf82372f9b5b38729392f1ce6cd;hb=57cb32b3c366585f7fafd6a741771ce826ba95f3;hp=18d05481d06cfd6a46c7592cb8f830510461dba8;hpb=2571583aed598dd3f9651b53434e5f177a0e3cf7;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/opintl.h b/opcodes/opintl.h index 18d05481d0..856064835b 100644 --- a/opcodes/opintl.h +++ b/opcodes/opintl.h @@ -1,5 +1,5 @@ /* opintl.h - opcodes specific header for gettext code. - Copyright (C) 1998-2017 Free Software Foundation, Inc. + Copyright (C) 1998-2020 Free Software Foundation, Inc. Written by Tom Tromey @@ -22,20 +22,25 @@ #ifdef ENABLE_NLS # include -/* Note the use of dgetext() and PACKAGE here, rather than gettext(). - - This is because the code in this directory is used to build a library which - will be linked with code in other directories to form programs. We want to - maintain a seperate translation file for this directory however, rather - than being forced to merge it with that of any program linked to - libopcodes. This is a library, so it cannot depend on the catalog - currently loaded. - - In order to do this, we have to make sure that when we extract messages we - use the OPCODES domain rather than the domain of the program that included - the opcodes library, (eg OBJDUMP). Hence we use dgettext (PACKAGE, String) - and define PACKAGE to be 'opcodes'. (See the code in configure). */ -# define _(String) dgettext (PACKAGE, String) +/* Note the redefinition of gettext and ngettext here to use PACKAGE. + + This is because the code in this directory is used to build a + library which will be linked with code in other directories to form + programs. We want to maintain a separate translation file for this + directory however, rather than being forced to merge it with that + of any program linked to libopcodes. This is a library, so it + cannot depend on the catalog currently loaded. + + In order to do this, we have to make sure that when we extract + messages we use the OPCODES domain rather than the domain of the + program that included the opcodes library, (eg OBJDUMP). Hence we + use dgettext (PACKAGE, String) and define PACKAGE to be 'opcodes'. + (See the code in configure). */ +# undef gettext +# define gettext(Msgid) dgettext (PACKAGE, Msgid) +# undef ngettext +# define ngettext(Msgid1, Msgid2, n) dngettext (PACKAGE, Msgid1, Msgid2, n) +# define _(String) gettext (String) # ifdef gettext_noop # define N_(String) gettext_noop (String) # else @@ -45,8 +50,14 @@ # define gettext(Msgid) (Msgid) # define dgettext(Domainname, Msgid) (Msgid) # define dcgettext(Domainname, Msgid, Category) (Msgid) -# define textdomain(Domainname) while (0) /* nothing */ -# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */ +# define ngettext(Msgid1, Msgid2, n) \ + (n == 1 ? Msgid1 : Msgid2) +# define dngettext(Domainname, Msgid1, Msgid2, n) \ + (n == 1 ? Msgid1 : Msgid2) +# define dcngettext(Domainname, Msgid1, Msgid2, n, Category) \ + (n == 1 ? Msgid1 : Msgid2) +# define textdomain(Domainname) do {} while (0) +# define bindtextdomain(Domainname, Dirname) do {} while (0) # define _(String) (String) # define N_(String) (String) #endif