build: add step to build a buildroot toolchain

Change-Id: Ib7477fa290e5737254357a7dd96aa239e8d4be7d
Signed-off-by: Cody Xie <cody.xie@rock-chips.com>
This commit is contained in:
Cody Xie
2019-12-11 19:18:20 +08:00
parent 16d1c85d91
commit 5906f151a9
2 changed files with 42 additions and 0 deletions

View File

@ -15,6 +15,7 @@ function usage()
echo "uboot -build uboot"
echo "kernel -build kernel"
echo "modules -build kernel modules"
echo "toolchain -build toolchain"
echo "rootfs -build default rootfs, currently build buildroot as default"
echo "buildroot -build buildroot rootfs"
echo "ramboot -build ramboot image"
@ -80,6 +81,21 @@ function build_modules(){
fi
}
function build_toolchain(){
echo "==========Start build toolchain =========="
echo "TARGET_TOOLCHAIN_CONFIG=$RK_CFG_TOOLCHAIN"
echo "========================================="
[[ -z "$RK_CFG_TOOLCHAIN" ]] \
&& /usr/bin/time -f "you take %E to build toolchain" $COMMON_DIR/mk-toolchain.sh $BOARD_CONFIG \
|| echo "No toolchain step, skip!"
if [ $? -eq 0 ]; then
echo "====Build toolchain ok!===="
else
echo "====Build toolchain failed!===="
exit 1
fi
}
function build_buildroot(){
echo "==========Start build buildroot=========="
echo "TARGET_BUILDROOT_CONFIG=$RK_CFG_BUILDROOT"
@ -253,6 +269,7 @@ function build_all(){
echo "TARGET_UBOOT_CONFIG=$RK_UBOOT_DEFCONFIG"
echo "TARGET_KERNEL_CONFIG=$RK_KERNEL_DEFCONFIG"
echo "TARGET_KERNEL_DTS=$RK_KERNEL_DTS"
echo "TARGET_TOOLCHAIN_CONFIG=$RK_CFG_TOOLCHAIN"
echo "TARGET_BUILDROOT_CONFIG=$RK_CFG_BUILDROOT"
echo "TARGET_RECOVERY_CONFIG=$RK_CFG_RECOVERY"
echo "TARGET_PCBA_CONFIG=$RK_CFG_PCBA"
@ -260,6 +277,7 @@ function build_all(){
echo "============================================"
build_uboot
build_kernel
build_toolchain && \
build_rootfs ${RK_ROOTFS_SYSTEM:-buildroot}
build_recovery
build_ramboot

24
common/mk-toolchain.sh Executable file
View File

@ -0,0 +1,24 @@
#!/bin/bash
COMMON_DIR=$(cd `dirname $0`; pwd)
if [ -h $0 ]
then
CMD=$(readlink $0)
COMMON_DIR=$(dirname $CMD)
fi
cd $COMMON_DIR
cd ../../..
TOP_DIR=$(pwd)
BOARD_CONFIG=$1
source $BOARD_CONFIG
if [ -z $RK_CFG_TOOLCHAIN ]
then
echo "RK_CFG_TOOLCHAIN is empty, skip building buildroot toolchain!"
exit 0
fi
source $TOP_DIR/buildroot/build/envsetup.sh $RK_CFG_TOOLCHAIN
$TOP_DIR/buildroot/utils/brmake toolchain gdb sdk -j8
if [ $? -ne 0 ]; then
exit 1
fi
echo "toolchain located at: $TOP_DIR/buildroot/output/$RK_CFG_TOOLCHAIN/host"