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

dev-lua/lpeg: migrate to lua eclass

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

 dev-lua/lpeg/lpeg-1.0.2-r100.ebuild | 77 +++++++++++++++++++++++++++++++++++++
 profiles/package.mask               |  1 +
 2 files changed, 78 insertions(+)

diff --git a/dev-lua/lpeg/lpeg-1.0.2-r100.ebuild 
b/dev-lua/lpeg/lpeg-1.0.2-r100.ebuild
new file mode 100644
index 00000000000..a6d27c94e39
--- /dev/null
+++ b/dev-lua/lpeg/lpeg-1.0.2-r100.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..3} luajit )
+
+inherit lua flag-o-matic toolchain-funcs
+
+DESCRIPTION="Parsing Expression Grammars for Lua"
+HOMEPAGE="http://www.inf.puc-rio.br/~roberto/lpeg/";
+SRC_URI="http://www.inf.puc-rio.br/~roberto/${PN}/${P}.tar.gz";
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug test"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="${LUA_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+HTML_DOCS=( "lpeg.html" "lpeg-128.gif" "re.html" )
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.2-makefile.patch" )
+
+src_prepare() {
+       default
+
+       use debug && append-cflags -DLPEG_DEBUG
+}
+
+lua_src_compile() {
+       # Clean project to compile it for every lua slot
+       emake clean
+
+       local myemakeargs=(
+               CC="$(tc-getCC)"
+               LUADIR="$(lua_get_include_dir)"
+       )
+
+       emake "${myemakeargs[@]}"
+
+       # Copy module to match the choosen LUA implementation
+       cp "lpeg.so" "lpeg-${ELUA}.so" || die
+}
+
+src_compile() {
+       lua_foreach_impl lua_src_compile
+}
+
+lua_src_test() {
+       LUA_CPATH="${S}/lpeg-${ELUA}.so" ${ELUA} test.lua || die
+}
+
+src_test() {
+       lua_foreach_impl lua_src_test
+}
+
+lua_src_install() {
+       # Use correct module for the choosen LUA implementation
+       cp "lpeg-${ELUA}.so" "lpeg.so" || die
+
+       exeinto $(lua_get_cmod_dir)
+       doexe lpeg.so
+
+       insinto $(lua_get_lmod_dir)
+       doins re.lua
+}
+
+src_install() {
+       lua_foreach_impl lua_src_install
+
+       einstalldocs
+}

diff --git a/profiles/package.mask b/profiles/package.mask
index b8ba6285bc4..e2cfd555d13 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -508,6 +508,7 @@ dev-lua/luacrypto
 =dev-libs/efl-1.25.1-r10
 >=dev-lua/busted-2.0.0-r100
 >=dev-lua/dkjson-2.5-r100
+>=dev-lua/lpeg-1.0.2-r100
 >=dev-lua/lua-bit32-5.3.5-r100
 >=dev-lua/lua-zlib-1.2-r100
 >=dev-lua/luadbi-0.7.2-r100

Reply via email to