Subject: | eval_in_x does not pass Makefile.PL arguments |
With something in WriteMakefile's DIR key, MakeMaker runs the Makefile.PL files for the directories in the anonymous array value of DIR. However, it does not pass through the arguments (e.g. PREFIX) to those Makefile.PLs.
I overrode this in my Makefile.PL
sub ExtUtils::MakeMaker::eval_in_x
{
my( $self, $dir) = @_;
chdir $dir or Carp::carp("Couldn't change to directory $dir: $!");
system("perl ./Makefile.PL @ARGV");
}
I did not see anything in the docs to suggest any reason why @ARGV should not be passed through to the other Makefile.PLs, and this is the expected behaviour. The preamble of the other Makefile.PLs claim that the values were passed, even though they weren't.