Hi Alex,

On Wed, 2022-06-22 at 12:38 +0200, Alexander Kanavin via
lists.openembedded.org wrote:
> On Wed, 18 May 2022 at 09:50, Pascal Bach <[email protected]>
> wrote:
> 
> > The advantages of this approach is:
> > 1. The bitbake environment and the "sdkenv" are the same. The only
> > difference is how you use it (devtool or bitbake) and how much you
> > reley on the sstate cache.
> > 2. Developers always have the full power of bitbake available. So
> > it's
> > easy to update dependencies, crate new sdk and even do completely
> > new
> > builds.
> > 3. There is no need to crate a new eSDK installer as you can always
> > test it directly from within bitbake by calling devtool sdkenv
> > <recipe>
> > 4. Updates are simple as it just means updating the recipes and
> > providing an sstate-mirror.
> > 
> > What do you think? Is this feasible or even desired?
> 
> Yes, it's feasible and I have a working proof of concept now:
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Fmessage%2F167226&amp;data=05%7C01%7Cpascal.bach%40siemens.com%7Ce78c057468254b68ea1f08da543b5dd9%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637914911194376193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=68pCFUkCW%2FYN%2FBddnsZh6v1GQmZE2d1TK7lmeoVlQXo%3D&amp;reserved=0
> 
> Please take a look, try it out and let me know!

I tried out your patches and they do almost exactly what I described.
Thanks a lot for taking this up.

Being able to source the environment instead of just spawning a sub-
shell is even more convenient.

I also think it is sufficient to just run bitbake -c
prepare_recipe_sysroot <application> instead of the full
populate_sysroot to avoid building the full application, which might
take a long time.

What I tested is:

- Building an SDK for an application via:
        bitbake meta-ide-support
        bitbake -c prepare_recipe_sysroot <application>
        bitbake build-sysroots

        . build/tmp/environment-setup-aarch64-ccp-linux

        "build <application> with cmake"

- Updating a dependency and using it in the sdk via:
        "modify poco recipe"
        bitbake poco
        bitbake build-sysroots

        "build <application> with cmake"

Both work and provide a very convenient way to deal with the
dependencies.

Using a local sstate the setup of the sdk only takes a few minutes. I
haven't tested the time using an sstate mirror.

Pascal



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#1563): 
https://lists.openembedded.org/g/openembedded-architecture/message/1563
Mute This Topic: https://lists.openembedded.org/mt/90990557/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-architecture/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to