On Sunday, February 16, 2003, at 01:35 PM, Brian Ingerson wrote:
I went to the talk. It got me to thinking about CPAN::MakeMaker and its
relationship to Module::Build.
Given:
The goal of CP::MM is to allow authors to write very simple/clean
Makefile.PLs that can potentially turn on very powerful features
like bundling with the flick of a switch.
The Makefile.PL produces a Makefile.
Then:
There is no reason why CP::MM can't produce a Makefile that wraps
Module::Build!
I'm not sure that's ideal, because it still requires 'make' to
orchestrate at least some of the process. One of the hairiest parts of
Module::Build is the tiny little pass-through Makefile in
Module::Build::Compat, because it has to work in all kinds of different
environments. I've just made a bunch of changes that let it work on
Windows, but there are still a bunch of things missing, like
translating MM command-line options to M::B options
If the author has a version of Module::Build on there system that
is sufficient to handle the options that the author has requested
of CPAN::MakeMaker, then CP::MM will (optionally??) bundle M::B
into the author's dist. After that nobody is the wiser. Everything
just works.
I wouldn't want lots of installation tools bundled into all my
distributions, though. I still think it's far better to have a
powerful system for listing dependencies in as fine-grained and
accessible a manner as is necessary, and let the user choose their
favorite policies and tools for fulfilling those dependencies.
-Ken