diff mbox series

[v2,2/2] systemd: add usrmerge to REQUIRED_DISTRO_FEATURES

Message ID 20220713154139.101744-2-luca.boccassi@gmail.com
State New
Headers show
Series [v2,1/2] poky-altcfg: enable usrmerge | expand

Commit Message

Luca Boccassi July 13, 2022, 3:41 p.m. UTC
From: Luca Boccassi <luca.boccassi@microsoft.com>

Support for unmerged-usr is deprecated upstream, taints the system and will be
removed in the near future.
Enforce building merged-usr images when using systemd.

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
---
v2: use :append in each recipe

 meta/recipes-core/systemd/systemd-compat-units.bb | 2 +-
 meta/recipes-core/systemd/systemd-serialgetty.bb  | 2 +-
 meta/recipes-core/systemd/systemd.inc             | 5 +++++
 meta/recipes-core/systemd/systemd_251.2.bb        | 2 +-
 4 files changed, 8 insertions(+), 3 deletions(-)

Comments

Martin Jansa July 13, 2022, 3:57 p.m. UTC | #1
Don't use :append together with +=, just add the leading space in the value.

Wasn't there a warning when these 2 are used together?

On Wed, Jul 13, 2022 at 5:41 PM Luca Bocassi <luca.boccassi@gmail.com>
wrote:

