Greetings all,
I'm migrating a simple mailbox-reading module to Inline, and have
run into a couple small problems:
Inline::MakeMaker doesn't let me set a MY::postamble. I'm sure there
is a good reason for this (although I can't think of any :), but it
means that Inline::MakeMaker *isn't* a compatible replacement for
ExtUtils::MakeMaker as advertised.
Inline::MakeMaker doesn't "play well" with ExtUtils::MakeMaker because
of the above problem. For example, let's say that I put Simple.pm and
Makefile.PL from Brian I's Math::Simple demo in a subdirectory, then
put this Makefile.PL in the current directory:
use ExtUtils::MakeMaker;
my %makefile_attributes=( 'NAME' => 'foo' );
sub MY::postamble
{
# Add a target for testing the speed
'
testspeed :: pure_all
PERL_DL_NONLAZY=1 $(FULLPERL) -I$(INST_ARCHLIB) -I$(INST_LIB) \
-I$(PERL_ARCHLIB) -I$(PERL_LIB) $(TEST_FILE)
';
}
WriteMakefile( %makefile_attributes );
When I run Makefile.PL on this Makefile.PL, it recurses into the
directory containing Math::Simple's Makefile.PL, and I get the
following error:
WARNING from evaluation of /home/david/temp/test/Math-Simple/Makefile.PL: When
using Inline::MakeMaker, it is illegal to define &MY::postamble
at /usr/lib/perl5/site_perl/5.6.0/Inline/MakeMaker.pm line 69
BEGIN failed--compilation aborted at
/usr/lib/perl5/site_perl/5.6.0/Inline/MakeMaker.pm line 69.
Compilation failed in require at (eval 18) line 1.
BEGIN failed--compilation aborted at (eval 18) line 1.
I'm not sure where the problem lies--ExtUtils::MakeMaker seems to be
"polluting" the Inline::MakeMaker in the subdirectory with its
MY::postamble. I would have thought that subdirectories would be
evaluated "clean" so to speak.
Anyone have any insights into how to resolve this?
Regards,
David
_________________________________________________________________________
David Coppit - Ph.D. Candidate [EMAIL PROTECTED]
The University of Virginia http://coppit.org/
"Yes," said Piglet, "Rabbit has Brain." There was a long silence.
"I suppose," said Pooh, "that that's why he never understands anything."