Echo'$(VAR)'到一个文件

时间:2015-08-12 17:24:59

标签: makefile echo

我对Makefile中的一行有以下问题:

echo 'include $(BASE)/Makefile.base' > file

如果我直接将它写入控制台,它会在文件中打印'include $(BASE)/Makefile.base',但是当在Makefile中使用它时,$(BASE)总是被替换为空白而我想要它字面上写入文件。我试着写几种方法,但似乎找不到正确的方法......

1 个答案:

答案 0 :(得分:4)

echo 'include $$(BASE)/Makefile.base' > file

名为$的宏(使用$$调用)扩展为$。您经常需要在$$成为shell脚本的细分中使用makefile,因为make扩展了$L$(NAME)${NAME}(其中L是单个字母)自动(如果宏未设置为其他任何内容,则为空字符串)。