[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[multiarch] pod2man and patched *.pm files



On Wed, Sep 26, 2012 at 07:57:18PM +0100, Wookey wrote:
> +++ Niko Tyni [2012-09-21 22:13 +0300]:

> > I've pushed the current state on the 'ntyni/multiarch-5.14' branch of
> >  git://git.debian.org/perl/perl.git

> The perl package contains /usr/share/man/man1/prename.1.gz which has
> the build date in it on line 127. If you happen to build two different
> arches on different days then these files cease to be identical so
> dpkg refuses to install perl:amd64 and perl:armhf side-by side.

Ah, good catch. The file is copied from debian/rename during the build,
so its timestamp will indeed vary.  This can be fixed easily: debian/rules
runs pod2man manually so we can add a '-d' option there.

However, I believe the general issue will also affect any arch:any perl
module package that patches a *.pm file that contains documentation. A
current example would be libxml-parser-perl. Modifying the pod2man
arguments isn't quite as easy in that case.

I suppose a fix would be to manually reset the timestamps of patched files
from debian/rules. This could be done automatically with lsdiff.

It might even make sense to put this in dpkg-source: arguably the
'correct' mtime of a patched file should be based on the sign time of
the latest source version in debian/changelog rather than the build time.

Alternatively, pod2man could be made to look at an environment variable
that would override the file timestamp (but probably shouldn't override
a '-d' option). This would work, but it would override the date for
all manual pages and not only the patched ones. This is probably not
what's desired.
-- 
Niko Tyni   ntyni@debian.org


Reply to: