-if (opendir(DIR, "$main::root/perl")) {
- my @d = readdir(DIR);
- closedir(DIR);
- foreach my $fn (@d) {
- if ($fn =~ /^cluster\.pl$/ || $fn =~ /\.pm$/) {
- my $f = new IO::File "$main::root/perl/$fn" or next;
- while (<$f>) {
- if (/^#\s+\$Id:\s+[\w\._]+,v\s+(\d+\.\d+)/ ) {
- $build += $1;
- last;
- }
- }
- $f->close;
+my @fn;
+open(CL, "$main::root/perl/cluster.pl") or die "Cannot open cluster.pl $!";
+while (<CL>) {
+ next unless /^use\s+([\w:_]+)/;
+ push @fn, $1;
+}
+close CL;
+foreach my $fn (@fn) {
+ open(CL, "$main::root/perl/${fn}.pm") or next;
+ while (<CL>) {
+ if (/^#\s+\$Id:\s+[\w\._]+,v\s+(\d+\.\d+)/ ) {
+ $build += $1;
+ last;