# these files are considered unimportant and won't be included in the archive.
@junk_file_list = ("*~", "*.$$$", "3rdparty", "*.aps", "*.bak", "binaries",
"*.bsc", "*.cgl", "*.csm", "CVS", "Debug", "*.dll", "*.err", "*.exe",
- "generated_*", "*.glb", "inprogress", "ipch", "*.llm", "*.log", "*.lnk",
+ "generated_*", "*.git", "*.glb", "inprogress", "ipch", "*.llm",
+ "*.log", "*.lnk",
"makefile.fw*", "*.mbt", "*.mrt", "*.ncb", "*.o", "obj", "*.obj",
"octalforty.Wizardby", "*.obr", "*.opt", "packages",
"*.pch", "*.pdb", "*.plg", "*.r$p", "*.rcs", "Release",
"*.sdf", "*.suo", ".svn", "*.sym", "*.td", "*.tds", "*.tdw", "*.tlb",
"*.trw", "*.tmp", "*.tr", "*.user", "*_version.h", "*_version.rc",
"*.vspscc", "waste");
-###, "*.wav"
#print "junk list=@junk_file_list\n";
@excludes = ();
for (local($i) = 0; $i < scalar(@junk_file_list); $i++) {
chdir($root);
local($outcome) = 0;
- my @lines = qx( $find_tool $subdir @extra_flags "-type" "f" );
+ my @lines = qx( $find_tool "$subdir" @extra_flags "-type" "f" );
# if ( ($! != 0) || ($? != 0) ) {
# die("failure to find files in $subdir");
# }
}
}
-# grab up all the files in a directory (first parm) that are named matching
-# a simple text pattern (second parm).
+# grab up all the files in a directory (second parm) that are named matching
+# a simple text pattern (third parm). if there is a fourth parameter, it is
+# used as an extra directory component after the main directory.
sub snarf_by_pattern {
- local($dir, $pattern) = @_;
+ local($prefix, $dir, $pattern, $extra_component) = @_;
# print "dir = $dir and patt = $pattern\n";
+ $extra_piece = "";
+ $dir_for_hierarchy = ".";
+ if (length($extra_component)) {
+ $extra_piece = "/" . $extra_component;
+ $dir_for_hierarchy = $extra_component;
+ }
- @dir_contents = &glob_list("$dir/*$pattern*");
+ @dir_contents = &glob_list("$dir$extra_piece/*$pattern*");
# print "dir contents: @dir_contents\n";
if (!scalar(@dir_contents)) {
- print "no $pattern directores were backed up in $dir.\n";
+ print "no '$pattern' directores were backed up in $dir.\n";
}
+
foreach $item (@dir_contents) {
if ( ($item =~ /$pattern.*snarf/) || ($item =~ /$pattern.*tar/) ) { next; }
if ( ! -d "$item" ) { next; }
- &backup_hierarchy($base, $number, $item, ".");
+ &backup_hierarchy($prefix, $number, $dir, "$dir_for_hierarchy" . "/" . &basename($item));
}
}
if ($outcome) { die("failure to undo archive"); }
local($outcome) =
- 0xff & system "bash", "$SHELLDIR/files/normal_perm.sh", ".";
+ 0xff & system "bash", "$FEISTY_MEOW_SCRIPTS/files/normal_perm.sh", ".";
if ($outcome) { die("failure to normalize permissions"); }
# remove any links that might have crept in; these can cause mischief.