gnumake .RECIPEPREFIX问题

Tsf*_*Tsf 5 gnu-make

我试图使用特殊变量.RECIPEPREFIX,以避免难以看到标签,但它似乎不起作用.我的简单测试makefile是:

    .RECIPEPREFIX = +

    all:
    + @echo OK

但我收到的消息是:

xxx:4: *** missing separator.  Stop.

Mar*_*inh 10

您使用的是哪个版本的gnu make?3.81?

.RECIPEPREFIX仅支持3.82.我已经在3.82上测试了你的样本并且它有效.

http://cvs.savannah.gnu.org/viewvc/make/NEWS?revision=2.109&root=make&view=markup

  • 新的特殊变量:.RECIPEPREFIX允许您将配方介绍字符从默认值(TAB)重置为其他字符.此变量值的第一个字符是新配方介绍字符.如果变量设置为空字符串,则再次使用TAB.它可以随意设置和重置; 食谱将在首次解析时使用值激活.要检测此功能,请检查$(.RECIPEPREFIX)的值.