The following module was proposed for inclusion in the Module List:
modid: Module::Build DSLIP: bdpOp description: Build and install Perl modules userid: KWILLIAMS (Ken Williams) chapterid: 3 (Development_Support) communities: #perl, [EMAIL PROTECTED], [EMAIL PROTECTED] similar: ExtUtils::MakeMaker rationale: From the docs: =head1 MOTIVATIONS There are several reasons I wanted to start over, and not just fix what I didn't like about MakeMaker: =over 4 =item * I don't like the core idea of MakeMaker, namely that C<make> should be involved in the build process. Here are my reasons: =over 4 =item + When a person is installing a Perl module, what can you assume about their environment? Can you assume they have C<make>? No, but you can assume they have some version of Perl. =item + When a person is writing a Perl module for intended distribution, can you assume that they know how to build a Makefile, so they can customize their build process? No, but you can assume they know Perl, and could customize that way. =back For years, these things have been a barrier to people getting the build/install process to do what they want. =item * There are several architectural decisions in MakeMaker that make it very difficult to customize its behavior. For instance, when using MakeMaker you do C<use MakeMaker>, but the object created in C<WriteMakefile()> is actually blessed into a package name that's created on the fly, so you can't simply subclass C<ExtUtils::MakeMaker>. There is a workaround C<MY> package that lets you override certain MakeMaker methods, but only certain explicitly predefined (by MakeMaker) methods can be overridden. Also, the method of customization is very crude: you have to modify a string containing the Makefile text for the particular target. =item * It is risky to make major changes to MakeMaker, since it does so many things, is so important, and generally works. C<Module::Build> is an entirely seperate package so that I can work on it all I want, without worrying about backward compatibility. =item * Finally, Perl is said to be a language for system administration. Could it really be the case that Perl isn't up to the task of building and installing software? Even if that software is a bunch of stupid little C<.pm> files that just need to be copied from one place to another? Are you getting riled up yet?? =back Please contact me if you have any questions or ideas. enteredby: KWILLIAMS (Ken Williams) enteredon: Thu Jun 27 07:39:11 2002 GMT The resulting entry would be: Module:: ::Build bdpOp Build and install Perl modules KWILLIAMS Thanks for registering, The Pause Team PS: The following links are only valid for module list maintainers: Registration form with editing capabilities: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=b2200000_a520c11c607aa8f3&SUBMIT_pause99_add_mod_preview=1 Immediate (one click) registration: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=b2200000_a520c11c607aa8f3&SUBMIT_pause99_add_mod_insertit=1