%% Boris Kolpackov <[EMAIL PROTECTED]> writes: bk> Yes it does. It's not clear to me whether it's good or bad, though. bk> I don't see how "result depends on how we got here" type of logic bk> is of any usefulness especially in the context of make (read "build bk> reproducibility").
bk> In this particular case, consider the following makefile: bk> all: foo fox bk> foo: bar .WAIT baz bk> fox: baz bk> Isn't it according to your logic that execution of command scripts bk> for both 'bar' and 'baz' can start simultaneously? One is via bk> all->foo->bar chain and the other is via all->fox->baz. Exactly correct. In fact I think I used this precise example in one of my earlier posts :-). I don't see a better-defined alternative though, that still provides the same behavior (a serialization that doesn't require every target to list every prerequisite). This doesn't bother me that much. After all, alternatives (such as you suggested) are no less error-prone and have even more potential problems: they rely on the user defining a dependency relationship for every single target and if you miss one you'll have the same issue. bk> That's why I also think that inheritance of bk> pattern/target-specific variables, the way it is implemented now, bk> is of limited use. Yes, it is of limited use. However, what are the alternatives? One is that a target inherits from all its potential parents: then we'd have to define an order of inheritance, and we'd have to implement it... which would be really extremely difficult I believe. Or, we could do away with inheritance altogether. This is something to consider, as it can potentially be a problem if both the target and its and parent use the same variables. On the other hand, the current behavior is what other versions of make do, and it is _marginally_ useful (mainly in the "debug" rule case). On the gripping hand, the kinds of things inheritance is used for could be done using other features of GNU make. -- ------------------------------------------------------------------------------- Paul D. Smith <[EMAIL PROTECTED]> Find some GNU make tips at: http://www.gnu.org http://make.paulandlesley.org "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make