Subject: | make ppd doesn't list prerequisites properly |
Prerequisite of my WriteMakefile looks like this:
'PREREQ_PM' => { 'YAML' => 0, 'Test::More' => 0 },
In the generated ppd file 'Test::More' is translated to 'Test-More' (the
name a corresponding ppm would be given):
<DEPENDENCY NAME="Test-More" VERSION="0,0,0,0" />
Building the ppd works fine but installing the ppm gives me the
following error:
ppm install failed: Can't find any package that provide Test-More
for sapnwrfc
I added this to my Makefile.PL to get the build working, but I would
prefer the module to work without this:
sub MY::ppd {
my $self = shift;
my $section = $self->MM::ppd;
if ($^O =~ /MSWin32/i) {
$section =~ s|Test-More|Test::More|m;
}
return $section;
}
I also tried to replace the Test::More requirement with a Test::Simple
requirement (to match a ppm module name) but on Win32 Test::Simple and
Test::More are not intalled as ppm modules but are bundled with the Perl
installation. Doing this I get the following warning message:
C:\Temp\perl\sapnwrfc-0.06>ppm install sapnwrfc.ppd
ppm install failed: Installing Test-Simple-0.47 would
downgradeTest::Builder from version 0.32 to 0.17 and Test::More from
version 0.62 to 0.47 and Test::Simple from version 0.62 to 0.47; use
--force to install regardless
Would it be possible to have MakeMaker not transform the '::' into '-'
when a module is not installed as a ppm?
Cheers,
Olivier.