On Wed, Apr 13, 2005 at 09:21:48AM +0100, Steve Hay wrote:
> Michael G Schwern wrote:
> 
> >http://www.pobox.com/~schwern/src/ExtUtils-MakeMaker-6.28.tar.gz
> >
> Any ideas how to fix the current problems in bleadperl on Win32?:
> http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2005-04/msg00216.html
> 
> The problems seem to have crept in in version 6.25_07:  If I manually 
> run the basic.t and installbase.t tests in that version in a command 
> prompt that doesn't have my perl "bin" directory on the PATH then both 
> tests fail in the same way as is happening in bleadperl.  The same two 
> tests run in the same way work OK in version 6.25_06.

The pl2bat problem is the result of this:

    $self->{FIXIN}    ||= $self->{PERL_CORE} ? 
      '$(PERLRUN) ../../win32/bin/pl2bat.pl' : 
      'pl2bat.bat';

Which assumes that things are being run from exactly two levels below the
perl source directory such as ext/Foo/.  This hard coded assumption had
not shown up before because prior to 6.25_07 there were not tests which
involved executables.  Now there is.

The solution is less straightforward than it seems.  In order to guarantee
that pl2bat.pl can be found in whatever subdirectory of the perl source
tree a Makefile happens to be built in MakeMaker would have to scan up
the source tree looking for ./win32/bin/pl2bat.pl.  That sucks.  Its the
sort of logic that made me throw out using pod2man and use Pod::Man instead
and let @INC take care of the searching.

So pl2bat needs to be modularized, something which should have happened
a long time ago anyway.  Nothing fancy, just something along the lines
of Pod::Html would be fine... a functional version of the command line
interface.  It could live, for now, in ExtUtils::Command::MM and if
someone wants to turn it into a real, public module they're welcome to.

I'll take a whack at it but I don't really have a Windows machine handy
to do the bleadperl testing.  Also, I'm backing up my poor, damaged
laptop drive and the room is filled with the sound of screaming I/O
errors bringing the system to a grinding halt.  So today is not likely
to be terribly productive.

Reply via email to