From cfdf4c78eb442169c32cb4d67fe7afe203de0d50 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Mon, 12 Feb 2018 09:11:37 -0800 Subject: getting-started, dev-manual: Created Layer Model section This involved removing the general information about layers from the dev-manual and incorporating it into the new section of the getting-started manual. (From yocto-docs rev: 26438b03751948661f48fb0c023e393101b80e19) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- .../dev-manual/dev-manual-common-tasks.xml | 74 +------------ .../getting-started/getting-started-yp-intro.xml | 118 ++++++++++++++++++++- 2 files changed, 120 insertions(+), 72 deletions(-) (limited to 'documentation') diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 8e8b06fba1..f757465935 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml @@ -22,78 +22,12 @@ multiple layers. Layers allow you to isolate different types of customizations from each other. - You might find it tempting to keep everything in one layer when - working on a single project. - However, the more modular your Metadata, the easier - it is to cope with future changes. - - - - To illustrate how layers are used to keep things modular, consider - machine customizations. - These types of customizations typically reside in a special layer, - rather than a general layer, called a Board Support Package (BSP) - Layer. - Furthermore, the machine customizations should be isolated from - recipes and Metadata that support a new GUI environment, - for example. - This situation gives you a couple of layers: one for the machine - configurations, and one for the GUI environment. - It is important to understand, however, that the BSP layer can - still make machine-specific additions to recipes within the GUI - environment layer without polluting the GUI layer itself - with those machine-specific changes. - You can accomplish this through a recipe that is a BitBake append - (.bbappend) file, which is described later - in this section. - - For general information on BSP layer structure, see the - Board Support Packages (BSP) - Developer's Guide. - - - - + For introductory information on the Yocto Project Layer Model, + see the + "The Yocto Project Layer Model" + section in the Getting Started With Yocto Project Manual. -
- Layers - - - The Source Directory - contains both general layers and BSP - layers right out of the box. - You can easily identify layers that ship with a - Yocto Project release in the Source Directory by their - folder names. - Folders that represent layers typically have names that begin with - the string meta-. - - It is not a requirement that a layer name begin with the - prefix meta-, but it is a commonly - accepted standard in the Yocto Project community. - - For example, when you set up the Source Directory structure, - you will see several layers: - meta, - meta-skeleton, - meta-selftest, - meta-poky, and - meta-yocto-bsp. - Each of these folders represents a distinct layer. - - - - As another example, if you set up a local copy of the - meta-intel Git repository - and then explore the folder of that general layer, - you will discover many Intel-specific BSP layers inside. - For more information on BSP layers, see the - "BSP Layers" - section in the Yocto Project Board Support Package (BSP) - Developer's Guide. - -
-
Creating Your Own Layer diff --git a/documentation/getting-started/getting-started-yp-intro.xml b/documentation/getting-started/getting-started-yp-intro.xml index 8ea11baa75..c160c1cf62 100644 --- a/documentation/getting-started/getting-started-yp-intro.xml +++ b/documentation/getting-started/getting-started-yp-intro.xml @@ -265,9 +265,123 @@
-
- What are Layers? +
+ The Yocto Project Layer Model + + The Yocto Project's "Layer Model" is a development model for + embedded and IoT Linux creation that distinguishes the + Yocto Project from other simple build systems. + The Layer Model simultaneously supports collaboration and + customization. + Layers are repositories that contain related sets of instructions + that tell the OpenEmbedded build system what to do. + You can collaborate, share, and reuse layers. + + + + Layers can contain changes to previous instructions or settings + at any time. + This powerful override capability is what allows you to customize + previously supplied collaborative or community layers to suit your + product requirements. + + + + You use different layers to logically separate information in your + build. + As an example, you could have BSP, GUI, distro configuration, + middleware, or application layers. + Putting your entire build into one layer limits and complicates + future customization and reuse. + Isolating information into layers, on the other hand, helps + simplify future customizations and reuse. + You might find it tempting to keep everything in one layer when + working on a single project. + However, the more modular your Metadata, the easier + it is to cope with future changes. + Notes + + + Use Board Support Package (BSP) layers from silicon + vendors when possible. + + + Familiarize yourself with the + Yocto Project curated layer index + or the + OpenEmbedded layer index. + The latter contains more layers but they are less + universally validated. + + + Layers support the inclusion of technologies, hardware + components, and software components. + The Yocto Project Compatible designation provides a + minimum level of standardization that contributes to a + strong ecosystem. + "YP Compatible" is applied to appropriate products and + software components such as BSPs, other OE-compatible + layers, and related open-source projects, allowing the + producer to use Yocto Project badges and branding + assets. + + + + + + + To illustrate how layers are used to keep things modular, consider + machine customizations. + These types of customizations typically reside in a special layer, + rather than a general layer, called a BSP Layer. + Furthermore, the machine customizations should be isolated from + recipes and Metadata that support a new GUI environment, + for example. + This situation gives you a couple of layers: one for the machine + configurations, and one for the GUI environment. + It is important to understand, however, that the BSP layer can + still make machine-specific additions to recipes within the GUI + environment layer without polluting the GUI layer itself + with those machine-specific changes. + You can accomplish this through a recipe that is a BitBake append + (.bbappend) file, which is described later + in this section. + + For general information on BSP layer structure, see the + Board Support Packages (BSP) - Developer's Guide. + + + + + The + Source Directory + contains both general layers and BSP layers right out of the box. + You can easily identify layers that ship with a Yocto Project + release in the Source Directory by their names. + Layers typically have names that begin with the string + meta-. + + It is not a requirement that a layer name begin with the + prefix meta-, but it is a commonly + accepted standard in the Yocto Project community. + + For example, if you were to examine the + tree view + of the poky repository, you will see several + layers: meta, + meta-skeleton, + meta-selftest, + meta-poky, and + meta-yocto-bsp. + Each of these repositories represents a distinct layer. + + + + For procedures on how to create layers, see the + "Understanding and Creating Layers" + section in the Yocto Project Development Tasks Manual. +
-- cgit v1.2.3-54-g00ecf