bmake:gmake 的基本规则

问题描述 投票:0回答:1

我正在尝试用 bmake 来模拟这条规则

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

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

提前致谢!

linux makefile gnu-make bsdmake bmake
1个回答
0
投票

有点超出我的深度,但我认为有两件事需要改变:

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

来自 netbsd wiki

BSD make(又名 bmake)使用传统的后缀规则(.c.o: ...)而不是像 gmake 的模式规则(%.c:%.o: ...),后者更通用和灵活。

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

© www.soinside.com 2019 - 2024. All rights reserved.