commit: 6fddd537e7d3ed35e05710098924bb62287c6004 Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org> AuthorDate: Sat Nov 28 15:54:26 2020 +0000 Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org> CommitDate: Sat Nov 28 16:16:38 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6fddd537
dev-lua/luasystem: migrate to lua eclass Closes: https://bugs.gentoo.org/752939 Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org> dev-lua/luasystem/luasystem-0.2.1_p0-r100.ebuild | 84 ++++++++++++++++++++++++ dev-lua/luasystem/metadata.xml | 6 +- profiles/package.mask | 1 + 3 files changed, 90 insertions(+), 1 deletion(-) diff --git a/dev-lua/luasystem/luasystem-0.2.1_p0-r100.ebuild b/dev-lua/luasystem/luasystem-0.2.1_p0-r100.ebuild new file mode 100644 index 00000000000..8e797c2009a --- /dev/null +++ b/dev-lua/luasystem/luasystem-0.2.1_p0-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..3} luajit ) +MY_PV="${PV/_p/-}" + +inherit lua toolchain-funcs + +DESCRIPTION="Platform independent system calls for Lua" +HOMEPAGE="https://github.com/o-lim/luasystem/" +SRC_URI="https://github.com/o-lim/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${MY_PV}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND="${LUA_DEPS}" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + test? ( + >=dev-lua/busted-2.0.0-r100 + ${RDEPEND} + ) +" + +PATCHES=( "${FILESDIR}"/${P}-fix-makefile.patch ) + +lua_src_test() { + busted --lua=${ELUA} || die +} + +src_test() { + lua_foreach_impl lua_src_test +} + +lua_src_compile() { + # Clean project, to compile it for every lua slot + emake clean + + local myemakeargs=( + "CC=$(tc-getCC)" + "LD=$(tc-getCC)" + "LUAINC_linux=$(lua_get_include_dir)" + "MYCFLAGS=${CFLAGS}" + "MYLDFLAGS=${LDFLAGS}" + ) + + emake "${myemakeargs[@]}" linux + + # Copy module to match the choosen LUA implementation + cp "src/core.so" "src/core-${ELUA}.so" || die +} + +src_compile() { + lua_foreach_impl lua_src_compile +} + +lua_src_install () { + # Use correct module for the choosen LUA implementation + cp "src/core-${ELUA}.so" "src/core.so" || die + + local emakeargs=( + "INSTALL_TOP_CDIR=${ED}/$(lua_get_cmod_dir)" + "INSTALL_TOP_LDIR=${ED}/$(lua_get_lmod_dir)" + "LUA_INC=${ED}/$(lua_get_include_dir)" + ) + + emake "${emakeargs[@]}" install + + insinto $(lua_get_lmod_dir)/system + doins system/init.lua +} + +src_install() { + lua_foreach_impl lua_src_install + + einstalldocs +} diff --git a/dev-lua/luasystem/metadata.xml b/dev-lua/luasystem/metadata.xml index 009738e31d6..e98cabab81d 100644 --- a/dev-lua/luasystem/metadata.xml +++ b/dev-lua/luasystem/metadata.xml @@ -5,7 +5,11 @@ <email>[email protected]</email> <name>William Hubbs</name> </maintainer> - <longdescription lang="en"> + <maintainer type="person"> + <email>[email protected]</email> + <name>Conrad Kostecki</name> + </maintainer> + <longdescription> luasystem is a platform independent system call library for Lua. Supports Lua >= 5.1 and luajit >= 2.0.0. </longdescription> diff --git a/profiles/package.mask b/profiles/package.mask index 7adb1093bf3..71d18cdfa40 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -510,6 +510,7 @@ dev-lua/luacrypto >=dev-lua/luafilesystem-1.8.0-r100 >=dev-lua/luasec-0.9-r100 >=dev-lua/luasocket-3.0_rc1_p20200328-r100 +>=dev-lua/luasystem-0.2.1_p0-r100 >=dev-lua/lutok-0.4-r10 >=dev-lua/luv-1.32.0.0-r100 >=dev-lua/mediator_lua-1.1.2_p0-r100
