Bug 1560 - Enable recipe specific sysroots
Summary: Enable recipe specific sysroots
Status: RESOLVED FIXED
Alias: None
Product: Meta-yocto
Classification: Build System, Metadata & Runtime
Component: meta-yocto (show other bugs)
Version: unspecified
Hardware: x86 Multiple
: High enhancement
Target Milestone: 2.3 M2
Assignee: Richard Purdie
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks: 10684
  Show dependency tree
 
Reported: 2011-10-03 07:12 UTC by Richard Purdie
Modified: 2017-01-23 14:46 UTC (History)
11 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Yes (doc changes required)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Purdie 2011-10-03 07:12:09 UTC
Enabling recipe specific sysroots would mean that only items present in a task's DEPENDS would be present in the sysroot so there would be 100% deterministic builds as dependencies couldn't be accidentally be satifised as per the current shared sysroot.

From a practical implementation level, this would mean the addition of a populate_recipe_sysroot task before do_configure which would replace the existing populate_sysroot task.
Comment 1 Richard Purdie 2016-11-30 16:53:40 UTC
There is a proof of concept patch on the oe-architecture list.
Comment 2 Randy MacLeod 2016-12-07 20:36:27 UTC
I think this would be a great improvement to the build system. 

One minor downside is that we would not accidentally discover missing dependencies by finding race conditions in the builds. Do you think that we should add yet another flag to permit the existing sysroot behaviour or do we just have to come up with a more intelligent way, that doesn't involve error-prone developers, for discovering package dependencies?
Comment 3 Christopher Larson 2016-12-07 20:37:43 UTC
I think if you want to know what optional deps a project has, you should read the documentation on the project, run ./configure --help, or read configure.in :)
Comment 4 Randy MacLeod 2016-12-08 01:38:58 UTC
That's your fix? It'll never work reliably, at least for other people. :)
Random discovery isn't much or any better though.
Comment 5 Richard Purdie 2017-01-23 14:46:37 UTC
Just over 5 years later from when I originally filed this, it finally has landed:
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=9107d6ca144ac1f6169830dee25dae2dad775333