BSD make 的 Catchall 目标

Catchall target with BSD's make

在 BSD Makefile 中,是否可以定义一个包罗万象的目标?我正在寻找 GNU 等价物:

%:
    @echo caught target $@

我希望预处理器拥有足够的魔力来动态定义目标,但不知道如何做到这一点。所有局部变量,例如 .TARGET,仅在目标 内有效,但在全局范围内无效。

我不知道 BSD make 是否合格,但是每个 POSIX 兼容的 make 版本都必须支持 .DEFAULT: 特殊目标,即使在 GNU make 中,也没有开销使用像 %:

这样的包罗万象的模式
.DEFAULT:
        @echo caught target $@