blob: 1a42cdcdd0d1fe11cdf6921fa6455da74dd05a45 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
SUMMARY = "The Cython language"
HOMEPAGE = "https://pypi.org/project/Cython/"
DESCRIPTION = "Cython is a language specially designed for writing Python extension modules. \
It's designed to bridge the gap between the nice, high-level, easy-to-use world of Python \
and the messy, low-level world of C."
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c"
SRC_URI[sha256sum] = "7146dd2af8682b4ca61331851e6aebce9fe5158e75300343f80c07ca80b1faff"
inherit pypi setuptools3
UPSTREAM_CHECK_PYPI_PACKAGE = "Cython"
# 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() {
# Make sure we use /usr/bin/env python3
for PYTHSCRIPT in `grep -rIl '^#!.*python' ${D}`; do
sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT
done
# remove build paths from generated sources
sed -i -e 's|${WORKDIR}||' ${S}/Cython/*.c ${S}/Cython/Compiler/*.c ${S}/Cython/Plex/*.c
# 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
}
RDEPENDS:${PN}:class-target += "\
python3-misc \
python3-netserver \
python3-pkgutil \
python3-pyparsing \
python3-setuptools \
python3-shell \
python3-xml \
"
RDEPENDS:${PN}:class-nativesdk += "\
nativesdk-python3-misc \
nativesdk-python3-netserver \
nativesdk-python3-pkgutil \
nativesdk-python3-pyparsing \
nativesdk-python3-setuptools \
nativesdk-python3-shell \
nativesdk-python3-xml \
"
BBCLASSEXTEND = "native nativesdk"
|