Jean-Noël AVILA <[email protected]> writes:
>> The idea is to use $(filter PATTERN..., TEXT) that removes words in
>> TEXT that do not match any of the words in PATTERN, and for normal
>> build, MAN_FILTER is set identical to TMP_MAN_TXT (which is the
>> original MAN_TXT), so there is no filtering happen, but in a build
>> that does tweak MAN_FILTER, MAN_TXT can become a subset of the
>> original MAN_TXT.
>>
>> Am I on the right track?
>>
>
> Yes that's exactly the purpose of this trick. In fact, $(filter) in this
> configuration is equivalent to an intersection of lists, so the order does
> not
> change the end result.
That is only true if MAN_FILTER is literally a list of "I want
exactly these things", without any pattern. Once a future caller
wants to say "We now have translations for pages from [a-m]*", it
becomes apparent again that the order is wrong.
And if the caller is supposed to have a literal list of pages, not a
pattern, then it may be sufficient to update our Makefile so that
the caller can override the literal list of pages we (incrementally)
compute with its own list without any filtering.
> Ah, I see. The filter from MAN{1,5,7}_TXT would ripple the same way as
> MAN_TXT,
> just one level upstream. The filtering at this level would no longer be
> needed.
Yup. I see you sent v2; let me read it.
Thanks.