mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-08 06:32:59 -04:00
74 lines
1.4 KiB
Bash
74 lines
1.4 KiB
Bash
# Copyright 2026 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
DISTUTILS_EXT=1
|
|
DISTUTILS_USE_PEP517=setuptools
|
|
LUA_COMPAT=( lua5-{1..4} luajit )
|
|
PYTHON_COMPAT=( python3_{12..15} )
|
|
|
|
inherit distutils-r1 lua pypi
|
|
|
|
DESCRIPTION="Python wrapper around Lua and LuaJIT"
|
|
HOMEPAGE="
|
|
https://github.com/scoder/lupa
|
|
https://pypi.org/project/lupa/
|
|
"
|
|
|
|
LICENSE="MIT"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64 ~arm64"
|
|
REQUIRED_USE="${LUA_REQUIRED_USE} ${PYTHON_REQUIRED_USE}"
|
|
|
|
DEPEND="${LUA_DEPS}"
|
|
RDEPEND="${DEPEND}"
|
|
BDEPEND="
|
|
>=dev-python/cython-3.2.4[${PYTHON_USEDEP}]
|
|
virtual/pkgconfig
|
|
"
|
|
|
|
src_prepare() {
|
|
distutils-r1_src_prepare
|
|
|
|
mv lupa/tests . || die
|
|
sed -i "s/lupa.tests/tests/g" tests/test.py || die
|
|
}
|
|
|
|
python_configure_all() {
|
|
DISTUTILS_ARGS=(
|
|
--no-bundle
|
|
--with-cython
|
|
)
|
|
|
|
local -a config_items
|
|
_build_config_items() {
|
|
local incdir=$(lua_get_include_dir "${ELUA}")
|
|
local libpath=$(lua_get_shared_lib "${ELUA}")
|
|
local modname="${ELUA/./}"
|
|
|
|
config_items+=(
|
|
"dict(extra_objects=['${libpath}'], include_dirs=['${incdir}'], libversion='${modname}')"
|
|
)
|
|
}
|
|
lua_foreach_impl _build_config_items
|
|
|
|
local IFS=","
|
|
local configs="[${config_items[*]}]"
|
|
|
|
sed -i "s|^configs = get_lua_build_from_arguments()|configs = ${configs}|" setup.py || die
|
|
}
|
|
|
|
EPYTEST_PLUGINS=()
|
|
distutils_enable_tests pytest
|
|
|
|
python_test() {
|
|
EPYTEST_DESELECT=(
|
|
# not a test case
|
|
tests/test.py::TestOverflowMixin
|
|
)
|
|
|
|
rm -rf lupa || die
|
|
epytest tests/test.py
|
|
}
|