develooper Front page | perl.perl5.porters | Postings from October 2003

How to maintain a private Perl library

Thread Next
Johan Vromans
October 13, 2003 06:13
How to maintain a private Perl library
Message ID:
Assume I want to maintain a private Perl library in ~/lib/perl, what
specific flags do I have to specify?

Some docs (e.g., CPANPLUS) say that I need to pass "LIB=~/lib/perl/lib
INSTALLMAN1DIR=~/lib/perl/man/man1 INSTALLMAN3DIR=~/lib/perl/man/man3"
to MakeMaker. Other docs (e.g., CPAN) suggest setting PREFIX.

All these quitely assume that MakeMaker / make will be used for
building. However, since Module::Build now seems to be gaining as the
preferred way to build modules, the required settings change
drastically: install_path=script=..., install_path=bin=...,
install_path=bindoc=..., install_path=libdoc=..., and so on.
Moreover, while MakeMaker translates a leading "~/" into the user's
home directory, Build does not. Also, specifying both sets of settings
causes MakeMaker to complain about INSTALL_PATH not being one of its
recognized options. Not to mention that PREFIX has different semantics
than the Module::Build settings.

I think some rethinking of this mechanism is necessary.  In
particular, I think that the relevant tools (CPAN, CPANPLUS,
MAkeMaker, Module::Build) should require only one single setting to
specify a private library and then use this to infer the other
settings. Something like Module::Build's install_base.  Alternatively,
CPAN and CPANPLUS can use this info to pass the correct settings to
Module::Build, ExtUtils::MakeMaker and so on.

Do you agree this would be a good idea?

-- Johan

Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About