ref-manual, mega-manual: Edits for expanded packaging description

Fixes [YOCTO #2808]

Applied review comments to the package splitting section in the
section that digs deeper into the build process.  This involved
updating the figure that resides in both "figures" directories
of the ref-manual and the mega-manual. Also updated supporting
text throughout the section per Paul's comments.

(From yocto-docs rev: 34e3610d0c6912530f678e9f1fa4587aaaf9fc70)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark 2013-08-26 17:06:00 +03:00 committed by Richard Purdie
parent 2abfe0cc3d
commit 987f91e16c
3 changed files with 33 additions and 21 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 66 KiB

View File

@ -1130,38 +1130,49 @@
<title>Package Splitting</title>
<para>
After source code configured and compiled, BitBake analyzes
the results and splits the output into package:
After source code is configured and compiled, the
OpenEmbedded build system analyzes
the results and splits the output into packages:
<imagedata fileref="figures/analysis-for-package-splitting.png" align="center" width="7in" depth="7in" />
</para>
<para>
The <filename>do_package</filename> and
<filename>do_packagedata</filename> tasks combine to analyze
the data found in the
the files found in the
<link linkend='var-D'><filename>D</filename></link> directory
and split it into subsets based on available packages and
and split them into subsets based on available packages and
files.
The analyzing process involves splitting out debugging symbols,
looking at shared library dependencies between packages, and
looking at package relationships.
The <filename>do_packagedata</filename> task puts package
metadata based on the analysis such that BitBake can generate
the final packages.
Intermediate results of the package analysis and splitting
end up in the
<link linkend='var-PKGDEST'><filename>PKGDEST</filename></link>
directory with the
<link linkend='var-FILES'><filename>FILES</filename></link>
variable defining the files that go into the packages.
If you want some details on how this is accomplished, you can
The analyzing process involves the following as well as other
items: splitting out debugging symbols,
looking at shared library dependencies between packages,
and looking at package relationships.
The <filename>do_packagedata</filename> task creates package
metadata based on the analysis such that the
OpenEmbedded build system can generate the final packages.
Working, staged, and intermediate results of the analysis
and package splitting process use these areas:
<itemizedlist>
<listitem><para><link linkend='var-PKGD'><filename>PKGD</filename></link>
</para></listitem>
<listitem><para><link linkend='var-PKGDATA_DIR'><filename>PKGDATA_DIR</filename></link>
</para></listitem>
<listitem><para><link linkend='var-PKGDESTWORK'><filename>PKGDESTWORK</filename></link>
</para></listitem>
<listitem><para><link linkend='var-PKGDEST'><filename>PKGDEST</filename></link>
</para></listitem>
</itemizedlist>
The <link linkend='var-FILES'><filename>FILES</filename></link>
variable defines the files that go into each package in
<link linkend='var-PACKAGES'><filename>PACKAGES</filename></link>.
If you want details on how this is accomplished, you can
look at
<link linkend='ref-classes-package'><filename>package.bbclass</filename></link>.
</para>
<para>
Depending on the type of packages being created (RPM, DEB, or
IPK), the <filename>do_packagewrite_*</filename> task
IPK), the <filename>do_package_write_*</filename> task
creates the actual packages and places them in the
Package Feed area, which is
<filename>${TMPDIR}/deploy</filename>.
@ -1173,9 +1184,10 @@
<filename>deploy/*</filename> directories does not exist.
Creating such feeds usually requires some kind of feed
maintenance mechanism that would upload the new packages
into an official package feed (e.g. angstrom).
Providing such a piece for the user is not feasible since
it is very distribution-specific.
into an official package feed (e.g. the
Ångström distribution).
This functionality is highly distribution-specific
and thus is not provided out of the box.
</note>
</para>
</section>