This Discourse thread brought up that a
list(FILTER <listvar> PREDICATE "args for if()") would be useful. We'd need to determine a variable name for the element to have in the evaluation of the predicate. Some
if() predicates do require expanded strings, so something like
list(FILTER potential_targets PREDICATE "TARGET item") would need some consideration. Maybe
PREDICATE "TARGET @item@" and do a
string(CONFIGURE) pass on it would suffice?