Files

49 lines
1.4 KiB
Bash
Raw Permalink Normal View History

2026-05-23 22:10:14 +08:00
#!/usr/bin/env bash
#-------------------------------------------------
# 服务端相关开发工具
#-------------------------------------------------
if [ "" == "$ROOT" ]; then
if [ -f ../tools/dev.sh ]; then
../tools/dev.sh $@
exit 0
else
echo -e "\e[91m>>\e[0;0m 此脚本必须通过tools/dev.sh调用才能正常工作"
exit 1
fi
fi
DOC[srv_makec]="编译服务器核心源码"
fun_srv_makec(){
INFO "正在编译服务端核心源码,使用编译参数: [] (编译参数可在\e[92mcfg.ini\e[0;0m中修改) ..."
cd ${ROOT}/server_core || exit 1
mkdir -p ${ROOT}/server/cbinx
mkdir -p ${ROOT}/server/ebin
start_time=$(date +%s)
# paths=$(find src -type d -exec echo \ \ \ \ \ \ \ \ ,\'{}/*\' \;)
# paths=$(find src -type d | xargs -I {} echo " ,'{}/*'")
paths=$(find src -type d | awk '{print " ,'\''"$0"/*'\''" }')
cat > Emakefile <<EOF
{
[
'*'
${paths}
]
,[
{hipe, [o3]}
%%,encrypt_debug_info
,debug_info
,{i, "../server/inc"}
,{outdir, "../server/cbin"}
]
}.
EOF
${ERL} -pa $ROOT/server/cbin -noshell -make -j 10
if $(in_cygwin); then
yes|cp -f ${ROOT}/server/cbin/* ${ROOT}/server/ebin/
else
rsync -avH --progress ${ROOT}/server/cbin/ ${ROOT}/server/ebin/
fi
INFO "编译服务端源码完成:$(expr `date +%s` - $start_time)"
}