分析1:built.in.o的生成过程
分析2
分析1:built.in.o的生成过程
step1:“根Makefile“ 中 "u-boot-dirs目标" 执行scripts/Makefile.build 且obj=cmd
PHONY += $(u-boot-dirs)
$(u-boot-dirs): prepare scripts
$(Q)$(MAKE) $(build)=$@
解释:
1. u-boot-dirs为一系列的目录
2.对应展开后的其中一条命令为:@make -f $(srctree)/scripts/Makefile.build obj=cmd
################################################
libs-y += cmd/
libs-y += common/
libs-y += env/
libs-y := $(sort $(libs-y))
#匹配/目录,然后替换中去掉/
u-boot-dirs := $(patsubst %/,%,$(filter %/, $(libs-y))) tools examples
step2:“根Makefile“中 "u-boot-dirs目标" 执行scripts/Makefile.build 且obj=cmd
$(LD) $(ld_flags) -r -o built.in.o $(filter $(obj-y), $^)
############################# scripts/Makefile.build ##################
########## 代码块1 src =obj(src=cmd) #######################
# Modified for U-Boot
p