mbox series

[0/3] Makefile: "make tags" fixes & cleanup

Message ID cover-0.3-00000000000-20210622T141844Z-avarab@gmail.com (mailing list archive)
Headers show
Series Makefile: "make tags" fixes & cleanup | expand

Message

Ævar Arnfjörð Bjarmason June 22, 2021, 2:21 p.m. UTC
A small series to fix the various "tags" targets, i.e. "make tags TAGS
cscope". We'll now properly detect their dependencies, so we don't
needlessly run them every time. I have this as part of my standard
"make git" command, so doing nothing when we have nothing to do is
preferrable, especially when my editor will eagerly reload the TAGS
file every time it changes.

As noted in 3/3 this is better on top of my just-submitted
.DELETE_ON_ERROR change[1], but will also work independently of that
patch/series.

1. https://lore.kernel.org/git/patch-1.1-9420448e74f-20210622T141100Z-avarab@gmail.com/

Ævar Arnfjörð Bjarmason (3):
  Makefile: move ".PHONY: cscope" near its target
  Makefile: fix "cscope" target to refer to cscope.out
  Makefile: don't use "FORCE" for tags targets

 .gitignore |  2 +-
 Makefile   | 31 +++++++++++++++++--------------
 2 files changed, 18 insertions(+), 15 deletions(-)

Comments

Taylor Blau June 22, 2021, 3:16 p.m. UTC | #1
On Tue, Jun 22, 2021 at 04:21:24PM +0200, Ævar Arnfjörð Bjarmason wrote:
> A small series to fix the various "tags" targets, i.e. "make tags TAGS
> cscope". We'll now properly detect their dependencies, so we don't
> needlessly run them every time. I have this as part of my standard
> "make git" command, so doing nothing when we have nothing to do is
> preferrable, especially when my editor will eagerly reload the TAGS
> file every time it changes.

:-). Very nice.

> As noted in 3/3 this is better on top of my just-submitted
> .DELETE_ON_ERROR change[1], but will also work independently of that
> patch/series.

I took a look at this and [1], and I agree that 3/3 is probably better
applied after [1], since it doesn't leave any gap between the existing
behavior of ">$@+ && mv $@+ $@" and ">$@" with .DELETE_ON_ERROR.

But I don't feel strongly about the order in which the two are applied.
Your 3/3 without [1] isn't wrong, it just leaves us the opportunity to
permanently leave around a broken tags file permanently, whereas having
[1] applied ahead of time means that the broken tags file is only
visible racily.

I reviewed these patches carefully, and they look good to me. I'm
delighted that `make tags` is no longer PHONY.

    Reviewed-by: Taylor Blau <me@ttaylorr.com>

Thanks,
Taylor
Junio C Hamano June 29, 2021, 6:29 a.m. UTC | #2
Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:

> A small series to fix the various "tags" targets, i.e. "make tags TAGS
> cscope". We'll now properly detect their dependencies, so we don't
> needlessly run them every time. I have this as part of my standard
> "make git" command, so doing nothing when we have nothing to do is
> preferrable, especially when my editor will eagerly reload the TAGS
> file every time it changes.
>
> As noted in 3/3 this is better on top of my just-submitted
> .DELETE_ON_ERROR change[1], but will also work independently of that
> patch/series.
>
> 1. https://lore.kernel.org/git/patch-1.1-9420448e74f-20210622T141100Z-avarab@gmail.com/
>
> Ævar Arnfjörð Bjarmason (3):
>   Makefile: move ".PHONY: cscope" near its target
>   Makefile: fix "cscope" target to refer to cscope.out
>   Makefile: don't use "FORCE" for tags targets
>
>  .gitignore |  2 +-
>  Makefile   | 31 +++++++++++++++++--------------
>  2 files changed, 18 insertions(+), 15 deletions(-)

Looks mostly like good patches, with concrete suggestions for
improvements given.  Please do not leave another loose end that
should be easy to tie untied and float away to some other topics.

Thanks.
Ævar Arnfjörð Bjarmason June 29, 2021, 12:07 p.m. UTC | #3
On Mon, Jun 28 2021, Junio C Hamano wrote:

> Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:
>
>> A small series to fix the various "tags" targets, i.e. "make tags TAGS
>> cscope". We'll now properly detect their dependencies, so we don't
>> needlessly run them every time. I have this as part of my standard
>> "make git" command, so doing nothing when we have nothing to do is
>> preferrable, especially when my editor will eagerly reload the TAGS
>> file every time it changes.
>>
>> As noted in 3/3 this is better on top of my just-submitted
>> .DELETE_ON_ERROR change[1], but will also work independently of that
>> patch/series.
>>
>> 1. https://lore.kernel.org/git/patch-1.1-9420448e74f-20210622T141100Z-avarab@gmail.com/
>>
>> Ævar Arnfjörð Bjarmason (3):
>>   Makefile: move ".PHONY: cscope" near its target
>>   Makefile: fix "cscope" target to refer to cscope.out
>>   Makefile: don't use "FORCE" for tags targets
>>
>>  .gitignore |  2 +-
>>  Makefile   | 31 +++++++++++++++++--------------
>>  2 files changed, 18 insertions(+), 15 deletions(-)
>
> Looks mostly like good patches, with concrete suggestions for
> improvements given.  Please do not leave another loose end that
> should be easy to tie untied and float away to some other topics.

In the v2 re-roll of both I detached these two topics from each other,
as it turns out it wasn't needed to begin with. Sorry about that.