From 8627258ac3bae635c2ff54cfa24863e50a2a136c Mon Sep 17 00:00:00 2001 From: Dexuan Cui Date: Thu, 9 Sep 2010 17:18:10 +0800 Subject: handbook: review and modify Appendix A, D and E Major change are about the structure of Poky source tree, which has been changed a lot recently Signed-off-by: Dexuan Cui Signed-off-by: Edwin Zhai Signed-off-by: Kevin Tian --- handbook/ref-images.xml | 9 +- handbook/ref-structure.xml | 200 ++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 185 insertions(+), 24 deletions(-) diff --git a/handbook/ref-images.xml b/handbook/ref-images.xml index 6d7991102c..03583eb394 100644 --- a/handbook/ref-images.xml +++ b/handbook/ref-images.xml @@ -6,9 +6,12 @@ Poky has several standard images covering most people's standard needs. A full - list of image targets can be found by looking in the - meta/packages/images/ directory. The standard images are listed below - along with details of what they contain: + list of image targets can be found by looking in the directories + meta/recipes-core/images/, + meta/packages/images/, + meta/recipes-sato/images/ and + meta/packages/meta/. The standard + images are listed below along with details of what they contain: diff --git a/handbook/ref-structure.xml b/handbook/ref-structure.xml index 3cc7295b7e..3d7c3c9db7 100644 --- a/handbook/ref-structure.xml +++ b/handbook/ref-structure.xml @@ -7,7 +7,7 @@ Poky consists of several components and understanding what these are - and where they're located is one of the keys to using it. This section walks + and where they're located is one of the keys to use it. This section walks through the Poky directory structure giving information about the various files and directories. @@ -40,7 +40,10 @@ This directory contains user configuration files and the output - from Poky. + from Poky. It's now deprecated to be a sub-directory in Poky source tree, + though it's still supported. The desired way is to use seperate output directory for build + outside of Poky source tree. @@ -64,6 +67,15 @@ +
+ <filename class="directory">meta-***/</filename> + + + These directories are optional layers to be added to core metadata, which + are enabled by adding them to conf/bblayers.conf. + +
+
<filename class="directory">scripts/</filename> @@ -108,6 +120,14 @@
+
+ <filename class="directory">handbook</filename> + + + This is the location where this handbook is generated + +
+
<filename>poky-init-build-env</filename> @@ -116,7 +136,18 @@ a shell makes changes to PATH and sets other core BitBake variables based on the current working directory. You need to use this before running Poky commands. Internally it uses scripts within the scripts/ - directory to do the bulk of the work. + directory to do the bulk of the work. Now this script supports + specifying any directory as the build output: + + + +source POKY_SRC/poky-init-build-env [BUILDDIR] + + + + Above command can be typed from any directory, as long as POKY_SRC points to + the desired Poky source tree. The optional BUILDDIR could be any directory you'd + like to contain output contents.
@@ -145,6 +176,16 @@ +
+ <filename>build/conf/bblayers.conf</filename> + + + This file defines layers walked by bitbake. If there's no + bblayers.conf present, it is created from bblayers.conf.sample + . + +
+
<filename class="directory">build/tmp/</filename> @@ -181,6 +222,15 @@
+
+ <filename class="directory">build/tmp/deploy/rpm/</filename> + + + Any .rpm packages emitted by Poky are placed here, sorted into feeds for + different architecture types. + +
+
<filename class="directory">build/tmp/deploy/images/</filename> @@ -196,17 +246,6 @@ Any resulting .ipk packages emitted by Poky are placed here.
-
- <filename class="directory">build/tmp/rootfs/</filename> - - - This is a temporary scratch area used when creating filesystem images. It is run - under fakeroot and is not useful once that fakeroot session has ended as - information is lost. It is left around since it is still useful in debugging - image creation problems. - -
-
<filename class="directory">build/tmp/sysroots/</filename> @@ -224,7 +263,38 @@ This is used by BitBake for accounting purposes to keep track of which tasks have been run and when. It is also subdivided by architecture. The files are - empty and the important information is the filenames and timestamps. + empty and the important information is the filenames and timestamps. + +
+ +
+ <filename class="directory">build/tmp/log/</filename> + + + This contains some general logs if not placing in a package's + WORKDIR, such as + the log output from check_pkg or distro_check tasks. + +
+ +
+ <filename class="directory">build/tmp/pkgdata/</filename> + + + This is an intermediate place for saving packaging data, which will be used + in later packaging process. For detail please refer to + package.bbclass. + +
+ +
+ <filename class="directory">build/tmp/pstagelogs/</filename> + + + This directory contains manifest for task based prebuilt. Each manifest is basically + a file list for installed files from a given task, which would be useful for later + packaging or cleanup process. +
@@ -258,7 +328,8 @@ linkend='var-WORKDIR'>WORKDIR/image/ directory is where make install places its output which is then split into subpackages - within WORKDIR/install/. + within WORKDIR + /packages-split/.
@@ -327,15 +398,102 @@ +
+ <filename class="directory">meta/recipes-bsp/</filename> + + + Anything linking to specific hardware or hardware configuration information + are placed here, such as uboot, grub, etc. + +
+ +
+ <filename class="directory">meta/recipes-connectivity/</filename> + + + Libraries and applications related to communication with other devices + +
+ +
+ <filename class="directory">meta/recipes-core/</filename> + + + What's needed to build a basic working Linux image including commonly used dependencies + +
+ +
+ <filename class="directory">meta/recipes-devtools/</filename> + + + Tools primarily used by the build system (but can also be used on targets) + +
+ +
+ <filename class="directory">meta/recipes-extended/</filename> + + + Applications which whilst not essential add features compared to the alternatives in + core. May be needed for full tool functionality or LSB compliance. + +
+ +
+ <filename class="directory">meta/recipes-gnome/</filename> + + + All things related to the GTK+ application framework + +
+ +
+ <filename class="directory">meta/recipes-graphics/</filename> + + + X and other graphically related system libraries + +
+ +
+ <filename class="directory">meta/recipes-kernel/</filename> + + + The kernel and generic applications/libraries with strong kernel dependencies + +
+ +
+ <filename class="directory">meta/recipes-multimedia/</filename> + + + Codecs and support utilties for audio, images and video + +
+ +
+ <filename class="directory">meta/recipes-qt/</filename> + + + All things related to the QT application framework + +
+ +
+ <filename class="directory">meta/recipes-sato/</filename> + + + The Sato demo/reference UI/UX, its associated apps and configuration + +
+
<filename class="directory">meta/packages/</filename> - Each application (package) Poky can build has an associated .bb file which are - all stored under this directory. Poky finds them through the BBFILES variable - which defaults to packages/*/*.bb. Adding a new piece of software to Poky - consists of adding the appropriate .bb file. The .bb files from OpenEmbedded - upstream are usually compatible although they are not supported. + this is a catch-all place for the rest which not fits into above + recipes-***. Images and tasks are also placed here.
-- cgit v1.2.3