From: "André Draszik" <git@andred.net>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH v3 3/4] ruby: fix non-IPv6 support
Date: Tue, 1 Oct 2019 10:54:51 +0100 [thread overview]
Message-ID: <20191001095452.37335-4-git@andred.net> (raw)
In-Reply-To: <20191001095452.37335-1-git@andred.net>
From: André Draszik <andre.draszik@jci.com>
When IPv6 support is disabled, this recipe mis-configures
ruby so that it end up non-working:
--enable-wide-getaddrinfo instructs ruby to re-implement
the standard getaddinfo(), but IPv6 support is still
automatically detected via ext/socket/extconf.rb
independently of that flag.
To re-implement getaddrinfo(), ruby uses the obsolete
getipnodebyaddr() and getipnodebyname() functions - i.e.
according to the man-page, glibc provided those only in
glibc 2.1.91-95; and of course compilation fails. [1]
Switch to ruby's standard --enable-ipv6= configure
options to make the build work without warnings, and
ruby work at runtime as well.
[1] Compilation and linking actually succeed, albeit with
a warning regarding implicit declaration / unresolved
symbols. The error is only obvious at runtime due to the
unresolved symbols...
Signed-off-by: André Draszik <andre.draszik@jci.com>
---
v3:
* rebased
v2:
* switch to --enable-ipv6/--disable-ipv6 instead of
--enable-ipv6=yes/no, as the latter is not actually
recognised
---
meta/recipes-devtools/ruby/ruby_2.5.5.bb | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/meta/recipes-devtools/ruby/ruby_2.5.5.bb b/meta/recipes-devtools/ruby/ruby_2.5.5.bb
index 341329a6a1..223b0371eb 100644
--- a/meta/recipes-devtools/ruby/ruby_2.5.5.bb
+++ b/meta/recipes-devtools/ruby/ruby_2.5.5.bb
@@ -8,17 +8,12 @@ SRC_URI += " \
SRC_URI[md5sum] = "7e156fb526b8f4bb1b30a3dd8a7ce400"
SRC_URI[sha256sum] = "28a945fdf340e6ba04fc890b98648342e3cccfd6d223a48f3810572f11b2514c"
-# it's unknown to configure script, but then passed to extconf.rb
-# maybe it's not really needed as we're hardcoding the result with
-# 0001-socket-extconf-hardcode-wide-getaddr-info-test-outco.patch
-UNKNOWN_CONFIGURE_WHITELIST += "--enable-wide-getaddrinfo"
-
PACKAGECONFIG ??= ""
PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[valgrind] = "--with-valgrind=yes, --with-valgrind=no, valgrind"
PACKAGECONFIG[gmp] = "--with-gmp=yes, --with-gmp=no, gmp"
-PACKAGECONFIG[ipv6] = ",--enable-wide-getaddrinfo,"
+PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6,"
EXTRA_AUTORECONF += "--exclude=aclocal"
--
2.23.0.rc1
next prev parent reply other threads:[~2019-10-01 9:55 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-01 9:54 [PATCH v3 0/4] ruby recipe updates André Draszik
2019-10-01 9:54 ` [PATCH v3 1/4] ruby: drop long-merged CVE patches André Draszik
2019-10-01 9:54 ` [PATCH v3 2/4] ruby: configure mis-detects isnan/isinf on musl André Draszik
2019-10-01 9:54 ` André Draszik [this message]
2019-10-01 9:54 ` [PATCH v3 4/4] ruby: update to v2.6.4 André Draszik
2019-10-01 14:29 ` [PATCH] ruby: some ptest fixes André Draszik
2019-10-01 11:55 ` [PATCH v3 0/4] ruby recipe updates Ross Burton
2019-10-01 15:02 ` ✗ patchtest: failure for ruby recipe updates (rev2) Patchwork
2019-10-01 15:24 ` André Draszik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191001095452.37335-4-git@andred.net \
--to=git@andred.net \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.