是一些 有關 kernel 的 make rule,像 kernel images and module:
$(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_CONFIG) $(KERNEL_HEADERS_INSTALL)
        $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi-
        $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- modules
        $(MAKE) -C kernel O=../$(KERNEL_OUT) INSTALL_MOD_PATH=../../$(KERNEL_MODULES_INSTALL) INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-eabi- modules_install
        $(mv-modules)
        $(clean-module-folder)
        $(append-dtb)
還有 menuconfig:
kernelconfig: $(KERNEL_OUT) $(KERNEL_CONFIG)
        env KCONFIG_NOTIMESTAMP=true \
             $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- menuconfig
        env KCONFIG_NOTIMESTAMP=true \
             $(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=arm CROSS_COMPILE=arm-eabi- savedefconfig
        cp $(KERNEL_OUT)/defconfig kernel/arch/arm/configs/$(KERNEL_DEFCONFIG)
所以要做 menuconfig。就用 kernelconfig 就可以。
AndroidKernel.mk 是由 android device folder 下 target chip 相關目錄的 AndroidBoard.mk include 的。
所以要先 . build/envsetup && lunch 後才有辦法做 make target.
 
沒有留言:
張貼留言