任何 Makefile 都应该简单并理性地行事。 如果您能让其中的条目更为简单和易读, 一定要这样做。 例如, 使用 make 提供的 .if 结构, 而不要使用 shell 的 if, 只要能重定义 EXTRACT* 就不要重载 do-extract, 尽量使用 GNU_CONFIGURE 而不是 CONFIGURE_ARGS += --prefix=${PREFIX}。
如果您在尝试做什么事情的时候发现不得不写大量的代码, 请回过头来复审一下 bsd.port.mk, 看看是否有您正打算做的事情的现成实现。 尽管读起来可能很费劲, 但有很多貌似很难的问题, 在 bsd.port.mk 中都给出了十分简便的解决方案。