Index: pod.t
===================================================================
--- pod.t	(revision 11560)
+++ pod.t	(working copy)
@@ -5,8 +5,9 @@
 use strict;
 use warnings;
 use lib qw( . lib ../lib ../../lib );
-use vars qw( %docs $n_docs );
+use vars qw(@docs);
 use Parrot::Config;
+use ExtUtils::Manifest qw(maniread);
 
 BEGIN {
     eval "use Pod::Find";
@@ -14,18 +15,28 @@
         print "1..1\nok 1 # skip Pod::Find not installed\n";
         exit;
     }
+    eval "use Test::Pod";
+    if ($@) {
+        print "1..1\nok 1 # skip Test::Pod not installed\n";
+        exit;
+    }
+
     # XXX this should really be using src_dir insetad of build_dir but it
     # doesn't exist (yet)
-    %docs = Pod::Find::pod_find(
-        { -verbose => 0, -inc => 0 },
-        $PConfig{build_dir} # search path(s)
-    );
+    my $build_dir = $PConfig{build_dir};
+    my $manifest     = maniread("$build_dir/MANIFEST");
+    my $manifest_gen = maniread("$build_dir/MANIFEST.generated");
 
-    $n_docs = scalar keys %docs;
+    foreach my $file (keys(%$manifest), keys(%$manifest_gen)) {
+        $file = "$build_dir/$file";
+        # skip missing MANIFEST.generated files
+        next unless -e $file;
+        push @docs, $file if Pod::Find::contains_pod($file, 0);
+    }
 }
 
 
-use Test::More tests => $n_docs;
+use Test::More tests => scalar @docs;
 
 
 =head1 NAME
@@ -42,9 +53,4 @@
 
 =cut
 
-
-eval "use Test::Pod 0.95";
-SKIP: {
-    skip "Test::Pod 0.95 not installed.", $n_docs if $@;
-    Test::Pod::pod_file_ok( $_ ) foreach keys %docs;
-}
+Test::Pod::pod_file_ok( $_ ) foreach @docs;
