autopoint, part of
gettext, import or update the internationalization infrastructure.
Some of this infrastructure, namely ca. 20 autoconf macro files and the
config.rpath file, is also contained in Gnulib and may be imported
gnulib-tool. The use of
will therefore overwrite some of the files that
imported, and vice versa.
Avoiding to use
gettextize (manually, as package maintainer) or
autopoint (as part of a script like
autogen.sh) is not the solution: These programs also import the
infrastructure in the po/ and optionally in the intl/ directory.
The copies of the conflicting files in Gnulib are more up-to-date than
the copies brought in by
autopoint. When a
gettext release is made, the copies of the files in Gnulib will
be updated immediately.
The solution is therefore:
gettextize, always use the
gettextizefrom the matching GNU gettext release. For the most recent Gnulib checkout, this is the newest release found on 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
*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version ... but the autoconf macros are from gettext version ..., it means that a new GNU gettext release was made, and its autoconf macros were integrated into Gnulib and now mismatch the po/ infrastructure. In this case, fetch and install the new GNU gettext release and run
gnulib-tool, make sure to not invoke
autopointa second time, by setting the
AUTOPOINTenvironment variable, like this:
$ env AUTOPOINT=true autoreconf --install