FreeBSD make does not work well when undefined variables are used in
nested expansions. When such an expansion appears in the prerequisites
of a target, FreeBSD make exits with a fatal error. For example:
A = $(var$(B))
foo : $(A)
% make
Error expanding embedded variable.
This causes the order-only hack to fail because FreeBSD make does not
define .FEATURES. The workaround is simple: add another variable which
is assigned the value of .FEATURES. That variable can be used in the
nested expansion to avoid the error.