ruby: Link with libucontext on musl

coroutines in ruby 2.7+ needs ucontext APIs which are not available in
musl but an external library is available to provide them so use it

Use cached values for ac_cv_func_isnan and ac_cv_func_isinf this is not
detected correctly by configure on musl

on ARM drop using old arm32 implementation of coroutine which is slow and
inefficient

(From OE-Core rev: a2b1af47316a9f5c522db0c9feff1fbe0d39e022)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2020-04-14 10:31:53 -07:00
committed by Richard Purdie
parent 1aeeecba56
commit 47cc12f9df

View File

@@ -1,5 +1,7 @@
require ruby.inc
DEPENDS_append_libc-musl = " libucontext"
SRC_URI += " \
file://remove_has_include_macros.patch \
file://run-ptest \
@@ -25,8 +27,11 @@ EXTRA_OECONF = "\
--with-pkg-config=pkg-config \
"
EXTRA_OECONF_append_libc-musl_arm = " --with-coroutine=arm32"
EXTRA_OECONF_append_libc-musl_armeb = " --with-coroutine=arm32"
EXTRA_OECONF_append_libc-musl = "\
LIBS='-lucontext' \
ac_cv_func_isnan=yes \
ac_cv_func_isinf=yes \
"
do_install() {
oe_runmake 'DESTDIR=${D}' install