Makefile 赋值 函数定义 等小知识点
1、赋值
==
到用的时候实际才去赋值
:=
立刻赋值
?=
未赋值才赋值
+=
2、多层变量
多层变量引用(各种复杂组合。。。)
a =b
b= c
c= d
d =1
$($($($(a)))) 最终等于1
3、overrride
overrride指示符修饰的变量如果在
命令行参数中设定会覆盖makefile中的变量初始化赋值
4、环境变量
make运行时会将系统环境变量载入
如果是用-e选项 系统环境变量会覆盖makefile中的同名变量,反之系统环境变量的值不会起作用
5、分支
条件分支
ifeq(a,b) 如果A=B然后执行
。
。
else 否则执行
。
。
endif
同样还有ifneq
6、局部变量
目标变量:作用域仅限于目标所引发的规则中去
模式变量:作用于一种特定模式域内