Build openssl with shared state cache may meet problem under below conditions:
1. sstate cache generated by another user on same machine
2. inappropriate PERL5LIB setting
3. openssl build from scratch but perl using cache

When building openssl, without appropriate PERL5LIB setting, perl from cache
tries to search Text::Template and other modules in no permission path and
abort immediately.

This patch does three things:
1. openssl upgrades external Text-Template from 1.46 to 1.56,
correct perl module path.
2. add necessary module path while openssl build
3. set package level PERL5LIB to make perl found module in S

Signed-off-by: Yang Xu <[email protected]>
---
 meta/recipes-connectivity/openssl/openssl_3.1.0.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-connectivity/openssl/openssl_3.1.0.bb 
b/meta/recipes-connectivity/openssl/openssl_3.1.0.bb
index b319c66044..613451f265 100644
--- a/meta/recipes-connectivity/openssl/openssl_3.1.0.bb
+++ b/meta/recipes-connectivity/openssl/openssl_3.1.0.bb
@@ -54,6 +54,10 @@ CFLAGS:append:class-nativesdk = " -DOPENSSLDIR=/not/builtin 
-DENGINESDIR=/not/bu
 # The default is to trust upstream choices.
 DEPRECATED_CRYPTO_FLAGS ?= ""
 
+# Set package level PERL5LIB
+PERL5LIB = "${S}/external/perl/Text-Template-1.56/lib/:${S}/crypto/perlasm"
+export PERL5LIB
+
 do_configure () {
        # When we upgrade glibc but not uninative we see obtuse failures in 
openssl. Make
        # the issue really clear that perl isn't functional due to symbol 
mismatch issues.
@@ -138,7 +142,7 @@ do_configure () {
        fi
        # WARNING: do not set compiler/linker flags (-I/-D etc.) in 
EXTRA_OECONF, as they will fully replace the
        # environment variables set by bitbake. Adjust the environment 
variables instead.
-       HASHBANGPERL="/usr/bin/env perl" PERL=perl 
PERL5LIB="${S}/external/perl/Text-Template-1.46/lib/" \
+       HASHBANGPERL="/usr/bin/env perl" PERL=perl \
        perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} 
${DEPRECATED_CRYPTO_FLAGS} --prefix=$useprefix --openssldir=${libdir}/ssl-3 
--libdir=${libdir} $target
        perl ${B}/configdata.pm --dump
 }
-- 
2.25.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#180236): 
https://lists.openembedded.org/g/openembedded-core/message/180236
Mute This Topic: https://lists.openembedded.org/mt/98383945/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to