X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FCPANPLUS%2FDist%2FGentoo.pm;h=fdf0b2fc198703fd4939cad10ca3d744f8fecf78;hb=HEAD;hp=ef52fe895d2d6c8d78bbe2d9d2cf064e1e92b76f;hpb=ca7d672a00d3f27fe2b037efb4e0bca692b3f800;p=perl%2Fmodules%2FCPANPLUS-Dist-Gentoo.git diff --git a/lib/CPANPLUS/Dist/Gentoo.pm b/lib/CPANPLUS/Dist/Gentoo.pm index ef52fe8..fdf0b2f 100644 --- a/lib/CPANPLUS/Dist/Gentoo.pm +++ b/lib/CPANPLUS/Dist/Gentoo.pm @@ -8,6 +8,7 @@ use List::Util qw; use File::Copy (); use File::Path (); use File::Spec; +use POSIX (); use IPC::Cmd (); use Parse::CPAN::Meta (); @@ -26,11 +27,11 @@ CPANPLUS::Dist::Gentoo - CPANPLUS backend generating Gentoo ebuilds. =head1 VERSION -Version 0.11 +Version 0.12 =cut -our $VERSION = '0.11'; +our $VERSION = '0.12'; =head1 SYNOPSIS @@ -175,13 +176,13 @@ If you still have C C<5.8.x>, you can upgrade it by running the following Then, fetch the L tarball : $ cd /tmp - $ wget http://search.cpan.org/CPAN/authors/id/V/VP/VPIT/CPANPLUS-Dist-Gentoo-0.11.tar.gz + $ wget http://search.cpan.org/CPAN/authors/id/V/VP/VPIT/CPANPLUS-Dist-Gentoo-0.12.tar.gz Log in as root and unpack it in e.g. your home directory : # cd - # tar xzf /tmp/CPANPLUS-Dist-Gentoo-0.11.tar.gz - # cd CPANPLUS-Dist-Gentoo-0.11 + # tar xzf /tmp/CPANPLUS-Dist-Gentoo-0.12.tar.gz + # cd CPANPLUS-Dist-Gentoo-0.12 Bootstrap L using the bundled shell script C : @@ -269,6 +270,20 @@ sub format_available { $default_keywords = [ 'x86' ] unless defined $default_keywords; $default_distdir = '/usr/portage/distfiles' unless defined $default_distdir; + my $timestamp = CPANPLUS::Dist::Gentoo::Maps::get_portage_timestamp( + $main_portdir + ); + if (defined $timestamp) { + __PACKAGE__->_notify("Portage tree $main_portdir dates back from UNIX timestamp $timestamp"); + } else { + __PACKAGE__->_notify("Unable to get timestamp for portage tree $main_portdir, using gmtime instead"); + $timestamp = POSIX::mktime(gmtime); + } + if ($timestamp < CPANPLUS::Dist::Gentoo::Maps::TIMESTAMP) { + __PACKAGE__->_abort("Portage tree too old (please run emerge --sync and retry)"); + return $format_available = 0; + } + return $format_available = 1; } @@ -862,7 +877,7 @@ Gentoo (L). L, L (core modules since 5.9.5), L (since 5.10.1). -L, L (since perl 5), L (5.001), L (5.002), L (5.00405), L (5.007003). +L, L (since perl 5), L (5.001), L (5.002), L (5.00405), L (5.7.3). =head1 SEE ALSO @@ -895,7 +910,7 @@ Kent Fredric, for testing and suggesting improvements. =head1 COPYRIGHT & LICENSE -Copyright 2008,2009,2010 Vincent Pit, all rights reserved. +Copyright 2008,2009,2010,2011,2012 Vincent Pit, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.