【发布时间】:2026-01-15 05:10:02
【问题描述】:
假设我有以下 Makefile
N := 1
.PHONY : target_$(N)
target_$(N) :
@echo $(N)
N := 2
.PHONY : target_$(N)
target_$(N) :
@echo $(N)
结果是:
$ make target_1
2
$ make target_2
2
有什么方法可以实现我想要的吗?我的想法是使用变量作为参数复制粘贴配方。该变量必须在目标名称和该目标的配方中展开,也许它也可能出现在依赖项中,但目前还不行。问题是配方扩展似乎发生在配方执行时,但我期望并且需要它与目标扩展同时发生。
【问题讨论】:
标签: variables makefile gnu-make