The Windows compile() and link() methods bizarrely include their own
output files in the list of files to be cleaned up. Now that they
actually are being cleaned up, this isn't ideal ;-)
Stop compile() and link() from cleaning up their own output, and
reinstate the explicit deletion of those output files in the test
scripts.
p4raw-id: //depot/perl@25225
use_scripts => 1, # XXX provide user option to change this???
);
- $self->add_to_cleanup($spec{output});
-
$self->normalize_filespecs(
\$spec{source},
\$spec{output},
$self->add_to_cleanup(
grep defined,
- @{[ @spec{qw(output implib explib def_file base_file map_file)} ]}
+ @{[ @spec{qw(implib explib def_file base_file map_file)} ]}
);
foreach my $opt ( qw(output implib explib def_file map_file base_file) ) {
$lib =~ tr/"'//d;
ok $lib_file, $lib;
-unlink $source_file;
+for ($source_file, $lib_file, $object_file) {
+ tr/"'//d;
+ 1 while unlink;
+}
my @words = $b->split_like_shell(' foo bar');
ok @words, 2;
ok my_system($exe_file), 11;
# Clean up
-unlink $source_file;
+for ($source_file, $exe_file, $object_file) {
+ tr/"'//d;
+ 1 while unlink;
+}
sub my_system {
my $cmd = shift;
}
}
}
+ unlink $obj_file;
unlink $lib_file;
} else {
skip "Skipped can't find a C compiler & linker", 1 for 1..7;