Android.mk 可以用ifdef 0吗
时间: 2024-05-13 22:18:51 浏览: 68
android studio 配置gradle使用android.mk编译jni
可以的,`ifdef 0`意味着这段代码不会被编译。在Android.mk文件中,你可以使用`ifeq`来实现这个功能。例如:
```
ifeq ($(TARGET_ARCH),arm)
# 如果TARGET_ARCH是arm,则执行以下代码
LOCAL_SRC_FILES := arm_code.c
else
# 如果TARGET_ARCH不是arm,则执行以下代码
ifdef BUILD_WITH_ARM_CODE
LOCAL_SRC_FILES := arm_code.c
else
LOCAL_SRC_FILES := generic_code.c
endif
endif
```
在上面的代码中,`ifdef`和`endif`之间的代码块只会在`BUILD_WITH_ARM_CODE`被定义时被执行。如果`BUILD_WITH_ARM_CODE`没有被定义,则会执行`else`后的代码块。如果`TARGET_ARCH`是arm,则会执行第一个`ifeq`后的代码块,否则会执行第二个`else`后的代码块。
阅读全文