commit:     c5bec926988c2fe7b607b43b97d3934a95f1fdf1
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 28 23:24:37 2020 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sat Nov 28 23:25:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5bec926

dev-lua/LuaBitOp: migrate to lua eclass

Closes: https://bugs.gentoo.org/752600
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 dev-lua/LuaBitOp/LuaBitOp-1.0.2-r100.ebuild | 84 +++++++++++++++++++++++++++++
 dev-lua/LuaBitOp/metadata.xml               |  4 ++
 profiles/package.mask                       |  1 +
 3 files changed, 89 insertions(+)

diff --git a/dev-lua/LuaBitOp/LuaBitOp-1.0.2-r100.ebuild 
b/dev-lua/LuaBitOp/LuaBitOp-1.0.2-r100.ebuild
new file mode 100644
index 00000000000..c7fc464de59
--- /dev/null
+++ b/dev-lua/LuaBitOp/LuaBitOp-1.0.2-r100.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..2} )
+
+inherit lua multilib-minimal toolchain-funcs
+
+DESCRIPTION="Bit Operations Library for the Lua Programming Language"
+HOMEPAGE="http://bitop.luajit.org";
+SRC_URI="http://bitop.luajit.org/download/${P}.tar.gz";
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="${LUA_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+HTML_DOCS=( "doc/." )
+
+src_prepare() {
+       default
+
+       multilib_copy_sources
+}
+
+lua_multilib_src_compile() {
+       # Clean project, to compile it for every lua slot
+       emake clean
+
+       local myemakeargs=(
+               "CC=$(tc-getCC)"
+               "CCOPT="
+               "INCLUDES=$(lua_get_CFLAGS)"
+       )
+
+       emake "${myemakeargs[@]}" all
+
+       # Copy module to match the choosen LUA implementation
+       cp "bit.so" "${S}/bit-${ELUA}.so" || die
+}
+
+multilib_src_compile() {
+       lua_foreach_impl lua_multilib_src_compile
+}
+
+lua_multilib_src_test() {
+       local mytests=(
+               "bitbench.lua"
+               "bittest.lua"
+               "md5test.lua"
+               "nsievebits.lua"
+       )
+
+       for mytest in ${mytests[@]}; do
+               LUA_CPATH="${S}/bit-${ELUA}.so" ${ELUA} ${mytest}
+       done
+}
+
+multilib_src_test() {
+       multilib_is_native_abi && lua_foreach_impl lua_multilib_src_test
+}
+
+lua_multilib_src_install() {
+       # Use correct module for the choosen LUA implementation
+       cp "${S}/bit-${ELUA}.so" "bit.so" || die
+
+       exeinto $(lua_get_cmod_dir)
+       doexe bit.so
+}
+
+multilib_src_install() {
+       lua_foreach_impl lua_multilib_src_install
+}
+
+multilib_src_install_all() {
+       einstalldocs
+}

diff --git a/dev-lua/LuaBitOp/metadata.xml b/dev-lua/LuaBitOp/metadata.xml
index c36c37139fa..8105c04d111 100644
--- a/dev-lua/LuaBitOp/metadata.xml
+++ b/dev-lua/LuaBitOp/metadata.xml
@@ -5,4 +5,8 @@
                <email>willi...@gentoo.org</email>
                <name>William Hubbs</name>
        </maintainer>
+       <maintainer type="person">
+               <email>conik...@gentoo.org</email>
+               <name>Conrad Kostecki</name>
+       </maintainer>
 </pkgmetadata>

diff --git a/profiles/package.mask b/profiles/package.mask
index 8b8b7b0c759..a884e70e9e5 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -514,6 +514,7 @@ dev-lua/luacrypto
 >=dev-lua/lpeg-1.0.2-r100
 >=dev-lua/lua-bit32-5.3.5-r100
 >=dev-lua/lua-zlib-1.2-r100
+>=dev-lua/LuaBitOp-1.0.2-r100
 >=dev-lua/luadbi-0.7.2-r100
 >=dev-lua/luaevent-0.4.6-r100
 =dev-lua/luaexpat-1.3.0-r100

Reply via email to