Documentation
Build system overview
Working with collections It seems every embedded development project finds a need to modify basic system functionality.
It is often challenging to do this in a way that doesn't complicate keeping in sync with the latest system updates. In systems like buildroot, this requires making changes to code that is under source code control by the system software provider. Doing this in a way that doesn't break updates and yet allows you to place your modifications under source code control is often complex and prone to errors. OpenEmbedded and BitBake provide a mechanism called collections that simplifies this process.This section assumes that you have read and understood the Directory layout chapter.
Collections allow you to have multiple repositories of bitbake recipes. This provides two important capabilities:
The gumstix build environment makes extensive use of both of these features. It utilizes three bitbake collections:
This is a snapshot of the OpenEmbedded source tree. It contains thousands of package recipes created by the OpenEmbedded development team.
This directory is kept under gumstix source code control. You should not edit any of these recipes.
This snapshot will be updated on a regular basis to stay in sync with stable versions of OpenEmbedded repository.
This collection is where gumstix customizations are done. It contains overrides to recipes in org.openembedded.snapshot as well as recipes for packages that are unique to gumstix.
This directory is under gumstix source code control. You should not edit these recipes.
This collection belongs to you. You can use it to overrride package recipes in either com.gumstix.collection or org.openembedded.snapshots. You can also use it for your custom package recipes and image recipes.
You should create this directory yourself. It is not under gumstix source code control. It is strongly recommended that you place this directory under your own source code control system.