Archive-Zip-SimpleZip
view release on metacpan or search on metacpan
private/MakeUtil.pm view on Meta::CPAN
}
};
}
if (! $our_sub && ! $warn_sub) {
warn "Up/Downgrade not needed.\n";
if ($upgrade || $downgrade)
{ exit 0 }
else
{ return }
}
foreach (@files) {
#if (-l $_ )
{ doUpDown($our_sub, $warn_sub, $_) }
#else
#{ doUpDownViaCopy($our_sub, $warn_sub, $_) }
}
warn "Up/Downgrade complete.\n" ;
exit 0 if $upgrade || $downgrade;
}
sub doUpDown
{
my $our_sub = shift;
my $warn_sub = shift;
return if -d $_[0];
local ($^I) = ($^O eq 'VMS') ? "_bak" : ".bak";
local (@ARGV) = shift;
while (<>)
{
print, last if /^__(END|DATA)__/ ;
&{ $our_sub }() if $our_sub ;
&{ $warn_sub }() if $warn_sub ;
print ;
}
return if eof ;
while (<>)
{ print }
}
sub doUpDownViaCopy
{
my $our_sub = shift;
my $warn_sub = shift;
my $file = shift ;
use File::Copy ;
return if -d $file ;
my $backup = $file . ($^O eq 'VMS') ? "_bak" : ".bak";
copy($file, $backup)
or die "Cannot copy $file to $backup: $!";
my @keep = ();
{
open F, "<$file"
or die "Cannot open $file: $!\n" ;
while (<F>)
{
if (/^__(END|DATA)__/)
{
push @keep, $_;
last ;
}
&{ $our_sub }() if $our_sub ;
&{ $warn_sub }() if $warn_sub ;
push @keep, $_;
}
if (! eof F)
{
while (<F>)
{ push @keep, $_ }
}
close F;
}
{
open F, ">$file"
or die "Cannot open $file: $!\n";
print F @keep ;
close F;
}
}
sub FindBrokenDependencies
{
my $version = shift ;
my %thisModule = map { $_ => 1} @_;
my @modules = qw(
IO::Compress::Base
IO::Compress::Base::Common
IO::Uncompress::Base
Compress::Raw::Zlib
Compress::Raw::Bzip2
IO::Compress::RawDeflate
IO::Uncompress::RawInflate
IO::Compress::Deflate
IO::Uncompress::Inflate
IO::Compress::Gzip
IO::Compress::Gzip::Constants
IO::Uncompress::Gunzip
IO::Compress::Zip
IO::Uncompress::Unzip
IO::Compress::Bzip2
( run in 4.611 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )