Re: [PATCH v5] util-linux: split uuid in separate recipe to allow bootstrapping

Luca Bocassi
2021-03-04T12:05:18Z

[-- Attachment #1: Type: text/plain, Size: 2961 bytes --]

On Wed, 2021-03-03 at 22:30 +0000, Richard Purdie wrote:
> On Thu, 2021-02-25 at 15:30 +0000, luca.boccassi@gmail.com wrote:
> > From: Luca Boccassi <luca.boccassi@microsoft.com>
> >
> > diff --git a/meta/recipes-core/util-linux/util-linux-uuid_2.36.2.bb b/meta/recipes-core/util-linux/util-linux-uuid_2.36.2.bb
> > new file mode 100644
> > index 0000000000..ffb2c87270
> > --- /dev/null
> > +++ b/meta/recipes-core/util-linux/util-linux-uuid_2.36.2.bb
> > @@ -0,0 +1,22 @@
> >
> [...]
> > +S = "${WORKDIR}/util-linux-${PV}"
> > +EXTRA_OECONF += "--disable-all-programs --enable-libuuid"
> > +DEBIAN_NOAUTONAME_util-linux-libuuid = "1"
> > +DEBIAN_NOAUTONAME_util-linux-libuuid-dev = "1"
> > +DEBIAN_NOAUTONAME_util-linux-libuuid-dbg = "1"
> > +PACKAGES = "util-linux-libuuid util-linux-libuuid-dev util-linux-libuuid-dbg"
> > +FILES_util-linux-libuuid = "${libdir}/libuuid.so.*"
> > +FILES_util-linux-libuuid-dev = "${libdir}/libuuid.so ${includedir} ${libdir}/pkgconfig"
> > +FILES_util-linux-libuuid-dbg = "/usr/src ${libdir}/.debug"
> > +
> [...]
> > diff --git a/meta/recipes-core/util-linux/util-linux_2.36.2.bb b/meta/recipes-core/util-linux/util-linux_2.36.2.bb
> > index 19950a2726..d4406695f6 100644
> > --- a/meta/recipes-core/util-linux/util-linux_2.36.2.bb
> > +++ b/meta/recipes-core/util-linux/util-linux_2.36.2.bb
> > @@ -1,46 +1,8 @@
> > [...]
> >
> > +RDEPENDS_${PN}_append += " util-linux-uuid"
> > +
>
> I know this patch has caused a bit of confusion as it blew up in testing.
> I can't explain why you didn't see that but I did spot why its breaking.
> I've cut this email to the bare bones of the problem for clarity.
>
> In util-linux-uuid, you set PACKAGES as above with util-linux-libuuid.
>
> In util-linux, you set it to refer to a util-linux-uuid package which
> does not exist. It needs s/uuid/libuuid/. RDEPENDS refer to PACKAGES
> namespace so need to be consistent.
>
> Why the tools haven't been clearer about the issue, I don't know but
> that is no doubt causing many of the issues.
>
> Cheers,
>
> Richard

Thanks for the suggestion, I had completely missed it - I get confused
all the time w.r.t. using the source package name or the binary package
names in the various fields.

I'll shortly send v6 with the following changes:

- install .a in libuuid-dev
- change rdepends on uuid /uuid/libuuid/
- add rdepends on uuid-dev to libuuid-dev
- remove rprovides of libuuid-dev from uuid-dev

The local.conf I am using to test this adds the following lines on top
of the default that's auto-generated:

PACKAGECONFIG_append_pn-util-linux += " cryptsetup"
PACKAGECONFIG_remove_pn-cryptsetup += " blkid"
PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"

Not sure why the issue wasn't seen, I suspect there's some additional
packages that need to be included for it to manifest, although I'm not
sure which.

--
Kind regards,
Luca Boccassi

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 499 bytes --]