我已经对bluedroid代码进行了修改。AOSP构建:如何跳过本地头包括
我的代码需要使用通常 semaphore.h中,其在位于:现在<aosp_root>/prebuilts/ndk/current/platforms/<platform>/<arch>/usr/include/semaphore.h
,在AOSP 6.0+ bluedroid驻留在<aosp_root>/system/bt/
在那里,在一个标头: <aosp_root>system/bt/osi/include/semaphore.h
在通常的AOSP构建中,如果我在我的代码中留下了一个简单的#include <semaphore.h>
,则会将osi头部包含在内,这是不兼容的。有没有办法修改构建系统,以便ndk的头被用于我的代码?
我很高兴地在我的代码中包含了这个相对路径,但<arch>
(可能是<platform>
)是编译时变量,不应该被硬编码。 workarround为此也受欢迎作为备用答案。
Link to osi's header
Link to bluedroid main make file