當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > Linux學(xué)習(xí) > linux入門 > 分析uboot make config過(guò)程
今天分析一下uboot make config過(guò)程,make xxx_config實(shí)質(zhì)上就是調(diào)用了
首先看MKCONFIG:
【注意】SRCTREE=源文件下的目錄
之后的語(yǔ)句:
@$(MKCONFIG) $(@:_config=) arm arm920t EmbedSky NULL s3c2440就相當(dāng)于執(zhí)行
#mkconfig xxx arm arm920t EmbedSky NULL s3c2440
#$0 $1 $2 $3 $4 $5 $6
于是乎就開(kāi)始執(zhí)行mkconfig;
[ "${BOARD_NAME}" ] 就是指明xxxx,上面的實(shí)例為100ask24x0
這里就會(huì)執(zhí)行echo “Configuring for 100ask24x0 board...”
(1)建立軟鏈接
之后就會(huì)執(zhí)行:
ln -s asm-arm asm
【注意】
建立一個(gè)鏈接文件,為什么這么做呢?
在源文件中調(diào)用:
#include //就相當(dāng)于 include
-------------------------------------------------------------------------
繼續(xù)往下看:
同樣生成asm-arm/proc文件。
(2)生成config.mk文件
生成config.mk文件:
echo "ARCH = $2" > config.mk //重定向
echo "CPU = $3" >> config.mk //追加到config.mk
echo "BOARD = $4" >> config.mk
之后由于$5等于NULL,$6 = s3c2440,所以:
SOC = s3c24x0會(huì)定向到config.mk文件中;
config.mk內(nèi)容:(在include文件夾中)
ARCH = arm
CPU = arm920t
BOARD = 100ask24x0
SOC = s3c24x0
(3)生成config.h
在uboot中APPEND = no
所以執(zhí)行else分支的語(yǔ)句;
config.h也是在include文件夾中;
以上就是分析uboot make config過(guò)程的相關(guān)知識(shí)點(diǎn),更多Linux知識(shí)學(xué)習(xí),請(qǐng)關(guān)注Linux系統(tǒng)入門學(xué)習(xí)欄目。