automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 76-tags-in-tags-am.patch


From: Tom Tromey
Subject: Re: 76-tags-in-tags-am.patch
Date: 07 Apr 2001 19:47:07 -0600

>>>>> "Akim" == Akim Demaille <address@hidden> writes:

Akim> This patch introduces one semantical difference: tags-recursive
Akim> is bound to tags, not TAGS as was before.  I think (i) it is
Akim> cleaner, and (ii) anyway it seems to me that TAGS itself
Akim> performs its own recursion:

The "recursion" in TAGS is different.  tags-recursive should be
running `make tags' in each subdir.  In TAGS we look for a TAGS file
in each subdir and if it exists we include it in the TAGS file we are
creating.

The thing is that `tags' is really a convenience for people who don't
like upper case.  It is a historical thing and not mandated.  TAGS is
the name of the mandated target.

So I think `make TAGS' has to do all the recursion.
Maybe we currently get this wrong, since the recursive invocation
invokes `make tags' and not `make TAGS'.

Akim> Another question is why don't we use the regular -am, -recursive
Akim> mechanism?  Given that we always output a `tags' and `TAGS'
Akim> target, it should be equivalent and much simpler: just
Akim> RECURSIVE_TARGATS += tags-recursive.

Because the recursive tags invocation should never fail.  Maybe it is
ok if a tags failure in a subdir propagates upwards, since it means
there's a bug somewhere.  I'm ok with that change if you want to make
it.

Akim>   * automake.in (%dependencies): Add 'tags'.
Akim>   (&handle_tags): Move the handling of subdirs and of directories
Akim>   where a dummy TAGS is needed into...
Akim>   * tags.am: here.
Akim>   Hook `tags-recursive' to `tags', not `TAGS'.
Akim>   Condition the main targets to `%?TAGS%'.

I think this is only partly ok, per above notes.

Tom



reply via email to

[Prev in Thread] Current Thread [Next in Thread]