aboutsummaryrefslogtreecommitdiff
path: root/po/doc/local.mk
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2018-03-02 23:05:28 +0100
committerJulien Lepiller <julien@lepiller.eu>2018-04-19 21:30:30 +0200
commitb9fe8fd662180e64156d2b95a671242c20f0acfc (patch)
tree2ad838ee4cb3fe1d85619a759ea8838cd4ec66c5 /po/doc/local.mk
parent9490c411f0d9a0a9476cb7b0855f5c2461c49b38 (diff)
downloadguix-b9fe8fd662180e64156d2b95a671242c20f0acfc.tar
guix-b9fe8fd662180e64156d2b95a671242c20f0acfc.tar.gz
gnu: doc: Allow documentation to be translated.
* po/doc/contributing.pot: New file. * po/doc/guix.pot: New file. * po/doc/local.mk: New file. * Makefile.am: Include it. Add gettext command. Add silent rules for po4a. * configure.ac: Look for po4a-translate and po4a-updatepo. * doc/local.mk: Add rules to generate translated texi files. (TRANSLATED_INFO): New variable. (BUILT_SOURCES, EXTRA_DIST, MAINTAINERCLEANFILES): Add it. * .gitignore: Add generated files.
Diffstat (limited to 'po/doc/local.mk')
-rw-r--r--po/doc/local.mk75
1 files changed, 75 insertions, 0 deletions
diff --git a/po/doc/local.mk b/po/doc/local.mk
new file mode 100644
index 0000000000..556dcf1636
--- /dev/null
+++ b/po/doc/local.mk
@@ -0,0 +1,75 @@
+# GNU Guix --- Functional package management for GNU
+# Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
+#
+# 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 =
+
+POT_OPTIONS = --package-name "guix" --package-version "$(VERSION)" \
+ --copyright-holder "Ludovic Courtès" \
+ --msgid-bugs-address "ludo@gnu.org"
+
+$(srcdir)/po/doc/guix.%.po: $(srcdir)/po/doc/guix.pot
+ @lang=`echo $$(basename "$@") | sed -e 's|^guix.||' -e 's|.po$$||'` ;\
+ if test -f "$@"; then \
+ test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
+ echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $@ $<"; \
+ 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) --lang=$${lang} $@ $<;; \
+ esac; \
+ }; \
+ touch "$@"; \
+ else \
+ echo "File $@ does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \
+ exit 1; \
+ fi
+
+$(srcdir)/po/doc/contributing.%.po: $(srcdir)/po/doc/contributing.pot
+ @lang=`echo $$(basename "$@") | sed -e 's|^contributing.||' -e 's|.po$$||'` ;\
+ if test -f "$@"; then \
+ test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
+ echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $@ $<"; \
+ 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) --lang=$${lang} $@ $<;; \
+ esac; \
+ }; \
+ touch "$@"; \
+ else \
+ echo "File $@ does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \
+ exit 1; \
+ fi
+
+$(srcdir)/po/doc/contributing.pot-update: doc/contributing.texi
+ $(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" \
+ -p "$$(echo $@ | sed 's|-update||')" $(POT_OPTIONS)
+ @touch "$$(echo $@ | sed 's|-update||')"
+
+$(srcdir)/po/doc/guix.pot-update: doc/guix.texi
+ $(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" \
+ -p "$$(echo $@ | sed 's|-update||')" $(POT_OPTIONS)
+ @touch "$$(echo $@ | sed 's|-update||')"
+
+doc-pot-update:
+ $(MAKE) $(srcdir)/po/doc/guix.pot-update
+ $(MAKE) $(srcdir)/po/doc/contributing.pot-update