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

From: Ben Hutchings
Date: Sat May 13 2023 - 15:33:48 EST


On Sat, 2023-05-13 at 20:51 +0200, Ben Hutchings wrote:
> 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.

Also, that only affects doc builds using the original asciidoc, not
asciidoctor.

By the way, the perf_version variable mentioned in that commit is now
always empty because PERF_VERSION is no longer defined in Makefiles.
But at least when using asciidoctor, the value of perf_version doesn't
seem to affect the output anyway.

Ben.

> 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