Message ID | 20240116165602.2053194-2-William.Lyu@windriver.com |
---|---|
State | New |
Headers | show |
Series | [1/2] perl: Add option to prevent COMPLEMENTARY_GLOB from ignoring perl-modules | expand |
How about simple depending on specific module packages? I don’t think OpenSSL truly needs all modules. Alex On Tue 16. Jan 2024 at 17.56, Lyu, William via lists.openembedded.org <william.lyu=windriver.com@lists.openembedded.org> wrote: > From: William Lyu <William.Lyu@windriver.com> > > Change the openssl-ptest RDEPENDS from perl-modules to > perl-modules-force-all which RDEPENDS on the same set of packages > perl-module-* recommended by perl-modules. So, when openssl-ptest is > added via COMPLEMENTARY_GLOB "ptest-pkgs", its dependencies on these > perl-module-* packages still get added. > > Signed-off-by: William Lyu <William.Lyu@windriver.com> > --- > meta/recipes-connectivity/openssl/openssl_3.2.0.bb | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > index d041d2d214..7076bd3a7b 100644 > --- a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > +++ b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > @@ -247,7 +247,7 @@ CONFFILES:openssl-conf = > "${sysconfdir}/ssl/openssl.cnf" > > RRECOMMENDS:libcrypto += "openssl-conf ${PN}-ossl-module-legacy" > RDEPENDS:${PN}-misc = "perl" > -RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash sed" > +RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules-force-all bash sed" > > RDEPENDS:${PN}-bin += "openssl-conf" > > -- > 2.43.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#193866): > https://lists.openembedded.org/g/openembedded-core/message/193866 > Mute This Topic: https://lists.openembedded.org/mt/103766390/1686489 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
On Tue, Jan 16, 2024 at 9:21 AM Alexander Kanavin <alex.kanavin@gmail.com> wrote: > How about simple depending on specific module packages? I don’t think > OpenSSL truly needs all modules. > Agreed. I don’t see a compelling reason to add the perl-modules-force-all complication. This will add confusion in my opinion. Iterate the tests and add the required perl-module-* sub-packages one by one (or by inspection if the test cases) In almost all cases, RDEPENDS on perl-modules is a short cut and should be avoided in favor of being explicit. > Alex > > On Tue 16. Jan 2024 at 17.56, Lyu, William via lists.openembedded.org > <william.lyu=windriver.com@lists.openembedded.org> wrote: > >> From: William Lyu <William.Lyu@windriver.com> >> >> Change the openssl-ptest RDEPENDS from perl-modules to >> perl-modules-force-all which RDEPENDS on the same set of packages >> perl-module-* recommended by perl-modules. So, when openssl-ptest is >> added via COMPLEMENTARY_GLOB "ptest-pkgs", its dependencies on these >> perl-module-* packages still get added. >> >> Signed-off-by: William Lyu <William.Lyu@windriver.com> >> --- >> meta/recipes-connectivity/openssl/openssl_3.2.0.bb | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >> b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >> index d041d2d214..7076bd3a7b 100644 >> --- a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >> +++ b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >> @@ -247,7 +247,7 @@ CONFFILES:openssl-conf = >> "${sysconfdir}/ssl/openssl.cnf" >> >> RRECOMMENDS:libcrypto += "openssl-conf ${PN}-ossl-module-legacy" >> RDEPENDS:${PN}-misc = "perl" >> -RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash sed" >> +RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules-force-all bash >> sed" >> >> RDEPENDS:${PN}-bin += "openssl-conf" >> >> -- >> 2.43.0 >> >> >> >> >> > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#193868): > https://lists.openembedded.org/g/openembedded-core/message/193868 > Mute This Topic: https://lists.openembedded.org/mt/103766390/924729 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > ticotimo@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
On Tue, Jan 16, 2024 at 10:57 AM Tim Orling via lists.openembedded.org <ticotimo=gmail.com@lists.openembedded.org> wrote: > > > On Tue, Jan 16, 2024 at 9:21 AM Alexander Kanavin <alex.kanavin@gmail.com> > wrote: > >> How about simple depending on specific module packages? I don’t think >> OpenSSL truly needs all modules. >> > > Agreed. I don’t see a compelling reason to add the perl-modules-force-all > complication. This will add confusion in my opinion. > > Iterate the tests and add the required perl-module-* sub-packages one by > one (or by inspection if the test cases) > > In almost all cases, RDEPENDS on perl-modules is a short cut and should be > avoided in favor of being explicit. > > This inspired me to sweep the dust off of https://git.yoctoproject.org/poky-contrib/log/?h=timo/perl-deps_13376 This detects (but doesn't yet know how to properly handle) the RDEPENDS for openssl-ptest. See attached snippet of the log. It is too greedy so some dependencies are not going to be needed. >> Alex >> >> On Tue 16. Jan 2024 at 17.56, Lyu, William via lists.openembedded.org >> <william.lyu=windriver.com@lists.openembedded.org> wrote: >> >>> From: William Lyu <William.Lyu@windriver.com> >>> >>> Change the openssl-ptest RDEPENDS from perl-modules to >>> perl-modules-force-all which RDEPENDS on the same set of packages >>> perl-module-* recommended by perl-modules. So, when openssl-ptest is >>> added via COMPLEMENTARY_GLOB "ptest-pkgs", its dependencies on these >>> perl-module-* packages still get added. >>> >>> Signed-off-by: William Lyu <William.Lyu@windriver.com> >>> --- >>> meta/recipes-connectivity/openssl/openssl_3.2.0.bb | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >>> b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >>> index d041d2d214..7076bd3a7b 100644 >>> --- a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >>> +++ b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb >>> @@ -247,7 +247,7 @@ CONFFILES:openssl-conf = >>> "${sysconfdir}/ssl/openssl.cnf" >>> >>> RRECOMMENDS:libcrypto += "openssl-conf ${PN}-ossl-module-legacy" >>> RDEPENDS:${PN}-misc = "perl" >>> -RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash sed" >>> +RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules-force-all bash >>> sed" >>> >>> RDEPENDS:${PN}-bin += "openssl-conf" >>> >>> -- >>> 2.43.0 >>> >>> >>> >>> >>> >> >> >> > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#193872): > https://lists.openembedded.org/g/openembedded-core/message/193872 > Mute This Topic: https://lists.openembedded.org/mt/103766390/924729 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > ticotimo@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
Can we change the perl recipe to simply use 'RDEPENDS' for perl-modules? I don't see what benefit the 'RRECOMMENDS' could give us. Regards, Qi On 1/17/24 02:56, Tim Orling wrote: > > > On Tue, Jan 16, 2024 at 9:21 AM Alexander Kanavin > <alex.kanavin@gmail.com> wrote: > > How about simple depending on specific module packages? I don’t > think OpenSSL truly needs all modules. > > > Agreed. I don’t see a compelling reason to add the > perl-modules-force-all complication. This will add confusion in my > opinion. > > Iterate the tests and add the required perl-module-* sub-packages one > by one (or by inspection if the test cases) > > In almost all cases, RDEPENDS on perl-modules is a short cut and > should be avoided in favor of being explicit. > > > Alex > > On Tue 16. Jan 2024 at 17.56, Lyu, William via > lists.openembedded.org > <https://urldefense.com/v3/__http://lists.openembedded.org__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvhkVBVlxg$> > <william.lyu=windriver.com@lists.openembedded.org> wrote: > > From: William Lyu <William.Lyu@windriver.com> > > Change the openssl-ptest RDEPENDS from perl-modules to > perl-modules-force-all which RDEPENDS on the same set of packages > perl-module-* recommended by perl-modules. So, when > openssl-ptest is > added via COMPLEMENTARY_GLOB "ptest-pkgs", its dependencies on > these > perl-module-* packages still get added. > > Signed-off-by: William Lyu <William.Lyu@windriver.com> > --- > meta/recipes-connectivity/openssl/openssl_3.2.0.bb > <https://urldefense.com/v3/__http://openssl_3.2.0.bb__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvgVPdEvRA$> > | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git > a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > <https://urldefense.com/v3/__http://openssl_3.2.0.bb__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvgVPdEvRA$> > b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > <https://urldefense.com/v3/__http://openssl_3.2.0.bb__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvgVPdEvRA$> > index d041d2d214..7076bd3a7b 100644 > --- a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > <https://urldefense.com/v3/__http://openssl_3.2.0.bb__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvgVPdEvRA$> > +++ b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb > <https://urldefense.com/v3/__http://openssl_3.2.0.bb__;!!AjveYdw8EvQ!cxKJn1SS8SQ9ODf0H1IfuN2qyCFPWHDlbuuYvuan7dIN9Nds2MS9DozRKwvNf7Di3p7lYRZ7IPV-BvgVPdEvRA$> > @@ -247,7 +247,7 @@ CONFFILES:openssl-conf = > "${sysconfdir}/ssl/openssl.cnf" > > RRECOMMENDS:libcrypto += "openssl-conf ${PN}-ossl-module-legacy" > RDEPENDS:${PN}-misc = "perl" > -RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash sed" > +RDEPENDS:${PN}-ptest += "openssl-bin perl > perl-modules-force-all bash sed" > > RDEPENDS:${PN}-bin += "openssl-conf" > > -- > 2.43.0 > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#193872):https://lists.openembedded.org/g/openembedded-core/message/193872 > Mute This Topic:https://lists.openembedded.org/mt/103766390/7304865 > Group Owner:openembedded-core+owner@lists.openembedded.org > Unsubscribe:https://lists.openembedded.org/g/openembedded-core/unsub [Qi.Chen@eng.windriver.com] > -=-=-=-=-=-=-=-=-=-=-=- >
Qi, according to the comments in the perl_5.38.2.bb recipe, perl-modules recommends "all the other perl packages" which might include optional packages. I assume leaving optional packages as "runtime recommended" (RRECOMMENDS) - aka. soft dependencies - can reduce the possibility of conflicts. The following patch changed the package_manager to ignore RRECOMMENDS to avoid conflict: https://lists.openembedded.org/g/openembedded-core/message/167303
diff --git a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb index d041d2d214..7076bd3a7b 100644 --- a/meta/recipes-connectivity/openssl/openssl_3.2.0.bb +++ b/meta/recipes-connectivity/openssl/openssl_3.2.0.bb @@ -247,7 +247,7 @@ CONFFILES:openssl-conf = "${sysconfdir}/ssl/openssl.cnf" RRECOMMENDS:libcrypto += "openssl-conf ${PN}-ossl-module-legacy" RDEPENDS:${PN}-misc = "perl" -RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash sed" +RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules-force-all bash sed" RDEPENDS:${PN}-bin += "openssl-conf"