makefile宏定义:EXTRA_CFLAGS += -D 与CONFIG_ =y

EXTRA_CFLAGS += -D 与CONFIG_ =y

1.

假如定义一个宏CONFIG_DEBUG

在.c里面定义为:#define CONFIG_DEBUG

在makefile里定义为: CONFIG_DEBUG=y

假如说我们想在makefile里为.c文件进入一个宏定义,就用EXTRA_CFLAGS += DCONFIG_DEBUG( 等价于在.c文件里定义#define CONFIG_DEBUG)

这时CONFIG_DEBUG=y与EXTRA_CFLAGS += DCONFIG_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

此时两者的定义完全相同。



你可能感兴趣的:(+,makefile,define,Y,-d,EXTRA_CFLAGS,CONFIG_)