summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
Diffstat (limited to 'documentation')
-rw-r--r--documentation/overview-manual/overview-manual-concepts.rst42
-rw-r--r--documentation/overview-manual/overview-manual-development-environment.rst12
-rw-r--r--documentation/overview-manual/overview-manual-yp-intro.rst13
3 files changed, 66 insertions, 1 deletions
diff --git a/documentation/overview-manual/overview-manual-concepts.rst b/documentation/overview-manual/overview-manual-concepts.rst
index b37adbbba6..11614d0e6c 100644
--- a/documentation/overview-manual/overview-manual-concepts.rst
+++ b/documentation/overview-manual/overview-manual-concepts.rst
@@ -171,6 +171,9 @@ The following diagram represents the high-level workflow of a build. The
171remainder of this section expands on the fundamental input, output, 171remainder of this section expands on the fundamental input, output,
172process, and metadata logical blocks that make up the workflow. 172process, and metadata logical blocks that make up the workflow.
173 173
174.. image:: figures/YP-flow-diagram.png
175 :align: center
176
174In general, the build's workflow consists of several functional areas: 177In general, the build's workflow consists of several functional areas:
175 178
176- *User Configuration:* metadata you can use to control the build 179- *User Configuration:* metadata you can use to control the build
@@ -211,6 +214,9 @@ The following figure shows an expanded representation of the "User
211Configuration" box of the `general workflow 214Configuration" box of the `general workflow
212figure <#general-workflow-figure>`__: 215figure <#general-workflow-figure>`__:
213 216
217.. image:: figures/user-configuration.png
218 :align: center
219
214BitBake needs some basic configuration files in order to complete a 220BitBake needs some basic configuration files in order to complete a
215build. These files are ``*.conf`` files. The minimally necessary ones 221build. These files are ``*.conf`` files. The minimally necessary ones
216reside as example files in the ``build/conf`` directory of the `Source 222reside as example files in the ``build/conf`` directory of the `Source
@@ -405,6 +411,9 @@ figure <#general-workflow-figure>`__:
405The following figure shows an expanded representation of these three 411The following figure shows an expanded representation of these three
406layers from the `general workflow figure <#general-workflow-figure>`__: 412layers from the `general workflow figure <#general-workflow-figure>`__:
407 413
414.. image:: figures/layer-input.png
415 :align: center
416
408In general, all layers have a similar structure. They all contain a 417In general, all layers have a similar structure. They all contain a
409licensing file (e.g. ``COPYING.MIT``) if the layer is to be distributed, 418licensing file (e.g. ``COPYING.MIT``) if the layer is to be distributed,
410a ``README`` file as good practice and especially if the layer is to be 419a ``README`` file as good practice and especially if the layer is to be
@@ -556,6 +565,9 @@ The remainder of this section provides a deeper look into the source
556files and the mirrors. Here is a more detailed look at the source file 565files and the mirrors. Here is a more detailed look at the source file
557area of the `general workflow figure <#general-workflow-figure>`__: 566area of the `general workflow figure <#general-workflow-figure>`__:
558 567
568.. image:: figures/source-input.png
569 :align: center
570
559Upstream Project Releases 571Upstream Project Releases
560~~~~~~~~~~~~~~~~~~~~~~~~~ 572~~~~~~~~~~~~~~~~~~~~~~~~~
561 573
@@ -637,6 +649,9 @@ area in the upper-right corner.
637This section looks a little closer into the package feeds area used by 649This section looks a little closer into the package feeds area used by
638the build system. Here is a more detailed look at the area: 650the build system. Here is a more detailed look at the area:
639 651
652.. image:: figures/package-feeds.png
653 :align: center
654
640Package feeds are an intermediary step in the build process. The 655Package feeds are an intermediary step in the build process. The
641OpenEmbedded build system provides classes to generate different package 656OpenEmbedded build system provides classes to generate different package
642types, and you specify which classes to enable through the 657types, and you specify which classes to enable through the
@@ -711,6 +726,9 @@ Source Fetching
711The first stages of building a recipe are to fetch and unpack the source 726The first stages of building a recipe are to fetch and unpack the source
712code: 727code:
713 728
729.. image:: figures/source-fetching.png
730 :align: center
731
714The ```do_fetch`` <&YOCTO_DOCS_REF_URL;#ref-tasks-fetch>`__ and 732The ```do_fetch`` <&YOCTO_DOCS_REF_URL;#ref-tasks-fetch>`__ and
715```do_unpack`` <&YOCTO_DOCS_REF_URL;#ref-tasks-unpack>`__ tasks fetch 733```do_unpack`` <&YOCTO_DOCS_REF_URL;#ref-tasks-unpack>`__ tasks fetch
716the source files and unpack them into the `Build 734the source files and unpack them into the `Build
@@ -802,6 +820,9 @@ Patching
802Once source code is fetched and unpacked, BitBake locates patch files 820Once source code is fetched and unpacked, BitBake locates patch files
803and applies them to the source files: 821and applies them to the source files:
804 822
823.. image:: figures/patching.png
824 :align: center
825
805The ```do_patch`` <&YOCTO_DOCS_REF_URL;#ref-tasks-patch>`__ task uses a 826The ```do_patch`` <&YOCTO_DOCS_REF_URL;#ref-tasks-patch>`__ task uses a
806recipe's ```SRC_URI`` <&YOCTO_DOCS_REF_URL;#var-SRC_URI>`__ statements 827recipe's ```SRC_URI`` <&YOCTO_DOCS_REF_URL;#var-SRC_URI>`__ statements
807and the ```FILESPATH`` <&YOCTO_DOCS_REF_URL;#var-FILESPATH>`__ variable 828and the ```FILESPATH`` <&YOCTO_DOCS_REF_URL;#var-FILESPATH>`__ variable
@@ -843,6 +864,9 @@ After source code is patched, BitBake executes tasks that configure and
843compile the source code. Once compilation occurs, the files are copied 864compile the source code. Once compilation occurs, the files are copied
844to a holding area (staged) in preparation for packaging: 865to a holding area (staged) in preparation for packaging:
845 866
867.. image:: figures/configuration-compile-autoreconf.png
868 :align: center
869
846This step in the build process consists of the following tasks: 870This step in the build process consists of the following tasks:
847 871
848- ```do_prepare_recipe_sysroot`` <&YOCTO_DOCS_REF_URL;#ref-tasks-prepare_recipe_sysroot>`__: 872- ```do_prepare_recipe_sysroot`` <&YOCTO_DOCS_REF_URL;#ref-tasks-prepare_recipe_sysroot>`__:
@@ -900,6 +924,9 @@ Package Splitting
900After source code is configured, compiled, and staged, the build system 924After source code is configured, compiled, and staged, the build system
901analyzes the results and splits the output into packages: 925analyzes the results and splits the output into packages:
902 926
927.. image:: figures/analysis-for-package-splitting.png
928 :align: center
929
903The ```do_package`` <&YOCTO_DOCS_REF_URL;#ref-tasks-package>`__ and 930The ```do_package`` <&YOCTO_DOCS_REF_URL;#ref-tasks-package>`__ and
904```do_packagedata`` <&YOCTO_DOCS_REF_URL;#ref-tasks-packagedata>`__ 931```do_packagedata`` <&YOCTO_DOCS_REF_URL;#ref-tasks-packagedata>`__
905tasks combine to analyze the files found in the 932tasks combine to analyze the files found in the
@@ -979,6 +1006,9 @@ Image Generation
979Once packages are split and stored in the Package Feeds area, the build 1006Once packages are split and stored in the Package Feeds area, the build
980system uses BitBake to generate the root filesystem image: 1007system uses BitBake to generate the root filesystem image:
981 1008
1009.. image:: figures/image-generation.png
1010 :align: center
1011
982The image generation process consists of several stages and depends on 1012The image generation process consists of several stages and depends on
983several tasks and variables. The 1013several tasks and variables. The
984```do_rootfs`` <&YOCTO_DOCS_REF_URL;#ref-tasks-rootfs>`__ task creates 1014```do_rootfs`` <&YOCTO_DOCS_REF_URL;#ref-tasks-rootfs>`__ task creates
@@ -1093,6 +1123,9 @@ The OpenEmbedded build system uses BitBake to generate the Software
1093Development Kit (SDK) installer scripts for both the standard SDK and 1123Development Kit (SDK) installer scripts for both the standard SDK and
1094the extensible SDK (eSDK): 1124the extensible SDK (eSDK):
1095 1125
1126.. image:: figures/sdk-generation.png
1127 :align: center
1128
1096.. note:: 1129.. note::
1097 1130
1098 For more information on the cross-development toolchain generation, 1131 For more information on the cross-development toolchain generation,
@@ -1272,6 +1305,9 @@ the `general workflow figure <#general-workflow-figure>`__ that BitBake
1272output, in part, consists of images. This section takes a closer look at 1305output, in part, consists of images. This section takes a closer look at
1273this output: 1306this output:
1274 1307
1308.. image:: figures/images.png
1309 :align: center
1310
1275.. note:: 1311.. note::
1276 1312
1277 For a list of example images that the Yocto Project provides, see the 1313 For a list of example images that the Yocto Project provides, see the
@@ -1331,6 +1367,9 @@ SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK
1331(e.g. ``bitbake -c populate_sdk`` imagename). This section takes a 1367(e.g. ``bitbake -c populate_sdk`` imagename). This section takes a
1332closer look at this output: 1368closer look at this output:
1333 1369
1370.. image:: figures/sdk.png
1371 :align: center
1372
1334The specific form of this output is a set of files that includes a 1373The specific form of this output is a set of files that includes a
1335self-extracting SDK installer (``*.sh``), host and target manifest 1374self-extracting SDK installer (``*.sh``), host and target manifest
1336files, and files used for SDK testing. When the SDK installer file is 1375files, and files used for SDK testing. When the SDK installer file is
@@ -1450,6 +1489,9 @@ creates these necessary toolchains for you.
1450The following figure shows a high-level build environment regarding 1489The following figure shows a high-level build environment regarding
1451toolchain construction and use. 1490toolchain construction and use.
1452 1491
1492.. image:: figures/cross-development-toolchains.png
1493 :align: center
1494
1453Most of the work occurs on the Build Host. This is the machine used to 1495Most of the work occurs on the Build Host. This is the machine used to
1454build images and generally work within the the Yocto Project 1496build images and generally work within the the Yocto Project
1455environment. When you run 1497environment. When you run
diff --git a/documentation/overview-manual/overview-manual-development-environment.rst b/documentation/overview-manual/overview-manual-development-environment.rst
index 4e6770c4f4..abd775be84 100644
--- a/documentation/overview-manual/overview-manual-development-environment.rst
+++ b/documentation/overview-manual/overview-manual-development-environment.rst
@@ -179,6 +179,9 @@ development:
179 Yocto Metadata Layers. You can create local copies of Git 179 Yocto Metadata Layers. You can create local copies of Git
180 repositories for each of these areas. 180 repositories for each of these areas.
181 181
182 .. image:: figures/source-repos.png
183 :align: center
184
182 For steps on how to view and access these upstream Git repositories, 185 For steps on how to view and access these upstream Git repositories,
183 see the "`Accessing Source 186 see the "`Accessing Source
184 Repositories <&YOCTO_DOCS_DEV_URL;#accessing-source-repositories>`__" 187 Repositories <&YOCTO_DOCS_DEV_URL;#accessing-source-repositories>`__"
@@ -191,6 +194,9 @@ development:
191 these files does not produce a local copy of the Git repository but 194 these files does not produce a local copy of the Git repository but
192 rather a snapshot of a particular release or image. 195 rather a snapshot of a particular release or image.
193 196
197 .. image:: figures/index-downloads.png
198 :align: center
199
194 For steps on how to view and access these files, see the "`Accessing 200 For steps on how to view and access these files, see the "`Accessing
195 Index of 201 Index of
196 Releases <&YOCTO_DOCS_DEV_URL;#accessing-index-of-releases>`__" 202 Releases <&YOCTO_DOCS_DEV_URL;#accessing-index-of-releases>`__"
@@ -205,6 +211,9 @@ development:
205 form. The tarballs are similar to those found in the `Index of 211 form. The tarballs are similar to those found in the `Index of
206 /releases: <&YOCTO_DL_URL;/releases/>`__ area. 212 /releases: <&YOCTO_DL_URL;/releases/>`__ area.
207 213
214 .. image:: figures/yp-download.png
215 :align: center
216
208 For steps on how to use the "DOWNLOADS" page, see the "`Using the 217 For steps on how to use the "DOWNLOADS" page, see the "`Using the
209 Downloads Page <&YOCTO_DOCS_DEV_URL;#using-the-downloads-page>`__" 218 Downloads Page <&YOCTO_DOCS_DEV_URL;#using-the-downloads-page>`__"
210 section in the Yocto Project Development Tasks Manual. 219 section in the Yocto Project Development Tasks Manual.
@@ -285,6 +294,9 @@ develop, test, and submit changes to "contrib" areas for the maintainer
285to examine. The maintainer then chooses which changes are going to 294to examine. The maintainer then chooses which changes are going to
286become a permanent part of the project. 295become a permanent part of the project.
287 296
297.. image:: figures/git-workflow.png
298 :align: center
299
288While each development environment is unique, there are some best 300While each development environment is unique, there are some best
289practices or methods that help development run smoothly. The following 301practices or methods that help development run smoothly. The following
290list describes some of these practices. For more information about Git 302list describes some of these practices. For more information about Git
diff --git a/documentation/overview-manual/overview-manual-yp-intro.rst b/documentation/overview-manual/overview-manual-yp-intro.rst
index 62257c26b9..06eeed5cb5 100644
--- a/documentation/overview-manual/overview-manual-yp-intro.rst
+++ b/documentation/overview-manual/overview-manual-yp-intro.rst
@@ -21,6 +21,9 @@ comes to delivering embedded software stacks. The project allows
21software customizations and build interchange for multiple hardware 21software customizations and build interchange for multiple hardware
22platforms as well as software stacks that can be maintained and scaled. 22platforms as well as software stacks that can be maintained and scaled.
23 23
24.. image:: figures/key-dev-elements.png
25 :align: center
26
24For further introductory information on the Yocto Project, you might be 27For further introductory information on the Yocto Project, you might be
25interested in this 28interested in this
26`article <https://www.embedded.com/electronics-blogs/say-what-/4458600/Why-the-Yocto-Project-for-my-IoT-Project->`__ 29`article <https://www.embedded.com/electronics-blogs/say-what-/4458600/Why-the-Yocto-Project-for-my-IoT-Project->`__
@@ -704,6 +707,9 @@ Repositories <&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/>`__.
704 707
705The following figure illustrates what generally comprises Poky: 708The following figure illustrates what generally comprises Poky:
706 709
710.. image:: figures/poky-reference-distribution.png
711 :align: center
712
707- BitBake is a task executor and scheduler that is the heart of the 713- BitBake is a task executor and scheduler that is the heart of the
708 OpenEmbedded build system. 714 OpenEmbedded build system.
709 715
@@ -784,7 +790,12 @@ The OpenEmbedded Build System Workflow
784The `OpenEmbedded build 790The `OpenEmbedded build
785system <&YOCTO_DOCS_REF_URL;#build-system-term>`__ uses a "workflow" to 791system <&YOCTO_DOCS_REF_URL;#build-system-term>`__ uses a "workflow" to
786accomplish image and SDK generation. The following figure overviews that 792accomplish image and SDK generation. The following figure overviews that
787workflow: Following is a brief summary of the "workflow": 793workflow:
794
795.. image:: figures/YP-flow-diagram.png
796 :align: center
797
798Following is a brief summary of the "workflow":
788 799
7891. Developers specify architecture, policies, patches and configuration 8001. Developers specify architecture, policies, patches and configuration
790 details. 801 details.