summaryrefslogtreecommitdiff
path: root/lib/ExtUtils/Install.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ExtUtils/Install.pm')
-rw-r--r--lib/ExtUtils/Install.pm21
1 files changed, 14 insertions, 7 deletions
diff --git a/lib/ExtUtils/Install.pm b/lib/ExtUtils/Install.pm
index 5763f1bb97..68fe343ba2 100644
--- a/lib/ExtUtils/Install.pm
+++ b/lib/ExtUtils/Install.pm
@@ -108,13 +108,20 @@ sub install {
for (readdir DIR) {
next if $_ eq $Curdir || $_ eq $Updir || $_ eq ".exists";
my $targetdir = install_rooted_dir($from_to{$source_dir_or_file});
- if (-w $targetdir ||
- mkpath($targetdir)) {
+ if ($nonono) {
+ if (!-w $targetdir) {
+ print "mkpath($targetdir)\n" if $verbose>1;
+ }
last;
} else {
- warn "Warning: You do not have permissions to " .
- "install into $from_to{$source_dir_or_file}"
- unless $warn_permissions++;
+ if (-w $targetdir ||
+ mkpath($targetdir)) {
+ last;
+ } else {
+ warn "Warning: You do not have permissions to " .
+ "install into $from_to{$source_dir_or_file}"
+ unless $warn_permissions++;
+ }
}
}
closedir DIR;
@@ -203,9 +210,9 @@ sub install {
}
if ($pack{'write'}) {
$dir = install_rooted_dir(dirname($pack{'write'}));
- mkpath($dir,0,0755);
+ mkpath($dir,0,0755) unless $nonono;
print "Writing $pack{'write'}\n";
- $packlist->write(install_rooted_file($pack{'write'}));
+ $packlist->write(install_rooted_file($pack{'write'})) unless $nonono;
}
}