1. makefile 调用 shell 标准调用就是 contents :=$(shell cat foo). 当然这个是每句话会启动一个shell进程进行解析。
2. all2:
echo $(foo1)
shell 脚本只有放在这个位置才有效
3. 如果用到shell变量则用$$path. 因为$path是makefile的变量。
标准用fa和注意事项, 其实也蛮简单的,记下来吧
第二部分 := 和= 的区别
foo = $(bar)
bar = $(ugh)
ugh = Hub?
all1:;echo $(foo)
输出 Hub?
foo2 = $(bar2)
bar2 = $(ugh2)
ugh2 = Hub?
all3:;echo $(foo2)
输出 空
ugh1 := Hub?
bar1 := $(ugh1)
foo1 := $(bar1)
all2:
echo $(foo1)
输出 Hub?
知道区别了吧, = 是递归赋值,:=是简单赋值