diff options
Diffstat (limited to 'repo/lua-mpack')
-rw-r--r-- | repo/lua-mpack/dont-install-busted.patch | 13 | ||||
-rw-r--r-- | repo/lua-mpack/lua-mpack.xibuild | 56 | ||||
-rw-r--r-- | repo/lua-mpack/skip-memleak-test.patch | 20 |
3 files changed, 89 insertions, 0 deletions
diff --git a/repo/lua-mpack/dont-install-busted.patch b/repo/lua-mpack/dont-install-busted.patch new file mode 100644 index 0000000..2acb260 --- /dev/null +++ b/repo/lua-mpack/dont-install-busted.patch @@ -0,0 +1,13 @@ +Fix Makefile to not try to download and install LuaRocks and busted; use +system-provided busted. +--- a/Makefile ++++ b/Makefile +@@ -61,7 +61,7 @@ + depsclean: + rm -rf $(DEPS_DIR) + +-test: $(BUSTED) $(MPACK) ++test: $(MPACK) + $(BUSTED) -o gtest test.lua + + valgrind: $(BUSTED) $(MPACK) diff --git a/repo/lua-mpack/lua-mpack.xibuild b/repo/lua-mpack/lua-mpack.xibuild new file mode 100644 index 0000000..85c5195 --- /dev/null +++ b/repo/lua-mpack/lua-mpack.xibuild @@ -0,0 +1,56 @@ +#!/bin/sh + +MAKEDEPS="make " +DEPS="musl libmpack" + +PKG_VER=1.0.9 +SOURCE=https://github.com/libmpack/libmpack-lua/archive/$PKG_VER.tar.gz +DESC="Libmpack bindings for Lua" +ADDITIONAL=" +dont-install-busted.patch +skip-memleak-test.patch +" + +luaversions="5.1 " + +prepare () { + apply_patches + + for lver in $luaversions; do + tar xf $PKG_VER.tar.gz + mv libmpack-lua-$PKG_VER build-$lver + done + +} + +build () { + for lver in $luaversions; do + echo "building for lua $lver" + make -C build-$lver \ + FETCH=false \ + USE_SYSTEM_LUA=yes \ + USE_SYSTEM_MPACK=yes \ + LUA=lua$lver \ + LUA_IMPL=lua$lver + #LUA_INCLUDE="$(pkg-config --cflags lua$lver)" \ + #LUA_LIB="$(pkg-config --libs lua$lver)" + done + +} + +package () { + for lver in $luaversions; do + echo "building for lua $lver" + local rockdir="$PKG_DEST/usr/lib/luarocks/rocks-$lver/mpack/$PKG_VER-0" + + make -C build-$lver \ + USE_SYSTEM_LUA=yes \ + USE_SYSTEM_MPACK=yes \ + LUA_CMOD_INSTALLDIR="$(pkg-config --variable=INSTALL_CMOD lua$lver)" \ + DESTDIR="$subpkgdir" \ + install || exit 1 + + mkdir -p "$rockdir" + echo 'rock_manifest = {}' > "$rockdir"/rock_manifest + done +} diff --git a/repo/lua-mpack/skip-memleak-test.patch b/repo/lua-mpack/skip-memleak-test.patch new file mode 100644 index 0000000..f89b522 --- /dev/null +++ b/repo/lua-mpack/skip-memleak-test.patch @@ -0,0 +1,20 @@ +This test requires binary to be built in debug mode. +--- a/test.lua ++++ b/test.lua +@@ -276,16 +276,6 @@ + end) + end) + +- it('should not leak memory', function() +- -- get the path to the lua interpreter, taken from +- -- http://stackoverflow.com/a/18304231 +- local i_min = 0 +- while arg[ i_min ] do i_min = i_min - 1 end +- i_min = i_min + 1 +- local res = io.popen(arg[i_min]..' leak_test.lua'):read('*a') +- assert.are_same('ok\n', res) +- end) +- + describe('is_bin option', function() + it('controls if strings are serialized to BIN or STR', function() + local isbin = false |