编写 android.mk 中 LOCAL_C_INCLUDES 的技巧

原文链接:http://blog.csdn.net/xiangzilv1987/article/details/16805983

在编写 android.mk 的过程中,免不了要修改 LOCAL_C_INCLUDES 来设置头文件的 include 目录,一般写成这样

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \

$(LOCAL_PATH)/../../Classes/game \

$(LOCAL_PATH)/../../Classes/logic \

$(LOCAL_PATH)/../../Classes/view

有一个目录就要写一行,实在繁琐,有没有写法可以把源码目录下的所有子目录都引入呢,看下面

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$ )

LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES:$(LOCAL_PATH)/%:=$(LOCAL_PATH)/%)

即可把 $(LOCAL_PATH)/../../Classes 目录和子目录全部包含进来

还有一种写法,就是使用 sed 命令,效果是一样的,我对 sed 不是很熟悉,简单写了一下

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$ | sed "s/:/ /g" )

这两行和上面三行的结果是一样的

如果要方便的引入源文件到 android.mk 文件里,可以参考我的这篇 post:

编写Android.mk中的LOCAL_SRC_FILES的终极技巧

以上代码在 mac + NDK r8e 下测试通过

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值