Applications need a way to include/ship libraries not included in the core or the profile

Description

Applications (e.g. like the navigation app) rely on other libraries or binaries to fulfill their job.

These might not be contained in the AGL baseline and thus need to be shipped within the wgt (or as dependency in a separate wgt).

 

This affects the SDK as it needs to allow to build/include additional libraries (in wgt or as rpm tbd). And the appfw as it might have to deal with dependencies (if decided to ship multiple depending wgt's) .

Overall it might be better to not introduce dependencies between wgt's as a general tool to solve this very problem (still we will need them and versioning b/c or service-app stacking).

 

The road forward currently seems to be:

  • Decouple this from the yocto builds

  • Find and document way to include extra library builds in the wgt alongside the app.

    • This already somewhat works as library lookup within the wgt is supported.

    • Documentation is needed

    • SDK helpers are needed

  • For the profiles :

    • these libraries should then be available as add-on rpm feed

    • Needs to be created with the SDK

    • Document process within SDK

 

To be further discussed @SAT level .

Environment

None
100% Done
Loading...

Activity

Jan-Simon Moeller 
September 1, 2020 at 2:20 PM

Can be resolved.

Walt Miner 
April 26, 2018 at 1:44 PM

Action item 2 initial version completed as part of layer and profile restructure. 

Walt Miner 
October 13, 2017 at 2:45 PM

Need to complete AI 2 and AI 3 above. 

Romain Forlot 
October 12, 2017 at 7:44 AM

Documentation for DIY inclusion available here, and documentation using CMake template way available here.

Romain Forlot 
October 5, 2017 at 3:40 PM

WIP could be seen at : https://gerrit.automotivelinux.org/gerrit/gitweb?p=apps/app-templates.git;a=log;h=refs/heads/externalproject_wip

Almost finished, there is some discussion about where to put binding and libraries but core is here.

Idea here, is to use ExternalProject CMake module to build the external library, then add a custom target and command attached to the result of ExternalProject build.

Upcoming change very soon !

Fixed

Details

Assignee

Reporter

Labels

Contract ID

Priority

Created September 5, 2017 at 2:40 PM
Updated September 1, 2020 at 2:20 PM
Resolved September 1, 2020 at 2:20 PM