#变量声明 $num 表示取传入的参数值 1 表示取传入的第一个表示数值
#${val} 表示取变量值 val表示变量名
args=$1 #$1表示第1个参数值
buildType="Debug" #生成模式
clean=false #清除生成缓存
#生成模式判断
if [ ${args}v = "release"v ];then #${args}v 取参数变量 v表示为变量
buildType="Release"
elif [ ${args}v = "clean"v ];then
clean=true
fi
#函数声明
build_proj(){
#循环遍历文件夹
for i in `ls -d */`; do
cd $i #进入文件夹
if ${clean};then #条件满足清空缓存
rm CMakeCache.txt #删除Cmake缓存文件
make clean #删除make缓存
else
#指定模式生成makefile
cmake -DCMAKE_BUILD_TYPE=${buildType} ./
#编译
make
fi
cd .. #退到上级目录
done #循环完成
}
#进入库目录
cd src/libs/
build_proj #调用build函数编译
#进入程序目录
cd ../apps/
build_proj #调用build函数编译