#!/bin/bash cd ~ WORKSPACE=$(pwd) echo ${WORKSPACE} BuildType=$1 # 换服务器编译时,这里的PATH要以新服务器的环境变量重新配置 export PATH=/opt/git-repo:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/wangjianfeng/.vscode-server/bin/d2e414d9e4239a252d1ab117bd7067f125afd80a/bin:/opt/git-repo:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/wangjianfeng/.vscode-server/bin/d2e414d9e4239a252d1ab117bd7067f125afd80a/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin # 完成一次编译后,等待服务器释放; function WaitBuildFree() { sleep 300 } # ---------------------编译41A代码---------------------; function build_41A() { cd ${WORKSPACE}/dailybuildA/ echo "路径:"${WORKSPACE}/dailybuildA/ # 编译2841A主干代码; echo "Start: Daily build for RT2841A master branch "$(date +"%Y-%m-%d %T") #此代码不能使用以下命令,否则会报错; #repo forall -c "pwd && git clean -xfd && git checkout -- ." rm -rf $WORKSPACE/dailybuildA/kernel/android/R/out #./kernel/android/R/device/tv051/R3/scbc_build.sh true ./scbc_build.sh true echo "End: Daily build for RT2841A master branch "$(date +"%Y-%m-%d %T") echo -e "##############################################################################################\n\n\n" WaitBuildFree } # ---------------------编译51M代码---------------------; function build_51M() { cd ${WORKSPACE}/dailybuildM/ echo "路径:"${WORKSPACE}/dailybuildM/ # 编译2851M主干代码; echo "Start: Daily build for RT2841M master branch "$(date +"%Y-%m-%d %T") #此代码不能使用以下命令,否则会报错; #repo forall -c "pwd && git clean -xfd && git checkout -- ." rm -rf $WORKSPACE/dailybuildM/kernel/android/R/out #./kernel/android/R/device/tv051/R3/scbc_build.sh true ./scbc_build_51m.sh true echo "End: Daily build for RT2841M master branch "$(date +"%Y-%m-%d %T") echo -e "##############################################################################################\n\n\n" WaitBuildFree } # ---------------------编译4151代码---------------------; function build_4151() { # 编译2841主干代码; echo "Start: Daily build for RT2841 master branch "$(date +"%Y-%m-%d %T") cd $WORKSPACE/dailybuild/ repo forall -c "pwd && git clean -xfd && git checkout -- ." rm -rf $WORKSPACE/dailybuild/kernel/android/pie/out ./SCBC_build.sh true echo "End: Daily build for RT2841 master branch "$(date +"%Y-%m-%d %T") var_md=$(date '+%m%d') if [ ! -d /home/exchange/Dailybuild/DailyBuild_RT2841_$var_md ]; then # 判断是否有编译成功的文件夹存在(100服务器脚本copy失败); if [ -d $WORKSPACE/dailybuild/DailyBuild_RT2841_$var_md ]; then echo "开始复制rt2841" cp -r $WORKSPACE/dailybuild/DailyBuild_RT2841_$var_md /home/exchange/Dailybuild/ else echo "没有生成rt2841编译的img" fi fi echo -e "##############################################################################################\n\n\n" WaitBuildFree # 编译2851主干代码; echo "Start: Daily build for RT2851 master branch "$(date +"%Y-%m-%d %T") cd $WORKSPACE/dailybuild/ repo forall -c "pwd && git clean -xfd && git checkout -- ." rm -rf $WORKSPACE/dailybuild/kernel/android/pie/out ./SCBC_build_4K_2851.sh true echo "End: Daily build for RT2851 master branch "$(date +"%Y-%m-%d %T") if [ ! -d /home/exchange/Dailybuild/DailyBuild_RT2851_$var_md ]; then # 判断是否有编译成功的文件夹存在(100服务器脚本copy失败); if [ -d $WORKSPACE/dailybuild/DailyBuild_RT2851_$var_md ]; then echo "开始复制rt2851" cp -r $WORKSPACE/dailybuild/DailyBuild_RT2851_$var_md /home/exchange/Dailybuild/ else echo "没有生成rt2851编译的img" fi fi echo -e "##############################################################################################\n\n\n" WaitBuildFree } function main() { if [ ! $BuildType ]; then BuildType=2 fi if [ $BuildType == 1 ]; then build_41A elif [ $BuildType == 2 ]; then build_51M elif [ $BuildType == 3 ]; then build_4151 fi echo "Code build finished" } main