Re: [PATCH] perf tools: Use $KBUILD_BUILD_TIMESTAMP as man page date

From: Ben Hutchings
Date: Sat May 13 2023 - 14:51:52 EST


On Wed, 2023-05-10 at 09:59 -0300, Arnaldo Carvalho de Melo wrote:
> Em Tue, May 09, 2023 at 09:03:28PM +0200, Salvatore Bonaccorso escreveu:
> > Hi Peter, Ingo, Arnaldo,
> >
> > On Tue, May 17, 2016 at 02:28:09PM +0100, Ben Hutchings wrote:
> > > This allows man pages to be built reproducibly.
> > >
> > > Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
> > > ---
> > > --- a/tools/perf/Documentation/Makefile
> > > +++ b/tools/perf/Documentation/Makefile
> > > @@ -120,6 +120,9 @@ endif
> > > ifdef DOCBOOK_SUPPRESS_SP
> > > XMLTO_EXTRA += -m manpage-suppress-sp.xsl
> > > endif
> > > +ifdef KBUILD_BUILD_TIMESTAMP
> > > +ASCIIDOC_EXTRA += -a revdate=$(shell date -u -d '$(KBUILD_BUILD_TIMESTAMP)' +%Y-%m-%d)
> > > +endif
> > >
> > > SHELL_PATH ?= $(SHELL)
> > > # Shell quote;
> > > --- a/tools/perf/Documentation/asciidoc.conf
> > > +++ b/tools/perf/Documentation/asciidoc.conf
> > > @@ -71,6 +71,9 @@ ifdef::backend-docbook[]
> > > [header]
> > > template::[header-declarations]
> > > <refentry>
> > > +<refentryinfo>
> > > +template::[docinfo]
> > > +</refentryinfo>
> > > <refmeta>
> > > <refentrytitle>{mantitle}</refentrytitle>
> > > <manvolnum>{manvolnum}</manvolnum>
> >
> > As we do apply the change in Downstream in Debian, I was wondering if
> > it just felt trough the cracks and could still be applied. Is there
> > anything missing?
>
> Isn't this fixed in:
>
> commit d586ac10ce56b2381b8e1d8ed74660c1b2b8ab0d
> Author: Ian Rogers <irogers@xxxxxxxxxx>
> Date: Fri Sep 20 21:13:27 2019 -0700
>
> perf docs: Allow man page date to be specified
>
> With this change if a perf_date parameter is provided to asciidoc then
> it will override the default date written to the man page metadata.
[...]

Not entirely, because the value for perf_date is currently generated
with "git log", and Debian package builds are not done from a Git
checkout. I'll revise my patch to allow perf_date to be set from
KBUILD_BUILD_TIMESTAMP, which is already used in the kernel build.

Ben.

--
Ben Hutchings
Life would be so much easier if we could look at the source code.

Attachment: signature.asc
Description: This is a digitally signed message part