On Tue, May 22, 2007 at 06:44:47PM -0700, Joshua ben Jore wrote:
> On 5/22/07, Eric Wilhelm <[EMAIL PROTECTED]> wrote:
> ># from Joshua ben Jore
> ># on Tuesday 22 May 2007 03:38 pm:
> >
> >>> Where *exactly* is "their prerequisites" defined?
> >>
> >>Well... I expect it to be in PREREQ_PM in Makefile.PL using
> >>ExtUtils::MakeMaker.
> >
> >Ugh.  I was hoping for an answer more like "META.yml".
> >
> >How is Makefile.PL going to tell you to install Module::Build and then
> >run Build.PL?  I'm pretty sure that's too late to switch ponies.
> >
> >>If its a Module::Build-only module or the EU::MM
> >>using PREREQ_PM isn't good enough then the module just isn't
> >>installable.
> >
> >I don't think I like that definition of "not installable".  It sounds
> >like it specifically blacklists Module::Build-only modules.  Actually,
> >it sounds like it completely ignores Module::Build because it must have
> >a Makefile.PL.
> 
> Perl 5.10+ will be the only version of perl that comes with a CPAN.pm
> that purports to know what to do with META.yml or Build.PL. You cannot
> communicate a Module::Build dependency via META.yml and have it
> understood by any earlier version.
> 

        Ok. Newer CPAN knows what to do with Build.PL. So assuming it prefers
Build.PL over Makefile.PL (which is generally accepted correct behavior now),
all we have to do is die "Run Build.PL or use CPAN v1.9102 or higher" in the
Makefile.PL and let the user figure out the rest. If it _doesn't_ prefer
Build.PL it should should be changed so it does prefer it unless the user
is intentionally being extremely silly.

> In short, if you wish your module to be cleanly installable without
> manual intervention on any production quality perl, you must provide a
> functional Makefile.PL. I don't believe I've heard of a Makefile.PL
> recipe for installing Module::Build, then switching to a Build.PL
> mid-install.
> 

        Makefile.PL is supposed to be dying. Let's just kill the beast. Let
the first step to automating installation be installing new automation
tools. perl -MCPAN -e 'install Bundle::CPAN'. Is there any reason this isn't
a reasonable requirement?


> Has there been experimentation to do use Module::Install to install
> Module::Build or CPAN.pm during the `make' or 'Makefile.PL' part of
> the module installation by CPAN.pm?
> 

        M::B updates when (current) Bundle::CPAN does. So.. just do it?

        Austin

Reply via email to