imx6ull:uboot的Makefile.build脚本分析

本文深入分析了UBoot中的scripts_basic目标,解释了Makefile.build中的关键命令和函数,如patsubst,展示了如何编译生成scripts/basic/fixdep。同时,也介绍了%config目标的处理过程,解释了如何根据defconfig文件生成.config。
摘要由CSDN通过智能技术生成

scripts_basic目标对应的命令

  • scripts_basic 目标对应的命令为:@make -f ./scripts/Makefile.build obj=scripts/basic

 

8 # Modified for U-Boot
9 prefix := tpl
10 src := $(patsubst $(prefix)/%,%,$(obj))
11 ifeq ($(obj),$(src))
12 prefix := spl
13 src := $(patsubst $(prefix)/%,%,$(obj))
14 ifeq ($(obj),$(src))
15 prefix := .
16 endif
17 endif
  • 第 9 行定义了变量 prefix 值为 tpl
  • 第 10 行定义了变量 src。此行代码展开后为:$(patsubst tpl/%,%, scripts/basic)。即在“scripts/basic”中查找符合“tpl/%”的部分,然后将“tpl/”取消掉,但是“scripts/basic”没有“tpl/”,所以 src= scripts/basic
    patsubst 是替换函数,格式如下:
    $(patsubst <pattern>,<replacement>,<text>)
    此函数用于在 text 中查找符合 pattern 的部分,如果匹配的话就用 replacement 替换掉。pattenr 是可以包含通配符“%”,如果 replacement 中也包含通配符“%”,那么 replacement 中的这个“%”将是 pattern 中的那个“%”所代表的字符串。函数的返回值为替换后的字符串
  • 第 11 行判断
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值