diff options
Diffstat (limited to 'documentation/ref-manual/eclipse/html/poky-ref-manual/ref-bitbake-parsing.html')
| -rw-r--r-- | documentation/ref-manual/eclipse/html/poky-ref-manual/ref-bitbake-parsing.html | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-bitbake-parsing.html b/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-bitbake-parsing.html new file mode 100644 index 0000000000..c86621eb38 --- /dev/null +++ b/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-bitbake-parsing.html | |||
| @@ -0,0 +1,93 @@ | |||
| 1 | <html> | ||
| 2 | <head> | ||
| 3 | <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | ||
| 4 | <title>6.1. Parsing</title> | ||
| 5 | <link rel="stylesheet" type="text/css" href="../book.css"> | ||
| 6 | <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> | ||
| 7 | <link rel="home" href="index.html" title="The Yocto Project Reference Manual"> | ||
| 8 | <link rel="up" href="ref-bitbake.html" title="Chapter 6. BitBake"> | ||
| 9 | <link rel="prev" href="ref-bitbake.html" title="Chapter 6. BitBake"> | ||
| 10 | <link rel="next" href="ref-bitbake-providers.html" title="6.2. Preferences and Providers"> | ||
| 11 | </head> | ||
| 12 | <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="section" title="6.1. Parsing"> | ||
| 13 | <div class="titlepage"><div><div><h2 class="title" style="clear: both"> | ||
| 14 | <a name="ref-bitbake-parsing"></a>6.1. Parsing</h2></div></div></div> | ||
| 15 | <p> | ||
| 16 | BitBake parses configuration files, classes, and <code class="filename">.bb</code> files. | ||
| 17 | </p> | ||
| 18 | <p> | ||
| 19 | The first thing BitBake does is look for the <code class="filename">bitbake.conf</code> file. | ||
| 20 | This file resides in the | ||
| 21 | <a class="link" href="../dev-manual/source-directory.html" target="_self">Source Directory</a> | ||
| 22 | within the <code class="filename">meta/conf/</code> directory. | ||
| 23 | BitBake finds it by examining its | ||
| 24 | <a class="link" href="ref-variables-glos.html#var-BBPATH" title="BBPATH"><code class="filename">BBPATH</code></a> environment | ||
| 25 | variable and looking for the <code class="filename">meta/conf/</code> | ||
| 26 | directory. | ||
| 27 | </p> | ||
| 28 | <p> | ||
| 29 | The <code class="filename">bitbake.conf</code> file lists other configuration | ||
| 30 | files to include from a <code class="filename">conf/</code> | ||
| 31 | directory below the directories listed in <code class="filename">BBPATH</code>. | ||
| 32 | In general, the most important configuration file from a user's perspective | ||
| 33 | is <code class="filename">local.conf</code>, which contains a user's customized | ||
| 34 | settings for the OpenEmbedded build environment. | ||
| 35 | Other notable configuration files are the distribution | ||
| 36 | configuration file (set by the | ||
| 37 | <code class="filename"><a class="link" href="ref-variables-glos.html#var-DISTRO" title="DISTRO">DISTRO</a></code> variable) | ||
| 38 | and the machine configuration file | ||
| 39 | (set by the | ||
| 40 | <code class="filename"><a class="link" href="ref-variables-glos.html#var-MACHINE" title="MACHINE">MACHINE</a></code> variable). | ||
| 41 | The <code class="filename">DISTRO</code> and <code class="filename">MACHINE</code> BitBake environment | ||
| 42 | variables are both usually set in | ||
| 43 | the <code class="filename">local.conf</code> file. | ||
| 44 | Valid distribution | ||
| 45 | configuration files are available in the <code class="filename">meta/conf/distro/</code> directory | ||
| 46 | and valid machine configuration | ||
| 47 | files in the <code class="filename">meta/conf/machine/</code> directory. | ||
| 48 | Within the <code class="filename">meta/conf/machine/include/</code> | ||
| 49 | directory are various <code class="filename">tune-*.inc</code> configuration files that provide common | ||
| 50 | "tuning" settings specific to and shared between particular architectures and machines. | ||
| 51 | </p> | ||
| 52 | <p> | ||
| 53 | After the parsing of the configuration files, some standard classes are included. | ||
| 54 | The <code class="filename">base.bbclass</code> file is always included. | ||
| 55 | Other classes that are specified in the configuration using the | ||
| 56 | <code class="filename"><a class="link" href="ref-variables-glos.html#var-INHERIT" title="INHERIT">INHERIT</a></code> | ||
| 57 | variable are also included. | ||
| 58 | Class files are searched for in a <code class="filename">classes</code> subdirectory | ||
| 59 | under the paths in <code class="filename">BBPATH</code> in the same way as | ||
| 60 | configuration files. | ||
| 61 | </p> | ||
| 62 | <p> | ||
| 63 | After classes are included, the variable | ||
| 64 | <code class="filename"><a class="link" href="ref-variables-glos.html#var-BBFILES" title="BBFILES">BBFILES</a></code> | ||
| 65 | is set, usually in | ||
| 66 | <code class="filename">local.conf</code>, and defines the list of places to search for | ||
| 67 | <code class="filename">.bb</code> files. | ||
| 68 | By default, the <code class="filename">BBFILES</code> variable specifies the | ||
| 69 | <code class="filename">meta/recipes-*/</code> directory within Poky. | ||
| 70 | Adding extra content to <code class="filename">BBFILES</code> is best achieved through the use of | ||
| 71 | BitBake layers as described in the | ||
| 72 | "<a class="link" href="../dev-manual/understanding-and-creating-layers.html" target="_self">Understanding and | ||
| 73 | Creating Layers</a>" section of the Yocto Project Development Manual. | ||
| 74 | </p> | ||
| 75 | <p> | ||
| 76 | BitBake parses each <code class="filename">.bb</code> file in <code class="filename">BBFILES</code> and | ||
| 77 | stores the values of various variables. | ||
| 78 | In summary, for each <code class="filename">.bb</code> | ||
| 79 | file the configuration plus the base class of variables are set, followed | ||
| 80 | by the data in the <code class="filename">.bb</code> file | ||
| 81 | itself, followed by any inherit commands that | ||
| 82 | <code class="filename">.bb</code> file might contain. | ||
| 83 | </p> | ||
| 84 | <p> | ||
| 85 | Because parsing <code class="filename">.bb</code> files is a time | ||
| 86 | consuming process, a cache is kept to speed up subsequent parsing. | ||
| 87 | This cache is invalid if the timestamp of the <code class="filename">.bb</code> | ||
| 88 | file itself changes, or if the timestamps of any of the include, | ||
| 89 | configuration or class files the <code class="filename">.bb</code> | ||
| 90 | file depends on changes. | ||
| 91 | </p> | ||
| 92 | </div></body> | ||
| 93 | </html> | ||
