Makefile
文章平均质量分 56
如小丧
这个作者很懒,什么都没留下…
展开
-
GNU Make 常用内置函数的总结
一些自动变量的意义:光看文字说明是理解不了这些变量具体到底代表什么的(他们在具体环境中有不同的值),至少对初学者是这样的,你可以知道有这些变量,然后到具体写 Makefile 的时候可以 echo 出来,看他们具体是什么,然后充分、巧妙利用以得到你想要的效果,在前面的专题(二)和专题(三)中都有利用这些变量去动态获得想要的目标,可供参考GNU Make 常用转载 2014-10-25 10:47:58 · 1152 阅读 · 0 评论 -
Makefile内置变量,递归式变量,直接展开式变量,条件赋值,追加赋值
将shell命令的输出赋值给变量:VALUE = $(shell 命令)Makefile中给变量赋值:= 是递归展开式变量 value1 = 5 value2 = $(value1) value1 = 6 最终$(value2)就变成了6:= 是直接转载 2014-10-25 16:33:31 · 1952 阅读 · 0 评论 -
关于ifdef
ifdef 如果变量的值非空,那到表达式为真。否则,表达式为假。当然,同样可以是一个函数的返回值。注意,ifdef只是测试一个变量是否有值,其并不会把变量扩展到当前位置。还是来看两个例子:示例一:bar =foo = $(bar)ifdef foofrobozz = yeselsefrobozz = noendif示例二:foo =ifdef foo转载 2014-10-25 12:20:05 · 533 阅读 · 0 评论 -
Makefile中的wildcard用法
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符转载 2014-10-25 16:36:48 · 480 阅读 · 0 评论 -
override 指示符
通常在执行make时,如果通过命令行定义了一个变量,那么它将替代在Makefile中出现的同名变量的定义。就是说,对于一个在Makefile中使用常规方式(使用“=”、“:=”或者“define”)定义的变量,我们可以在执行make时通过命令行方式重新指定这个变量的值,命令行指定的值将替代出现在Makefile中此变量的值。如果不希望命令行指定的变量值替代在Makefile中的变量定义,那么我们需转载 2014-10-25 11:38:49 · 621 阅读 · 0 评论 -
Makefile函数error和warning浅析
Ø 函数功能:产生致命错误,并提示“TEXT…”信息给用户,并退出make的执行。需要说明的是:“error”函数是在函数展开式(函数被调用时)才提示信息并结束make进程。因此如果函数出现在命令中或者一个递归的变量定义中时,在读取Makefile时不会出现错误。而只有包含“error”函数引用的命令被执行,或者定义中引用此函数的递归变量被展开时,才会提示致命信息“TEXT…”同时退原创 2014-10-25 16:45:42 · 5875 阅读 · 0 评论 -
Makefile经典教程(掌握这些足够)
makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写make转载 2014-10-24 10:30:31 · 443 阅读 · 0 评论