diff options
Diffstat (limited to 'documentation/dev-manual/dev-manual-newbie.xml')
-rw-r--r-- | documentation/dev-manual/dev-manual-newbie.xml | 52 |
1 files changed, 29 insertions, 23 deletions
diff --git a/documentation/dev-manual/dev-manual-newbie.xml b/documentation/dev-manual/dev-manual-newbie.xml index 20cf234a6b..bb01131c05 100644 --- a/documentation/dev-manual/dev-manual-newbie.xml +++ b/documentation/dev-manual/dev-manual-newbie.xml | |||
@@ -130,7 +130,7 @@ | |||
130 | From the interface, you can click on any particular item in the "Name" column and | 130 | From the interface, you can click on any particular item in the "Name" column and |
131 | see the URL at the bottom of the page that you need to set up a Git repository for | 131 | see the URL at the bottom of the page that you need to set up a Git repository for |
132 | that particular item. | 132 | that particular item. |
133 | Having a local Git repository of the source directory (poky) allows you to | 133 | Having a local Git repository of the Source Directory (poky) allows you to |
134 | make changes, contribute to the history, and ultimately enhance the Yocto Project's | 134 | make changes, contribute to the history, and ultimately enhance the Yocto Project's |
135 | tools, Board Support Packages, and so forth. | 135 | tools, Board Support Packages, and so forth. |
136 | </para> | 136 | </para> |
@@ -148,7 +148,7 @@ | |||
148 | <ulink url='&YOCTO_HOME_URL;/download'>download page</ulink> and get a | 148 | <ulink url='&YOCTO_HOME_URL;/download'>download page</ulink> and get a |
149 | tarball of the release. | 149 | tarball of the release. |
150 | You can also go to this site to download any supported BSP tarballs. | 150 | You can also go to this site to download any supported BSP tarballs. |
151 | Unpacking the tarball gives you a hierarchical source directory that lets you develop | 151 | Unpacking the tarball gives you a hierarchical Source Directory that lets you develop |
152 | using the Yocto Project. | 152 | using the Yocto Project. |
153 | </para> | 153 | </para> |
154 | 154 | ||
@@ -220,31 +220,31 @@ | |||
220 | <para id='build-directory'><emphasis>Build Directory:</emphasis> | 220 | <para id='build-directory'><emphasis>Build Directory:</emphasis> |
221 | This term refers to the area used by the OpenEmbedded build system for builds. | 221 | This term refers to the area used by the OpenEmbedded build system for builds. |
222 | The area is created when you <filename>source</filename> the setup | 222 | The area is created when you <filename>source</filename> the setup |
223 | environment script that is found in the source directory | 223 | environment script that is found in the Source Directory |
224 | (i.e. <filename>oe-init-build-env</filename>). | 224 | (i.e. <filename>&OE_INIT_FILE;</filename>). |
225 | The <ulink url='&YOCTO_DOCS_REF_URL;#var-TOPDIR'><filename>TOPDIR</filename></ulink> | 225 | The <ulink url='&YOCTO_DOCS_REF_URL;#var-TOPDIR'><filename>TOPDIR</filename></ulink> |
226 | variable points to the build directory.</para> | 226 | variable points to the Build Directory.</para> |
227 | 227 | ||
228 | <para>You have a lot of flexibility when creating the build directory. | 228 | <para>You have a lot of flexibility when creating the Build Directory. |
229 | Following are some examples that show how to create the directory: | 229 | Following are some examples that show how to create the directory: |
230 | <itemizedlist> | 230 | <itemizedlist> |
231 | <listitem><para>Create the build directory in your current working directory | 231 | <listitem><para>Create the Build Directory in your current working directory |
232 | and name it <filename>build</filename>. | 232 | and name it <filename>build</filename>. |
233 | This is the default behavior. | 233 | This is the default behavior. |
234 | <literallayout class='monospaced'> | 234 | <literallayout class='monospaced'> |
235 | $ source oe-init-build-env | 235 | $ source &OE_INIT_PATH; |
236 | </literallayout></para></listitem> | 236 | </literallayout></para></listitem> |
237 | <listitem><para>Provide a directory path and specifically name the build | 237 | <listitem><para>Provide a directory path and specifically name the build |
238 | directory. | 238 | directory. |
239 | This next example creates a build directory named <filename>YP-&POKYVERSION;</filename> | 239 | This next example creates a Build Directory named <filename>YP-&POKYVERSION;</filename> |
240 | in your home directory within the directory <filename>mybuilds</filename>. | 240 | in your home directory within the directory <filename>mybuilds</filename>. |
241 | If <filename>mybuilds</filename> does not exist, the directory is created for you: | 241 | If <filename>mybuilds</filename> does not exist, the directory is created for you: |
242 | <literallayout class='monospaced'> | 242 | <literallayout class='monospaced'> |
243 | $ source &OE_INIT_PATH; $HOME/mybuilds/YP-&POKYVERSION; | 243 | $ source &OE_INIT_PATH; $HOME/mybuilds/YP-&POKYVERSION; |
244 | </literallayout></para></listitem> | 244 | </literallayout></para></listitem> |
245 | <listitem><para>Provide an existing directory to use as the build directory. | 245 | <listitem><para>Provide an existing directory to use as the Build Directory. |
246 | This example uses the existing <filename>mybuilds</filename> directory | 246 | This example uses the existing <filename>mybuilds</filename> directory |
247 | as the build directory. | 247 | as the Build Directory. |
248 | <literallayout class='monospaced'> | 248 | <literallayout class='monospaced'> |
249 | $ source &OE_INIT_PATH; $HOME/mybuilds/ | 249 | $ source &OE_INIT_PATH; $HOME/mybuilds/ |
250 | </literallayout></para></listitem> | 250 | </literallayout></para></listitem> |
@@ -254,7 +254,7 @@ | |||
254 | this term refers to the OpenEmbedded build system used by the project. | 254 | this term refers to the OpenEmbedded build system used by the project. |
255 | This build system is based on the project known as "Poky." | 255 | This build system is based on the project known as "Poky." |
256 | For some historical information about Poky, see the | 256 | For some historical information about Poky, see the |
257 | <link linkend='poky'>poky</link> term further along in this section. | 257 | <link linkend='poky'>Poky</link> term further along in this section. |
258 | </para></listitem> | 258 | </para></listitem> |
259 | <listitem><para><emphasis>Classes:</emphasis> Files that provide for logic encapsulation | 259 | <listitem><para><emphasis>Classes:</emphasis> Files that provide for logic encapsulation |
260 | and inheritance allowing commonly used patterns to be defined once and easily used | 260 | and inheritance allowing commonly used patterns to be defined once and easily used |
@@ -264,14 +264,14 @@ | |||
264 | <listitem><para><emphasis>Configuration File:</emphasis> Configuration information in various | 264 | <listitem><para><emphasis>Configuration File:</emphasis> Configuration information in various |
265 | <filename>.conf</filename> files provides global definitions of variables. | 265 | <filename>.conf</filename> files provides global definitions of variables. |
266 | The <filename>conf/local.conf</filename> configuration file in the | 266 | The <filename>conf/local.conf</filename> configuration file in the |
267 | <link linkend='build-directory'>build directory</link> | 267 | <link linkend='build-directory'>Build Directory</link> |
268 | contains user-defined variables that affect each build. | 268 | contains user-defined variables that affect each build. |
269 | The <filename>meta-yocto/conf/distro/poky.conf</filename> configuration file | 269 | The <filename>meta-yocto/conf/distro/poky.conf</filename> configuration file |
270 | defines Yocto ‘distro’ configuration | 270 | defines Yocto ‘distro’ configuration |
271 | variables used only when building with this policy. | 271 | variables used only when building with this policy. |
272 | Machine configuration files, which | 272 | Machine configuration files, which |
273 | are located throughout the | 273 | are located throughout the |
274 | <link linkend='source-directory'>source directory</link>, define | 274 | <link linkend='source-directory'>Source Directory</link>, define |
275 | variables for specific hardware and are only used when building for that target | 275 | variables for specific hardware and are only used when building for that target |
276 | (e.g. the <filename>machine/beagleboard.conf</filename> configuration file defines | 276 | (e.g. the <filename>machine/beagleboard.conf</filename> configuration file defines |
277 | variables for the Texas Instruments ARM Cortex-A8 development board). | 277 | variables for the Texas Instruments ARM Cortex-A8 development board). |
@@ -332,7 +332,7 @@ | |||
332 | the Yocto Project's build system. | 332 | the Yocto Project's build system. |
333 | Within the Yocto Project source repositories, poky exists as a separate Git repository | 333 | Within the Yocto Project source repositories, poky exists as a separate Git repository |
334 | that can be cloned to yield a local copy on the host system. | 334 | that can be cloned to yield a local copy on the host system. |
335 | Thus, "poky" can refer to the local copy of the source directory used to develop within | 335 | Thus, "poky" can refer to the local copy of the Source Directory used to develop within |
336 | the Yocto Project.</para></listitem> | 336 | the Yocto Project.</para></listitem> |
337 | <listitem><para><emphasis>Recipe:</emphasis> A set of instructions for building packages. | 337 | <listitem><para><emphasis>Recipe:</emphasis> A set of instructions for building packages. |
338 | A recipe describes where you get source code and which patches to apply. | 338 | A recipe describes where you get source code and which patches to apply. |
@@ -349,15 +349,15 @@ | |||
349 | Sometimes you might here the term "poky directory" used to refer to this | 349 | Sometimes you might here the term "poky directory" used to refer to this |
350 | directory structure.</para> | 350 | directory structure.</para> |
351 | 351 | ||
352 | <para>The source directory contains BitBake, Documentation, metadata and | 352 | <para>The Source Directory contains BitBake, Documentation, metadata and |
353 | other files that all support the Yocto Project. | 353 | other files that all support the Yocto Project. |
354 | Consequently, you must have the source directory in place on your development | 354 | Consequently, you must have the Source Directory in place on your development |
355 | system in order to do any development using the Yocto Project.</para> | 355 | system in order to do any development using the Yocto Project.</para> |
356 | 356 | ||
357 | <para>For tarball expansion, the name of the top-level directory of the source directory | 357 | <para>For tarball expansion, the name of the top-level directory of the Source Directory |
358 | is derived from the Yocto Project release tarball. | 358 | is derived from the Yocto Project release tarball. |
359 | For example, downloading and unpacking <filename>&YOCTO_POKY_TARBALL;</filename> | 359 | For example, downloading and unpacking <filename>&YOCTO_POKY_TARBALL;</filename> |
360 | results in a source directory whose top-level folder is named | 360 | results in a Source Directory whose top-level folder is named |
361 | <filename>&YOCTO_POKY;</filename>. | 361 | <filename>&YOCTO_POKY;</filename>. |
362 | If you create a local copy of the Git repository, then you can name the repository | 362 | If you create a local copy of the Git repository, then you can name the repository |
363 | anything you like. | 363 | anything you like. |
@@ -366,15 +366,15 @@ | |||
366 | So, for example, cloning the <filename>poky</filename> Git repository results in a | 366 | So, for example, cloning the <filename>poky</filename> Git repository results in a |
367 | local Git repository whose top-level folder is also named <filename>poky</filename>.</para> | 367 | local Git repository whose top-level folder is also named <filename>poky</filename>.</para> |
368 | 368 | ||
369 | <para>It is important to understand the differences between the source directory created | 369 | <para>It is important to understand the differences between the Source Directory created |
370 | by unpacking a released tarball as compared to cloning | 370 | by unpacking a released tarball as compared to cloning |
371 | <filename>git://git.yoctoproject.org/poky</filename>. | 371 | <filename>git://git.yoctoproject.org/poky</filename>. |
372 | When you unpack a tarball, you have an exact copy of the files based on the time of | 372 | When you unpack a tarball, you have an exact copy of the files based on the time of |
373 | release - a fixed release point. | 373 | release - a fixed release point. |
374 | Any changes you make to your local files in the source directory are on top of the release. | 374 | Any changes you make to your local files in the Source Directory are on top of the release. |
375 | On the other hand, when you clone the <filename>poky</filename> Git repository, you have an | 375 | On the other hand, when you clone the <filename>poky</filename> Git repository, you have an |
376 | active development repository. | 376 | active development repository. |
377 | In this case, any local changes you make to the source directory can be later applied | 377 | In this case, any local changes you make to the Source Directory can be later applied |
378 | to active development branches of the upstream <filename>poky</filename> Git | 378 | to active development branches of the upstream <filename>poky</filename> Git |
379 | repository.</para> | 379 | repository.</para> |
380 | 380 | ||
@@ -438,7 +438,7 @@ | |||
438 | <filename>meta/files/common-licenses</filename>. | 438 | <filename>meta/files/common-licenses</filename>. |
439 | Once the build completes, the list of all licenses found and used during that build are | 439 | Once the build completes, the list of all licenses found and used during that build are |
440 | kept in the | 440 | kept in the |
441 | <link linkend='build-directory'>build directory</link> at | 441 | <link linkend='build-directory'>Build Directory</link> at |
442 | <filename>tmp/deploy/images/licenses</filename>. | 442 | <filename>tmp/deploy/images/licenses</filename>. |
443 | </para> | 443 | </para> |
444 | 444 | ||
@@ -466,6 +466,12 @@ | |||
466 | <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta/files/common-licenses'>here</ulink>. | 466 | <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta/files/common-licenses'>here</ulink>. |
467 | This wiki page discusses the license infrastructure used by the Yocto Project. | 467 | This wiki page discusses the license infrastructure used by the Yocto Project. |
468 | </para> | 468 | </para> |
469 | |||
470 | <para> | ||
471 | For information that can help you to maintain compliance with various open source licensing | ||
472 | during the lifecycle of a product created using the Yocto Project, see the | ||
473 | "<link linkend='maintaining-open-source-license-compliance-during-your-products-lifecycle'>Maintaining Open Source License Compliance During Your Product's Lifecycle</link>" section. | ||
474 | </para> | ||
469 | </section> | 475 | </section> |
470 | 476 | ||
471 | <section id='git'> | 477 | <section id='git'> |