diff options
Diffstat (limited to 'po-man/Makefile.am')
-rw-r--r-- | po-man/Makefile.am | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/po-man/Makefile.am b/po-man/Makefile.am new file mode 100644 index 0000000..cb531af --- /dev/null +++ b/po-man/Makefile.am @@ -0,0 +1,101 @@ + +# *.po and *.pot are kept in VCS and generated by po4a-dist command +# translated/* are put in distribution but not found in VCS +# +# run: +# rm po-man/man.stamp +# make -C po-man man.stamp +# To update man page translations + +src_MANS = $(wildcard $(top_srcdir)/man/*.[1-9]) + +translated_MANS = $(wildcard translated/*/*.[1-9]) +translated_MAN_sections=$(subst .,,$(sort $(suffix $(translated_MANS)))) + +translated_langs = $(notdir $(wildcard translated/*)) + + +EXTRA_DIST = po4a.cfg \ + procps-man.pot \ + $(translated_MANS) + +# Extract the list of languages from the po4a config file. +LINGUAS_DIST = $(shell sed -ne 's/^.*\[po4a_langs\] \(.*\)$$/\1/p' $(srcdir)/po4a.cfg) + +# If the user has not defined it let's use the default. +LINGUAS ?= $(LINGUAS_DIST) + +PO4A_V = $(PO4A_V_@AM_V@) +PO4A_V_ = $(PO4A_V_@AM_DEFAULT_V@) +PO4A_V_0 = @echo " PO4A $@"; + +PO4A_OPTS = --srcdir $(srcdir) --destdir $(CURDIR) \ + --package-name $(PACKAGE) --package-version $(VERSION) \ + --msgid-bugs-address "Procps list <procps@freelists.org>" + +all-local: all-local-@USE_PO4A@ + +all-local-no: +all-local-yes: man.stamp + +# FIXME: Use a stamp file until po4a supports them internally. +man.stamp: + $(PO4A_V) $(PO4A) $(PO4A_OPTS) $(srcdir)/po4a.cfg + $(AM_V_at) touch $@ + +clean-local: clean-local-@USE_PO4A@ + +clean-local-no: +clean-local-yes: + rm -rf $(LINGUAS_DIST) + $(AM_V_at) rm -f man.stamp + +.PHONY: update-po + +procps-man.pot: $(src_MANS) +# parafiles = $(patsubst %,-m%,$(subst :, ,$(src_MANS))) +# parafiles = $(src_MANS:doc=Ente) + po4a-gettextize -M utf8 --option groff_code=verbatim --option generated --option untranslated="a.RE,\|" --option unknown_macros=untranslated -f man $(patsubst %,-m%,$(subst :, ,$(src_MANS))) -p $@ + +update-po: + $(PO4A_V) $(PO4A) $(PO4A_OPTS) --force $(srcdir)/po4a.cfg + + +install-data-local: + for lang in $(LINGUAS) ; do \ + files=""; \ + for trans in $(notdir $(src_MANS)); do \ + if [ -f $(CURDIR)/$$lang/$$trans ]; then \ + files="$$files $(CURDIR)/$$lang/$$trans"; \ + elif [ -f $(srcdir)/$$lang/$$trans ]; then \ + files="$$files $(srcdir)/$$lang/$$trans"; \ + fi; \ + done; \ + $(MAKE) -C .. install-man \ + mandir="$(mandir)/$$lang" \ + dist_man_MANS="$$files"; \ + done + +uninstall-local: + for lang in $(LINGUAS); do \ + files=""; \ + for trans in $(notdir $(src_MANS)); do \ + if [ -f $(CURDIR)/$$lang/$$trans ]; then \ + files="$$files $(CURDIR)/$$lang/$$trans"; \ + elif [ -f $(srcdir)/$$lang/$$trans ]; then \ + files="$$files $(srcdir)/$$lang/$$trans"; \ + fi; \ + done; \ + $(MAKE) -C .. uninstall-man \ + mandir="$(mandir)/$$lang" \ + dist_man_MANS="$$files"; \ + done + +dist-hook: man.stamp + cp $(srcdir)/man.stamp $(distdir)/ + for lang in $(LINGUAS_DIST); do \ + cp $(srcdir)/$$lang.po $(distdir); \ + cp $(srcdir)/$$lang.add $(distdir); \ + $(MKDIR_P) $(distdir)/$$lang; \ + cp -r $(srcdir)/$$lang $(distdir)/; \ + done |