On 5/19/05, Michael G Schwern <[EMAIL PROTECTED]> wrote:
> On Thu, May 19, 2005 at 09:18:26PM -0400, Rob Kinyon wrote:
> > I've been following the threads on PM and would like to offer my
> > services. What are the development tasks needed to get this in?
> >
> > I have -not- read the archives of this list, so a perfectly good
> > response might be "Read this specific note in the archives".
> 
> The code in question is ExtUtils::MM_Any->init_INSTALL_from_PREFIX() as
> well as MM_Unix and MM_VMS->prefixify.  Somehow this logic must be made
> either:
> 
> a) callable as a function (ie. it cannot rely on the MakeMaker object)
> b) moved into Module::Build::Base and the MakeMaker object replaced by
>    the Module::Build object.
> 
> While option b duplicates the code I don't expect the code to change and
> it is the easiest option and doesn't require Module::Build to rely on an
> up-to-date MakeMaker.  So I'd say that's the best stab.  I think it should
> be possible to do a rote translation of the code from MakeMaker to
> Module::Build.
> 
> 
> > Also, how would I be able to test this feature?
> 
> You run the prefixification function with various install configs (by
> altering $self->{config}) and different prefix values and see if you get
> the right install paths.  Of course even knowing what the right result
> shoudl be can be tricky.  The MakeMaker test suite has some PREFIX tests
> you can look at.

A few questions about how this works / should work:
1) The EU::MM classes are quite ... incestuous. Everything inherits
from MM_Any and MM_Unix (in some order). This implies that everything
should use the MM_Unix method of PREFIX, except for VMS which has its
own. Is this correct?
2) Given #1, that would imply that the PREFIX logic should be in
M::B::Base, except for VMS which would override it. Is this correct?
3) Any recommendation on method name?
4) Within MM_Any::init_INSTALL(), it asserts that INSTALLBASE and
PREFIX cannot be used together. Should this assertion hold true in the
M::B port?
5) Is there anything I'm not asking that I should be asking?

Thanks,
Rob

Reply via email to