Jonathan Baccash <[EMAIL PROTECTED]> writes:
> Some commands create more than one result, and make (3.81beta3)
> behaves funny when I try to account for this. For example:
>
> #-------------
> a: b
> touch a
>
> b: c
>
> c: d
> touch c
> touch b
> #-------------
There is nothing funny about this. The only way make can know what
you are updating in your command script is if you explicitly told
it so, e.g.:
c b: d
touch $@
If you really need to update several targets at once (i.e., they cannot
be rewritten as separate rules) then you will need to use implicit rules
for this.
> Now, if file d exists, this works fine the first time. But then I
> touch d and get weird results:
>
> $ touch d
> $ make
> touch c
> touch b
> $ make
> touch a
> $ make
> make: `a' is up to date.
As I said, there is nothing weird about this: you hid information from
make and as a result got an incomplete build.
hth,
-boris
_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make