我${_+_}
在FreeBSD Makefile中找到了。
${_+_}
BSD Makefiles中的含义是什么?
${_+_}
指一个变量。它在由 make 进程读取的share/mk/sys.mk中定义。所以用户 Zack 在他的评论中指出了正确的方向;在某些情况下,此变量会扩展为一个+
符号,具体取决于为 make 提供的标志:
.if !empty(.MAKEFLAGS:M-n) && ${.MAKEFLAGS:M-n} == "-n"
_+_ ?=
.else
_+_ ?= +
.endif
可以在此提交的评论中找到这样做的理由,以及在此处引入符号的地方:
Make make recurse into sub-directories and sub-makes when given
two -n flags. If only one -n flag is given the old behaviour
is retained (POLA).