在"分享一个Android平台编译脚本"基础下进一步完善打包功能及清理代码功能,见蓝色部分
打包命令执行./getRom即可
清理代码执行./mk clean即可
#!/bin/bashCPUINFO=$(cat /proc/cpuinfo | grep name |cut -f2 -d: | uniq -c;)
echo "the cpu info${CPUINFO}"
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO# *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPUINFO=${CPUINFO% *}
CPU=$CPUINFO
echo "so you job is ${CPU}"
ln -fs mk getRom
if [ $# -eq 0 ];then
if [ $0 = "./getRom" ];then
product_name=`ls out/target/product`
package_name=${product_name}_`date '+%F_%H_%M_%S'`
mkdir ../${package_name}
echo "${package_name}"
cp -f ./out/target/product/${product_name}/*.img ../${package_name} &
cp -f ./out/target/product/${product_name}/*.bin ../${package_name} &
cp -f ./out/target/product/${product_name}/*scatter.txt ../${package_name} &
cp -f ./out/target/product/${product_name}/obj/CGEN/APDB*W16.13 ../${package_name} &
cp -f ./vendor/mediatek/proprietary/modem/x6028_lwctg/MDDB.META* ../${package_name} &
cp -f ./out/target/product/${product_name}/full_${product_name}*.zip ../${package_name} &
cp -f ./out/target/product/${product_name}/obj/PACKAGING/target_files_intermediates/full_${product_name}*.zip ../${package_name}
else
source build/envsetup.sh 1>/dev/null
print_lunch_menu
echo "build example: ./mk full_g30p_5u-eng"
echo "build example: ./mk full_g30p_5u-eng bootimage"
echo "package example: ./getRom"
echo "clean example: ./mk clean"
echo ""
fi
fi
if [ $# -eq 1 ];then
if [ $1 = "clean" ] ;then
SCMAKE="`cat scMake.ini`"
git clean -dfx;git reset --hard;
git status .
echo "$SCMAKE"
else
source build/envsetup.sh 1>/dev/null
print_lunch_menu
echo "$0 $1 $2 $3 $4 ---- `date '+%F %k:%M:%S'`" >> scMake.ini
echo "lunch $1";
echo "make -j12 2>&1 | tee build.log";
lunch $1
make -j12 2>&1 | tee build.log
fi
fi
if [ $# -eq 2 ];then
source build/envsetup.sh 1>/dev/null
print_lunch_menu
#echo "make -j${CPU} [pl] [lk] [bootimage] [systemimage] 2>&1 | tee build.log";
echo "$0 $1 $2 $3 $4 ---- `date '+%F %k:%M:%S'`" >> scMake.ini
echo "lunch $1";
echo "make -j${CPU} $2 2>&1 | tee $2.log";
lunch $1
make -j${CPU} $2 2>&1 | tee $2.log
fi