my %opts;
GetOptions( \%opts,
qw( man1dir=s man1ext=s man3dir=s man3ext=s batchlimit=i
- destdir=s notify n help silent S verbose V))
+ destdir:s notify n help silent S verbose V))
|| die $usage;
die $usage if $opts{help};
+$opts{destdir} //= '';
$opts{man1dir} = "$opts{destdir}$Config{'installman1dir'}"
unless defined($opts{man1dir});
-x "t/perl$Config{exe_ext}" || warn "WARNING: You've never run 'make test'!!!",
" (Installing anyway.)\n";
-$packlist = ExtUtils::Packlist->new("$opts{destdir}/$Config{installarchlib}/.packlist");
+$packlist = ExtUtils::Packlist->new("$opts{destdir}$Config{installarchlib}/.packlist");
# Install the main pod pages.
my $new = "$opts{man1dir}/$what2.$opts{man1ext}";
unlink($new);
link($old, $new);
+ my $xold = $old;
+ $xold =~ s/^\Q$opts{'destdir'}\E// if $opts{'destdir'};
+ my $xnew = $new;
+ $xnew =~ s/^\Q$opts{'destdir'}\E// if $opts{'destdir'};
+ $packlist->{$xnew} = { from => $xold, type => 'link' };
}
}
}
next if $mod =~ m:/t/:; # no pods from test directories
next if ($manpage eq 'Pod/Functions.pm'); #### Used only by pod itself
+ # Skip files without pod docs
+ my $has_pod;
+ if (open T, $mod)
+ {
+ local $_;
+ while (<T>)
+ {
+ ++$has_pod and last if /^=(?:head\d+|item|pod)\b/;
+ }
+
+ close T;
+ }
+
+ unless ($has_pod)
+ {
+ warn "no documentation in $mod\n";
+ next;
+ }
+
# Convert name from File/Basename.pm to File::Basename.3 format,
# if necessary.
$manpage =~ s#\.p(m|od)$##;
push @to_process, [$mod, $tmp, $manpage];
}
- my $parser = Pod::Man->new( section => $manext,
- official=> 1,
- center => 'Perl Programmers Reference Guide'
- );
foreach my $page (@to_process) {
my($pod, $tmp, $manpage) = @$page;
+ my $parser = Pod::Man->new( section => $manext,
+ official=> 1,
+ center => 'Perl Programmers Reference Guide'
+ );
my $xmanpage = $manpage;
$xmanpage =~ s/^\Q$opts{'destdir'}\E// if $opts{'destdir'};
print " $xmanpage\n";
print " Installation complete\n" if $opts{verbose};
exit 0;
-
###############################################################################
# Utility subroutines from installperl