a = foo
$(a):x.h
gcc -o $(a) foo.c
等同於
foo:x.h
gcc -o foo foo.c- :=語法
make 會將整個 Makefile 展開後,再決定變數的值。
x = foo
y = $(x) bar
x = xyz
# y 的值為 xyz bar
:= 表示變數的值決定於它在 Makefile 中的位置。
x := foo
y := $(x) bar
x := xyz
# y 的值為 foo bar - ?=語法
若變數未定義,則替它指定新的值。否則,採用原有的值。
x = foo
x ?= qoo
#x的值為foo
x ?= qoo
#x的值為qoo - +=語法
x=foo
x += qoo
#x的值為foo qoo
沒有留言:
張貼留言