-runpod2man('lib', $man3dir, $man3ext);
-
-sub runpod2man {
- my($poddir, $mandir, $manext) = @_;
- my($builddir) = Cwd::getcwd();
-
- if ($mandir eq ' ' or $mandir eq '') {
- print STDERR "Skipping installation of $poddir man pages.\n";
- return;
- }
-
- chdir $poddir || die "Unable to cd to $poddir directory!\n$!\n";
-
- # We insist on using the current version of pod2man in case there
- # are enhancements or changes from previous installed versions.
- # The error message doesn't include the '..' because the user
- # won't be aware that we've chdir to $poddir.
- -r "../pod/pod2man" || die "Executable pod/pod2man not found.\n";
-
- # We want to be sure to use the current perl. We can't rely on
- # the installed perl because it might not be actually installed
- # yet. (The user may have set the $install* Configure variables
- # to point to some temporary home, from which the executable gets
- # installed by occult means.)
- $pod2man = "../perl -I ../lib ../pod/pod2man --section=$manext --official";
-
- mkpath($mandir, 1, 0777); # In File::Path
- # Make a list of all the .pm and .pod files in the directory. We will
- # always run pod2man from the lib directory and feed it the full pathname
- # of the pod. This might be useful for pod2man someday.
- @modpods = ();
- find(\&lsmodpods, '.');
- foreach $mod (@modpods) {
- $manpage = $mod;
- my $tmp;
- # Skip .pm files that have corresponding .pod files, and Functions.pm.
- next if (($tmp = $mod) =~ s/\.pm$/.pod/ && -f $tmp);
- next if ($mod eq 'Pod/Functions.pm'); #### Used only by pod itself
-
- # Convert name from File/Basename.pm to File::Basename.3 format,
- # if necessary.
- $manpage =~ s#\.p(m|od)$##;
- if ($^O eq 'os2') {
- $manpage =~ s#/#.#g;
- } else {
- $manpage =~ s#/#::#g;
- }
- $tmp = "${mandir}/${manpage}.tmp";
- $manpage = "${mandir}/${manpage}.${manext}";
- if (&cmd("$pod2man $mod > $tmp") == 0 && !$notify && -s $tmp) {
- rename($tmp, $manpage) && next;
- }
- unless ($notify) {
- unlink($tmp);
- }
- }
- chdir "$builddir" || die "Unable to cd back to $builddir directory!\n$!\n";
-}
-
-sub lsmodpods {
- my $dir = $File::Find::dir;
- my $name = $File::Find::name;
- if (-f $_) {
- $name =~ s#^\./##;
- push(@modpods, $name) if ($name =~ /\.p(m|od)$/);
- }