diff -r c7be4c65f97e -r 9edae8fe1416 common/tools/listdir.pl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/listdir.pl Tue Apr 14 17:44:14 2009 +0100
@@ -0,0 +1,38 @@
+#!perl -w
+use strict;
+
+my $dir = shift or die "Usage: $0
\n"; # provided dir to traverse
+my $filelist = [];
+
+# fwd declaration to prevent warning
+sub recursedir($$);
+
+# run recurse and print
+recursedir ($dir, $filelist);
+print $_, "\n" for(@$filelist);
+
+sub recursedir($$) {
+
+ my $dir = shift @_;
+ my $list = shift @_;
+
+ if(opendir(DIR, "$dir")) {
+ # list dir
+ for my $file(grep { !/^\./ } readdir DIR) {
+ if(-d "$dir\\$file") {
+ # traverse subdirs
+ recursedir("$dir\\$file", $list);
+ }
+ elsif(-f "$dir\\$file") {
+ # if file then swap (any present) fwd to bkslash and add to list
+ $dir =~s/\//\\/;
+ $file =~s/\//\\/;
+ push @$list, "$dir\\$file";
+ }
+ }
+ closedir DIR;
+ }
+ else {
+ warn "Cannot open the directory '$dir' $!\n";
+ }
+}