From 81824af6a4b30368ed497686976c26f742bc6c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 30 Apr 2019 17:32:52 +0200 Subject: build: 'guix-manual.*.po' no longer depends on 'guix-manual.pot'. That dependency was causing a failure when building from a fresh checkout since commit d60225d5caabfb6409e3277c0512cd4c0fa63d72 because 'guix-manual.pot' was no longer around and there's no rule to make it. This commit replaces the 'guix-manual.%.po' target by a phony target, 'doc-po-update-%', without any dependency. * po/doc/local.mk ($(srcdir)/po/doc/guix-manual.%.po): Rename to... (doc-po-update-%): ... this. Remove dependencies. Change how 'lang' is computed; compute $output and $input, and replace occurrences of $@ and $< with those. (doc-po-update): Adjust accordingly. --- po/doc/local.mk | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'po') diff --git a/po/doc/local.mk b/po/doc/local.mk index b6262b1fd8..cb5266c623 100644 --- a/po/doc/local.mk +++ b/po/doc/local.mk @@ -30,22 +30,24 @@ POT_OPTIONS = --package-name "guix" --package-version "$(VERSION)" \ --copyright-holder "Ludovic Courtès" \ --msgid-bugs-address "ludo@gnu.org" -$(srcdir)/po/doc/guix-manual.%.po: $(srcdir)/po/doc/guix-manual.pot - @lang=`echo $$(basename "$@") | sed -e 's|^guix-manual.||' -e 's|.po$$||'` ;\ - if test -f "$@"; then \ +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} $@ $<"; \ + 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) $@ $<;; \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) "$$output" "$$input";; \ *) \ - $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $@ $<;; \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} "$$output" "$$input";; \ esac; \ }; \ - touch "$@"; \ + touch "$$output"; \ else \ - echo "File $@ does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + echo "File $$output does not exist. If you are a translator, you can create it with 'msginit'." 1>&2; \ exit 1; \ fi @@ -65,8 +67,9 @@ doc-pot-update: rm -f $(addprefix $(srcdir)/po/doc/, $(TMP_POT_FILES)) doc-po-update: doc-pot-update - for f in $(DOC_PO_FILES); do \ - $(MAKE) "$$f"; \ + for f in $(DOC_PO_FILES); do \ + lang="`echo "$$f" | $(SED) -es'|.*/guix-manual\.\(.*\)\.po$$|\1|g'`"; \ + $(MAKE) "doc-po-update-$$lang"; \ done .PHONY: doc-po-update doc-pot-update -- cgit v1.2.3