X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=opcodes%2Fopintl.h;h=856064835bddbaf82372f9b5b38729392f1ce6cd;hb=refs%2Fheads%2Fconcurrent-displaced-stepping-2020-04-01;hp=0041d667d8cf9aed2a87f883866b0b93fe8d7995;hpb=f4321104139af96b8cc3d4946b4e5233d9fa1eab;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/opintl.h b/opcodes/opintl.h index 0041d667d8..856064835b 100644 --- a/opcodes/opintl.h +++ b/opcodes/opintl.h @@ -1,31 +1,46 @@ /* opintl.h - opcodes specific header for gettext code. - Copyright 1998, 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1998-2020 Free Software Foundation, Inc. Written by Tom Tromey - This file is part of the opcodes library used by GAS and the GNU binutils. + This file is part of the GNU opcodes library. + + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + It is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. You should have received a copy of the GNU General Public License - along with GAS; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with this file; see the file COPYING. If not, write to the + Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ #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 @@ -35,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