diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2013-09-16 16:19:51 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-22 12:20:47 +0100 |
commit | 35bd82a78f4d087e3c927c8d44939173d2a2fbba (patch) | |
tree | f4cbd56b939f95903920e57ed4ceb066bca4e9be /documentation | |
parent | 43c10b90ad8f66af74b6fafecacd213132bb565e (diff) | |
download | openembedded-core-contrib-35bd82a78f4d087e3c927c8d44939173d2a2fbba.tar.gz |
ref-manual: New section on SDK generation
Fixes [YOCTO #2808]
New section on the deeper look at SDK generation. This is a first
draft.
(From yocto-docs rev: 54438f1a9dac847d2d03ca1cb9a2b00de9369dbe)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/ref-manual/closer-look.xml | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/documentation/ref-manual/closer-look.xml b/documentation/ref-manual/closer-look.xml index 0a6c56c048..9ce92af910 100644 --- a/documentation/ref-manual/closer-look.xml +++ b/documentation/ref-manual/closer-look.xml @@ -964,6 +964,85 @@ filesystem have correct ownership. </note> </section> + + <section id='sdk-generation-dev-environment'> + <title>SDK Generation</title> + + <para> + The OpenEmbedded build system uses BitBake to generate the + Software Development Kit (SDK) installer script and the + cross-development environment setup script: + <imagedata fileref="figures/sdk-generation.png" align="center" width="6in" depth="7in" /> + </para> + + <note> + For more information on the cross-development toolchain + generation, see the + "<link linkend='cross-development-toolchain-generation'>Cross-Development Toolchain Generation</link>" + section. + </note> + + <para> + Like image generation, the SDK script process consists of + several stages and depends on many variables. + The <filename>do_populate_sdk</filename> task uses these + key variables to help create the list of packages to actually + install: + <itemizedlist> + <listitem><para><link linkend='var-DEPLOY_DIR'><filename>DEPLOY_DIR</filename></link>: + Points to the <filename>deploy</filename> + directory.</para></listitem> + <listitem><para><link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>: + Specifies the architecture of the machine + on which the cross-development tools are run to + create packages for the target hardware. + </para></listitem> + <listitem><para><link linkend='var-SDKIMAGE_FEATURES'><filename>SDKIMAGE_FEATURES</filename></link>: + Lists the features to include in the "target" part + of the SDK. + </para></listitem> + <listitem><para><link linkend='var-TOOLCHAIN_HOST_TASK'><filename>TOOLCHAIN_HOST_TASK</filename></link>: + Lists packages that make up the host + part of the SDK (i.e. the part that runs on + the <filename>SDKMACHINE</filename>). + When you use + <filename>bitbake -c populate_sdk <imagename></filename> + to create the SDK, a set of default packages + apply. + This variable allows you to add more packages. + </para></listitem> + <listitem><para><link linkend='var-TOOLCHAIN_TARGET_TASK'><filename>TOOLCHAIN_TARGET_TASK</filename></link>: + Lists packages that make up the target part + of the SDK (i.e. the part built for the + target hardware). + </para></listitem> + </itemizedlist> + </para> + + <para> + The <filename>do_populate_sdk</filename> task handles two + parts: a target part and a host part. + The target part is the part built for the target hardware and + includes libraries and headers. + The host part is the part of the SDK that runs on the + <link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>. + </para> + + <para> + Once both parts are constructed, the + <filename>do_populate_sdk</filename> task performs some cleanup + on both parts. + After the cleanup, the task creates a cross-development + environment setup script and any configuration files that + might be needed. + </para> + + <para> + The final output of the task is the Cross-development + toolchain installation script (<filename>.sh</filename> file) + and the environment setup script. + </para> + </section> </section> <section id='images-dev-environment'> |