Joey Hess <[EMAIL PROTECTED]> writes: > Matej Vela wrote: >> Good point. This patch does everything in the first find: > > With the downside of running rm -rf on a much broader set of files. > Could be risky.
The first subexpression won't catch directories due to "-type f", and "rm -r" doesn't follow symlinks, so there shouldn't be any difference. Just to be safe, we can handle files and directories separately: --- debhelper-5.0.2.orig/dh_clean +++ debhelper-5.0.2/dh_clean @@ -87,20 +87,17 @@ # See if some files that would normally be deleted are excluded. my $find_options=''; if (defined($dh{EXCLUDE_FIND}) && $dh{EXCLUDE_FIND} ne '') { - $find_options="-a ! \\( $dh{EXCLUDE_FIND} \\)"; + $find_options="! \\( $dh{EXCLUDE_FIND} \\) -a"; } # Remove other temp files. - complex_doit("find . -type f -a \\ + complex_doit("find . $find_options \\( \\( -type f -a \\ \\( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \\ -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \\ -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \\ -o -name TAGS -o -name core -o \\( -path '*/.deps/*' -a -name '*.P' \\) \\ - \\) $find_options -exec rm -f {} \\;"); - - # Stupid autoconf cache directory. - doit("rm", "-rf", "autom4te.cache") - unless excludefile("autom4te.cache"); + \\) -exec rm -f {} \\; \\) -o \\ + \\( -type d -a -name autom4te.cache -prune -exec rm -rf {} \\; \\) \\)"); } doit('rm', '-rf', 'debian/tmp') if -x 'debian/tmp' && ! compat(1) && Thanks, Matej -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]