mirror of
https://github.com/git/git.git
synced 2024-11-27 12:03:55 +08:00
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
This commit is contained in:
commit
a491307448
21
Makefile
21
Makefile
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user