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. |
