On Mar 10, 2006, at 2:45 PM, brian d foy wrote:

I haven't been following the Module::Build stuff closely, but I've
always wondered about these sorts of intricate solutions. Shouldn't it
be enough to temporarily replace ExtUtils::Makemaker with something
that has the same interface and spits out a Build.PL and a META.yml? I
do something similar with Test::Prereq to see what's in PREREQ_PM.

No, because when you run Makefile.PL you only get the *output* of that program. If it has any non-trivial code, then EU::MM is only seeing the reduction of that content. For example, this cruddy code exists in one my own older Makefile.PL files:

   open my $fh, 'MANIFEST' || die;
   my @exefiles = grep {s/\s.*$//; /^scripts\/.*\.pl)$/} <$fh>;
   close $fh;
   ...
   'EXE_FILES'       => [EMAIL PROTECTED],

EU::MM only sees

   'EXE_FILES'       => ['foo.pl', 'bar.pl', ...],

My proposed module would flag that Makefile.PL as non-trivial and recommend that the author convert it by hand. I've tried doing this via regexps in the past, but it's too messy. So this time I'm going to try with PPI. The idea is to make it NOT intricate if possible. We'll see. I haven't written the code yet...

Chris
--
Chris Dolan, Software Developer, Clotho Advanced Media Inc.
608-294-7900, fax 294-7025, 1435 E Main St, Madison WI 53703
vCard: http://www.chrisdolan.net/ChrisDolan.vcf

Clotho Advanced Media, Inc. - Creators of MediaLandscape Software (http://www.media-landscape.com/) and partners in the revolutionary Croquet project (http://www.opencroquet.org/)


Reply via email to