X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FCPANPLUS-Dist-Gentoo.git;a=blobdiff_plain;f=lib%2FCPANPLUS%2FDist%2FGentoo%2FMaps.pm;h=3365a0f7c38222e845d092019176b09163cfb2ce;hp=c85cd2050a3745401c8f1004448f289adc4af1d5;hb=1c081d8b9a6c65ece91fa1363a4bdd9e49b00a37;hpb=e34ede90a8d00b6ccc50dd16bc51d6a3f8ac5067 diff --git a/lib/CPANPLUS/Dist/Gentoo/Maps.pm b/lib/CPANPLUS/Dist/Gentoo/Maps.pm index c85cd20..3365a0f 100644 --- a/lib/CPANPLUS/Dist/Gentoo/Maps.pm +++ b/lib/CPANPLUS/Dist/Gentoo/Maps.pm @@ -9,11 +9,11 @@ CPANPLUS::Dist::Gentoo::Maps - Map CPAN objects to Gentoo and vice versa. =head1 VERSION -Version 0.06 +Version 0.08 =cut -our $VERSION = '0.06'; +our $VERSION = '0.08'; =head1 DESCRPITON @@ -40,6 +40,36 @@ sub name_c2g { return $gentooisms{$name} || $name; } +=head2 C + +Maps F C tag values to the corresponding list of Gentoo licenses identifiers. +Duplicates are stripped off. + +The included data was gathered from L and L. + +=cut + +my %licenses = ( + apache => [ 'Apache-2.0' ], + artistic => [ 'Artistic' ], + artistic_2 => [ 'Artistic-2' ], + bsd => [ 'BSD' ], + gpl => [ 'GPL-1' ], + gpl2 => [ 'GPL-2' ], + gpl3 => [ 'GPL-3' ], + lgpl => [ 'LGPL-2.1' ], + lgpl2 => [ 'LGPL-2.1' ], + lgpl3 => [ 'LGPL-3' ], + mit => [ 'MIT' ], + mozilla => [ 'MPL-1.1' ], + perl => [ 'Artistic', 'GPL-2' ], +); + +sub license_c2g { + my %seen; + grep !$seen{$_}++, map @{$licenses{+lc} || []}, @_; +} + =head2 C Converts a CPAN version to a Gentoo version. @@ -49,6 +79,8 @@ Converts a CPAN version to a Gentoo version. sub version_c2g { my ($v) = @_; + return unless defined $v; + $v =~ y/-/_/; $v =~ y/0-9._//cd; @@ -63,44 +95,6 @@ sub version_c2g { return $v; } -=head2 C - -Compares two Gentoo versions. - -=cut - -sub version_gcmp { - my ($a, $b) = map { defined() ? $_ : 0 } @_; - - for ($a, $b) { - s/^[._]+//g; - s/[._]+$//g; - if (/^([\d.]*\d)\.*(?:_p\.*(\d[\d.]*))?\.*(?:-r(\d+))?$/) { - $_ = { - v => [ split /\.+/, $1 ], - p => [ split /\.+/, $2 || 0 ], - r => [ $3 || 0 ], - }; - } else { - require Carp; - Carp::croak("Couldn't parse version string '$_'"); - } - } - - for my $k (qw/v p r/) { - my $xa = $a->{$k}; - my $xb = $b->{$k}; - while (@$xa or @$xb) { - my $na = shift(@$xa) || 0; - my $nb = shift(@$xb) || 0; - my $c = $na <=> $nb; - return $c if $c; - } - } - - return 0; -} - =head1 SEE ALSO L. @@ -182,6 +176,7 @@ Locale-Maketext-Lexicon locale-maketext-lexicon Log-Dispatch log-dispatch Math-Pari math-pari Module-Info module-info +NTLM Authen-NTLM Net-Ping net-ping Net-SFTP net-sftp Net-SSH-Perl net-ssh-perl