Jiang Xin <worldhello.net@xxxxxxxxx> writes: > A very small hack on gettext. When extract l10n messages to pot file > with `xgettext`, will grep "PRItime", and do "sed s/PRItime/PRIuMAX" > inside `xgettext`. > > See this patch: > https://github.com/jiangxin/gettext/commit/b0a726431c93b5a1ca0fe749de376b0752e75fb0 > ... > gettext-tools/src/x-c.c | 17 ++++++++++++++++- > gettext-tools/src/xgettext.c | 2 +- > 2 files changed, 17 insertions(+), 2 deletions(-) I do not think the size of the "hack" is much of an issue. There is no way you can sell this patch to the upstream, which would mean that we would have to be relying on our own private edition of the external tool, and that is what I feel very uncomfortable about. You are not passing %<PRItime> through the toolchain and instead turning it into %<PRIuMAX>, which is less risky than the obvious alternative, but when we switch to a signed timestamp_t type and need to change it something else (e.g. PRIdMAX), you'd need to make sure you update that private edition that matches the source being compiled. You might even be asked to do the po/git.pot thing for both 'maint' and 'master' at the same time, when the former still uses unsigned timestamp_t while the latter switched to signed one, which would mean you'd need two hacked versions of gettext handy and choose the "right" one. Compared to that, Dscho's "hack" at least ties what PRItime is replaced with and what the source code says by being in the Makefile, which is tracked alongside the rest of the source. So I somehow feel that the approach has smaller chance of going wrong. Am I missing some concerns you had that you think the tweaked gettext would solve better?