X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FCPANPLUS%2FDist%2FGentoo.pm;h=89756240b6b7cef05d052fc4a07c1e4d401ad576;hb=3d960decb0a513ec1f0bb62296285a0f74a32e0e;hp=fda4b054b8fb67c9c32911fa0db1452f73e0c4ef;hpb=07bd0229f3fe4814b4355061f6cf2e97a3c76921;p=perl%2Fmodules%2FCPANPLUS-Dist-Gentoo.git diff --git a/lib/CPANPLUS/Dist/Gentoo.pm b/lib/CPANPLUS/Dist/Gentoo.pm index fda4b05..8975624 100644 --- a/lib/CPANPLUS/Dist/Gentoo.pm +++ b/lib/CPANPLUS/Dist/Gentoo.pm @@ -82,13 +82,16 @@ sub init { } my %gentooism = ( + 'Crypt-RSA' => 'crypt-rsa', 'Digest' => 'digest-base', 'Locale-Maketext' => 'locale-maketext', + 'Math-Pari' => 'math-pari', 'Net-Ping' => 'net-ping', 'PathTools' => 'File-Spec', 'PodParser' => 'Pod-Parser', 'Set-Scalar' => 'set-scalar', 'Tie-EncryptedHash' => 'tie-encryptedhash', + 'YAML' => 'yaml', ); sub prepare { @@ -100,6 +103,8 @@ sub prepare { my %opts = @_; + $stat->prepared(0); + my $keywords = delete $opts{'keywords'}; $keywords = 'x86' unless defined $keywords; $keywords = [ split ' ', $keywords ]; @@ -207,7 +212,6 @@ sub prepare { $stat->license([ qw/Artistic GPL-2/ ]); my $prereqs = $mod->status->prereqs; - $prereqs = { map { ($gentooism{$_} || $_) => $prereqs->{$_} } keys %$prereqs }; my @depends; for my $prereq (sort keys %$prereqs) { next if $prereq =~ /^perl(?:-|\z)/; @@ -231,6 +235,7 @@ sub prepare { } $stat->deps(\@depends); + $stat->prepared(1); return 1; } @@ -240,6 +245,7 @@ sub create { unless ($stat->prepared) { error 'Can\'t create ' . $stat->dist . ' since it was never prepared -- aborting'; + $stat->created(0); return 0; } @@ -248,6 +254,8 @@ sub create { return 1; } + $stat->created(0); + $self->SUPER::create(@_); my $dir = $stat->eb_dir; @@ -273,6 +281,7 @@ sub create { 'dev-lang/perl', map { my $a = $_->[0]->package_name; + $a = $gentooism{$a} || $a; my $x = ''; if (defined $_->[1]) { $x = '>='; @@ -308,6 +317,7 @@ sub create { } } + $stat->created(1); return 1; } @@ -320,7 +330,10 @@ sub install { my @cmd = ('emerge', '=' . $stat->eb_name . '-' . $stat->eb_version); unshift @cmd, $sudo if $sudo; - return $self->_run(\@cmd, 1); + my $success = $self->_run(\@cmd, 1); + $stat->installed($success); + + return $success; } sub uninstall { @@ -332,7 +345,10 @@ sub uninstall { my @cmd = ('emerge', '-C', '=' . $stat->eb_name . '-' . $stat->eb_version); unshift @cmd, $sudo if $sudo; - return $self->_run(\@cmd, 1); + my $success = $self->_run(\@cmd, 1); + $stat->uninstalled($success); + + return $success; } sub _run {