Files
guru/dev-python/lupa/lupa-2.8.ebuild
T
David Roman 59f98117e4 */*: disable py3.12 && remove dead impls
Disable py3.12 except for packages which only had py3.12 in PYTHON_COMPAT

Signed-off-by: David Roman <stkw0@disroot.org>
Part-of: https://codeberg.org/gentoo/guru/pulls/161
2026-11-03 14:42:49 +01:00

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_{13..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
}