guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 1/3] gnu: doc: Alloc documentation to be translated.


From: Julien Lepiller
Subject: [PATCH 1/3] gnu: doc: Alloc documentation to be translated.
Date: Sat, 3 Mar 2018 00:07:36 +0100

* po/doc/local.mk: New file.
* Makefile.am: Include it. Add silent rules for po4a.
* configure.ac: Look for po4a-translate and po4a-updatepo.
* doc/local.mk: Add rules to generate gettext files.
(TRANSLATED_INFO): New variable.
(BUILT_SOURCES, EXTRA_DIST, MAINTAINERCLEANFILES): Add it.
* .gitignore: Add generated files.
---
 .gitignore      | 17 +++++++++++++++++
 Makefile.am     |  8 +++++++-
 configure.ac    |  4 ++++
 doc/local.mk    | 22 +++++++++++++++++++---
 po/doc/local.mk | 27 +++++++++++++++++++++++++++
 5 files changed, 74 insertions(+), 4 deletions(-)
 create mode 100644 po/doc/local.mk

diff --git a/.gitignore b/.gitignore
index 4a110fb1f..0145a7d86 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,6 +28,21 @@
 /configure
 /doc/*.1
 /doc/.dirstamp
+/doc/guix.*.aux
+/doc/guix.*.cp
+/doc/guix.*.cps
+/doc/guix.*.fn
+/doc/guix.*.fns
+/doc/guix.*.html
+/doc/guix.*.info
+/doc/guix.*.info-[0-9]
+/doc/guix.*.ky
+/doc/guix.*.pg
+/doc/guix.*.toc
+/doc/guix.*.t2p
+/doc/guix.*.tp
+/doc/guix.*.vr
+/doc/guix.*.vrs
 /doc/guix.aux
 /doc/guix.cp
 /doc/guix.cps
@@ -47,6 +62,7 @@
 /doc/os-config-desktop.texi
 /doc/stamp-vti
 /doc/version.texi
+/doc/version.*.texi
 /etc/guix-daemon.cil
 /etc/guix-daemon.conf
 /etc/guix-daemon.service
@@ -79,6 +95,7 @@
 /nix/scripts/list-runtime-roots
 /nix/scripts/offload
 /nix/scripts/substitute
+/po/doc/*.mo
 /po/guix/*.gmo
 /po/guix/*.insert-header
 /po/guix/*.mo
diff --git a/Makefile.am b/Makefile.am
index 6556799e6..757ca9b2f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -10,6 +10,7 @@
 # Copyright © 2017 Jan Nieuwenhuizen <address@hidden>
 # Copyright © 2017 Arun Isaac <address@hidden>
 # Copyright © 2018 ng0 <address@hidden>
+# Copyright © 2018 Julien Lepiller <address@hidden>
 #
 # This file is part of GNU Guix.
 #
@@ -51,6 +52,7 @@ MODULES_NOT_COMPILED =                                \
   guix/man-db.scm
 
 include gnu/local.mk
+include po/doc/local.mk
 
 MODULES =                                      \
   guix/base16.scm                              \
@@ -451,7 +453,7 @@ dist_fishcompletion_DATA = etc/completion/fish/guix.fish
 # SELinux policy
 dist_selinux_policy_DATA = etc/guix-daemon.cil
 
-EXTRA_DIST =                                           \
+EXTRA_DIST +=                                          \
   HACKING                                              \
   ROADMAP                                              \
   TODO                                                 \
@@ -778,3 +780,7 @@ AM_V_DOT_0 = @echo "  DOT     " $@;
 AM_V_HELP2MAN = $(AM_V_HELP2MAN_$(V))
 AM_V_HELP2MAN_ = $(AM_V_HELP2MAN_$(AM_DEFAULT_VERBOSITY))
 AM_V_HELP2MAN_0 = @echo "  HELP2MAN" $@;
+
+AM_V_PO4A = $(AM_V_PO4A_$(V))
+AM_V_PO4A_ = $(AM_V_PO4A_$(AM_DEFAULT_VERBOSITY))
+AM_V_PO4A_0 = @echo "  PO4A" $@;
diff --git a/configure.ac b/configure.ac
index 5872a8482..557da6318 100644
--- a/configure.ac
+++ b/configure.ac
@@ -263,6 +263,10 @@ AM_MISSING_PROG([DOT], [dot])
 dnl Manual pages.
 AM_MISSING_PROG([HELP2MAN], [help2man])
 
+dnl Documentation translation.
+AM_MISSING_PROG([PO4A_TRANSLATE], [po4a-translate])
+AM_MISSING_PROG([PO4A_UPDATEPO], [po4a-updatepo])
+
 dnl Emacs (optional), for 'etc/indent-package.el'.
 AC_PATH_PROG([EMACS], [emacs], [/usr/bin/emacs])
 AC_SUBST([EMACS])
diff --git a/doc/local.mk b/doc/local.mk
index 397ade050..f8cf969aa 100644
--- a/doc/local.mk
+++ b/doc/local.mk
@@ -4,6 +4,7 @@
 # Copyright © 2013 Andreas Enge <address@hidden>
 # Copyright © 2016 Taylan Ulrich Bayırlı/Kammer <address@hidden>
 # Copyright © 2016, 2018 Mathieu Lirzin <address@hidden>
+# Copyright © 2018 Julien Lepiller <address@hidden>
 #
 # This file is part of GNU Guix.
 #
@@ -51,10 +52,25 @@ OS_CONFIG_EXAMPLES_TEXI =                   \
   %D%/os-config-desktop.texi                   \
   %D%/os-config-lightweight-desktop.texi
 
+TRANSLATED_INFO =
+
 # Bundle this file so that makeinfo finds it in out-of-source-tree builds.
-BUILT_SOURCES        += $(OS_CONFIG_EXAMPLES_TEXI)
-EXTRA_DIST           += $(OS_CONFIG_EXAMPLES_TEXI)
-MAINTAINERCLEANFILES  = $(OS_CONFIG_EXAMPLES_TEXI)
+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
+
+$(srcdir)/%D%/guix.%.texi: %D%/guix.texi po/doc/guix.%.po
+       -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "$<" -p "$(word 2,$^)" 
-l "address@hidden"
+       sed -i "s|guix\.info|$$(basename $@ | sed 's|texi$$|info|')|" 
"address@hidden"
+       mv "address@hidden" "$@"
+
+$(srcdir)/%D%/contributing.%.texi: %D%/contributing.texi 
po/doc/contributing.%.po
+       -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "$<" -p "$(word 2,$^)" 
-l "$@"
+       -touch "$@"
 
 %D%/os-config-%.texi: gnu/system/examples/%.tmpl
        $(AM_V_GEN)$(MKDIR_P) "`dirname address@hidden";        \
diff --git a/po/doc/local.mk b/po/doc/local.mk
new file mode 100644
index 000000000..0e4ad352c
--- /dev/null
+++ b/po/doc/local.mk
@@ -0,0 +1,27 @@
+# GNU Guix --- Functional package management for GNU
+# Copyright © 2018 Julien Lepiller <address@hidden>
+#
+# This file is part of GNU Guix.
+#
+# GNU Guix is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or (at
+# your option) any later version.
+#
+# GNU Guix is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+EXTRA_DIST =
+
+$(srcdir)/po/doc/contributing.%.po: doc/contributing.texi
+       -$(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" -p "$@"
+       -touch "$@"
+
+$(srcdir)/po/doc/guix.%.po: doc/guix.texi
+       -$(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" -p "$@"
+       -touch "$@"
-- 
2.16.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]