在Makefile中,我发现我可以使用模式$(VAR:.x=.y)
来执行替换,但是我可以在同一个调用中执行两次替换吗?
具体来说,我希望修改一个由其他人编写的相当长的Makefile,其中包含编译器标志-Wa,-adhlns=$(<:.c=.lst)
。由于我使用一组编译器标志将.c和.cpp文件放在锤子下,我想将上述替换应用于这两个扩展。 (实际上,我的.cpp文件被覆盖了。)
我已经尝试了-Wa,-adhlns=$($(<:.c=.lst):.cpp=.lst)
,但这不起作用。我的目标是否可能?
答案 0 :(得分:0)
你不能这样做,但你可以这样做:
$(addsuffix .lst,$(basename $(VAR))