openssl: Fix dependency loop with PACKAGECONFIG cryptodev-linux

Submitted by Scott Ellis on April 30, 2020, 8:23 p.m. | Patch ID: 172180

Details

Message ID 20200430202311.11303-1-scott@jumpnowtek.com
State New
Headers show

Commit Message

Scott Ellis April 30, 2020, 8:23 p.m.
Applies to both zeus and dunfell

ERROR: Nothing RPROVIDES 'cryptodev-module-native' (but virtual:native:/home/scott/poky-zeus/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb RDEPENDS on or otherwise requires it)
ERROR: Required build target 'openssl' has no buildable providers.
Missing or unbuildable dependency chain was: ['openssl', 'rpm-native', 'python3-native', 'openssl-native', 'cryptodev-module-native']

Signed-off-by: Scott Ellis <scott@jumpnowtek.com>
---
 meta/recipes-connectivity/openssl/openssl_1.1.1f.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
index aa4ef6f48a..a952fae728 100644
--- a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
+++ b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
@@ -32,7 +32,7 @@  PACKAGECONFIG ?= ""
 PACKAGECONFIG_class-native = ""
 PACKAGECONFIG_class-nativesdk = ""
 
-PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module"
+PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux"
 
 B = "${WORKDIR}/build"
 do_configure[cleandirs] = "${B}"

Comments

Denys Dmytriyenko April 30, 2020, 9:37 p.m.
On Thu, Apr 30, 2020 at 08:23:11PM +0000, Scott Ellis wrote:

Hi, Scott,

Sorry, I'm not trying to discourage you from submitting patches, but there are 
few issues with your patch here - see below and inline.

First of all, patches for OE-core should be sent to:
openembedded-core@lists.openembedded.org
https://lists.openembedded.org/g/openembedded-core

Looks like you are building poky-zeus - Poky, as a distro, is composed from 
multiple components/layers, such as bitbake, oe-core/meta, meta-poky and 
meta-yocto-bsp. Most of them have own git repos with corresponding mailing 
lists - usually mentioned in corresponding README files, please check those.


> Applies to both zeus and dunfell

The process to get your change backported to older branches/releases is to 
submit it against master, and once accepted, re-send and ask to backport to 
other branches, such as zeus and dunfell with the name of the branch in the 
subject. That is because different branches/versions are usually maintained 
by different people.


> ERROR: Nothing RPROVIDES 'cryptodev-module-native' (but virtual:native:/home/scott/poky-zeus/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb RDEPENDS on or otherwise requires it)
> ERROR: Required build target 'openssl' has no buildable providers.
> Missing or unbuildable dependency chain was: ['openssl', 'rpm-native', 'python3-native', 'openssl-native', 'cryptodev-module-native']

Not sure how you were able to set the wrong PACKAGECONFIG for openssl-native, 
when it gets explicitly emptied in the recipe below.


> diff --git a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> index aa4ef6f48a..a952fae728 100644
> --- a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> +++ b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> @@ -32,7 +32,7 @@ PACKAGECONFIG ?= ""
>  PACKAGECONFIG_class-native = ""
>  PACKAGECONFIG_class-nativesdk = ""

Here, ^^^ PACKAGECONFIG should all be empty for native and nativesdk versions 
of openssl.


> -PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module"
> +PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux"

This is not a fix, but rather a workaround for a bad setup. Moreover, it 
actually reverts my recent fix to RDEPENDS on cryptodev-module, which is 
needed to properly support devcryptoeng in openssl.

Maybe if you share with us how you set your environment, we would be able to 
help you resolve it properly. Thank you!
Scott Ellis May 1, 2020, 1:48 p.m.
Enabled via a bbappend in a custom layer

$ cat openssl_%.bbappend
PACKAGECONFIG_append = " cryptodev-linux"

This was working prior to the openssl_1.1.1f.bb recipe change a few days
ago.

How are you enabling this PACKAGECONFIG?

On Thu, Apr 30, 2020 at 5:37 PM Denys Dmytriyenko <denis@denix.org> wrote:

> On Thu, Apr 30, 2020 at 08:23:11PM +0000, Scott Ellis wrote:
>
> Hi, Scott,
>
> Sorry, I'm not trying to discourage you from submitting patches, but there
> are
> few issues with your patch here - see below and inline.
>
> First of all, patches for OE-core should be sent to:
> openembedded-core@lists.openembedded.org
> https://lists.openembedded.org/g/openembedded-core
>
> Looks like you are building poky-zeus - Poky, as a distro, is composed
> from
> multiple components/layers, such as bitbake, oe-core/meta, meta-poky and
> meta-yocto-bsp. Most of them have own git repos with corresponding mailing
> lists - usually mentioned in corresponding README files, please check
> those.
>
>
> > Applies to both zeus and dunfell
>
> The process to get your change backported to older branches/releases is to
> submit it against master, and once accepted, re-send and ask to backport
> to
> other branches, such as zeus and dunfell with the name of the branch in
> the
> subject. That is because different branches/versions are usually
> maintained
> by different people.
>
>
> > ERROR: Nothing RPROVIDES 'cryptodev-module-native' (but
> virtual:native:/home/scott/poky-zeus/meta/recipes-connectivity/openssl/
> openssl_1.1.1f.bb RDEPENDS on or otherwise requires it)
> > ERROR: Required build target 'openssl' has no buildable providers.
> > Missing or unbuildable dependency chain was: ['openssl', 'rpm-native',
> 'python3-native', 'openssl-native', 'cryptodev-module-native']
>
> Not sure how you were able to set the wrong PACKAGECONFIG for
> openssl-native,
> when it gets explicitly emptied in the recipe below.
>
>
> > diff --git a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> > index aa4ef6f48a..a952fae728 100644
> > --- a/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> > +++ b/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb
> > @@ -32,7 +32,7 @@ PACKAGECONFIG ?= ""
> >  PACKAGECONFIG_class-native = ""
> >  PACKAGECONFIG_class-nativesdk = ""
>
> Here, ^^^ PACKAGECONFIG should all be empty for native and nativesdk
> versions
> of openssl.
>
>
> > -PACKAGECONFIG[cryptodev-linux] =
> "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module"
> > +PACKAGECONFIG[cryptodev-linux] =
> "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux"
>
> This is not a fix, but rather a workaround for a bad setup. Moreover, it
> actually reverts my recent fix to RDEPENDS on cryptodev-module, which is
> needed to properly support devcryptoeng in openssl.
>
> Maybe if you share with us how you set your environment, we would be able
> to
> help you resolve it properly. Thank you!
>
> --
> Denys
>
>
> >  B = "${WORKDIR}/build"
> >  do_configure[cleandirs] = "${B}"
> > --
> > 2.17.1
> >
>
> >
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#49301): https://lists.yoctoproject.org/g/yocto/message/49301
Mute This Topic: https://lists.yoctoproject.org/mt/73384166/3617530
Group Owner: yocto+owner@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/leave/6692111/1546034284/xyzzy  [oe-patchwork@oe-patch.openembedded.org]
-=-=-=-=-=-=-=-=-=-=-=-