My guess is that the "bug" might still there, but I think this is a case of
user-error, or rather a use-case that Module::Build::Compat shouldn't need
to support.

(a) they can now disable reporting via CPAN Testers preferences website

(b) they can not use a passthrough Makefile at all and just put
Module::Build into configure_requires in META.yml

(c) they can add the same checks to the generated Makefile.PL  (which is
what the user seems to have done -- cf Video::Xine)

I wish we could deprecate passthrough Makefile.PL.  Anything other than
traditional is such a potential source for trouble.  Oh, well.

Anyway, here's a simple patch that should "fix" it (note -- untested).  It
does change the return value, but I'm not sure if that's important or not.

-- David

=== lib/Module/Build/Compat.pm
==================================================================
--- lib/Module/Build/Compat.pm    (revision 12237)
+++ lib/Module/Build/Compat.pm    (local)
@@ -256,6 +256,7 @@
   my @args = $in{args} ? $pack->makefile_to_build_args(@{$in{args}}) : ();
   print "# running $in{script} @args\n";
   Module::Build->run_perl_script($in{script}, [], \...@args) or die "Couldn't
run $in{script}: $!";
+  exit 0 unless -r "Build"; # if no error but no Build file created, just
quietly stop
 }

 sub fake_makefile {

Reply via email to