make的控制函数

来源: 作者:lucklily
  

 

 

 

make提供了两个控制make运行方式的函数。通常它们用在Makefile中,当make执行过程中检测到某些错误是为用户提供消息,并且可以控制make过程是否继续。

  1  $(error TEXT…)

  * 函数功能:产生致命错误,并提示“TEXT…”信息给用户,并退出make的执行。需要说明的是:“error”函数是在函数展开式(函数被调用时)才提示信息并结束make进程。因此如果函数出现在命令中或者一个递归的变量定义中时,在读取Makefile时不会出现错误。而只有包含“error”函数引用的命令被执行,或者定义中引用此函数的递归变量被展开时,才会提示致命信息“TEXT…”同时退出make。

  * 返回值:空

  * 函数说明:“error”函数一般不出现在直接展开式的变量定义中,否则在make读取Makefile时将会提示致命错误。

  假设我们的Makefile中包含以下两个片断;

  示例1:

  ifdef ERROR1

  $(error error is $(ERROR1))

  endif

  make读取解析Makefile时,如果只起那已经定义变量“EROOR1”,make将会提示致命错误信息“$(ERROR1)”并退出。

  示例2:

  ERR = $(error found an error!)

  .PHONY: err

  err: ; $(ERR)

  这个例子,在make读取Makefile时不会出现致命错误。只有目标“err”被作为一个目标被执行时才会出现。

  2  $(warning TEXT…)

  * 函数功能:函数“warning”类似于函数“error”,区别在于它不会导致致命错误(make不退出),而只是提示“TEXT…”,make的执行过程继续。

  * 返回值:空

  * 函数说明:用法和“error”类似,展开过程相同。


时间:2010-07-02 10:55 来源: 作者:lucklily 原文链接

好文,顶一下
(124)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量