summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/ruby
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-04-14 10:31:53 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-04-24 14:10:07 +0100
commitcec802aa4df2eb7d0e3096f26adc2c349d615265 (patch)
treef6747d6caad64e9a37aefeac76e151441b09870a /meta/recipes-devtools/ruby
parent67622318092b2716603738b0b509b24ec457deaf (diff)
downloadpoky-cec802aa4df2eb7d0e3096f26adc2c349d615265.tar.gz
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: 406e7a085b0650bdba9f19633dadb7e6ff0149e5) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/ruby')
-rw-r--r--meta/recipes-devtools/ruby/ruby_2.7.0.bb9
1 files changed, 7 insertions, 2 deletions
diff --git a/meta/recipes-devtools/ruby/ruby_2.7.0.bb b/meta/recipes-devtools/ruby/ruby_2.7.0.bb
index 44c76161d5..7f07080497 100644
--- a/meta/recipes-devtools/ruby/ruby_2.7.0.bb
+++ b/meta/recipes-devtools/ruby/ruby_2.7.0.bb
@@ -1,5 +1,7 @@
1require ruby.inc 1require ruby.inc
2 2
3DEPENDS_append_libc-musl = " libucontext"
4
3SRC_URI += " \ 5SRC_URI += " \
4 file://remove_has_include_macros.patch \ 6 file://remove_has_include_macros.patch \
5 file://run-ptest \ 7 file://run-ptest \
@@ -25,8 +27,11 @@ EXTRA_OECONF = "\
25 --with-pkg-config=pkg-config \ 27 --with-pkg-config=pkg-config \
26" 28"
27 29
28EXTRA_OECONF_append_libc-musl_arm = " --with-coroutine=arm32" 30EXTRA_OECONF_append_libc-musl = "\
29EXTRA_OECONF_append_libc-musl_armeb = " --with-coroutine=arm32" 31 LIBS='-lucontext' \
32 ac_cv_func_isnan=yes \
33 ac_cv_func_isinf=yes \
34"
30 35
31do_install() { 36do_install() {
32 oe_runmake 'DESTDIR=${D}' install 37 oe_runmake 'DESTDIR=${D}' install