本文主要讲述,如果使用环境变量来控制编译宏生成,其中包括Android.mk、Android.bp两种不同的生成方式。
1、代码中通过编译宏控制选择编译(必须提前定义好宏)
#ifdef 宏1
do something
#else
do something
#endif
2、通过传入环境变量,自动生成编译宏,在代码中拿到宏1进行判断
编译命令
TEST=1 make kernel
Android.mk
ifeq($(TEST), 1)
LOCAL_CFLAGS += -D宏1
endif
3、Android.bp+go自动生成编译宏
import (
"android/soong/android"
"android/soong/cc"
"fmt"
)
//定义编译属性
type props struct {
Cflags []string
Shared_libs []string
Srcs