Rename ext/Devel/DProf to ext/Devel-DProf
[p5sagit/p5-mst-13.2.git] / ext / Devel-PPPort / devel / mktodo
1 #!/usr/bin/perl -w
2 ################################################################################
3 #
4 #  mktodo -- generate baseline and todo files by running mktodo.pl
5 #
6 ################################################################################
7 #
8 #  $Revision: 16 $
9 #  $Author: mhx $
10 #  $Date: 2009/01/18 14:10:50 +0100 $
11 #
12 ################################################################################
13 #
14 #  Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
15 #  Version 2.x, Copyright (C) 2001, Paul Marquess.
16 #  Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
17 #
18 #  This program is free software; you can redistribute it and/or
19 #  modify it under the same terms as Perl itself.
20 #
21 ################################################################################
22
23 use strict;
24 use Getopt::Long;
25
26 require 'devel/devtools.pl';
27
28 our %opt = (
29   base    => 0,
30   check   => 1,
31   verbose => 0,
32 );
33
34 GetOptions(\%opt, qw( base check! verbose )) or die;
35
36 identify();
37
38 my $outdir = 'parts/todo';
39
40 my $install = '/tmp/perl/install/default';
41 # my $install = '/tmp/perl/install/thread';
42
43 my @perls = sort { $b->{version} <=> $a->{version} }
44             map { { version => `$_ -e 'printf "%.6f", \$]'`, path => $_ } }
45             ('bleadperl', glob "$install/*/bin/perl5.*");
46
47 for (1 .. $#perls) {
48   $perls[$_]{todo} = $perls[$_-1]{version};
49 }
50
51 shift @perls;
52
53 for (@perls) {
54   my $todo = do { my $v = $_->{todo}; $v =~ s/\D+//g; $v };
55   -e "$outdir/$todo" and next;
56   my @args = ('--perl', $_->{path}, '--todo', "$outdir/$todo", '--version', "$_->{todo}");
57   push @args, '--base' if $opt{base};
58   push @args, '--verbose' if $opt{verbose};
59   push @args, '--nocheck' unless $opt{check};
60   runperl('devel/mktodo.pl', @args) or die "error running mktodo.pl [$!] [$?]\n";
61 }
62