]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
openssl: fix pkgconfig path problems
authorRoss Burton <ross.burton@arm.com>
Fri, 3 May 2024 10:59:21 +0000 (10:59 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 9 May 2024 08:47:06 +0000 (09:47 +0100)
OpenSSL 3.3.0 introduced new pkgconfig generators which interact badly
with our incorrect setting of --libdir, which is documented as being
the name of the directory _under $prefix_, not an absolute path.  This
resulted in the pkgconfig files have libdir=/usr which mostly works as
the actual library directory is on the search path, but can break other
recipes (such as tpm2-openssl).

Pass the correct value for --libdir, and also remove the odd handling of
an empty ${prefix} which is very historical[1] and can't happen anymore
as all build variations have a prefix.

[1] Added in oe-classic f725a81c, 2009

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-connectivity/openssl/openssl_3.3.0.bb

index 66cb361baa96d5b72d5b765674b17af1b1ed85ef..113ed4bf95896a4322d0473ce3d53abd6a940c01 100644 (file)
@@ -136,16 +136,12 @@ do_configure () {
                ;;
        esac
 
-       useprefix=${prefix}
-       if [ "x$useprefix" = "x" ]; then
-               useprefix=/
-       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.
        PERLEXTERNAL="$(realpath ${S}/external/perl/Text-Template-*/lib)"
        test -d "$PERLEXTERNAL" || bberror "PERLEXTERNAL '$PERLEXTERNAL' not found!"
        HASHBANGPERL="/usr/bin/env perl" PERL=perl PERL5LIB="$PERLEXTERNAL" \
-       perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} ${DEPRECATED_CRYPTO_FLAGS} --prefix=$useprefix --openssldir=${libdir}/ssl-3 --libdir=${libdir} $target
+       perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} ${DEPRECATED_CRYPTO_FLAGS} --prefix=${prefix} --openssldir=${libdir}/ssl-3 --libdir=${baselib} $target
        perl ${B}/configdata.pm --dump
 }