Feb 13, 2010
intltool collection can be used to do these things:· Extract translatable strings from various source files (.xml.in, .glade, .desktop.in, .server.in, .oaf.in).· Collect the extracted strings together with messages from traditional source files (.c, .h) in po/$(PACKAGE).pot.· Merge back the translations from .po files into .xml, .desktop and .oaf files. This merge step will happen at build resp. installation time.The intltool package has a script, intltoolize, which copies the various scripts and does the other magic to your module. So users building from tarballs don't need intltool, only folks building from cvs. (This is modelled on gettextize.)How to Use with autoconf/automake(There is a section for non-auto* configurations below)To use intltool in your module, do the following:· Install intltool, and make sure that the macro it installs is in aclocal's path, or do: export ACLOCAL_FLAGS='-I /usr/local/share/aclocal' · Add these lines to autogen.sh, after the call to gettextize: echo "Running intltoolize" intltoolize --copy --force --automake· Add this line to configure.
in near the top AC_PROG_INTLTOOL([minimum required version], [no-xml]) · Add intltool-extract.in, intltool-merge.in, and intltool-update.in to EXTRA_DIST in your top-level Makefile.am and also to the top-level .cvsignore. Also add the non-.in versions to .cvsignore. · Add intltool-extract, intltool-merge, and intltool-update to DISTCLEANFILES in your top-level Makefile.am.· Remove po/desk.pl and po/update.* scripts. intltool-update will take over their functionality.At this point, translatable strings will be automatically extracted to the .po files, if you make use of the following recommendations.The intltool-prepare script will help you to prepare the package. It will try to extract translations from existing .desktop files which will become obsolete after intltoolization has taken place.Examples of packages that use intltool are listed in the USED file.