Module::Build has come a long way. I use it in my Video::Xine module because it offers a clean, well-documented way to add arbitrary arguments to the C compiler. In addition, it has a superior interface for authors (who we should encourage... the best reason to use Perl is CPAN), plus some well-designed methods for backward compatibility. It will, in fact, automatically create a Makefile.PL in your distribution.
The only things preventing a five-star rating are buildability checks and the sheer number of unfixed bugs sitting in the queue. The CPAN automated testing system is designed to skip sending a FAIL report if the Build.PL or Makefile.PL script exits successfully but without creating a Makefile or Build file. It's easy to add an assertion to the Build.PL file, but if there's a compatibility-layer Makefile.PL, it will error out if the Build.PL doesn't create a Build file.
In the end, the benefits strongly outweigh the drawbacks, and I look forward to its joining the Perl core, which will eliminate many of the other objections.
7 out of 7 found this review helpful. Was this review helpful to you? Yes No