GNU bug report logs -
#10697
subdir-objects "make clean" invokes one rm for each .o file
Previous Next
Reported by: Jim Meyering <jim <at> meyering.net>
Date: Thu, 2 Feb 2012 16:08:02 UTC
Severity: minor
Tags: patch
Merged with 8031
Done: Stefano Lattarini <stefano.lattarini <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#10697: subdir-objects "make clean" invokes one rm for each .o file
which was filed against the automake package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 10697 <at> debbugs.gnu.org.
--
10697: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10697
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
On 06/10/2012 02:17 PM, Stefano Lattarini wrote:
> Reference: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10697>
>
> See the attached patch; I will push it by tomorrow if there is no objection
> (and if anyone would like to give it a try on a real project, that would be
> much appreciated).
>
Pushed now (to maint). I'm thus closing this bug report.
Regards,
Stefano
[Message part 3 (message/rfc822, inline)]
In cppi (http://git.savannah.gnu.org/cgit/cppi.git), I am now using non-
recursive make via subdir-objects, modeled after the way bison does it.
I see that "make clean" is inefficient: one "rm -f" per .o file:
rm -fr *.o
rm -f *.o
rm -f lib/calloc.o
rm -f lib/close-stream.o
rm -f lib/closeout.o
rm -f lib/error.o
rm -f lib/exitfail.o
rm -f lib/fpending.o
rm -f lib/getopt.o
rm -f lib/getopt1.o
rm -f lib/localcharset.o
rm -f lib/malloc.o
rm -f lib/mbrtowc.o
rm -f lib/mbsinit.o
rm -f lib/msvc-inval.o
rm -f lib/msvc-nothrow.o
rm -f lib/obstack.o
rm -f lib/progname.o
rm -f lib/quote.o
rm -f lib/quotearg.o
rm -f lib/realloc.o
rm -f lib/stpcpy.o
rm -f lib/strerror-override.o
rm -f lib/strerror.o
rm -f lib/version-etc-fsf.o
rm -f lib/version-etc.o
rm -f lib/xalloc-die.o
rm -f lib/xmalloc.o
rm -f lib/xstrtol-error.o
rm -f lib/xstrtol.o
rm -f lib/xstrtoul.o
rm -f src/cppi.o
cppi has so few .o files that it's not a problem, but with hundreds
(coreutils has over 600), it could be noticeable.
Contrast that with its removal of *.o above and of all tests/*.log files
using just one rm invocation each, I think it must simply be an oversight.
Seems like it'd be worth fixing some day.
This bug report was last modified 12 years and 332 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.