Chinaunix首页 | 论坛 | 博客
  • 博客访问: 198849
  • 博文数量: 69
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 720
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-03 11:35
文章分类

全部博文(69)

文章存档

2011年(13)

2010年(46)

2009年(10)

我的朋友

分类: LINUX

2010-11-12 15:06:50

Android101112: Android Make脚本的简记(5)


Email:    zcatt@163.com
Blog    http://zcatt.cublog.cn

 
内容提要
文档简要整理Android的make脚本的内容。以供备忘和参考。



声明
仅限学习交流,禁止商业用途。转载需注明出处。


版本记录
Date    Ver    Note
2010-11-12    0.1    Draft.  zcatt@Beijing
 
 

1. Makefile的分析


首先定义target, 用于生成$(OUT_DOCS)/index.html

再定义target, 用于生成$(TARGET_ROOT_OUT)/default.prop

再定义target, 用于生成$(TARGET_OUT)/build.prop。build.prop文件记录了一系列属性值。它的内容分成两部分,第一部分是一些关于product,device,build的一般性属性值,第二部分的属性值源自ADDITIONAL_BUILD_PROPERTIES。product配置mk文件中定义的PRODUCT_PROPERTY_OVERRIDES会加入到ADDITIONAL_BUILD_PROPERTIES,建议增加property时,直接修改PRODUCT_PROPERTY_OVERRIDES。

再定义target, 用于生成$(PRODUCT_OUT)/sdk/sdk-build.prop

再定义target,package-stats,用于生成$(PRODUCT_OUT)/package-stats.txt,这个文件包含了.jar,.apk后缀文件的信息。

再定义target,apkcerts-list,用于生成$(name)-apkcerts-$(FILE_NAME_TAG),描述各module的certificate和private_key文件信息。

接着,如果定义了CREATE_MODULE_INFO_FILE,则生成$(PRODUCT_OUT)/module-info.txt,其中包含了描述所有module的信息。

再定义target,event-log-tags。

接着,处理ramdisk.img

再处理boot.img,如果TARGET_NO_KERNEL不是true,则将kernel和ramdisk.img组装成boot.img。

接着,定影命令combine-notice-files,用于生成target,notice_files。notice_files会抽取生成相应的声明文件。

随后,建立target,otacert,用于将.x509.pem后缀的认证文件打包存放到$(TARGET_OUT_ETC)/security/otacerts.zip。

接着,建立target,recoveryimage,处理recovery img

还有下面的target,

systemimage-nodeps, snod
systemtarball-nodeps,stnod
boottarball-nodeps,btnod
userdataimage-nodeps
userdatatarball-nodeps
otatools
target-files-package
otapackage
installed-file-list
tests-zip-package
dalvikfiles
updatepackage

最后包含进 build/core/task/下的mk文件。

 
阅读(2272) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~