diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-07-22 00:57:36 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-07-22 00:57:37 +0300 |
commit | a491307448356087da7a96503192550175446d9d (patch) | |
tree | da546c9f641bd4f0c03b7695304370d59e4295f3 /Makefile | |
parent | 981adb928e5ebe8bbf84d80a8f8fb3a4cbc30afd (diff) | |
parent | fc0fd5b23bc84c517eff409b7cbc78cc2473a071 (diff) |
Merge branch 'jc/po-pritime-fix'
We started using "%" PRItime, imitating "%" PRIuMAX and friends, as
a way to format the internal timestamp value, but this does not
play well with gettext(1) i18n framework, and causes "make pot"
that is run by the l10n coordinator to create a broken po/git.pot
file. This is a possible workaround for that problem.
* jc/po-pritime-fix:
Makefile: help gettext tools to cope with our custom PRItime format
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -2221,12 +2221,33 @@ LOCALIZED_SH += t/t0200/test.sh LOCALIZED_PERL += t/t0200/test.perl endif +## Note that this is meant to be run only by the localization coordinator +## under a very controlled condition, i.e. (1) it is to be run in a +## Git repository (not a tarball extract), (2) any local modifications +## will be lost. +## Gettext tools cannot work with our own custom PRItime type, so +## we replace PRItime with PRIuMAX. We need to update this to +## PRIdMAX if we switch to a signed type later. + po/git.pot: $(GENERATED_H) FORCE + # All modifications will be reverted at the end, so we do not + # want to have any local change. + git diff --quiet HEAD && git diff --quiet --cached + + @for s in $(LOCALIZED_C) $(LOCALIZED_SH) $(LOCALIZED_PERL); \ + do \ + sed -e 's|PRItime|PRIuMAX|g' <"$$s" >"$$s+" && \ + cat "$$s+" >"$$s" && rm "$$s+"; \ + done + $(QUIET_XGETTEXT)$(XGETTEXT) -o$@+ $(XGETTEXT_FLAGS_C) $(LOCALIZED_C) $(QUIET_XGETTEXT)$(XGETTEXT) -o$@+ --join-existing $(XGETTEXT_FLAGS_SH) \ $(LOCALIZED_SH) $(QUIET_XGETTEXT)$(XGETTEXT) -o$@+ --join-existing $(XGETTEXT_FLAGS_PERL) \ $(LOCALIZED_PERL) + + # Reverting the munged source, leaving only the updated $@ + git reset --hard mv $@+ $@ .PHONY: pot |