package Dist::Zooky::Core::ModBuild; $Dist::Zooky::Core::ModBuild::VERSION = '0.24'; # ABSTRACT: gather meta data for Module::Build dists use strict; use warnings; use Moose; use IPC::Cmd qw[run can_run]; with 'Dist::Zooky::Role::Core'; with 'Dist::Zooky::Role::Meta'; sub _build_metadata { my $self = shift; my $struct; { local $ENV{PERL_MM_USE_DEFAULT} = 1; my $cmd = [ $^X, 'Build.PL' ]; run ( command => $cmd, verbose => 0 ); } if ( -e 'MYMETA.json' ) { $struct = $self->meta_from_file( 'MYMETA.json' ); } elsif ( -e 'MYMETA.yml' ) { $struct = $self->meta_from_file( 'MYMETA.yml' ); } else { die "Couldn\'t find a 'MYMETA.yml or MYMETA.json' file, giving up\n"; } { my $cmd = [ $^X, 'Build', 'distclean' ]; run( command => $cmd, verbose => 0 ); } return { %$struct }; } __PACKAGE__->meta->make_immutable; no Moose; qq[MakeMaker]; __END__ =pod =encoding UTF-8 =head1 NAME Dist::Zooky::Core::ModBuild - gather meta data for Module::Build dists =head1 VERSION version 0.24 =head1 AUTHOR Chris Williams =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2017 by Chris Williams. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut