## along with man-db; if not, write to the Free Software Foundation,
## Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-POFILES = po/de.po po/fr.po po/id.po po/ja.po po/nl.po po/pl.po po/ru.po
+DOMAIN = man-db-manpages
+POFILES = \
+ po/da.po \
+ po/de.po \
+ po/es.po \
+ po/fr.po \
+ po/id.po \
+ po/ja.po \
+ po/nl.po \
+ po/pl.po \
+ po/pt.po \
+ po/pt_BR.po \
+ po/ro.po \
+ po/ru.po \
+ po/sr.po \
+ po/sv.po \
+ po/tr.po \
+ po/zh_CN.po
-EXTRA_DIST = po4a.cfg Locale/Po4a/Manext.pm po/man-db-manpages.pot $(POFILES)
+EXTRA_DIST = po4a.cfg Locale/Po4a/Manext.pm po/$(DOMAIN).pot $(POFILES)
if PO4A
PO4A_ENVIRONMENT = PERL5LIB=$(srcdir)
+STAGING = $(builddir)/tmp-po
# Always generate output files even if poorly translated, since Automake's
# generated rules will get upset otherwise.
PO4A_ARGS = --variable srcdir=$(top_srcdir)/man \
--variable builddir=$(top_builddir)/man \
+ --variable podir=$(STAGING) \
--keep 0
+RUN_PO4A = $(PO4A_ENVIRONMENT) $(PO4A) $(PO4A_ARGS)
+
all-local:
- $(PO4A_ENVIRONMENT) $(PO4A) $(PO4A_ARGS) $(srcdir)/po4a.cfg
+ rm -rf $(STAGING)
+ $(MKDIR_P) $(STAGING)
+ set -e; for f in po/$(DOMAIN).pot $(POFILES); do \
+ base=`basename $$f`; \
+ cp -p $(srcdir)/$$f $(STAGING)/; \
+ chmod u+w $(STAGING)/$$base; \
+ done
+ $(RUN_PO4A) $(srcdir)/po4a.cfg
+ rm -rf $(STAGING)
+
+update-po-real:
+ @$(MAKE) -C $(top_builddir)/po remove-potcdate.sed
+ rm -rf $(STAGING)
+ $(MKDIR_P) $(STAGING)
+ set -e; for f in po/$(DOMAIN).pot $(POFILES); do \
+ base=`basename $$f`; \
+ cp -p $(srcdir)/$$f $(STAGING)/; \
+ chmod u+w $(STAGING)/$$base; \
+ done
+ $(RUN_PO4A) --force --no-translations $(srcdir)/po4a.cfg
+ sed -f $(top_builddir)/po/remove-potcdate.sed \
+ < $(srcdir)/po/$(DOMAIN).pot > $(STAGING)/$(DOMAIN).1po
+ sed -f $(top_builddir)/po/remove-potcdate.sed \
+ < $(STAGING)/$(DOMAIN).pot > $(STAGING)/$(DOMAIN).2po
+ set -e; if ! cmp $(STAGING)/$(DOMAIN).1po $(STAGING)/$(DOMAIN).2po \
+ >/dev/null 2>&1; then \
+ for f in po/$(DOMAIN).pot $(POFILES); do \
+ base=`basename $$f`; \
+ mv -f $(STAGING)/$$base $(srcdir)/$$f; \
+ done; \
+ fi
+ rm -rf $(STAGING)
update-po:
- $(PO4A_ENVIRONMENT) $(PO4A) $(PO4A_ARGS) --no-translations \
- $(srcdir)/po4a.cfg
+ @set -e; if test $(srcdir) = $(builddir); then \
+ $(MAKE) update-po-real; \
+ else \
+ echo "update-po does not yet work with out-of-tree builds."; \
+ fi
+
+po/man-db-manpages.pot:
+ $(MAKE) update-po
-po/man-db-manpages.pot: update-po
+clean-local:
+ rm -rf $(STAGING)
endif