[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: a syntax for multitarget rules
From: |
Steven Simpson |
Subject: |
Re: a syntax for multitarget rules |
Date: |
Thu, 13 Nov 2014 21:46:27 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 |
Hi,
On 11/11/14 05:44, Nicholas Clark wrote:
foo1.out report.txt foo2.out foo3.out non_pattern.bit: TASK1_OUTPUTS
fob1.out static_file.bmm fob2.out fob3.out project_file.ngc: TASK2_OUTPUTS
TASK1_OUTPUTS: source1_a.src source1_b.src
$(EXTERNAL_UTIL_1) source1_a.src source1_b.src
TASK2_OUTPUTS: source2_a.src source2_b.src
$(EXTERNAL_UTIL_2) source2_a.src source2_b.src
.GROUPTARGET: TASK1_OUTPUTS TASK2_OUTPUTS
Is it not sufficient to create an empty target?:
task1.done: source1_a.src source1_b.src
$(EXTERNAL_UTIL_1) source1_a.src source1_b.src
touch $@
task2.done: source2_a.src source2_b.src
$(EXTERNAL_UTIL_2) source2_a.src source2_b.src
touch $@
If you need any of the files created by task 2, you just name task2.done
as the prerequisite. Or have I misunderstood?...
In the example above, any dependencies of .GROUPTARGET would be a
target-group. Each target group could be treated sort of like a conditional
PHONY that would run if any of the group's members were out-of-date.
Are you saying that $(EXTERNAL_UTIL_1) won't necessarily update all of
TASK1_OUTPUTS (otherwise, they would all be out-of-date together)?
Cheers,
Steven
- [no subject], Nicholas Clark, 2014/11/11
- Re: a syntax for multitarget rules,
Steven Simpson <=