代码拉取完成,页面将自动刷新
#!/usr/bin/env bash
export LUA_PATH="`pwd`/luajit/src/?.lua;;"
LUABIN=`pwd`/luajit/src/luajit
cd objs
rm -rf scripts
cp -a ../scripts ./
#all files not under modules directory is using luajit to precompile to bytecode
for i in `find ./scripts -not -path "./scripts/modules*" -type f`; do
$LUABIN -bg $i $i
done
#for all the files under modules directory, compile each module and pack to .so
cd ./scripts
mkdir -p so
rm -rf so/*
cd ./modules
mkdir -p objs
for mod in `ls *.lua`; do
rm -rf objs/*
MODNAME=${mod%.lua}
if [ -d ./${MODNAME} ] ;then
for i in `find ./${MODNAME} -type f` ; do
obj_name=`echo $i | sed 's|^./||g' |sed 's|/|_|g' |sed 's|.lua$|.o|g'`
mod_name=`echo $i | sed 's|^./||g' |sed 's|/|.|g' |sed 's|.lua$||g'`
$LUABIN -b $i -n $mod_name objs/${obj_name}
done
fi
$LUABIN -b ${MODNAME}.lua -n "${MODNAME}" objs/${MODNAME}.o
cd objs
gcc -shared -o ../../so/${MODNAME}.so *.o
cd ..
done
cd ../../
rm -rf scripts/modules
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。