# This is file Test1.pm package Test1; # End of File # This is file test2.pm package Test2; # End of File # This is file Test3.pm package Test; # End of File #### foreach my $name (qw(Test1 test2 Test3)) { unless(file_defines_package_of_same_name($name)) { print "$name\n"; } } #### test2 Test3 #### # NOT TESTED!!!! sub file_defines_package_of_same_name { my $name=shift; eval { require $name; { no strict; $name->import(); } # I guess I don't need this, do I? defined(eval 'scalar(keys(%'.$name.'::))'); } }