commit:     3d56e6acaf65ce4eda1e7fa1628a16279831ccf9
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 13 22:06:53 2025 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Nov 13 22:06:53 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d56e6ac

dev-lua/mpack: add 1.0.13

Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 dev-lua/mpack/Manifest            |   1 +
 dev-lua/mpack/mpack-1.0.13.ebuild | 117 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 118 insertions(+)

diff --git a/dev-lua/mpack/Manifest b/dev-lua/mpack/Manifest
index 3dc9c54148b4..0dd93807f843 100644
--- a/dev-lua/mpack/Manifest
+++ b/dev-lua/mpack/Manifest
@@ -1 +1,2 @@
 DIST mpack-1.0.12.tar.gz 16524 BLAKE2B 
7b2d5dbdbb72f6d792e366259ef5ba080872417b558ff8d4fd0877f5a9fbeb8794d6e1657034b74f0dffe5e1c03c0339060eebf9e85370619938cc7b8f03c540
 SHA512 
7df730ba98c9530d948252f2efa70cb6d4f65b0fbc3443de2239145e9ce1aa12dfa8acbbfd4b87edf19a529e3595c7a8955e00235f69aa3535d353f7f9a1c7d0
+DIST mpack-1.0.13.tar.gz 16556 BLAKE2B 
e069ad14340a3ca6d79bfbff3efa3b86907f503a5e2f529333fee161aad07ad397e42e8f84af335d5285e8d54ddf83540ea025c623135634480a8eecc8170211
 SHA512 
37397ac4508a91b0639a7a0844ade3e3dc6aecc77f8061a9275cbda8bbb1df3eb8dab4ba3d48048c6050897b149830e1d9f3511fa2f52c398acf42ffc8770d10

diff --git a/dev-lua/mpack/mpack-1.0.13.ebuild 
b/dev-lua/mpack/mpack-1.0.13.ebuild
new file mode 100644
index 000000000000..97ba04af808f
--- /dev/null
+++ b/dev-lua/mpack/mpack-1.0.13.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2025 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 ~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() {
+       tc-export PKG_CONFIG
+       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
+}

Reply via email to