diff options
author | Ludovic Courtès <ludo@gnu.org> | 2019-08-25 22:16:37 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2019-08-25 22:48:41 +0200 |
commit | 61a224adc3426d9fd0932b755205642650e89367 (patch) | |
tree | 1e162ec3c7d2c0d4bb6863c0297b15a8b4e63f1b | |
parent | 0b859092a7346f3b4d0a3a4dac878fd64fd70b79 (diff) | |
download | gnu-guix-61a224adc3426d9fd0932b755205642650e89367.tar gnu-guix-61a224adc3426d9fd0932b755205642650e89367.tar.gz |
maint: Add 'download-po' rule.
* Makefile.am (make-download-po-rule): New definition.
Add top-level 'eval' and calls to 'make-download-po-rule' to generate
'download-po.DOMAIN' rules.
(download-po): New rule.
-rw-r--r-- | Makefile.am | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 0bd85e8fcf..fa6bf8fe80 100644 --- a/Makefile.am +++ b/Makefile.am @@ -851,6 +851,39 @@ cuirass-jobs.scm: $(GOBJECTS) .PHONY: clean-go make-go as-derivation .PHONY: update-guix-package update-NEWS release +# Downloading up-to-date PO files. + +# make-download-po-rule DOMAIN DIRECTORY [FILE-NAME-PREFIX] +define make-download-po-rule + +download-po.$(1): + if [ -f "$(top_srcdir)/$(2)/LINGUAS" ]; then \ + LINGUAS="`grep -v '^[[:blank:]]*#' < $(top_srcdir)/$(2)/LINGUAS`" ; \ + else \ + LINGUAS="`(cd $(top_srcdir)/$(2); \ + for i in *.po; do echo $$$$i; done) | cut -d . -f 2`" ; \ + fi ; \ + for lang in $$$$LINGUAS; do \ + if wget -nv -O "$(top_srcdir)/$(2)/$(3)$$$$lang.po.tmp" \ + "https://translationproject.org/latest/$(1)/$$$$lang.po" ; \ + then \ + mv "$(top_srcdir)/$(2)/$(3)$$$$lang.po"{.tmp,} ; \ + else \ + rm "$(top_srcdir)/$(2)/$(3)$$$$lang.po.tmp" ; \ + fi ; \ + done + +.PHONY: download-po.$(1) + +endef + +$(eval $(call make-download-po-rule,guix,po/guix)) +$(eval $(call make-download-po-rule,guix-packages,po/packages)) +$(eval $(call make-download-po-rule,guix-manual,po/doc,guix-manual.)) + +download-po: $(foreach domain,guix guix-packages guix-manual,download-po.$(domain)) +.PHONY: download-po + ## -------------- ## ## Silent rules. ## ## -------------- ## |