On Wed, Apr 12, 2023 at 04:28:45PM -0500, Andrew Davis wrote:
> On 4/12/23 4:25 PM, Denys Dmytriyenko wrote:
> >On Wed, Apr 12, 2023 at 04:08:50PM -0500, Andrew Davis wrote:
> >>On 4/12/23 3:43 PM, Denys Dmytriyenko wrote:
> >>>On Wed, Apr 12, 2023 at 01:42:41PM -0500, Andrew Davis via 
> >>>lists.yoctoproject.org wrote:
> >>>>Neither of recipes nor their ABI is all that stable. OpenGL might be
> >>>>slightly more stable, but that is not what these provide anymore.
> >>>>Remove these.
> >>>
> >>>This is not what you think it is... :) Actually, Rogue recipes should be 
> >>>added
> >>>to the list.
> >>>
> >>>This is specific to signatures/shared state. The ABI in this case is 
> >>>libgles
> >>>and libegl (which are stable) and tells bitbake to avoid rebuilding generic
> >>>apps depending on these packages between platfoms in the same architecture.
> >>>
> >>
> >>These do not provide those API anymore, Mesa does. And nothing should depend
> >>on the KM package other than the UM libs.
> >
> >Still doesn't matter - if you have Mesa depend on these, you still need them
> >listed in here to avoid rebuilding Mesa from one platform to another. And
> >everything else downstream.
> >
> 
> We *want* Mesa to be rebuilt if these change, these do not provide a stable 
> ABI
> anymore, it can and does change, sometimes between platforms (SGX KM -> UM is
> based on plat).

The name of the variable may be confusing. It's not about rebuilding Mesa once 
you make changes to the KM/UM pieces - that will happen automatically if the 
dependencies are tracked properly.

This variable is about re-use of the dependant generic packages. The issue it 
is trying to solve is when you have machine-specific packages early in the 
dependecy tree, everything down the dependency tree that depends on these 
packages will be treated as machine-specific, even if they are generic. Since 
bitbake will try to play safe here, you have to tell it otherwise.

Again, this is not about rebuilds of a dependent component between changes. 
This is about rebuilds of a dependent component between different machines 
(platforms) w/o making any changes.

For example, Wayland, Weston and all Qt5 modules are generic and should be 
re-used from shared state across all our Aarch64 platforms, but that's not the 
case and they are being rebuilt for each and every platform again and again.

I've done some experiments locally - back when SGX/Rogue UM libs provided 
libgles, libegl, libgbm (which API/ABI are supposed to be stable!), you 
certainly wanted to have them listed in this SIGGEN_EXCLUDERECIPES_ABISAFE 
list. Now, those ABIs have shifted to Mesa and we do mark that package as 
machine-specific (I had to add PACKAGE_ARCH = "${MACHINE_ARCH}" when redoing 
Reese's patches - see v8 changes section at [1]). With that in mind, this 
variable now has to list Mesa instead of individual UM packages - the patch 
is coming.

[1] 
https://patchwork.yoctoproject.org/project/ti/patch/[email protected]/

-- 
Denys
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#16402): 
https://lists.yoctoproject.org/g/meta-ti/message/16402
Mute This Topic: https://lists.yoctoproject.org/mt/98225808/21656
Group Owner: [email protected]
Unsubscribe: 
https://lists.yoctoproject.org/g/meta-ti/leave/6695321/21656/1393940836/xyzzy 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to