]> git.saurik.com Git - apt.git/commit
CMake: Translations: Add support for shell scripts
authorJulian Andres Klode <jak@debian.org>
Sun, 7 Aug 2016 13:52:59 +0000 (15:52 +0200)
committerJulian Andres Klode <jak@debian.org>
Wed, 10 Aug 2016 14:11:05 +0000 (16:11 +0200)
commit6ff8727a0641b299ac32bc897d3ac1246b02061e
tree2acddb42e56ed5a70f4eb0b0bce0ff6ba30b3736
parenta331fb701683779d4113c39243f39ffad28cb912
CMake: Translations: Add support for shell scripts

Rework the arguments to apt_add_translation_domain so a user
can specify TARGETS and SCRIPTS, the latter being Shell scripts.

For each language (TARGETS being C++, SCRIPTS being Shell), a separate
template is generated via xgettext. Those templates are then merged
together by using msgcomm. In case there are no Shell scripts in
the translation domain, msgcomm will receive /dev/null instead of
a shell translation template.

This also reintroduces line numbers, as msgcomm would otherwise
re-order the merged files not only by filename, but also by message
string. It's unclear why it does that, it could just leave strings
within a file alone.

In contrast to the old build system, we use xgettext for shell scripts
instead of bash --dump-strings, as it's just easier to use the same
tool for everything. We also create valid headers.
CMake/Translations.cmake
README.cmake
po/CMakeLists.txt