Understand the Amlogic build system

1. Export the environmential variables
export TOP_DIR=$(pwd)
export KERNEL_DIR=${TOP_DIR}/kernel
export BUILD_OUT_DIR=${TOP_DIR}/output
export ROOT_SRC=${TOP_DIR}/buildroot-2010.05
export COMMON_DIR=${TOP_DIR}/common
export BOOT_SRC=${TOP_DIR}/uboot


2. Makefile global variables
BTOP_BUILD_DIR?=$(BUILD_OUT_DIR)/ --> BTOP_BUILD_DIR?=./out
O?=$(BTOP_BUILD_DIR)/rootfs_build --> O?=./out/rootfs_build
ROOTFS_OUT=$(O) --> ROOTFS_OUT=$(O)
TARGET=all --> TARGET=all


3. Several target
- all
ckdir_%:
mkdir -p $($*) #mkdir -p $(BTOP_BUILD_DIR){./out}
#mkdir -p $(BTOP_ROOT_SRC){}


check:ckdir_BTOP_BUILD_DIR ckdir_ROOT_SRC
all:p_all
p_all:check
-mkdir -p $(ROOTFS_OUT)
cp -rf rootfs_config $(ROOT_SRC)/.defconfig # ./buildroot-2010.05/.defconfig
cp -rf busybox_config $(ROOT_SRC)/busybox.config # ./buildroot-2010.05/busybox.config
$(MAKE) -C $(ROOT_SRC)  O=$(ROOTFS_OUT) defconfig # make -C buildroot-2010.05 O=./out/rootfs_build defconfig
$(MAKE) -C $(ROOT_SRC)  O=$(ROOTFS_OUT) $(TARGET) # make -C buildroot-2010.05 O=./out/rootfs_build all


p_%config:check
-mkdir -p $(ROOTFS_OUT)
cp -rf rootfs_config $(ROOT_SRC)/.defconfig
cp -rf rootfs_config $(ROOT_SRC)/.config
cp -rf busybox_config $(ROOT_SRC)/busybox.config
$(MAKE) -C $(ROOT_SRC)  O=$(ROOTFS_OUT) $*config # make -C buildroot-2010.05 O=./out/rootfs_build $*config
cp -rf $(ROOT_SRC)/.config rootfs_config # menuconfig etc.
cp -rf $(ROOT_SRC)/busybox.config busybox_config









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值