展讯平台sc8810 make 过程


mainfile.sprd中的命令转换:

($uMod = "bootimage") if (($uModeq "k") or ($uMod eq"kernel"));

 

 

 

展讯平台的shell、perl一大堆。具体的执行过程:
(1)./mk  :该文件只有一个调用
(2) -----/customize/perl/main.perl该文件分析输入的指令Usage: ./mk [options] project actions [modules];调用\customize\perl\prebuild.pl进行预处理;调用mainfile.sprd,并传入相应的命令
(3) -----\customize\perl\prebuild.pl 主要对customize/make/${project}.mak;进行处理
(4)-----/customize/make/mainfile.sprd  该文件对传入的命令转换,如($uMod = "bootimage") if (($uMod eq "k") or ($uMod eq"kernel"));调用build.products.sh
(5) -----/customize/shell/build.products.sh该文件加入选项---是否对电路板上不常换器件支持,比如GPS、wifi、FM、BT等;调用/customize/shell/build.3rdparty.common.sh;调用\customize\customer_cfg\n869\res\build.sh
(6) -----\customize\customer_cfg\n869\res\build.sh 该文件主要是加入客户项目的配置,比如


并调用/customize/shell/build.3rdparty.common.sh全部编译android或者其它

 

-----/customize/shell/build.3rdparty.common.sh该文件可以被反复调入,究竟执行哪一段是由全局的变量控制的。可以调用根目录下的Makefile进行整个android的编译,编译kernel(调用customize/shell/ make_kernel.sh)、uboot;把3rdparty下面的文件拷贝链接到对应目录,或者清除链接
-----customize/shell/make_kernel.sh调用同目录下的kernel.sh
-----customize/shell/make_android.sh调用build.3rdparty.common.sh,使用mm编译android模块。


 

你可能感兴趣的:(2012-2013,linux+android)