diff options
| -rw-r--r-- | documentation/mega-manual/figures/layer-input.png | bin | 45856 -> 170701 bytes | |||
| -rw-r--r-- | documentation/overview-manual/figures/layer-input.png | bin | 45856 -> 170701 bytes | |||
| -rw-r--r-- | documentation/overview-manual/overview-manual-concepts.xml | 111 |
3 files changed, 72 insertions, 39 deletions
diff --git a/documentation/mega-manual/figures/layer-input.png b/documentation/mega-manual/figures/layer-input.png index 0a4f2e74f3..202f23b207 100644 --- a/documentation/mega-manual/figures/layer-input.png +++ b/documentation/mega-manual/figures/layer-input.png | |||
| Binary files differ | |||
diff --git a/documentation/overview-manual/figures/layer-input.png b/documentation/overview-manual/figures/layer-input.png index 0a4f2e74f3..202f23b207 100644 --- a/documentation/overview-manual/figures/layer-input.png +++ b/documentation/overview-manual/figures/layer-input.png | |||
| Binary files differ | |||
diff --git a/documentation/overview-manual/overview-manual-concepts.xml b/documentation/overview-manual/overview-manual-concepts.xml index b8d1fa2b92..ee9877e4f8 100644 --- a/documentation/overview-manual/overview-manual-concepts.xml +++ b/documentation/overview-manual/overview-manual-concepts.xml | |||
| @@ -580,64 +580,92 @@ | |||
| 580 | This section takes a closer look at the layers the build system | 580 | This section takes a closer look at the layers the build system |
| 581 | uses to further control the build. | 581 | uses to further control the build. |
| 582 | These layers provide Metadata for the software, machine, and | 582 | These layers provide Metadata for the software, machine, and |
| 583 | policy. | 583 | policies. |
| 584 | </para> | 584 | </para> |
| 585 | 585 | ||
| 586 | <para> | 586 | <para> |
| 587 | In general, three types of layer input exist: | 587 | In general, three types of layer input exists. |
| 588 | You can see them below the "User Configuration" box in the | ||
| 589 | <link linkend='general-workflow-figure'>general workflow figure</link>: | ||
| 588 | <itemizedlist> | 590 | <itemizedlist> |
| 589 | <listitem><para> | 591 | <listitem><para> |
| 590 | <emphasis>Policy Configuration:</emphasis> | 592 | <emphasis>Metadata (<filename>.bb</filename> + Patches):</emphasis> |
| 591 | Distribution Layers provide top-level or general | 593 | Software layers containing user-supplied recipe files, |
| 592 | policies for the image or SDK being built. | 594 | patches, and append files. |
| 593 | For example, this layer would dictate whether BitBake | 595 | A good example of a software layer might be the |
| 594 | produces RPM or IPK packages. | 596 | <ulink url='https://github.com/meta-qt5/meta-qt5'><filename>meta-qt5</filename></ulink> |
| 597 | layer from the | ||
| 598 | <ulink url='http://layers.openembedded.org/layerindex/branch/master/layers/'>OpenEmbedded Layer Index</ulink>. | ||
| 599 | This layer is for version 5.0 of the popular | ||
| 600 | <ulink url='https://wiki.qt.io/About_Qt'>Qt</ulink> | ||
| 601 | cross-platform application development framework for | ||
| 602 | desktop, embedded and mobile. | ||
| 595 | </para></listitem> | 603 | </para></listitem> |
| 596 | <listitem><para> | 604 | <listitem><para> |
| 597 | <emphasis>Machine Configuration:</emphasis> | 605 | <emphasis>Machine BSP Configuration:</emphasis> |
| 598 | Board Support Package (BSP) layers provide machine | 606 | Board Support Package (BSP) layers (i.e. "BSP Layer" |
| 607 | in the following figure) providing machine-specific | ||
| 599 | configurations. | 608 | configurations. |
| 600 | This type of information is specific to a particular | 609 | This type of information is specific to a particular |
| 601 | target architecture. | 610 | target architecture. |
| 611 | A good example of a BSP layer from the | ||
| 612 | <link linkend='gs-reference-distribution-poky'>Poky Reference Distribution</link> | ||
| 613 | is the | ||
| 614 | <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta-yocto-bsp'><filename>meta-yocto-bsp</filename></ulink> | ||
| 615 | layer. | ||
| 602 | </para></listitem> | 616 | </para></listitem> |
| 603 | <listitem><para> | 617 | <listitem><para> |
| 604 | <emphasis>Metadata:</emphasis> | 618 | <emphasis>Policy Configuration:</emphasis> |
| 605 | Software layers contain user-supplied recipe files, | 619 | Distribution Layers (i.e. "Distro Layer" in the |
| 606 | patches, and append files. | 620 | following figure) providing top-level or general |
| 621 | policies for the images or SDKs being built for a | ||
| 622 | particular distribution. | ||
| 623 | For example, in the Poky Reference Distribution the | ||
| 624 | distro layer is the | ||
| 625 | <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta-poky'><filename>meta-poky</filename></ulink> | ||
| 626 | layer. | ||
| 627 | Within the distro layer is a | ||
| 628 | <filename>conf/distro</filename> directory that | ||
| 629 | contains distro configuration files (e.g. | ||
| 630 | <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta-poky/conf/distro/poky.conf'><filename>poky.conf</filename></ulink> | ||
| 631 | that contain many policy configurations for the | ||
| 632 | Poky distribution. | ||
| 607 | </para></listitem> | 633 | </para></listitem> |
| 608 | </itemizedlist> | 634 | </itemizedlist> |
| 609 | </para> | 635 | </para> |
| 610 | 636 | ||
| 611 | <para> | 637 | <para> |
| 612 | The following figure shows an expanded representation of the | 638 | The following figure shows an expanded representation of |
| 613 | Metadata, Machine Configuration, and Policy Configuration input | 639 | these three layers from the |
| 614 | (layers) boxes of the | ||
| 615 | <link linkend='general-workflow-figure'>general workflow figure</link>: | 640 | <link linkend='general-workflow-figure'>general workflow figure</link>: |
| 616 | </para> | 641 | <imagedata fileref="figures/layer-input.png" align="center" width="816px" depth="1056px" scalefit="1" /> |
| 617 | |||
| 618 | <para> | ||
| 619 | <imagedata fileref="figures/layer-input.png" align="center" width="8in" depth="7.5in" /> | ||
| 620 | </para> | 642 | </para> |
| 621 | 643 | ||
| 622 | <para> | 644 | <para> |
| 623 | In general, all layers have a similar structure. | 645 | In general, all layers have a similar structure. |
| 624 | They all contain a licensing file | 646 | They all contain a licensing file |
| 625 | (e.g. <filename>COPYING</filename>) if the layer is to be | 647 | (e.g. <filename>COPYING.MIT</filename>) if the layer is to be |
| 626 | distributed, a <filename>README</filename> file as good | 648 | distributed, a <filename>README</filename> file as good |
| 627 | practice and especially if the layer is to be distributed, a | 649 | practice and especially if the layer is to be distributed, a |
| 628 | configuration directory, and recipe directories. | 650 | configuration directory, and recipe directories. |
| 651 | You can learn about the general structure for layers used with | ||
| 652 | the Yocto Project in the | ||
| 653 | "<ulink url='&YOCTO_DOCS_DEV_URL;#creating-your-own-layer'>Creating Your Own Layer</ulink>" | ||
| 654 | section in the Yocto Project Development Tasks Manual. | ||
| 655 | For a general discussion on layers and the many layers from | ||
| 656 | which you can draw, see the | ||
| 657 | "<link linkend='overview-layers'>Layers</link>" and | ||
| 658 | "<link linkend='the-yocto-project-layer-model'>The Yocto Project Layer Model</link>" | ||
| 659 | sections both earlier in this manual. | ||
| 629 | </para> | 660 | </para> |
| 630 | 661 | ||
| 631 | <para> | 662 | <para> |
| 632 | The Yocto Project has many layers that can be used. | 663 | If you explored the previous links, you discovered some |
| 633 | You can see a web-interface listing of them on the | 664 | areas where many layers that work with the Yocto Project |
| 665 | exist. | ||
| 666 | The | ||
| 634 | <ulink url="http://git.yoctoproject.org/">Source Repositories</ulink> | 667 | <ulink url="http://git.yoctoproject.org/">Source Repositories</ulink> |
| 635 | page. | 668 | also shows layers categorized under "Yocto Metadata Layers." |
| 636 | The layers appear at the bottom categorized under | ||
| 637 | "Yocto Metadata Layers." | ||
| 638 | These layers are fundamentally a subset of the | ||
| 639 | <ulink url="http://layers.openembedded.org/layerindex/layers/">OpenEmbedded Layer Index</ulink>, | ||
| 640 | which lists all layers provided by the OpenEmbedded community. | ||
| 641 | <note> | 669 | <note> |
| 642 | Layers exist in the Yocto Project Source Repositories that | 670 | Layers exist in the Yocto Project Source Repositories that |
| 643 | cannot be found in the OpenEmbedded Layer Index. | 671 | cannot be found in the OpenEmbedded Layer Index. |
| @@ -652,12 +680,6 @@ | |||
| 652 | should be using as part of the build. | 680 | should be using as part of the build. |
| 653 | </para> | 681 | </para> |
| 654 | 682 | ||
| 655 | <para> | ||
| 656 | For more information on layers, see the | ||
| 657 | "<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding and Creating Layers</ulink>" | ||
| 658 | section in the Yocto Project Development Tasks Manual. | ||
| 659 | </para> | ||
| 660 | |||
| 661 | <section id="distro-layer"> | 683 | <section id="distro-layer"> |
| 662 | <title>Distro Layer</title> | 684 | <title>Distro Layer</title> |
| 663 | 685 | ||
| @@ -704,6 +726,16 @@ | |||
| 704 | to add distribution-specific configuration, | 726 | to add distribution-specific configuration, |
| 705 | initialization scripts, custom image recipes, | 727 | initialization scripts, custom image recipes, |
| 706 | and so forth. | 728 | and so forth. |
| 729 | Examples of <filename>recipes-*</filename> | ||
| 730 | directories are <filename>recipes-core</filename> | ||
| 731 | and <filename>recipes-extra</filename>. | ||
| 732 | Hierarchy and contents within a | ||
| 733 | <filename>recipes-*</filename> directory can vary. | ||
| 734 | Generally, these directories contain recipe files | ||
| 735 | (<filename>*.bb</filename>), recipe append files | ||
| 736 | (<filename>*.bbappend</filename>), directories | ||
| 737 | that are distro-specific for configuration files, | ||
| 738 | and so forth. | ||
| 707 | </para></listitem> | 739 | </para></listitem> |
| 708 | </itemizedlist> | 740 | </itemizedlist> |
| 709 | </para> | 741 | </para> |
| @@ -713,7 +745,8 @@ | |||
| 713 | <title>BSP Layer</title> | 745 | <title>BSP Layer</title> |
| 714 | 746 | ||
| 715 | <para> | 747 | <para> |
| 716 | The BSP Layer provides machine configurations. | 748 | The BSP Layer provides machine configurations that |
| 749 | target specific hardware. | ||
| 717 | Everything in this layer is specific to the machine for | 750 | Everything in this layer is specific to the machine for |
| 718 | which you are building the image or the SDK. | 751 | which you are building the image or the SDK. |
| 719 | A common structure or form is defined for BSP layers. | 752 | A common structure or form is defined for BSP layers. |
| @@ -738,8 +771,8 @@ | |||
| 738 | The remainder of the layer is dedicated to specific recipes | 771 | The remainder of the layer is dedicated to specific recipes |
| 739 | by function: <filename>recipes-bsp</filename>, | 772 | by function: <filename>recipes-bsp</filename>, |
| 740 | <filename>recipes-core</filename>, | 773 | <filename>recipes-core</filename>, |
| 741 | <filename>recipes-graphics</filename>, and | 774 | <filename>recipes-graphics</filename>, |
| 742 | <filename>recipes-kernel</filename>. | 775 | <filename>recipes-kernel</filename>, and so forth. |
| 743 | Metadata can exist for multiple formfactors, graphics | 776 | Metadata can exist for multiple formfactors, graphics |
| 744 | support systems, and so forth. | 777 | support systems, and so forth. |
| 745 | <note> | 778 | <note> |
| @@ -762,8 +795,8 @@ | |||
| 762 | </para> | 795 | </para> |
| 763 | 796 | ||
| 764 | <para> | 797 | <para> |
| 765 | This layer contains any new recipes that your project | 798 | This layer contains any recipes, append files, and |
| 766 | needs in the form of recipe files. | 799 | patches, that your project needs. |
| 767 | </para> | 800 | </para> |
| 768 | </section> | 801 | </section> |
| 769 | </section> | 802 | </section> |
