经常在驱动改动的时候,同时改动2个文件,才知道他们分别对应不同的编译结果。
路径 | 对应版本 |
---|---|
kernel/msm-4.4/arch/arm64/configs/sdm660_defconfig | deBUG版本 |
kernel/msm-4.4/arch/arm64/configs/sdm660-perf_defconfig | user 版本 |
1)命令执行追溯
source build/envsetup.sh
执行envsetup.sh
脚本,把(TARGET_DEVICE)/BoardConfig.mk
包含了进来:
function gettop () { local topfile=build/core/envsetup.mk # ...}build/core/envsetup.mk:board_config_mk := \ $(strip $(sort $(wildcard \ $(SRC_TARGET_DIR)/board/$(TARGET_DEVICE)/BoardConfig.mk \ $(shell test -d device && find -L device -maxdepth 4 -path '*/$(TARGET_DEVICE)/BoardConfig.mk') \ $(shell test -d vendor && find -L vendor -maxdepth 4 -path '*/$(TARGET_DEVICE)/BoardConfig.mk') \)))
BoardConfig.mk中有如下内容:
ifeq ($(KERNEL_DEFCONfig),) # 如果make命令中未指定KERNEL_DEFCONfig的值,则在此处指定它的值 ifeq ($(TARGET_BUILD_VARIANT),user) KERNEL_DEFCONfig := msm8909-1gb-perf_defconfig else KERNEL_DEFCONfig := msm8909-1gb_defconfig endifendifinclude kernel/AndroIDKernel.mk
2)查看Kernel/AndroIDKernel.mk
KERNEL_header_DEFCONfig := $(strip$(KERNEL_header_DEFCONfig))ifeq ($(KERNEL_header_DEFCONfig),) KERNEL_header_DEFCONfig:= $(KERNEL_DEFCONfig)endifKERNEL_OUT :=$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJKERNEL_CONfig :=$(KERNEL_OUT)/.config #----目标文件$(KERNEL_CONfig): $(KERNEL_OUT)$(MAKE) -C kernel O=../$(KERNEL_OUT)ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_DEFCONfig)$(hIDe) if [ ! -z"$(KERNEL_CONfig_OVERRIDE)" ]; then /echo "OverrIDingkernel config with '$(KERNEL_CONfig_OVERRIDE)'"; /echo$(KERNEL_CONfig_OVERRIDE) >> $(KERNEL_OUT)/.config; /$(MAKE) -C kernelO=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE)oldconfig; fi
3)kernel/scripts/kconfig/Makefile
%_defconfig: $(obj)/conf $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig)
在编译内核时执行上述命令生成.config文件,该命令展开后如下所示:
scripts/kconfig/conf --defconfig=arch/arm64/configs/.msmxxx_defconfig Kconfig
其中.msmxxx_defconfig
的值就是KERNEL_DEFCONfig
的值
以上是内存溢出为你收集整理的Android 编译系统 defconfig文件的确定全部内容,希望文章能够帮你解决Android 编译系统 defconfig文件的确定所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)