# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

CRATES="
	adler2@2.0.1
	arrayref@0.3.9
	arrayvec@0.7.6
	autocfg@1.5.0
	base64@0.22.1
	bitflags@1.3.2
	bitflags@2.11.1
	bytemuck@1.25.0
	byteorder-lite@0.1.0
	cfg-if@1.0.4
	color_quant@1.1.0
	core_maths@0.1.1
	crc32fast@1.5.0
	data-url@0.3.2
	euclid@0.22.14
	fdeflate@0.3.7
	flate2@1.1.9
	float-cmp@0.9.0
	fontconfig-parser@0.5.8
	fontdb@0.23.0
	gif@0.14.2
	heck@0.5.0
	image-webp@0.2.4
	imagesize@0.14.0
	kurbo@0.13.0
	libc@0.2.186
	libm@0.2.16
	log@0.4.29
	memchr@2.8.0
	memmap2@0.9.10
	miniz_oxide@0.8.9
	num-traits@0.2.19
	once_cell@1.21.4
	pico-args@0.5.0
	png@0.17.16
	portable-atomic@1.13.1
	proc-macro2@1.0.106
	pyo3-build-config@0.28.3
	pyo3-ffi@0.28.3
	pyo3-macros-backend@0.28.3
	pyo3-macros@0.28.3
	pyo3@0.28.3
	quick-error@2.0.1
	quote@1.0.45
	resvg@0.46.0
	rgb@0.8.53
	roxmltree@0.20.0
	roxmltree@0.21.1
	rustybuzz@0.20.1
	simd-adler32@0.3.9
	simplecss@0.2.2
	siphasher@1.0.3
	slotmap@1.1.1
	smallvec@1.15.1
	strict-num@0.1.1
	svgtypes@0.16.1
	syn@2.0.117
	target-lexicon@0.13.5
	tiny-skia-path@0.11.4
	tiny-skia@0.11.4
	tinyvec@1.11.0
	tinyvec_macros@0.1.1
	ttf-parser@0.25.1
	unicode-bidi-mirroring@0.4.0
	unicode-bidi@0.3.18
	unicode-ccc@0.4.0
	unicode-ident@1.0.24
	unicode-properties@0.1.4
	unicode-script@0.5.8
	unicode-vo@0.1.0
	usvg@0.46.0
	version_check@0.9.5
	weezl@0.1.12
	xmlwriter@0.1.0
	zune-core@0.5.1
	zune-jpeg@0.5.15
"

PYTHON_COMPAT=( python3_{12..14} )
DISTUTILS_USE_PEP517=maturin
PYPI_NO_NORMALIZE=1
PYPI_PN="resvg_py"
RUST_MIN_VER="1.80.0"

inherit cargo distutils-r1 pypi

DESCRIPTION="Python bindings for resvg, a high-performance SVG rendering library written in Rust"
HOMEPAGE="https://pypi.org/project/resvg-py/
          https://github.com/baseplate-admin/resvg-py"  # Primary active repo; alternative forks exist
SRC_URI+="
	${CARGO_CRATE_URIS}
"

LICENSE="MPL-2.0"  # Inherited from resvg
SLOT="0"
KEYWORDS="~amd64 ~arm64"  # Prebuilt wheels available for common arches; add others as needed

RDEPEND=""

BDEPEND="
	${RDEPEND}
	>=dev-util/maturin-1.0[${PYTHON_USEDEP}]
"

# The package is built with maturin (PyO3), bundling the Rust library → no system Rust libs needed at runtime
# Tests require additional setup; disabled by default to avoid failures on minimal systems
RESTRICT="test"

distutils_enable_tests pytest