From 2f310fba9800f9d106ad8090cbbfb628c53599a1 Mon Sep 17 00:00:00 2001 From: Dylan William Hardison Date: Fri, 14 Oct 2016 18:13:29 -0400 Subject: Bug 1308949 - Keep MYMETA.json up-to-date when checksetup is run --- Makefile.PL | 7 +++++++ checksetup.pl | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/Makefile.PL b/Makefile.PL index a84aa1cdf..1bee517c8 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -22,6 +22,13 @@ use constant BUGZILLA_VERSION => $ENV{BUGZILLA_VERSION} // 42; use File::Basename; use File::Spec; +BEGIN { + if ($ENV{BZ_SILENT_MAKEFILE}) { + open STDOUT, '>>', File::Spec->devnull; + open STDERR, '>>', File::Spec->devnull; + } +} + # META.json and META.yml exist only for the benefit of older # installs where cpanm can't get the optional features out of Makefile.PL # Unfortunately having META.json and META.yml commited to the repo is weird diff --git a/checksetup.pl b/checksetup.pl index e5df8c5c8..327de3c56 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -88,7 +88,17 @@ if (defined $switch{cpanm}) { exit 1 if $rv != 0; } +$ENV{PERL_MM_USE_DEFAULT} = 1; +$ENV{BZ_SILENT_MAKEFILE} = 1; +system($^X, "Makefile.PL"); + my $meta = load_cpan_meta(); +if (keys %{$meta->{optional_features}} < 1) { + warn "Your version of ExtUtils::MakeMaker is probably too old\n"; + warn "Falling back to static (and wrong) META.json\n"; + unlink('MYMETA.json'); + $meta = load_cpan_meta(); +} my $requirements = check_cpan_requirements($meta, \@BUGZILLA_INC, !$silent); exit 1 unless $requirements->{ok}; -- cgit v1.2.3-24-g4f1b