> From: Luca Boccassi <luca.boccassi@microsoft.com>
>
> Support for unmerged-usr is deprecated upstream, taints the system and
> will be
> removed in the near future.
> Enforce building merged-usr images when using systemd.
>
> Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
> ---
> v2: use :append in each recipe
>
>  meta/recipes-core/systemd/systemd-compat-units.bb | 2 +-
>  meta/recipes-core/systemd/systemd-serialgetty.bb  | 2 +-
>  meta/recipes-core/systemd/systemd.inc             | 5 +++++
>  meta/recipes-core/systemd/systemd_251.2.bb        | 2 +-
>  4 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb
> b/meta/recipes-core/systemd/systemd-compat-units.bb
> index 55ebf99117..9085075a78 100644
> --- a/meta/recipes-core/systemd/systemd-compat-units.bb
> +++ b/meta/recipes-core/systemd/systemd-compat-units.bb
> @@ -14,7 +14,7 @@ INHIBIT_DEFAULT_DEPS = "1"
>
>  ALLOW_EMPTY:${PN} = "1"
>
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
>
>  SYSTEMD_DISABLED_SYSV_SERVICES = " \
>    busybox-udhcpc \
> diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb
> b/meta/recipes-core/systemd/systemd-serialgetty.bb
> index fd888bb834..60e18c4298 100644
> --- a/meta/recipes-core/systemd/systemd-serialgetty.bb
> +++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
> @@ -14,7 +14,7 @@ S = "${WORKDIR}"
>
>  # As this package is tied to systemd, only build it when we're also
> building systemd.
>  inherit features_check
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
>
>  do_install() {
>         if [ ! -z "${SERIAL_CONSOLES}" ] ; then
> diff --git a/meta/recipes-core/systemd/systemd.inc
> b/meta/recipes-core/systemd/systemd.inc
> index b8dbe2263a..f9e109bba4 100644
> --- a/meta/recipes-core/systemd/systemd.inc
> +++ b/meta/recipes-core/systemd/systemd.inc
> @@ -21,3 +21,8 @@ SRC_URI = "git://
> github.com/systemd/systemd-stable.git;protocol=https;branch=${S
> <http://github.com/systemd/systemd-stable.git;protocol=https;branch=$%7BS>
>  "
>
>  S = "${WORKDIR}/git"
> +
> +# unmerged-usr support is deprecated upstream, taints the system and will
> be
> +# removed in the near future. Fail the build if it is not enabled.
> +inherit features_check
> +REQUIRED_DISTRO_FEATURES = "usrmerge"
> diff --git a/meta/recipes-core/systemd/systemd_251.2.bb
> b/meta/recipes-core/systemd/systemd_251.2.bb
> index bb3c59f418..b1358420eb 100644
> --- a/meta/recipes-core/systemd/systemd_251.2.bb
> +++ b/meta/recipes-core/systemd/systemd_251.2.bb
> @@ -12,7 +12,7 @@ inherit useradd pkgconfig meson perlnative update-rc.d
> update-alternatives qemu
>
>  # As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
>  # that we don't build both udev and systemd in world builds.
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
>
>  SRC_URI += "file://touchscreen.rules \
>             file://00-create-volatile.conf \
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#167960):
> https://lists.openembedded.org/g/openembedded-core/message/167960
> Mute This Topic: https://lists.openembedded.org/mt/92360228/3617156
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> Martin.Jansa@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
Martin Jansa July 13, 2022, 4 p.m. UTC | #2
On Wed, Jul 13, 2022 at 5:57 PM Martin Jansa via lists.openembedded.org
<Martin.Jansa=gmail.com@lists.openembedded.org> wrote:

> Don't use :append together with +=, just add the leading space in the
> value.
>
> Wasn't there a warning when these 2 are used together?
>

There should be a warning since:

https://git.openembedded.org/bitbake/commit/?id=8c31e75557dc6a8d8f407b5d24d6327889a3e3b1
Richard Purdie July 13, 2022, 4:26 p.m. UTC | #3
On Wed, 2022-07-13 at 16:41 +0100, Luca Bocassi wrote:
> From: Luca Boccassi <luca.boccassi@microsoft.com>
> 
> Support for unmerged-usr is deprecated upstream, taints the system and will be
> removed in the near future.
> Enforce building merged-usr images when using systemd.
> 
> Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
> ---
> v2: use :append in each recipe
> 
>  meta/recipes-core/systemd/systemd-compat-units.bb | 2 +-
>  meta/recipes-core/systemd/systemd-serialgetty.bb  | 2 +-
>  meta/recipes-core/systemd/systemd.inc             | 5 +++++
>  meta/recipes-core/systemd/systemd_251.2.bb        | 2 +-
>  4 files changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb
> index 55ebf99117..9085075a78 100644
> --- a/meta/recipes-core/systemd/systemd-compat-units.bb
> +++ b/meta/recipes-core/systemd/systemd-compat-units.bb
> @@ -14,7 +14,7 @@ INHIBIT_DEFAULT_DEPS = "1"
>  
>  ALLOW_EMPTY:${PN} = "1"
>  
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
>  
>  SYSTEMD_DISABLED_SYSV_SERVICES = " \
>    busybox-udhcpc \
> diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb b/meta/recipes-core/systemd/systemd-serialgetty.bb
> index fd888bb834..60e18c4298 100644
> --- a/meta/recipes-core/systemd/systemd-serialgetty.bb
> +++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
> @@ -14,7 +14,7 @@ S = "${WORKDIR}"
>  
>  # As this package is tied to systemd, only build it when we're also building systemd.
>  inherit features_check
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
>  
>  do_install() {
>  	if [ ! -z "${SERIAL_CONSOLES}" ] ; then
> diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
> index b8dbe2263a..f9e109bba4 100644
> --- a/meta/recipes-core/systemd/systemd.inc
> +++ b/meta/recipes-core/systemd/systemd.inc
> @@ -21,3 +21,8 @@ SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${S
>  "
>  
>  S = "${WORKDIR}/git"
> +
> +# unmerged-usr support is deprecated upstream, taints the system and will be
> +# removed in the near future. Fail the build if it is not enabled.
> +inherit features_check
> +REQUIRED_DISTRO_FEATURES = "usrmerge"
> diff --git a/meta/recipes-core/systemd/systemd_251.2.bb b/meta/recipes-core/systemd/systemd_251.2.bb
> index bb3c59f418..b1358420eb 100644
> --- a/meta/recipes-core/systemd/systemd_251.2.bb
> +++ b/meta/recipes-core/systemd/systemd_251.2.bb
> @@ -12,7 +12,7 @@ inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu
>  
>  # As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
>  # that we don't build both udev and systemd in world builds.
> -REQUIRED_DISTRO_FEATURES = "systemd"
> +REQUIRED_DISTRO_FEATURES:append += "systemd"
> 

We shouldn't need :append here, just go with += "systemd".

Cheers,

Richard
Luca Boccassi July 13, 2022, 4:55 p.m. UTC | #4
On Wed, 13 Jul 2022 at 17:26, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2022-07-13 at 16:41 +0100, Luca Bocassi wrote:
> > From: Luca Boccassi <luca.boccassi@microsoft.com>
> >
> > Support for unmerged-usr is deprecated upstream, taints the system and will be
> > removed in the near future.
> > Enforce building merged-usr images when using systemd.
> >
> > Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
> > ---
> > v2: use :append in each recipe
> >
> >  meta/recipes-core/systemd/systemd-compat-units.bb | 2 +-
> >  meta/recipes-core/systemd/systemd-serialgetty.bb  | 2 +-
> >  meta/recipes-core/systemd/systemd.inc             | 5 +++++
> >  meta/recipes-core/systemd/systemd_251.2.bb        | 2 +-
> >  4 files changed, 8 insertions(+), 3 deletions(-)
> >
> > diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb
> > index 55ebf99117..9085075a78 100644
> > --- a/meta/recipes-core/systemd/systemd-compat-units.bb
> > +++ b/meta/recipes-core/systemd/systemd-compat-units.bb
> > @@ -14,7 +14,7 @@ INHIBIT_DEFAULT_DEPS = "1"
> >
> >  ALLOW_EMPTY:${PN} = "1"
> >
> > -REQUIRED_DISTRO_FEATURES = "systemd"
> > +REQUIRED_DISTRO_FEATURES:append += "systemd"
> >
> >  SYSTEMD_DISABLED_SYSV_SERVICES = " \
> >    busybox-udhcpc \
> > diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb b/meta/recipes-core/systemd/systemd-serialgetty.bb
> > index fd888bb834..60e18c4298 100644
> > --- a/meta/recipes-core/systemd/systemd-serialgetty.bb
> > +++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
> > @@ -14,7 +14,7 @@ S = "${WORKDIR}"
> >
> >  # As this package is tied to systemd, only build it when we're also building systemd.
> >  inherit features_check
> > -REQUIRED_DISTRO_FEATURES = "systemd"
> > +REQUIRED_DISTRO_FEATURES:append += "systemd"
> >
> >  do_install() {
> >       if [ ! -z "${SERIAL_CONSOLES}" ] ; then
> > diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
> > index b8dbe2263a..f9e109bba4 100644
> > --- a/meta/recipes-core/systemd/systemd.inc
> > +++ b/meta/recipes-core/systemd/systemd.inc
> > @@ -21,3 +21,8 @@ SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${S
> >  "
> >
> >  S = "${WORKDIR}/git"
> > +
> > +# unmerged-usr support is deprecated upstream, taints the system and will be
> > +# removed in the near future. Fail the build if it is not enabled.
> > +inherit features_check
> > +REQUIRED_DISTRO_FEATURES = "usrmerge"
> > diff --git a/meta/recipes-core/systemd/systemd_251.2.bb b/meta/recipes-core/systemd/systemd_251.2.bb
> > index bb3c59f418..b1358420eb 100644
> > --- a/meta/recipes-core/systemd/systemd_251.2.bb
> > +++ b/meta/recipes-core/systemd/systemd_251.2.bb
> > @@ -12,7 +12,7 @@ inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu
> >
> >  # As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
> >  # that we don't build both udev and systemd in world builds.
> > -REQUIRED_DISTRO_FEATURES = "systemd"
> > +REQUIRED_DISTRO_FEATURES:append += "systemd"
> >
>
> We shouldn't need :append here, just go with += "systemd".

Mh I could swear with that I was getting:

missing required distro feature 'usrmergesystemd' (not in DISTRO_FEATURES)

It's in the scrollback, but now it doesn't happen anymore, so I
probably had borken it in a different way. One day I'll get the
appends right on first try, one day...

Kind regards,
Luca Boccassi
Richard Purdie July 13, 2022, 8:55 p.m. UTC | #5
There was one issue so far:

https://autobuilder.yoctoproject.org/typhoon/#/builders/101/builds/4303/steps/13/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/131/builds/882/steps/14/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/131/builds/882

and probably more of that one occurring, the build is still in
progress.

The build does have other patches under test in it and those also have
issues but I'm pretty sure the ones above are usrmerge related.

Cheers,

Richard
diff mbox series

Patch

diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb
index 55ebf99117..9085075a78 100644
--- a/meta/recipes-core/systemd/systemd-compat-units.bb
+++ b/meta/recipes-core/systemd/systemd-compat-units.bb
@@ -14,7 +14,7 @@  INHIBIT_DEFAULT_DEPS = "1"
 
 ALLOW_EMPTY:${PN} = "1"
 
-REQUIRED_DISTRO_FEATURES = "systemd"
+REQUIRED_DISTRO_FEATURES:append += "systemd"
 
 SYSTEMD_DISABLED_SYSV_SERVICES = " \
   busybox-udhcpc \
diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb b/meta/recipes-core/systemd/systemd-serialgetty.bb
index fd888bb834..60e18c4298 100644
--- a/meta/recipes-core/systemd/systemd-serialgetty.bb
+++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
@@ -14,7 +14,7 @@  S = "${WORKDIR}"
 
 # As this package is tied to systemd, only build it when we're also building systemd.
 inherit features_check
-REQUIRED_DISTRO_FEATURES = "systemd"
+REQUIRED_DISTRO_FEATURES:append += "systemd"
 
 do_install() {
 	if [ ! -z "${SERIAL_CONSOLES}" ] ; then
diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
index b8dbe2263a..f9e109bba4 100644
--- a/meta/recipes-core/systemd/systemd.inc
+++ b/meta/recipes-core/systemd/systemd.inc
@@ -21,3 +21,8 @@  SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${S
 "
 
 S = "${WORKDIR}/git"
+
+# unmerged-usr support is deprecated upstream, taints the system and will be
+# removed in the near future. Fail the build if it is not enabled.
+inherit features_check
+REQUIRED_DISTRO_FEATURES = "usrmerge"
diff --git a/meta/recipes-core/systemd/systemd_251.2.bb b/meta/recipes-core/systemd/systemd_251.2.bb
index bb3c59f418..b1358420eb 100644
--- a/meta/recipes-core/systemd/systemd_251.2.bb
+++ b/meta/recipes-core/systemd/systemd_251.2.bb
@@ -12,7 +12,7 @@  inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu
 
 # As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
 # that we don't build both udev and systemd in world builds.
-REQUIRED_DISTRO_FEATURES = "systemd"
+REQUIRED_DISTRO_FEATURES:append += "systemd"
 
 SRC_URI += "file://touchscreen.rules \
            file://00-create-volatile.conf \