Message ID | 20240209113035.3372683-1-richard.purdie@linuxfoundation.org |
---|---|
State | New |
Headers | show |
Series | [1/2] no-gplv3: Add workarounds for update-alternatives and ptest | expand |
I find DISTRO_FEATURES:remove = "ptest" item problematic. Ptests dependencies do not cause trouble if license restrictions are per-image, and I had long advocated placing the restrictions there, and not globally like was done previously in meta-gpl2 times. So let's clarify: is no-gplv3.inc meant for the global license restriction, per image restriction or both? Should we rather have two files, where one includes the other and adds additional restrictions? Alex On Fri, 9 Feb 2024 at 12:30, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > > Document the tribal knowledge that we have to disable ptests for gplv3. > > Also document the workaround for update-alternatives issues with bash > and opkg-utils. > > As with anything in this file, the exclusions come at a cost. > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> > --- > meta/conf/distro/include/no-gplv3.inc | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/meta/conf/distro/include/no-gplv3.inc b/meta/conf/distro/include/no-gplv3.inc > index bb2e836f982..571e7f882d9 100644 > --- a/meta/conf/distro/include/no-gplv3.inc > +++ b/meta/conf/distro/include/no-gplv3.inc > @@ -5,6 +5,9 @@ > # The intent is to allow some images/configurations to build, not everything. There > # will be a cost in reduced functionality. > > +# Many ptests are problematic due to bash dependencies, need to disable > +DISTRO_FEATURES:remove = "ptest" > + > # Settings for full-cmdline > RDEPENDS:packagegroup-core-full-cmdline-utils:remove = "bash bc coreutils cpio ed findutils gawk grep mc mc-fish mc-helpers mc-helpers-perl sed tar time" > RDEPENDS:packagegroup-core-full-cmdline-dev-utils:remove = "diffutils m4 make patch" > @@ -26,3 +29,6 @@ CORE_IMAGE_BASE_INSTALL:remove:pn-core-image-weston = "matchbox-terminal" > # Some python-tests use bash outside of ptest > RDEPENDS:${PN}-tests:remove:class-target:pn-python3 = "${MLPREFIX}bash" > INSANE_SKIP:${PN}-tests:pn-python3 = "file-rdeps" > + > +# Assume opkg-utils is only for update-alternatives > +RDEPENDS:${PN}:remove:pn-opkg-utils = "bash" > -- > 2.40.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#195200): https://lists.openembedded.org/g/openembedded-core/message/195200 > Mute This Topic: https://lists.openembedded.org/mt/104256940/1686489 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Fri, 2024-02-09 at 13:06 +0100, Alexander Kanavin wrote: > I find DISTRO_FEATURES:remove = "ptest" item problematic. Ptests > dependencies do not cause trouble if license restrictions are > per-image, and I had long advocated placing the restrictions there, > and not globally like was done previously in meta-gpl2 times. > > So let's clarify: is no-gplv3.inc meant for the global license > restriction, per image restriction or both? Should we rather have two > files, where one includes the other and adds additional restrictions? You're right, we should split this into two. I was torn on the ptest restriction and this kind of dilemma is why I'm a little reluctant to have this file in the first place. The immediate problem is the minimal non-gplv3 recipe test breaking due to gcc-runtime gaining a python runtime dependency. Cheers, Richard
diff --git a/meta/conf/distro/include/no-gplv3.inc b/meta/conf/distro/include/no-gplv3.inc index bb2e836f982..571e7f882d9 100644 --- a/meta/conf/distro/include/no-gplv3.inc +++ b/meta/conf/distro/include/no-gplv3.inc @@ -5,6 +5,9 @@ # The intent is to allow some images/configurations to build, not everything. There # will be a cost in reduced functionality. +# Many ptests are problematic due to bash dependencies, need to disable +DISTRO_FEATURES:remove = "ptest" + # Settings for full-cmdline RDEPENDS:packagegroup-core-full-cmdline-utils:remove = "bash bc coreutils cpio ed findutils gawk grep mc mc-fish mc-helpers mc-helpers-perl sed tar time" RDEPENDS:packagegroup-core-full-cmdline-dev-utils:remove = "diffutils m4 make patch" @@ -26,3 +29,6 @@ CORE_IMAGE_BASE_INSTALL:remove:pn-core-image-weston = "matchbox-terminal" # Some python-tests use bash outside of ptest RDEPENDS:${PN}-tests:remove:class-target:pn-python3 = "${MLPREFIX}bash" INSANE_SKIP:${PN}-tests:pn-python3 = "file-rdeps" + +# Assume opkg-utils is only for update-alternatives +RDEPENDS:${PN}:remove:pn-opkg-utils = "bash"
Document the tribal knowledge that we have to disable ptests for gplv3. Also document the workaround for update-alternatives issues with bash and opkg-utils. As with anything in this file, the exclusions come at a cost. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> --- meta/conf/distro/include/no-gplv3.inc | 6 ++++++ 1 file changed, 6 insertions(+)