mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-06 02:17:34 -08:00
dev-python/pycairo: enable py3.13
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
parent
d40d73bad5
commit
1d92e043e8
30
dev-python/pycairo/files/pycairo-1.26.0-py313.patch
Normal file
30
dev-python/pycairo/files/pycairo-1.26.0-py313.patch
Normal file
@ -0,0 +1,30 @@
|
||||
https://github.com/pygobject/pycairo/pull/366
|
||||
|
||||
From 387e27fa36d29bc8f656656ca8b47e7b4996f4f4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
|
||||
Date: Wed, 29 May 2024 21:25:41 +0200
|
||||
Subject: [PATCH] Avoid invalid PyBUF_READ flag in PyObject_GetBuffer()
|
||||
|
||||
Since Python 3.13, the flag is no longer allowed.
|
||||
|
||||
See https://github.com/python/cpython/pull/114707
|
||||
|
||||
Fixes https://github.com/pygobject/pycairo/issues/365
|
||||
---
|
||||
cairo/surface.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/cairo/surface.c b/cairo/surface.c
|
||||
index 048522c6..f00db8b5 100644
|
||||
--- a/cairo/surface.c
|
||||
+++ b/cairo/surface.c
|
||||
@@ -484,7 +484,7 @@ surface_set_mime_data (PycairoSurface *o, PyObject *args) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
- res = PyObject_GetBuffer (obj, view, PyBUF_READ);
|
||||
+ res = PyObject_GetBuffer (obj, view, PyBUF_SIMPLE);
|
||||
if (res == -1) {
|
||||
PyMem_Free (view);
|
||||
return NULL;
|
||||
|
||||
77
dev-python/pycairo/pycairo-1.26.0-r1.ebuild
Normal file
77
dev-python/pycairo/pycairo-1.26.0-r1.ebuild
Normal file
@ -0,0 +1,77 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..13} pypy3 )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Python bindings for the cairo library"
|
||||
HOMEPAGE="
|
||||
https://www.cairographics.org/pycairo/
|
||||
https://github.com/pygobject/pycairo/
|
||||
https://pypi.org/project/pycairo/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/pygobject/${PN}/releases/download/v${PV}/${P}.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
IUSE="examples"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
test? (
|
||||
dev-python/hypothesis[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
>=x11-libs/cairo-1.15.10[svg(+)]
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/pycairo-1.26.0-py313.patch
|
||||
)
|
||||
|
||||
distutils_enable_sphinx docs \
|
||||
dev-python/sphinx-rtd-theme
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_test() {
|
||||
esetup.py build_tests
|
||||
epytest
|
||||
}
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
|
||||
# we need to pass --root via install command, sigh
|
||||
cat > "${T}/distutils-extra.cfg" <<-EOF || die
|
||||
[install]
|
||||
root = ${D}
|
||||
EOF
|
||||
local -x DIST_EXTRA_CONFIG=${T}/distutils-extra.cfg
|
||||
esetup.py \
|
||||
install_pkgconfig --pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
if use examples; then
|
||||
dodoc -r examples
|
||||
fi
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
insinto /usr/include/pycairo
|
||||
doins cairo/py3cairo.h
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user