1、mkconfig(123-129行)创建include/config.mk文件。这个config.mk在主Makefile的133行被提取。
(1)创建include/config.mk文件是为了让Makefile第133行去包含。
(2)思考:uboot的配置和编译过程的配合。编译的时候需要ARCH=arm、CPU=XX等这些变量来指导编译
(因为你编译时必须知道目标CPU的架构是什么,目标CPU是那款CPU等等这些才可以指导编译,编译的过
程需要这些东西,那么配置就是为编译提供这些东西的),配置的时候就是为编译阶段提供这些变量。
那为什么不在Makefile中直接定义这些变量去使用,而要在mkconfig脚本中创建config.mk文件然后又在
Makefile中include(提取)这些文件呢?主要原因第一:直接在Makefile中修改的话,因为你要在Makefil
中定义修改大量东西,对人来说不一定能记得这些东西。譬如说同时一个人维护了3块或更多开发板,你不
可能记得每一块板子是怎么弄的,而我们像下面代码这样把每块板子在主Makefile中的参数配置好。用的
时候只需要make xxx对应板子的目标(x210_sd_config )就可以了。
x210_sd_config : unconfig
@$(MKCONFIG) $(@:_config=) arm s5pc11x x210 samsung s5pc110
@echo “TEXT_BASE = 0xc3e00000” > $(obj)board/samsung/x210/config.mk
因为mkconfig中的$1- 6 最 终 来 源 于 主 M a k e f i l e 中 这 三 行 代 码 。 第 一 行 目 标 名 x 21 0 s d c o n f i g 就 代 表 对 应 的 一 款 开 发 板 。 这 样 我 们 就 可 以 把 不 同 的 几 块 开 发 板 分 别 定 义 一 个 目 标 名 , 然 后 设 置 好 传 参 , 用 的 时 候 只 需 要 m a k e x x x 对 应 的 开 发 板 目 标 名 称 就 行 了 , 不 必 要 记 细 节 。 这 里 这 样 做 是 为 了
uboot配置过程详解2
最新推荐文章于 2024-06-12 23:33:07 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)