这是我的 makefile 的一部分:
LISTEINC = $(DEST)/file.inc $(DEST)/otherfile.inc $(DEST)/anotherfile.inc
compteur = 1
$(DEST)/file: $(LISTEINC)
#action
$(DEST)/%.inc: $(DEST)/%.jpg
./script $< $compteur $(DEST) > $@
如何将变量 compteur 设置为 1(文件)、2(其他文件)、3(其他文件)?
$((compteur++)) 可以在 bash 脚本中工作,但在这里我真的不知道等价物是什么。我尝试了 $$ () ++ +1 等的多种组合...没有任何效果。
有人可以帮我吗?
可以用以下方法完成eval
:
$(eval compteur=$(shell echo $$(($(compteur)+1))))
从手册中:
eval 函数非常特别:它允许您定义新的
makefile 结构不是恒定的;这是以下结果
评估其他变量和函数。 eval 的论证
函数被展开,然后该展开的结果被解析为
生成文件语法。扩展的结果可以定义新的 make 变量,
目标、隐含或显性规则等
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)