summaryrefslogtreecommitdiffstats
path: root/documentation/poky-ref-manual/ref-structure.xml
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/poky-ref-manual/ref-structure.xml')
-rw-r--r--documentation/poky-ref-manual/ref-structure.xml61
1 files changed, 35 insertions, 26 deletions
diff --git a/documentation/poky-ref-manual/ref-structure.xml b/documentation/poky-ref-manual/ref-structure.xml
index a5bfe5e876..c950671cb0 100644
--- a/documentation/poky-ref-manual/ref-structure.xml
+++ b/documentation/poky-ref-manual/ref-structure.xml
@@ -9,12 +9,12 @@
9<para> 9<para>
10 The Yocto Project consists of several components. 10 The Yocto Project consists of several components.
11 Understanding them and knowing where they are located is key to using the Yocto Project well. 11 Understanding them and knowing where they are located is key to using the Yocto Project well.
12 This appendix describes the Yocto Project file's directory structure and gives information about the various 12 This appendix describes the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
13 files and directories. 13 and gives information about the various files and directories.
14</para> 14</para>
15 15
16<para> 16<para>
17 For information on how to establish the Yocto Project files on your local development system, see the 17 For information on how to establish a local source directory on your development system, see the
18 "<ulink url='&YOCTO_DOCS_DEV_URL;#getting-setup'>Getting Set Up</ulink>" 18 "<ulink url='&YOCTO_DOCS_DEV_URL;#getting-setup'>Getting Set Up</ulink>"
19 section in the Yocto Project Development Manual. 19 section in the Yocto Project Development Manual.
20</para> 20</para>
@@ -49,18 +49,20 @@
49 49
50 <para> 50 <para>
51 This directory contains user configuration files and the output 51 This directory contains user configuration files and the output
52 generated by the Yocto Project in its standard configuration where the source tree is 52 generated by the OpenEmbedded build system in its standard configuration where
53 combined with the output. 53 the source tree is combined with the output.
54 The build directory is created initially when you <filename>source</filename> 54 The <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
55 is created initially when you <filename>source</filename>
55 the Yocto Project environment setup script <filename>oe-init-build-env</filename>. 56 the Yocto Project environment setup script <filename>oe-init-build-env</filename>.
56 </para> 57 </para>
57 58
58 <para> 59 <para>
59 It is also possible to place output and configuration 60 It is also possible to place output and configuration
60 files in a directory separate from the Yocto Project files 61 files in a directory separate from the
62 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
61 by providing a directory name when you <filename>source</filename> 63 by providing a directory name when you <filename>source</filename>
62 the setup script. 64 the setup script.
63 For information on separating output from the Yocto Project files, see <link 65 For information on separating output from your local source directory files, see <link
64 linkend='structure-core-script'>oe-init-build-env</link>. 66 linkend='structure-core-script'>oe-init-build-env</link>.
65 </para> 67 </para>
66 </section> 68 </section>
@@ -147,9 +149,11 @@
147 By default, running this script without a build directory argument creates the 149 By default, running this script without a build directory argument creates the
148 <filename>build</filename> directory. 150 <filename>build</filename> directory.
149 If you provide a build directory argument when you <filename>source</filename> 151 If you provide a build directory argument when you <filename>source</filename>
150 the script, you direct the Yocto Project to create a build directory of your choice. 152 the script, you direct OpenEmbedded build system to create a
153 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink> of your choice.
151 For example, the following command creates a build directory named 154 For example, the following command creates a build directory named
152 <filename>mybuilds</filename> that is outside of the Yocto Project files: 155 <filename>mybuilds</filename> that is outside of the
156 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>sourc directory</ulink>:
153 <literallayout class='monospaced'> 157 <literallayout class='monospaced'>
154 $ source oe-init-build-env ~/mybuilds 158 $ source oe-init-build-env ~/mybuilds
155 </literallayout> 159 </literallayout>
@@ -181,12 +185,12 @@
181 <title><filename>build/conf/local.conf</filename></title> 185 <title><filename>build/conf/local.conf</filename></title>
182 186
183 <para> 187 <para>
184 This file contains all the local user configuration of the Yocto Project. 188 This file contains all the local user configuration for your build environment.
185 If there is no <filename>local.conf</filename> present, it is created from 189 If there is no <filename>local.conf</filename> present, it is created from
186 <filename>local.conf.sample</filename>. 190 <filename>local.conf.sample</filename>.
187 The <filename>local.conf</filename> file contains documentation on the various configuration options. 191 The <filename>local.conf</filename> file contains documentation on the various configuration options.
188 Any variable set here overrides any variable set elsewhere within the Yocto Project unless 192 Any variable set here overrides any variable set elsewhere within the environment unless
189 that variable is hard-coded within the Yocto Project (e.g. by using '=' instead of '?='). 193 that variable is hard-coded within a file (e.g. by using '=' instead of '?=').
190 Some variables are hard-coded for various reasons but these variables are 194 Some variables are hard-coded for various reasons but these variables are
191 relatively rare. 195 relatively rare.
192 </para> 196 </para>
@@ -244,10 +248,11 @@
244 <title><filename>build/tmp/</filename></title> 248 <title><filename>build/tmp/</filename></title>
245 249
246 <para> 250 <para>
247 This directory receives all the Yocto Project output. 251 This directory receives all the OpenEmbedded build system's output.
248 BitBake creates this directory if it does not exist. 252 BitBake creates this directory if it does not exist.
249 As a last resort, to clean the Yocto Project and start a build from scratch (other than downloads), 253 As a last resort, to clean up a build and start it from scratch (other than the downloads),
250 you can remove everything in this directory or get rid of the directory completely. 254 you can remove everything in the <filename>tmp</filename> directory or get rid of the
255 directory completely.
251 If you do, you should also completely remove the <filename>build/sstate-cache</filename> 256 If you do, you should also completely remove the <filename>build/sstate-cache</filename>
252 directory as well. 257 directory as well.
253 </para> 258 </para>
@@ -275,7 +280,7 @@
275 <title><filename>build/tmp/deploy/</filename></title> 280 <title><filename>build/tmp/deploy/</filename></title>
276 281
277 <para> 282 <para>
278 This directory contains any 'end result' output from the Yocto Project build process. 283 This directory contains any 'end result' output from the OpenEmbedded build process.
279 </para> 284 </para>
280 </section> 285 </section>
281 286
@@ -283,7 +288,8 @@
283 <title><filename>build/tmp/deploy/deb/</filename></title> 288 <title><filename>build/tmp/deploy/deb/</filename></title>
284 289
285 <para> 290 <para>
286 This directory receives any <filename>.deb</filename> packages produced by the Yocto Project. 291 This directory receives any <filename>.deb</filename> packages produced by
292 the build process.
287 The packages are sorted into feeds for different architecture types. 293 The packages are sorted into feeds for different architecture types.
288 </para> 294 </para>
289 </section> 295 </section>
@@ -292,7 +298,8 @@
292 <title><filename>build/tmp/deploy/rpm/</filename></title> 298 <title><filename>build/tmp/deploy/rpm/</filename></title>
293 299
294 <para> 300 <para>
295 This directory receives any <filename>.rpm</filename> packages produced by the Yocto Project. 301 This directory receives any <filename>.rpm</filename> packages produced by
302 the build process.
296 The packages are sorted into feeds for different architecture types. 303 The packages are sorted into feeds for different architecture types.
297 </para> 304 </para>
298 </section> 305 </section>
@@ -319,7 +326,9 @@
319 <section id='structure-build-tmp-deploy-ipk'> 326 <section id='structure-build-tmp-deploy-ipk'>
320 <title><filename>build/tmp/deploy/ipk/</filename></title> 327 <title><filename>build/tmp/deploy/ipk/</filename></title>
321 328
322 <para>This directory receives <filename>.ipk</filename> packages produced by the Yocto Project.</para> 329 <para>
330 This directory receives <filename>.ipk</filename> packages produced by
331 the build process.</para>
323 </section> 332 </section>
324 333
325 <section id='structure-build-tmp-sysroots'> 334 <section id='structure-build-tmp-sysroots'>
@@ -380,7 +389,8 @@
380 389
381 <para> 390 <para>
382 It is worth considering the structure of a typical work directory. 391 It is worth considering the structure of a typical work directory.
383 As an example, consider the linux-yocto kernel 3.0 on the machine <filename>qemux86</filename> 392 As an example, consider the <filename>linux-yocto-kernel-3.0</filename>
393 on the machine <filename>qemux86</filename>
384 built within the Yocto Project. 394 built within the Yocto Project.
385 For this package, a work directory of 395 For this package, a work directory of
386 <filename>tmp/work/qemux86-poky-linux/linux-yocto-3.0+git1+&lt;.....&gt;</filename>, 396 <filename>tmp/work/qemux86-poky-linux/linux-yocto-3.0+git1+&lt;.....&gt;</filename>,
@@ -455,7 +465,7 @@
455 <para> 465 <para>
456 This directory contains all the machine configuration files. 466 This directory contains all the machine configuration files.
457 If you set <filename>MACHINE="qemux86"</filename>, 467 If you set <filename>MACHINE="qemux86"</filename>,
458 Yocto Project looks for a <filename>qemux86.conf</filename> file in this 468 the OpenEmbedded build system looks for a <filename>qemux86.conf</filename> file in this
459 directory. 469 directory.
460 The <filename>include</filename> directory contains various data common to multiple machines. 470 The <filename>include</filename> directory contains various data common to multiple machines.
461 If you want to add support for a new machine to the Yocto Project, look in this directory. 471 If you want to add support for a new machine to the Yocto Project, look in this directory.
@@ -467,12 +477,11 @@
467 477
468 <para> 478 <para>
469 Any distribution-specific configuration is controlled from this directory. 479 Any distribution-specific configuration is controlled from this directory.
470 The Yocto Project only contains the Yocto Project distribution so 480 For the Yocto Project, the <filename>defaultsetup.conf</filename> is the main file here.
471 <filename>defaultsetup.conf</filename> is the main file here.
472 This directory includes the versions and the 481 This directory includes the versions and the
473 <filename>SRCDATE</filename> definitions for applications that are configured here. 482 <filename>SRCDATE</filename> definitions for applications that are configured here.
474 An example of an alternative configuration is <filename>poky-bleeding.conf</filename> 483 An example of an alternative configuration might be <filename>poky-bleeding.conf</filename>.
475 although this file mainly inherits its configuration from the Yocto Project itself. 484 Although this file mainly inherits its configuration from Poky.
476 </para> 485 </para>
477 </section> 486 </section>
478 487