[Linux] Makefile相關

1、「=」

make會將整個makefile展開後,再決定變量的值。

x = foo
y = $(x) bar
x = xyz

y = xyz bar

2、「:=」

「:=」表示變量的值決定於它在makefile中的位置。

x := foo
y := $(x) bar
x := xyz

y = foo bar

3、「+=」添加後面的值

4、「?=」變數為空值才指定為後面的值

Kernel Makefile Example:

CONFIG_MODULE_SIG = n
obj-m += simple.o
all:
   make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean: 
   make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *