Inside the android build system

本文深入探讨了Android构建系统的架构特点,包括支持多目标/主机/工具链、非递归Makefile架构、组件独立构建及清理等功能。此外还讨论了如何管理和优化依赖关系,以及如何将模块编译整合进最终映像文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

del.icio.us Tags: android

With one day of study, my first impress is that android has a pretty good build architecture.

  • support multiple targets/hosts/toolchains
  • has good templates for developer to insert new modules for android (app/static/dynamic/C|C++ executables/Java libraries)
  • has a pretty good document about build system in source tree (see below)
  • it’s non-recursive makefile architecture which will be base for build faster
  • centralized output directory across platform which get “make clean” more reliable
  • support component standalone build/clean
  • support CCACHE which help build faster via reusing objects
  • support parallel build on multiple-CPU/core computer (make –j <N>)
  • support different mode of build (eng/user/userdebug)
  • good architect to support both global variables and local variables well

TODO list for myself

  • study how dependency is managed
  • study how stuffs are compiled into final image (system.img)
  • study how to release SDK periodically for developers
  • study if it could be compiled with distcc quickly
  • how to get modules compiled/debug in eclipse directly without turn to command line
  • how to add a new product support base on android
  • frequently used SCM rules when developing android modules
  • summarize a internal quick-start guideline for my team
  • naming rules for version number of various build (version_defaults.mk)
  • study how the published api change is detected
  • how to support different localization
  • stay tuned for more

 

References:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值