]> git.vpit.fr Git - perl/modules/CPANPLUS-Dist-Gentoo.git/blobdiff - lib/CPANPLUS/Dist/Gentoo.pm
Make Perl version numbers more readable
[perl/modules/CPANPLUS-Dist-Gentoo.git] / lib / CPANPLUS / Dist / Gentoo.pm
index fb54d76303c0e2d8444697a792f05c0bed49fa76..fdf0b2fc198703fd4939cad10ca3d744f8fecf78 100644 (file)
@@ -8,6 +8,7 @@ use List::Util qw<reduce>;
 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<perl> C<5.8.x>, you can upgrade it by running the following
 Then, fetch the L<CPANPLUS::Dist::Gentoo> 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<CPANPLUS::Dist::Gentoo> using the bundled shell script C<g-cpanp> :
 
@@ -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<http://gentoo.org>).
 
 L<CPANPLUS>, L<IPC::Cmd> (core modules since 5.9.5), L<Parse::CPAN::Meta> (since 5.10.1).
 
-L<Cwd>, L<Carp> (since perl 5), L<File::Path> (5.001), L<File::Copy> (5.002), L<File::Spec> (5.00405), L<List::Util> (5.007003).
+L<Cwd>, L<Carp> (since perl 5), L<File::Path> (5.001), L<File::Copy> (5.002), L<File::Spec> (5.00405), L<List::Util> (5.7.3).
 
 =head1 SEE ALSO
 
@@ -895,7 +910,7 @@ Kent Fredric, for testing and suggesting improvements.
 
 =head1 COPYRIGHT & LICENSE
 
-Copyright 2008,2009,2010,2011 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.