1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 21:20:33 +02:00

maint: Use xgettext.scm wrapper to create .PO files reproducibly.

* build-aux/xgettext.scm: New script.
* po/guix/Makevars (XGETTEXT): Set it.
(XGETTEXT_OPTIONS): Add --xgettext option to `real' xgettext.
* po/packages/Makevars (XGETTEXT): Set it.
(XGETTEXT_OPTIONS): Add --xgettext option to `real' xgettext.

Change-Id: I71b6b843970090f765f46ac346b92a346560e3f0
This commit is contained in:
Janneke Nieuwenhuizen
2024-04-05 23:21:02 +02:00
parent b4d2838d51
commit 6c63c36677
3 changed files with 101 additions and 3 deletions

View File

@@ -5,6 +5,10 @@ DOMAIN = guix
subdir = po/guix
top_builddir = ../..
# We use our xgettext.scm wrapper to produce .PO files reproducibly using a
# timestamp from Git.
XGETTEXT:=$(top_srcdir)/build-aux/xgettext.scm
# These options get passed to xgettext. We want to catch standard
# gettext uses, and SRFI-35 error condition messages. In C++ code
# we use 'n_' instead of the more usual 'N_' for no-ops.
@@ -14,7 +18,8 @@ XGETTEXT_OPTIONS = \
--keyword=message \
--keyword=description \
--keyword=synopsis \
--keyword=n_
--keyword=n_ \
--xgettext=$(XGETTEXT_)
COPYRIGHT_HOLDER = the authors of Guix (msgids)

View File

@@ -6,12 +6,18 @@ DOMAIN = guix-packages
subdir = po/packages
top_builddir = ../..
# We use our xgettext.scm wrapper to produce .PO files reproducibly using a
# timestamp from Git. The `real' xgettext is passed as an option to
# xgettext.scm
XGETTEXT:=$(top_srcdir)/build-aux/xgettext.scm
# These options get passed to xgettext. We want to catch exclusively package
# synopses and descriptions.
XGETTEXT_OPTIONS = \
--language=Scheme --from-code=UTF-8 \
--keyword=synopsis --keyword=description \
--keyword=output-synopsis:2
--keyword=synopsis --keyword=description \
--keyword=output-synopsis:2 \
--xgettext=$(XGETTEXT_)
COPYRIGHT_HOLDER = the authors of Guix (msgids)