[Bioperl-l] No more Makefile.PL (MakeMaker -> Module::Build)
Nathan S. Haigh
n.haigh at sheffield.ac.uk
Thu Nov 16 08:37:33 EST 2006
Sendu Bala wrote:
> Nathan S. Haigh wrote:
>> Sorry, but i've been busy this last week etc so haven't be able to test
>> RC3 on WinXP yet - hopefully Chris' tests have been sufficient.
> No problem, thanks for all your testing effort!
>> Essentially a PPM dist comprises of the .tar.gz file you described (of
>> the blib dir) and then the XML file (.ppd) which describes the package
>> and it's dependencies.
> Is the .ppd ever included in the .tar.gz, or is it always separate?
Nope - always separate.
>> The syntax of the XML has changed for PPM4 (which
>> required me to do these changes by hand on the ppd that was previously
>> output by "make ppd".
> Is there a reference for the format anywhere?
Erm not really - that I know of. There is this thread which I use for
>> For PPM4 the XML in the ppd file can be copied
>> over to packages.xml file in our PPM repository. the codebase URL can be
>> relative/absolute and it's exact value depends on the relative position
>> of the XML (whether in the .ppd or package.xml file) and the .tar.gz
>> file. Thus, by default, they would have to reside in the same dir on our
>> Without looking at the XML I couldn't say if it was PPM3 or PPM4
>> compatible. Could you e-mail me the ppd file and I'll take a look.
> It's pretty basic:
> <SOFTPKG NAME="bioperl" VERSION="1,005002003,0,0">
> <ABSTRACT>Bioinformatics Toolkit</ABSTRACT>
> <AUTHOR>Bioperl Team <bioperl-l at bioperl.org></AUTHOR>
> <CODEBASE HREF="PPM-bioperl-1.005002003.tar.gz" />
> If I made it output the sort of information in the current
> http://bioperl.org/DIST/RC/package.xml, would that be fine? Did you
> have any kind of automation for creating that package.xml, or do you
> see a good potential way of automating it?
This PPD doesn't contain any info about what modules it provides
(ideally, it should have a provide tags for all modules in bioperl) or
the dependencies via the require tag.
I didn't have an automated way of making it. Previously, the output of
"make ppd" used PREREQ_PM from makefile.pl to create PPM3 dependency
tags for all modules in PREREQ_PM. I just modified the tags to REQUIRE
and added '::' to the end of modules that didn't natively have one. This
should all be detailed in the above in - here again for convenience:
There must be an automated way to generate the PPM4 compatible PPDs - I
think there is a way to generate one from the CPAN distribution. I think
this might be the way ActiveState does it?
More information about the Bioperl-l