[OE-core] Circular dependency of do_populate_sysroot

Stefan Herbrechtsmeier stefan at herbrechtsmeier.net
Mon Apr 8 20:19:34 UTC 2019


Am 08.04.19 um 08:55 schrieb richard.purdie at linuxfoundation.org:
> On Mon, 2019-04-08 at 07:43 +0200, Stefan Herbrechtsmeier wrote:
>> Am 07.04.2019 23:35 schrieb richard.purdie at linuxfoundation.org:
>>> You're saying A runtime depends on B and B runtime depends on A.
>>
>> Yes, only the run time depends on each other. This means the
>> dependency doesn't exist during a native build of a or b.
> 
> In which case this is easy, simply set:
> 
> RDEPENDS_${PN}_class-native = ""
> 
> By default the system assumes that native packages have the same
> dependencies as target.

I mean that the build of a-native and b-native don't need b-native or 
a-native to populate the sysroot directory but a-native and b-native 
require b-native or a-native at run time.

I have take a deeper look into the problem and understand that this 
isn't supported by oe because of the native sysroot implementation. The 
implementation evaluates the rdepends during do_populate_sysroot task 
and therefore need to finish all other do_populate_sysroot task before.

It would be nice if the native sysroot uses packages and supports the 
same features as the cross packages which handle dependencies independently.

Best regards
   Stefan


More information about the Openembedded-core mailing list