request for comments on code for ExtUtils::MY overrides

David Christensen <[email protected]> Sun, 28 Nov 2010 17:30:39 -0800
Newsgroups gmane.comp.lang.perl.modules.extutils-makemaker.devel
Message-ID <[email protected]>
[email protected]:

I've been using ExtUtils::MakeMaker for many years, it works well, and I 
like it.  I've heard of Module::Install and Module::Build, but I'm of 
the mind "if it ain't broke, don't fix it".


About a year ago, I wanted to add some targets and rules to the Makefile 
generated by ExtUtils::MakeMaker::WriteMakefile() and I wanted to 
collect together some favorite test scripts.  So, I STFW, RTFM, looked 
in books, etc., and came up with this:

     http://search.cpan.org/~dpchrist/Dpchrist-Module-1.026/


Recently, I've been using CPAN testers to help squash the bugs:

     http://www.cpantesters.org/distro/D/Dpchrist-Module.html


So far, so good.  But, I know there are still issues:

1.  By mixing two kinds of things in one module (overrides for 
ExtUtils::MY and favorite test scripts), the overall distribution name 
was a compromise.

2.  I am worried that by blindly stepping on the MY::postamble() 
subroutine, I will break other modules that also use it 
(ExtUtils::MakeMaker::Coverage?).

3.  Some of the command-line tools invoked use GNU/Linux absolute paths.

4.  The distribution contains two modules, and some CPAN tester systems 
get confused:

http://www.cpantesters.org/cpan/report/1a09554e-fb48-11df-bb29-ad544afd17af


So, I've:

1.  Split the old module into two new modules:

         Dpchrist::ExtUtils::MakeMaker
         Dpchrist::Test

2.  Figured out how to daisy-chain MY::postamble() calls.

3.  Changed tool invocations to basename only.

4.  Ensured that there is only one *.pm file in each new module.


I would appreciate any comments, criticisms, suggestions, etc., on the 
attached modules.  (Dpchrist::Test uses Dpchrist::ExtUtils::MakeMaker, 
and vice versa.)


David
Dpchrist-ExtUtils-MakeMaker-1.004.tar.gz (application/x-gzip, 6.4 KB) - not displayed
Dpchrist-Test-1.004.tar.gz (application/x-gzip, 3.1 KB) - not displayed