Re: [PATCH] Makefile: add QUIET_GEN to "tags" and "TAGS" targets
Junio C Hamano <gitster@pobox.com> writes:
Show 37 quoted lines
> Ævar Arnfjörð Bjarmason <avarab@gmail.com> 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@gmail.com>
>> ---
>> 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)
This echo I presume is a debugging aid to be removed?
Show 13 quoted lines
>> + $(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*