Gabor Szabo wrote:
But if you're not using the MakeMaker install process why are you using
MakeMaker?
I wanted to get Bugzilla on CPAN but making the whole installation process
really work is not that easy. Max, the Bugzilla lead is afraid that people will
try to install it from CPAN and they will just get complains on broken
installations.
So I suggested to upload Bugzilla to CPAN and replace "make install"
with a message that points to the currently working direction. Then
gradually try
to make sure the whole installation process can work via CPAN as well.
I don't know how much value there is in putting it on CPAN with no install
mechanism. A minimum one which does the following would be more useful:
1) Use REQUIRED_MODULES() and OPTIONAL_MODULES() in
Bugzilla::Install::Requirements to generate PREREQ_PM.
2) Have the Makefile.PL prompt() the user where they want it installed.
3) Run the tests in the t/ directory.
4) Have install copy the files to the user's selected directory.
5) Finish with a pointer to the README and a message that installation
is not complete and they're up to step 4.
That's fairly straightforward.
MakeMaker does not support optional requirements, features or blacklists, and
you're eventually going to rewrite nearly the entire Makefile anyway. About
the only benefit you'll gain from using MakeMaker over writing a Makefile is
the cross-platform widgets like $(ECHO) which are only necessary because
you're writing a Makefile. Circular.
You'd be better off with Module::Build. Make ACTION_code do nothing. Leave
ACTION_test alone. Completely override ACTION_install.
Since then I am not sure any more as apparently they currently include the CVS
directory in their tarball in order to allow people to upgrade via CVS.
I haven't figured out if that's brilliant or silly. Or both. Either way, its
tiny and seems orthogonal to the issue of getting it on CPAN.
--
Just call me 'Moron Sugar'.
http://www.somethingpositive.net/sp05182002.shtml