On 5/11/24 06:11, Dmitry Goncharov wrote:
On Wed, May 8, 2024 at 2:04 PM JZB <j...@z2zcorp.com> wrote:
... perhaps a command line option or a ".CIRCULARERROR:" rule
or some way to allow this to be turned on by those who need it?

There is currently no mechanism (option or otherwise) to fail on a
circular dependency.
On top of that, there are situations when make drops a circular
dependency silently.
See https://savannah.gnu.org/bugs/?60736.


regards, Dmitry



Thanks Dmitry, that provides some background.

To be honest, I don't quite understand Paul's logic, in that his approach to a global .EXTRA_PREREQS silence should be the exception, not the default. I can screw-up a global .EXTRA_PREREQS just as readily as I can a target-specific one, maybe even more so.

However, if there existed a rule, such as what I proposed, a ".CIRCULARERROR:", and it should be global, never target specific (should be easier to implement), because I either care about circular dependencies being errors or I don't (and that is project-wide, not per-target), and have that take precedence over the silent/not-silent-warning issue, it would actually be a compromise between the two sides on

> https://savannah.gnu.org/bugs/?60736.

In other words, current behaviour stays as Paul has it, but if the user wants circular dependencies to be errors, then Dmitry's algorithm has prioriry, and yes, that should include .EXTRA_PREREQS as well.


--jzb

Reply via email to