bmake:gmake 的基本规则

bmake: Basic rule from gmake

我正在尝试使用 bmake 来模拟此规则

%.o: %.c
    echo $< $@

这在 GNU make 中有效,但我很难用 BSD make 复制它。

提前致谢!

有点超出我的理解范围,但我认为有两点需要改变:

  1. 使用后缀规则代替(不受支持,GNU Make 功能)模式规则。
  2. 为自动变量使用 bmake 名称(bmake 支持 GNU Make 自动变量,但不推荐使用)
.SUFFIXES: .o
.c.o:
    echo ${.TARGET} ${.IMPSRC}

From netbsd wiki

BSD make (aka bmake) uses traditional suffix rules (.c.o: ...) instead of pattern rules like gmake's (%.c:%.o: ...) which are more general and flexible.

另见 https://linux.die.net/man/1/bmake