From 6328541c79f98a327cc9bae7db2944fc731eb0c5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 4 Aug 2025 07:13:31 +0000 Subject: [PATCH] dev-python/cffi: Sync with Gentoo It's from Gentoo commit d1512d55b4b0a454045c6af4bb5df6bb72e0fb1c. --- .../portage-stable/dev-python/cffi/Manifest | 1 + .../dev-python/cffi/cffi-2.0.0_beta1.ebuild | 70 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0_beta1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cffi/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/cffi/Manifest index 39184736f5..39fa548c09 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cffi/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/cffi/Manifest @@ -1 +1,2 @@ DIST cffi-1.17.1.tar.gz 516621 BLAKE2B 902844a14c0765ada6adf5054a9462a195b49b2ea4d7441deeff97dd6d9209accd29257697002ee1bad7e143ebf983a2d98077b17e08b060dd1ee75dc682e3d8 SHA512 907129891d56351ca5cb885aae62334ad432321826d6eddfaa32195b4c7b7689a80333e6d14d0aab479a646aba148b9852c0815b80344dfffa4f183a5e74372c +DIST cffi-2.0.0b1.tar.gz 521625 BLAKE2B a62b15652e02ed62ce33cc92f6bfd4454a81a6a7c3fb84cc048fbf8cc39325af09c19f5c2a2f1e6c80063e9fc8ae6537d1b917a01f15e8e56c2bb847bd79bfac SHA512 974f724a4c819f0a32da38a7209c6f54e63810817794bab286e8721bab6c59ce50c2c0992c828af54088ff8f1dec40480ffe37155d979cadc26c79cdc6b78f54 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0_beta1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0_beta1.ebuild new file mode 100644 index 0000000000..1f850d13ea --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0_beta1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +# DO NOT ADD pypy to PYTHON_COMPAT +# pypy bundles a modified version of cffi. Use python_gen_cond_dep instead. +PYTHON_COMPAT=( python3_{11..14} python3_14t ) + +inherit distutils-r1 toolchain-funcs pypi + +DESCRIPTION="Foreign Function Interface for Python calling C code" +HOMEPAGE=" + https://cffi.readthedocs.io/ + https://pypi.org/project/cffi/ +" + +LICENSE="MIT" +SLOT="0/${PV}" + +# Needs recent libffi for HPPA fixes +DEPEND=" + >=dev-libs/libffi-3.4.4-r1:= +" +# setuptools as a modern distutils provider +RDEPEND=" + ${DEPEND} + dev-python/pycparser[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + virtual/pkgconfig + test? ( + dev-python/py[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx doc/source +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}"/cffi-1.14.0-darwin-no-brew.patch +) + +src_prepare() { + if [[ ${CHOST} == *darwin* ]] ; then + # Don't obsessively try to find libffi + sed -i -e "s/.*\-iwithsysroot\/usr\/include\/ffi.*/\tpass/" setup.py || die + fi + distutils-r1_src_prepare +} + +src_configure() { + tc-export PKG_CONFIG +} + +python_test() { + local EPYTEST_IGNORE=( + # these tests call pip + testing/cffi0/test_zintegration.py + ) + + "${EPYTHON}" -c "import _cffi_backend as backend" || die + epytest src/c testing +}