diff options
author | Eric Blake <eblake@redhat.com> | 2012-04-25 15:41:32 -0600 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2012-05-08 08:50:40 -0600 |
commit | adae0138d43ccc0e5a302ca10fa1676359e92be8 (patch) | |
tree | fdd4090d37a86ff01bba9c7b178f801475d4e472 | |
parent | a3a049672d410b1deba8f1537016f2ece42b4e88 (diff) | |
download | gnulib-adae0138d43ccc0e5a302ca10fa1676359e92be8.tar.gz |
doc: recommendations on gettext version
Based on the bootstrap fallout in commit bb2f5640.
* doc/gnulib-tool.texi (gettextize and autopoint): Document the
choice between versions.
* DEPENDENCIES (gettext): Cover both approaches.
Signed-off-by: Eric Blake <eblake@redhat.com>
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | DEPENDENCIES | 9 | ||||
-rw-r--r-- | doc/gnulib-tool.texi | 39 |
3 files changed, 48 insertions, 7 deletions
@@ -1,3 +1,10 @@ +2012-05-08 Eric Blake <eblake@redhat.com> + + doc: recommendations on gettext version + * doc/gnulib-tool.texi (gettextize and autopoint): Document the + choice between versions. + * DEPENDENCIES (gettext): Cover both approaches. + 2012-05-08 Jim Meyering <meyering@redhat.com> init.sh: explain why EXEEXT support uses aliases rather than functions diff --git a/DEPENDENCIES b/DEPENDENCIES index 91cd6c543d..e19a37e7a7 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -101,8 +101,13 @@ at any time. ftp://ftp.gnu.org/gnu/grep/ * GNU gettext. - + Always use the newest available gettext release, see - <http://www.gnu.org/software/gnulib/manual/html_node/gettextize-and-autopoint.html>. + + If your project wants to follow GNU Coding Standards: + + Always use the newest available gettext release, see + <http://www.gnu.org/software/gnulib/manual/html_node/gettextize-and-autopoint.html>. + + Use the 'gettext' module. + + If your project cares more about ease of development on older platforms: + + gettext 0.17 or newer. + + Use the 'gettext-h' module. + Recommended. Needed if you use modules that use internationalization (many do). + Homepage: diff --git a/doc/gnulib-tool.texi b/doc/gnulib-tool.texi index 1b025c06e6..8d0e6835ba 100644 --- a/doc/gnulib-tool.texi +++ b/doc/gnulib-tool.texi @@ -471,7 +471,9 @@ the copies brought in by @code{gettextize} and @code{autopoint}. When a new @code{gettext} release is made, the copies of the files in Gnulib will be updated immediately. -The solution is therefore: +The choice of which version of gettext to require depends on the needs +of your package. For a package that wants to comply to GNU Coding +Standards, the steps are: @enumerate @item @@ -479,12 +481,13 @@ When you run @code{gettextize}, always use the @code{gettextize} from the matching GNU gettext release. For the most recent Gnulib checkout, this is the newest release found on @url{http://ftp.gnu.org/gnu/gettext/}. For an older Gnulib snapshot, it is the release that was the most recent release -at the time the Gnulib snapshot was taken. Then, after @code{gettextize}, -invoke @code{gnulib-tool}. +at the time the Gnulib snapshot was taken. @item -When a script of yours run @code{autopoint}, invoke @code{gnulib-tool} -afterwards. +After running @code{gettextize}, invoke @code{gnulib-tool} and import +the @code{gettext} module. Also, copy the latest version of gnulib's +@file{build-aux/po/Makefile.in.in} to your @file{po/} directory (this +is done for you if you use gnulib's @file{bootstrap} script). @item If you get an error message like @@ -495,6 +498,32 @@ it means that a new GNU gettext release was made, and its autoconf macros were integrated into Gnulib and now mismatch the @file{po/} infrastructure. In this case, fetch and install the new GNU gettext release and run @code{gettextize} followed by @code{gnulib-tool}. +@end enumerate + +On the other hand, if your package is not as concerned with compliance +to the latest standards, but instead favors development on stable +environments, the steps are: + +@enumerate +@item +Determine the oldest version of @code{gettext} that you intend to +support during development (at this time, gnulib recommends going no +older than version 0.17). Run @code{autopoint} (not +@code{gettextize}) to copy infrastructure into place (newer versions +of gettext will install the older infrastructure that you requested). + +@item +Invoke @code{gnulib-tool}, and import the @code{gettext-h} module. +@end enumerate + +Regardless of which approach you used to get the infrastructure in +place, the following steps must then be used to preserve that +infrastructure (gnulib's @file{bootstrap} script follows these rules): + +@enumerate +@item +When a script of yours run @code{autopoint}, invoke @code{gnulib-tool} +afterwards. @item When you invoke @code{autoreconf} after @code{gnulib-tool}, make sure to |