【发布时间】:2023-03-05 04:44:01
【问题描述】:
我正在尝试创建一个带有通配符目标的 makefile,但通配符应该与变量匹配。
所以我有一个像这样的makefile:
A_OUT := bin/a
B_OUT := bin/b
# This does not work
$(%_OUT):
@echo $@
输出:
$ make bin/a
make: *** No rule to make target 'bin/a'. Stop.
我不能使用bin/%:,因为变量可能指向另一个目录。
在 GNU make 中有没有办法做到这一点?
【问题讨论】:
-
为什么不能使用
bin/%?作为目录的目标对此有何改变?你打算在你提议的 sn-p 使用bin/%没有做到的目标中做什么? -
@EtanReisner 我不能这样称呼它:
make A_OUT=anotherdir/a anotherdir/a
标签: makefile wildcard gnu-make