Skip to content

Luajit bundle and modules

Mikhail Kochegarov edited this page Dec 26, 2022 · 1 revision

Modules

All Lua modules (.lua, .so, .dll, .dylib) lays in separate repositories which all updated in a way to be compatible with luapower distribution.

All modules can be pulled from repository by using mgit (multigit) from one special meta-repository:

git clone git@github.com:vxcontrol/soldr-modules.git
cd soldr-modules

git submodule init
git submodule update

cd luapower
./mgit clone git@gitlab.ptsecurity.com:edr/vxlua/luapower-repos.git
./mgit clone-all

After that luapower folder will contain all .lua modules, subfolder "bin/" would store prebuilt luajit interpreter and dynamic libraries (.so/.dll/.dylib), "csrc/" - source code of the libraries along with their custom build scripts.

Bundle

It is possible to build one bundle which will include both interpreter and all libraries linked for simpler distribution. Such a bundle can be built by using the following helper scripts:

cd soldr-modules/luapower
./mgit build-bundle [all|mingw32|mingw64|linux32|lunux64|osx64]

To simplify building of the bundle for all supported OSes and architectures, you can use cross-build docker image:

cd soldr-modules docker run --rm -v $(pwd)/luapower:/luapower -w=/luapower -it vxcontrol/vxbuild-cross ./mgit build-bundle all

As a result of this call in build/ folder, you will find bundle builds.

Clone this wiki locally