-
Notifications
You must be signed in to change notification settings - Fork 116
/
gettext.am
76 lines (60 loc) · 1.66 KB
/
gettext.am
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
include $(top_srcdir)/doc/files.am
include $(top_srcdir)/build/makefiles/sphinx-build.am
EXTRA_DIST += \
$(po_files)
if DOCUMENT_AVAILABLE
EXTRA_DIST += \
$(mo_files)
endif
if DOCUMENT_BUILDABLE
BUILT_SOURCES += \
$(mo_files)
endif
SUFFIXES += .pot .edit .po .mo
.PHONY: gettext update build
all:
.pot.edit:
msgmerge --quiet --sort-by-file --output-file=$@ $*.po $<
.edit.po:
msgcat --no-location --output $@ $*.edit
.po.mo:
msgfmt -o $@ $<
update: pot-build-stamp edit-po-build-stamp $(edit_po_files) $(po_files)
if DOCUMENT_BUILDABLE
build: $(mo_files)
else
build:
endif
html: build
man: build
pdf: build
gettext:
rm *.pot || true
$(SPHINX_BUILD_COMMAND) -d doctrees -b gettext $(ALLSPHINXOPTS) .
xgettext --language Python --output conf.pot \
$(top_srcdir)/doc/source/conf.py
init: gettext
for pot in *.pot; do \
edit_po=`basename $${pot} | sed -e 's,pot$$,edit,g'`; \
test "$(FORCE_INIT)" = "yes" -o ! -f $${edit_po} && \
msginit --input=$${pot} --output-file=$${edit_po} --locale=$(LOCALE); \
:; \
done
edit:
for pot in *.pot; do \
edit_po=`basename $${pot} | sed -e 's,pot$$,edit,g'`; \
po=`basename $${pot} | sed -e 's,pot$$,po,g'`; \
test ! -f $${edit_po} && test -f $${po} && \
msgmerge --quiet --sort-by-file --output-file=$${edit_po} $${po} $${pot}; \
test ! -f $${edit_po} && test ! -f $${po} && \
msginit --input=$${pot} --output-file=$${edit_po} --locale=$(LOCALE); \
:; \
done
reinit:
$(MAKE) FORCE_INIT=yes init
pot-build-stamp: $(absolute_source_files)
$(MAKE) gettext
@touch $@
edit-po-build-stamp: $(absolute_source_files)
$(MAKE) edit
@touch $@