GNU make manual 翻译(三十六)

继续翻译

     You cannot use comments within variable references or function  
     calls: any instance of `#' will be treated literally (rather than 
     as the start of a comment) inside a variable reference or function
     call.                        
                        
     Comments within a recipe are passed to the shell, just as with any 
     other recipe text.  The shell decides how to interpret it: whether 
     or not this is a comment is up to the shell.                        
                        
     Within a `define' directive, comments are not ignored during the
     definition of the variable, but rather kept intact in the value of 
     the variable.  When the variable is expanded they will either be  
     treated as `make' comments or as recipe text, depending on the  
     context in which the variable is evaluated.                        

你不能在 变量或者函数调用中使用 注释,此时任何 #都会被当成有效符号而是注释起始处来处理。

片段中的注释将被和片段中的其他部分一起传递到shell,shell 将决定如何认识此注释:它是否被识别为注释取决于此shell。

在一个 define 指令中,当变量被定义,注释并不被忽略,被原封不动地保留。而当变量被展开的时候,它或者被识别为 make的注释,或者被认为是 片段文本的一部分;这取决于具体的变量定义的状况。

后文待续

原文地址:https://www.cnblogs.com/gaojian/p/2684320.html