This section will cover the meta-gemstone Yocto project, which is used
to compile the Kernel, Bootloader, Firmware, BSP (Board Support Packages), and Initrd (Init Ramdisk) components for
Gemstone development boards.
By the end of this section, you will have knowledge about the following topics:
- The structure of Yocto projects for Gemstone
- How Yocto compilation processes are performed
devbox shell
—> task box
—> task yocto:build
.The Taskfile expects only the
MACHINE
variable from you for Yocto builds. If no assignment is made,
intel-corei7-64
is selected by default.
Example
1. meta-gemstone
All Yocto-specific developments for Gemstone are consolidated in the meta-gemstone layer. To preserve Yocto’s modular structure and enable quick adaptation to layer updates, no modifications should be made to . Instead, desired recipes should be customized in the meta-gemstone layer using Yocto’s.bbappend
files.
1.1. Folder Structure
conf/
This folder contains distribution configurations, , and machine-specific configuration templates.
recipes-core/images/
Definitions for which packages initrd and other images will include, along with their requirements and
features, are specified in
.bb
recipe files located in this folder.recipes-*/
All other folders starting with
recipes-
are used to categorize recipes. .bbappend
files, which allow
customization of recipes written in other layers, are typically stored in these folders.2. Yocto Outputs
During the build process, Yocto can package almost all projects in DEB, IPK, or RPM formats. Since Gemstone is Debian-based, it has been deemed appropriate to package projects compiled for the Gemstone distribution in DEB format.You can access the generated packages in the
<sdk-directory>/build/yocto/tmp-musl/deploy/deb/<machine-name>
folder.Debos
When creating the Gemstone image, Debos retrieves files such as the kernel, bootloader, firmware, device-tree,
and initrd from the DEB packages generated by Yocto and places them in the /boot directory.
Gemstone APT Server
Machine-specific DEB packages, such as kernel modules, initrd, bootloader, and firmware, are produced by Yocto
and uploaded to the Gemstone APT server.