Decomposing Yocto's architecture and workflow
Yocto is a complex beast. Taking it apart is the first step toward understanding it. The architecture of a build system can be organized in terms of its workflow. Yocto gets its workflow from the OpenEmbbedded project, which it is based on. Source materials feed into the system as inputs by way of metadata in the form of BitBake recipes. The build system uses this metadata to fetch, configure, and compile the source code into binary package feeds. These individual output packages are assembled inside a staging area before the finished Linux image and SDK are generated, complete with a manifest that includes a license for each package that's on board:
Here are the seven steps of Yocto's build system workflow, as shown in the
preceding diagram:
- Define layers for policy, machine, and software metadata.
- Fetch sources from the source...