make menuconfig ,arch/arm/mach-s3c2440/Kconfig,arch/arm/mach-s3c2440/Makefile,.config,这四者的关系
Kconfig就是menuconfig中的内容来源,在menuconfig中选中了某项也就会在.config中体现出来,而Makefile中则根据选项来决定某项
比如我现在要将arch/arm/mach-s3c2440/mach-mini2440.c编译进内核,步骤如下:
首先要做Kconfig中增加其选项
config MACH_MINI2440
bool "MINI2440 development board"
.
.
然后make menuconfig在
System Type --->
S3C2440 Machines --->
[*] MINI2440 development board
如果选中了此项,在顶层的.config文件中就会有
CONFIG_MACH_MINI2440 = y
再在Makefile中添加
obj-$(CONFIG_MACH_MINI2440) += mach-mini2440.o
这样Makefile在读取.config时发现CONFIG_MACH_MINI2440为y就会把mach-2440.c编译进来
这个过程还算比较清楚,如果你自己在arch/arm/mach-s3c2440/写了一个针对你自己开发板的c文件,myboard.c,那可以把该目录下的Makefile中的
obj-$(CONFIG_MACH_MINI2440) += mach-mini2440.o改成
obj-$(CONFIG_MACH_MINI2440) += myboard.o即可
阅读(686) | 评论(0) | 转发(0) |