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

 

posted @ 2024-03-04 13:41  HenryLiuY  阅读(2)  评论(0编辑  收藏  举报