cpanfile support now in place
This commit is contained in:
parent
e01ff7f9c0
commit
74add2cb4f
2 changed files with 41 additions and 0 deletions
7
cpanfile
Normal file
7
cpanfile
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
requires 'Moose';
|
||||||
|
requires 'Module::CoreList';
|
||||||
|
requires 'Storable';
|
||||||
|
requires 'Data::Dumper';
|
||||||
|
requires 'List::Util';
|
||||||
|
requires 'IPC::Run';
|
||||||
|
requires 'Getopt::Long';
|
34
run.pl
34
run.pl
|
@ -74,6 +74,38 @@ sub print_deps {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
package cpanfile;
|
||||||
|
# HACK since cpan files are valid perl, i'm just using do/require
|
||||||
|
|
||||||
|
our @mods;
|
||||||
|
|
||||||
|
sub __parse_file {
|
||||||
|
my $file = shift;
|
||||||
|
|
||||||
|
require $file;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub requires {
|
||||||
|
push @mods, $_[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
sub recommends {
|
||||||
|
push @mods, $_[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
sub conflicts {} # IGNORE These
|
||||||
|
|
||||||
|
# we expect all types
|
||||||
|
sub on {
|
||||||
|
my ($env, $code) = @_;
|
||||||
|
$code->();
|
||||||
|
}
|
||||||
|
|
||||||
|
sub feature {
|
||||||
|
my ($feat, $desc, $code) = @_;
|
||||||
|
$code->();
|
||||||
|
}
|
||||||
|
|
||||||
package main;
|
package main;
|
||||||
use strict;
|
use strict;
|
||||||
use autodie;
|
use autodie;
|
||||||
|
@ -158,6 +190,8 @@ sub main {
|
||||||
|
|
||||||
if ($opt_cpanfile) {
|
if ($opt_cpanfile) {
|
||||||
# TODO read cpanfile, via do/require
|
# TODO read cpanfile, via do/require
|
||||||
|
cpanfile::__parse_file($opt_cpanfile);
|
||||||
|
@mods_to_test = @cpanfile::mods;
|
||||||
}
|
}
|
||||||
|
|
||||||
my @modules;
|
my @modules;
|
||||||
|
|
Loading…
Add table
Reference in a new issue