diff options
Diffstat (limited to 'documentation/overview-manual/concepts.rst')
-rw-r--r-- | documentation/overview-manual/concepts.rst | 74 |
1 files changed, 33 insertions, 41 deletions
diff --git a/documentation/overview-manual/concepts.rst b/documentation/overview-manual/concepts.rst index 931bec79e8..b323a6fdf4 100644 --- a/documentation/overview-manual/concepts.rst +++ b/documentation/overview-manual/concepts.rst | |||
@@ -233,13 +233,12 @@ for creating actual configuration files when you source | |||
233 | :ref:`structure-core-script`, which is the | 233 | :ref:`structure-core-script`, which is the |
234 | build environment script. | 234 | build environment script. |
235 | 235 | ||
236 | Sourcing the build environment script creates a | 236 | Sourcing the build environment script creates a :term:`Build Directory` |
237 | :term:`Build Directory` if one does not | 237 | if one does not already exist. BitBake uses the :term:`Build Directory` |
238 | already exist. BitBake uses the Build Directory for all its work during | 238 | for all its work during builds. The Build Directory has a ``conf`` directory |
239 | builds. The Build Directory has a ``conf`` directory that contains | 239 | that contains default versions of your ``local.conf`` and ``bblayers.conf`` |
240 | default versions of your ``local.conf`` and ``bblayers.conf`` | ||
241 | configuration files. These default configuration files are created only | 240 | configuration files. These default configuration files are created only |
242 | if versions do not already exist in the Build Directory at the time you | 241 | if versions do not already exist in the :term:`Build Directory` at the time you |
243 | source the build environment setup script. | 242 | source the build environment setup script. |
244 | 243 | ||
245 | Because the Poky repository is fundamentally an aggregation of existing | 244 | Because the Poky repository is fundamentally an aggregation of existing |
@@ -251,9 +250,9 @@ assumes the script is executed from within a cloned or unpacked version | |||
251 | of Poky. | 250 | of Poky. |
252 | 251 | ||
253 | Depending on where the script is sourced, different sub-scripts are | 252 | Depending on where the script is sourced, different sub-scripts are |
254 | called to set up the Build Directory (Yocto or OpenEmbedded). | 253 | called to set up the :term:`Build Directory` (Yocto or OpenEmbedded). |
255 | Specifically, the script ``scripts/oe-setup-builddir`` inside the poky | 254 | Specifically, the script ``scripts/oe-setup-builddir`` inside the poky |
256 | directory sets up the Build Directory and seeds the directory (if | 255 | directory sets up the :term:`Build Directory` and seeds the directory (if |
257 | necessary) with configuration files appropriate for the Yocto Project | 256 | necessary) with configuration files appropriate for the Yocto Project |
258 | development environment. | 257 | development environment. |
259 | 258 | ||
@@ -428,7 +427,7 @@ The distribution layer provides policy configurations for your | |||
428 | distribution. Best practices dictate that you isolate these types of | 427 | distribution. Best practices dictate that you isolate these types of |
429 | configurations into their own layer. Settings you provide in | 428 | configurations into their own layer. Settings you provide in |
430 | ``conf/distro/distro.conf`` override similar settings that BitBake finds | 429 | ``conf/distro/distro.conf`` override similar settings that BitBake finds |
431 | in your ``conf/local.conf`` file in the Build Directory. | 430 | in your ``conf/local.conf`` file in the :term:`Build Directory`. |
432 | 431 | ||
433 | The following list provides some explanation and references for what you | 432 | The following list provides some explanation and references for what you |
434 | typically find in the distribution layer: | 433 | typically find in the distribution layer: |
@@ -531,10 +530,11 @@ repositories, which is not the default behavior, and store them in the | |||
531 | variable. | 530 | variable. |
532 | 531 | ||
533 | Judicious use of a :term:`DL_DIR` directory can save the build system a trip | 532 | Judicious use of a :term:`DL_DIR` directory can save the build system a trip |
534 | across the Internet when looking for files. A good method for using a | 533 | across the Internet when looking for files. A good method for using a download |
535 | download directory is to have :term:`DL_DIR` point to an area outside of | 534 | directory is to have :term:`DL_DIR` point to an area outside of your |
536 | your Build Directory. Doing so allows you to safely delete the Build | 535 | :term:`Build Directory`. Doing so allows you to safely delete the |
537 | Directory if needed without fear of removing any downloaded source file. | 536 | :term:`Build Directory` if needed without fear of removing any downloaded |
537 | source file. | ||
538 | 538 | ||
539 | The remainder of this section provides a deeper look into the source | 539 | The remainder of this section provides a deeper look into the source |
540 | files and the mirrors. Here is a more detailed look at the source file | 540 | files and the mirrors. Here is a more detailed look at the source file |
@@ -632,15 +632,14 @@ process validates them with generated output quality assurance checks | |||
632 | through the :ref:`insane <ref-classes-insane>` | 632 | through the :ref:`insane <ref-classes-insane>` |
633 | class. | 633 | class. |
634 | 634 | ||
635 | The package feed area resides in the Build Directory. The directory the | 635 | The package feed area resides in the :term:`Build Directory`. The directory the |
636 | build system uses to temporarily store packages is determined by a | 636 | build system uses to temporarily store packages is determined by a |
637 | combination of variables and the particular package manager in use. See | 637 | combination of variables and the particular package manager in use. See |
638 | the "Package Feeds" box in the illustration and note the information to | 638 | the "Package Feeds" box in the illustration and note the information to |
639 | the right of that area. In particular, the following defines where | 639 | the right of that area. In particular, the following defines where |
640 | package files are kept: | 640 | package files are kept: |
641 | 641 | ||
642 | - :term:`DEPLOY_DIR`: Defined as | 642 | - :term:`DEPLOY_DIR`: Defined as ``tmp/deploy`` in the :term:`Build Directory`. |
643 | ``tmp/deploy`` in the Build Directory. | ||
644 | 643 | ||
645 | - ``DEPLOY_DIR_*``: Depending on the package manager used, the package | 644 | - ``DEPLOY_DIR_*``: Depending on the package manager used, the package |
646 | type sub-folder. Given RPM, IPK, or DEB packaging and tarball | 645 | type sub-folder. Given RPM, IPK, or DEB packaging and tarball |
@@ -696,10 +695,8 @@ code: | |||
696 | .. image:: figures/source-fetching.png | 695 | .. image:: figures/source-fetching.png |
697 | :width: 100% | 696 | :width: 100% |
698 | 697 | ||
699 | The :ref:`ref-tasks-fetch` and | 698 | The :ref:`ref-tasks-fetch` and :ref:`ref-tasks-unpack` tasks fetch |
700 | :ref:`ref-tasks-unpack` tasks fetch | 699 | the source files and unpack them into the :term:`Build Directory`. |
701 | the source files and unpack them into the | ||
702 | :term:`Build Directory`. | ||
703 | 700 | ||
704 | .. note:: | 701 | .. note:: |
705 | 702 | ||
@@ -710,17 +707,16 @@ the source files and unpack them into the | |||
710 | file has been modified, the :ref:`ref-tasks-fetch` task and all | 707 | file has been modified, the :ref:`ref-tasks-fetch` task and all |
711 | tasks that depend on it are re-executed. | 708 | tasks that depend on it are re-executed. |
712 | 709 | ||
713 | By default, everything is accomplished in the Build Directory, which has | 710 | By default, everything is accomplished in the :term:`Build Directory`, which has |
714 | a defined structure. For additional general information on the Build | 711 | a defined structure. For additional general information on the |
715 | Directory, see the ":ref:`structure-core-build`" section in | 712 | :term:`Build Directory`, see the ":ref:`structure-core-build`" section in |
716 | the Yocto Project Reference Manual. | 713 | the Yocto Project Reference Manual. |
717 | 714 | ||
718 | Each recipe has an area in the Build Directory where the unpacked source | 715 | Each recipe has an area in the :term:`Build Directory` where the unpacked |
719 | code resides. The :term:`S` variable points | 716 | source code resides. The :term:`S` variable points to this area for a recipe's |
720 | to this area for a recipe's unpacked source code. The name of that | 717 | unpacked source code. The name of that directory for any given recipe is |
721 | directory for any given recipe is defined from several different | 718 | defined from several different variables. The preceding figure and the |
722 | variables. The preceding figure and the following list describe the | 719 | following list describe the :term:`Build Directory`'s hierarchy: |
723 | Build Directory's hierarchy: | ||
724 | 720 | ||
725 | - :term:`TMPDIR`: The base directory | 721 | - :term:`TMPDIR`: The base directory |
726 | where the OpenEmbedded build system performs all its work during the | 722 | where the OpenEmbedded build system performs all its work during the |
@@ -1258,15 +1254,12 @@ this output: | |||
1258 | ":doc:`/ref-manual/images`" chapter in the Yocto Project Reference | 1254 | ":doc:`/ref-manual/images`" chapter in the Yocto Project Reference |
1259 | Manual. | 1255 | Manual. |
1260 | 1256 | ||
1261 | The build process writes images out to the :term:`Build Directory` | 1257 | The build process writes images out to the :term:`Build Directory` inside |
1262 | inside the | 1258 | the ``tmp/deploy/images/machine/`` folder as shown in the figure. This |
1263 | ``tmp/deploy/images/machine/`` folder as shown in the figure. This | ||
1264 | folder contains any files expected to be loaded on the target device. | 1259 | folder contains any files expected to be loaded on the target device. |
1265 | The :term:`DEPLOY_DIR` variable | 1260 | The :term:`DEPLOY_DIR` variable points to the ``deploy`` directory, while the |
1266 | points to the ``deploy`` directory, while the | 1261 | :term:`DEPLOY_DIR_IMAGE` variable points to the appropriate directory |
1267 | :term:`DEPLOY_DIR_IMAGE` | 1262 | containing images for the current configuration. |
1268 | variable points to the appropriate directory containing images for the | ||
1269 | current configuration. | ||
1270 | 1263 | ||
1271 | - kernel-image: A kernel binary file. The | 1264 | - kernel-image: A kernel binary file. The |
1272 | :term:`KERNEL_IMAGETYPE` | 1265 | :term:`KERNEL_IMAGETYPE` |
@@ -1340,10 +1333,9 @@ can initialize the environment before using the tools. | |||
1340 | the :doc:`/sdk-manual/index` manual. | 1333 | the :doc:`/sdk-manual/index` manual. |
1341 | 1334 | ||
1342 | All the output files for an SDK are written to the ``deploy/sdk`` folder | 1335 | All the output files for an SDK are written to the ``deploy/sdk`` folder |
1343 | inside the :term:`Build Directory` as | 1336 | inside the :term:`Build Directory` as shown in the previous figure. Depending |
1344 | shown in the previous figure. Depending on the type of SDK, there are | 1337 | on the type of SDK, there are several variables to configure these files. |
1345 | several variables to configure these files. Here are the variables | 1338 | Here are the variables associated with an extensible SDK: |
1346 | associated with an extensible SDK: | ||
1347 | 1339 | ||
1348 | - :term:`DEPLOY_DIR`: Points to | 1340 | - :term:`DEPLOY_DIR`: Points to |
1349 | the ``deploy`` directory. | 1341 | the ``deploy`` directory. |