summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorConrad Kostecki <conikost@gentoo.org>2024-02-09 00:41:34 +0100
committerConrad Kostecki <conikost@gentoo.org>2024-02-09 00:42:47 +0100
commit8ee6b2243e11a612efd6e650d0ecb84bd1d19f9c (patch)
treea979a14812b1b57d6b4e714518790c731c92aa0f /dev-lua
parentdev-lua/mpack: drop 1.0.10 (diff)
downloadgentoo-8ee6b2243e11a612efd6e650d0ecb84bd1d19f9c.tar.gz
gentoo-8ee6b2243e11a612efd6e650d0ecb84bd1d19f9c.tar.bz2
gentoo-8ee6b2243e11a612efd6e650d0ecb84bd1d19f9c.zip
dev-lua/mpack: add 1.0.12
Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
Diffstat (limited to 'dev-lua')
-rw-r--r--dev-lua/mpack/Manifest1
-rw-r--r--dev-lua/mpack/mpack-1.0.12.ebuild116
2 files changed, 117 insertions, 0 deletions
diff --git a/dev-lua/mpack/Manifest b/dev-lua/mpack/Manifest
index af1dc7cb3536..0d98ae862c6e 100644
--- a/dev-lua/mpack/Manifest
+++ b/dev-lua/mpack/Manifest
@@ -1 +1,2 @@
DIST mpack-1.0.11.tar.gz 16305 BLAKE2B e076043259692dc1aecbb62498cd44e523a44e40c265adeb3edc088f7b81a9e5892b13bbb730107fe64804be684c15510e8aea603abdafc2003c659e6bff9143 SHA512 2bd76e3d12928cb51f475d58e2c8b749f4b2b8b45f72296f6dd46c13b31fee80e0c4859de9332a7232842f511e4a53d30b43aad563980fd026d04fd65fb57b7e
+DIST mpack-1.0.12.tar.gz 16524 BLAKE2B 7b2d5dbdbb72f6d792e366259ef5ba080872417b558ff8d4fd0877f5a9fbeb8794d6e1657034b74f0dffe5e1c03c0339060eebf9e85370619938cc7b8f03c540 SHA512 7df730ba98c9530d948252f2efa70cb6d4f65b0fbc3443de2239145e9ce1aa12dfa8acbbfd4b87edf19a529e3595c7a8955e00235f69aa3535d353f7f9a1c7d0
diff --git a/dev-lua/mpack/mpack-1.0.12.ebuild b/dev-lua/mpack/mpack-1.0.12.ebuild
new file mode 100644
index 000000000000..e724b86a46b8
--- /dev/null
+++ b/dev-lua/mpack/mpack-1.0.12.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua toolchain-funcs
+
+MY_PN="lib${PN}-lua"
+
+DESCRIPTION="Lua bindings for libmpack"
+HOMEPAGE="https://github.com/libmpack/libmpack-lua/"
+SRC_URI="https://github.com/${MY_PN/-lua/}/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="test"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/libmpack
+ ${LUA_DEPS}
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-lua/busted[${LUA_USEDEP}]
+ dev-lua/lua_cliargs[${LUA_USEDEP}]
+ ${RDEPEND}
+ )
+"
+
+src_prepare() {
+ default
+
+ lua_copy_sources
+}
+
+lua_src_compile() {
+ pushd "${BUILD_DIR}" || die
+
+ local myemakeargs=(
+ "CC=$(tc-getCC)"
+ "LUA_INCLUDE=$(lua_get_CFLAGS)"
+ "LUA_LIB="
+ "USE_SYSTEM_MPACK=yes"
+ "USE_SYSTEM_LUA=yes"
+ )
+
+ emake "${myemakeargs[@]}"
+
+ popd
+}
+
+src_compile() {
+ lua_foreach_impl lua_src_compile
+}
+
+lua_src_test() {
+ pushd "${BUILD_DIR}" || die
+
+ # "[ FAILED ] test.lua @ 279: mpack should not leak memory"
+ # It doesn't seem upstream actually support LuaJIT so were this up to me
+ # I would drop it from LUA_COMPAT, unfortunately there are packages in the
+ # tree which currently expect it to be supported.
+ if [[ ${ELUA} == "luajit" ]]; then
+ ewarn "Not running tests under ${ELUA} because they are known to fail"
+ return
+ fi
+
+ busted --lua="${ELUA}" test.lua || die
+
+ popd
+}
+
+src_test() {
+ lua_foreach_impl lua_src_test
+}
+
+lua_src_install() {
+ pushd "${BUILD_DIR}" || die
+
+ local installdir="$(lua_get_cmod_dir)"
+ local myemakeargs=(
+ "DESTDIR=${ED}"
+ "LUA_CMOD_INSTALLDIR=${installdir#$EPREFIX}"
+ "USE_SYSTEM_MPACK=yes"
+ "USE_SYSTEM_LUA=yes"
+ )
+
+ emake "${myemakeargs[@]}" install
+
+ popd
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ local luav=$(lua_get_version)
+ # we only want the major version (e.g. 5.1)
+ local luamv=${luav:0:3}
+ local file="lua/${luamv}/mpack.so"
+ install_name_tool \
+ -id "${EPREFIX}/usr/$(get_libdir)/${file}" \
+ "${ED}/usr/$(get_libdir)/${file}" \
+ || die "Failed to adjust install_name"
+ fi
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+
+ einstalldocs
+}