一、概述
AndroID 10的Build系统叫Soong,Soong之前,AndroID的编译系统是Make——意思是基于Makefile文件的编译系统。Soong大概在AndroID 7就崭露头角了。Soong的宏伟目标是干掉Make,但到AndroID 10,这个看起来比较容易的小目标也还未完全实现。
这个是Soong的编译流程图:
Soong编译系统下,原本打算输入是.bp文件,输出是.ninja文件,但是由于系统中的.mk文件还没有被完全消除掉,因此提供kati和ckati工具将.mk/Makefile文件转换为.ninja文件。.ninja成为编译系统的汇编文件,是不需要人为去修改的,相当于配置文件来调用gcc、java、clang等编译器去编译。
Soong编译系统的设计思想是消除.mk文件中的if/else等逻辑,使.bp文件只是一个简单的编译逻辑,这些复杂的选择配置逻辑应该放在更高层,比如使用更好调试的Python来编写。
参考优秀博文:
1. 了解一下,Android 10 Build系统
总结
以上是内存溢出为你收集整理的Android10的Soong编译系统全部内容,希望文章能够帮你解决Android10的Soong编译系统所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)