Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > Don't show the very verbose $(FIND_SOURCE_FILES) command on every > "make TAGS" invocation. Let's also use the "cmd >x+ && mv x+ x" > pattern here so we don't momentarily clobber the file. We do not "redirect" ctags and etags output into x+. Let's use "generate into temporary and rename to the final after seeing the command that generated the output finished successfully" pattern. Please also correct the explanation of why it is a good idea to use the pattern in this case. It is not about avoiding momentarily clobbering the output. It is to avoid leaving an incorrect output generated by a failed command in the file with the filename that consumers expect. Thanks for making our Makefile a bit less noisy. Anybody who makes "clean" and its friends quiet will get a gold star ;-) > Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> > --- > Makefile | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/Makefile b/Makefile > index 55c8035fa80..f317af1b602 100644 > --- a/Makefile > +++ b/Makefile > @@ -2690,12 +2690,15 @@ FIND_SOURCE_FILES = ( \ > ) > > $(ETAGS_TARGET): FORCE > - $(RM) $(ETAGS_TARGET) > - $(FIND_SOURCE_FILES) | xargs etags -a -o $(ETAGS_TARGET) > + echo $(ALL_SOURCE_FILES) > + $(QUIET_GEN)$(RM) "$(ETAGS_TARGET)+" && \ > + $(FIND_SOURCE_FILES) | xargs etags -a -o "$(ETAGS_TARGET)+" && \ > + mv "$(ETAGS_TARGET)+" "$(ETAGS_TARGET)" > > tags: FORCE > - $(RM) tags > - $(FIND_SOURCE_FILES) | xargs ctags -a > + $(QUIET_GEN)$(RM) tags+ && \ > + $(FIND_SOURCE_FILES) | xargs ctags -a -o tags+ && \ > + mv tags+ tags > > cscope: > $(RM) cscope*