aboutsummaryrefslogtreecommitdiff
blob: 898a0f9ca88ff6536a901c16eab4dbbfb5b84b52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )

inherit distutils-r1

DESCRIPTION="A cross platform utility library for ModernGL"
HOMEPAGE="https://github.com/adamlwgriffiths/pyrr https://pypi.org/project/pyrr"
SRC_URI="https://github.com/adamlwgriffiths/pyrr/archive/refs/tags/${PV}.tar.gz -> v${PV}.gh.tar.gz"
S="${WORKDIR}/Pyrr-${PV}"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc"

BDEPEND="
	dev-python/multipledispatch[${PYTHON_USEDEP}]
	dev-python/numpy[${PYTHON_USEDEP}]
	doc? (
		dev-python/sphinx[${PYTHON_USEDEP}]
	)
"
DEPEND="${BDEPEND}"

python_compile() {
	distutils-r1_python_compile
	if use doc; then
		find "${S}/docs" -type f -exec sed -i 's/sphinx\.ext\.pngmath/sphinx\.ext\.imgmath/g' {} \;
		emake man -C docs
	fi
}

python_install() {
	distutils-r1_python_install
	use doc && doman "${S}/docs/build/man/pyrr.1"
}

distutils_enable_tests pytest
python_test() {
	local EPYTEST_DESELECT="tests/test_matrix44.py::test_matrix44::test_create_perspective_projection_matrix_dtype"
	find "${S}/tests" -iname "*.py" -exec sed -i \
		-e 's/np\.float/float/g' \
		-e 's/float32/np\.float32/g' \
		-e 's/np\.int/int/g' \
		-e 's/int16/np\.int16/g' \
		{} \;
	epytest "${S}/tests" || die "Tests failed with ${EPYTHON}"
}