You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.7 KiB
64 lines
1.7 KiB
1 month ago
|
# Copyright 2023-2024 Gentoo Authors
|
||
|
# Distributed under the terms of the GNU General Public License v2
|
||
|
|
||
|
EAPI=8
|
||
|
|
||
|
DISTUTILS_USE_PEP517=hatchling
|
||
|
PYTHON_COMPAT=( pypy3 python3_{10..12} )
|
||
|
|
||
|
inherit distutils-r1 pypi
|
||
|
|
||
|
DESCRIPTION="Build backend for CMake based projects"
|
||
|
HOMEPAGE="
|
||
|
https://github.com/scikit-build/scikit-build-core/
|
||
|
https://pypi.org/project/scikit-build-core/
|
||
|
"
|
||
|
|
||
|
LICENSE="Apache-2.0"
|
||
|
SLOT="0"
|
||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||
|
|
||
|
# we always want [pyproject] extra
|
||
|
RDEPEND="
|
||
|
app-alternatives/ninja
|
||
|
dev-build/cmake
|
||
|
>=dev-python/packaging-21.3[${PYTHON_USEDEP}]
|
||
|
>=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}]
|
||
|
>=dev-python/pyproject-metadata-0.5[${PYTHON_USEDEP}]
|
||
|
$(python_gen_cond_dep '
|
||
|
dev-python/exceptiongroup[${PYTHON_USEDEP}]
|
||
|
>=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
|
||
|
' 3.10)
|
||
|
"
|
||
|
BDEPEND="
|
||
|
dev-python/hatch-vcs[${PYTHON_USEDEP}]
|
||
|
test? (
|
||
|
dev-python/build[${PYTHON_USEDEP}]
|
||
|
>=dev-python/cattrs-22.2.0[${PYTHON_USEDEP}]
|
||
|
dev-python/fastjsonschema[${PYTHON_USEDEP}]
|
||
|
dev-python/pybind11[${PYTHON_USEDEP}]
|
||
|
>=dev-python/pytest-subprocess-1.5[${PYTHON_USEDEP}]
|
||
|
dev-python/setuptools[${PYTHON_USEDEP}]
|
||
|
dev-python/virtualenv[${PYTHON_USEDEP}]
|
||
|
dev-python/wheel[${PYTHON_USEDEP}]
|
||
|
)
|
||
|
"
|
||
|
|
||
|
distutils_enable_tests pytest
|
||
|
|
||
|
python_test() {
|
||
|
local _EPYTEST_DESELECT=(
|
||
|
# TODO / we don't package validate_pyproject anyway
|
||
|
tests/test_schema.py::test_compare_schemas
|
||
|
# setuptools now respects PEP 625
|
||
|
tests/test_setuptools_pep517.py::test_pep517_sdist
|
||
|
)
|
||
|
local EPYTEST_IGNORE=(
|
||
|
# needs unpackaged validate_pyproject
|
||
|
tests/test_schema.py
|
||
|
)
|
||
|
|
||
|
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||
|
epytest -p subprocess -m "not isolated and not network"
|
||
|
}
|