diff mbox series

[1/2] no-gplv3: Add workarounds for update-alternatives and ptest

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

Commit Message

Richard Purdie Feb. 9, 2024, 11:30 a.m. UTC
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(+)

Comments

Alexander Kanavin Feb. 9, 2024, 12:06 p.m. UTC | #1
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]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Richard Purdie Feb. 9, 2024, 12:11 p.m. UTC | #2
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 mbox series

Patch

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"