以前,我已经使用Android.mk在android/packages/services/
下实现了一些模块
并成功地对该模块运行clang静态代码分析,创建了.plist,如下所示:
from android/ path I exported WITH_STATIC_ANALYZER=1
我尝试运行
mmma packages/services/module_name
并成功在android/
文件夹下创建所有.plist。
现在,使用相同的导出标志,在为添加的某些模块使用clang创建静态代码分析结果时遇到问题
在android/vendor/
模块内部,该模块是使用Android.bp文件构建的。当我运行mmma vendor/module_name
时,它不会创建
任何.plist。
我添加了
cflags:[
"-Wall",
"-Werror",
"-Wunused",
"-Wunreachable-code",
],
在Android.bp的cc_shared_library{}
,cc_defaults{}
和cc_binary{}
部分中。同样没有.plist或任何其他格式的静态代码分析结果。
此外,我尝试在WITH_TIDY=1
上导出android/
,但还是没有运气。
AOSP版本是Android P。
有什么办法解决这个问题吗?
答案 0 :(得分:0)
经过调查,我意识到将cflags添加到Android.bp时,它实际上已经开始运行clang分析器,但是它无法捕获我创建的任何错误。当我添加另一个故意错误时,我得到了.plist文件,它显示为Value stored to variable is never read
。
在此之前,我添加了一些内存泄漏并且对此没有任何警告,因此我为此创建了另一个问题: Clang analyzer missing memory leaks