From 13114d0f9352531e5d7ebed45cd3f679407c61d9 Mon Sep 17 00:00:00 2001 From: Francois Perrad Date: Sun, 21 Mar 2021 16:49:03 +0100 Subject: [PATCH] package/lua-cffi: new package Signed-off-by: Francois Perrad Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- package/Config.in | 1 + package/lua-cffi/Config.in | 19 +++++++++++++++++++ package/lua-cffi/lua-cffi.hash | 3 +++ package/lua-cffi/lua-cffi.mk | 14 ++++++++++++++ .../testing/tests/package/test_lua_cffi.py | 14 ++++++++++++++ 5 files changed, 51 insertions(+) create mode 100644 package/lua-cffi/Config.in create mode 100644 package/lua-cffi/lua-cffi.hash create mode 100644 package/lua-cffi/lua-cffi.mk create mode 100644 support/testing/tests/package/test_lua_cffi.py diff --git a/package/Config.in b/package/Config.in index 43ce9013c6..d631ed784a 100644 --- a/package/Config.in +++ b/package/Config.in @@ -677,6 +677,7 @@ menu "Lua libraries/modules" source "package/lua-basexx/Config.in" source "package/lua-binaryheap/Config.in" source "package/lua-bit32/Config.in" + source "package/lua-cffi/Config.in" source "package/lua-cjson/Config.in" source "package/lua-coat/Config.in" source "package/lua-coatpersistent/Config.in" diff --git a/package/lua-cffi/Config.in b/package/lua-cffi/Config.in new file mode 100644 index 0000000000..64a36e1de4 --- /dev/null +++ b/package/lua-cffi/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_LUA_CFFI + bool "lua-cffi" + depends on !BR2_PACKAGE_LUAJIT + depends on BR2_TOOLCHAIN_HAS_THREADS # libffi + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_LIBFFI + help + This is a portable C FFI for Lua, based on libffi and aiming + to be mostly compatible with LuaJIT FFI, but written from + scratch. + + https://github.com/q66/cffi-lua + +comment "lua-cffi needs a toolchain w/ C++, gcc >= 4.8, threads" + depends on !BR2_PACKAGE_LUAJIT + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \ + !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/lua-cffi/lua-cffi.hash b/package/lua-cffi/lua-cffi.hash new file mode 100644 index 0000000000..a532c6c7b3 --- /dev/null +++ b/package/lua-cffi/lua-cffi.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 c30080d6309167f86d1a96d3ee33f33ef52e884052b7feac140b8c52db10ad7a lua-cffi-0.2.1.tar.gz +sha256 f5653a4d5864a3920ea1e07dacfd646067314be647598f0acaaf685beaa2e396 COPYING.md diff --git a/package/lua-cffi/lua-cffi.mk b/package/lua-cffi/lua-cffi.mk new file mode 100644 index 0000000000..07d84ad5fa --- /dev/null +++ b/package/lua-cffi/lua-cffi.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# lua-cffi +# +################################################################################ + +LUA_CFFI_VERSION=0.2.1 +LUA_CFFI_SITE = $(call github,q66,cffi-lua,v$(LUA_CFFI_VERSION)) +LUA_CFFI_LICENSE = MIT +LUA_CFFI_LICENSE_FILES = COPYING.md + +LUA_CFFI_DEPENDENCIES = libffi lua + +$(eval $(meson-package)) diff --git a/support/testing/tests/package/test_lua_cffi.py b/support/testing/tests/package/test_lua_cffi.py new file mode 100644 index 0000000000..7f56eef566 --- /dev/null +++ b/support/testing/tests/package/test_lua_cffi.py @@ -0,0 +1,14 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaCffi(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_CFFI=y + """ + + def test_run(self): + self.login() + self.module_test("cffi") +