On Sun, Dec 05, 2004 at 10:43:30AM -0500, Stas Bekman wrote:
> $ExtUtils::MakeMaker::VERSION 6.22 has itroduced the target changes:
> 
> 1)  s/pm_to_blib/pm_to_blib.ts/
> 2)  s/blibdirs/blibdirs.ts/
> 
> none is documented in Changes.
> 
> I've two issues with it:
> 
> 1) now I have to go and fix the (cvs|svn) ignore rules in all projects
> 
> 2) it broke mp2 install which was relying on pm_to_blib target
> 
> Of course those are all solvable. But may I ask why the sudden change?

To unify some internal code.  Certain operating systems (I'm looking at you, 
VMS) attach extra special significance to a dot in filenames and require you
to have one and only one.  If you "forget" to have a dot in your filename
it will helpfully add one on the end.  And this caused some confusion as
not everything was smart enough to know that when you get a file called
"pm_to_blib." it really means "pm_to_blib".  

Thus the VMS code spat out "pm_to_blib.ts" and everything else uses 
"pm_to_blib" and this difference required yet more special code for VMS.

Special code bad.  Especially special VMS code.  Make Schwern angry.

But even slightly user-visible changes to MakeMaker make mod_perl mad.

So would it fix things if there was a dummy pm_to_blib target which just
depended on pm_to_blib.ts?  Is it necessary to have a similar thing for
blibdirs.ts as blibdirs wasn't around for very long and it never made it
into a production perl?

--- lib/ExtUtils/MM_Unix.pm  (revision 2075)
+++ lib/ExtUtils/MM_Unix.pm  (local)
@@ -3209,6 +3209,10 @@
     my $self = shift;
     my($autodir) = $self->catdir('$(INST_LIB)','auto');
     my $r = q{
+# For backwards compat with anything that referenced this target.
+pm_to_blib: pm_to_blib.ts
+       $(NOOP)
+
 pm_to_blib.ts: $(TO_INST_PM)
 };
 

-- 
Michael G Schwern        [EMAIL PROTECTED]  http://www.pobox.com/~schwern/
IGNITE THE FIRE MOAT!

Reply via email to