#!/usr/local/bin/new/perl -w use strict; use Config; use Carp; use Pod::Links; use Pod::Find; $SIG{'INT'} = \&Carp::confess; use Cwd; use Getopt::Std; my %opt; getopts('icdsv',\%opt); my $here = getcwd(); my @dir; sub add_dir { my $dir = shift; if (chdir($dir)) { push(@dir,getcwd()); chdir($here) || die "Cannot cd back to $here:$!"; } else { warn "Cannot cd to $dir:$!"; } } if (@ARGV) { foreach my $dir(@ARGV) { add_dir($dir); } } else { push(@dir,$here); } add_dir($Config{'scriptdirexp'}) if ($opt{'s'}); if ($opt{'i'}) { foreach my $dir (@INC) { add_dir($dir); } } my @pods = find_pods(@dir); warn scalar(@pods)." pods found\n"; my $links = new Pod::Links Verbose => $opt{'v'}; foreach my $file (@pods) { $links->parse_from_file($file); } $links->check_links() if $opt{'c'}; if ($opt{'d'}) { require Data::Dumper; my $d = Data::Dumper->new([$links],['$links']); print $d->Dumpxs; }