[OE-core] [PATCH v2 0/3] ipk/deb/rpm: add kernel version to its dependencies

Ovidiu-Adrian Vancea ovidiu.vancea at ni.com
Thu Jun 9 14:47:39 UTC 2016


On Wed, 2016-06-08 at 17:59 +0100, Richard Purdie wrote:
> On Wed, 2016-06-08 at 19:08 +0300, Ovidiu-Adrian Vancea wrote:
> > 
> > Updating the kernel (for all package managers) does not update the
> > dependencies
> > (eg. modules) because there is no possibility to do version
> > enforcement in the
> > OE recipe. Upon rebooting, the older version modules do not load
> > and
> > can leave
> > hardware in a non-functioning state (if their drivers are not built
> > into the
> > kernel).
> > 
> > Use the Version field from the kernel package on its rdepends,
> > rrecommends, and
> > rsuggests fields’ version. This makes the packages on which the
> > kernel depends
> > to be the same version as the kernel. Version field contains
> > package
> > build
> > number (including git hash) and package revision, thus restricting
> > the kernel
> > and modules to always be built together.
> > 
> > The current and default behavior will not change unless the
> > variable 
> > "VERSION_KERNEL_MODULES = 1" is defined in the kernel recipe.
> > 
> > Ovidiu-Adrian Vancea (3):
> >   package_ipk.bbclass: add kernel version to its dependencies
> >   package_deb.bbclass: add kernel version to its dependencies
> >   package_rpm.bbclass: add kernel version to its dependencies
> Why are you doing this at package_write_XXX? These tasks are there
> specifically to write out the packages. With your changes the data
> written to the packages would be different to that written out to
> packagedata for example. We shouldn't encourage different package
> metadata in different places.
> 
> I think this needs to happen somewhere at do_package time, probably
> from a hook in module.bbclass?
> 
> Sorry if I wasn't clear about this last time.
> 
> Cheers,
> 
> Richard
> 
> 

At do_package time I can't modify the variables RDEPENDS, RRECOMMENDS
and RSUGGESTS as stated in the following email:
http://lists.openembedded.org/pipermail/bitbake-devel/2013-April/003416
.html
I've tried the smallest changes to these 3 fields but without success,
confirming what was said in the email.
I do manage to get the auto pr data (Version=4.1+git168+a7e53ecc27-
r0.73 - notice r0.73) that I need to version the dependencies.

At variable loading time I could globally change RDEPENDS, RRECOMMENDS
and RSUGGESTS but I can't get the auto pr data. Since I have no auto pr
data, I can go as far as getting Version=4.1+gitAUTOINC+a7e53ecc27-r0
(notice r0, not r0.73) which is incomplete.

The only place I've actually managed to insert the data was at package
creation time (ipk, deb, rpm), which I agree is ugly but I've not found
another to get me where I need.

Thanks for the feedback,
Ovidiu



More information about the Openembedded-core mailing list