meta-virtualization/recipes-devtools/python/python-gevent_1.0.1.bb
Jason Wessel a623810bd0 python-gevent: Fix cross compile for ARM
The lack of a proper ability to regenerate configure causes the cross
compile detect logic to fail (shown below).  It is easiest to just
force the cross compile option at configure time.

| configure: error: in `/opt/buildtmp/work/cortexa7t2hf-vfp-neon-wrs-linux-gnueabi/python-gevent/1.0.1-r0/gevent-1.0.1/build/temp.linux-x86_64-2.7/libev':
| configure: error: cannot run C compiled programs.
| If you meant to cross compile, use `--host'.
| See `config.log' for more details
| Running '/bin/sh /opt/buildtmp/work/cortexa7t2hf-vfp-neon-wrs-linux-gnueabi/python-gevent/1.0.1-r0/gevent-1.0.1/libev/configure > configure-output.txt' in /opt/buildtmp/work/cortexa7t2hf-vfp-neon-wrs-linux-gnueabi/python-gevent/1.0.1-r0/gevent-1.0.1/build/temp.linux-x86_64-2.7/libev
| building 'gevent.core' extension
| creating build/temp.linux-x86_64-2.7/gevent
| ccache arm-wrs-linux-gnueabi-gcc -march=armv7-a -mfloat-abi=hard -mfpu=neon -marm -mthumb-interwork -mtune=cortex-a7 --sysroot=/opt/buildtmp/sysroots/fsl-ls10xx -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -O2 -pipe -g -fPIC -DLIBEV_EMBED=1 -DEV_COMMON= -DEV_CLEANUP_ENABLE=0 -DEV_EMBED_ENABLE=0 -DEV_PERIODIC_ENABLE=0 -Ibuild/temp.linux-x86_64-2.7/libev -Ilibev -I/opt/buildtmp/sysroots/fsl-ls10xx/usr/include/python2.7 -c gevent/gevent.core.c -o build/temp.linux-x86_64-2.7/gevent/gevent.core.o
| In file included from gevent/libev.h:2:0,
|                  from gevent/gevent.core.c:313:
| libev/ev.c:45:22: fatal error: config.h: No such file or directory
|  #  include "config.h"
|                       ^
| compilation terminated.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2015-06-17 16:10:05 -04:00

33 lines
1.2 KiB
BlitzBasic

HOMEPAGE = "http://www.gevent.org"
SUMMARY = "A coroutine-based Python networking library"
DESCRIPTION = "\
gevent is a coroutine-based Python networking library that uses greenlet \
to provide a high-level synchronous API on top of the libevent event \
loop. \
"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2dbb33d00e1fd31c7041460a81ac0bd2"
DEPENDS += "python-greenlet libevent"
RDEPENDS_${PN} += "python-greenlet python-mime python-pprint python-re"
SRCNAME = "gevent"
SRC_URI = "http://pypi.python.org/packages/source/g/gevent/${SRCNAME}-${PV}.tar.gz"
SRC_URI[md5sum] = "7b952591d1a0174d6eb6ac47bd975ab6"
SRC_URI[sha256sum] = "4627e215d058f71d95e6b26d9e7be4c263788a4756bd2858a93775f6c072df43"
S = "${WORKDIR}/${SRCNAME}-${PV}"
inherit setuptools
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://libev-conf.patch"
SRC_URI += "file://gevent-allow-ssl-v2-or-v3-certificates.patch"
# The python-gevent has no autoreconf ability
# and the logic for detecting a cross compile is flawed
# so always force a cross compile
do_configure_append() {
sed -i -e 's/^cross_compiling=no/cross_compiling=yes/' ${S}/libev/configure
}