[Buildroot] [git commit] package/openssl: fix libressl dependency

Yann E. MORIN yann.morin.1998 at free.fr
Sat Jul 16 22:04:02 UTC 2022


commit: https://git.buildroot.net/buildroot/commit/?id=33599d5f35bce2b45205bc85cf1eff093f4fadc6
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

libressl can be built with uclibc on noMMU since bump to version 3.0.2
in commit 26f42106e8acfd336d8e902da96cd2ac9e63c09d and
https://github.com/libressl-portable/openbsd/commit/f542e84c859e3fb2728075c702062cce8a0ea93f

However, uclibc-ng doesn't provide __register_atfork without NPTL
resulting in the following libressl build failure:

/nvmedata/autobuild/instance-28/output-1/host/lib/gcc/arceb-buildroot-linux-uclibc/10.3.0/../../../../arceb-buildroot-linux-uclibc/bin/ld: ../../tls/libtls.a(arc4random.c.o): in function `_rs_stir':
arc4random.c:(.text+0x50c): undefined reference to `__register_atfork'

So fix the dependency and, while at it, drop the double negation for
readability

Fixes:
 - http://autobuild.buildroot.org/results/2fa4fa10cf19f1f942b6b49b5f6f05339c008cd4

Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
---
 package/openssl/Config.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/openssl/Config.in b/package/openssl/Config.in
index 7bf49b05f6..c7641ecefa 100644
--- a/package/openssl/Config.in
+++ b/package/openssl/Config.in
@@ -34,8 +34,8 @@ config BR2_PACKAGE_LIBRESSL
 	bool "libressl"
 	depends on !BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-	# uClibc on noMMU doesn't provide __register_atfork()
-	depends on !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU)
+	# uClibc doesn't provide __register_atfork() without NPTL
+	depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_HAS_THREADS_NPTL
 	help
 	  LibreSSL is a version of the TLS/crypto stack forked from
 	  OpenSSL in 2014, with goals of modernizing the codebase,



More information about the buildroot mailing list