From f65bd477b0c7f58004a810cc9ba5f29bc231ee35 Mon Sep 17 00:00:00 2001 From: gemmaro Date: Sun, 14 Apr 2024 16:18:52 +0900 Subject: [PATCH] build: Use the po4a command for the translation generation. * configure.ac (Documentation translation): Remove the po4a-translate command. This command has been replaced by the po4a command and are not used from anywhere. * doc/local.mk ($(srcdir)/%D%/guix.%.texi, $(srcdir)/%D%/guix-cookbook.%.texi) ($(srcdir)/%D%/contributing.%.texi): Use the po4a command instead of the po4a-translate for the translation generation. This eliminates the warning of po4a-translate; "po4a-translate is deprecated. The unified po4a(1) program is more convenient and less error prone." (PO4A_PARAMS): Remove the Texinfo format option. This option is specified in the configuration file (po/doc/po4a.cfg). (dummy_pot): Add a variable for the temporary POT file location. Change-Id: I542b934c3c03b8701e9f86823191224f8b0ccf81 Signed-off-by: Florian Pelz --- configure.ac | 1 - doc/local.mk | 30 +++++++++++++++++++++++------- po/doc/local.mk | 5 ----- 3 files changed, 23 insertions(+), 13 deletions(-) diff --git a/configure.ac b/configure.ac index 7ef135c0a7..8a24a5cf0c 100644 --- a/configure.ac +++ b/configure.ac @@ -265,7 +265,6 @@ AM_MISSING_PROG([HELP2MAN], [help2man]) dnl Documentation translation. AM_MISSING_PROG([PO4A], [po4a]) -AM_MISSING_PROG([PO4A_TRANSLATE], [po4a-translate]) AC_MSG_CHECKING([if building from git]) if test -e .git; then diff --git a/doc/local.mk b/doc/local.mk index 1d94e3c758..389ca098bd 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -7,6 +7,7 @@ # Copyright © 2018, 2021 Julien Lepiller # Copyright © 2019 Timothy Sample # Copyright © 2024 Janneke Nieuwenhuizen +# Copyright © 2024 gemmaro # # This file is part of GNU Guix. # @@ -89,10 +90,6 @@ BUILT_SOURCES += $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO) EXTRA_DIST += $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO) MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO) -PO4A_PARAMS := -M UTF-8 -L UTF-8 #master and localized encoding -PO4A_PARAMS += -k 0 # produce an output even if the translation is not complete -PO4A_PARAMS += -f texinfo # texinfo format - # When a change to guix.texi occurs, it is not translated immediately. # Because @pxref and @xref commands are references to sections by name, they # should be translated. If a modification adds a reference to a section, this @@ -104,20 +101,39 @@ $(top_srcdir)/pre-inst-env $(GUILE) --no-auto-compile \ $@.tmp $< endef +# If /dev/null is used for this POT file path, a warning will be issued +# because the path extension is not 'pot'. +dummy_pot = $(shell mktemp --suffix=.pot) + $(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go - -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix.texi" -p "$<" -l "$@.tmp" + -$(AM_V_PO4A)$(PO4A) --no-update \ + --variable localized="$@.tmp" \ + --variable master="%D%/guix.texi" \ + --variable po="$<" \ + --variable pot=$(dummy_pot) \ + po/doc/po4a.cfg -sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp" -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command) -mv "$@.tmp" "$@" $(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go - -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix-cookbook.texi" -p "$<" -l "$@.tmp" + -$(AM_V_PO4A)$(PO4A) --no-update \ + --variable localized="$@.tmp" \ + --variable master="%D%/guix-cookbook.texi" \ + --variable po="$<" \ + --variable pot=$(dummy_pot) \ + po/doc/po4a.cfg -sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp" -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command) -mv "$@.tmp" "$@" $(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go - -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/contributing.texi" -p "$<" -l "$@.tmp" + -$(AM_V_PO4A)$(PO4A) --no-update \ + --variable localized="$@.tmp" \ + --variable master="%D%/contributing.texi" \ + --variable po="$<" \ + --variable pot=$(dummy_pot) \ + po/doc/po4a.cfg -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command) -mv "$@.tmp" "$@" diff --git a/po/doc/local.mk b/po/doc/local.mk index 419898a139..73d65a5bc4 100644 --- a/po/doc/local.mk +++ b/po/doc/local.mk @@ -40,11 +40,6 @@ 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" - %D%/%.pot: $(srcdir)/doc/%.texi $(AM_V_PO4A)$(PO4A) --no-translations -M UTF-8 \ --package-version "$(VERSION)" \