你如何更改makefile变量文件扩展名?

时间:2012-08-09 17:40:25

标签: variables makefile file-extension

例如,我有一个包含依赖项列表的变量

BOARDS:=lance.mcm light.mcm sac.mcm

我需要另一个名为NET的变量

NET:=lance.net light.net sac.net

应设置为当我更改BOARDS变量时,NET也应该更改。 例如,如果我在BOARDS变量中添加一个新的zor.mcm,它应该自动将zor.net添加到NET变量中。

2 个答案:

答案 0 :(得分:24)

我找到的最佳解决方案是使用以下语法:

NET:=$(BOARDS:.mcm=.net)

这将查看BOARDS并将.mcm更改为.net

答案 1 :(得分:9)

作为替代方案:

BOARDS:=lance.mcm light.mcm sac.mcm
NET:= $(addsuffix .net, $(basename $(BOARDS)))

如果文件路径名匹配模式

,这将保留文件路径名中的内容