安卓C代码增加宏开关

安卓C代码增加宏开关

一、说明

使用make 命令,最终实现传递参数至具体的C代码,使用宏开关编译代码。
例如 make RELEASE_VERSION=yes,这样在具体的C代码中,可以根据参数RELEASE_VERSION控制代码条件编译。

二、平台

软件采用全志公司的android包为为例。

三、操作方法

1、传递编译参数

修改主Makefile,将编译命令跟随的参数导出到所有的底层makefilez中。

vi build/core/main.mk

添加如下代码,用于导出编译参数。

ifeq ($(RELEASE_VERSION),yes)
RELEASE_VERSION:=yes
else
RELEASE_VERSION:=no
endif
export PAXDROID_ RELEASE

2、增加宏定义

引用系统导入的编译参数,增加宏定义,用于作用于具体的C代码。
操作:修改具体代码上一层的Android.mk

vi Android.mk

增加宏开关的定义,增加 LOCAL_CFLAGS 参数定义。

ifeq ($(RELEASE_VERSION),yes)
LOCAL_CFLAGS += -DRELEASE_VERSION
endif

3、引用宏定义开关控制代码
在具体的C代码中,使用宏开关,控制具体的代码。

vi test.c

以下是示例代码

#ifdef RELEASE_VERSION
printf("This is release version.\n");
#endif

猜你喜欢

转载自blog.csdn.net/xhoufei2010/article/details/77801893