Update of /cvsroot/module-build/Module-Build/t/lib
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20446/t/lib
Modified Files:
DistGen.pm
Log Message:
Add 'MANIFEST' to the distribution filedata.
When cleaning up, unlink only files that actually exists.
Index: DistGen.pm
===================================================================
RCS file: /cvsroot/module-build/Module-Build/t/lib/DistGen.pm,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- DistGen.pm 28 Jun 2005 05:01:30 -0000 1.6
+++ DistGen.pm 28 Jun 2005 06:26:32 -0000 1.7
@@ -158,11 +158,14 @@
$self->remove();
die "Can't write '$manifest'\n";
};
- print $fh "MANIFEST\n";
- print $fh join( "\n", sort keys( %{$self->{filedata}} ) );
- print $fh "\n";
+
+ my @files = ( 'MANIFEST', keys %{$self->{filedata}} );
+ my $data = join( "\n", sort @files ) . "\n";
+ print $fh $data;
close( $fh );
+ $self->{filedata}{MANIFEST} = $data;
+ $self->{pending}{change}{MANIFEST} = 1;
}
sub name { shift()->{name} }
@@ -195,7 +198,9 @@
foreach my $file ( @files ) {
my $real_filename = $self->_real_filename( $file );
my $fullname = File::Spec->catfile( $dist_dirname, $real_filename );
- unlink( $fullname ) or die "Couldn't unlink '$file'\n";
+ if ( -e $fullname ) {
+ unlink( $fullname ) || die "Couldn't unlink '$file'\n";
+ }
print "Unlinking pending file '$file'\n" if $VERBOSE;
delete( $self->{pending}{remove}{$file} );
}
|