On 2007-11-27, Stepan Kasal <[EMAIL PROTECTED]> wrote:
> On Tue, Nov 27, 2007 at 12:30:31AM +0000, Olly Betts wrote:
>> data.c data.h::: data.foo
>> foo data.foo
>
> But this looks like too much magic for a feature which is not used
> that much.
My experience is that multi-output rules often aren't protected at all,
and parallel make is unreliable on such projects. This is becoming much
more of an issue, as multicore boxes are now mainstream.
I think is this feature existed, it would find a significant amount of
use.
Perhaps this isn't the right notation for it though - it was mostly just
an possible idea to help illustrate my suggestion.
> Moreover, the extended syntax should rather describe the pair of
> rules .foo.c: an .foo.h: because there may be more *.foo.
The example above is one from the automake manual, but often the outputs
don't have the same basename, and may even have the same extension - for
example, a script generating several .h files with different basenames.
I don't see how you'd express that using a group of implicit rules.
In fact, none of the real examples I have to hand fit into the mould of
a collection of implicit rules with a common basename.
Cheers,
Olly