Files
poky/meta/recipes-devtools/python/python3-cython_3.0.10.bb
Wang Mingyu f9e6ab7fb8 python3-cython: upgrade 3.0.9 -> 3.0.10
Changelog:
==========
* Cython generated incorrect self-casts when directly calling final methods of subtypes.
* Internal C names generated from C function signatures could become too long for MSVC.
* The "noexcept" warnings could be misleading in some cases.
* The "@cython.ufunc" implementation could generate incomplete C code.
* The "libcpp.complex" declarations could result in incorrect C++ code.
* Several tests were adapted to work with both NumPy 1.x and 2.0.
* C compiler warnings when the freelist implementation is disabled (e.g. on PyPy) were fixed.
  It can now be disabled explicitly with the C macro guard "CYTHON_USE_FREELISTS=0".
* Some C macro guards for feature flags were missing from the NOGIL Python configuration.
* Some recently added builtins were unconditionally looked up at module import time
  (if used by user code) that weren't available on all Python versions and could thus
  fail the import.
* A performance hint regarding exported pxd declarations was improved.

(From OE-Core rev: 4c5840c01e40a012fcbdc316cbed817f4b3cf230)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-25 10:06:02 +01:00

38 lines
1.2 KiB
BlitzBasic

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
}