Bug#759405: perl: make pod2man timestamps reproducible

Niko Tyni ntyni at debian.org
Thu Aug 28 19:46:58 UTC 2014


On Tue, Aug 26, 2014 at 07:28:05PM -0700, Dominic Hargreaves wrote:
> On Tue, Aug 26, 2014 at 06:07:00PM -0700, Niko Tyni wrote:

> >   The timestamp of all patched files is reset to the extraction time of
> >   the source package (this avoids timestamp skews  leading  to  problems
> >   when  autogenerated  files  are patched)
> > 
> > I've filed #759404 against dpkg-dev about changing this, but in the
> > meantime it would be nice to fix/work around this somehow. The best thing
> > I've come up with is an environment variable (maybe POD2MAN_DATE?) that
> > would override the date; changing build systems to pass the '--date'
> > option to pod2man or its equivalents would be much more intrusive.
> 
> I'm not sure that is sufficient in all cases, since mtimes are typically
> updated by VCSs like git. Or are you thinking of that as a separate
> problem for reproducible builds?

I'd expect reproducible builds to always be done by first extracting
the source package rather than using a random git checkout.

> > AFAICS this could be done by changing Pod::Man::devise_date() to fall
> > back to this variable if it is set. Changing /usr/bin/pod2man isn't
> > enough: at least ExtUtils::MakeMaker build systems use their own pod2man
> > implementation in ExtUtils::Command::MM, and so does the perl build
> > itself in the 'installman' script.
> > 
> > I'm not sure who should export this environment variable, but debhelper
> > springs to mind. It should probably be done for all build systems rather
> > than just for the perl ones, as there may well be non-perl packages in
> > the archive that use POD for documentation.
> 
> The plan seems reasonable.

Thanks.
-- 
Niko Tyni   ntyni at debian.org




More information about the Perl-maintainers mailing list