Message ID | 20221004152807.987313-1-mikko.rapeli@linaro.org |
---|---|
State | New |
Headers | show |
Series | [v2,1/5] openssl-native.bbclass: add bbclass | expand |
Hello Mikko, On Tue, 4 Oct 2022 18:28:07 +0300 "Mikko Rapeli" <mikko.rapeli@linaro.org> wrote: > It sets all environment variables correctly for openssl-native. > > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> I'm taking this patch for testing, however I have a question, see below. > --- > meta/recipes-bsp/u-boot/u-boot.inc | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc > index f022aed732..cd9c578962 100644 > --- a/meta/recipes-bsp/u-boot/u-boot.inc > +++ b/meta/recipes-bsp/u-boot/u-boot.inc > @@ -17,7 +17,8 @@ PACKAGECONFIG ??= "openssl" > # u-boot will compile its own tools during the build, with specific > # configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as > # a host build dependency. > -PACKAGECONFIG[openssl] = ",,openssl-native" > +OPENSSL_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'openssl-native', '', d)}" What is the reason to use '.=' and not just '=' here? > +inherit ${OPENSSL_INHERIT} > > # Allow setting an additional version string that will be picked up by the > # u-boot build system and appended to the u-boot version. If the .scmversion
Hi, On Tue, Oct 04, 2022 at 11:57:19PM +0200, Luca Ceresoli wrote: > Hello Mikko, > > On Tue, 4 Oct 2022 18:28:07 +0300 > "Mikko Rapeli" <mikko.rapeli@linaro.org> wrote: > > > It sets all environment variables correctly for openssl-native. > > > > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> > > I'm taking this patch for testing, however I have a question, see below. > > > --- > > meta/recipes-bsp/u-boot/u-boot.inc | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc > > index f022aed732..cd9c578962 100644 > > --- a/meta/recipes-bsp/u-boot/u-boot.inc > > +++ b/meta/recipes-bsp/u-boot/u-boot.inc > > @@ -17,7 +17,8 @@ PACKAGECONFIG ??= "openssl" > > # u-boot will compile its own tools during the build, with specific > > # configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as > > # a host build dependency. > > -PACKAGECONFIG[openssl] = ",,openssl-native" > > +OPENSSL_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'openssl-native', '', d)}" > > What is the reason to use '.=' and not just '=' here? Hehe, it was in another example which was using conditional inheritance. meta/recipes-support/gpgme/gpgme_1.18.0.bb PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native python3targetconfig', '', d)}" I guess normal = assignment would work too. If that's preferred I can send a v3. Cheers, -Mikko
> -----Original Message----- > From: openembedded-core@lists.openembedded.org <openembedded- > core@lists.openembedded.org> On Behalf Of Mikko Rapeli > Sent: den 5 oktober 2022 08:02 > To: Luca Ceresoli <luca.ceresoli@bootlin.com> > Cc: openembedded-core@lists.openembedded.org > Subject: Re: [OE-core] [PATCH v2 3/5] u-boot: use openssl-native.bbclass > > Hi, > > On Tue, Oct 04, 2022 at 11:57:19PM +0200, Luca Ceresoli wrote: > > Hello Mikko, > > > > On Tue, 4 Oct 2022 18:28:07 +0300 > > "Mikko Rapeli" <mikko.rapeli@linaro.org> wrote: > > > > > It sets all environment variables correctly for openssl-native. > > > > > > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> > > > > I'm taking this patch for testing, however I have a question, see below. > > > > > --- > > > meta/recipes-bsp/u-boot/u-boot.inc | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u- > boot/u-boot.inc > > > index f022aed732..cd9c578962 100644 > > > --- a/meta/recipes-bsp/u-boot/u-boot.inc > > > +++ b/meta/recipes-bsp/u-boot/u-boot.inc > > > @@ -17,7 +17,8 @@ PACKAGECONFIG ??= "openssl" > > > # u-boot will compile its own tools during the build, with specific > > > # configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl > is needed as > > > # a host build dependency. > > > -PACKAGECONFIG[openssl] = ",,openssl-native" > > > +OPENSSL_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'openssl', > 'openssl-native', '', d)}" > > > > What is the reason to use '.=' and not just '=' here? You typically use it to avoid introducing extra space to a variable when a feature is not enabled. > > Hehe, it was in another example which was using conditional inheritance. > > meta/recipes-support/gpgme/gpgme_1.18.0.bb > > PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native python3targetconfig', '', d)}" That example is actually wrong. If someone was to enable both "python2" and "python3", the resulting PYTHON_INHERIT would be "pythonnativepython3native python3targetconfig", which obviously will not work. > > I guess normal = assignment would work too. If that's preferred I can > send a v3. > > Cheers, > > -Mikko //Peter
On Wed, 5 Oct 2022 09:02:00 +0300 "Mikko Rapeli" <mikko.rapeli@linaro.org> wrote: > Hi, > > On Tue, Oct 04, 2022 at 11:57:19PM +0200, Luca Ceresoli wrote: > > Hello Mikko, > > > > On Tue, 4 Oct 2022 18:28:07 +0300 > > "Mikko Rapeli" <mikko.rapeli@linaro.org> wrote: > > > > > It sets all environment variables correctly for openssl-native. > > > > > > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> > > > > I'm taking this patch for testing, however I have a question, see below. > > > > > --- > > > meta/recipes-bsp/u-boot/u-boot.inc | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc > > > index f022aed732..cd9c578962 100644 > > > --- a/meta/recipes-bsp/u-boot/u-boot.inc > > > +++ b/meta/recipes-bsp/u-boot/u-boot.inc > > > @@ -17,7 +17,8 @@ PACKAGECONFIG ??= "openssl" > > > # u-boot will compile its own tools during the build, with specific > > > # configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as > > > # a host build dependency. > > > -PACKAGECONFIG[openssl] = ",,openssl-native" > > > +OPENSSL_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'openssl-native', '', d)}" > > > > What is the reason to use '.=' and not just '=' here? > > Hehe, it was in another example which was using conditional inheritance. > > meta/recipes-support/gpgme/gpgme_1.18.0.bb > > PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native python3targetconfig', '', d)}" > > I guess normal = assignment would work too. If that's preferred I can > send a v3. In this case a '=' seems the correct choice. There is another issue with this patch. During AB testing we have this new warning: WARNING: u-boot-1_2022.07-r0 do_configure: QA Issue: u-boot: invalid PACKAGECONFIG: openssl [invalid-packageconfig] I don't know which layer has the u-boot-1 recipe, but by grepping I noticed the 'openssl' PACKAGECONFIG appears in oe-core elsewhere, and it should be removed from there too.
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc index f022aed732..cd9c578962 100644 --- a/meta/recipes-bsp/u-boot/u-boot.inc +++ b/meta/recipes-bsp/u-boot/u-boot.inc @@ -17,7 +17,8 @@ PACKAGECONFIG ??= "openssl" # u-boot will compile its own tools during the build, with specific # configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as # a host build dependency. -PACKAGECONFIG[openssl] = ",,openssl-native" +OPENSSL_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'openssl-native', '', d)}" +inherit ${OPENSSL_INHERIT} # Allow setting an additional version string that will be picked up by the # u-boot build system and appended to the u-boot version. If the .scmversion
It sets all environment variables correctly for openssl-native. Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> --- meta/recipes-bsp/u-boot/u-boot.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)