|
Packit |
7d6a7d |
#!/usr/bin/perl -w
|
|
Packit |
7d6a7d |
################################################################################
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# mktodo -- generate baseline and todo files by running mktodo.pl
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
################################################################################
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# Version 3.x, Copyright (C) 2004-2013, Marcus Holland-Moritz.
|
|
Packit |
7d6a7d |
# Version 2.x, Copyright (C) 2001, Paul Marquess.
|
|
Packit |
7d6a7d |
# Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# This program is free software; you can redistribute it and/or
|
|
Packit |
7d6a7d |
# modify it under the same terms as Perl itself.
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
################################################################################
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
use strict;
|
|
Packit |
7d6a7d |
use Getopt::Long;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
require './devel/devtools.pl';
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
our %opt = (
|
|
Packit |
7d6a7d |
base => 0,
|
|
Packit |
7d6a7d |
check => 1,
|
|
Packit |
7d6a7d |
verbose => 0,
|
|
Packit |
7d6a7d |
install => '/tmp/perl/install/default',
|
|
Packit |
7d6a7d |
blead => 'bleadperl-debug',
|
|
Packit |
7d6a7d |
);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
GetOptions(\%opt, qw( base check! verbose install=s blead=s blead-version=s )) or die;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
identify();
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
my $outdir = 'parts/todo';
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
my @perls = sort { $b->{version} <=> $a->{version} }
|
|
Packit |
7d6a7d |
map { { version => `$_ -e 'printf "%.6f", \$]'`, path => $_ } }
|
|
Packit |
7d6a7d |
($opt{blead}, grep !/-RC\d+/, glob "$opt{install}/*/bin/perl5.*");
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
if (exists $opt{'blead-version'}) {
|
|
Packit |
7d6a7d |
$perls[0]{version} = $opt{'blead-version'};
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
for (1 .. $#perls) {
|
|
Packit |
7d6a7d |
$perls[$_]{todo} = $perls[$_-1]{version};
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
shift @perls;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
for (@perls) {
|
|
Packit |
7d6a7d |
my $todo = do { my $v = $_->{todo}; $v =~ s/\D+//g; $v };
|
|
Packit |
7d6a7d |
-e "$outdir/$todo" and next;
|
|
Packit |
7d6a7d |
my @args = ('--perl', $_->{path}, '--todo', "$outdir/$todo", '--version', "$_->{todo}");
|
|
Packit |
7d6a7d |
push @args, '--base' if $opt{base};
|
|
Packit |
7d6a7d |
push @args, '--verbose' if $opt{verbose};
|
|
Packit |
7d6a7d |
push @args, '--nocheck' unless $opt{check};
|
|
Packit |
7d6a7d |
runperl('devel/mktodo.pl', @args) or die "error running mktodo.pl [$!] [$?]\n";
|
|
Packit |
7d6a7d |
}
|