Skip to content

Migrate from intltool to gettext

Niels De Graef requested to merge nielsdg/die-intltool-die into master

intltool has long been dead upstream. Let's not poke the dead corpse, please.

This commit is quite large, but that's mostly since trying to support a hybrid of both gettext and intltool with both Meson and Autotools was really hard, so I stopped trying.

Due to gettext relying on quite some things being at the exactly right place in the autotools build (like ABOUT-NLS and config.rpath) we really needed to cleanup the autogen.sh to only call aclocal and autoreconf. No more strange magic; I tried to do it without changing too much in the file, and things just broke. If people want to do something more custom, they can just change the script directly. This change also uncovered some problems in our configure.ac, like using deprecated macros.

The following major changes happened:

  • meson: Changed custom_target() to i18n.merge_file() for all supported file types
  • Added .its and .loc files for the GIMP-specific XML formats, so that gettext understands them
  • For the .isl (Window installer stuff) file, there's no easy way to do this in gettext, so instead we start from an XML file (again with its own ITS rules etc), translate that with gettext, and then use xsltproc with a bit of magic to output the .isl file for each language
  • the po*/Makefile.in.in files are migrated to Makevars files, which gettext natively understands.

Fixes: #8028 (closed)

Edited by Niels De Graef

Merge request reports

Loading