Makefile 一分钟搞定
makefile 赋值:
I. = 最后一次赋值起作用,makefile 最终会被展开,比如下面的例子(正常不会这么写,一般都会按顺序,便于阅读)
varTest1= test1
varTest2 = $(varTest1) test2
varTest1 = test3
====> varTest2 = test3 test2
II. := 根据当前的值,可以说是直接赋值
varTest1:= test1
varTest2 := $(varTest1) test2
varTest1 := test3 //此次赋值不影响varTest2
====> varTest2 = test1 test2
III. ?= 意思非常明确,如果变量之前未定义,则为当前的赋值,如果有,则无效
varTest1 ?= test1
====> varTest1 之前未被定义,则最终 varTest1 = test1
varTest1 ?= test
varTest1 ?= test1 //此次无效
====> varTest1之前有被定义,则最终varTest1 = test