Skip Menu |

This queue is for tickets about the Module-Build CPAN distribution.

Report information
The Basics
Id: 3703
Status: resolved
Priority: 0/
Queue: Module-Build

People
Owner: Nobody in particular
Requestors: ville.skytta [...] iki.fi
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.20
Fixed in: (no value)



Subject: site and vendor man dirs in 5.8.1-RC1 to RC3
Perls 5.8.1-RC1 to RC3 have a buglet; they define eg installsiteman3, not installsiteman3dir. Ditto for man1 and vendor man dirs. Red Hat 9 has the offending patch (see below) applied :( Witness: $ perl -V:* | grep -P '^install.*man' installman1dir='/usr/share/man/man1' installman3dir='/usr/share/man/man3' installsiteman1='/usr/share/man/man1' installsiteman3='/usr/share/man/man3' installvendorman1='/usr/share/man/man1' installvendorman3='/usr/share/man/man3' The offending patch (I believe): http://public.activestate.com/cgi-bin/perlbrowse?patch=18110 It seems to be fixed in 5.8.1-RC4. By coincidence, RH9 has installman3dir set to the same as installvendorsite3(dir) so people won't get bitten there. But it may cause sneaky breakage elsewhere. The attached patch should fix it.
--- lib/Module/Build/Base.pm~ 2003-08-26 21:49:15.000000000 +0300 +++ lib/Module/Build/Base.pm 2003-09-03 02:37:11.000000000 +0300 @@ -121,16 +121,16 @@ arch => $c->{installsitearch}, bin => $c->{installsitebin} || $c->{installbin}, script => $c->{installsitescript} || $c->{installsitebin} || $c->{installscript}, - bindoc => $c->{installsiteman1dir} || $c->{installman1dir}, - libdoc => $c->{installsiteman3dir} || $c->{installman3dir}, + bindoc => $c->{installsiteman1dir} || $c->{installsiteman1} || $c->{installman1dir}, + libdoc => $c->{installsiteman3dir} || $c->{installsiteman3} || $c->{installman3dir}, }, vendor => { lib => $c->{installvendorlib}, arch => $c->{installvendorarch}, bin => $c->{installvendorbin} || $c->{installbin}, script => $c->{installvendorscript} || $c->{installvendorbin} || $c->{installscript}, - bindoc => $c->{installvendorman1dir} || $c->{installman1dir}, - libdoc => $c->{installvendorman3dir} || $c->{installman3dir}, + bindoc => $c->{installvendorman1dir} || $c->{installvendorman1} || $c->{installman1dir}, + libdoc => $c->{installvendorman3dir} || $c->{installvendorman3} || $c->{installman3dir}, }, }; }
Thanks for the report. Below is the patch I'm applying - your patch worked, but I get the sense that if I put all this (and future similar) logic into the Config.pm-poking then I'll be lost in a sea of different historical Config.pms. So I fix up the entries in advance. -Ken Index: lib/Module/Build/Base.pm ====================================================== ============= RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.182 retrieving revision 1.183 diff -u -r1.182 -r1.183 --- lib/Module/Build/Base.pm 2 Sep 2003 16:34:22 -0000 1.182 +++ lib/Module/Build/Base.pm 4 Sep 2003 14:35:15 -0000 1.183 @@ -86,7 +86,7 @@ }, }, $package; - my $p = $self->{properties}; + my ($p, $c) = ($self->{properties}, $self->{config}); $p->{bindoc_dirs} ||= [ "$p->{blib}/script" ]; $p->{libdoc_dirs} ||= [ "$p->{blib}/lib", "$p->{blib}/arch" ]; @@ -96,6 +96,12 @@ $self->add_to_cleanup( @{delete $p->{add_to_cleanup}} ) if $p->{add_to_cleanup}; + + # perl 5.8.0-RC[1-4] had some broken %Config entries, and + # unfortunately Red Hat 9 shipped it. Fix 'em up here. + for (qw(siteman1 siteman3 vendorman1 vendorman3)) { + $c->{"install${_}dir"} ||= $c->{"install${_}"}; + } return $self; }
Ok, however, the commentary contains some inaccuracies, reopened: Show quoted text
> + # perl 5.8.0-RC[1-4] had some broken %Config entries, and > + # unfortunately Red Hat 9 shipped it. Fix 'em up here.
The affected Perl versions are 5.8.1-RC[1-3], fixed in 5.8.1-RC4. And Red Hat 9 shipped Perl 5.8.0, including a patch from 5.8.1-RC1 which had the broken $Config entries.
Date: Thu, 4 Sep 2003 10:29:08 -0500
Subject: Re: [cpan #3703] site and vendor man dirs in 5.8.1-RC1 to RC3
From: Ken Williams <ken [...] mathforum.org>
To: bug-Module-Build [...] rt.cpan.org
RT-Send-Cc:
On Thursday, September 4, 2003, at 10:17 AM, via RT wrote: Show quoted text
> > The affected Perl versions are 5.8.1-RC[1-3], fixed in 5.8.1-RC4. And > Red Hat 9 shipped Perl 5.8.0, including a patch from 5.8.1-RC1 which > had > the broken $Config entries.
Fixed, thanks. -Ken