EXTRA_CFLAGS += -D 与CONFIG_ =y
1.
假如定义一个宏
CONFIG_DEBUG
在.c里面定义为:#define
CONFIG_DEBUG
在makefile里定义为: CONFIG_DEBUG=y
假如说我们想在makefile里为.c文件进入一个宏定义,就用EXTRA_CFLAGS += D
CONFIG_DEBUG
( 等价于在.c文件里定义
#define
CONFIG_DEBUG
)
这时CONFIG_DEBUG=y与
EXTRA_CFLAGS += D
CONFIG_DEBUG
的区别应该你已经看出来的,前者是对makefile编译时用的,比如说obj-(
CONFIG_DEBUG
) += test.o,而后者则是对.c源文件里的 用的,比如说:
#if defined(
CONFIG_DEBUG
)
…
#else
…
#endif
2.
假如定义一个宏CONFIG_DEBUG = 3
在.c里面定义为:#define CONFIG_DEBUG 3
假如说我们想在makefile里为.c文件进入一个宏定义,就用EXTRA_CFLAGS += -DCONFIG_DEBUG=3
此时两者的定义完全相同。