diff options
Diffstat (limited to 'documentation')
| -rw-r--r-- | documentation/adt-manual/adt-package.xml | 7 | ||||
| -rw-r--r-- | documentation/poky-ref-manual/ref-classes.xml | 50 | ||||
| -rw-r--r-- | documentation/poky-ref-manual/ref-variables.xml | 14 | ||||
| -rw-r--r-- | documentation/yocto-project-qs/yocto-project-qs.xml | 16 |
4 files changed, 81 insertions, 6 deletions
diff --git a/documentation/adt-manual/adt-package.xml b/documentation/adt-manual/adt-package.xml index f7b236f8d5..c035c2d011 100644 --- a/documentation/adt-manual/adt-package.xml +++ b/documentation/adt-manual/adt-package.xml | |||
| @@ -52,6 +52,13 @@ | |||
| 52 | See the configuration file for details. | 52 | See the configuration file for details. |
| 53 | </para> | 53 | </para> |
| 54 | 54 | ||
| 55 | <note> | ||
| 56 | For build performance information related to the PMS, see | ||
| 57 | <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html#ref-classes-package'>Packaging - <filename>package*.bbclass</filename></ulink> | ||
| 58 | in <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html'> | ||
| 59 | The Yocto Project Reference Manual</ulink>. | ||
| 60 | </note> | ||
| 61 | |||
| 55 | <para> | 62 | <para> |
| 56 | As an example, consider a scenario where you are using OPKG and you want to add | 63 | As an example, consider a scenario where you are using OPKG and you want to add |
| 57 | the <filename>libglade</filename> package to the target sysroot. | 64 | the <filename>libglade</filename> package to the target sysroot. |
diff --git a/documentation/poky-ref-manual/ref-classes.xml b/documentation/poky-ref-manual/ref-classes.xml index cf396800df..93e9ea8d43 100644 --- a/documentation/poky-ref-manual/ref-classes.xml +++ b/documentation/poky-ref-manual/ref-classes.xml | |||
| @@ -265,17 +265,59 @@ | |||
| 265 | The packaging classes add support for generating packages from a build's | 265 | The packaging classes add support for generating packages from a build's |
| 266 | output. | 266 | output. |
| 267 | The core generic functionality is in <filename>package.bbclass</filename>. | 267 | The core generic functionality is in <filename>package.bbclass</filename>. |
| 268 | The code specific | 268 | The code specific to particular package types is contained in various sub-classes such as |
| 269 | to particular package types is contained in various sub-classes such as | ||
| 270 | <filename>package_deb.bbclass</filename>, <filename>package_ipk.bbclass</filename>, | 269 | <filename>package_deb.bbclass</filename>, <filename>package_ipk.bbclass</filename>, |
| 271 | and <filename>package_rpm.bbclass</filename>. | 270 | and <filename>package_rpm.bbclass</filename>. |
| 272 | Most users will want one or more of these classes. | 271 | Most users will want one or more of these classes. |
| 272 | </para> | ||
| 273 | |||
| 274 | <para> | ||
| 273 | You can control the list of resulting package formats by using the | 275 | You can control the list of resulting package formats by using the |
| 274 | <filename><link linkend='var-PACKAGE_CLASSES'>PACKAGE_CLASSES</link></filename> | 276 | <filename><link linkend='var-PACKAGE_CLASSES'>PACKAGE_CLASSES</link></filename> |
| 275 | variable. | 277 | variable defined in the <filename>local.conf</filename> configuration file |
| 276 | The first class listed in this variable is be used for image generation. | 278 | found in the Yocto Project file's <filename>conf</filename> directory. |
| 279 | When defining the variable, you can specify one or more package types. | ||
| 277 | Since images are generated from packages, a packaging class is | 280 | Since images are generated from packages, a packaging class is |
| 278 | needed to enable image generation. | 281 | needed to enable image generation. |
| 282 | The first class listed in this variable is used for image generation. | ||
| 283 | </para> | ||
| 284 | |||
| 285 | <para> | ||
| 286 | The package class you choose can affect build-time performance and has space | ||
| 287 | ramifications. | ||
| 288 | In general, building a package with RPM takes about thirty percent more time as | ||
| 289 | compared to using IPK to build the same or similar package. | ||
| 290 | This comparison takes into account a complete build of the package with all | ||
| 291 | dependencies previously built. | ||
| 292 | The reason for this discrepancy is because the RPM package manager creates and | ||
| 293 | processes more metadata than the IPK package manager. | ||
| 294 | Consequently, you might consider setting <filename>PACKAGE_CLASSES</filename> | ||
| 295 | to "package_ipk" if you are building smaller systems. | ||
| 296 | </para> | ||
| 297 | |||
| 298 | <para> | ||
| 299 | Keep in mind, however, that RPM starts to provide more abilities than IPK due to | ||
| 300 | the fact that it processes more metadata. | ||
| 301 | For example, this information includes individual file types, file checksum generation | ||
| 302 | and evaluation on install, sparse file support, conflict detection and resolution | ||
| 303 | for multilib systems, ACID style upgrade, and repackaging abilities for rollbacks. | ||
| 304 | </para> | ||
| 305 | |||
| 306 | <para> | ||
| 307 | Another consideration for packages built using the RPM package manager is space. | ||
| 308 | For smaller systems, the extra space used for the Berkley Database and the amount | ||
| 309 | of metadata can affect your ability to do on-device upgrades. | ||
| 310 | </para> | ||
| 311 | |||
| 312 | <para> | ||
| 313 | You can find additional information on the effects of the package class at these | ||
| 314 | two Yocto Project mailing list links: | ||
| 315 | <itemizedlist> | ||
| 316 | <listitem><para><ulink url='https://lists.yoctoproject.org/pipermail/poky/2011-May/006362.html'> | ||
| 317 | https://lists.yoctoproject.org/pipermail/poky/2011-May/006362.html</ulink></para></listitem> | ||
| 318 | <listitem><para><ulink url='https://lists.yoctoproject.org/pipermail/poky/2011-May/006363.html'> | ||
| 319 | https://lists.yoctoproject.org/pipermail/poky/2011-May/006363.html</ulink></para></listitem> | ||
| 320 | </itemizedlist> | ||
| 279 | </para> | 321 | </para> |
| 280 | </section> | 322 | </section> |
| 281 | 323 | ||
diff --git a/documentation/poky-ref-manual/ref-variables.xml b/documentation/poky-ref-manual/ref-variables.xml index 7f51fc9885..0bde65915c 100644 --- a/documentation/poky-ref-manual/ref-variables.xml +++ b/documentation/poky-ref-manual/ref-variables.xml | |||
| @@ -679,7 +679,19 @@ | |||
| 679 | 679 | ||
| 680 | <glossentry id='var-PACKAGE_CLASSES'><glossterm>PACKAGE_CLASSES</glossterm> | 680 | <glossentry id='var-PACKAGE_CLASSES'><glossterm>PACKAGE_CLASSES</glossterm> |
| 681 | <glossdef> | 681 | <glossdef> |
| 682 | <para>Specifies the list of resulting package formats.</para> | 682 | <para>This variable, which is set in the <filename>local.conf</filename> configuration |
| 683 | file found in the Yocto Project file's <filename>conf</filename> directory, | ||
| 684 | specifies the package manager to use when packaging data. | ||
| 685 | You can provide one or more arguments for the variable with the first | ||
| 686 | argument being the package manager used to create images: | ||
| 687 | <literallayout class='monospaced'> | ||
| 688 | PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk" | ||
| 689 | </literallayout> | ||
| 690 | For information on build performance effects as a result of the | ||
| 691 | package manager use, see | ||
| 692 | <link linkend='ref-classes-package'>Packaging - <filename>package*.bbclass</filename></link> | ||
| 693 | in this manual. | ||
| 694 | </para> | ||
| 683 | </glossdef> | 695 | </glossdef> |
| 684 | </glossentry> | 696 | </glossentry> |
| 685 | 697 | ||
diff --git a/documentation/yocto-project-qs/yocto-project-qs.xml b/documentation/yocto-project-qs/yocto-project-qs.xml index 62280b619f..c95e1a02ab 100644 --- a/documentation/yocto-project-qs/yocto-project-qs.xml +++ b/documentation/yocto-project-qs/yocto-project-qs.xml | |||
| @@ -330,7 +330,8 @@ | |||
| 330 | <filename>conf/local.conf</filename> file.</para></listitem> | 330 | <filename>conf/local.conf</filename> file.</para></listitem> |
| 331 | </itemizedlist> | 331 | </itemizedlist> |
| 332 | <para> | 332 | <para> |
| 333 | Take some time to examine your <filename>conf/local.conf</filename> file. | 333 | Take some time to examine your <filename>conf/local.conf</filename> file found in the |
| 334 | Yocto Project file's <filename>conf</filename>. | ||
| 334 | The defaults should work fine. | 335 | The defaults should work fine. |
| 335 | However, if you have a multi-core CPU you might want to set the variable | 336 | However, if you have a multi-core CPU you might want to set the variable |
| 336 | BB_NUMBER_THREADS equal to twice the number of processor cores your system has. | 337 | BB_NUMBER_THREADS equal to twice the number of processor cores your system has. |
| @@ -338,6 +339,19 @@ | |||
| 338 | Setting these variables can significantly shorten your build time. | 339 | Setting these variables can significantly shorten your build time. |
| 339 | By default, these variables are commented out. | 340 | By default, these variables are commented out. |
| 340 | </para> | 341 | </para> |
| 342 | |||
| 343 | <para> | ||
| 344 | Another consideration before you build is the package manager used when creating | ||
| 345 | the image. | ||
| 346 | By default, the Yocto Project build system uses the RPM package manager. | ||
| 347 | You can control this configuration by using the | ||
| 348 | <filename><ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html#var-PACKAGE_CLASSES'>PACKAGE_CLASSES</ulink></filename> variable. | ||
| 349 | For additional package manager selection information, see | ||
| 350 | <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html#ref-classes-package'>Packaging - <filename>package*.bbclass</filename></ulink> in | ||
| 351 | <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html'> | ||
| 352 | The Yocto Project Reference Manual</ulink>. | ||
| 353 | </para> | ||
| 354 | |||
| 341 | <para> | 355 | <para> |
| 342 | Continue with the following command to build an OS image for the target, which is | 356 | Continue with the following command to build an OS image for the target, which is |
| 343 | <filename>core-image-sato</filename> in this example. | 357 | <filename>core-image-sato</filename> in this example. |
