OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / gcc / ABOUT-GCC-NLS
index 3371483..063f467 100644 (file)
@@ -5,19 +5,16 @@ Some work remains in other areas; for example, GCC does not yet allow
 non-ASCII letters in identifiers.
 
 Not all of GCC's diagnostic messages have been internationalized. Programs
-like `enquire' and `genattr' (in fact all gen* programs) are not
-internationalized, as their users are GCC maintainers who typically need
-to be able to read English anyway; internationalizing them would thus
-entail needless work for the human translators. Messages used for
-debugging, such as used in dumped tables, should also not be translated.
+like `genattr' (in fact all gen* programs) are not internationalized, as
+their users are GCC maintainers who typically need to be able to read
+English anyway; internationalizing them would thus entail needless work for
+the human translators. Messages used for debugging, such as used in dumped
+tables, should also not be translated.
 
 The GCC library should not contain any messages that need
 internationalization, because it operates below the internationalization
 library.
 
-Currently, the only language translation supplied is en_UK (British
-English).
-
 Unlike some other GNU programs, the GCC sources contain few instances
 of explicit translation calls like _("string").  Instead, the
 diagnostic printing routines automatically translate their arguments.
@@ -28,23 +25,32 @@ responsibility to translate the message before the user sees it.
 
 By convention, any function parameter in the GCC sources whose name
 ends in `msgid' is expected to be a message requiring translation.
-For example, the `error' function's first parameter is named `msgid'.
+If the parameter name ends with `gmsgid', it is assumed to be a GCC
+diagnostics format string requiring translation, if it ends with
+`cmsgid', it is assumed to be a format string for `printf' family
+of functions, requiring a translation.
+For example, the `error' function's first parameter is named `gmsgid'.
 GCC's exgettext script uses this convention to determine which
 function parameter strings need to be translated.  The exgettext
 script also assumes that any occurrence of `%eMSGID}' on a source
 line, where MSGID does not contain `%' or `}', corresponds to a
 message MSGID that requires translation; this is needed to identify
 diagnostics in GCC spec strings.
+The `G_(GMSGID)' macro defined in intl.h can be used to mark GCC diagnostics
+format strings as requiring translation, but other than that it is a
+no-op at runtime.
 
-If you modify source files, you'll need to use a special version of the
+If you modify source files, you'll need at least version 0.14.15 of the
 GNU gettext package to propagate the modifications to the translation
 tables.
 
-All patches needed for GCC have been incorporated into the official
-gettext CVS. These sources may be accessed via anonymous cvs. The root for
-the gettext CVS is :pserver:anoncvs@anoncvs.cygnus.com:/cvs/gettext
-Password is `anoncvs' like for the GCC CVS.
-
 After having built and installed these gettext tools, you have to
 configure GCC with --enable-maintainer-mode to get the master catalog
 rebuilt.
+
+\f
+Copyright (C) 1998, 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.