mirror of
https://github.com/gentoo-mirror/guru.git
synced 2025-04-20 23:46:14 -04:00
77 lines
2.2 KiB
Bash
77 lines
2.2 KiB
Bash
# Copyright 1999-2021 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
PYTHON_COMPAT=( python3_{8..10} )
|
|
inherit distutils-r1
|
|
|
|
DESCRIPTION="Hunter is a flexible code tracing toolkit"
|
|
HOMEPAGE="
|
|
https://github.com/ionelmc/python-hunter
|
|
https://pypi.org/project/hunter/
|
|
"
|
|
SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
S="${WORKDIR}/python-${P}"
|
|
LICENSE="BSD-2"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64 ~x86"
|
|
|
|
RDEPEND="dev-python/colorama[${PYTHON_USEDEP}]"
|
|
DEPEND="dev-python/cython[${PYTHON_USEDEP}]"
|
|
BDEPEND="
|
|
>=dev-python/setuptools_scm-3.3.1[${PYTHON_USEDEP}]
|
|
test? (
|
|
dev-python/aspectlib[${PYTHON_USEDEP}]
|
|
dev-python/ipdb[${PYTHON_USEDEP}]
|
|
dev-python/manhole[${PYTHON_USEDEP}]
|
|
dev-python/process-tests[${PYTHON_USEDEP}]
|
|
dev-python/pytest-benchmark[${PYTHON_USEDEP}]
|
|
dev-python/six[${PYTHON_USEDEP}]
|
|
)
|
|
"
|
|
|
|
DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
|
|
PATCHES=( "${FILESDIR}/remove-setuptools_scm-upper-constraint.patch" )
|
|
|
|
distutils_enable_tests pytest
|
|
distutils_enable_sphinx docs ">=dev-python/sphinx-py3doc-enhanced-theme-2.3.2"
|
|
|
|
python_compile() {
|
|
# native extension build fails with python3.10
|
|
# https://github.com/ionelmc/python-hunter/issues/104
|
|
if [[ ${EPYTHON} == python3.10 ]]; then
|
|
SETUPPY_NOEXT="yes" distutils-r1_python_compile
|
|
return
|
|
fi
|
|
|
|
distutils-r1_python_compile
|
|
if use test; then
|
|
"${EPYTHON}" tests/setup.py build_ext --force --inplace || die
|
|
fi
|
|
}
|
|
|
|
python_test() {
|
|
local PUREPYTHONHUNTER
|
|
local -x PYTHONPATH="${S}/tests:${BUILD_DIR}/lib:${PYTHONPATH}"
|
|
local epytest_args=(
|
|
--deselect tests/test_remote.py::test_gdb
|
|
--deselect tests/test_remote.py::test_gdb_clean_exit
|
|
--deselect tests/test_remote.py::test_manhole
|
|
--deselect tests/test_remote.py::test_manhole_clean_exit
|
|
)
|
|
|
|
if [[ ${EPYTHON} == python3.10 ]]; then
|
|
epytest_args+=(
|
|
--deselect tests/test_cookbook.py::test_probe
|
|
--deselect tests/test_tracer.py::test_perf_filter[pure]
|
|
--deselect tests/test_tracer.py::test_perf_stdlib[pure]
|
|
--deselect tests/test_tracer.py::test_perf_actions[pure]
|
|
--deselect tests/test_tracer.py::test_proper_backend
|
|
)
|
|
PUREPYTHONHUNTER="yes"
|
|
fi
|
|
|
|
epytest "${epytest_args[@]}"
|
|
}
|