There is a good Perl spec and script for the dependency resolution called
cpanfile. Probably some code that can be reused...

http://search.cpan.org/~miyagawa/Module-CPANfile-1.0002/lib/cpanfile.pod

On Thu, Nov 20, 2014, 9:50 AM Kenneth Hoste <[email protected]> wrote:

>
> On 20/11/14 15:42, Stijn De Weirdt wrote:
> > hi all,
> >
> > afaik jens has a script to walk cpan and produce easyconfigs. if he's
> > awake, he'll know where it is.
> It doesn't generate easyconfigs, it generates entries for exts_list, in
> the right order.
>
> There's an open PR for it, see
> https://github.com/hpcugent/easybuild-framework/pull/897 .
>
>
> regards,
>
> Kenneth
>
> >
> > stijn
> >
> > On 11/20/2014 03:23 PM, Heywood, Todd wrote:
> >> Hi,
> >>
> >> Good question. It could/should be expanded fro Perl to Python module
> >> installation (e.g. Via “pip”) and R package installation.
> >>
> >> Todd
> >>
> >> From: tin h <[email protected]<mailto:[email protected]>>
> >> Reply-To: "[email protected]<mailto:[email protected]>"
> >> <[email protected]<mailto:[email protected]>>
> >> Date: Wednesday, November 19, 2014 at 8:04 PM
> >> To: "[email protected]<mailto:[email protected]>"
> >> <[email protected]<mailto:[email protected]>>
> >> Subject: [easybuild] Any easy way to get lots of CPAN modules for a
> >> Perl installation?
> >>
> >>
> >> Hello fellow easybuilder :)
> >>
> >>
> >> On a traditional, OS-based Perl installation, one would use CPAN to
> >> automatically fetch and install modules and libraries, including all
> >> the dependencies.
> >>
> >>
> >>
> >> What easy (as in "lazy") way is there to accomplish the same thing
> >> when using EasyBuild?
> >>
> >>
> >>
> >> I have a Perl.eb that looks like the one below.   I understand that I
> >> can list all the CPAN modules by listing them in the exts_list, but
> >> this a very long and tedious process, as it does not take care of
> >> dependencies.  Things like BioPerl has a gigantic list of dependent
> >> modules, and I rather not write out this list by hand.  I did say I
> >> wanted to be lazy, yes? :p
> >>
> >>
> >> Thoughts?  How the the Perl guru handling this?
> >>
> >>
> >> Much thanks in advance,
> >>
> >> Tin
> >>
> >>
> >>
> >>
> >>
> >>
> >> name = 'Perl'
> >>
> >> version = '5.20.0'
> >>
> >> toolchain = {'name': 'goolf', 'version': '1.5.14-NX'}
> >>
> >> source_urls = ['http://www.cpan.org/src/5.0']
> >>
> >> sources = [SOURCELOWER_TAR_GZ]
> >>
> >>
> >> exts_list = [
> >>
> >>      ('DBI', '1.631', {
> >>
> >>          'source_urls':
> >> ['http://www.cpan.org/modules/by-module/DBI/TIMB/'],
> >>
> >>      }),
> >>
> >>      ('Module::Build', '0.4205', {
> >>
> >>          'source_tmpl': 'Module-Build-0.4205.tar.gz',
> >>
> >>          'source_urls':
> >> ['http://www.cpan.org/modules/by-module/Module/LEONT/'],
> >>
> >>      }),
> >>
> >>      ('Devel::StackTrace', '1.32', {
> >>
> >>          'source_tmpl': 'Devel-StackTrace-1.32.tar.gz',
> >>
> >>          'source_urls':
> >> ['http://www.cpan.org/modules/by-module/Devel/DROLSKY'],
> >>
> >>      }),
> >>
> >>      ('Class::Data::Inheritable', '0.08', {
> >>
> >>          'source_tmpl': 'Class-Data-Inheritable-0.08.tar.gz',
> >>
> >>          'source_urls':
> >> ['http://www.cpan.org/modules/by-module/Class/TMTM'],
> >>
> >>      })
> >>
> >> ]
> >>
> >> moduleclass = 'lang'
> >>
> >>
> >>
>
>

Reply via email to