| Summary: | update-alternatives.bbclass automatic renaming doesn't happen in sysroots | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Denys Dmytriyenko <denis> |
| Component: | deployment | Assignee: | Richard Purdie <richard.purdie> |
| Status: | RESOLVED WONTFIX | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | richard.purdie |
| Version: | unspecified | ||
| Target Milestone: | 2.3 | ||
| Hardware: | All | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
|
Description
Denys Dmytriyenko
2015-12-07 15:57:08 UTC
Denys: Its kind of deliberate that we don't do renaming within the sysroots since we don't install target binaries there, or docs so no conflicting man pages. For natives, we just only install the binaries we want. The alternative would be to start adding postinstalls to all sstate objects but this introduces huge amounts of complexity to solve a problem which we don't seem to encounter. Perhaps you could explain the problem you're seeing? Richard,
I was seeing this issue (in Fido) when trying to build and package multiple firmware images, specifically different payloads for DSP. The way the driver works is it expects a file with predefined name in /lib/firmware which gets loaded and executed on DSP core during initialization. Since there could be different payloads, using update-alternatives to manage those seems reasonable. So, initially we tried using automatic renaming and it mostly worked, except during staging step. E.g. bitbake payload1 works, but then bitbake payload2 gives the populate_sysroot error messages above. I ended up doing explicit rename in all payload recipes by adding .${BPN} suffix in do_install for now, due to this issue...
I haven't tested it against master yet, not sure if something improved in the staging handling.
I have given this more thought and I don't think we can ever expect update-alternatives to work in the sysroot. The sysroots don't have postinstalls, nor do we want to start supporting that. It would simply add too much complication for something which really should be handled in a different way (e.g. the way images have a symlink to the latest image). |