OpenWrt目录的编译

来源:互联网 发布:mac魔兽世界闪退 编辑:程序博客网 时间:2024/05/19 03:19

顶层Makefile的第1个分支主要解决package和target的信息收集

.config配置文件的生成


在顶层的Makefile完成第1个分支后

执行include/toplevel.mk中目标%::的命令@+$(SUBMAKE) -r $@

重新回到顶层Makefile的第2个分支中的world目标


第2个分支主要完成源码下载和编译工作

从第2个分支中包含的信息

include target/Makefile

include package/Makefile

include tools/Makefile

include toolchain/Makefile

知道需要解决4个目录target、package、tools、toolchain的编译工作


查看tools/Makefile

最下面2行

$(eval $(call stampfile,$(curdir),tools,install,,CONFIG_CCACHE CONFIG_powerpc CONFIG_GCC_VERSION_4_5 CONFIG_GCC_USE_GRAPHITE CONFIG_TARGET_orion_generic))
$(eval $(call subdir,$(curdir)))


这些编译的规则通过include/subdir.mk中定义的2个宏

define subdir

define stampfile

展开得到


stampfile由perl脚本scripts/timestamp.pl通过检查目录下最新的那个文件时间戳与目标时间戳比较

而决定是否需要执行subdir下的目标规则


由此完成所有的编译工作



0 0
原创粉丝点击