Soong is one of the build systems used in Android. There are altogether three:
- The legacy Make-based build system that is controlled by files called Android.mk.
- Soong, which is controlled by files called Android.bp.
- The upcoming Bazel-based build system that is controlled by files called BUILD.bazel.
Android.bp file are JSON-like declarative descriptions of "modules" to build; a "module" is the basic unit of building that Soong understands, similarly to how "target" is the basic unit of building for Bazel (and Make, although the two kinds of "targets" are very different)
Soong官网见:https://android.googlesource.com/platform/build/soong/+/main/README.md
Soong编译配置总览:https://ci.android.com/builds/submitted/12809646/linux/latest/view/soong_build.html
自己生成帮助文档
为了方便查询,我们也可以自己生成soong的帮助文档,下载aosp源码,全编一次,然后参考下面:
The list of valid module types and their properties can be generated by calling m soong_docs
. It will be written to $OUT_DIR/soong/docs/soong_build.html
. This list for the current version of Soong can be found here.