[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Manual: Multiple outputs
From: |
Frank Heckenbach |
Subject: |
Manual: Multiple outputs |
Date: |
Mon, 03 May 2021 12:55:33 +0200 |
The manual
(https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html)
describes various ways to handle commands with multiple outputs.
One intermediate solution that's said to work except with phony
dependencies doesn't actually seem to work:
% cat Makefile
all: data.c data.h
data.c data.h: data.foo
touch data.c data.h
data.h: data.c
% rm -f data.[ch]; touch data.foo; make -j
touch data.c data.h
touch data.c data.h
It says "[...] therefore a parallel make will have to serialize the
builds of data.c and data.h, and will detect that the second is no
longer needed once the first is over." This doesn't seem to be so.
Am I missing something?
More importantly (at least to me), the final paragraph of the page
should really be first. After reading about increasingly more
complex solutions to handle various corner cases, I found it *much*
easier to just turn my rule into a pseudo-pattern rule a la:
%ata.c %ata.h: %ata.foo
Regards,
Frank
- Manual: Multiple outputs,
Frank Heckenbach <=