From: Maximilian Engelhardt <maxi@daemonizer.de>
To: xen-devel@lists.xenproject.org,
Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Anthony PERARD <anthony.perard@vates.tech>
Subject: Re: [XEN PATCH 2/5] docs: set DATE to SOURCE_DATE_EPOCH if available
Date: Mon, 30 Dec 2024 23:28:42 +0100 [thread overview]
Message-ID: <2637960.Lt9SDvczpP@localhost> (raw)
In-Reply-To: <25f9fabf-1239-4465-92c9-484fc24fc4f7@citrix.com>
[-- Attachment #1: Type: text/plain, Size: 2515 bytes --]
On Montag, 30. Dezember 2024 22:38:24 CET Andrew Cooper wrote:
> On 30/12/2024 9:00 pm, Maximilian Engelhardt wrote:
> > Use the solution described in [1] to replace the call to the 'date'
> > command with a version that uses SOURCE_DATE_EPOCH if available. This
> > is needed for reproducible builds.
> >
> > The -d "@..." syntax was introduced in GNU date about 2005 (but only
> > added to the docuemntation in 2011), so I assume a version supporting
> > this syntax is available, if SOURCE_DATE_EPOCH is defined. If
> > SOURCE_DATE_EPOCH is not defined, nothing changes with respect to the
> > current behavior.
> >
> > [1] https://reproducible-builds.org/docs/source-date-epoch/
> >
> > Signed-off-by: Maximilian Engelhardt <maxi@daemonizer.de>
> > ---
> >
> > docs/Makefile | 8 +++++++-
> > 1 file changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/docs/Makefile b/docs/Makefile
> > index b30cc619f8..beba02a94f 100644
> > --- a/docs/Makefile
> > +++ b/docs/Makefile
> > @@ -3,7 +3,13 @@ include $(XEN_ROOT)/Config.mk
> >
> > -include $(XEN_ROOT)/config/Docs.mk
> >
> > VERSION := $(shell $(MAKE) -C $(XEN_ROOT)/xen --no-print-directory
> > xenversion)>
> > -DATE := $(shell date +%Y-%m-%d)
> > +
> > +DATE_FMT := +%Y-%m-%d
> > +ifdef SOURCE_DATE_EPOCH
> > +DATE := $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)"
> > 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)"
> > 2>/dev/null || date -u "$(DATE_FMT)") +else
> > +DATE := $(shell date "$(DATE_FMT)")
> > +endif
> >
> > DOC_ARCHES := arm x86_32 x86_64
> > MAN_SECTIONS := 1 5 7 8
>
> While this looks fine for docs, there's another (identical) use of date
> in tools/firmware/hvmloader/Makefile, as well as some differing uses to
> construct XEN_BUILD_{DATE,TIME}. INSTALL talks about VGABIOS_REL_DATE too.
>
> Does something like this work for you? It seems to DTRT for SMBIOS. It
> needs adapting a bit more for vgabios and Xen, but I think having one
> common $(date) is going to be better than ad-hoc ones over the tree.
>
> ~Andrew
Hi Andrew,
Thanks for your quick reply. Your patch looks fine to me. You can add my
Tested-by.
We currently use "export XEN_BUILD_{DATE,TIME}=...", "export
SMBIOS_REL_DATE=..." and "export VGABIOS_REL_DATE=..." for building xen in
Debian, so we did not run into reproducibility problems with these. But having
them combined to all use SOURCE_DATE_EPOCH if available sounds like a good
idea and would also benefit other downstream users.
Maxi
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2024-12-30 22:29 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-30 21:00 [XEN PATCH 0/5] Fixes for reproducible builds and other small fixes Maximilian Engelhardt
2024-12-30 21:00 ` [XEN PATCH 1/5] docs/man/xen-vbd-interface.7: Provide properly-formatted NAME section Maximilian Engelhardt
2024-12-30 21:00 ` [XEN PATCH 2/5] docs: set DATE to SOURCE_DATE_EPOCH if available Maximilian Engelhardt
2024-12-30 21:38 ` Andrew Cooper
2024-12-30 22:28 ` Maximilian Engelhardt [this message]
2025-01-01 19:03 ` Maximilian Engelhardt
2025-01-13 13:46 ` Andrew Cooper
2024-12-30 21:00 ` [XEN PATCH 3/5] xen/arch/x86: make objdump output user locale agnostic Maximilian Engelhardt
2025-01-06 10:20 ` Jan Beulich
2024-12-30 21:00 ` [XEN PATCH 4/5] docs/man: fix typo: hexidecimal -> hexadecimal Maximilian Engelhardt
2024-12-30 21:00 ` [XEN PATCH 5/5] tools: fix typo: subsytem -> subsystem Maximilian Engelhardt
2024-12-30 21:53 ` [XEN PATCH 0/5] Fixes for reproducible builds and other small fixes Andrew Cooper
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2637960.Lt9SDvczpP@localhost \
--to=maxi@daemonizer.de \
--cc=andrew.cooper3@citrix.com \
--cc=anthony.perard@vates.tech \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.