From 6c63c366776643e5831c50a2b7e29bad93273327 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Fri, 5 Apr 2024 23:21:02 +0200 Subject: 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 --- po/guix/Makevars | 7 ++++++- po/packages/Makevars | 10 ++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'po') diff --git a/po/guix/Makevars b/po/guix/Makevars index 88a4e8c7bc..4cfd0f431d 100644 --- a/po/guix/Makevars +++ b/po/guix/Makevars @@ -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) diff --git a/po/packages/Makevars b/po/packages/Makevars index 65912786d8..0ba4f1ba7e 100644 --- a/po/packages/Makevars +++ b/po/packages/Makevars @@ -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) -- cgit v1.2.3