blob: d99d4b55aedcab3ac8f2431b10a5603b3a8e54c9 [file] [log] [blame] [edit]
#!/bin/bash
function build_bl30() {
local current_dir=$(cd $(dirname $0); pwd)
echo "Don't build bl30 source code, use prebuid bin."
cp ${current_dir}/bl30/bin/${CUR_SOC}/${BLX_BIN_SUB_FOLDER}/bl30.bin $2
return
# $1: src_folder, $2: bin_folder, $3: soc
echo -n "Build $3 bl30 of ${BL30_SELECT}...Please wait..."
local tartget
if [ "${CONFIG_RTOS_SDK_ENABLE}" == "1" ]; then
echo "Build bl30 from new RTOS SDK."
local current_dir=$(cd $(dirname $0); pwd)
local work_dir=${current_dir}/../bl30/rtos_sdk
local output_dir
cd $work_dir && source scripts/env.sh riscv $CONFIG_SOC_NAME $CONFIG_BOARD_PACKAGE_NAME aocpu && make distclean && make REPO_DIR=$REPO_DIR \
&& if [ -d ${work_dir}/docs ]; then make docs REPO_DIR=$REPO_DIR ; else echo "No docs repo found. Do not generate docs"; fi && \
output_dir=$work_dir/output/riscv-$CONFIG_BOARD_PACKAGE_NAME-$PRODUCT/freertos
target=$output_dir/bl30.bin
cp -arf $output_dir/freertos.bin $output_dir/bl30.bin
else
# co-work with bl30 build script under bl30.git
target="$1/bl30.bin"
cd $1
#export CROSS_COMPILE=${AARCH32_TOOL_CHAIN}
local soc=$3
if [ "$soc" == "gxtvbb" ]; then
soc="gxtvb"
fi
#make clean BOARD=$soc &> /dev/null
#make BOARD=$soc &> /dev/null
if [[ "${BL30_SELECT}" != "" ]]; then
/bin/bash mk ${BL30_SELECT}
else
/bin/bash mk $soc
fi
fi
if [ $? != 0 ]; then
cd ${MAIN_FOLDER}
echo "Error: Build bl30 failed... abort"
exit -1
fi
cd ${MAIN_FOLDER}
cp ${target} $2 -f
echo "done"
return
}