From 5e1bc611d6255d07506eb736e6483a2b2c1773e5 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 5 Jan 2024 14:35:43 +0100 Subject: python3-cython: update 0.29.36 -> 3.0.7 pep517 build backends require cython 3.x when python is at 3.12, so we can't hold this update any longer. There are only a few things in meta-oe and meta that break anymore, and fixes for them are provided at the same time as this patch. License-update: http -> https (From OE-Core rev: 21507a3be23a604259a6a903a7083db54d29487f) Signed-off-by: Alexander Kanavin Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- .../python/python3-cython_3.0.7.bb | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 meta/recipes-devtools/python/python3-cython_3.0.7.bb (limited to 'meta/recipes-devtools/python/python3-cython_3.0.7.bb') diff --git a/meta/recipes-devtools/python/python3-cython_3.0.7.bb b/meta/recipes-devtools/python/python3-cython_3.0.7.bb new file mode 100644 index 0000000000..07638d7ad7 --- /dev/null +++ b/meta/recipes-devtools/python/python3-cython_3.0.7.bb @@ -0,0 +1,37 @@ +inherit setuptools3 +require python-cython.inc + +RDEPENDS:${PN} += "\ + python3-setuptools \ +" + +# running build_ext a second time during install fails, because Python +# would then attempt to import cythonized modules built for the target +# architecture. +SETUPTOOLS_INSTALL_ARGS += "--skip-build" + +do_install:append() { + # rename scripts that would conflict with the Python 2 build of Cython + mv ${D}${bindir}/cython ${D}${bindir}/cython3 + mv ${D}${bindir}/cythonize ${D}${bindir}/cythonize3 + mv ${D}${bindir}/cygdb ${D}${bindir}/cygdb3 +} + +PACKAGESPLITFUNCS =+ "cython_fix_sources" + +cython_fix_sources () { + for f in ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FusedNode.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Scanning.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Visitor.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Actions.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Scanners.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Runtime/refnanny.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Tempita/_tempita.c \ + ${PKGD}${libdir}/${PYTHON_DIR}/site-packages/Cython*/SOURCES.txt; do + if [ -e $f ]; then + sed -i -e 's#${WORKDIR}/Cython-${PV}#${TARGET_DBGSRC_DIR}#g' $f + fi + done +} + -- cgit v1.2.3-54-g00ecf