summary refs log tree commit diff
path: root/po/doc/local.mk
diff options
context:
space:
mode:
Diffstat (limited to 'po/doc/local.mk')
-rw-r--r--po/doc/local.mk94
1 files changed, 18 insertions, 76 deletions
diff --git a/po/doc/local.mk b/po/doc/local.mk
index a11c74e536..4c47491c32 100644
--- a/po/doc/local.mk
+++ b/po/doc/local.mk
@@ -1,5 +1,6 @@
 # GNU Guix --- Functional package management for GNU
 # Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
+# Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 #
 # This file is part of GNU Guix.
 #
@@ -16,7 +17,7 @@
 # You should have received a copy of the GNU General Public License
 # along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
-DOC_PO_FILES=					\
+DOC_PO_FILES =					\
   %D%/guix-manual.es.po				\
   %D%/guix-manual.de.po				\
   %D%/guix-manual.fa.po				\
@@ -28,11 +29,11 @@ DOC_PO_FILES=					\
   %D%/guix-manual.sk.po				\
   %D%/guix-manual.zh_CN.po
 
-DOC_COOKBOOK_PO_FILES=					\
-  %D%/guix-cookbook.de.po				\
-  %D%/guix-cookbook.fa.po				\
-  %D%/guix-cookbook.fr.po				\
-  %D%/guix-cookbook.ko.po				\
+DOC_COOKBOOK_PO_FILES =				\
+  %D%/guix-cookbook.de.po			\
+  %D%/guix-cookbook.fa.po			\
+  %D%/guix-cookbook.fr.po			\
+  %D%/guix-cookbook.ko.po			\
   %D%/guix-cookbook.zh_Hans.po
 
 EXTRA_DIST = \
@@ -41,77 +42,18 @@ EXTRA_DIST = \
   $(DOC_PO_FILES) \
   $(DOC_COOKBOOK_PO_FILES)
 
-POT_OPTIONS = --package-name "guix manual" --package-version "$(VERSION)" \
-	          --copyright-holder "the authors of Guix (msgids)" \
-			  --msgid-bugs-address "bug-guix@gnu.org"
+POT_OPTIONS = \
+	--package-name "guix manual" --package-version "$(VERSION)" 	\
+	--copyright-holder "the authors of Guix (msgids)" 		\
+	--msgid-bugs-address "bug-guix@gnu.org"
 
-doc-po-update-%:
-	@lang=`echo "$@" | sed -e's/^doc-po-update-//'` ; \
-	output="$(srcdir)/po/doc/guix-manual.$$lang.po" ; \
-	input="$(srcdir)/po/doc/guix-manual.pot" ; \
-	if test -f "$$output"; then \
-	  test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-	  echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $$output $$input"; \
-	  cd $(srcdir) \
-	    && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
-	        '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
-	          $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) "$$output" "$$input";; \
-	        *) \
-	          $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} "$$output" "$$input";; \
-	      esac; \
-	    }; \
-	  touch "$$output"; \
-	else \
-	     echo "File $$output does not exist.  If you are a translator, you can create it with 'msginit'." 1>&2; \
-	     exit 1; \
-	fi
-
-doc-po-update-cookbook-%:
-	@lang=`echo "$@" | sed -e's/^doc-po-update-cookbook-//'` ; \
-	output="$(srcdir)/po/doc/guix-cookbook.$$lang.po" ; \
-	input="$(srcdir)/po/doc/guix-cookbook.pot" ; \
-	if test -f "$$output"; then \
-	  test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-	  echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $$output $$input"; \
-	  cd $(srcdir) \
-	    && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
-	        '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
-	          $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) "$$output" "$$input";; \
-	        *) \
-	          $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} "$$output" "$$input";; \
-	      esac; \
-	    }; \
-	  touch "$$output"; \
-	else \
-	     echo "File $$output does not exist.  If you are a translator, you can create it with 'msginit'." 1>&2; \
-	     exit 1; \
-	fi
-
-$(srcdir)/po/doc/%.pot-update: doc/%.texi
+%D%/%.pot: $(srcdir)/doc/%.texi
 	$(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" \
-		-p "$$(echo $@ | sed 's|-update||')" $(POT_OPTIONS)
-	@touch "$$(echo $@ | sed 's|-update||')"
-
-TMP_POT_FILES = contributing.pot guix.pot
-
-doc-pot-update:
-	for f in $(TMP_POT_FILES); do \
-		$(MAKE) $(srcdir)/po/doc/guix.pot-update; \
-		$(MAKE) $(srcdir)/po/doc/contributing.pot-update; \
-	done
-	$(MAKE) $(srcdir)/po/doc/guix-cookbook.pot-update;
-	msgcat $(addprefix $(srcdir)/po/doc/, $(TMP_POT_FILES)) > $(srcdir)/po/doc/guix-manual.pot
-	rm -f $(addprefix $(srcdir)/po/doc/, $(TMP_POT_FILES))
-
-doc-po-update: doc-pot-update
-	for f in $(DOC_PO_FILES); do						\
-	  lang="`echo "$$f" | $(SED) -es'|.*/guix-manual\.\(.*\)\.po$$|\1|g'`";	\
-	  $(MAKE) "doc-po-update-$$lang";					\
-	done
-	for f in $(DOC_COOKBOOK_PO_FILES); do						\
-	  lang="`echo "$$f" | $(SED) -es'|.*/guix-cookbook\.\(.*\)\.po$$|\1|g'`";	\
-	  $(MAKE) "doc-po-update-cookbook-$$lang";						\
-	done
+	   -p "$@" $(POT_OPTIONS) && \
+	touch $@
 
+%D%/guix-manual.pot: %D%/guix.pot %D%/contributing.pot
+	msgcat $^ > $@
 
-.PHONY: doc-po-update doc-pot-update
+doc-pot-update: %D%/guix-manual.pot %D%/guix-cookbook.pot
+.PHONY: doc-pot-update